more buildsys tinkering -- default compiler args, unicode escapes, swab() detection, setting autoconf language to c++ early on

This commit is contained in:
Brian Cox 2019-07-28 09:30:26 -07:00
parent 7eac9533b8
commit 7fa7d01f7c
26 changed files with 951 additions and 917 deletions

View File

@ -218,7 +218,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -39,6 +39,9 @@
/* Define to 1 if you have the <fcntl.h> header file. */ /* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H #undef HAVE_FCNTL_H
/* Define to 1 if fseeko (and presumably ftello) exists and is declared. */
#undef HAVE_FSEEKO
/* Uses the GNU gcc compiler */ /* Uses the GNU gcc compiler */
#undef HAVE_GCC #undef HAVE_GCC
@ -54,6 +57,9 @@
/* Uses the gxlc++ compiler */ /* Uses the gxlc++ compiler */
#undef HAVE_IBM_GXLC #undef HAVE_IBM_GXLC
/* Uses the IBM XL C++ compiler */
#undef HAVE_IBM_XLC
/* Define to 1 if you have the <iconv.h> header file. */ /* Define to 1 if you have the <iconv.h> header file. */
#undef HAVE_ICONV_H #undef HAVE_ICONV_H
@ -180,7 +186,7 @@
/* Is a unix type platform */ /* Is a unix type platform */
#undef IS_UNIX #undef IS_UNIX
/* don't generate debuging code */ /* Compile without debug code */
#undef NDEBUG #undef NDEBUG
/* Name of package */ /* Name of package */
@ -252,6 +258,20 @@
# endif # endif
#endif #endif
/* Enable large inode numbers on Mac OS X 10.5. */
#ifndef _DARWIN_USE_64_BIT_INODE
# define _DARWIN_USE_64_BIT_INODE 1
#endif
/* Number of bits in a file offset, on hosts where this is settable. */
#undef _FILE_OFFSET_BITS
/* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */
#undef _LARGEFILE_SOURCE
/* Define for large files, on AIX-style hosts. */
#undef _LARGE_FILES
/* Define to empty if `const' does not conform to ANSI C. */ /* Define to empty if `const' does not conform to ANSI C. */
#undef const #undef const

