Skip to content

Commit

Permalink
fix for bug #811160 - autoconf vs. hp/ux system header files.
Browse files Browse the repository at this point in the history
also applied to release23-maint.

Note that aclocal.m4 can go away when autoconf 2.58 is out.
  • Loading branch information
anthonybaxter committed Sep 27, 2003
1 parent e1b38c4 commit c050119
Show file tree
Hide file tree
Showing 2 changed files with 122 additions and 33 deletions.
57 changes: 57 additions & 0 deletions aclocal.m4
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
# Code swiped wholesale from the GCC project, see
# http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12100

# This file can go away once autoconf 2.58 is out and being used -
# it's reported that this is fixed in the autoconf cvs already.

# AC_LANG_FUNC_LINK_TRY(C)(FUNCTION)
# ----------------------------------
# Don't include <ctype.h> because on OSF/1 3.0 it includes
# <sys/types.h> which includes <sys/select.h> which contains a
# prototype for select. Similarly for bzero.
#
# A similar problem afflicts HP/UX, but it also hits <sys/time.h>
#
# This test used to merely assign f=$1 in main(), but that was
# optimized away by HP unbundled cc A.05.36 for ia64 under +O3,
# presumably on the basis that there's no need to do that store if the
# program is about to exit. Conversely, the AIX linker optimizes an
# unused external declaration that initializes f=$1. So this test
# program has both an external initialization of f, and a use of f in
# main that affects the exit status.
#
m4_define([AC_LANG_FUNC_LINK_TRY(C)],
[AC_LANG_PROGRAM(
[/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $1 (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
#endif
/* Override any gcc2 internal prototype to avoid an error. */
#ifdef __cplusplus
extern "C"
{
#endif
/* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */
char $1 ();
/* The GNU C library defines this for functions which it implements
to always fail with ENOSYS. Some functions are actually named
something starting with __ and the normal name is an alias. */
#if defined (__stub_$1) || defined (__stub___$1)
choke me
#else
char (*f) () = $1;
#endif
#ifdef __cplusplus
}
#endif
], [return f != $1;])])


98 changes: 65 additions & 33 deletions configure
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#! /bin/sh
# From configure.in Revision: 1.435 .
# From configure.in Revision: 1.436 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.57 for python 2.4.
#
Expand Down Expand Up @@ -11361,8 +11361,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char pthread_detach (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -12312,8 +12314,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -12897,8 +12901,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -13112,8 +13118,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -14010,8 +14018,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -14156,8 +14166,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -14309,8 +14321,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -14398,8 +14412,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -14485,8 +14501,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -14609,8 +14627,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -14733,8 +14753,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -15113,8 +15135,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -16478,8 +16502,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char gethostbyname_r (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -16753,8 +16779,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -16846,8 +16874,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char __fpu_control (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down Expand Up @@ -17078,8 +17108,10 @@ cat >>conftest.$ac_ext <<_ACEOF
/* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func (); below.
Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
<limits.h> exists even on freestanding compilers. */
#ifdef __STDC__
<limits.h> exists even on freestanding compilers. Under hpux,
including <limits.h> includes <sys/time.h> and causes problems
checking for functions defined therein. */
#if defined (__STDC__) && !defined (_HPUX_SOURCE)
# include <limits.h>
#else
# include <assert.h>
Expand Down

0 comments on commit c050119

Please sign in to comment.