Commit Graph

111 Commits

Author SHA1 Message Date
Yang Tse 3ae470eedf Fix preprocessor conditional expression 2009-05-15 01:08:17 +00:00
Yang Tse cfda3e6a48 Moved *_CHECK_COMPILER_HALT_ON_ERROR and *_CHECK_COMPILER_ARRAY_SIZE_NEGATIVE to *-compilers.m4 along with other *_CHECK_COMPILER_* 2009-05-07 11:06:48 +00:00
Yang Tse 4dbc7850bd HP-UX's X/Open network library requirement check follow-up 2009-05-03 19:41:12 +00:00
Yang Tse 9b4253fe67 HP-UX's X/Open network library requirement check follow-up 2009-05-03 17:35:44 +00:00
Yang Tse 80186aa7f4 Use build-time configured ares_socklen_t instead of socklen_t 2009-05-02 02:36:47 +00:00
Yang Tse 8469db016d Check definition of _XOPEN_SOURCE_EXTENDED with the compiler 2009-05-01 02:03:42 +00:00
Yang Tse 63dc2a843f Remove temporary debug tracing for ares_socklen_t Windows targets 2009-04-29 18:08:23 +00:00
Yang Tse e4a0001fc6 Add temporary debug tracing for ares_socklen_t Windows targets 2009-04-29 11:11:59 +00:00
Yang Tse 1a2b88964f Initial step towards a configure time ares_socklen_t definition 2009-04-28 16:47:33 +00:00
Yang Tse 9770899a4b Moved potential inclusion of system's malloc.h and memory.h header files to
setup_once.h.  Inclusion of each header file is based on the definition of
NEED_MALLOC_H and NEED_MEMORY_H respectively.
2009-04-21 10:26:58 +00:00
Yang Tse 17d2a464ad Refactor configure script detection of functions used to set sockets into
non-blocking mode, and decouple function detection from function capability.
2008-11-13 18:56:55 +00:00
Yang Tse 0abaf22467 #include <stdlib.h> for exit() prototype 2008-10-23 00:38:23 +00:00
Yang Tse 2245ac2f88 Initial attempt to support configure's --(dis|en)able-warnings
option to specify dis(activation) of picky compiler warnings.

If option is specified, it will be honored independant of the
--(dis|en)able-debug option.

If option is not specified, it will follow --(dis|en)able-debug
setting, whose default is disabled if not specified.
2008-10-02 03:56:55 +00:00
Yang Tse 4aee6822ca now compiler warnings are activated for all gcc builds, not only debug ones. 2008-09-30 12:39:54 +00:00
Yang Tse a8323cc3f5 icc adjustments 2008-09-18 13:56:56 +00:00
Yang Tse 0c1ae21c11 improve detection of getservbyport_r() 2008-09-17 11:31:37 +00:00
Yang Tse 3072c5b8a1 icc adjustments 2008-09-09 12:19:16 +00:00
Yang Tse f9894f4ebc Don't abort configuration if recvfrom() is not available. 2008-08-27 00:25:02 +00:00
Yang Tse 4594187732 Improve CURL_CHECK_DEF 2008-08-09 17:26:24 +00:00
Yang Tse b4fdccf87a 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.
2008-08-04 06:48:11 +00:00
Yang Tse a3498f96ef Reinstate the 'aclocal -I m4' in buildconf and 'ACLOCAL_AMFLAGS = -I m4' way of
including our local m4/reentrant.m4 file. This even takes care of including the
file in the distribution tarball.
2008-07-30 03:10:03 +00:00
Yang Tse 52d9a3c34f Tests done using 'aclocal -I m4' in buildconf and 'ACLOCAL_AMFLAGS = -I m4
in top Makefile.am triggered a problem that prevented aclocal from running
successfully on SunOS 5.10 with GNU m4 1.4.5 and GNU Autoconf 2.61

A tarball which reproduces mentioned problem is the one dated July-28-2008
http://cool.haxx.se/curl-daily/curl-7.19.0-20080728.tar.gz

We actually don't need all the bells and whistles that the above mechanism
provides. We only need to include our m4/reentrant.m4 file in acinclude.m4
so here we go with this simpler mechanism.
2008-07-29 02:26:21 +00:00
Yang Tse 9b0110f50c Assert that SED and GREP are set 2008-07-27 21:47:22 +00:00
Yang Tse 8a323f8354 Another step towards detecting if _REENTRANT is already defined or actually
needed, and being able to define it if appropriate for further configure tests
as well as for the generated config file.

Introduced reentrant.m4 intended for our reentrant related autotools/m4 macros.
2008-07-24 15:20:35 +00:00
Yang Tse f14e020370 reorder argument number detection for getservbyport_r to
actually verify if the test is properly working
2008-07-23 04:20:39 +00:00
Yang Tse 1bc490077a Make sure that configure process tests are done with the same _REENTRANT
setting as the one actually used when finally building the library.
2008-07-22 19:04:16 +00:00
Yang Tse 2066d60b16 use prototypes to improve getservbyport_r detection 2008-07-21 14:01:46 +00:00
Yang Tse bffe69a151 when recvfrom prototype uses a void pointer for arguments 2, 5 or 6 this will
now cause the definition of RECVFROM_TYPE_ARG2_IS_VOID, RECVFROM_TYPE_ARG5_IS_VOID
or RECVFROM_TYPE_ARG6_IS_VOID, as appropriate.
2008-07-21 00:36:55 +00:00
Yang Tse 184229b1e5 Added "pointer to void" as another data type to check for the sixth argument of
function recvfrom as a result of the info additionally logged when running on a
Solaris system.

