Add compiler detection for several non-gcc compilers, & fix a gxlc++ compilation issue
This commit is contained in:
parent
4b54324733
commit
84983b13d4
12
config.h.in
12
config.h.in
|
@ -15,6 +15,9 @@
|
|||
/* Define to 1 if you have the <bits/signum.h> header file. */
|
||||
#undef HAVE_BITS_SIGNUM_H
|
||||
|
||||
/* Uses the Clang compiler */
|
||||
#undef HAVE_CLANG
|
||||
|
||||
/* Define to 1 if you have the <CommonCrypto/CommonDigest.h> header file. */
|
||||
#undef HAVE_COMMONCRYPTO_COMMONDIGEST_H
|
||||
|
||||
|
@ -45,6 +48,12 @@
|
|||
/* Define to 1 if you have the `gethostname' function. */
|
||||
#undef HAVE_GETHOSTNAME
|
||||
|
||||
/* Uses the aCC compiler */
|
||||
#undef HAVE_HP_ACC
|
||||
|
||||
/* Uses the gxlc++ compiler */
|
||||
#undef HAVE_IBM_GXLC
|
||||
|
||||
/* Define to 1 if you have the <iconv.h> header file. */
|
||||
#undef HAVE_ICONV_H
|
||||
|
||||
|
@ -72,6 +81,9 @@
|
|||
/* Define to 1 if you have the <openssl/sha.h> header file. */
|
||||
#undef HAVE_OPENSSL_SHA_H
|
||||
|
||||
/* Uses the sunCC compiler */
|
||||
#undef HAVE_ORACLE_SUNCC
|
||||
|
||||
/* Define to 1 if you have the `port_create' function. */
|
||||
#undef HAVE_PORT_CREATE
|
||||
|
||||
|
|
|
@ -747,13 +747,13 @@ ac_subst_files=''
|
|||
ac_user_opts='
|
||||
enable_option_checking
|
||||
enable_silent_rules
|
||||
enable_dependency_tracking
|
||||
enable_extrawarnings
|
||||
enable_static
|
||||
enable_debug
|
||||
enable_coverage
|
||||
enable_profiling
|
||||
enable_urandom
|
||||
enable_dependency_tracking
|
||||
enable_commoncrypto
|
||||
enable_iconv
|
||||
enable_openssl
|
||||
|
@ -1395,16 +1395,16 @@ Optional Features:
|
|||
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
||||
--enable-silent-rules less verbose build output (undo: "make V=1")
|
||||
--disable-silent-rules verbose build output (undo: "make V=0")
|
||||
--enable-dependency-tracking
|
||||
do not reject slow dependency extractors
|
||||
--disable-dependency-tracking
|
||||
speeds up one-time build
|
||||
—-disable-extrawarnings do not compile with -Wextra warnings enabled
|
||||
--enable-static compile static binaries
|
||||
--enable-debug compile with debuging enabled
|
||||
--enable-coverage enable code coverage
|
||||
--enable-profiling enable profiling
|
||||
--enable-urandom use /dev/urandom
|
||||
--enable-dependency-tracking
|
||||
do not reject slow dependency extractors
|
||||
--disable-dependency-tracking
|
||||
speeds up one-time build
|
||||
--disable-commoncrypto Don't use CommonCrypto hash implementations (OSX only)
|
||||
--enable-iconv Use iconv for locale-independent report and db files
|
||||
--disable-openssl Don't link against OpenSSL libraries
|
||||
|
@ -3517,85 +3517,8 @@ ac_config_headers="$ac_config_headers config.h"
|
|||
|
||||
|
||||
|
||||
CFLAGS=${CFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
|
||||
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
|
||||
|
||||
|
||||
# This is primarily to support old compilers that don’t understand -Wextra
|
||||
# Check whether --enable-extrawarnings was given.
|
||||
if test "${enable_extrawarnings+set}" = set; then :
|
||||
enableval=$enable_extrawarnings;
|
||||
fi
|
||||
|
||||
if test "x$enable_extrawarnings" != "xno"
|
||||
then
|
||||
CFLAGS="${CFLAGS} -Wextra -Wno-unused-parameter"
|
||||
CXXFLAGS="${CXXFLAGS} -Wextra -Wno-unused-parameter"
|
||||
fi
|
||||
|
||||
# Check whether --enable-static was given.
|
||||
if test "${enable_static+set}" = set; then :
|
||||
enableval=$enable_static;
|
||||
fi
|
||||
|
||||
if test "x$enable_static" = xyes
|
||||
then LDFLAGS="${LDFLAGS} -static"
|
||||
fi
|
||||
|
||||
# Check whether --enable-debug was given.
|
||||
if test "${enable_debug+set}" = set; then :
|
||||
enableval=$enable_debug;
|
||||
fi
|
||||
|
||||
if test "x$enable_debug" = xyes
|
||||
then
|
||||
CFLAGS="${CFLAGS} -g"
|
||||
CXXFLAGS="${CXXFLAGS} -g"
|
||||
|
||||
$as_echo "#define DEBUG 1" >>confdefs.h
|
||||
|
||||
else
|
||||
|
||||
$as_echo "#define NDEBUG 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
# Check whether --enable-coverage was given.
|
||||
if test "${enable_coverage+set}" = set; then :
|
||||
enableval=$enable_coverage;
|
||||
fi
|
||||
|
||||
if test "x$enable_coverage" = xyes
|
||||
then
|
||||
CFLAGS="${CFLAGS} --coverage"
|
||||
CXXFLAGS="${CXXFLAGS} --coverage"
|
||||
LDFLAGS="${LDFLAGS} --coverage"
|
||||
fi
|
||||
|
||||
# Check whether --enable-profiling was given.
|
||||
if test "${enable_profiling+set}" = set; then :
|
||||
enableval=$enable_profiling;
|
||||
fi
|
||||
|
||||
if test "x$enable_profiling" = xyes
|
||||
then
|
||||
CFLAGS="${CFLAGS} -pg"
|
||||
CXXFLAGS="${CXXFLAGS} -pg"
|
||||
LDFLAGS="${LDFLAGS} -pg"
|
||||
fi
|
||||
|
||||
# Check whether --enable-urandom was given.
|
||||
if test "${enable_urandom+set}" = set; then :
|
||||
enableval=$enable_urandom;
|
||||
fi
|
||||
|
||||
if test "x$enable_urandom" = xyes
|
||||
then
|
||||
|
||||
$as_echo "#define ENABLE_DEV_URANDOM 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
ac_ext=c
|
||||
ac_cpp='$CPP $CPPFLAGS'
|
||||
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||||
|
@ -5187,6 +5110,129 @@ $as_echo "#define HAVE_GCC 0" >>confdefs.h
|
|||
|
||||
fi
|
||||
|
||||
if test "x${CXX}" = "xclang++"; then
|
||||
|
||||
$as_echo "#define HAVE_CLANG 1" >>confdefs.h
|
||||
|
||||
else
|
||||
|
||||
$as_echo "#define HAVE_CLANG 0" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
if test "x${CXX}" = "xgxlc++"; then
|
||||
|
||||
$as_echo "#define HAVE_IBM_GXLC 1" >>confdefs.h
|
||||
|
||||
else
|
||||
|
||||
$as_echo "#define HAVE_IBM_GXLC 0" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
if test "x${CXX}" = "xsunCC"; then
|
||||
|
||||
$as_echo "#define HAVE_ORACLE_SUNCC 1" >>confdefs.h
|
||||
|
||||
else
|
||||
|
||||
$as_echo "#define HAVE_ORACLE_SUNCC 0" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
if test "x${CXX}" = "xaCC"; then
|
||||
|
||||
$as_echo "#define HAVE_HP_ACC 1" >>confdefs.h
|
||||
|
||||
else
|
||||
|
||||
$as_echo "#define HAVE_HP_ACC 0" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
CFLAGS=${CFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
|
||||
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
|
||||
|
||||
|
||||
|
||||
# This is primarily to support old compilers that don’t understand -Wextra
|
||||
# Check whether --enable-extrawarnings was given.
|
||||
if test "${enable_extrawarnings+set}" = set; then :
|
||||
enableval=$enable_extrawarnings;
|
||||
fi
|
||||
|
||||
if test "x$enable_extrawarnings" != "xno"
|
||||
then
|
||||
CFLAGS="${CFLAGS} -Wextra -Wno-unused-parameter"
|
||||
CXXFLAGS="${CXXFLAGS} -Wextra -Wno-unused-parameter"
|
||||
fi
|
||||
|
||||
# Check whether --enable-static was given.
|
||||
if test "${enable_static+set}" = set; then :
|
||||
enableval=$enable_static;
|
||||
fi
|
||||
|
||||
if test "x$enable_static" = xyes
|
||||
then LDFLAGS="${LDFLAGS} -static"
|
||||
fi
|
||||
|
||||
# Check whether --enable-debug was given.
|
||||
if test "${enable_debug+set}" = set; then :
|
||||
enableval=$enable_debug;
|
||||
fi
|
||||
|
||||
if test "x$enable_debug" = xyes
|
||||
then
|
||||
CFLAGS="${CFLAGS} -g"
|
||||
CXXFLAGS="${CXXFLAGS} -g"
|
||||
|
||||
$as_echo "#define DEBUG 1" >>confdefs.h
|
||||
|
||||
else
|
||||
|
||||
$as_echo "#define NDEBUG 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
# Check whether --enable-coverage was given.
|
||||
if test "${enable_coverage+set}" = set; then :
|
||||
enableval=$enable_coverage;
|
||||
fi
|
||||
|
||||
if test "x$enable_coverage" = xyes
|
||||
then
|
||||
CFLAGS="${CFLAGS} --coverage"
|
||||
CXXFLAGS="${CXXFLAGS} --coverage"
|
||||
LDFLAGS="${LDFLAGS} --coverage"
|
||||
fi
|
||||
|
||||
# Check whether --enable-profiling was given.
|
||||
if test "${enable_profiling+set}" = set; then :
|
||||
enableval=$enable_profiling;
|
||||
fi
|
||||
|
||||
if test "x$enable_profiling" = xyes
|
||||
then
|
||||
CFLAGS="${CFLAGS} -pg"
|
||||
CXXFLAGS="${CXXFLAGS} -pg"
|
||||
LDFLAGS="${LDFLAGS} -pg"
|
||||
fi
|
||||
|
||||
# Check whether --enable-urandom was given.
|
||||
if test "${enable_urandom+set}" = set; then :
|
||||
enableval=$enable_urandom;
|
||||
fi
|
||||
|
||||
if test "x$enable_urandom" = xyes
|
||||
then
|
||||
|
||||
$as_echo "#define ENABLE_DEV_URANDOM 1" >>confdefs.h
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
ac_ext=c
|
||||
ac_cpp='$CPP $CPPFLAGS'
|
||||
|
|
80
configure.ac
80
configure.ac
|
@ -1,4 +1,4 @@
|
|||
dnl Process this file with autoconf to produce a configure script.
|
||||
zdnl Process this file with autoconf to produce a configure script.
|
||||
dnl
|
||||
dnl
|
||||
|
||||
|
@ -11,12 +11,63 @@ 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-2018 Tripwire, Inc. Tripwire is a registered trademark of Tripwire, Inc. All rights reserved.])
|
||||
AC_REVISION([$Revision: 2.4.3.8 $])
|
||||
|
||||
dnl ###############
|
||||
dnl Setup defaults
|
||||
dnl ###############
|
||||
|
||||
|
||||
dnl ###################
|
||||
dnl Checks for programs
|
||||
dnl ###################
|
||||
AC_PROG_CC([gcc clang suncc aCC gxlc xlC_r xlC cl.exe])
|
||||
AC_PROG_CXX([g++ c++ clang++ sunCC aCC gxlc++ xlC_r xlC cl.exe])
|
||||
AC_PROG_RANLIB
|
||||
AC_PROG_YACC
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_LN
|
||||
AN_MAKEVAR([AR], [AC_PROG_AR])
|
||||
AN_PROGRAM([ar], [AC_PROG_AR])
|
||||
AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
|
||||
AC_PROG_AR
|
||||
AC_PATH_PROG(path_to_vi, vi)
|
||||
AC_PATH_PROG(path_to_sendmail, sendmail, "", [$PATH:/usr/libexec])
|
||||
|
||||
if test "x${GXX}" != "x"; then
|
||||
AC_DEFINE(HAVE_GCC, 1, [Uses the GNU gcc compiler])
|
||||
else
|
||||
AC_DEFINE(HAVE_GCC, 0, [Uses the GNU gcc compiler])
|
||||
fi
|
||||
|
||||
if test "x${CXX}" = "xclang++"; then
|
||||
AC_DEFINE(HAVE_CLANG, 1, [Uses the Clang compiler])
|
||||
else
|
||||
AC_DEFINE(HAVE_CLANG, 0, [Uses the Clang compiler])
|
||||
fi
|
||||
|
||||
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
|
||||
AC_DEFINE(HAVE_ORACLE_SUNCC, 1, [Uses the sunCC compiler])
|
||||
else
|
||||
AC_DEFINE(HAVE_ORACLE_SUNCC, 0, [Uses the sunCC compiler])
|
||||
fi
|
||||
|
||||
if test "x${CXX}" = "xaCC"; then
|
||||
AC_DEFINE(HAVE_HP_ACC, 1, [Uses the aCC compiler])
|
||||
else
|
||||
AC_DEFINE(HAVE_HP_ACC, 0, [Uses the aCC compiler])
|
||||
fi
|
||||
|
||||
|
||||
dnl #####################
|
||||
dnl Set up base compiler flags
|
||||
dnl #####################
|
||||
|
||||
CFLAGS=${CFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
|
||||
CXXFLAGS=${CXXFLAGS:-"-O -pipe -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64"}
|
||||
|
||||
|
||||
dnl #####################
|
||||
dnl Configuration options
|
||||
dnl #####################
|
||||
|
@ -66,27 +117,6 @@ then
|
|||
AC_DEFINE(ENABLE_DEV_URANDOM, 1, [Enable use of /dev/urandom])
|
||||
fi
|
||||
|
||||
dnl ###################
|
||||
dnl Checks for programs
|
||||
dnl ###################
|
||||
AC_PROG_CC([gcc clang suncc aCC gxlc xlC_r xlC cl.exe])
|
||||
AC_PROG_CXX([g++ c++ clang++ sunCC aCC gxlc++ xlC_r xlC cl.exe])
|
||||
AC_PROG_RANLIB
|
||||
AC_PROG_YACC
|
||||
AC_PROG_LN_S
|
||||
AC_PROG_LN
|
||||
AN_MAKEVAR([AR], [AC_PROG_AR])
|
||||
AN_PROGRAM([ar], [AC_PROG_AR])
|
||||
AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
|
||||
AC_PROG_AR
|
||||
AC_PATH_PROG(path_to_vi, vi)
|
||||
AC_PATH_PROG(path_to_sendmail, sendmail, "", [$PATH:/usr/libexec])
|
||||
|
||||
if test "x${GXX}" != "x"; then
|
||||
AC_DEFINE(HAVE_GCC, 1, [Uses the GNU gcc compiler])
|
||||
else
|
||||
AC_DEFINE(HAVE_GCC, 0, [Uses the GNU gcc compiler])
|
||||
fi
|
||||
|
||||
dnl #######################
|
||||
dnl Checks for header files
|
||||
|
|
|
@ -127,7 +127,7 @@ protected:
|
|||
// to be added to the exception class.
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#if HAVE_GCC
|
||||
#if HAVE_GCC || HAVE_IBM_GXLC
|
||||
# define TSS_BEGIN_EXCEPTION_EXPLICIT
|
||||
#else
|
||||
# define TSS_BEGIN_EXCEPTION_EXPLICIT explicit
|
||||
|
|
Loading…
Reference in New Issue