Re: AIX compilation problems (was Re: Proposal ...) - Mailing list pgsql-hackers

From Zeugswetter Andreas SB SD
Subject Re: AIX compilation problems (was Re: Proposal ...)
Date
Msg-id 46C15C39FEB2C44BA555E356FBCD6FA4961EA3@m0114.s-mxs.net
Whole thread Raw
In response to AIX compilation problems (was Re: Proposal ...)  (Peter Eisentraut <peter_e@gmx.net>)
Responses Re: AIX compilation problems (was Re: Proposal ...)  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
> > Further research prooved, that the AIX linker eliminates functions on a per
> > c file basis if none of them is referenced elsewhere (declared extern or not).
> > Thus it eliminates the whole conv.c file from the postgres executable since
> > those functions are only used by the conversion shared objects.
>
> Yipes.  Surely there is a linker switch to suppress that behavior?

-brtl , but that does a lot more that we don't want and does not work :-(

I think the best thing to do would be to do the following:

link a postgres.so from all SUBSYS.o's
create postgres.imp from postgres.so (since it is a lib it has all symbols)
link postgres with postgres.imp and the SUBSYS.o's

Currently it does

link postgres
create postgres.imp from postgres
link postgres again using postgres.imp

This is not so good anyways, since it would actually require a cyclic dependency.
A remake currently requires to manually remove postgres and postgres.imp .

Not sure how to do this in the Makefiles however :-(
Should this be done in src/backend/Makefile with a if portname ? I don't like that.
Can sombody help, please ?

Andreas


pgsql-hackers by date:

Previous
From: "scott.marlowe"
Date:
Subject: Re: [GENERAL] Performance while loading data and indexing
Next
From: Bruce Momjian
Date:
Subject: Re: [GENERAL] Performance while loading data and indexing