diff options
Diffstat (limited to 'acinclude.m4')
-rw-r--r-- | acinclude.m4 | 199 |
1 files changed, 14 insertions, 185 deletions
diff --git a/acinclude.m4 b/acinclude.m4 index 690dc42..98a87f6 100644 --- a/acinclude.m4 +++ b/acinclude.m4 @@ -52,50 +52,6 @@ AC_DEFUN([GNUPG_CHECK_GNUMAKE], fi ]) -dnl GNUPG_CHECK_FAQPROG -dnl -AC_DEFUN([GNUPG_CHECK_FAQPROG], - [ AC_MSG_CHECKING(for faqprog.pl) - if faqprog.pl -V 2>/dev/null | grep '^faqprog.pl ' >/dev/null 2>&1; then - working_faqprog=yes - FAQPROG="faqprog.pl" - else - working_faqprog=no - FAQPROG=": " - fi - AC_MSG_RESULT($working_faqprog) - AC_SUBST(FAQPROG) - AM_CONDITIONAL(WORKING_FAQPROG, test "$working_faqprog" = "yes" ) - -dnl if test $working_faqprog = no; then -dnl AC_MSG_WARN([[ -dnl *** -dnl *** It seems that the faqprog.pl program is not installed; -dnl *** however it is only needed if you want to change the FAQ. -dnl *** (faqprog.pl should be available at: -dnl *** ftp://ftp.gnupg.org/gcrypt/contrib/faqprog.pl ) -dnl *** No need to worry about this warning. -dnl ***]]) -dnl fi - ]) - -dnl GNUPG_CHECK_DOCBOOK_TO_TEXI -dnl -AC_DEFUN([GNUPG_CHECK_DOCBOOK_TO_TEXI], - [ - AC_CHECK_PROG(DOCBOOK_TO_TEXI, docbook2texi, yes, no) - AC_MSG_CHECKING(for sgml to texi tools) - working_sgmltotexi=no - if test "$ac_cv_prog_DOCBOOK_TO_TEXI" = yes; then - if sgml2xml -v /dev/null 2>&1 | grep 'SP version' >/dev/null 2>&1 ; then - working_sgmltotexi=yes - fi - fi - AC_MSG_RESULT($working_sgmltotexi) - AM_CONDITIONAL(HAVE_DOCBOOK_TO_TEXI, test "$working_sgmltotexi" = "yes" ) - ]) - - dnl GNUPG_CHECK_ENDIAN dnl define either LITTLE_ENDIAN_HOST or BIG_ENDIAN_HOST @@ -117,18 +73,18 @@ AC_DEFUN([GNUPG_CHECK_ENDIAN], AC_CACHE_VAL(gnupg_cv_c_endian, [ gnupg_cv_c_endian=unknown # See if sys/param.h defines the BYTE_ORDER macro. - AC_TRY_COMPILE([#include <sys/types.h> - #include <sys/param.h>], [ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h> + #include <sys/param.h>]], [[ #if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN bogus endian macros - #endif], [# It does; now see whether it defined to BIG_ENDIAN or not. - AC_TRY_COMPILE([#include <sys/types.h> - #include <sys/param.h>], [ + #endif]])], [# It does; now see whether it defined to BIG_ENDIAN or not. + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h> + #include <sys/param.h>]], [[ #if BYTE_ORDER != BIG_ENDIAN not big endian - #endif], gnupg_cv_c_endian=big, gnupg_cv_c_endian=little)]) + #endif]])], gnupg_cv_c_endian=big, gnupg_cv_c_endian=little)]) if test "$gnupg_cv_c_endian" = unknown; then - AC_TRY_RUN([main () { + AC_RUN_IFELSE([AC_LANG_SOURCE([[main () { /* Are we little or big endian? From Harbison&Steele. */ union { @@ -137,7 +93,7 @@ AC_DEFUN([GNUPG_CHECK_ENDIAN], } u; u.l = 1; exit (u.c[sizeof (long) - 1] == 1); - }], + }]])], gnupg_cv_c_endian=little, gnupg_cv_c_endian=big, gnupg_cv_c_endian=$tmp_assumed_endian @@ -168,11 +124,11 @@ AC_DEFUN([GNUPG_BUILD_PROGRAM], [m4_define([my_build], [m4_bpatsubst(build_$1, [[^a-zA-Z0-9_]], [_])]) my_build=$2 m4_if([$2],[yes],[ - AC_ARG_ENABLE([$1], AC_HELP_STRING([--disable-$1], + AC_ARG_ENABLE([$1], AS_HELP_STRING([--disable-$1], [do not build the $1 program]), my_build=$enableval, my_build=$2) ],[ - AC_ARG_ENABLE([$1], AC_HELP_STRING([--enable-$1], + AC_ARG_ENABLE([$1], AS_HELP_STRING([--enable-$1], [build the $1 program]), my_build=$enableval, my_build=$2) ]) @@ -194,7 +150,7 @@ AC_DEFUN([GNUPG_BUILD_PROGRAM], # GPG_USE_<NAME>. AC_DEFUN([GNUPG_GPG_DISABLE_ALGO], [AC_MSG_CHECKING([whether to enable the $2 for gpg]) - AC_ARG_ENABLE([gpg-$1], AC_HELP_STRING([--disable-gpg-$1], + AC_ARG_ENABLE([gpg-$1], AS_HELP_STRING([--disable-gpg-$1], [disable the $2 algorithm in gpg]), , enableval=yes) AC_MSG_RESULT($enableval) @@ -203,144 +159,17 @@ AC_DEFUN([GNUPG_GPG_DISABLE_ALGO], fi ]) - - - -# Check whether mlock is broken (hpux 10.20 raises a SIGBUS if mlock -# is not called from uid 0 (not tested whether uid 0 works) -# For DECs Tru64 we have also to check whether mlock is in librt -# mlock is there a macro using memlk() -dnl GNUPG_CHECK_MLOCK -dnl -AC_DEFUN([GNUPG_CHECK_MLOCK], - [ AC_CHECK_FUNCS(mlock) - if test "$ac_cv_func_mlock" = "no"; then - AC_CHECK_HEADERS(sys/mman.h) - if test "$ac_cv_header_sys_mman_h" = "yes"; then - # Add librt to LIBS: - AC_CHECK_LIB(rt, memlk) - AC_CACHE_CHECK([whether mlock is in sys/mman.h], - gnupg_cv_mlock_is_in_sys_mman, - [AC_TRY_LINK([ - #include <assert.h> - #ifdef HAVE_SYS_MMAN_H - #include <sys/mman.h> - #endif - ], [ - int i; - - /* glibc defines this for functions which it implements - * to always fail with ENOSYS. Some functions are actually - * named something starting with __ and the normal name - * is an alias. */ - #if defined (__stub_mlock) || defined (__stub___mlock) - choke me - #else - mlock(&i, 4); - #endif - ; return 0; - ], - gnupg_cv_mlock_is_in_sys_mman=yes, - gnupg_cv_mlock_is_in_sys_mman=no)]) - if test "$gnupg_cv_mlock_is_in_sys_mman" = "yes"; then - AC_DEFINE(HAVE_MLOCK,1, - [Defined if the system supports an mlock() call]) - fi - fi - fi - if test "$ac_cv_func_mlock" = "yes"; then - AC_MSG_CHECKING(whether mlock is broken) - AC_CACHE_VAL(gnupg_cv_have_broken_mlock, - AC_TRY_RUN([ - #include <stdlib.h> - #include <unistd.h> - #include <errno.h> - #include <sys/mman.h> - #include <sys/types.h> - #include <fcntl.h> - - int main() - { - char *pool; - int err; - long int pgsize = getpagesize(); - - pool = malloc( 4096 + pgsize ); - if( !pool ) - return 2; - pool += (pgsize - ((long int)pool % pgsize)); - - err = mlock( pool, 4096 ); - if( !err || errno == EPERM ) - return 0; /* okay */ - - return 1; /* hmmm */ - } - - ], - gnupg_cv_have_broken_mlock="no", - gnupg_cv_have_broken_mlock="yes", - gnupg_cv_have_broken_mlock="assume-no" - ) - ) - if test "$gnupg_cv_have_broken_mlock" = "yes"; then - AC_DEFINE(HAVE_BROKEN_MLOCK,1, - [Defined if the mlock() call does not work]) - AC_MSG_RESULT(yes) - AC_CHECK_FUNCS(plock) - else - if test "$gnupg_cv_have_broken_mlock" = "no"; then - AC_MSG_RESULT(no) - else - AC_MSG_RESULT(assuming no) - fi - fi - fi - ]) - - -dnl Stolen from gcc -dnl Define MKDIR_TAKES_ONE_ARG if mkdir accepts only one argument instead -dnl of the usual 2. -AC_DEFUN([GNUPG_FUNC_MKDIR_TAKES_ONE_ARG], -[AC_CHECK_HEADERS(sys/stat.h unistd.h direct.h) -AC_CACHE_CHECK([if mkdir takes one argument], gnupg_cv_mkdir_takes_one_arg, -[AC_TRY_COMPILE([ -#include <sys/types.h> -#ifdef HAVE_SYS_STAT_H -# include <sys/stat.h> -#endif -#ifdef HAVE_UNISTD_H -# include <unistd.h> -#endif -#ifdef HAVE_DIRECT_H -# include <direct.h> -#endif], [mkdir ("foo", 0);], - gnupg_cv_mkdir_takes_one_arg=no, gnupg_cv_mkdir_takes_one_arg=yes)]) -if test $gnupg_cv_mkdir_takes_one_arg = yes ; then - AC_DEFINE(MKDIR_TAKES_ONE_ARG,1, - [Defined if mkdir() does not take permission flags]) -fi -]) - - # GNUPG_TIME_T_UNSIGNED # Check whether time_t is unsigned # AC_DEFUN([GNUPG_TIME_T_UNSIGNED], [ AC_CACHE_CHECK(whether time_t is unsigned, gnupg_cv_time_t_unsigned, - [AC_REQUIRE([AC_HEADER_TIME])dnl - AC_COMPILE_IFELSE([AC_LANG_BOOL_COMPILE_TRY( + [AC_COMPILE_IFELSE([AC_LANG_BOOL_COMPILE_TRY( [AC_INCLUDES_DEFAULT([]) -#if TIME_WITH_SYS_TIME +#if HAVE_SYS_TIME_H # include <sys/time.h> -# include <time.h> #else -# if HAVE_SYS_TIME_H -# include <sys/time.h> -# else -# include <time.h> -# endif +# include <time.h> #endif ], [((time_t)-1) < 0])], |