Unix Technical Forum

Re: Regression - GNUmakefile - pg_usleep

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, ...


Go Back   Unix Technical Forum > Database Server Software > PostgreSQL > Pgsql Patches

FAQ Members List Calendar Search Today's Posts Mark Forums Read
  #1 (permalink)  
Old 04-17-2008, 11:43 PM
Rocco Altier
 
Posts: n/a
Default Re: Regression - GNUmakefile - pg_usleep



> -----Original Message-----
> From: pgsql-patches-owner@postgresql.org
> [mailtogsql-patches-owner@postgresql.org] On Behalf Of Tom Lane
> 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

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
  #2 (permalink)  
Old 04-17-2008, 11:43 PM
Tom Lane
 
Posts: n/a
Default Re: Regression - GNUmakefile - pg_usleep

"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

Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On
Forum Jump


All times are GMT. The time now is 11:40 AM.


Powered by vBulletin® Version 3.6.5
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.2.0
www.UnixAdminTalk.com