diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2008-05-30 00:04:32 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2008-05-30 00:04:32 +0000 |
commit | bf4bd50ff76d2049ba4a96762e729394b4f8fa22 (patch) | |
tree | 9df58a9d675a70810ab17854fe076046e2e896c8 | |
parent | d11e301a15e0c28f5db7caa74ad192fec4351f2f (diff) | |
download | postgresql-bf4bd50ff76d2049ba4a96762e729394b4f8fa22.tar.gz |
Copy refint.so and autoinc.so into the src/test/regress directory during
"make all", and then reference them there during the actual tests. This
makes the handling of these files more parallel to that of regress.so,
and in particular simplifies use of the regression tests outside the
original build tree. The PGDG and Red Hat RPMs have been doing this via
patches for a very long time. Inclusion of the change in core was requested
by Jørgen Austvik of Sun, and I can't see any reason not to.
I attempted to fix the MSVC scripts for this too, but they may need
further tweaking ...
-rw-r--r-- | doc/src/sgml/regress.sgml | 9 | ||||
-rw-r--r-- | src/test/regress/GNUmakefile | 30 | ||||
-rw-r--r-- | src/test/regress/input/create_function_1.source | 6 | ||||
-rw-r--r-- | src/test/regress/output/create_function_1.source | 6 | ||||
-rwxr-xr-x | src/tools/msvc/clean.bat | 4 | ||||
-rw-r--r-- | src/tools/msvc/vcregress.pl | 6 |
6 files changed, 36 insertions, 25 deletions
diff --git a/doc/src/sgml/regress.sgml b/doc/src/sgml/regress.sgml index 9d65e4e0f4..d09137fcc0 100644 --- a/doc/src/sgml/regress.sgml +++ b/doc/src/sgml/regress.sgml @@ -1,4 +1,4 @@ -<!-- $PostgreSQL: pgsql/doc/src/sgml/regress.sgml,v 1.58 2007/06/12 17:49:12 mha Exp $ --> +<!-- $PostgreSQL: pgsql/doc/src/sgml/regress.sgml,v 1.59 2008/05/30 00:04:32 tgl Exp $ --> <chapter id="regress"> <title id="regress-title">Regression Tests</title> @@ -48,9 +48,9 @@ gmake check script. At the end you should see something like <screen> <computeroutput> -====================== - All 100 tests passed. -====================== +======================= + All 115 tests passed. +======================= </computeroutput> </screen> or otherwise a note about which tests failed. See <xref @@ -67,7 +67,6 @@ gmake check For example <screen> <prompt>root# </prompt><userinput>chmod -R a+w src/test/regress</userinput> -<prompt>root# </prompt><userinput>chmod -R a+w contrib/spi</userinput> <prompt>root# </prompt><userinput>su - joeuser</userinput> <prompt>joeuser$ </prompt><userinput>cd <replaceable>top-level build directory</></userinput> <prompt>joeuser$ </prompt><userinput>gmake check</userinput> diff --git a/src/test/regress/GNUmakefile b/src/test/regress/GNUmakefile index f8eb07e8b7..deef2c60f6 100644 --- a/src/test/regress/GNUmakefile +++ b/src/test/regress/GNUmakefile @@ -6,7 +6,7 @@ # Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group # Portions Copyright (c) 1994, Regents of the University of California # -# $PostgreSQL: pgsql/src/test/regress/GNUmakefile,v 1.73 2008/04/07 14:15:58 petere Exp $ +# $PostgreSQL: pgsql/src/test/regress/GNUmakefile,v 1.74 2008/05/30 00:04:32 tgl Exp $ # #------------------------------------------------------------------------- @@ -14,8 +14,6 @@ subdir = src/test/regress top_builddir = ../../.. include $(top_builddir)/src/Makefile.global -contribdir = $(top_builddir)/contrib - # port number for temp-installation test postmaster TEMP_PORT = 5$(DEF_PGPORT) @@ -115,20 +113,33 @@ $(remaining_files_build): $(abs_builddir)/%: $(srcdir)/% endif -# And finally some extra C modules... +# Get some extra C modules from contrib/spi... + +all: refint$(DLSUFFIX) autoinc$(DLSUFFIX) + +refint$(DLSUFFIX): $(top_builddir)/contrib/spi/refint$(DLSUFFIX) + cp $< $@ + +autoinc$(DLSUFFIX): $(top_builddir)/contrib/spi/autoinc$(DLSUFFIX) + cp $< $@ -all: all-spi tablespace-setup +$(top_builddir)/contrib/spi/refint$(DLSUFFIX): $(top_srcdir)/contrib/spi/refint.c + $(MAKE) -C $(top_builddir)/contrib/spi refint$(DLSUFFIX) + +$(top_builddir)/contrib/spi/autoinc$(DLSUFFIX): $(top_srcdir)/contrib/spi/autoinc.c + $(MAKE) -C $(top_builddir)/contrib/spi autoinc$(DLSUFFIX) -.PHONY: all-spi -all-spi: - $(MAKE) -C $(contribdir)/spi refint$(DLSUFFIX) autoinc$(DLSUFFIX) # Tablespace setup + +all: tablespace-setup + .PHONY: tablespace-setup tablespace-setup: rm -rf ./testtablespace mkdir ./testtablespace + ## ## Run tests ## @@ -162,8 +173,7 @@ bigcheck: all clean distclean maintainer-clean: clean-lib # things built by `all' target - rm -f $(OBJS) - $(MAKE) -C $(contribdir)/spi clean + rm -f $(OBJS) refint$(DLSUFFIX) autoinc$(DLSUFFIX) rm -f $(output_files) $(input_files) pg_regress_main.o pg_regress.o pg_regress$(X) # things created by various check targets rm -rf testtablespace diff --git a/src/test/regress/input/create_function_1.source b/src/test/regress/input/create_function_1.source index fb357d93b0..15de37ca26 100644 --- a/src/test/regress/input/create_function_1.source +++ b/src/test/regress/input/create_function_1.source @@ -24,17 +24,17 @@ CREATE FUNCTION int44out(city_budget) CREATE FUNCTION check_primary_key () RETURNS trigger - AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@' + AS '@abs_builddir@/refint@DLSUFFIX@' LANGUAGE C; CREATE FUNCTION check_foreign_key () RETURNS trigger - AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@' + AS '@abs_builddir@/refint@DLSUFFIX@' LANGUAGE C; CREATE FUNCTION autoinc () RETURNS trigger - AS '@abs_builddir@/../../../contrib/spi/autoinc@DLSUFFIX@' + AS '@abs_builddir@/autoinc@DLSUFFIX@' LANGUAGE C; CREATE FUNCTION funny_dup17 () diff --git a/src/test/regress/output/create_function_1.source b/src/test/regress/output/create_function_1.source index 1b309cf11a..5c3779a225 100644 --- a/src/test/regress/output/create_function_1.source +++ b/src/test/regress/output/create_function_1.source @@ -25,15 +25,15 @@ CREATE FUNCTION int44out(city_budget) NOTICE: argument type city_budget is only a shell CREATE FUNCTION check_primary_key () RETURNS trigger - AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@' + AS '@abs_builddir@/refint@DLSUFFIX@' LANGUAGE C; CREATE FUNCTION check_foreign_key () RETURNS trigger - AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@' + AS '@abs_builddir@/refint@DLSUFFIX@' LANGUAGE C; CREATE FUNCTION autoinc () RETURNS trigger - AS '@abs_builddir@/../../../contrib/spi/autoinc@DLSUFFIX@' + AS '@abs_builddir@/autoinc@DLSUFFIX@' LANGUAGE C; CREATE FUNCTION funny_dup17 () RETURNS trigger diff --git a/src/tools/msvc/clean.bat b/src/tools/msvc/clean.bat index 9b3b278bad..d061f7c57f 100755 --- a/src/tools/msvc/clean.bat +++ b/src/tools/msvc/clean.bat @@ -1,5 +1,5 @@ @echo off -REM $PostgreSQL: pgsql/src/tools/msvc/clean.bat,v 1.10 2008/02/06 15:13:25 mha Exp $ +REM $PostgreSQL: pgsql/src/tools/msvc/clean.bat,v 1.11 2008/05/30 00:04:32 tgl Exp $ set DIST=0 if "%1"=="dist" set DIST=1 @@ -65,6 +65,8 @@ if exist src\test\regress\tmp_check rd /s /q src\test\regress\tmp_check if exist contrib\spi\refint.dll del /q contrib\spi\refint.dll if exist contrib\spi\autoinc.dll del /q contrib\spi\autoinc.dll if exist src\test\regress\regress.dll del /q src\test\regress\regress.dll +if exist src\test\regress\refint.dll del /q src\test\regress\refint.dll +if exist src\test\regress\autoinc.dll del /q src\test\regress\autoinc.dll REM Clean up datafiles built with contrib REM cd contrib diff --git a/src/tools/msvc/vcregress.pl b/src/tools/msvc/vcregress.pl index 32e2548e97..53f6c59501 100644 --- a/src/tools/msvc/vcregress.pl +++ b/src/tools/msvc/vcregress.pl @@ -1,7 +1,7 @@ # -*-perl-*- hey - emacs - this is a perl file -# $PostgreSQL: pgsql/src/tools/msvc/vcregress.pl,v 1.6 2007/11/13 22:49:47 tgl Exp $ +# $PostgreSQL: pgsql/src/tools/msvc/vcregress.pl,v 1.7 2008/05/30 00:04:32 tgl Exp $ use strict; @@ -36,8 +36,8 @@ else # use a capital C here because config.pl has $config my $Config = -e "release/postgres/postgres.exe" ? "Release" : "Debug"; -copy("$Config/refint/refint.dll","contrib/spi"); -copy("$Config/autoinc/autoinc.dll","contrib/spi"); +copy("$Config/refint/refint.dll","src/test/regress"); +copy("$Config/autoinc/autoinc.dll","src/test/regress"); copy("$Config/regress/regress.dll","src/test/regress"); $ENV{PATH} = "../../../$Config/libpq;../../$Config/libpq;$ENV{PATH}"; |