mirror of
https://github.com/postgres/postgres.git
synced 2025-07-21 16:02:15 +03:00
Allow AIX to use --enable-thread-safety by passing PTHREAD_LIBS to
binary compiles, and adjust configure tests for AIX.
This commit is contained in:
@ -1,5 +1,5 @@
|
|||||||
# Macros to detect C compiler features
|
# Macros to detect C compiler features
|
||||||
# $PostgreSQL: pgsql/config/c-compiler.m4,v 1.13 2004/10/20 02:12:07 neilc Exp $
|
# $PostgreSQL: pgsql/config/c-compiler.m4,v 1.14 2004/12/16 17:48:25 momjian Exp $
|
||||||
|
|
||||||
|
|
||||||
# PGAC_C_SIGNED
|
# PGAC_C_SIGNED
|
||||||
@ -26,20 +26,20 @@ AC_DEFUN([PGAC_TYPE_64BIT_INT],
|
|||||||
define([Ac_cachevar], [translit([pgac_cv_type_$1_64], [ *], [_p])])dnl
|
define([Ac_cachevar], [translit([pgac_cv_type_$1_64], [ *], [_p])])dnl
|
||||||
AC_CACHE_CHECK([whether $1 is 64 bits], [Ac_cachevar],
|
AC_CACHE_CHECK([whether $1 is 64 bits], [Ac_cachevar],
|
||||||
[AC_TRY_RUN(
|
[AC_TRY_RUN(
|
||||||
[typedef $1 int64;
|
[typedef $1 ac_int64;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* These are globals to discourage the compiler from folding all the
|
* These are globals to discourage the compiler from folding all the
|
||||||
* arithmetic tests down to compile-time constants.
|
* arithmetic tests down to compile-time constants.
|
||||||
*/
|
*/
|
||||||
int64 a = 20000001;
|
ac_int64 a = 20000001;
|
||||||
int64 b = 40000005;
|
ac_int64 b = 40000005;
|
||||||
|
|
||||||
int does_int64_work()
|
int does_int64_work()
|
||||||
{
|
{
|
||||||
int64 c,d;
|
ac_int64 c,d;
|
||||||
|
|
||||||
if (sizeof(int64) != 8)
|
if (sizeof(ac_int64) != 8)
|
||||||
return 0; /* definitely not the right size */
|
return 0; /* definitely not the right size */
|
||||||
|
|
||||||
/* Do perfunctory checks to see if 64-bit arithmetic seems to work */
|
/* Do perfunctory checks to see if 64-bit arithmetic seems to work */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Macros that test various C library quirks
|
# Macros that test various C library quirks
|
||||||
# $PostgreSQL: pgsql/config/c-library.m4,v 1.28 2004/10/04 18:14:18 momjian Exp $
|
# $PostgreSQL: pgsql/config/c-library.m4,v 1.29 2004/12/16 17:48:26 momjian Exp $
|
||||||
|
|
||||||
|
|
||||||
# PGAC_VAR_INT_TIMEZONE
|
# PGAC_VAR_INT_TIMEZONE
|
||||||
@ -108,7 +108,12 @@ AC_DEFUN([PGAC_FUNC_STRERROR_R_INT],
|
|||||||
[AC_CACHE_CHECK(whether strerror_r returns int,
|
[AC_CACHE_CHECK(whether strerror_r returns int,
|
||||||
pgac_func_strerror_r_int,
|
pgac_func_strerror_r_int,
|
||||||
[AC_TRY_COMPILE([#include <string.h>],
|
[AC_TRY_COMPILE([#include <string.h>],
|
||||||
[int strerror_r(int, char *, size_t);],
|
[#ifndef _AIX
|
||||||
|
int strerror_r(int, char *, size_t);
|
||||||
|
#else
|
||||||
|
/* Older AIX has 'int' for the third argument so we don't test the args. */
|
||||||
|
int strerror_r();
|
||||||
|
#endif],
|
||||||
[pgac_func_strerror_r_int=yes],
|
[pgac_func_strerror_r_int=yes],
|
||||||
[pgac_func_strerror_r_int=no])])
|
[pgac_func_strerror_r_int=no])])
|
||||||
if test x"$pgac_func_strerror_r_int" = xyes ; then
|
if test x"$pgac_func_strerror_r_int" = xyes ; then
|
||||||
@ -225,18 +230,18 @@ AC_DEFUN([PGAC_FUNC_SNPRINTF_LONG_LONG_INT_FORMAT],
|
|||||||
AC_CACHE_VAL(pgac_cv_snprintf_long_long_int_format,
|
AC_CACHE_VAL(pgac_cv_snprintf_long_long_int_format,
|
||||||
[for pgac_format in '%lld' '%qd' '%I64d'; do
|
[for pgac_format in '%lld' '%qd' '%I64d'; do
|
||||||
AC_TRY_RUN([#include <stdio.h>
|
AC_TRY_RUN([#include <stdio.h>
|
||||||
typedef long long int int64;
|
typedef long long int ac_int64;
|
||||||
#define INT64_FORMAT "$pgac_format"
|
#define INT64_FORMAT "$pgac_format"
|
||||||
|
|
||||||
int64 a = 20000001;
|
ac_int64 a = 20000001;
|
||||||
int64 b = 40000005;
|
ac_int64 b = 40000005;
|
||||||
|
|
||||||
int does_int64_snprintf_work()
|
int does_int64_snprintf_work()
|
||||||
{
|
{
|
||||||
int64 c;
|
ac_int64 c;
|
||||||
char buf[100];
|
char buf[100];
|
||||||
|
|
||||||
if (sizeof(int64) != 8)
|
if (sizeof(ac_int64) != 8)
|
||||||
return 0; /* doesn't look like the right size */
|
return 0; /* doesn't look like the right size */
|
||||||
|
|
||||||
c = a * b;
|
c = a * b;
|
||||||
|
35
configure
vendored
35
configure
vendored
@ -14611,7 +14611,12 @@ else
|
|||||||
int
|
int
|
||||||
main ()
|
main ()
|
||||||
{
|
{
|
||||||
|
#ifndef _AIX
|
||||||
int strerror_r(int, char *, size_t);
|
int strerror_r(int, char *, size_t);
|
||||||
|
#else
|
||||||
|
/* Older AIX has 'int' for the third argument so we don't test the args. */
|
||||||
|
int strerror_r();
|
||||||
|
#endif
|
||||||
;
|
;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -14761,20 +14766,20 @@ else
|
|||||||
cat >conftest.$ac_ext <<_ACEOF
|
cat >conftest.$ac_ext <<_ACEOF
|
||||||
#line $LINENO "configure"
|
#line $LINENO "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
typedef long int int64;
|
typedef long int ac_int64;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* These are globals to discourage the compiler from folding all the
|
* These are globals to discourage the compiler from folding all the
|
||||||
* arithmetic tests down to compile-time constants.
|
* arithmetic tests down to compile-time constants.
|
||||||
*/
|
*/
|
||||||
int64 a = 20000001;
|
ac_int64 a = 20000001;
|
||||||
int64 b = 40000005;
|
ac_int64 b = 40000005;
|
||||||
|
|
||||||
int does_int64_work()
|
int does_int64_work()
|
||||||
{
|
{
|
||||||
int64 c,d;
|
ac_int64 c,d;
|
||||||
|
|
||||||
if (sizeof(int64) != 8)
|
if (sizeof(ac_int64) != 8)
|
||||||
return 0; /* definitely not the right size */
|
return 0; /* definitely not the right size */
|
||||||
|
|
||||||
/* Do perfunctory checks to see if 64-bit arithmetic seems to work */
|
/* Do perfunctory checks to see if 64-bit arithmetic seems to work */
|
||||||
@ -14875,20 +14880,20 @@ else
|
|||||||
cat >conftest.$ac_ext <<_ACEOF
|
cat >conftest.$ac_ext <<_ACEOF
|
||||||
#line $LINENO "configure"
|
#line $LINENO "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
typedef long long int int64;
|
typedef long long int ac_int64;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* These are globals to discourage the compiler from folding all the
|
* These are globals to discourage the compiler from folding all the
|
||||||
* arithmetic tests down to compile-time constants.
|
* arithmetic tests down to compile-time constants.
|
||||||
*/
|
*/
|
||||||
int64 a = 20000001;
|
ac_int64 a = 20000001;
|
||||||
int64 b = 40000005;
|
ac_int64 b = 40000005;
|
||||||
|
|
||||||
int does_int64_work()
|
int does_int64_work()
|
||||||
{
|
{
|
||||||
int64 c,d;
|
ac_int64 c,d;
|
||||||
|
|
||||||
if (sizeof(int64) != 8)
|
if (sizeof(ac_int64) != 8)
|
||||||
return 0; /* definitely not the right size */
|
return 0; /* definitely not the right size */
|
||||||
|
|
||||||
/* Do perfunctory checks to see if 64-bit arithmetic seems to work */
|
/* Do perfunctory checks to see if 64-bit arithmetic seems to work */
|
||||||
@ -15007,18 +15012,18 @@ else
|
|||||||
#line $LINENO "configure"
|
#line $LINENO "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
typedef long long int int64;
|
typedef long long int ac_int64;
|
||||||
#define INT64_FORMAT "$pgac_format"
|
#define INT64_FORMAT "$pgac_format"
|
||||||
|
|
||||||
int64 a = 20000001;
|
ac_int64 a = 20000001;
|
||||||
int64 b = 40000005;
|
ac_int64 b = 40000005;
|
||||||
|
|
||||||
int does_int64_snprintf_work()
|
int does_int64_snprintf_work()
|
||||||
{
|
{
|
||||||
int64 c;
|
ac_int64 c;
|
||||||
char buf[100];
|
char buf[100];
|
||||||
|
|
||||||
if (sizeof(int64) != 8)
|
if (sizeof(ac_int64) != 8)
|
||||||
return 0; /* doesn't look like the right size */
|
return 0; /* doesn't look like the right size */
|
||||||
|
|
||||||
c = a * b;
|
c = a * b;
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# -*-makefile-*-
|
# -*-makefile-*-
|
||||||
# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.205 2004/11/19 00:41:38 tgl Exp $
|
# $PostgreSQL: pgsql/src/Makefile.global.in,v 1.206 2004/12/16 17:48:29 momjian Exp $
|
||||||
|
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
# All PostgreSQL makefiles include this file and use the variables it sets,
|
# All PostgreSQL makefiles include this file and use the variables it sets,
|
||||||
@ -308,6 +308,12 @@ endif
|
|||||||
|
|
||||||
libpq = -L$(libpq_builddir) -lpq
|
libpq = -L$(libpq_builddir) -lpq
|
||||||
|
|
||||||
|
# AIX libraries do not remember their required libs so we have to force
|
||||||
|
# thread dependent libraires in the link
|
||||||
|
ifeq ($(PORTNAME), aix)
|
||||||
|
libpq += $(PTHREAD_LIBS)
|
||||||
|
endif
|
||||||
|
|
||||||
submake-libpq:
|
submake-libpq:
|
||||||
$(MAKE) -C $(libpq_builddir) all
|
$(MAKE) -C $(libpq_builddir) all
|
||||||
|
|
||||||
@ -346,13 +352,13 @@ ifneq ($(CUSTOM_COPT),)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef COPT
|
ifdef COPT
|
||||||
CFLAGS+= $(COPT)
|
CFLAGS += $(COPT)
|
||||||
LDFLAGS+= $(COPT)
|
LDFLAGS += $(COPT)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifdef PROFILE
|
ifdef PROFILE
|
||||||
CFLAGS+= $(PROFILE)
|
CFLAGS += $(PROFILE)
|
||||||
LDFLAGS+= $(PROFILE)
|
LDFLAGS += $(PROFILE)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
@ -33,5 +33,3 @@ sqlmansect = 5sql
|
|||||||
|
|
||||||
# Unixware needs threads for everything that uses libpq
|
# Unixware needs threads for everything that uses libpq
|
||||||
CFLAGS += $(PTHREAD_CFLAGS)
|
CFLAGS += $(PTHREAD_CFLAGS)
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user