This is a discussion on Re: Regression - GNUmakefile - pg_usleep within the Pgsql Patches forums, part of the PostgreSQL category; --> > -----Original Message----- > From: pgsql-patches-owner@postgresql.org > [mailto gsql-patches-owner@postgresql.org] On Behalf Of Tom Lane > Sent: Sunday, July 24, ...
| |||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| > -----Original Message----- > From: pgsql-patches-owner@postgresql.org > [mailto > Sent: Sunday, July 24, 2005 10:47 AM > To: Rocco Altier > Cc: Patches (PostgreSQL) > Subject: Re: [PATCHES] Regression - GNUmakefile - pg_usleep > > > "Rocco Altier" <RoccoA@Routescape.com> writes: > > Attached patch fixes the SHLIB_LINK to add pgport now that > pg_usleep is > > added. > > It seems highly unlikely that this will accomplish anything, > given that > SHLIB_LINK is not used to construct regress.so. > I have another patch in queue for this. > > This is needed for AIX to resolve symbols at compile time. > > I'm still wondering why that platform has such a hard time finding > symbols that are in the backend. > Right now there are 2 different sets of linker rules. One for a single file -> .so (from Makefile.aix), and another for multiple files -> lib<files>.so (from Makefile.shlib). The patch I proposed to Makefile.shlib to pull all $LIBS in was rejected since this would cause libpq to link against backend libraries, etc. The suggested solution was to only pull in libraries as needed (which is what is happening here, since pgport would be required). I think the 2 sets of link rules should be more similar, since the contrib moudules should get the same link option, instead of based on how many files need to be linked together, thus Makefile.aix should be changed to use SHLIB_LINK. I am attaching all the patches for so for AIX to let it get past Contrib on the buildfarm. Makefile.aix.patch - will bring Makefile.aix in line with Makefile.shlib by using SHLIB_LINK contrib.libs.patch - will pull in the needed libraries for contrib modules regress.pgport.patch - same idea as contrib patch, pull in the needed library I hope this makes it a bit clearer what I am trying to achieve by having all the pieces together in one place. Thanks, -rocco PS. I am starting to look at using the facilities in AIX to support run time linked libraries instead of at compile time. This does require AIX 4.2+, so I will try to leave the 4.1 code in place. ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to majordomo@postgresql.org so that your message can get through to the mailing list cleanly |
| ||||
| "Rocco Altier" <RoccoA@Routescape.com> writes: >> It seems highly unlikely that this will accomplish anything, >> given that SHLIB_LINK is not used to construct regress.so. >> > I have another patch in queue for this. Oh, I see, you want to use SHLIB_LINK in the %$(DLSUFFIX): %.o rule. > Right now there are 2 different sets of linker rules. One for a single > file -> .so (from Makefile.aix), and another for multiple files -> > lib<files>.so (from Makefile.shlib). Actually, that's not the reason it's like this, at all. The percent-rules in the per-platform Makefiles are a hangover from long before we had Makefile.shlib, and most of them pretty well suck. As noted in Makefile.hpux, # Rule for building shared libs (currently used only for regression test # shlib ... should go away, since this is not really enough knowledge) As far as I can see, src/test/regress/GNUmakefile is the only place still depending on those rules. I've wanted for quite some time to change the regression makefile to use Makefile.shlib to build regress.so, whereupon we could get rid of the percent-rules in the per-platform Makefiles entirely. Maybe it's time to have a go at that. regards, tom lane ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend |
| Thread Tools | |
| Display Modes | |
|
|