]> granicus.if.org Git - postgresql/commitdiff
The following patch updates the FAQ_AIX and makes C++ code work with
authorBruce Momjian <bruce@momjian.us>
Tue, 27 Mar 2001 14:56:20 +0000 (14:56 +0000)
committerBruce Momjian <bruce@momjian.us>
Tue, 27 Mar 2001 14:56:20 +0000 (14:56 +0000)
more recent versions of the IBM C++ compiler (now called VisualAge C++).
The C++ part was previously broken (g++ and xlC), thus this is zero risk.
Only AIX specific parts are touched (1 Makefile.shlib line (link with $(COMPILER
) instead
of $(CC) and one shell script line (parameter -C to nm to not demangle C++ symbo
ls for
.exp file)).

I thus ask you to please apply this patch before release.

With or without this patch RC1 on AIX 4.3.2 RS6000 passes "gmake check" for both
 the native
compiler vac.C 5.0.1 and gcc 2.95.2 :-)

Andreas

doc/FAQ_AIX
src/Makefile.shlib
src/backend/port/aix/mkldexport.sh

index fef5f9255f4a44bca5ed997dd4b621af2bd062ea..7184987c63e71855d0d61f05b7204f157b54947c 100644 (file)
@@ -1,18 +1,27 @@
 From: Zeugswetter Andreas <ZeugswetterA@wien.spardat.at>
-Wed Nov  8 11:16:35 MEZ 2000
+Tue Mar 27 10:47:31 MSZ 2001
 
-AIX 4.3.2 with native IBM compiler xlc 3.6.4 passes all regression tests.
-Other versions of OS and compiler should also work. If you don't have 
-a powerpc there might be differences in the geometry regression test.
+On AIX 4.3.2 PostgreSQL compiled with the native IBM compiler xlc 
+(vac.C 5.0.1) passes all regression tests.
+Other versions of OS and compiler should also work. If you don't have a 
+powerpc or use gcc you might see rounding differences in the geometry
+regression test.
 
 Use the following configure flags in addition to your own
 if you have readline or libz there:
 --with-includes=/usr/local/include --with-libraries=/usr/local/lib
 
-libpq++ does not work because xlC does not have the string and bool classes.
-compiling the few files, that fail, with g++ does work.
-
-Compiling PostgreSQL with gcc (2.95.2) on AIX also works.
+If you need libpq++ and have trouble --with-CXX=xlC make sure you have
+installed the appropriate C++ include files and use a C++ version that
+supports the string class (e.g. VisualAge C++ filesets vacpp.cmp.batch 5.0
+and vacpp.cmp.include 5.0).
 
 There will probably be warnings about int8 - int64 redefines, 0.0/0.0
 division and duplicate symbol warnings which you can safely ignore.
+
+Compiling PostgreSQL with gcc (2.95.2) on AIX also works.
+Use the configure flags: --with-CC=gcc
+
+Since the mktime() function does not work on AIX for dates before
+1970, all localtime formatted datetimes will not use summer time for
+dates before 1970.
index afbd2b3e85fddb76f8ad7331079629b90d2b3f59..5d920bff06ee0b9510e0c3f7b586eadd6323ee4d 100644 (file)
@@ -6,7 +6,7 @@
 # Copyright (c) 1998, Regents of the University of California
 #
 # IDENTIFICATION
-#    $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.48 2001/03/14 19:35:11 tgl Exp $
+#    $Header: /cvsroot/pgsql/src/Makefile.shlib,v 1.49 2001/03/27 14:56:20 momjian Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -291,7 +291,7 @@ else # PORTNAME == aix
 # AIX case
 $(shlib): lib$(NAME).a
        $(MKLDEXPORT) lib$(NAME).a > lib$(NAME)$(EXPSUFF)
-       $(CC) -Wl,-H512 -Wl,-bM:SRE -Wl,-bI:$(top_builddir)/src/backend/$(POSTGRES_IMP) -Wl,-bE:lib$(NAME)$(EXPSUFF) -o $@ $< $(LDFLAGS) $(SHLIB_LINK)
+       $(COMPILER) -Wl,-H512 -Wl,-bM:SRE -Wl,-bI:$(top_builddir)/src/backend/$(POSTGRES_IMP) -Wl,-bE:lib$(NAME)$(EXPSUFF) -o $@ $< $(LDFLAGS) $(SHLIB_LINK)
 
 endif # PORTNAME == aix
 
index 4e6c98541defb92c1f0640a20be4fb01e44c30a0..ccf09887393bc9126192fa8bf1e7bfd4bbfb8fe3 100755 (executable)
@@ -50,7 +50,7 @@ else
                echo '#!' $2/$OBJNAME
        fi
 fi
-$NM -Bg $1 | \
+$NM -BCg $1 | \
        egrep ' [TDB] ' | \
        sed -e 's/.* //' | \
        egrep -v '\$' | \