Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit7e77668

Browse files
committed
Make regression tests work with VPATH builds.
1 parent29f6c8d commit7e77668

11 files changed

+119
-91
lines changed

‎src/test/regress/GNUmakefile

Lines changed: 35 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#
88
#
99
# IDENTIFICATION
10-
# $Header: /cvsroot/pgsql/src/test/regress/GNUmakefile,v 1.29 2000/10/23 21:44:07 petere Exp $
10+
# $Header: /cvsroot/pgsql/src/test/regress/GNUmakefile,v 1.30 2000/10/27 20:00:19 petere Exp $
1111
#
1212
#-------------------------------------------------------------------------
1313

@@ -60,11 +60,36 @@ output_files := $(foreach file, $(file_list), expected/$(file).out)
6060

6161
all:$(input_files)$(output_files)
6262

63-
sql/%.sql: input/%.source
64-
pwd=`pwd`&& sed"s,_OBJWD_,$$pwd,g;s/_DLSUFFIX_/$(DLSUFFIX)/g"$(srcdir)/$<>$@
63+
abs_srcdir :=$(shell cd$(srcdir) && pwd)
64+
abs_builddir :=$(shell pwd)
6565

66-
expected/%.out: output/%.source
67-
pwd=`pwd`&& sed"s,_OBJWD_,$$pwd,g;s/_DLSUFFIX_/$(DLSUFFIX)/g"$(srcdir)/$<>$@
66+
definesed-command
67+
sed -e 's,@abs_srcdir@,$(abs_srcdir),g' \
68+
-e 's,@abs_builddir@,$(abs_builddir),g' \
69+
-e 's/@DLSUFFIX@/$(DLSUFFIX)/g'$< >$@
70+
endef
71+
72+
$(input_files): sql/%.sql: input/%.source
73+
$(sed-command)
74+
75+
$(output_files): expected/%.out: output/%.source
76+
$(sed-command)
77+
78+
# When doing a VPATH build, copy over the remaining .sql and .out
79+
# files so that the driver script can find them. We have to use an
80+
# absolute path for the targets, because otherwise make will try to
81+
# locate the missing files using VPATH, and will find them in
82+
# $(srcdir), but the point here is that we want to copy them from
83+
# $(srcdir) to the build directory.
84+
85+
ifdefVPATH
86+
remaining_files_src :=$(wildcard$(srcdir)/sql/*.sql)$(wildcard$(srcdir)/expected/*.out)
87+
remaining_files_build :=$(patsubst$(srcdir)/%,$(abs_builddir)/%,$(remaining_files_src))
88+
89+
all:$(remaining_files_build)
90+
$(remaining_files_build):$(abs_builddir)/%:$(srcdir)/%
91+
ln -s$<$@
92+
endif
6893

6994

7095
# And finally some extra C modules...
@@ -81,10 +106,10 @@ all-spi:
81106
##
82107

83108
check: all
84-
$(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=parallel_schedule --multibyte=$(MULTIBYTE)
109+
$(SHELL) ./pg_regress --temp-install --top-builddir=$(top_builddir) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE)
85110

86111
installcheck: all
87-
$(SHELL) ./pg_regress --schedule=serial_schedule --multibyte=$(MULTIBYTE)
112+
$(SHELL) ./pg_regress --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE)
88113

89114

90115
# old interfaces follow...
@@ -173,3 +198,6 @@ clean distclean maintainer-clean:
173198
ifeq ($(PORTNAME), win)
174199
rm -f regress.def
175200
endif
201+
ifdefVPATH
202+
rm -f $(remaining_files_build)
203+
endif

‎src/test/regress/input/constraints.source

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -189,11 +189,11 @@ CREATE TABLE COPY_TBL (x INT, y TEXT, z INT,
189189
CONSTRAINT COPY_CON
190190
CHECK (x > 3 AND y <> 'check failed' AND x < 7 ));
191191

192-
COPY COPY_TBL FROM '_OBJWD_/data/constro.data';
192+
COPY COPY_TBL FROM '@abs_srcdir@/data/constro.data';
193193

194194
SELECT '' AS two, * FROM COPY_TBL;
195195

196-
COPY COPY_TBL FROM '_OBJWD_/data/constrf.data';
196+
COPY COPY_TBL FROM '@abs_srcdir@/data/constrf.data';
197197

198198
SELECT * FROM COPY_TBL;
199199

‎src/test/regress/input/copy.source

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -5,52 +5,52 @@
55
-- CLASS POPULATION
66
--(any resemblance to real life is purely coincidental)
77
--
8-
COPY aggtest FROM '_OBJWD_/data/agg.data';
8+
COPY aggtest FROM '@abs_srcdir@/data/agg.data';
99

10-
COPY onek FROM '_OBJWD_/data/onek.data';
10+
COPY onek FROM '@abs_srcdir@/data/onek.data';
1111

12-
COPY onek TO '_OBJWD_/results/onek.data';
12+
COPY onek TO '@abs_builddir@/results/onek.data';
1313

1414
DELETE FROM onek;
1515

16-
COPY onek FROM '_OBJWD_/results/onek.data';
16+
COPY onek FROM '@abs_builddir@/results/onek.data';
1717

18-
COPY tenk1 FROM '_OBJWD_/data/tenk.data';
18+
COPY tenk1 FROM '@abs_srcdir@/data/tenk.data';
1919

20-
COPY slow_emp4000 FROM '_OBJWD_/data/rect.data';
20+
COPY slow_emp4000 FROM '@abs_srcdir@/data/rect.data';
2121

22-
COPY person FROM '_OBJWD_/data/person.data';
22+
COPY person FROM '@abs_srcdir@/data/person.data';
2323

24-
COPY emp FROM '_OBJWD_/data/emp.data';
24+
COPY emp FROM '@abs_srcdir@/data/emp.data';
2525

26-
COPY student FROM '_OBJWD_/data/student.data';
26+
COPY student FROM '@abs_srcdir@/data/student.data';
2727

28-
COPY stud_emp FROM '_OBJWD_/data/stud_emp.data';
28+
COPY stud_emp FROM '@abs_srcdir@/data/stud_emp.data';
2929

30-
COPY road FROM '_OBJWD_/data/streets.data';
30+
COPY road FROM '@abs_srcdir@/data/streets.data';
3131

32-
COPY real_city FROM '_OBJWD_/data/real_city.data';
32+
COPY real_city FROM '@abs_srcdir@/data/real_city.data';
3333

34-
COPY hash_i4_heap FROM '_OBJWD_/data/hash.data';
34+
COPY hash_i4_heap FROM '@abs_srcdir@/data/hash.data';
3535

36-
COPY hash_name_heap FROM '_OBJWD_/data/hash.data';
36+
COPY hash_name_heap FROM '@abs_srcdir@/data/hash.data';
3737

38-
COPY hash_txt_heap FROM '_OBJWD_/data/hash.data';
38+
COPY hash_txt_heap FROM '@abs_srcdir@/data/hash.data';
3939

40-
COPY hash_f8_heap FROM '_OBJWD_/data/hash.data';
40+
COPY hash_f8_heap FROM '@abs_srcdir@/data/hash.data';
4141

4242
-- the data in this file has a lot of duplicates in the index key
4343
-- fields, leading to long bucket chains and lots of table expansion.
4444
-- this is therefore a stress test of the bucket overflow code (unlike
4545
-- the data in hash.data, which has unique index keys).
4646
--
47-
-- COPY hash_ovfl_heap FROM '_OBJWD_/data/hashovfl.data';
47+
-- COPY hash_ovfl_heap FROM '@abs_srcdir@/data/hashovfl.data';
4848

49-
COPY bt_i4_heap FROM '_OBJWD_/data/desc.data';
49+
COPY bt_i4_heap FROM '@abs_srcdir@/data/desc.data';
5050

51-
COPY bt_name_heap FROM '_OBJWD_/data/hash.data';
51+
COPY bt_name_heap FROM '@abs_srcdir@/data/hash.data';
5252

53-
COPY bt_txt_heap FROM '_OBJWD_/data/desc.data';
53+
COPY bt_txt_heap FROM '@abs_srcdir@/data/desc.data';
5454

55-
COPY bt_f8_heap FROM '_OBJWD_/data/hash.data';
55+
COPY bt_f8_heap FROM '@abs_srcdir@/data/hash.data';
5656

‎src/test/regress/input/create_function_1.source

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,41 +4,41 @@
44

55
CREATE FUNCTION widget_in(opaque)
66
RETURNS widget
7-
AS '_OBJWD_/regress_DLSUFFIX_'
7+
AS '@abs_builddir@/regress@DLSUFFIX@'
88
LANGUAGE 'c';
99

1010
CREATE FUNCTION widget_out(opaque)
1111
RETURNS opaque
12-
AS '_OBJWD_/regress_DLSUFFIX_'
12+
AS '@abs_builddir@/regress@DLSUFFIX@'
1313
LANGUAGE 'c';
1414

1515
CREATE FUNCTION check_primary_key ()
1616
RETURNS opaque
17-
AS '_OBJWD_/../../../contrib/spi/refint_DLSUFFIX_'
17+
AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
1818
LANGUAGE 'newC';
1919

2020
CREATE FUNCTION check_foreign_key ()
2121
RETURNS opaque
22-
AS '_OBJWD_/../../../contrib/spi/refint_DLSUFFIX_'
22+
AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
2323
LANGUAGE 'newC';
2424

2525
CREATE FUNCTION autoinc ()
2626
RETURNS opaque
27-
AS '_OBJWD_/../../../contrib/spi/autoinc_DLSUFFIX_'
27+
AS '@abs_builddir@/../../../contrib/spi/autoinc@DLSUFFIX@'
2828
LANGUAGE 'newC';
2929

3030
CREATE FUNCTION funny_dup17 ()
3131
RETURNS opaque
32-
AS '_OBJWD_/regress_DLSUFFIX_'
32+
AS '@abs_builddir@/regress@DLSUFFIX@'
3333
LANGUAGE 'newC';
3434

3535
CREATE FUNCTION ttdummy ()
3636
RETURNS opaque
37-
AS '_OBJWD_/regress_DLSUFFIX_'
37+
AS '@abs_builddir@/regress@DLSUFFIX@'
3838
LANGUAGE 'newC';
3939

4040
CREATE FUNCTION set_ttdummy (int4)
4141
RETURNS int4
42-
AS '_OBJWD_/regress_DLSUFFIX_'
42+
AS '@abs_builddir@/regress@DLSUFFIX@'
4343
LANGUAGE 'newC';
4444

‎src/test/regress/input/create_function_2.source

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -29,31 +29,31 @@ CREATE FUNCTION user_relns()
2929

3030
CREATE FUNCTION pt_in_widget(point, widget)
3131
RETURNS bool
32-
AS '_OBJWD_/regress_DLSUFFIX_'
32+
AS '@abs_builddir@/regress@DLSUFFIX@'
3333
LANGUAGE 'newC';
3434

3535
CREATE FUNCTION overpaid(emp)
3636
RETURNS bool
37-
AS '_OBJWD_/regress_DLSUFFIX_'
37+
AS '@abs_builddir@/regress@DLSUFFIX@'
3838
LANGUAGE 'newC';
3939

4040
CREATE FUNCTION boxarea(box)
4141
RETURNS float8
42-
AS '_OBJWD_/regress_DLSUFFIX_'
42+
AS '@abs_builddir@/regress@DLSUFFIX@'
4343
LANGUAGE 'newC';
4444

4545
CREATE FUNCTION interpt_pp(path, path)
4646
RETURNS point
47-
AS '_OBJWD_/regress_DLSUFFIX_'
47+
AS '@abs_builddir@/regress@DLSUFFIX@'
4848
LANGUAGE 'newC';
4949

5050
CREATE FUNCTION reverse_name(name)
5151
RETURNS name
52-
AS '_OBJWD_/regress_DLSUFFIX_'
52+
AS '@abs_builddir@/regress@DLSUFFIX@'
5353
LANGUAGE 'c';
5454

5555
--
5656
-- Function dynamic loading
5757
--
58-
LOAD '_OBJWD_/regress_DLSUFFIX_';
58+
LOAD '@abs_builddir@/regress@DLSUFFIX@';
5959

‎src/test/regress/input/misc.source

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,25 +49,25 @@ DROP TABLE tmp;
4949
--
5050
-- copy
5151
--
52-
COPY onek TO '_OBJWD_/results/onek.data';
52+
COPY onek TO '@abs_builddir@/results/onek.data';
5353

5454
DELETE FROM onek;
5555

56-
COPY onek FROM '_OBJWD_/results/onek.data';
56+
COPY onek FROM '@abs_builddir@/results/onek.data';
5757

5858
SELECT unique1 FROM onek WHERE unique1 < 2;
5959

6060
DELETE FROM onek2;
6161

62-
COPY onek2 FROM '_OBJWD_/results/onek.data';
62+
COPY onek2 FROM '@abs_builddir@/results/onek.data';
6363

6464
SELECT unique1 FROM onek2 WHERE unique1 < 2;
6565

66-
COPY BINARY stud_emp TO '_OBJWD_/results/stud_emp.data';
66+
COPY BINARY stud_emp TO '@abs_builddir@/results/stud_emp.data';
6767

6868
DELETE FROM stud_emp;
6969

70-
COPY BINARY stud_emp FROM '_OBJWD_/results/stud_emp.data';
70+
COPY BINARY stud_emp FROM '@abs_builddir@/results/stud_emp.data';
7171

7272
SELECT * FROM stud_emp;
7373

‎src/test/regress/output/constraints.source

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -265,15 +265,15 @@ SELECT * FROM INSERT_TBL;
265265
CREATE TABLE COPY_TBL (x INT, y TEXT, z INT,
266266
CONSTRAINT COPY_CON
267267
CHECK (x > 3 AND y <> 'check failed' AND x < 7 ));
268-
COPY COPY_TBL FROM '_OBJWD_/data/constro.data';
268+
COPY COPY_TBL FROM '@abs_srcdir@/data/constro.data';
269269
SELECT '' AS two, * FROM COPY_TBL;
270270
two | x | y | z
271271
-----+---+---------------+---
272272
| 4 | !check failed | 5
273273
| 6 | OK | 4
274274
(2 rows)
275275

276-
COPY COPY_TBL FROM '_OBJWD_/data/constrf.data';
276+
COPY COPY_TBL FROM '@abs_srcdir@/data/constrf.data';
277277
ERROR: copy: line 2, CopyFrom: rejected due to CHECK constraint copy_con
278278
SELECT * FROM COPY_TBL;
279279
x | y | z

‎src/test/regress/output/copy.source

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,30 +4,30 @@
44
-- CLASS POPULATION
55
--(any resemblance to real life is purely coincidental)
66
--
7-
COPY aggtest FROM '_OBJWD_/data/agg.data';
8-
COPY onek FROM '_OBJWD_/data/onek.data';
9-
COPY onek TO '_OBJWD_/results/onek.data';
7+
COPY aggtest FROM '@abs_srcdir@/data/agg.data';
8+
COPY onek FROM '@abs_srcdir@/data/onek.data';
9+
COPY onek TO '@abs_builddir@/results/onek.data';
1010
DELETE FROM onek;
11-
COPY onek FROM '_OBJWD_/results/onek.data';
12-
COPY tenk1 FROM '_OBJWD_/data/tenk.data';
13-
COPY slow_emp4000 FROM '_OBJWD_/data/rect.data';
14-
COPY person FROM '_OBJWD_/data/person.data';
15-
COPY emp FROM '_OBJWD_/data/emp.data';
16-
COPY student FROM '_OBJWD_/data/student.data';
17-
COPY stud_emp FROM '_OBJWD_/data/stud_emp.data';
18-
COPY road FROM '_OBJWD_/data/streets.data';
19-
COPY real_city FROM '_OBJWD_/data/real_city.data';
20-
COPY hash_i4_heap FROM '_OBJWD_/data/hash.data';
21-
COPY hash_name_heap FROM '_OBJWD_/data/hash.data';
22-
COPY hash_txt_heap FROM '_OBJWD_/data/hash.data';
23-
COPY hash_f8_heap FROM '_OBJWD_/data/hash.data';
11+
COPY onek FROM '@abs_builddir@/results/onek.data';
12+
COPY tenk1 FROM '@abs_srcdir@/data/tenk.data';
13+
COPY slow_emp4000 FROM '@abs_srcdir@/data/rect.data';
14+
COPY person FROM '@abs_srcdir@/data/person.data';
15+
COPY emp FROM '@abs_srcdir@/data/emp.data';
16+
COPY student FROM '@abs_srcdir@/data/student.data';
17+
COPY stud_emp FROM '@abs_srcdir@/data/stud_emp.data';
18+
COPY road FROM '@abs_srcdir@/data/streets.data';
19+
COPY real_city FROM '@abs_srcdir@/data/real_city.data';
20+
COPY hash_i4_heap FROM '@abs_srcdir@/data/hash.data';
21+
COPY hash_name_heap FROM '@abs_srcdir@/data/hash.data';
22+
COPY hash_txt_heap FROM '@abs_srcdir@/data/hash.data';
23+
COPY hash_f8_heap FROM '@abs_srcdir@/data/hash.data';
2424
-- the data in this file has a lot of duplicates in the index key
2525
-- fields, leading to long bucket chains and lots of table expansion.
2626
-- this is therefore a stress test of the bucket overflow code (unlike
2727
-- the data in hash.data, which has unique index keys).
2828
--
29-
-- COPY hash_ovfl_heap FROM '_OBJWD_/data/hashovfl.data';
30-
COPY bt_i4_heap FROM '_OBJWD_/data/desc.data';
31-
COPY bt_name_heap FROM '_OBJWD_/data/hash.data';
32-
COPY bt_txt_heap FROM '_OBJWD_/data/desc.data';
33-
COPY bt_f8_heap FROM '_OBJWD_/data/hash.data';
29+
-- COPY hash_ovfl_heap FROM '@abs_srcdir@/data/hashovfl.data';
30+
COPY bt_i4_heap FROM '@abs_srcdir@/data/desc.data';
31+
COPY bt_name_heap FROM '@abs_srcdir@/data/hash.data';
32+
COPY bt_txt_heap FROM '@abs_srcdir@/data/desc.data';
33+
COPY bt_f8_heap FROM '@abs_srcdir@/data/hash.data';

‎src/test/regress/output/create_function_1.source

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,34 +3,34 @@
33
--
44
CREATE FUNCTION widget_in(opaque)
55
RETURNS widget
6-
AS '_OBJWD_/regress_DLSUFFIX_'
6+
AS '@abs_builddir@/regress@DLSUFFIX@'
77
LANGUAGE 'c';
88
NOTICE: ProcedureCreate: type 'widget' is not yet defined
99
CREATE FUNCTION widget_out(opaque)
1010
RETURNS opaque
11-
AS '_OBJWD_/regress_DLSUFFIX_'
11+
AS '@abs_builddir@/regress@DLSUFFIX@'
1212
LANGUAGE 'c';
1313
CREATE FUNCTION check_primary_key ()
1414
RETURNS opaque
15-
AS '_OBJWD_/../../../contrib/spi/refint_DLSUFFIX_'
15+
AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
1616
LANGUAGE 'newC';
1717
CREATE FUNCTION check_foreign_key ()
1818
RETURNS opaque
19-
AS '_OBJWD_/../../../contrib/spi/refint_DLSUFFIX_'
19+
AS '@abs_builddir@/../../../contrib/spi/refint@DLSUFFIX@'
2020
LANGUAGE 'newC';
2121
CREATE FUNCTION autoinc ()
2222
RETURNS opaque
23-
AS '_OBJWD_/../../../contrib/spi/autoinc_DLSUFFIX_'
23+
AS '@abs_builddir@/../../../contrib/spi/autoinc@DLSUFFIX@'
2424
LANGUAGE 'newC';
2525
CREATE FUNCTION funny_dup17 ()
2626
RETURNS opaque
27-
AS '_OBJWD_/regress_DLSUFFIX_'
27+
AS '@abs_builddir@/regress@DLSUFFIX@'
2828
LANGUAGE 'newC';
2929
CREATE FUNCTION ttdummy ()
3030
RETURNS opaque
31-
AS '_OBJWD_/regress_DLSUFFIX_'
31+
AS '@abs_builddir@/regress@DLSUFFIX@'
3232
LANGUAGE 'newC';
3333
CREATE FUNCTION set_ttdummy (int4)
3434
RETURNS int4
35-
AS '_OBJWD_/regress_DLSUFFIX_'
35+
AS '@abs_builddir@/regress@DLSUFFIX@'
3636
LANGUAGE 'newC';

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp