From 1ac121292590a0678bf3d23f99e4ec8f4f96a477 Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Sun, 27 Jul 2008 03:16:37 +0000 Subject: setup.h handles definition of _REENTRANT based on NEED_REENTRANT definition which might be defined in config.h or config-*.h files --- ares/m4/reentrant.m4 | 17 ++++++----------- ares/setup.h | 8 +++++--- lib/setup.h | 8 +++++--- m4/reentrant.m4 | 17 ++++++----------- src/setup.h | 15 ++++++++++----- 5 files changed, 32 insertions(+), 33 deletions(-) diff --git a/ares/m4/reentrant.m4 b/ares/m4/reentrant.m4 index 5b0e89aba..544987e8e 100644 --- a/ares/m4/reentrant.m4 +++ b/ares/m4/reentrant.m4 @@ -310,7 +310,7 @@ dnl CARES_CHECK_NEED_REENTRANT_FUNCTIONS_R dnl ------------------------------------------------- dnl Checks if the preprocessor _REENTRANT definition dnl makes several _r functions compiler visible. -dnl Internal macro for CONFIGURE_REENTRANT. +dnl Internal macro for CARES_CONFIGURE_REENTRANT. AC_DEFUN([CARES_CHECK_NEED_REENTRANT_FUNCTIONS_R], [ # @@ -351,23 +351,18 @@ dnl ------------------------------------------------- dnl This macro ensures that configuration tests done dnl after this will execute with preprocessor symbol dnl _REENTRANT defined. This macro also ensures that -dnl the generated config file will equally define it. -dnl Internal macro for CONFIGURE_REENTRANT. +dnl the generated config file defines NEED_REENTRANT +dnl and that in turn setup.h will define _REENTRANT. +dnl Internal macro for CARES_CONFIGURE_REENTRANT. AC_DEFUN([CARES_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT], [ -AH_VERBATIM([NEED_REENTRANT], -[/* Configure process defines NEED_REENTRANT to 1 when it finds out that */ -/* _REENTRANT is required or already defined for proper configuration. */ -@%:@undef NEED_REENTRANT -@%:@if defined(NEED_REENTRANT) && !defined(_REENTRANT) -@%:@ define _REENTRANT -@%:@endif]) +AC_DEFINE(NEED_REENTRANT, 1, + [Define to 1 if _REENTRANT preprocessor symbol must be defined.]) cat >>confdefs.h <<_ACEOF [@%:@ifndef _REENTRANT @%:@ define _REENTRANT @%:@endif] _ACEOF -AC_DEFINE(NEED_REENTRANT, 1, []) ]) diff --git a/ares/setup.h b/ares/setup.h index 594042836..dd07ae184 100644 --- a/ares/setup.h +++ b/ares/setup.h @@ -40,13 +40,15 @@ #endif /* HAVE_CONFIG_H */ /* - * Solaris needs _REENTRANT set for a few function prototypes and + * HP-UX needs _REENTRANT set for a few function prototypes and * things to appear in the system header files. Unixware needs it * to build proper reentrant code. Others may also need it. */ -#ifndef _REENTRANT -# define _REENTRANT +#ifdef NEED_REENTRANT +# ifndef _REENTRANT +# define _REENTRANT +# endif #endif /* diff --git a/lib/setup.h b/lib/setup.h index 1b5c6782c..35ff052e8 100644 --- a/lib/setup.h +++ b/lib/setup.h @@ -73,13 +73,15 @@ #endif /* HAVE_CONFIG_H */ /* - * Solaris needs _REENTRANT set for a few function prototypes and + * HP-UX needs _REENTRANT set for a few function prototypes and * things to appear in the system header files. Unixware needs it * to build proper reentrant code. Others may also need it. */ -#ifndef _REENTRANT -# define _REENTRANT +#ifdef NEED_REENTRANT +# ifndef _REENTRANT +# define _REENTRANT +# endif #endif /* diff --git a/m4/reentrant.m4 b/m4/reentrant.m4 index 37a3923d3..61267c411 100644 --- a/m4/reentrant.m4 +++ b/m4/reentrant.m4 @@ -332,7 +332,7 @@ dnl CURL_CHECK_NEED_REENTRANT_FUNCTIONS_R dnl ------------------------------------------------- dnl Checks if the preprocessor _REENTRANT definition dnl makes several _r functions compiler visible. -dnl Internal macro for CONFIGURE_REENTRANT. +dnl Internal macro for CURL_CONFIGURE_REENTRANT. AC_DEFUN([CURL_CHECK_NEED_REENTRANT_FUNCTIONS_R], [ # @@ -373,23 +373,18 @@ dnl ------------------------------------------------- dnl This macro ensures that configuration tests done dnl after this will execute with preprocessor symbol dnl _REENTRANT defined. This macro also ensures that -dnl the generated config file will equally define it. -dnl Internal macro for CONFIGURE_REENTRANT. +dnl the generated config file defines NEED_REENTRANT +dnl and that in turn setup.h will define _REENTRANT. +dnl Internal macro for CURL_CONFIGURE_REENTRANT. AC_DEFUN([CURL_CONFIGURE_FROM_NOW_ON_WITH_REENTRANT], [ -AH_VERBATIM([NEED_REENTRANT], -[/* Configure process defines NEED_REENTRANT to 1 when it finds out that */ -/* _REENTRANT is required or already defined for proper configuration. */ -@%:@undef NEED_REENTRANT -@%:@if defined(NEED_REENTRANT) && !defined(_REENTRANT) -@%:@ define _REENTRANT -@%:@endif]) +AC_DEFINE(NEED_REENTRANT, 1, + [Define to 1 if _REENTRANT preprocessor symbol must be defined.]) cat >>confdefs.h <<_ACEOF [@%:@ifndef _REENTRANT @%:@ define _REENTRANT @%:@endif] _ACEOF -AC_DEFINE(NEED_REENTRANT, 1, []) ]) diff --git a/src/setup.h b/src/setup.h index b6a30b957..4d2e2d106 100644 --- a/src/setup.h +++ b/src/setup.h @@ -72,11 +72,16 @@ #endif /* HAVE_CONFIG_H */ -#if defined(CURLDEBUG) && defined(CURLTOOLDEBUG) -/* This is an ugly hack for CURLDEBUG conditions only. We need to include - the file here, since it might set the _FILE_OFFSET_BITS define, which must - be set BEFORE all normal system headers. */ -#include "../lib/setup.h" +/* + * HP-UX needs _REENTRANT set for a few function prototypes and + * things to appear in the system header files. Unixware needs it + * to build proper reentrant code. Others may also need it. + */ + +#ifdef NEED_REENTRANT +# ifndef _REENTRANT +# define _REENTRANT +# endif #endif /* -- cgit v1.2.3