Loading ares/acinclude.m4 +81 −66 Original line number Diff line number Diff line Loading @@ -1197,43 +1197,6 @@ dnl end of non-blocking try-compile test ]) dnl TYPE_SOCKADDR_STORAGE dnl ------------------------------------------------- dnl Check for struct sockaddr_storage. Most IPv6-enabled hosts have it, but dnl AIX 4.3 is one known exception. AC_DEFUN([TYPE_SOCKADDR_STORAGE], [ AC_CHECK_TYPE([struct sockaddr_storage], AC_DEFINE(HAVE_STRUCT_SOCKADDR_STORAGE, 1, [if struct sockaddr_storage is defined]), , [ #undef inline #ifdef HAVE_WINDOWS_H #ifndef WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN #endif #include <windows.h> #ifdef HAVE_WINSOCK2_H #include <winsock2.h> #endif #else #ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif #ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> #endif #ifdef HAVE_NETINET_IN_H #include <netinet/in.h> #endif #ifdef HAVE_ARPA_INET_H #include <arpa/inet.h> #endif #endif ]) ]) dnl TYPE_IN_ADDR_T dnl ------------------------------------------------- dnl Check for in_addr_t: it is used to receive the return code of inet_addr() Loading Loading @@ -1316,12 +1279,39 @@ AC_DEFUN([TYPE_IN_ADDR_T], #ifdef HAVE_ARPA_INET_H #include <arpa/inet.h> #endif #endif ]) dnl AC_CHECK_TYPE ]) dnl AC_DEFUN dnl ********************************************************************** dnl CURL_DETECT_ICC ([ACTION-IF-YES]) dnl dnl check if this is the Intel ICC compiler, and if so run the ACTION-IF-YES dnl sets the $ICC variable to "yes" or "no" dnl ********************************************************************** AC_DEFUN([CURL_DETECT_ICC], [ ICC="no" AC_MSG_CHECKING([for icc in use]) if test "$GCC" = "yes"; then dnl check if this is icc acting as gcc in disguise AC_EGREP_CPP([^__INTEL_COMPILER], [__INTEL_COMPILER], dnl action if the text is found, this it has not been replaced by the dnl cpp ICC="no", dnl the text was not found, it was replaced by the cpp ICC="yes" AC_MSG_RESULT([yes]) [$1] ) fi if test "$ICC" = "no"; then # this is not ICC AC_MSG_RESULT([no]) fi ]) dnl We create a function for detecting which compiler we use and then set as dnl pendantic compiler options as possible for that particular compiler. The dnl options are only used for debug-builds. Loading @@ -1332,6 +1322,10 @@ dnl is changed. AC_DEFUN([CURL_CC_DEBUG_OPTS], [ if test "z$ICC" = "z"; then CURL_DETECT_ICC fi if test "$GCC" = "yes"; then dnl figure out gcc version! Loading @@ -1342,40 +1336,46 @@ AC_DEFUN([CURL_CC_DEBUG_OPTS], gccnum=`(expr $num1 "*" 100 + $num2) 2>/dev/null` AC_MSG_RESULT($gccver) AC_MSG_CHECKING([if this is icc in disguise]) AC_EGREP_CPP([^__INTEL_COMPILER], [__INTEL_COMPILER], dnl action if the text is found, this it has not been replaced by the dnl cpp ICC="no" AC_MSG_RESULT([no]), dnl the text was not found, it was replaced by the cpp ICC="yes" AC_MSG_RESULT([yes]) ) if test "$ICC" = "yes"; then dnl this is icc, not gcc. dnl ICC warnings we ignore: dnl * 279 warns on static conditions in while expressions dnl * 269 warns on our "%Od" printf formatters for curl_off_t output: dnl "invalid format string conversion" dnl * 279 warns on static conditions in while expressions dnl * 981 warns on "operands are evaluated in unspecified order" dnl * 1418 "external definition with no prior declaration" dnl * 1419 warns on "external declaration in primary source file" dnl which we know and do on purpose. WARN="-wd279,269" WARN="-wd279,269,981,1418,1419" if test "$gccnum" -gt "600"; then dnl icc 6.0 and older doesn't have the -Wall flag WARN="-Wall $WARN" fi else dnl $ICC = yes dnl WARN="-W -Wall -Wwrite-strings -pedantic -Wno-long-long -Wundef -Wpointer-arith -Wnested-externs -Winline -Wmissing-declarations -Wmissing-prototypes -Wsign-compare" dnl this is a set of options we believe *ALL* gcc versions support: WARN="-W -Wall -Wwrite-strings -pedantic -Wpointer-arith -Wnested-externs -Winline -Wmissing-prototypes" dnl -Wcast-align is a bit too annoying ;-) dnl -Wcast-align is a bit too annoying on all gcc versions ;-) if test "$gccnum" -ge "207"; then dnl gcc 2.7 or later WARN="$WARN -Wmissing-declarations" fi if test "$gccnum" -gt "295"; then dnl only if the compiler is newer than 2.95 since we got lots of dnl "`_POSIX_C_SOURCE' is not defined" in system headers with dnl gcc 2.95.4 on FreeBSD 4.9! WARN="$WARN -Wundef -Wno-long-long -Wsign-compare" fi if test "$gccnum" -ge "296"; then dnl gcc 2.96 or later WARN="$WARN -Wfloat-equal" fi if test "$gccnum" -gt "296"; then dnl this option does not exist in 2.96 Loading @@ -1383,17 +1383,26 @@ AC_DEFUN([CURL_CC_DEBUG_OPTS], fi dnl -Wunreachable-code seems totally unreliable on my gcc 3.3.2 on dnl on i686-Linux as it gives us heaps with false positives dnl on i686-Linux as it gives us heaps with false positives. dnl Also, on gcc 4.0.X it is totally unbearable and complains all dnl over making it unusable for generic purposes. Let's not use it. if test "$gccnum" -ge "303"; then dnl gcc 3.3 and later WARN="$WARN -Wendif-labels -Wstrict-prototypes" fi if test "$gccnum" -ge "304"; then # try these on gcc 3.4 WARN="$WARN -Wdeclaration-after-statement" fi for flag in $CPPFLAGS; do case "$flag" in -I*) dnl include path dnl Include path, provide a -isystem option for the same dir dnl to prevent warnings in those dirs. The -isystem was not very dnl reliable on earlier gcc versions. add=`echo $flag | sed 's/^-I/-isystem /g'` WARN="$WARN $add" ;; Loading @@ -1404,6 +1413,12 @@ AC_DEFUN([CURL_CC_DEBUG_OPTS], CFLAGS="$CFLAGS $WARN" AC_MSG_NOTICE([Added this set of compiler options: $WARN]) else dnl $GCC = yes AC_MSG_NOTICE([Added no extra compiler options]) fi dnl $GCC = yes dnl strip off optimizer flags Loading Loading
ares/acinclude.m4 +81 −66 Original line number Diff line number Diff line Loading @@ -1197,43 +1197,6 @@ dnl end of non-blocking try-compile test ]) dnl TYPE_SOCKADDR_STORAGE dnl ------------------------------------------------- dnl Check for struct sockaddr_storage. Most IPv6-enabled hosts have it, but dnl AIX 4.3 is one known exception. AC_DEFUN([TYPE_SOCKADDR_STORAGE], [ AC_CHECK_TYPE([struct sockaddr_storage], AC_DEFINE(HAVE_STRUCT_SOCKADDR_STORAGE, 1, [if struct sockaddr_storage is defined]), , [ #undef inline #ifdef HAVE_WINDOWS_H #ifndef WIN32_LEAN_AND_MEAN #define WIN32_LEAN_AND_MEAN #endif #include <windows.h> #ifdef HAVE_WINSOCK2_H #include <winsock2.h> #endif #else #ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif #ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> #endif #ifdef HAVE_NETINET_IN_H #include <netinet/in.h> #endif #ifdef HAVE_ARPA_INET_H #include <arpa/inet.h> #endif #endif ]) ]) dnl TYPE_IN_ADDR_T dnl ------------------------------------------------- dnl Check for in_addr_t: it is used to receive the return code of inet_addr() Loading Loading @@ -1316,12 +1279,39 @@ AC_DEFUN([TYPE_IN_ADDR_T], #ifdef HAVE_ARPA_INET_H #include <arpa/inet.h> #endif #endif ]) dnl AC_CHECK_TYPE ]) dnl AC_DEFUN dnl ********************************************************************** dnl CURL_DETECT_ICC ([ACTION-IF-YES]) dnl dnl check if this is the Intel ICC compiler, and if so run the ACTION-IF-YES dnl sets the $ICC variable to "yes" or "no" dnl ********************************************************************** AC_DEFUN([CURL_DETECT_ICC], [ ICC="no" AC_MSG_CHECKING([for icc in use]) if test "$GCC" = "yes"; then dnl check if this is icc acting as gcc in disguise AC_EGREP_CPP([^__INTEL_COMPILER], [__INTEL_COMPILER], dnl action if the text is found, this it has not been replaced by the dnl cpp ICC="no", dnl the text was not found, it was replaced by the cpp ICC="yes" AC_MSG_RESULT([yes]) [$1] ) fi if test "$ICC" = "no"; then # this is not ICC AC_MSG_RESULT([no]) fi ]) dnl We create a function for detecting which compiler we use and then set as dnl pendantic compiler options as possible for that particular compiler. The dnl options are only used for debug-builds. Loading @@ -1332,6 +1322,10 @@ dnl is changed. AC_DEFUN([CURL_CC_DEBUG_OPTS], [ if test "z$ICC" = "z"; then CURL_DETECT_ICC fi if test "$GCC" = "yes"; then dnl figure out gcc version! Loading @@ -1342,40 +1336,46 @@ AC_DEFUN([CURL_CC_DEBUG_OPTS], gccnum=`(expr $num1 "*" 100 + $num2) 2>/dev/null` AC_MSG_RESULT($gccver) AC_MSG_CHECKING([if this is icc in disguise]) AC_EGREP_CPP([^__INTEL_COMPILER], [__INTEL_COMPILER], dnl action if the text is found, this it has not been replaced by the dnl cpp ICC="no" AC_MSG_RESULT([no]), dnl the text was not found, it was replaced by the cpp ICC="yes" AC_MSG_RESULT([yes]) ) if test "$ICC" = "yes"; then dnl this is icc, not gcc. dnl ICC warnings we ignore: dnl * 279 warns on static conditions in while expressions dnl * 269 warns on our "%Od" printf formatters for curl_off_t output: dnl "invalid format string conversion" dnl * 279 warns on static conditions in while expressions dnl * 981 warns on "operands are evaluated in unspecified order" dnl * 1418 "external definition with no prior declaration" dnl * 1419 warns on "external declaration in primary source file" dnl which we know and do on purpose. WARN="-wd279,269" WARN="-wd279,269,981,1418,1419" if test "$gccnum" -gt "600"; then dnl icc 6.0 and older doesn't have the -Wall flag WARN="-Wall $WARN" fi else dnl $ICC = yes dnl WARN="-W -Wall -Wwrite-strings -pedantic -Wno-long-long -Wundef -Wpointer-arith -Wnested-externs -Winline -Wmissing-declarations -Wmissing-prototypes -Wsign-compare" dnl this is a set of options we believe *ALL* gcc versions support: WARN="-W -Wall -Wwrite-strings -pedantic -Wpointer-arith -Wnested-externs -Winline -Wmissing-prototypes" dnl -Wcast-align is a bit too annoying ;-) dnl -Wcast-align is a bit too annoying on all gcc versions ;-) if test "$gccnum" -ge "207"; then dnl gcc 2.7 or later WARN="$WARN -Wmissing-declarations" fi if test "$gccnum" -gt "295"; then dnl only if the compiler is newer than 2.95 since we got lots of dnl "`_POSIX_C_SOURCE' is not defined" in system headers with dnl gcc 2.95.4 on FreeBSD 4.9! WARN="$WARN -Wundef -Wno-long-long -Wsign-compare" fi if test "$gccnum" -ge "296"; then dnl gcc 2.96 or later WARN="$WARN -Wfloat-equal" fi if test "$gccnum" -gt "296"; then dnl this option does not exist in 2.96 Loading @@ -1383,17 +1383,26 @@ AC_DEFUN([CURL_CC_DEBUG_OPTS], fi dnl -Wunreachable-code seems totally unreliable on my gcc 3.3.2 on dnl on i686-Linux as it gives us heaps with false positives dnl on i686-Linux as it gives us heaps with false positives. dnl Also, on gcc 4.0.X it is totally unbearable and complains all dnl over making it unusable for generic purposes. Let's not use it. if test "$gccnum" -ge "303"; then dnl gcc 3.3 and later WARN="$WARN -Wendif-labels -Wstrict-prototypes" fi if test "$gccnum" -ge "304"; then # try these on gcc 3.4 WARN="$WARN -Wdeclaration-after-statement" fi for flag in $CPPFLAGS; do case "$flag" in -I*) dnl include path dnl Include path, provide a -isystem option for the same dir dnl to prevent warnings in those dirs. The -isystem was not very dnl reliable on earlier gcc versions. add=`echo $flag | sed 's/^-I/-isystem /g'` WARN="$WARN $add" ;; Loading @@ -1404,6 +1413,12 @@ AC_DEFUN([CURL_CC_DEBUG_OPTS], CFLAGS="$CFLAGS $WARN" AC_MSG_NOTICE([Added this set of compiler options: $WARN]) else dnl $GCC = yes AC_MSG_NOTICE([Added no extra compiler options]) fi dnl $GCC = yes dnl strip off optimizer flags Loading