I see what you are saying now. libpgport is not a shared library -
because of AIX's funny linking, I had not noticed that before.
You propose making it similar to libpq. By that do you mean breaking it
into 2 separate diretories - backend/libpq & interfaces/libpq - so that
we create the libraries pgport and pgport_srv from different directories
- possibly using the existing backend/port and port?
If you mean something else, let me know so that I might persue that
path.
In the mean time, an AIX specific patch(hack) would be to shove -lpgport
into BE_DLLLIB in Makefile.aix - patch attached.
Thanks
-rocco (desperate to get AIX green on buildfarm)
> -----Original Message-----
> From: Tom Lane [mailto:tgl@sss.pgh.pa.us]
> Sent: Sunday, July 24, 2005 7:34 PM
> To: Rocco Altier
> Cc: Patches (PostgreSQL)
> Subject: Re: [PATCHES] Regression - GNUmakefile - pg_usleep
>
>
> "Rocco Altier" <RoccoA@Routescape.com> writes:
> > This time I actually have the patches :-)
>
> I've applied the parts of this that add -lm to contrib
> modules, but not
> the parts that add -lpgport. That's because libpgport is not built to
> be relocatable, and so including it fails hard on platforms that care:
>
> /usr/ccs/bin/ld +h libtsearch2.sl.0 -b +b
> /home/postgres/testversion/lib dict_ex.o dict.o snmap.o
> stopword.o common.o prs_dcfg.o dict_snowball.o dict_ispell.o
> dict_syn.o wparser.o wparser_def.o ts_cfg.o tsvector.o
> rewrite.o crc32.o query.o gistidx.o tsvector_op.o rank.o
> ts_stat.o snowball/SUBSYS.o ispell/SUBSYS.o
> wordparser/SUBSYS.o -L../../src/port -L/usr/local/lib
> -lpgport -lm `gcc -L../../src/port -Wl,-z -Wl,+b
> -Wl,/home/postgres/testversion/lib -print-libgcc-file-name`
> -o libtsearch2.sl.0
> /usr/ccs/bin/ld: DP relative code in file
> ../../src/port/libpgport.a(exec.o) - shared library must be position
> independent. Use +z or +Z to recompile.
> make: *** [libtsearch2.sl.0] Error 1
>
> We will need to either eliminate the dependencies on libpgport, or
> use the extra-compilation technique used in, eg, libpq.
>
> regards, tom lane
>