Re: Should contrib modules install .h files? - Mailing list pgsql-hackers

From Andrew Gierth
Subject Re: Should contrib modules install .h files?
Date
Msg-id 871sbgaa18.fsf@news-spur.riddles.org.uk
Whole thread Raw
In response to Re: Should contrib modules install .h files?  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers
>>>>> "Andres" == Andres Freund <andres@anarazel.de> writes:

 Tom> There's also a question of whether we need to change anything in
 Tom> contrib/ so that it plays by whatever rules we set.  There's an
 Tom> expectation that contrib modules should be buildable with PGXS,
 Tom> so they need to follow the rules.

 Andrew> ... that at least all of the *_plperl transform modules in
 Andrew> contrib/ fail to build with USE_PGXS already (i.e. for as long
 Andrew> as they have ever existed), because they rely on
 Andrew> plperl_helpers.h which is never installed anywhere, and trying
 Andrew> to get it via $(top_srcdir) obviously can't work in PGXS.

 Andrew> Haven't tried the python ones yet.

 >> And none of the plpython transforms can even parse their makefiles
 >> with USE_PGXS, let alone build, because they have an "include"
 >> directive pointing into src/pl/plpython.

 Andres> FWIW, I'd be perfectly on board with just burying this policy.
 Andres> Designating one contrib module (or something in
 Andres> src/test/examples or such) as a PGXS example, and always
 Andres> building it with pgxs seems like it'd do a much better job than
 Andres> the current policy.

I suggest that modules that actually _can't_ build with PGXS should have
the PGXS logic removed from their makefiles (perhaps replaced with an
error). But for the rest, it's a convenience to be able to build single
modules using USE_PGXS without having to configure the whole source tree.

-- 
Andrew (irc:RhodiumToad)


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Should contrib modules install .h files?
Next
From: Michael Paquier
Date:
Subject: Re: BUG #15182: Canceling authentication due to timeout aka Denialof Service Attack