| From: | "Rocco Altier" <RoccoA(at)Routescape(dot)com> | 
|---|---|
| To: | "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us>, <pgsql-patches(at)postgresql(dot)org> | 
| Subject: | Re: Proposed patch to remove .so pattern rules from platform Makefiles | 
| Date: | 2005-07-25 17:17:08 | 
| Message-ID: | 6E0907A94904D94B99D7F387E08C4F5730ED3D@FALCON.INSIGHT | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-patches | 
The patch works on AIX with one small tweak to Makefile.shlib
(attached).  This is needed because of the clever trick with using % as
name, and when its evaulated for the mkldexport.
Also, it appears that the changes for regress/GNUmakefile are already
applied.
I am able to build everything and pass the regression tests.  This just
leaves the contrib/pgport issue from letting AIX go green on the
buildfarm.
Thanks for getting this simplification done!
-rocco
> -----Original Message-----
> From: pgsql-patches-owner(at)postgresql(dot)org 
> [mailto:pgsql-patches-owner(at)postgresql(dot)org] On Behalf Of Tom Lane
> Sent: Sunday, July 24, 2005 6:00 PM
> To: pgsql-patches(at)postgresql(dot)org
> Subject: [PATCHES] Proposed patch to remove .so pattern rules 
> from platform Makefiles
> 
> 
> I've wanted for a long time to get rid of the pattern rules in the
> port-specific Makefiles that generate shared libraries from single
> object files.  These patterns duplicate (or, more often, fail to
> completely duplicate) the knowledge in Makefile.shlib.  So from
> a maintenance point of view centralizing that knowledge is a good
> thing.
> 
> The stumbling block has been partly that the regression-test makefile
> depended on the pattern rules (easily fixed by using Makefile.shlib)
> and partly that pgxs.mk (and its predecessor 
> contrib-global.mk) depended
> on the pattern rules to handle Makefiles that wanted to build multiple
> .so files.  Since Makefile.shlib is designed to handle only one shlib
> per build, there wasn't any obvious way to fix that.
> 
> The attached proposed patch gets around this by invoking 
> Makefile.shlib
> in a way that produces a pattern rule "lib%.so : %.o".  This is
> moderately ugly but it gets the job done without changing 
> Makefile.shlib
> itself.  Possibly it could be done more cleanly if we were willing
> to introduce pattern rules inside Makefile.shlib.
> 
> I am not sure if the patch works on non-Unix platforms --- 
> could someone
> test on Win32 and Cygwin, in particular?  AIX is weird enough to need
> testing too.
> 
> Any other comments?
> 
> 			regards, tom lane
> 
> 
| Attachment | Content-Type | Size | 
|---|---|---|
| makefile.shlib | application/octet-stream | 873 bytes | 
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Bruce Momjian | 2005-07-25 17:17:44 | Re: psql patch for displaying the username when asking password | 
| Previous Message | Petr Jelinek | 2005-07-25 17:14:44 | Re: per user/database connections limit again |