1753
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -11,8 +11,11 @@ AM_CONFIG_HEADER(config.h)
AC_COPYRIGHT([The developer of the original code and/or files is Tripwire, Inc. Portions created by Tripwire, Inc. are copyright 2000-2019 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights reserved.]) AC_COPYRIGHT([The developer of the original code and/or files is Tripwire, Inc. Portions created by Tripwire, Inc. are copyright 2000-2019 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights reserved.])
AC_REVISION([$Revision: 2.4.3.8 $]) AC_REVISION([$Revision: 2.4.3.8 $])
dnl AC_LANG_CPLUSPLUS wants to set CXXFLAGS to include '-g -O2', but we probably don't want to
dnl include debug symbols by default, so save off the previous value & restore it afterward
tmp_cxxflags=${CXXFLAGS}
AC_LANG_CPLUSPLUS AC_LANG_CPLUSPLUS
CXXFLAGS=${tmp_cxxflags}
dnl ################### dnl ###################
dnl Checks for programs dnl Checks for programs
@ -38,8 +41,8 @@ dnl #########################################
if test "x${GXX}" != "x"; then if test "x${GXX}" != "x"; then
AC_DEFINE(HAVE_GCC, 1, [Uses the GNU gcc compiler]) AC_DEFINE(HAVE_GCC, 1, [Uses the GNU gcc compiler])
CFLAGS=${CFLAGS:-"-O -pipe -Wall"} CFLAGS=${CFLAGS:-"-O -pipe"}
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall"} CXXFLAGS=${CXXFLAGS:-"-O -pipe"}
else else
AC_DEFINE(HAVE_GCC, 0, [Uses the GNU gcc compiler]) AC_DEFINE(HAVE_GCC, 0, [Uses the GNU gcc compiler])
fi fi
@ -47,30 +50,32 @@ fi
if test "x${CXX}" = "xclang++"; then if test "x${CXX}" = "xclang++"; then
AC_DEFINE(HAVE_CLANG, 1, [Uses the Clang compiler]) AC_DEFINE(HAVE_CLANG, 1, [Uses the Clang compiler])
CFLAGS=${CFLAGS:-"-O -pipe -Wall"} CFLAGS=${CFLAGS:-"-O -pipe"}
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall"} CXXFLAGS=${CXXFLAGS:-"-O -pipe"}
else else
AC_DEFINE(HAVE_CLANG, 0, [Uses the Clang compiler]) AC_DEFINE(HAVE_CLANG, 0, [Uses the Clang compiler])
fi fi
if test "x${CXX}" = "xgxlc++"; then
AC_DEFINE(HAVE_IBM_GXLC, 1, [Uses the gxlc++ compiler])
CFLAGS=${CFLAGS:-"-O -pipe"}
CXXFLAGS=${CXXFLAGS:-"-O -pipe"}
else
AC_DEFINE(HAVE_IBM_GXLC, 0, [Uses the gxlc++ compiler])
fi
if test "x${CXX}" = "xxlc++_r"; then if test "x${CXX}" = "xxlc++_r"; then
AC_DEFINE(HAVE_CLANG, 1, [Uses the IBM XL C++ compiler]) AC_DEFINE(HAVE_IBM_XLC, 1, [Uses the IBM XL C++ compiler])
CFLAGS=${CFLAGS:-"-O -maix64 -Wx,-qinfo=all" } CFLAGS=${CFLAGS:-"-O -maix64 -Wx,-qinfo=all" }
CXXFLAGS=${CXXFLAGS:-"-O -maix64 -Wx,-qinfo=all"} CXXFLAGS=${CXXFLAGS:-"-O -maix64 -Wx,-qinfo=all"}
else else
AC_DEFINE(HAVE_CLANG, 0, [Uses the IBM XL C++ compiler]) AC_DEFINE(HAVE_IBM_XLC, 0, [Uses the IBM XL C++ compiler])
fi fi
dnl *** TODO these compilers need work on default args **** dnl *** TODO these compilers need work on default args ****
if test "x${CXX}" = "xgxlc++"; then
AC_DEFINE(HAVE_IBM_GXLC, 1, [Uses the gxlc++ compiler])
else
AC_DEFINE(HAVE_IBM_GXLC, 0, [Uses the gxlc++ compiler])
fi
if test "x${CXX}" = "xsunCC"; then if test "x${CXX}" = "xsunCC"; then
AC_DEFINE(HAVE_ORACLE_SUNCC, 1, [Uses the sunCC compiler]) AC_DEFINE(HAVE_ORACLE_SUNCC, 1, [Uses the sunCC compiler])
else else
@ -96,12 +101,12 @@ dnl Configuration options
dnl ##################### dnl #####################
# This is primarily to support old compilers that dont understand -Wextra # This is primarily to support old compilers that dont understand -Wextra
AC_ARG_ENABLE(extrawarnings, [ —-disable-extrawarnings do not compile with -Wextra warnings enabled]) #AC_ARG_ENABLE(extrawarnings, [ —-disable-extrawarnings do not compile with -Wextra warnings enabled])
if test "x$enable_extrawarnings" != "xno" #if test "x$enable_extrawarnings" != "xno"
then #then
CFLAGS="${CFLAGS} -Wextra -Wno-unused-parameter" # CFLAGS="${CFLAGS} -Wextra -Wno-unused-parameter"
CXXFLAGS="${CXXFLAGS} -Wextra -Wno-unused-parameter" # CXXFLAGS="${CXXFLAGS} -Wextra -Wno-unused-parameter"
fi #fi
AC_ARG_ENABLE(static, [ --enable-static compile static binaries]) AC_ARG_ENABLE(static, [ --enable-static compile static binaries])
if test "x$enable_static" = xyes if test "x$enable_static" = xyes
@ -153,6 +158,9 @@ AC_ARG_WITH(stlport-dir,
CFLAGS="${CFLAGS} ${stlport_paths}" CFLAGS="${CFLAGS} ${stlport_paths}"
CXXFLAGS="${CXXFLAGS} ${stlport_paths}" CXXFLAGS="${CXXFLAGS} ${stlport_paths}"
LDFLAGS="${LDFLAGS} ${stlport_lib} -lstlport_gcc" LDFLAGS="${LDFLAGS} ${stlport_lib} -lstlport_gcc"
# Append lib dir to LD_LIBRARY_PATH (or set LD_LIBRARY_PATH if unset)
# This is mostly for the benefit of configure-time test programs.
LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+:LD_LIBRARY_PATH}${stlport_lib}
fi fi
] ]
) )

View File

@ -195,7 +195,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -167,7 +167,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -167,7 +167,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -167,7 +167,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -193,7 +193,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -224,7 +224,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -284,6 +284,15 @@ bool cFile::IsOpen(void) const
return (mpData->mpCurrStream != NULL); return (mpData->mpCurrStream != NULL);
} }
// Autoconf docs say HAVE_FSEEKO applies to both fseeko & ftello
#if HAVE_FSEEKO
#define tss_fseek fseeko
#define tss_ftell ftello
#else
#define tss_fseek fseek
#define tss_ftell ftell
#endif
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////
// Seek -- Positions the read/write offset in mpCurrStream. Returns the // Seek -- Positions the read/write offset in mpCurrStream. Returns the
// current offset upon completion. Returns 0 if no stream is defined. // current offset upon completion. Returns 0 if no stream is defined.
@ -323,7 +332,9 @@ cFile::File_t cFile::Seek(File_t offset, SeekFrom From) const //throw(eFile)
fprintf(stderr, "%d\n", blowupCount); fprintf(stderr, "%d\n", blowupCount);
#endif #endif
if (fseeko(mpData->mpCurrStream, offset, apiFrom) != 0)
if (tss_fseek(mpData->mpCurrStream, offset, apiFrom) != 0)
{ {
#ifdef DEBUG #ifdef DEBUG
cDebug d("cFile::Seek"); cDebug d("cFile::Seek");
@ -332,7 +343,7 @@ cFile::File_t cFile::Seek(File_t offset, SeekFrom From) const //throw(eFile)
throw eFileSeek(); throw eFileSeek();
} }
return ftello(mpData->mpCurrStream); return tss_ftell(mpData->mpCurrStream);
} }
/////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////

View File

@ -214,7 +214,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -211,7 +211,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -219,7 +219,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -214,7 +214,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -206,7 +206,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -210,7 +210,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -217,7 +217,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -206,7 +206,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -61,6 +61,12 @@
#include "twcrypto/crypto.h" #include "twcrypto/crypto.h"
#include "core/displayencoder.h" #include "core/displayencoder.h"
#if HAVE_SWAB && (__cplusplus <= 1)
#ifndef __USE_XOPEN
#define _USE_XOPEN 1
#endif
#endif
#include <unistd.h> #include <unistd.h>
//Provide a swab() impl. from glibc, for platforms that don't have one //Provide a swab() impl. from glibc, for platforms that don't have one

View File

@ -212,7 +212,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -213,7 +213,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -206,7 +206,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -246,7 +246,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@

View File

@ -43,6 +43,7 @@
#include "twtest/test.h" #include "twtest/test.h"
#include <algorithm> #include <algorithm>
#include <locale.h>
bool localeIsUtf8() bool localeIsUtf8()
{ {
@ -82,10 +83,13 @@ void TestCharUtilBasic()
CheckChars("foo"); CheckChars("foo");
CheckChars("fo\x23 54"); CheckChars("fo\x23 54");
// Test case requires support for Unicode escape sequences
#if __cplusplus >= 201103L
if (localeIsUtf8()) if (localeIsUtf8())
CheckChars("\U0001F408", 4); //Cat emoji, if UTF-8 CheckChars("\U0001F408", 4); //Cat emoji, if UTF-8
else else
CheckChars("\U0001F408", 1); // just a bag of bytes otherwise CheckChars("\U0001F408", 1); // just a bag of bytes otherwise
#endif
} }
void RegisterSuite_CharUtil() void RegisterSuite_CharUtil()

View File

@ -211,7 +211,6 @@ CC = @CC@
CCDEPMODE = @CCDEPMODE@ CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
CORE_CRYPT_O = @CORE_CRYPT_O@ CORE_CRYPT_O = @CORE_CRYPT_O@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@ CPPFLAGS = @CPPFLAGS@
CXX = @CXX@ CXX = @CXX@
CXXCPP = @CXXCPP@ CXXCPP = @CXXCPP@