summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYang Tse <yangsita@gmail.com>2008-08-04 06:48:11 +0000
committerYang Tse <yangsita@gmail.com>2008-08-04 06:48:11 +0000
commitb4fdccf87a78d2de32e049e5926e921f002e5ac7 (patch)
treefddc3154a8a140d4f1a550845b12075167a1848d
parent8d012181b01aae80b46c90755a55126bc9731f7d (diff)
downloadcurl-b4fdccf87a78d2de32e049e5926e921f002e5ac7.tar.gz
Autoconf 2.62 has changed the behaviour of the AC_AIX macro which we use.
Prior versions of autoconf defined _ALL_SOURCE if _AIX was defined. But, autoconf 2.62 version of AC_AIX defines _ALL_SOURCE along with other four preprocessor symbols no matter if the system is AIX or not. To keep the traditional behaviour, as well as an uniform one, across autoconf versions AC_AIX is replaced with our own internal macro.
-rw-r--r--CHANGES8
-rw-r--r--acinclude.m429
-rw-r--r--ares/CHANGES10
-rw-r--r--ares/acinclude.m430
-rw-r--r--ares/configure.ac4
-rw-r--r--configure.ac6
6 files changed, 81 insertions, 6 deletions
diff --git a/CHANGES b/CHANGES
index 92ce699e4..5cba3dc8e 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,14 @@
Changelog
+Yang Tse (4 Aug 2008)
+- Autoconf 2.62 has changed the behaviour of the AC_AIX macro which we use.
+ Prior versions of autoconf defined _ALL_SOURCE if _AIX was defined. 2.62
+ version of AC_AIX defines _ALL_SOURCE and other four preprocessor symbols
+ no matter if the system is AIX or not. To keep the traditional behaviour,
+ and an uniform one across autoconf versions AC_AIX is replaced with our
+ own internal macro CURL_CHECK_AIX_ALL_SOURCE.
+
Daniel Stenberg (4 Aug 2008)
- Test case 1041 (added by Daniel Fandrich April 14th) proved a bug where PUT
diff --git a/acinclude.m4 b/acinclude.m4
index e644670c2..4c54d5484 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -116,6 +116,34 @@ CURL_DEF_TOKEN $1
])
+dnl CURL_CHECK_AIX_ALL_SOURCE
+dnl -------------------------------------------------
+dnl Provides a replacement of traditional AC_AIX with
+dnl an uniform behaviour across all autoconf versions,
+dnl and with our own placement rules.
+
+AC_DEFUN([CURL_CHECK_AIX_ALL_SOURCE], [
+ AH_VERBATIM([_ALL_SOURCE],
+ [/* Define to 1 if OS is AIX. */
+#ifndef _ALL_SOURCE
+# undef _ALL_SOURCE
+#endif])
+ AC_BEFORE([$0], [AC_SYS_LARGEFILE])dnl
+ AC_BEFORE([$0], [CURL_CONFIGURE_REENTRANT])dnl
+ AC_MSG_CHECKING([if OS is AIX (to define _ALL_SOURCE)])
+ AC_EGREP_CPP([yes_this_is_aix],[
+#ifdef _AIX
+ yes_this_is_aix
+#endif
+ ],[
+ AC_MSG_RESULT([yes])
+ AC_DEFINE(_ALL_SOURCE)
+ ],[
+ AC_MSG_RESULT([no])
+ ])
+])
+
+
dnl CURL_CHECK_HEADER_WINDOWS
dnl -------------------------------------------------
dnl Check for compilable and valid windows.h header
@@ -3504,3 +3532,4 @@ AC_HELP_STRING([--without-ca-path], [Don't use a default CA path]),
fi
])
+
diff --git a/ares/CHANGES b/ares/CHANGES
index d727f4ba2..d23897216 100644
--- a/ares/CHANGES
+++ b/ares/CHANGES
@@ -1,6 +1,14 @@
Changelog for the c-ares project
-* Aug 01 2008 (Yang Tse)
+* Aug 4 2008 (Yang Tse)
+- Autoconf 2.62 has changed the behaviour of the AC_AIX macro which we use.
+ Prior versions of autoconf defined _ALL_SOURCE if _AIX was defined. 2.62
+ version of AC_AIX defines _ALL_SOURCE and other four preprocessor symbols
+ no matter if the system is AIX or not. To keep the traditional behaviour,
+ and an uniform one across autoconf versions AC_AIX is replaced with our
+ own internal macro CARES_CHECK_AIX_ALL_SOURCE.
+
+* Aug 1 2008 (Yang Tse)
- Configure process now checks if the preprocessor _REENTRANT symbol is already
defined. If it isn't currently defined a set of checks are performed to test
if its definition is required to make visible to the compiler a set of *_r
diff --git a/ares/acinclude.m4 b/ares/acinclude.m4
index bdea38447..a8c867b79 100644
--- a/ares/acinclude.m4
+++ b/ares/acinclude.m4
@@ -47,7 +47,7 @@ AC_DEFUN([CURL_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE], [
])
-dnl CURL_CHECK_DEF(SYMBOL, [INCLUDES], [SILENT])
+dnl CURL_CHECK_DEF (SYMBOL, [INCLUDES], [SILENT])
dnl -------------------------------------------------
dnl Use the C preprocessor to find out if the given object-style symbol
dnl is defined and get its expansion. This macro will not use default
@@ -94,6 +94,34 @@ CURL_DEF_TOKEN $1
])
+dnl CARES_CHECK_AIX_ALL_SOURCE
+dnl -------------------------------------------------
+dnl Provides a replacement of traditional AC_AIX with
+dnl an uniform behaviour across all autoconf versions,
+dnl and with our own placement rules.
+
+AC_DEFUN([CARES_CHECK_AIX_ALL_SOURCE], [
+ AH_VERBATIM([_ALL_SOURCE],
+ [/* Define to 1 if OS is AIX. */
+#ifndef _ALL_SOURCE
+# undef _ALL_SOURCE
+#endif])
+ AC_BEFORE([$0], [AC_SYS_LARGEFILE])dnl
+ AC_BEFORE([$0], [CARES_CONFIGURE_REENTRANT])dnl
+ AC_MSG_CHECKING([if OS is AIX (to define _ALL_SOURCE)])
+ AC_EGREP_CPP([yes_this_is_aix],[
+#ifdef _AIX
+ yes_this_is_aix
+#endif
+ ],[
+ AC_MSG_RESULT([yes])
+ AC_DEFINE(_ALL_SOURCE)
+ ],[
+ AC_MSG_RESULT([no])
+ ])
+])
+
+
dnl CURL_CHECK_HEADER_WINDOWS
dnl -------------------------------------------------
dnl Check for compilable and valid windows.h header
diff --git a/ares/configure.ac b/ares/configure.ac
index f31896cce..8ba64e7e0 100644
--- a/ares/configure.ac
+++ b/ares/configure.ac
@@ -64,11 +64,13 @@ AC_CANONICAL_HOST
dnl Get system canonical name
AC_DEFINE_UNQUOTED(OS, "${host}", [cpu-machine-OS])
-AC_AIX
AC_PROG_CC
AM_PROG_CC_C_O
AC_PROG_INSTALL
+dnl This defines _ALL_SOURCE for AIX
+CARES_CHECK_AIX_ALL_SOURCE
+
dnl Our configure and build reentrant settings
CARES_CONFIGURE_REENTRANT
diff --git a/configure.ac b/configure.ac
index 2cd527d9e..f810ccce3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -129,12 +129,12 @@ AC_CANONICAL_HOST
dnl Get system canonical name
AC_DEFINE_UNQUOTED(OS, "${host}", [cpu-machine-OS])
-dnl Check for AIX weirdos
-AC_AIX
-
dnl Checks for programs.
AC_PROG_CC
+dnl This defines _ALL_SOURCE for AIX
+CURL_CHECK_AIX_ALL_SOURCE
+
dnl Our configure and build reentrant settings
CURL_CONFIGURE_REENTRANT