From b0a738f428ca4e52695c0f019c1560c64cc59aef Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Tue, 10 Mar 2015 22:33:24 -0400 Subject: [PATCH] Move pg_xlogdump from contrib/ to src/bin/ Reviewed-by: Michael Paquier --- contrib/Makefile | 1 - doc/src/sgml/contrib.sgml | 1 - doc/src/sgml/filelist.sgml | 1 - doc/src/sgml/ref/allfiles.sgml | 1 + doc/src/sgml/{ => ref}/pg_xlogdump.sgml | 0 doc/src/sgml/reference.sgml | 1 + src/bin/Makefile | 1 + {contrib => src/bin}/pg_xlogdump/.gitignore | 0 {contrib => src/bin}/pg_xlogdump/Makefile | 35 ++++++++++++------- {contrib => src/bin}/pg_xlogdump/compat.c | 2 +- .../bin}/pg_xlogdump/pg_xlogdump.c | 2 +- {contrib => src/bin}/pg_xlogdump/rmgrdesc.c | 2 +- {contrib => src/bin}/pg_xlogdump/rmgrdesc.h | 2 +- src/tools/msvc/Mkvcbuild.pm | 12 +++---- 14 files changed, 33 insertions(+), 28 deletions(-) rename doc/src/sgml/{ => ref}/pg_xlogdump.sgml (100%) rename {contrib => src/bin}/pg_xlogdump/.gitignore (100%) rename {contrib => src/bin}/pg_xlogdump/Makefile (53%) rename {contrib => src/bin}/pg_xlogdump/compat.c (98%) rename {contrib => src/bin}/pg_xlogdump/pg_xlogdump.c (99%) rename {contrib => src/bin}/pg_xlogdump/rmgrdesc.c (96%) rename {contrib => src/bin}/pg_xlogdump/rmgrdesc.h (91%) diff --git a/contrib/Makefile b/contrib/Makefile index e5ce0be5fd..e2c4e27493 100644 --- a/contrib/Makefile +++ b/contrib/Makefile @@ -37,7 +37,6 @@ SUBDIRS = \ pgcrypto \ pgrowlocks \ pgstattuple \ - pg_xlogdump \ postgres_fdw \ seg \ spi \ diff --git a/doc/src/sgml/contrib.sgml b/doc/src/sgml/contrib.sgml index 29e4f2df9b..49a6ce8b0b 100644 --- a/doc/src/sgml/contrib.sgml +++ b/doc/src/sgml/contrib.sgml @@ -202,6 +202,5 @@ pages. &pgstandby; - &pgxlogdump; diff --git a/doc/src/sgml/filelist.sgml b/doc/src/sgml/filelist.sgml index 2f4896d4ce..26aa7ee50e 100644 --- a/doc/src/sgml/filelist.sgml +++ b/doc/src/sgml/filelist.sgml @@ -134,7 +134,6 @@ - diff --git a/doc/src/sgml/ref/allfiles.sgml b/doc/src/sgml/ref/allfiles.sgml index 0e0a1f4f46..f09fc250f0 100644 --- a/doc/src/sgml/ref/allfiles.sgml +++ b/doc/src/sgml/ref/allfiles.sgml @@ -196,6 +196,7 @@ Complete list of usable sgml source files in this directory. + diff --git a/doc/src/sgml/pg_xlogdump.sgml b/doc/src/sgml/ref/pg_xlogdump.sgml similarity index 100% rename from doc/src/sgml/pg_xlogdump.sgml rename to doc/src/sgml/ref/pg_xlogdump.sgml diff --git a/doc/src/sgml/reference.sgml b/doc/src/sgml/reference.sgml index a526638ec9..c52eb28c8c 100644 --- a/doc/src/sgml/reference.sgml +++ b/doc/src/sgml/reference.sgml @@ -266,6 +266,7 @@ &pgtestfsync; &pgtesttiming; &pgupgrade; + &pgxlogdump; &postgres; &postmaster; diff --git a/src/bin/Makefile b/src/bin/Makefile index d23c95c581..f08a22af20 100644 --- a/src/bin/Makefile +++ b/src/bin/Makefile @@ -26,6 +26,7 @@ SUBDIRS = \ pg_test_fsync \ pg_test_timing \ pg_upgrade \ + pg_xlogdump \ pgbench \ psql \ scripts diff --git a/contrib/pg_xlogdump/.gitignore b/src/bin/pg_xlogdump/.gitignore similarity index 100% rename from contrib/pg_xlogdump/.gitignore rename to src/bin/pg_xlogdump/.gitignore diff --git a/contrib/pg_xlogdump/Makefile b/src/bin/pg_xlogdump/Makefile similarity index 53% rename from contrib/pg_xlogdump/Makefile rename to src/bin/pg_xlogdump/Makefile index 30a8706948..315e869ffe 100644 --- a/contrib/pg_xlogdump/Makefile +++ b/src/bin/pg_xlogdump/Makefile @@ -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 diff --git a/contrib/pg_xlogdump/compat.c b/src/bin/pg_xlogdump/compat.c similarity index 98% rename from contrib/pg_xlogdump/compat.c rename to src/bin/pg_xlogdump/compat.c index 4f5cad6706..3d8ce303a9 100644 --- a/contrib/pg_xlogdump/compat.c +++ b/src/bin/pg_xlogdump/compat.c @@ -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. diff --git a/contrib/pg_xlogdump/pg_xlogdump.c b/src/bin/pg_xlogdump/pg_xlogdump.c similarity index 99% rename from contrib/pg_xlogdump/pg_xlogdump.c rename to src/bin/pg_xlogdump/pg_xlogdump.c index 4f297e9572..d634807eb5 100644 --- a/contrib/pg_xlogdump/pg_xlogdump.c +++ b/src/bin/pg_xlogdump/pg_xlogdump.c @@ -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 *------------------------------------------------------------------------- */ diff --git a/contrib/pg_xlogdump/rmgrdesc.c b/src/bin/pg_xlogdump/rmgrdesc.c similarity index 96% rename from contrib/pg_xlogdump/rmgrdesc.c rename to src/bin/pg_xlogdump/rmgrdesc.c index bd3344ccd6..2205d6e689 100644 --- a/contrib/pg_xlogdump/rmgrdesc.c +++ b/src/bin/pg_xlogdump/rmgrdesc.c @@ -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" diff --git a/contrib/pg_xlogdump/rmgrdesc.h b/src/bin/pg_xlogdump/rmgrdesc.h similarity index 91% rename from contrib/pg_xlogdump/rmgrdesc.h rename to src/bin/pg_xlogdump/rmgrdesc.h index aec4418303..5440f9468f 100644 --- a/contrib/pg_xlogdump/rmgrdesc.h +++ b/src/bin/pg_xlogdump/rmgrdesc.h @@ -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 diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm index 6dd429a8b6..8654bfe3ce 100644 --- a/src/tools/msvc/Mkvcbuild.pm +++ b/src/tools/msvc/Mkvcbuild.pm @@ -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')) { -- 2.49.0