The compiler error showed that the prototype being used on Solaris was the one
declared in line 427 of "/usr/include/sys/socket.h" as:

function(int,
         pointer to void,
         unsigned int,
         int,
         pointer to struct sockaddr,
         pointer to void) returning int
2008-07-20 09:46:52 +00:00
Yang Tse 39f23aec6b RECVFROM_TYPE_ARG2, RECVFROM_TYPE_ARG5 and RECVFROM_TYPE_ARG6 are now defined
to the data type pointed by its respective argument and not the pointer type.
2008-07-17 03:07:54 +00:00
Yang Tse a9dc900515 Configure process now checks availability of recvfrom() socket function and
finds out its return type and the types of its arguments. Added definitions
for non-configure systems config files, and introduced macro sreadfrom which
will be used on udp sockets as a recvfrom() wrapper.
2008-07-16 19:16:41 +00:00
Yang Tse 2cfb8a2bf0 Improved configure detection of number of arguments for getservbyport_r 2008-07-16 12:26:09 +00:00
Yang Tse 97333deb3f fallback to gettimeofday when monotonic clock is unavailable at run-time 2008-07-02 03:04:56 +00:00
Yang Tse 72b4b3c7f8 make check message wording more precise 2008-06-30 14:10:27 +00:00
Yang Tse e6c23672b2 fix C style comment 2008-06-29 11:08:52 +00:00
Yang Tse 1058e5fdde John Lightsey filed bug report #1999181: "CLOCK_MONOTONIC always fails on
some systems" (http://curl.haxx.se/bug/view.cgi?id=1999181). The problem was
that the configure script did not use the _POSIX_MONOTONIC_CLOCK feature test
macro when checking monotonic clock availability. This is now fixed and the
monotonic clock will not be used unless the feature test macro is defined
with a value greater than zero indicating always supported.
2008-06-29 03:19:20 +00:00
Yang Tse 2c61e9c76a Modified configuration script to actually verify if the compiler is good
enough at detecting compilation errors or at least it has been properly
configured to do so. Configuration heavily depends on this capability, so
if this compiler sanity check fails the configuration process will now fail.
2008-06-20 18:09:48 +00:00
Yang Tse 24d41452b0 No longer break out of a shell "for" statement from inside
AC_FOO_IFELSE macros, otherwise temp files are not removed.

Identation adjustment.
2008-06-18 04:39:29 +00:00
Yang Tse b39d1e9b9d MSVC does build Windows native targets 2008-06-06 18:44:39 +00:00
Yang Tse abe2e6ecf7 fix: [action-if-found] part of AC_CHECK_TYPE macro cannot be quoted when empty 2008-05-21 18:24:09 +00:00
Yang Tse d8efc99217 fix: remove need and definition of HAVE_SOCKLEN_T symbol 2008-05-21 14:04:14 +00:00
Yang Tse 0163b5b8be fix: socklen_t definition comment 2008-05-21 13:57:50 +00:00
Yang Tse 8ad1928d93 update several macros using AC_TRY_LINK with AC_LINK_IFELSE 2008-05-20 15:55:31 +00:00
Yang Tse 862049c490 fix underquoting of AC_LANG_PROGRAM arguments 2008-05-20 04:23:30 +00:00
Yang Tse d70f33748c update several macros using AC_TRY_LINK with AC_LINK_IFELSE 2008-05-20 01:03:45 +00:00
Yang Tse 8fc2f8ef62 fix socklen_t equivalent detection when cross compiling Windows target 2008-05-19 12:31:11 +00:00
Yang Tse 2748c64d60 Improve toolchain detection for WinCE cross compilation:
When cross compiling WinCE with the arm-wince-cegcc-gcc C compiler
symbol __CEGCC__ is defined and the unix-like compatibility layer
is used. For our purposes this is not a native Windows build.

When cross compiling WinCE with the arm-wince-mingw32ce-gcc C compiler
symbol __MINGW32CE__ is defined and the unix-like compatibility layer
is not used. For our purposes this _is_ a native Windows build.
2008-05-14 19:42:17 +00:00
Yang Tse 5e06ec8409 skip checks for Windows specific header files
when build target is not a native Windows one
2008-05-14 16:14:35 +00:00
Yang Tse 04d0a84ae5 WinCE cross compilation adjustments:
HAVE_WINSOCK2_H shall not be defined.
HAVE_WS2TCPIP_H shall not be defined.
2008-05-14 13:54:36 +00:00
Yang Tse ed80eb5b0f configure script will now define HAVE_CLOCK_GETTIME_MONOTONIC symbol only
when function clock_gettime() is available and the monotonic timer is
also available. Otherwise, in some cases, librt or libposix4 could be used
for linking even when finally not using the clock_gettime() function due
to lack of the monotonic clock.
2008-05-12 02:04:21 +00:00