Move pg_xlogdump from contrib/ to src/bin/
authorPeter Eisentraut <peter_e@gmx.net>
Wed, 11 Mar 2015 02:33:24 +0000 (22:33 -0400)
committerPeter Eisentraut <peter_e@gmx.net>
Tue, 21 Apr 2015 23:03:49 +0000 (19:03 -0400)
Reviewed-by: Michael Paquier <michael.paquier@gmail.com>
14 files changed:
contrib/Makefile
doc/src/sgml/contrib.sgml
doc/src/sgml/filelist.sgml
doc/src/sgml/ref/allfiles.sgml
doc/src/sgml/ref/pg_xlogdump.sgml [moved from doc/src/sgml/pg_xlogdump.sgml with 100% similarity]
doc/src/sgml/reference.sgml
src/bin/Makefile
src/bin/pg_xlogdump/.gitignore [moved from contrib/pg_xlogdump/.gitignore with 100% similarity]
src/bin/pg_xlogdump/Makefile [moved from contrib/pg_xlogdump/Makefile with 53% similarity]
src/bin/pg_xlogdump/compat.c [moved from contrib/pg_xlogdump/compat.c with 98% similarity]
src/bin/pg_xlogdump/pg_xlogdump.c [moved from contrib/pg_xlogdump/pg_xlogdump.c with 99% similarity]
src/bin/pg_xlogdump/rmgrdesc.c [moved from contrib/pg_xlogdump/rmgrdesc.c with 96% similarity]
src/bin/pg_xlogdump/rmgrdesc.h [moved from contrib/pg_xlogdump/rmgrdesc.h with 91% similarity]
src/tools/msvc/Mkvcbuild.pm

index e5ce0be5fd4a61652676a36a978b831173c42ccf..e2c4e274930b83f2f9fa4125af3469ae4007cab9 100644 (file)
@@ -37,7 +37,6 @@ SUBDIRS = \
                pgcrypto        \
                pgrowlocks      \
                pgstattuple     \
-               pg_xlogdump     \
                postgres_fdw    \
                seg             \
                spi             \
index 29e4f2df9b51bf3301878e84b60ff8c670b6b106..49a6ce8b0b6595a04108a15c1839d728a1e97877 100644 (file)
@@ -202,6 +202,5 @@ pages.
   </para>
 
  &pgstandby;
- &pgxlogdump;
  </sect1>
 </appendix>
index 2f4896d4ce3e9856f35ac02fda6995512e9dc8a9..26aa7ee50eea8513820a7468aa5b7146552396fd 100644 (file)
 <!ENTITY pgstatstatements SYSTEM "pgstatstatements.sgml">
 <!ENTITY pgstattuple     SYSTEM "pgstattuple.sgml">
 <!ENTITY pgtrgm          SYSTEM "pgtrgm.sgml">
-<!ENTITY pgxlogdump      SYSTEM "pg_xlogdump.sgml">
 <!ENTITY postgres-fdw    SYSTEM "postgres-fdw.sgml">
 <!ENTITY seg             SYSTEM "seg.sgml">
 <!ENTITY contrib-spi     SYSTEM "contrib-spi.sgml">
index 0e0a1f4f462e7f94d19f1b5c4092c06d75fdd19a..f09fc250f0862733ca7d8ac7df5720da4875078b 100644 (file)
@@ -196,6 +196,7 @@ Complete list of usable sgml source files in this directory.
 <!ENTITY pgtestfsync        SYSTEM "pgtestfsync.sgml">
 <!ENTITY pgtesttiming       SYSTEM "pgtesttiming.sgml">
 <!ENTITY pgupgrade          SYSTEM "pgupgrade.sgml">
+<!ENTITY pgxlogdump         SYSTEM "pg_xlogdump.sgml">
 <!ENTITY postgres           SYSTEM "postgres-ref.sgml">
 <!ENTITY postmaster         SYSTEM "postmaster.sgml">
 <!ENTITY psqlRef            SYSTEM "psql-ref.sgml">
index a526638ec9bd0c6c2d3e4350b2fc77c0175df4e3..c52eb28c8c4ffc0318a5b6b4ad9a81b3b3eb2493 100644 (file)
    &pgtestfsync;
    &pgtesttiming;
    &pgupgrade;
+   &pgxlogdump;
    &postgres;
    &postmaster;
 
index d23c95c581c42bc6a3513b492235a831153aabc8..f08a22af204a25b0a54a65639719fab61b8c2b30 100644 (file)
@@ -26,6 +26,7 @@ SUBDIRS = \
        pg_test_fsync \
        pg_test_timing \
        pg_upgrade \
+       pg_xlogdump \
        pgbench \
        psql \
        scripts
similarity index 53%
rename from contrib/pg_xlogdump/Makefile
rename to src/bin/pg_xlogdump/Makefile
index 30a8706948c1ce6f8f57d284fbb92ff28a4ff909..315e869ffe0b67d72724837a67d001677387e046 100644 (file)
@@ -1,31 +1,40 @@
-# contrib/pg_xlogdump/Makefile
+# src/bin/pg_xlogdump/Makefile
 
 PGFILEDESC = "pg_xlogdump - decode and display WAL"
 PGAPPICON=win32
 
-PROGRAM = pg_xlogdump
+subdir = src/bin/pg_xlogdump
+top_builddir = ../../..
+include $(top_builddir)/src/Makefile.global
+
 OBJS = pg_xlogdump.o compat.o xlogreader.o rmgrdesc.o \
        $(RMGRDESCOBJS) $(WIN32RES)
 
+override CPPFLAGS := -DFRONTEND $(CPPFLAGS)
+
 RMGRDESCSOURCES = $(notdir $(wildcard $(top_srcdir)/src/backend/access/rmgrdesc/*desc.c))
 RMGRDESCOBJS = $(patsubst %.c,%.o,$(RMGRDESCSOURCES))
 
-EXTRA_CLEAN = $(RMGRDESCSOURCES) xlogreader.c
-
-ifdef USE_PGXS
-$(error "pg_xlogdump cannot be built with PGXS")
-endif
-
-subdir = contrib/pg_xlogdump
-top_builddir = ../..
-include $(top_builddir)/src/Makefile.global
-include $(top_srcdir)/contrib/contrib-global.mk
 
+all: pg_xlogdump
 
-override CPPFLAGS := -DFRONTEND $(CPPFLAGS)
+pg_xlogdump: $(OBJS) | submake-libpgport
+       $(CC) $(CFLAGS) $^ $(LDFLAGS) $(LDFLAGS_EX) $(LIBS) -o $@$(X)
 
 xlogreader.c: % : $(top_srcdir)/src/backend/access/transam/%
        rm -f $@ && $(LN_S) $< .
 
 $(RMGRDESCSOURCES): % : $(top_srcdir)/src/backend/access/rmgrdesc/%
        rm -f $@ && $(LN_S) $< .
+
+install: all installdirs
+       $(INSTALL_PROGRAM) pg_xlogdump$(X) '$(DESTDIR)$(bindir)/pg_xlogdump$(X)'
+
+installdirs:
+       $(MKDIR_P) '$(DESTDIR)$(bindir)'
+
+uninstall:
+       rm -f '$(DESTDIR)$(bindir)/pg_xlogdump$(X)'
+
+clean distclean maintainer-clean:
+       rm -f pg_xlogdump$(X) $(OBJS) $(RMGRDESCSOURCES) xlogreader.c
similarity index 98%
rename from contrib/pg_xlogdump/compat.c
rename to src/bin/pg_xlogdump/compat.c
index 4f5cad67060de733e62ca4337625008fd16e53de..3d8ce303a97841a718f341df8eb717df423d7ac6 100644 (file)
@@ -6,7 +6,7 @@
  * Portions Copyright (c) 2013-2015, PostgreSQL Global Development Group
  *
  * IDENTIFICATION
- *             contrib/pg_xlogdump/compat.c
+ *             src/bin/pg_xlogdump/compat.c
  *
  * This file contains client-side implementations for various backend
  * functions that the rm_desc functions in *desc.c files rely on.
similarity index 99%
rename from contrib/pg_xlogdump/pg_xlogdump.c
rename to src/bin/pg_xlogdump/pg_xlogdump.c
index 4f297e95720e43c7c2af1f1d65f863669d688a39..d634807eb5bf5e3a7fa78eb1e5f85ce4781d1dcc 100644 (file)
@@ -5,7 +5,7 @@
  * Copyright (c) 2013-2015, PostgreSQL Global Development Group
  *
  * IDENTIFICATION
- *               contrib/pg_xlogdump/pg_xlogdump.c
+ *               src/bin/pg_xlogdump/pg_xlogdump.c
  *-------------------------------------------------------------------------
  */
 
similarity index 96%
rename from contrib/pg_xlogdump/rmgrdesc.c
rename to src/bin/pg_xlogdump/rmgrdesc.c
index bd3344ccd6d801d58bc7f7280709b91aa8937a8f..2205d6e689634f320f8879e9dc731f89f0ef1067 100644 (file)
@@ -3,7 +3,7 @@
  *
  * pg_xlogdump resource managers definition
  *
- * contrib/pg_xlogdump/rmgrdesc.c
+ * src/bin/pg_xlogdump/rmgrdesc.c
  */
 #define FRONTEND 1
 #include "postgres.h"
similarity index 91%
rename from contrib/pg_xlogdump/rmgrdesc.h
rename to src/bin/pg_xlogdump/rmgrdesc.h
index aec4418303725a0d26fb1664ab7f3344f67172d0..5440f9468f456db0c2dc9b70395805c64911b056 100644 (file)
@@ -3,7 +3,7 @@
  *
  * pg_xlogdump resource managers declaration
  *
- * contrib/pg_xlogdump/rmgrdesc.h
+ * src/bin/pg_xlogdump/rmgrdesc.h
  */
 #ifndef RMGRDESC_H
 #define RMGRDESC_H
index 6dd429a8b68efe12e210fb432dfb34e448f8c6e6..8654bfe3ce75854ddd4e161f1a595d3be23035e7 100644 (file)
@@ -35,12 +35,10 @@ my @contrib_uselibpq =
 my @contrib_uselibpgport = (
        'oid2name',
        'pg_standby',
-       'pg_xlogdump',
        'vacuumlo');
 my @contrib_uselibpgcommon = (
        'oid2name',
        'pg_standby',
-       'pg_xlogdump',
        'vacuumlo');
 my $contrib_extralibs = undef;
 my $contrib_extraincludes =
@@ -53,8 +51,8 @@ my @contrib_excludes = ('pgcrypto', 'commit_ts', 'intagg', 'sepgsql');
 # Set of variables for frontend modules
 my $frontend_defines = { 'initdb' => 'FRONTEND' };
 my @frontend_uselibpq = ('pg_ctl', 'pg_upgrade', 'pgbench', 'psql');
-my @frontend_uselibpgport = ( 'pg_archivecleanup', 'pg_test_fsync', 'pg_test_timing', 'pg_upgrade', 'pgbench' );
-my @frontend_uselibpgcommon = ( 'pg_archivecleanup', 'pg_test_fsync', 'pg_test_timing', 'pg_upgrade', 'pgbench' );
+my @frontend_uselibpgport = ( 'pg_archivecleanup', 'pg_test_fsync', 'pg_test_timing', 'pg_upgrade', 'pg_xlogdump', 'pgbench' );
+my @frontend_uselibpgcommon = ( 'pg_archivecleanup', 'pg_test_fsync', 'pg_test_timing', 'pg_upgrade', 'pg_xlogdump', 'pgbench' );
 my $frontend_extralibs = {
        'initdb'     => ['ws2_32.lib'],
        'pg_restore' => ['ws2_32.lib'],
@@ -69,7 +67,7 @@ my $frontend_extrasource = {
                [ 'src\bin\pgbench\exprscan.l', 'src\bin\pgbench\exprparse.y' ],
 };
 my @frontend_excludes =
-  ('pgevent', 'pg_basebackup', 'pg_rewind', 'pg_dump', 'scripts');
+  ('pgevent', 'pg_basebackup', 'pg_rewind', 'pg_dump', 'pg_xlogdump', 'scripts');
 
 sub mkvcbuild
 {
@@ -648,9 +646,7 @@ sub mkvcbuild
 
        # fix up pg_xlogdump once it's been set up
        # files symlinked on Unix are copied on windows
-       my $pg_xlogdump =
-         (grep { $_->{name} eq 'pg_xlogdump' }
-                 @{ $solution->{projects}->{contrib} })[0];
+       my $pg_xlogdump = AddSimpleFrontend('pg_xlogdump');
        $pg_xlogdump->AddDefine('FRONTEND');
        foreach my $xf (glob('src\\backend\\access\\rmgrdesc\\*desc.c'))
        {