Re: static libpq (and other libraries) overwritten on aix
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Noah Misch <noah@leadboat.com>
Cc: pgsql-hackers@postgresql.org, robertmhaas@gmail.com
Date: 2022-08-20T17:42:13Z
Lists: pgsql-hackers
Attachments
Hi, On 2022-08-20 01:35:22 -0700, Andres Freund wrote: > I'll send in a patch series tomorrow, too tired for today. Here it goes. 0001 aix: Fix SHLIB_EXPORTS reference in VPATH builds That's mostly so I could even build. It's not quite right in the sense that we don't depend on the file, but that's a preexisting issue. Could be folded in with 0005, which fixes that aspect. Or it could be backpatched as the minimal fix. 0002 Remove SUBSYS.o rule in common.mk, hasn't been used in a long time 0003 Remove rule to generate postgres.o, not needed for 20+ years Both obvious, I think. 0004 aix: when building with gcc, tell gcc we're building a shared library That's the gcc -shared issue I explained in the email I'm replying to. We should probably consider building executables with -shared-libgcc too, that shrinks them a decent amount (e.g. 1371684 -> 1126765 for psql). But I've not done that here. 0005 aix: No need to use mkldexport when we want to export all symbols This makes the building of shared libraries a lot more similar to other platforms. Export files are only used when an exports.txt is present and there's no more intermediary static libraries. 0006 configure: Expand -fvisibility checks to more compilers, add -qvisibility This isn't strictly speaking part of the same "thread" of work, but I don't want to touch aix more often than I have too... I'll post it in the other thread too. I did just test that this passes at least some tests on aix with xlc and solaris with sunpro. Greetings, Andres
Commits
-
configure: Expand -fvisibility checks to more compilers, test for -qvisibility
- be7c15b194ab 16.0 landed
-
aix: No need to use mkldexport when we want to export all symbols
- fe6a64a58ab3 16.0 landed
-
aix: when building with gcc, tell gcc we're building a shared library
- e5484554ba90 16.0 landed
-
aix: Fix SHLIB_EXPORTS reference in VPATH builds
- 4444317f370c 16.0 landed
-
Remove SUBSYS.o rule in common.mk, hasn't been used in a long time
- 05bf551040ba 16.0 landed
-
Remove rule to generate postgres.o, not needed for 20+ years
- 68fc18d14c7e 16.0 landed
-
Make the AIX case of Makefile.shlib safe for parallel make.
- e8564ef03433 9.6.0 cited