From: Florian Forster Date: Fri, 29 Mar 2013 13:43:39 +0000 (-0700) Subject: configure.in: Yet another attempt at fixing the mess that is AC_LANG_PROGRAM(). X-Git-Tag: collectd-5.1.3~8 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=e0552af6e56d23a027b9fdb226ee6d8217dcb36a;p=collectd.git configure.in: Yet another attempt at fixing the mess that is AC_LANG_PROGRAM(). --- diff --git a/configure.in b/configure.in index 7f4b0752..5e812a10 100644 --- a/configure.in +++ b/configure.in @@ -566,13 +566,13 @@ fi AC_CACHE_CHECK([for strtok_r], [c_cv_have_strtok_r_default], AC_LINK_IFELSE( - AC_LANG_PROGRAM( - [[[[ + [AC_LANG_PROGRAM( +[[[ #include #include #include - ]]]], - [[[[ +]]], +[[[ char buffer[] = "foo,bar,baz"; char *token; char *dummy; @@ -585,7 +585,8 @@ AC_CACHE_CHECK([for strtok_r], dummy = NULL; printf ("token = %s;\n", token); } - ]]]]), +]]] + )], [c_cv_have_strtok_r_default="yes"], [c_cv_have_strtok_r_default="no"] ) @@ -598,13 +599,13 @@ then AC_CACHE_CHECK([if strtok_r needs _REENTRANT], [c_cv_have_strtok_r_reentrant], AC_LINK_IFELSE( - AC_LANG_PROGRAM( - [[[[ + [AC_LANG_PROGRAM( +[[[ #include #include #include - ]]]], - [[[[ +]]], +[[[ char buffer[] = "foo,bar,baz"; char *token; char *dummy; @@ -617,7 +618,8 @@ then dummy = NULL; printf ("token = %s;\n", token); } - ]]]]), +]]] + )], [c_cv_have_strtok_r_reentrant="yes"], [AC_MSG_FAILURE([strtok_r isn't available. Please file a bugreport!])] ) @@ -695,16 +697,15 @@ if test "x$have_strptime" = "xyes" then AC_CACHE_CHECK([whether strptime is exported by default], [c_cv_have_strptime_default], - AC_COMPILE_IFELSE( -AC_LANG_PROGRAM( -[[ -AC_INCLUDES_DEFAULT + AC_COMPILE_IFELSE([AC_LANG_PROGRAM( +[[[ #include -]], -[[ +]]], +[[[ struct tm stm; (void) strptime ("2010-12-30%13:42:42", "%Y-%m-%dT%T", &stm); -]]), +]]] + )], [c_cv_have_strptime_default="yes"], [c_cv_have_strptime_default="no"])) fi @@ -712,9 +713,8 @@ if test "x$have_strptime" = "xyes" && test "x$c_cv_have_strptime_default" = "xno then AC_CACHE_CHECK([whether strptime needs standards mode], [c_cv_have_strptime_standards], - AC_COMPILE_IFELSE( -AC_LANG_PROGRAM( -[[ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM( +[[[ #ifndef _ISOC99_SOURCE # define _ISOC99_SOURCE 1 #endif @@ -724,13 +724,13 @@ AC_LANG_PROGRAM( #ifndef _XOPEN_SOURCE # define _XOPEN_SOURCE 500 #endif -AC_INCLUDES_DEFAULT #include -]], -[[ +]]], +[[[ struct tm stm; (void) strptime ("2010-12-30%13:42:42", "%Y-%m-%dT%T", &stm); -]]), +]]] + )], [c_cv_have_strptime_standards="yes"], [c_cv_have_strptime_standards="no"])) @@ -746,7 +746,6 @@ if test "x$GCC" = "xyes" then CFLAGS="$SAVE_CFLAGS" fi - # }}} Check for strptime AC_CHECK_FUNCS(swapctl, [have_swapctl="yes"], [have_swapctl="no"]) @@ -754,17 +753,17 @@ if test "x$have_swapctl" = "xyes"; then AC_CACHE_CHECK([whether swapctl takes two arguments], [c_cv_have_swapctl_two_args], AC_COMPILE_IFELSE([AC_LANG_PROGRAM( -[[ +[[[ #if HAVE_SYS_SWAP_H && !defined(_LP64) && _FILE_OFFSET_BITS == 64 # undef _FILE_OFFSET_BITS # undef _LARGEFILE64_SOURCE #endif #include #include -]], -[[ +]]], +[[[ int num = swapctl(0, NULL); -]] +]]] )], [c_cv_have_swapctl_two_args="yes"], [c_cv_have_swapctl_two_args="no"] @@ -774,17 +773,17 @@ int num = swapctl(0, NULL); [c_cv_have_swapctl_three_args], AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( -[[ +[[[ #if HAVE_SYS_SWAP_H && !defined(_LP64) && _FILE_OFFSET_BITS == 64 # undef _FILE_OFFSET_BITS # undef _LARGEFILE64_SOURCE #endif #include #include -]], -[[ +]]], +[[[ int num = swapctl(0, NULL, 0); -]] +]]] )], [c_cv_have_swapctl_three_args="yes"], [c_cv_have_swapctl_three_args="no"] @@ -818,19 +817,19 @@ AC_ARG_WITH(nan-emulation, [AS_HELP_STRING([--with-nan-emulation], [use emulated if test "x$nan_type" = "xnone"; then AC_CACHE_CHECK([whether NAN is defined by default], [c_cv_have_nan_default], - AC_COMPILE_IFELSE( - AC_LANG_PROGRAM( - [[ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM( +[[[ #include #include static double foo = NAN; - ]], - [[ +]]], +[[[ if (isnan (foo)) return 0; else return 1; - ]]), +]]] + )], [c_cv_have_nan_default="yes"], [c_cv_have_nan_default="no"] ) @@ -843,20 +842,20 @@ fi if test "x$nan_type" = "xnone"; then AC_CACHE_CHECK([whether NAN is defined by __USE_ISOC99], [c_cv_have_nan_isoc], - AC_COMPILE_IFELSE( - AC_LANG_PROGRAM( - [[ + AC_COMPILE_IFELSE([AC_LANG_PROGRAM( +[[[ #include #define __USE_ISOC99 1 #include static double foo = NAN; - ]], - [[ +]]], +[[[ if (isnan (foo)) return 0; else return 1; - ]]), +]]] + )], [c_cv_have_nan_isoc="yes"], [c_cv_have_nan_isoc="no"] ) @@ -871,9 +870,8 @@ if test "x$nan_type" = "xnone"; then LDFLAGS="$LDFLAGS -lm" AC_CACHE_CHECK([whether NAN can be defined by 0/0], [c_cv_have_nan_zero], - AC_RUN_IFELSE( - AC_LANG_PROGRAM( - [[ + AC_RUN_IFELSE([AC_LANG_PROGRAM( +[[[ #include #include #ifdef NAN @@ -884,13 +882,14 @@ if test "x$nan_type" = "xnone"; then # define isnan(f) ((f) != (f)) #endif static double foo = NAN; - ]], - [[ +]]], +[[[ if (isnan (foo)) return 0; else return 1; - ]]), +]]] + )], [c_cv_have_nan_zero="yes"], [c_cv_have_nan_zero="no"] ) @@ -932,9 +931,8 @@ fi; fi; fi if test "x$fp_layout_type" = "xunknown"; then AC_CACHE_CHECK([if doubles are stored in x86 representation], [c_cv_fp_layout_need_nothing], - AC_RUN_IFELSE( - AC_LANG_PROGRAM( - [[[[ + AC_RUN_IFELSE([AC_LANG_PROGRAM( +[[[ #include #include #include @@ -947,8 +945,8 @@ if test "x$fp_layout_type" = "xunknown"; then #if HAVE_STDBOOL_H # include #endif - ]]]], - [[[[ +]]], +[[[ uint64_t i0; uint64_t i1; uint8_t c[8]; @@ -967,7 +965,8 @@ if test "x$fp_layout_type" = "xunknown"; then return (0); else return (1); - ]]]]), +]]] + )], [c_cv_fp_layout_need_nothing="yes"], [c_cv_fp_layout_need_nothing="no"] ) @@ -979,9 +978,8 @@ fi if test "x$fp_layout_type" = "xunknown"; then AC_CACHE_CHECK([if endianflip converts to x86 representation], [c_cv_fp_layout_need_endianflip], - AC_RUN_IFELSE( - AC_LANG_PROGRAM( - [[[[ + AC_RUN_IFELSE([AC_LANG_PROGRAM( +[[[ #include #include #include @@ -1002,8 +1000,8 @@ if test "x$fp_layout_type" = "xunknown"; then (((uint64_t)(A) & 0x0000000000ff0000LL) << 24) | \ (((uint64_t)(A) & 0x000000000000ff00LL) << 40) | \ (((uint64_t)(A) & 0x00000000000000ffLL) << 56)) - ]]]], - [[[[ +]]], +[[[ uint64_t i0; uint64_t i1; uint8_t c[8]; @@ -1022,7 +1020,8 @@ if test "x$fp_layout_type" = "xunknown"; then return (0); else return (1); - ]]]]), +]]] + )], [c_cv_fp_layout_need_endianflip="yes"], [c_cv_fp_layout_need_endianflip="no"] ) @@ -1034,9 +1033,8 @@ fi if test "x$fp_layout_type" = "xunknown"; then AC_CACHE_CHECK([if intswap converts to x86 representation], [c_cv_fp_layout_need_intswap], - AC_RUN_IFELSE( - AC_LANG_PROGRAM( - [[[[ + AC_RUN_IFELSE([AC_LANG_PROGRAM( +[[[ #include #include #include @@ -1051,8 +1049,8 @@ if test "x$fp_layout_type" = "xunknown"; then #endif #define intswap(A) ((((uint64_t)(A) & 0xffffffff00000000LL) >> 32) | \ (((uint64_t)(A) & 0x00000000ffffffffLL) << 32)) - ]]]], - [[[[ +]]], +[[[ uint64_t i0; uint64_t i1; uint8_t c[8]; @@ -1071,7 +1069,8 @@ if test "x$fp_layout_type" = "xunknown"; then return (0); else return (1); - ]]]]), +]]] + )], [c_cv_fp_layout_need_intswap="yes"], [c_cv_fp_layout_need_intswap="no"] ) @@ -1118,15 +1117,15 @@ if test "x$have_getmntent" = "xc"; then [c_cv_have_one_getmntent], AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( -[[ +[[[ #include "$srcdir/src/utils_mount.h" -]], -[[ +]]], +[[[ FILE *fh; struct mntent *me; fh = setmntent ("/etc/mtab", "r"); me = getmntent (fh); -]] +]]] )], [c_cv_have_one_getmntent="yes"], [c_cv_have_one_getmntent="no"] @@ -1136,16 +1135,16 @@ me = getmntent (fh); [c_cv_have_two_getmntent], AC_COMPILE_IFELSE( [AC_LANG_PROGRAM( -[[ +[[[ #include "$srcdir/src/utils_mount.h" -]], -[[ +]]], +[[[ FILE *fh; struct mnttab mt; int status; fh = fopen ("/etc/mnttab", "r"); status = getmntent (fh, &mt); -]] +]]] )], [c_cv_have_two_getmntent="yes"], [c_cv_have_two_getmntent="no"] @@ -1182,17 +1181,19 @@ fi AC_MSG_CHECKING([if have htonll defined]) have_htonll="no" - AC_LINK_IFELSE([ - AC_LANG_PROGRAM([ + AC_LINK_IFELSE([AC_LANG_PROGRAM( +[[[ #include #include #if HAVE_INTTYPES_H # include #endif - ], [ +]]], +[[[ return htonll(0); - ]) - ], [ +]]] + )], + [ have_htonll="yes" AC_DEFINE(HAVE_HTONLL, 1, [Define if the function htonll exists.]) ]) @@ -2472,34 +2473,34 @@ then #include ]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM( -[[ +[[[ #include #include #include #include #include #include -]], -[[ +]]], +[[[ int retval = TCA_STATS2; return (retval); -]] +]]] )], [AC_DEFINE([HAVE_TCA_STATS2], [1], [True if the enum-member TCA_STATS2 exists])]) AC_COMPILE_IFELSE([AC_LANG_PROGRAM( -[[ +[[[ #include #include #include #include #include #include -]], -[[ +]]], +[[[ int retval = TCA_STATS; return (retval); -]] +]]] )], [AC_DEFINE([HAVE_TCA_STATS], 1, [True if the enum-member TCA_STATS exists])]) @@ -2521,7 +2522,7 @@ then [if function 'rtnl_dump_filter' expects five arguments], [c_cv_rtnl_dump_filter_five_args], AC_COMPILE_IFELSE([AC_LANG_PROGRAM( -[[ +[[[ #include #include #include @@ -2533,12 +2534,12 @@ then #elif HAVE_LINUX_LIBNETLINK_H # include #endif -]], -[[ +]]], +[[[ if (rtnl_dump_filter(NULL, NULL, NULL, NULL, NULL)) return 1; return 0; -]] +]]] )], [c_cv_rtnl_dump_filter_five_args="yes"], [c_cv_rtnl_dump_filter_five_args="no"] @@ -2549,7 +2550,7 @@ return 0; [if function 'rtnl_dump_filter' expects three arguments], [c_cv_rtnl_dump_filter_three_args], AC_COMPILE_IFELSE([AC_LANG_PROGRAM( -[[ +[[[ #include #include #include @@ -2561,12 +2562,12 @@ return 0; #elif HAVE_LINUX_LIBNETLINK_H # include #endif -]], -[[ +]]], +[[[ if (rtnl_dump_filter(NULL, NULL, NULL)) return 1; return 0; -]] +]]] )], [c_cv_rtnl_dump_filter_three_args="yes"], [c_cv_rtnl_dump_filter_three_args="no"] @@ -3036,20 +3037,20 @@ dnl ARCHFLAGS="" -> disable multi -arch on OSX (see Config_heavy.pl:fetch_string AC_CACHE_CHECK([for libperl], [c_cv_have_libperl], - AC_LINK_IFELSE( - AC_LANG_PROGRAM( - [[ + AC_LINK_IFELSE([AC_LANG_PROGRAM( +[[[ #define PERL_NO_GET_CONTEXT #include #include #include - ]], - [[ +]]], +[[[ dTHX; load_module (PERL_LOADMOD_NOIMPORT, newSVpv ("Collectd::Plugin::FooBar", 24), Nullsv); - ]]), +]]] + )], [c_cv_have_libperl="yes"], [c_cv_have_libperl="no"] ) @@ -3081,9 +3082,8 @@ then AC_CACHE_CHECK([if perl supports ithreads], [c_cv_have_perl_ithreads], - AC_LINK_IFELSE( - AC_LANG_PROGRAM( - [[ + AC_LINK_IFELSE([AC_LANG_PROGRAM( +[[[ #include #include #include @@ -3091,8 +3091,9 @@ then #if !defined(USE_ITHREADS) # error "Perl does not support ithreads!" #endif /* !defined(USE_ITHREADS) */ - ]], - [[ ]]), +]]], +[[[ ]]] + )], [c_cv_have_perl_ithreads="yes"], [c_cv_have_perl_ithreads="no"] ) @@ -3118,20 +3119,20 @@ then AC_CACHE_CHECK([for broken Perl_load_module()], [c_cv_have_broken_perl_load_module], - AC_LINK_IFELSE( - AC_LANG_PROGRAM( - [[ + AC_LINK_IFELSE([AC_LANG_PROGRAM( +[[[ #define PERL_NO_GET_CONTEXT #include #include #include - ]], - [[ +]]], +[[[ dTHX; load_module (PERL_LOADMOD_NOIMPORT, newSVpv ("Collectd::Plugin::FooBar", 24), Nullsv); - ]]), +]]] + )], [c_cv_have_broken_perl_load_module="no"], [c_cv_have_broken_perl_load_module="yes"] )