Re: pgxs: build infrastructure for extensions v4 - Mailing list pgsql-patches
From | Bruce Momjian |
---|---|
Subject | Re: pgxs: build infrastructure for extensions v4 |
Date | |
Msg-id | 200407301641.i6UGfPt25404@candle.pha.pa.us Whole thread Raw |
In response to | pgxs: build infrastructure for extensions v4 (Fabien COELHO <coelho@cri.ensmp.fr>) |
List | pgsql-patches |
Applied by Peter. --------------------------------------------------------------------------- Fabien COELHO wrote: > > Dear patchers, > > > Please find attached another new version of a patch which provides a > working infrastructure for pg extensions. I hope it addresses all of > Peter's comments. I'll be away for the next 3 weeks, so if minor changes > are required it would be best if you could proceed without me... > > The infrastructure is a simple reworking of the already available internal > infrastructure for contrib, so that it can be used outside of the > postgresql source tree after installation, without gory details being in > sight of the user. The documentation is added as a new section in > "xfunc.sgml". > > I updated all contrib makefiles so that they can be used either the > standard way after a configure, or the new way without needing a configure > but with an already installed postgreSQL. Just try them with > > "cd contrib/foo ; make USE_PGXS=1 install" > > *AFTER* postgresql has been configure, compiled and installed. It should > be compiled and installed wrt to the first "pg_config" which is found in > the path. > > > How it works: > > - necessary files (includes, scripts, makefiles...) are copied under > $(pkglibdir)/pgxs on the initial "make install". > > due to gnu-make restriction on how its includes work, these files must > be copied with the *same* directory structure as the pg source tree. > The fact does not appear at all in the actual infrastructure from the > user point of view, but it explains why subdirectories are necessary > under pgxs, if you care to have a look. > > - the makefile of any extension is expected to set macro PGXS to > "pg_config --pgxs", to include a special makefile, and to > set some macros depending on what is to be built, just like in > current contrib. > > - I've added two PGXS-triggered conditionnals in Makefile.global, > so that includes and libraries are taken where needed. > > > Notes: > > - there is still a "light-install" target that matches the previous > "install" behavior, as new "install" matches previous "server-install". > > - I'm not sure the sgml is ok. It looks ok, but is it enough. > > - It validates and works for me. > > > Have a nice day, > > -- > Fabien Coelho - coelho@cri.ensmp.fr Content-Description: [ Attachment, skipping... ] > > ---------------------------(end of broadcast)--------------------------- > TIP 5: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faqs/FAQ.html -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
pgsql-patches by date: