please find attached an alternate submission which addresses open item
"make pgxs install by default". It is up to the committers to chose. (1) there is only one "install" target. no more "install-all-headers". it simplifies/changes several makefiles. (2) the documentation reflects the change. (3) a minor fix on pgxs to use a nicer patch without a double slash. Fabien Coelho
This commit is contained in:
parent
d42d427252
commit
513e89b44b
|
@ -1,7 +1,7 @@
|
||||||
#
|
#
|
||||||
# PostgreSQL top level makefile
|
# PostgreSQL top level makefile
|
||||||
#
|
#
|
||||||
# $PostgreSQL: pgsql/GNUmakefile.in,v 1.40 2004/07/30 12:26:39 petere Exp $
|
# $PostgreSQL: pgsql/GNUmakefile.in,v 1.41 2004/10/06 08:49:58 momjian Exp $
|
||||||
#
|
#
|
||||||
|
|
||||||
subdir =
|
subdir =
|
||||||
|
@ -15,9 +15,9 @@ all:
|
||||||
@echo "All of PostgreSQL successfully made. Ready to install."
|
@echo "All of PostgreSQL successfully made. Ready to install."
|
||||||
|
|
||||||
install:
|
install:
|
||||||
$(MAKE) -C doc install
|
$(MAKE) -C doc $@
|
||||||
$(MAKE) -C src install
|
$(MAKE) -C src $@
|
||||||
$(MAKE) -C config install
|
$(MAKE) -C config $@
|
||||||
@echo "PostgreSQL installation complete."
|
@echo "PostgreSQL installation complete."
|
||||||
|
|
||||||
installdirs uninstall distprep:
|
installdirs uninstall distprep:
|
||||||
|
@ -25,9 +25,6 @@ installdirs uninstall distprep:
|
||||||
$(MAKE) -C src $@
|
$(MAKE) -C src $@
|
||||||
$(MAKE) -C config $@
|
$(MAKE) -C config $@
|
||||||
|
|
||||||
install-all-headers:
|
|
||||||
$(MAKE) -C src $@
|
|
||||||
|
|
||||||
# clean, distclean, etc should apply to contrib too, even though
|
# clean, distclean, etc should apply to contrib too, even though
|
||||||
# it's not built by default
|
# it's not built by default
|
||||||
clean:
|
clean:
|
||||||
|
|
2
Makefile
2
Makefile
|
@ -11,7 +11,7 @@
|
||||||
# GNUmakefile won't exist yet, so we catch that case as well.
|
# GNUmakefile won't exist yet, so we catch that case as well.
|
||||||
|
|
||||||
|
|
||||||
all check install installdirs install-all-headers installcheck uninstall dep depend clean distclean maintainer-clean:
|
all check install installdirs installcheck uninstall dep depend clean distclean maintainer-clean:
|
||||||
@if [ ! -f GNUmakefile ] ; then \
|
@if [ ! -f GNUmakefile ] ; then \
|
||||||
echo "You need to run the 'configure' program first. See the file"; \
|
echo "You need to run the 'configure' program first. See the file"; \
|
||||||
echo "'INSTALL' for installation instructions." ; \
|
echo "'INSTALL' for installation instructions." ; \
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.205 2004/10/01 02:00:43 neilc Exp $ -->
|
<!-- $PostgreSQL: pgsql/doc/src/sgml/installation.sgml,v 1.206 2004/10/06 08:49:59 momjian Exp $ -->
|
||||||
|
|
||||||
<chapter id="installation">
|
<chapter id="installation">
|
||||||
<title><![%standalone-include[<productname>PostgreSQL</>]]>
|
<title><![%standalone-include[<productname>PostgreSQL</>]]>
|
||||||
|
@ -1035,18 +1035,9 @@ All of PostgreSQL is successfully made. Ready to install.
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
The standard installation provides only the header files needed for client
|
The standard installation provides all the header files needed for client
|
||||||
application development. If you plan to do any server-side program
|
application development as well as for any server-side program
|
||||||
development (such as custom functions or data types written in C),
|
development (such as custom functions or data types written in C).
|
||||||
then you may want to install the entire <productname>PostgreSQL</>
|
|
||||||
include tree into your target include directory. To do that, enter
|
|
||||||
<screen>
|
|
||||||
<userinput>gmake install-all-headers</userinput>
|
|
||||||
</screen>
|
|
||||||
This adds a megabyte or two to the installation footprint, and is only
|
|
||||||
useful if you don't plan to keep the whole source tree around for
|
|
||||||
reference. (If you do, you can just use the source's include
|
|
||||||
directory when building server-side software.)
|
|
||||||
</para>
|
</para>
|
||||||
|
|
||||||
<formalpara>
|
<formalpara>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
#
|
#
|
||||||
# Copyright (c) 1994, Regents of the University of California
|
# Copyright (c) 1994, Regents of the University of California
|
||||||
#
|
#
|
||||||
# $PostgreSQL: pgsql/src/Makefile,v 1.34 2004/08/20 20:13:10 momjian Exp $
|
# $PostgreSQL: pgsql/src/Makefile,v 1.35 2004/10/06 08:49:59 momjian Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -33,10 +33,6 @@ install-local: installdirs-local
|
||||||
$(INSTALL_DATA) $(srcdir)/Makefile.shlib $(DESTDIR)$(pgxsdir)/$(subdir)/Makefile.shlib
|
$(INSTALL_DATA) $(srcdir)/Makefile.shlib $(DESTDIR)$(pgxsdir)/$(subdir)/Makefile.shlib
|
||||||
$(INSTALL_DATA) $(srcdir)/nls-global.mk $(DESTDIR)$(pgxsdir)/$(subdir)/nls-global.mk
|
$(INSTALL_DATA) $(srcdir)/nls-global.mk $(DESTDIR)$(pgxsdir)/$(subdir)/nls-global.mk
|
||||||
|
|
||||||
install-all-headers:
|
|
||||||
$(MAKE) -C include $@
|
|
||||||
$(MAKE) -C port $@
|
|
||||||
|
|
||||||
installdirs: installdirs-local
|
installdirs: installdirs-local
|
||||||
|
|
||||||
installdirs-local:
|
installdirs-local:
|
||||||
|
|
|
@ -2,11 +2,9 @@
|
||||||
#
|
#
|
||||||
# Makefile for src/include
|
# Makefile for src/include
|
||||||
#
|
#
|
||||||
# 'make install' installs only those headers needed for client-side
|
# 'make install' installs whole contents of src/include.
|
||||||
# programming. 'make install-all-headers' installs the whole contents
|
|
||||||
# of src/include.
|
|
||||||
#
|
#
|
||||||
# $PostgreSQL: pgsql/src/include/Makefile,v 1.12 2003/11/29 19:52:08 pgsql Exp $
|
# $PostgreSQL: pgsql/src/include/Makefile,v 1.13 2004/10/06 08:50:00 momjian Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -18,8 +16,11 @@ include $(top_builddir)/src/Makefile.global
|
||||||
all: pg_config.h pg_config_os.h
|
all: pg_config.h pg_config_os.h
|
||||||
|
|
||||||
|
|
||||||
# Install only selected headers
|
# Subdirectories containing headers for server-side dev
|
||||||
|
SUBDIRS = access bootstrap catalog commands executor lib libpq mb \
|
||||||
|
nodes optimizer parser port regex rewrite storage tcop utils
|
||||||
|
|
||||||
|
# Install all headers
|
||||||
install: all installdirs remove-old-headers
|
install: all installdirs remove-old-headers
|
||||||
# These headers are needed by the public headers of the interfaces.
|
# These headers are needed by the public headers of the interfaces.
|
||||||
$(INSTALL_DATA) $(srcdir)/postgres_ext.h $(DESTDIR)$(includedir)
|
$(INSTALL_DATA) $(srcdir)/postgres_ext.h $(DESTDIR)$(includedir)
|
||||||
|
@ -33,18 +34,7 @@ install: all installdirs remove-old-headers
|
||||||
$(INSTALL_DATA) $(srcdir)/postgres_fe.h $(DESTDIR)$(includedir_internal)
|
$(INSTALL_DATA) $(srcdir)/postgres_fe.h $(DESTDIR)$(includedir_internal)
|
||||||
$(INSTALL_DATA) $(srcdir)/libpq/pqcomm.h $(DESTDIR)$(includedir_internal)/libpq
|
$(INSTALL_DATA) $(srcdir)/libpq/pqcomm.h $(DESTDIR)$(includedir_internal)/libpq
|
||||||
$(INSTALL_DATA) $(srcdir)/lib/dllist.h $(DESTDIR)$(includedir_internal)/lib
|
$(INSTALL_DATA) $(srcdir)/lib/dllist.h $(DESTDIR)$(includedir_internal)/lib
|
||||||
|
# These headers are needed for server-side development
|
||||||
installdirs:
|
|
||||||
$(mkinstalldirs) $(DESTDIR)$(includedir)/libpq $(DESTDIR)$(includedir_internal)/libpq $(DESTDIR)$(includedir_internal)/lib
|
|
||||||
|
|
||||||
|
|
||||||
# Install all headers
|
|
||||||
|
|
||||||
# Subdirectories containing headers that install-all-headers should install
|
|
||||||
SUBDIRS = access bootstrap catalog commands executor lib libpq mb \
|
|
||||||
nodes optimizer parser port regex rewrite storage tcop utils
|
|
||||||
|
|
||||||
install-all-headers: all install-all-dirs
|
|
||||||
$(INSTALL_DATA) pg_config.h $(DESTDIR)$(includedir_server)
|
$(INSTALL_DATA) pg_config.h $(DESTDIR)$(includedir_server)
|
||||||
$(INSTALL_DATA) pg_config_os.h $(DESTDIR)$(includedir_server)
|
$(INSTALL_DATA) pg_config_os.h $(DESTDIR)$(includedir_server)
|
||||||
for file in $(srcdir)/*.h; do \
|
for file in $(srcdir)/*.h; do \
|
||||||
|
@ -56,7 +46,8 @@ install-all-headers: all install-all-dirs
|
||||||
done \
|
done \
|
||||||
done
|
done
|
||||||
|
|
||||||
install-all-dirs:
|
installdirs:
|
||||||
|
$(mkinstalldirs) $(DESTDIR)$(includedir)/libpq $(DESTDIR)$(includedir_internal)/libpq $(DESTDIR)$(includedir_internal)/lib
|
||||||
$(mkinstalldirs) $(addprefix $(DESTDIR)$(includedir_server)/, $(SUBDIRS))
|
$(mkinstalldirs) $(addprefix $(DESTDIR)$(includedir_server)/, $(SUBDIRS))
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# PGXS: PostgreSQL extensions makefile
|
# PGXS: PostgreSQL extensions makefile
|
||||||
|
|
||||||
# $PostgreSQL: pgsql/src/makefiles/pgxs.mk,v 1.1 2004/07/30 12:26:40 petere Exp $
|
# $PostgreSQL: pgsql/src/makefiles/pgxs.mk,v 1.2 2004/10/06 08:50:02 momjian Exp $
|
||||||
|
|
||||||
# This file contains generic rules to build many kinds of simple
|
# This file contains generic rules to build many kinds of simple
|
||||||
# extension modules. You only need to set a few variables and include
|
# extension modules. You only need to set a few variables and include
|
||||||
|
@ -50,7 +50,7 @@ endif
|
||||||
|
|
||||||
ifdef PGXS
|
ifdef PGXS
|
||||||
# We assume that we are in src/makefiles/, so top is ...
|
# We assume that we are in src/makefiles/, so top is ...
|
||||||
top_builddir := $(dir $(PGXS))/../..
|
top_builddir := $(dir $(PGXS))../..
|
||||||
include $(top_builddir)/src/Makefile.global
|
include $(top_builddir)/src/Makefile.global
|
||||||
|
|
||||||
top_srcdir = $(top_builddir)
|
top_srcdir = $(top_builddir)
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
# for use only by the backend binaries
|
# for use only by the backend binaries
|
||||||
#
|
#
|
||||||
# IDENTIFICATION
|
# IDENTIFICATION
|
||||||
# $PostgreSQL: pgsql/src/port/Makefile,v 1.19 2004/10/04 13:43:58 momjian Exp $
|
# $PostgreSQL: pgsql/src/port/Makefile,v 1.20 2004/10/06 08:50:02 momjian Exp $
|
||||||
#
|
#
|
||||||
#-------------------------------------------------------------------------
|
#-------------------------------------------------------------------------
|
||||||
|
|
||||||
|
@ -36,7 +36,7 @@ LIBOBJS_SRV := $(patsubst thread.o,thread_srv.o, $(LIBOBJS_SRV))
|
||||||
all: libpgport.a libpgport_srv.a
|
all: libpgport.a libpgport_srv.a
|
||||||
|
|
||||||
# libpgport is needed by some contrib
|
# libpgport is needed by some contrib
|
||||||
install-all-headers:
|
install:
|
||||||
$(INSTALL_STLIB) libpgport.a $(DESTDIR)$(libdir)
|
$(INSTALL_STLIB) libpgport.a $(DESTDIR)$(libdir)
|
||||||
|
|
||||||
uninstall:
|
uninstall:
|
||||||
|
|
Loading…
Reference in New Issue