mirror of
https://github.com/postgres/postgres.git
synced 2025-07-28 23:42:10 +03:00
Add pg-config utility that stores some configuration parameters other
packages can use to configure their build. E.g., $ pg-config --libdir /usr/local/pgsql/lib `pg-config --configure' stores the configure command line.
This commit is contained in:
@ -8,7 +8,7 @@
|
|||||||
#
|
#
|
||||||
#
|
#
|
||||||
# IDENTIFICATION
|
# IDENTIFICATION
|
||||||
# $Header: /cvsroot/pgsql/doc/src/sgml/Makefile,v 1.17 2000/07/21 00:44:11 petere Exp $
|
# $Header: /cvsroot/pgsql/doc/src/sgml/Makefile,v 1.18 2000/08/26 13:08:14 petere Exp $
|
||||||
#
|
#
|
||||||
#----------------------------------------------------------------------------
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
@ -78,6 +78,7 @@ APPLICATIONS= createdb.sgml createlang.sgml createuser.sgml \
|
|||||||
pg_upgrade.sgml \
|
pg_upgrade.sgml \
|
||||||
pgaccess-ref.sgml \
|
pgaccess-ref.sgml \
|
||||||
pgadmin-ref.sgml \
|
pgadmin-ref.sgml \
|
||||||
|
pg-config-ref.sgml \
|
||||||
pgctl-ref.sgml \
|
pgctl-ref.sgml \
|
||||||
pgtclsh.sgml \
|
pgtclsh.sgml \
|
||||||
pgtksh.sgml \
|
pgtksh.sgml \
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
$Header: /cvsroot/pgsql/doc/src/sgml/ref/allfiles.sgml,v 1.20 2000/07/14 15:27:14 thomas Exp $
|
$Header: /cvsroot/pgsql/doc/src/sgml/ref/allfiles.sgml,v 1.21 2000/08/26 13:08:15 petere Exp $
|
||||||
Postgres documentation
|
Postgres documentation
|
||||||
Complete list of usable sgml source files in this directory.
|
Complete list of usable sgml source files in this directory.
|
||||||
-->
|
-->
|
||||||
@ -120,6 +120,7 @@ Complete list of usable sgml source files in this directory.
|
|||||||
<!entity ipcclean system "ipcclean.sgml">
|
<!entity ipcclean system "ipcclean.sgml">
|
||||||
<!entity pgAccess system "pgaccess-ref.sgml">
|
<!entity pgAccess system "pgaccess-ref.sgml">
|
||||||
<!entity pgAdmin system "pgadmin-ref.sgml">
|
<!entity pgAdmin system "pgadmin-ref.sgml">
|
||||||
|
<!entity pgConfig system "pg-config-ref.sgml">
|
||||||
<!entity pgCtl system "pgctl-ref.sgml">
|
<!entity pgCtl system "pgctl-ref.sgml">
|
||||||
<!entity pgDump system "pg_dump.sgml">
|
<!entity pgDump system "pg_dump.sgml">
|
||||||
<!entity pgDumpall system "pg_dumpall.sgml">
|
<!entity pgDumpall system "pg_dumpall.sgml">
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
$Header: /cvsroot/pgsql/doc/src/sgml/ref/Attic/commands.sgml,v 1.27 2000/07/14 15:27:14 thomas Exp $
|
$Header: /cvsroot/pgsql/doc/src/sgml/ref/Attic/commands.sgml,v 1.28 2000/08/26 13:08:15 petere Exp $
|
||||||
Postgres documentation
|
Postgres documentation
|
||||||
-->
|
-->
|
||||||
|
|
||||||
@ -124,6 +124,7 @@ functions supported by <productname>Postgres</productname>.
|
|||||||
&ecpgRef;
|
&ecpgRef;
|
||||||
&pgAccess;
|
&pgAccess;
|
||||||
&pgAdmin;
|
&pgAdmin;
|
||||||
|
&pgConfig;
|
||||||
&pgCtl;
|
&pgCtl;
|
||||||
&pgDump;
|
&pgDump;
|
||||||
&pgDumpall;
|
&pgDumpall;
|
||||||
|
90
doc/src/sgml/ref/pg-config-ref.sgml
Normal file
90
doc/src/sgml/ref/pg-config-ref.sgml
Normal file
@ -0,0 +1,90 @@
|
|||||||
|
<!-- $Header -->
|
||||||
|
|
||||||
|
<refentry id="app-pg-config">
|
||||||
|
<refmeta>
|
||||||
|
<refentrytitle id="app-pg-config-title">pg-config</>
|
||||||
|
<refmiscinfo>Application</>
|
||||||
|
</refmeta>
|
||||||
|
|
||||||
|
<refnamediv>
|
||||||
|
<refname>pg-config</>
|
||||||
|
<refpurpose>Provides information about the installed version of <productname>PostgreSQL</></>
|
||||||
|
</refnamediv>
|
||||||
|
|
||||||
|
<refsynopsisdiv>
|
||||||
|
<synopsis>
|
||||||
|
pg-config --bindir | --includedir | --libdir | --configure | --version
|
||||||
|
</synopsis>
|
||||||
|
</refsynopsisdiv>
|
||||||
|
|
||||||
|
<refsect1>
|
||||||
|
<title>Description</>
|
||||||
|
<para>
|
||||||
|
The <application>pg-config</> stores and provides configuration parameters
|
||||||
|
of the currently installed version of <productname>PostgreSQL</>. It is
|
||||||
|
intended, for example, to be used by software packages that want to interface
|
||||||
|
to <productname>PostgreSQL</> in order to find the respective header files
|
||||||
|
and libraries.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
To use <application>pg-config</>, supply one or more of the following options:
|
||||||
|
<variablelist>
|
||||||
|
<varlistentry>
|
||||||
|
<term>--bindir</>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Print the location of user executables. Use this, for example, to find
|
||||||
|
the <application>psql</> program. This is normally also the location
|
||||||
|
where the <filename>pg-config</> program resides.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>--includedir</>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Print the location of C and C++ header files.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>--libdir</>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Print the location of object code libraries.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>--configure</>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Print the options that were given to the <filename>configure</>
|
||||||
|
script when <productname>PostgreSQL</> was configured for building.
|
||||||
|
This can be used to reproduce the identical configuration, or
|
||||||
|
to find out with what options a binary package was built. (Note
|
||||||
|
however that binary packages often contain vendor-specific custom
|
||||||
|
patches.)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
|
||||||
|
<varlistentry>
|
||||||
|
<term>--version</>
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Print the version of <productname>PostgreSQL</> and exit.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
</varlistentry>
|
||||||
|
</variablelist>
|
||||||
|
|
||||||
|
If more than one option (except for <option>--version</>) is given, the
|
||||||
|
information is printed in that order, one item per line.
|
||||||
|
</para>
|
||||||
|
</refsect1>
|
||||||
|
</refentry>
|
@ -4,7 +4,7 @@
|
|||||||
#
|
#
|
||||||
# Copyright (c) 1994, Regents of the University of California
|
# Copyright (c) 1994, Regents of the University of California
|
||||||
#
|
#
|
||||||
# $Header: /cvsroot/pgsql/src/bin/Makefile,v 1.29 2000/07/19 16:29:53 petere Exp $
|
# $Header: /cvsroot/pgsql/src/bin/Makefile,v 1.30 2000/08/26 13:08:15 petere Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
@ -13,7 +13,7 @@ top_builddir = ../..
|
|||||||
include ../Makefile.global
|
include ../Makefile.global
|
||||||
|
|
||||||
DIRS := initdb initlocation ipcclean pg_ctl pg_dump pg_id \
|
DIRS := initdb initlocation ipcclean pg_ctl pg_dump pg_id \
|
||||||
pg_passwd psql scripts
|
pg_passwd psql scripts pg-config
|
||||||
|
|
||||||
ifdef MULTIBYTE
|
ifdef MULTIBYTE
|
||||||
DIRS += pg_encoding
|
DIRS += pg_encoding
|
||||||
|
31
src/bin/pg-config/Makefile
Normal file
31
src/bin/pg-config/Makefile
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
# $Header: /cvsroot/pgsql/src/bin/pg-config/Attic/Makefile,v 1.1 2000/08/26 13:08:16 petere Exp $
|
||||||
|
|
||||||
|
subdir = src/bin/pg-config
|
||||||
|
top_builddir = ../../..
|
||||||
|
include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
|
all: pg-config
|
||||||
|
|
||||||
|
pg-config: pg-config.sh $(top_builddir)/config.status $(top_builddir)/src/Makefile.global Makefile
|
||||||
|
rm -f $@ $@.tmp
|
||||||
|
configure=`sed -n '7s,^# [^ ]*configure *,,p' $(top_builddir)/config.status` && \
|
||||||
|
sed -e 's,@bindir@,$(bindir),g' \
|
||||||
|
-e 's,@includedir@,$(includedir),g' \
|
||||||
|
-e 's,@libdir@,$(libdir),g' \
|
||||||
|
-e "s,@configure@,$$configure,g" \
|
||||||
|
-e 's,@version@,$(VERSION),g' \
|
||||||
|
$< >$@.tmp
|
||||||
|
chmod a+x $@.tmp
|
||||||
|
mv $@.tmp $@
|
||||||
|
|
||||||
|
install: all installdirs
|
||||||
|
$(INSTALL_SCRIPT) pg-config $(bindir)/pg-config
|
||||||
|
|
||||||
|
installdirs:
|
||||||
|
$(mkinstalldirs) $(bindir)
|
||||||
|
|
||||||
|
uninstall:
|
||||||
|
rm -f $(bindir)/pg-config
|
||||||
|
|
||||||
|
clean distclean maintainer-clean:
|
||||||
|
rm -f pg-config
|
70
src/bin/pg-config/pg-config.sh
Normal file
70
src/bin/pg-config/pg-config.sh
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
#! /bin/sh
|
||||||
|
|
||||||
|
# This shell script saves various pieces of information about the
|
||||||
|
# installed version of PostgreSQL. Packages that interface to
|
||||||
|
# PostgreSQL can use it to configure their build.
|
||||||
|
#
|
||||||
|
# Author: Peter Eisentraut <peter_e@gmx.net>
|
||||||
|
# Public domain
|
||||||
|
|
||||||
|
# $Header: /cvsroot/pgsql/src/bin/pg-config/Attic/pg-config.sh,v 1.1 2000/08/26 13:08:16 petere Exp $
|
||||||
|
|
||||||
|
me=`basename $0`
|
||||||
|
|
||||||
|
# stored configuration values
|
||||||
|
val_bindir='@bindir@'
|
||||||
|
val_includedir='@includedir@'
|
||||||
|
val_libdir='@libdir@'
|
||||||
|
val_configure='@configure@'
|
||||||
|
val_version='@version@'
|
||||||
|
|
||||||
|
help="\
|
||||||
|
$me provides information about the installed version of PostgreSQL.
|
||||||
|
|
||||||
|
Usage: $me --bindir | --includedir | --libdir | --configure | --version
|
||||||
|
|
||||||
|
Operation modes:
|
||||||
|
--bindir show location of user executables
|
||||||
|
--includedir show location of C header files
|
||||||
|
--libdir show location of object code libraries
|
||||||
|
--configure show options given to \`configure' script when
|
||||||
|
PostgreSQL was built
|
||||||
|
--version show PostgreSQL version and exit
|
||||||
|
|
||||||
|
Report bugs to <pgsql-bugs@postgresql.org>."
|
||||||
|
|
||||||
|
advice="\
|
||||||
|
Try \`$me --help' for more information."
|
||||||
|
|
||||||
|
if test $# -eq 0 ; then
|
||||||
|
echo "$me: argument required"
|
||||||
|
echo "$advice"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
show=
|
||||||
|
|
||||||
|
for opt
|
||||||
|
do
|
||||||
|
case $opt in
|
||||||
|
--bindir) show="$show \$val_bindir";;
|
||||||
|
--includedir) show="$show \$val_includedir";;
|
||||||
|
--libdir) show="$show \$val_libdir";;
|
||||||
|
--configure) show="$show \$val_configure";;
|
||||||
|
|
||||||
|
--version) echo "PostgreSQL $val_version"
|
||||||
|
exit 0;;
|
||||||
|
--help|-\?) echo "$help"
|
||||||
|
exit 0;;
|
||||||
|
*) echo "$me: invalid argument: $opt"
|
||||||
|
echo "$advice"
|
||||||
|
exit 1;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
for thing in $show
|
||||||
|
do
|
||||||
|
eval "echo $thing"
|
||||||
|
done
|
||||||
|
|
||||||
|
# end of pg-config
|
Reference in New Issue
Block a user