X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/blobdiff_plain/10ac299278b548d88a682c750bb5973c3e78037c..HEAD:/configure.ac diff --git a/configure.ac b/configure.ac index 308e457c..88d2ec51 100644 --- a/configure.ac +++ b/configure.ac @@ -37,8 +37,15 @@ mdw_SILENT_RULES AC_PROG_CC AX_CFLAGS_WARN_ALL -AM_PROG_LIBTOOL +LT_INIT mdw_LIBTOOL_VERSION_INFO +case $host_os in + cygwin* | mingw* | pw32* | os2* | darwin* | cegcc*) + TEST_LDFLAGS=-no-fast-install ;; + *) + TEST_LDFLAGS=-no-install ;; +esac +AC_SUBST([TEST_LDFLAGS]) AM_PROG_AS @@ -121,7 +128,7 @@ AC_CACHE_CHECK( .intel_syntax noprefix .globl foo foo: - adcd var, 0 + adc dword ptr var, 0 ret .data var: .long 1 @@ -145,7 +152,7 @@ m4_define([catacomb_DEFINE_CPU_OR_ABI], ;;m4_define([catacomb_seen_$3/$$2], [t])])]) catacomb_CPU_FAMILIES([_def]) nil) ;; - *) AC_MSG_ERROR([BUG: unexpected $1 \`$1']) ;; + *) AC_MSG_ERROR([BUG: unexpected $1 `$$1']) ;; esac]) dnl Now that's out the way, we can explain what we're doing. @@ -154,9 +161,9 @@ AC_MSG_CHECKING([CPU family and ABI]) dnl Figure out the target CPU family and ABI. catacomb_CPU_FAMILIES([catacomb_CLEAR_FLAGS]) catacomb_DEFINE_CPU_OR_ABI([CPUFAM], [2], [cpu], - [CPUFAM_], [Define if target CPU is \`$][2\'.]) + [CPUFAM_], [Define if target CPU is `$][2'.]) catacomb_DEFINE_CPU_OR_ABI([ABI], [3], [abi], - [ABI_], [Define if target ABI is \`$][3\'.]) + [ABI_], [Define if target ABI is `$][3'.]) dnl Establish Automake conditions for things. catacomb_CPU_FAMILIES([catacomb_CLEAR_FLAGS]) @@ -172,7 +179,6 @@ m4_ifdef([catacomb_seen_abi/$3], [], m4_define([catacomb_seen_abi/$3], [t])])]) catacomb_CPU_FAMILIES([catacomb_COND_CPU]) AM_CONDITIONAL([KNOWN_CPUFAM], [test x$CPUFAM != xnil]) -AM_CONDITIONAL([ASM_DEBUG], [test x$mdw_asm_debug != xno]) dnl Report on what we found. case $CPUFAM in @@ -186,11 +192,19 @@ AC_ARG_ENABLE([asm-debug], [enable assembler debugging features]), [mdw_asm_debug=$enableval], [mdw_asm_debug=no]) case $CPUFAM in nil) mdw_asm_debug=no ;; esac -case mdw_asm_debug in +case $mdw_asm_debug in no) ;; *) AC_DEFINE([ENABLE_ASM_DEBUG], [1], [Define to enable assembler-level debugging.]) ;; esac +AM_CONDITIONAL([ASM_DEBUG], [test x$mdw_asm_debug != xno]) + +dnl Check for leading underscores on C symbols. +LT_SYS_SYMBOL_USCORE +case $sys_symbol_underscore in + yes) AC_DEFINE([SYM_USCORE], [1], + [Define if C symbols are prefixed with an underscore.]) ;; +esac dnl-------------------------------------------------------------------------- dnl CPU-specific assembler features. @@ -248,7 +262,7 @@ AC_CHECK_TYPE([socklen_t], [], [AC_DEFINE([socklen_t], [int], [Define to `int' if does not define])], [AC_INCLUDES_DEFAULT -#include +@%:@include ]) dnl The maths library. @@ -263,10 +277,11 @@ AC_CACHE_CHECK( [library needed for syslog], [mdw_cv_syslog_lib], [mdw_ORIG_LIBS=$LIBS LIBS= for i in 0 1; do - AC_TRY_LINK([#include ], - [openlog("test", LOG_PID, LOG_DAEMON); - syslog(LOG_ERR, "this is a test");], - [ok=t], [ok=nil]) + AC_COMPILE_IFELSE([AC_LANG_PROGRAM( + [[@%:@include ]], + [[openlog("test", LOG_PID, LOG_DAEMON); + syslog(LOG_ERR, "this is a test");]])], + [ok=t], [ok=nil]) case $i,$ok in *,t) mdw_cv_syslog_lib=${LIBS:-none}; break ;; 0,nil) LIBS="-llog" ;; @@ -318,7 +333,7 @@ limits="" limits_sep="" AC_DEFUN([catacomb_COMPILE_TIME_CONSTANT], [case "$2" in =*) - $1="$2"; $1=${$1#=} + $1="$2"; $1=${$1@%:@=} ;; *) AC_CACHE_CHECK([compile-time value of $2], [mdw_cv_constant_$3], @@ -328,11 +343,11 @@ AC_DEFUN([catacomb_COMPILE_TIME_CONSTANT], esac]) AC_DEFUN([catacomb_LIMIT], [catacomb_COMPILE_TIME_CONSTANT([lo], [$2], [$1_min], -[#include -#include ]) +[@%:@include +@%:@include ]) catacomb_COMPILE_TIME_CONSTANT([hi], [$3], [$1_max], -[#include -#include ]) +[@%:@include +@%:@include ]) limits="$limits$limits_sep('$1', $lo, $hi)" limits_sep=", "]) catacomb_LIMIT([SCHAR], [SCHAR_MIN], [SCHAR_MAX]) catacomb_LIMIT([CHAR], [CHAR_MIN], [CHAR_MAX]) @@ -356,9 +371,9 @@ AC_SUBST([limits]) dnl Figure out other aspects of the implementation's arithmetic. AC_CACHE_CHECK([whether negative numbers use two's complement], [catacomb_cv_neg_twoc], -[AC_TRY_COMPILE( -[#include ], -[int check[2*!!(-INT_MAX == INT_MIN + 1) - 1];], +[AC_COMPILE_IFELSE([AC_LANG_PROGRAM( +[[@%:@include ]], +[[int check[2*!!(-INT_MAX == INT_MIN + 1) - 1];]])], [catacomb_cv_neg_twoc=yes], [catacomb_cv_neg_twoc=no])]) case $catacomb_cv_neg_twoc in @@ -376,18 +391,18 @@ AC_SEARCH_LIBS([clock_gettime], [rt]) CATACOMB_LIBS=$LIBS LIBS=$mdw_ORIG_LIBS if test "$ac_cv_search_clock_gettime" != no; then AC_DEFINE([HAVE_CLOCK_GETTIME], [1], - [Define if you have the \`clock_gettime' function.]) + [Define if you have the `clock_gettime' function.]) fi AC_CHECK_FUNCS([getentropy]) AC_CACHE_CHECK([whether the freewheel noise generator will work], [catacomb_cv_freewheel], -[AC_TRY_LINK( -[#include -#include ], -[struct itimerval itv = { { 0, 0 }, { 0, 5000 } }; +[AC_LINK_IFELSE([AC_LANG_PROGRAM( +[[@%:@include +@%:@include ]], +[[struct itimerval itv = { { 0, 0 }, { 0, 5000 } }; jmp_buf j; setitimer(ITIMER_REAL, &itv, 0); -sigsetjmp(j, 1);], +sigsetjmp(j, 1);]])], [catacomb_cv_freewheel=yes], [catacomb_cv_freewheel=no])]) case $catacomb_cv_freewheel in @@ -416,7 +431,7 @@ dnl Set the master libraries we need. AC_SUBST([CATACOMB_LIBS]) dnl Necessary support libraries. -PKG_CHECK_MODULES([mLib], [mLib >= 2.3.0]) +PKG_CHECK_MODULES([mLib], [mLib >= 2.4.1]) AM_CFLAGS="$AM_CFLAGS $mLib_CFLAGS" dnl-------------------------------------------------------------------------- @@ -444,7 +459,7 @@ AC_ARG_ENABLE([mpw], dnl-------------------------------------------------------------------------- dnl Produce output. -AC_CONFIG_HEADER([config/config.h]) +AC_CONFIG_HEADERS([config/config.h]) AC_CONFIG_FILES( [Makefile]