Обсуждение: Re: [HACKERS] Unclarity of configure options
Nikolay Samokhvalov wrote:
> The current (CVS version) configure script has the following options
> (among many others):
>
> --enable-dtrace build with DTrace support
> --with-ossp-uuid build with OSSP UUID library for UUID generation
> --with-libxml build with XML support
> --with-libxslt build with XSLT support
>
> One could think that adding any of this option to ./configure before
> building Postgres from sources, he will have corresponding support
> after installation and initdb process. But what we have now is the
> huge difference between "--with-libxml" and "--with-libxslt": while
> the first one adds XML support to the core, the second one doesn't
> provide anything automatically, it allows only using contirb/xml2
> (what is unclear because the help message is the same as for
> --with-libxml -- "build with ... support").
I have modified the configure message to be:
--with-libxslt build /contrib/xml2 with XSLT support
Patch attached.
> Also, comparing --enable-dtrace and --with-libxml I cannot see any
> difference in its semantics: --enable-dtrace also depends on external
> library and configure process fails if the system doesn't have it. So
> why "--enable-" is used in the first case and "--with-" in the second
> one?
I think the reason for this is because XML is seen as something added to
the backend (new capability) while dtrace is embedded in the backend.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://postgres.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
Index: configure
===================================================================
RCS file: /cvsroot/pgsql/configure,v
retrieving revision 1.566
diff -c -c -r1.566 configure
*** configure 29 Oct 2007 11:25:42 -0000 1.566
--- configure 4 Nov 2007 17:52:55 -0000
***************
*** 898,904 ****
--with-libedit-preferred prefer BSD Libedit over GNU Readline
--with-ossp-uuid build with OSSP UUID library for UUID generation
--with-libxml build with XML support
! --with-libxslt build with XSLT support
--with-system-tzdata=DIR use system time zone data in DIR
--without-zlib do not use Zlib
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
--- 898,904 ----
--with-libedit-preferred prefer BSD Libedit over GNU Readline
--with-ossp-uuid build with OSSP UUID library for UUID generation
--with-libxml build with XML support
! --with-libxslt build /contrib/xml2 with XSLT support
--with-system-tzdata=DIR use system time zone data in DIR
--without-zlib do not use Zlib
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
Index: configure.in
===================================================================
RCS file: /cvsroot/pgsql/configure.in,v
retrieving revision 1.532
diff -c -c -r1.532 configure.in
*** configure.in 29 Oct 2007 11:25:42 -0000 1.532
--- configure.in 4 Nov 2007 17:52:55 -0000
***************
*** 600,607 ****
#
# XSLT
#
! PGAC_ARG_BOOL(with, libxslt, no, [ --with-libxslt build with XSLT support],
! [AC_DEFINE([USE_LIBXSLT], 1, [Define to 1 to build with XSLT support. (--with-libxslt)])])
AC_SUBST(with_libxslt)
--- 600,607 ----
#
# XSLT
#
! PGAC_ARG_BOOL(with, libxslt, no, [ --with-libxslt build /contrib/xml2 with XSLT support],
! [AC_DEFINE([USE_LIBXSLT], 1, [Define to 1 to build /contrib/xml2 with XSLT support.
(--with-libxslt)])])
AC_SUBST(with_libxslt)
Index: doc/src/sgml/installation.sgml
===================================================================
RCS file: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v
retrieving revision 1.294
diff -c -c -r1.294 installation.sgml
*** doc/src/sgml/installation.sgml 6 Oct 2007 15:50:43 -0000 1.294
--- doc/src/sgml/installation.sgml 4 Nov 2007 17:52:56 -0000
***************
*** 973,981 ****
<term><option>--with-libxslt</option></term>
<listitem>
<para>
! Build with libxslt. The <filename>contrib/xml2</> module
! relies on this library to perform Stylesheet transformations of
! XML.
</para>
</listitem>
</varlistentry>
--- 973,981 ----
<term><option>--with-libxslt</option></term>
<listitem>
<para>
! Build <filename>/contrib/xml2</> with libxslt.
! <filename>/contrib/xml2</> relies on this library to perform
! Stylesheet transformations of XML.
</para>
</listitem>
</varlistentry>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Sun, 4 Nov 2007 13:11:00 -0500 (EST)
Bruce Momjian <bruce@momjian.us> wrote:
> Nikolay Samokhvalov wrote:
> > The current (CVS version) configure script has the following options
> > (among many others):
> >
> > --enable-dtrace build with DTrace support
> > --with-ossp-uuid build with OSSP UUID library for UUID
> > generation --with-libxml build with XML support
> > --with-libxslt build with XSLT support
> >
> > One could think that adding any of this option to ./configure before
> > building Postgres from sources, he will have corresponding support
> > after installation and initdb process. But what we have now is the
> > huge difference between "--with-libxml" and "--with-libxslt": while
> > the first one adds XML support to the core, the second one doesn't
> > provide anything automatically, it allows only using contirb/xml2
> > (what is unclear because the help message is the same as for
> > --with-libxml -- "build with ... support").
>
> I have modified the configure message to be:
>
> --with-libxslt build /contrib/xml2 with XSLT support
>
> Patch attached.
Shouldn't --with-libxml be noted as deprecated?
Joshua D. Drake
- --
=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 24x7/Emergency: +1.800.492.2240
PostgreSQL solutions since 1997 http://www.commandprompt.com/
UNIQUE NOT NULL
Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFHLgwBATb/zqfZUUQRAsLYAJ9xIrfHnidg0BPW6durNvl61VVT8wCfdY4i
kKSUyVxwaFazYlcY7SCkiCY=
=A8DO
-----END PGP SIGNATURE-----
"Joshua D. Drake" <jd@commandprompt.com> writes:
> Shouldn't --with-libxml be noted as deprecated?
Huh?
regards, tom lane
Bruce Momjian <bruce@momjian.us> writes:
> I have modified the configure message to be:
> --with-libxslt build /contrib/xml2 with XSLT support
This turns the message from something merely a tad unclear into an
outright lie. "--with-libxslt" does not cause contrib/xml2 (or any
other part of contrib) to get built. Better would be
--with-libxslt build with XSLT (affects only contrib/xml2)
regards, tom lane
Tom Lane wrote:
> Bruce Momjian <bruce@momjian.us> writes:
> > I have modified the configure message to be:
> > --with-libxslt build /contrib/xml2 with XSLT support
>
> This turns the message from something merely a tad unclear into an
> outright lie. "--with-libxslt" does not cause contrib/xml2 (or any
> other part of contrib) to get built. Better would be
>
> --with-libxslt build with XSLT (affects only contrib/xml2)
Updated wording:
--with-libxslt use XSLT support when building /contrib/xml2
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://postgres.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Sun, 04 Nov 2007 13:24:54 -0500
Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Joshua D. Drake" <jd@commandprompt.com> writes:
> > Shouldn't --with-libxml be noted as deprecated?
>
> Huh?
Because in 8.3 it is in core or am I misunderstanding the difference?
Joshua D. Drake
>
> regards, tom lane
>
> ---------------------------(end of
> broadcast)--------------------------- TIP 1: if posting/reading
> through Usenet, please send an appropriate subscribe-nomail command
> to majordomo@postgresql.org so that your message can get through to
> the mailing list cleanly
>
- --
=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 24x7/Emergency: +1.800.492.2240
PostgreSQL solutions since 1997 http://www.commandprompt.com/
UNIQUE NOT NULL
Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFHLhmXATb/zqfZUUQRAuBJAJ9jFV8DaxWzWJKhjIPTkeXZ1OWRVQCfTaiV
5ytxcL5Q+Xc3tEAxoj7bbPY=
=tLkt
-----END PGP SIGNATURE-----
Joshua D. Drake wrote: > On Sun, 04 Nov 2007 13:24:54 -0500 > Tom Lane <tgl@sss.pgh.pa.us> wrote: > >> "Joshua D. Drake" <jd@commandprompt.com> writes: >>> Shouldn't --with-libxml be noted as deprecated? >> Huh? > > Because in 8.3 it is in core or am I misunderstanding the difference? you missunderstand - the XML support in 8.3 requires libxml and is only compiled in if that configure switch is selected ... Stefan
Joshua D. Drake wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Sun, 04 Nov 2007 13:24:54 -0500
> Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> > "Joshua D. Drake" <jd@commandprompt.com> writes:
> > > Shouldn't --with-libxml be noted as deprecated?
> >
> > Huh?
>
> Because in 8.3 it is in core or am I misunderstanding the difference?
The functionality is in 8.3 and we areC keeping the /contrib/xml2 API
around for those who need it. The release notes have:
* "contrib/xml2" is deprecated and planned for removal in 8.4 (Peter)
The new XML support in core Postgres supersedes this module.
Do we need more than that? I don't think so.
--
Bruce Momjian <bruce@momjian.us> http://momjian.us
EnterpriseDB http://postgres.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
Stefan Kaltenbrunner wrote: > Joshua D. Drake wrote: > > On Sun, 04 Nov 2007 13:24:54 -0500 > > Tom Lane <tgl@sss.pgh.pa.us> wrote: > > > >> "Joshua D. Drake" <jd@commandprompt.com> writes: > >>> Shouldn't --with-libxml be noted as deprecated? > >> Huh? > > > > Because in 8.3 it is in core or am I misunderstanding the difference? > > you missunderstand - the XML support in 8.3 requires libxml and is only > compiled in if that configure switch is selected ... Right, that too. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://postgres.enterprisedb.com + If your life is a hard drive, Christ can be your backup. +
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Sun, 4 Nov 2007 14:17:48 -0500 (EST)
Bruce Momjian <bruce@momjian.us> wrote:
> The functionality is in 8.3 and we areC keeping the /contrib/xml2 API
> around for those who need it. The release notes have:
>
> * "contrib/xml2" is deprecated and planned for removal in 8.4
> (Peter) The new XML support in core Postgres supersedes this module.
>
> Do we need more than that? I don't think so.
Well that was exactly my point, contrib/xml2 is deprecated as of 8.3 so
it may make sense to make sure the configure says exactly that.
If not, it isn't that big of a deal. I was just making a suggestion to
try and help stop confusion in the future.
Sincerely,
Joshua D. Drake
- --
=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 24x7/Emergency: +1.800.492.2240
PostgreSQL solutions since 1997 http://www.commandprompt.com/
UNIQUE NOT NULL
Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFHLhz1ATb/zqfZUUQRAmBcAJ9ToftpalD9kH5x+Vwy+SVHn6qB8ACbBB4d
D+lV9utI9iNhlK7F0qjhFMk=
=uovh
-----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Sun, 4 Nov 2007 14:18:23 -0500 (EST)
Bruce Momjian <bruce@momjian.us> wrote:
> Stefan Kaltenbrunner wrote:
> > Joshua D. Drake wrote:
> > > On Sun, 04 Nov 2007 13:24:54 -0500
> > > Tom Lane <tgl@sss.pgh.pa.us> wrote:
> > >
> > >> "Joshua D. Drake" <jd@commandprompt.com> writes:
> > >>> Shouldn't --with-libxml be noted as deprecated?
> > >> Huh?
> > >
> > > Because in 8.3 it is in core or am I misunderstanding the
> > > difference?
> >
> > you missunderstand - the XML support in 8.3 requires libxml and is
> > only compiled in if that configure switch is selected ...
>
> Right, that too.
Aha! O.k. that is what I missed. Suggestion withdrawn.
Sincerely,
Joshua D. Drake
- --
=== The PostgreSQL Company: Command Prompt, Inc. ===
Sales/Support: +1.503.667.4564 24x7/Emergency: +1.800.492.2240
PostgreSQL solutions since 1997 http://www.commandprompt.com/
UNIQUE NOT NULL
Donate to the PostgreSQL Project: http://www.postgresql.org/about/donate
PostgreSQL Replication: http://www.commandprompt.com/products/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFHLh0oATb/zqfZUUQRAhVEAJ4nW8AS+gR7EOKl4UY4e7NCc/hFHACgmtpU
brAYEQ+UhIMBWL9wxQFM+CA=
=B7xe
-----END PGP SIGNATURE-----
Tom Lane wrote: > Bruce Momjian <bruce@momjian.us> writes: > >> I have modified the configure message to be: >> --with-libxslt build /contrib/xml2 with XSLT support >> > > This turns the message from something merely a tad unclear into an > outright lie. "--with-libxslt" does not cause contrib/xml2 (or any > other part of contrib) to get built. Better would be > > --with-libxslt build with XSLT (affects only contrib/xml2) > > > What is more, if we're going to do this we should mark *all* the options that only affect contrib, which is why I objected to doing this on its own in the first place. cheers andrew
Andrew Dunstan wrote: > > > Tom Lane wrote: > > Bruce Momjian <bruce@momjian.us> writes: > > > >> I have modified the configure message to be: > >> --with-libxslt build /contrib/xml2 with XSLT support > >> > > > > This turns the message from something merely a tad unclear into an > > outright lie. "--with-libxslt" does not cause contrib/xml2 (or any > > other part of contrib) to get built. Better would be > > > > --with-libxslt build with XSLT (affects only contrib/xml2) > > > > > > > > What is more, if we're going to do this we should mark *all* the options > that only affect contrib, which is why I objected to doing this on its > own in the first place. Uh, what other configure options to we have that only affect /contrib? -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://postgres.enterprisedb.com + If your life is a hard drive, Christ can be your backup. +
Bruce Momjian wrote: > Andrew Dunstan wrote: > >> Tom Lane wrote: >> >>> Bruce Momjian <bruce@momjian.us> writes: >>> >>> >>>> I have modified the configure message to be: >>>> --with-libxslt build /contrib/xml2 with XSLT support >>>> >>>> >>> This turns the message from something merely a tad unclear into an >>> outright lie. "--with-libxslt" does not cause contrib/xml2 (or any >>> other part of contrib) to get built. Better would be >>> >>> --with-libxslt build with XSLT (affects only contrib/xml2) >>> >>> >>> >>> >> What is more, if we're going to do this we should mark *all* the options >> that only affect contrib, which is why I objected to doing this on its >> own in the first place. >> > > Uh, what other configure options to we have that only affect /contrib? > > --with-ossp-uuid at least, IIRC This was discussed previously, BTW. Maybe you haven't read all the mail. Note that cheers andrew
Andrew Dunstan wrote: > > > Bruce Momjian wrote: > > Andrew Dunstan wrote: > > > >> Tom Lane wrote: > >> > >>> Bruce Momjian <bruce@momjian.us> writes: > >>> > >>> > >>>> I have modified the configure message to be: > >>>> --with-libxslt build /contrib/xml2 with XSLT support > >>>> > >>>> > >>> This turns the message from something merely a tad unclear into an > >>> outright lie. "--with-libxslt" does not cause contrib/xml2 (or any > >>> other part of contrib) to get built. Better would be > >>> > >>> --with-libxslt build with XSLT (affects only contrib/xml2) > >>> > >>> > >>> > >>> > >> What is more, if we're going to do this we should mark *all* the options > >> that only affect contrib, which is why I objected to doing this on its > >> own in the first place. > >> > > > > Uh, what other configure options to we have that only affect /contrib? > > > > > > --with-ossp-uuid at least, IIRC > > This was discussed previously, BTW. Maybe you haven't read all the mail. Sorry, no I missed that. Patch attached and applied. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://postgres.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + Index: configure =================================================================== RCS file: /cvsroot/pgsql/configure,v retrieving revision 1.568 diff -c -c -r1.568 configure *** configure 4 Nov 2007 18:53:39 -0000 1.568 --- configure 5 Nov 2007 17:42:10 -0000 *************** *** 896,902 **** --with-openssl build with OpenSSL support --without-readline do not use GNU Readline nor BSD Libedit for editing --with-libedit-preferred prefer BSD Libedit over GNU Readline ! --with-ossp-uuid build with OSSP UUID library for UUID generation --with-libxml build with XML support --with-libxslt use XSLT support when building /contrib/xml2 --with-system-tzdata=DIR use system time zone data in DIR --- 896,902 ---- --with-openssl build with OpenSSL support --without-readline do not use GNU Readline nor BSD Libedit for editing --with-libedit-preferred prefer BSD Libedit over GNU Readline ! --with-ossp-uuid use OSSP UUID library when building /contrib/uuid-ossp --with-libxml build with XML support --with-libxslt use XSLT support when building /contrib/xml2 --with-system-tzdata=DIR use system time zone data in DIR Index: configure.in =================================================================== RCS file: /cvsroot/pgsql/configure.in,v retrieving revision 1.534 diff -c -c -r1.534 configure.in *** configure.in 4 Nov 2007 18:53:39 -0000 1.534 --- configure.in 5 Nov 2007 17:42:11 -0000 *************** *** 569,575 **** # # OSSP UUID library # ! PGAC_ARG_BOOL(with, ossp-uuid, no, [ --with-ossp-uuid build with OSSP UUID library for UUID generation]) AC_SUBST(with_ossp_uuid) --- 569,575 ---- # # OSSP UUID library # ! PGAC_ARG_BOOL(with, ossp-uuid, no, [ --with-ossp-uuid use OSSP UUID library when building /contrib/uuid-ossp ]) AC_SUBST(with_ossp_uuid) Index: doc/src/sgml/installation.sgml =================================================================== RCS file: /cvsroot/pgsql/doc/src/sgml/installation.sgml,v retrieving revision 1.296 diff -c -c -r1.296 installation.sgml *** doc/src/sgml/installation.sgml 4 Nov 2007 18:53:39 -0000 1.296 --- doc/src/sgml/installation.sgml 5 Nov 2007 17:42:11 -0000 *************** *** 937,947 **** <term><option>--with-ossp-uuid</option></term> <listitem> <para> ! Build with the <ulink ! url="http://www.ossp.org/pkg/lib/uuid/">OSSP UUID ! library</ulink>. This is necessary for the contrib module ! <literal>uuid-ossp</literal> which provides functions to ! generate UUIDs.<indexterm><primary>UUID</primary></indexterm> </para> </listitem> </varlistentry> --- 937,946 ---- <term><option>--with-ossp-uuid</option></term> <listitem> <para> ! Use the <ulink url="http://www.ossp.org/pkg/lib/uuid/">OSSP UUID ! library</ulink> when building <filename>/contrib/uuid-ossp</>. ! The library provides functions to generate ! UUIDs.<indexterm><primary>UUID</primary></indexterm> </para> </listitem> </varlistentry> Index: src/include/pg_config.h.in =================================================================== RCS file: /cvsroot/pgsql/src/include/pg_config.h.in,v retrieving revision 1.125 diff -c -c -r1.125 pg_config.h.in *** src/include/pg_config.h.in 29 Oct 2007 11:25:42 -0000 1.125 --- src/include/pg_config.h.in 5 Nov 2007 17:42:12 -0000 *************** *** 672,678 **** /* Define to 1 to build with XML support. (--with-libxml) */ #undef USE_LIBXML ! /* Define to 1 to build with XSLT support. (--with-libxslt) */ #undef USE_LIBXSLT /* Define to select named POSIX semaphores. */ --- 672,679 ---- /* Define to 1 to build with XML support. (--with-libxml) */ #undef USE_LIBXML ! /* Define to 1 to use XSLT support when building /contrib/xml2. ! (--with-libxslt) */ #undef USE_LIBXSLT /* Define to select named POSIX semaphores. */