aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2011-06-14 16:39:47 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2011-06-14 16:39:47 -0400
commit1f5e6cd90590742f4344e423826dae09306d755b (patch)
treef513c32c7c386eecccbf86cc4573d58dfe5a9665
parent8f1eaf884d71106c1516a8f7af4d7beee992da01 (diff)
downloadpostgresql-1f5e6cd90590742f4344e423826dae09306d755b.tar.gz
postgresql-1f5e6cd90590742f4344e423826dae09306d755b.zip
Fix assorted issues with build and install paths containing spaces.
Apparently there is no buildfarm critter exercising this case after all, because it fails in several places. With this patch, build, install, check-world, and installcheck-world pass for me on OS X.
-rwxr-xr-xconfig/mkinstalldirs8
-rw-r--r--src/Makefile.shlib2
-rw-r--r--src/makefiles/pgxs.mk2
-rw-r--r--src/pl/plperl/GNUmakefile2
-rw-r--r--src/pl/plpython/Makefile2
-rw-r--r--src/pl/tcl/Makefile2
-rw-r--r--src/test/regress/GNUmakefile12
7 files changed, 16 insertions, 14 deletions
diff --git a/config/mkinstalldirs b/config/mkinstalldirs
index 070b418022b..d7b533bccef 100755
--- a/config/mkinstalldirs
+++ b/config/mkinstalldirs
@@ -105,13 +105,15 @@ esac
for file
do
- set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
+ # pathcomp starts with leading slash if present, else empty
+ pathcomp=`echo "$file" | sed -ne 's|^\(.\).*$|\1|;s|[^/]||;p'`
+ # swap spaces and slashes, then split on spaces
+ set fnord `echo "$file" | tr ' /' '/ '`
shift
- pathcomp=
for d
do
- pathcomp="$pathcomp$d"
+ pathcomp="$pathcomp"`echo "$d" | tr '/' ' '`
case $pathcomp in
-*) pathcomp=./$pathcomp ;;
esac
diff --git a/src/Makefile.shlib b/src/Makefile.shlib
index 10cc94a4888..1de8838a4fe 100644
--- a/src/Makefile.shlib
+++ b/src/Makefile.shlib
@@ -107,7 +107,7 @@ ifeq ($(PORTNAME), darwin)
ifeq ($(DLTYPE), library)
# linkable library
DLSUFFIX := .dylib
- LINK.shared = $(COMPILER) -dynamiclib -install_name $(libdir)/lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX) $(version_link) $(exported_symbols_list) -multiply_defined suppress
+ LINK.shared = $(COMPILER) -dynamiclib -install_name "$(libdir)/lib$(NAME).$(SO_MAJOR_VERSION)$(DLSUFFIX)" $(version_link) $(exported_symbols_list) -multiply_defined suppress
else
# loadable module (default case)
DLSUFFIX := .so
diff --git a/src/makefiles/pgxs.mk b/src/makefiles/pgxs.mk
index 607201caaf8..a825fe6e111 100644
--- a/src/makefiles/pgxs.mk
+++ b/src/makefiles/pgxs.mk
@@ -238,7 +238,7 @@ endif
# against installed postmaster
installcheck: submake
- $(top_builddir)/src/test/regress/pg_regress --psqldir=$(PSQLDIR) $(REGRESS_OPTS) $(REGRESS)
+ $(top_builddir)/src/test/regress/pg_regress --psqldir="$(PSQLDIR)" $(REGRESS_OPTS) $(REGRESS)
# in-tree test doesn't work yet (no way to install my shared library)
#check: all submake
diff --git a/src/pl/plperl/GNUmakefile b/src/pl/plperl/GNUmakefile
index 2da437d470e..fed7508ad8c 100644
--- a/src/pl/plperl/GNUmakefile
+++ b/src/pl/plperl/GNUmakefile
@@ -103,7 +103,7 @@ uninstall:
rm -f '$(DESTDIR)$(pkglibdir)/plperl$(DLSUFFIX)'
installcheck: submake
- $(top_builddir)/src/test/regress/pg_regress --psqldir=$(PSQLDIR) $(REGRESS_OPTS) $(REGRESS)
+ $(top_builddir)/src/test/regress/pg_regress --psqldir="$(PSQLDIR)" $(REGRESS_OPTS) $(REGRESS)
.PHONY: submake
submake:
diff --git a/src/pl/plpython/Makefile b/src/pl/plpython/Makefile
index 9d02f4d7f41..c5165986394 100644
--- a/src/pl/plpython/Makefile
+++ b/src/pl/plpython/Makefile
@@ -105,7 +105,7 @@ uninstall:
rm -f '$(DESTDIR)$(pkglibdir)/plpython$(DLSUFFIX)'
installcheck: submake
- $(top_builddir)/src/test/regress/pg_regress --psqldir=$(PSQLDIR) $(REGRESS_OPTS) $(REGRESS)
+ $(top_builddir)/src/test/regress/pg_regress --psqldir="$(PSQLDIR)" $(REGRESS_OPTS) $(REGRESS)
.PHONY: submake
submake:
diff --git a/src/pl/tcl/Makefile b/src/pl/tcl/Makefile
index 6fc6cc272ff..29905d0266c 100644
--- a/src/pl/tcl/Makefile
+++ b/src/pl/tcl/Makefile
@@ -92,7 +92,7 @@ uninstall:
$(MAKE) -C modules $@
installcheck: submake
- $(top_builddir)/src/test/regress/pg_regress --psqldir=$(PSQLDIR) $(REGRESS_OPTS) $(REGRESS)
+ $(top_builddir)/src/test/regress/pg_regress --psqldir="$(PSQLDIR)" $(REGRESS_OPTS) $(REGRESS)
.PHONY: submake
submake:
diff --git a/src/test/regress/GNUmakefile b/src/test/regress/GNUmakefile
index d126ae5fa40..e1553fcf607 100644
--- a/src/test/regress/GNUmakefile
+++ b/src/test/regress/GNUmakefile
@@ -92,7 +92,7 @@ output_files := $(foreach file, $(file_list), expected/$(file).out)
all: $(input_files) $(output_files)
ifneq ($(PORTNAME),win32)
-abs_srcdir := $(shell cd $(srcdir) && pwd)
+abs_srcdir := $(shell cd "$(srcdir)" && pwd)
abs_builddir := $(shell pwd)
else
abs_srcdir := $(shell cd $(srcdir) && sh -c "pwd -W")
@@ -148,17 +148,17 @@ all-spi:
check: all
-rm -rf ./testtablespace
mkdir ./testtablespace
- ./pg_regress --temp-install=./tmp_check --top-builddir=$(top_builddir) --temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
+ ./pg_regress --temp-install=./tmp_check --top-builddir=$(top_builddir) --temp-port=$(TEMP_PORT) --schedule="$(srcdir)"/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
installcheck: all
-rm -rf ./testtablespace
mkdir ./testtablespace
- ./pg_regress --psqldir=$(PSQLDIR) --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE)
+ ./pg_regress --psqldir="$(PSQLDIR)" --schedule="$(srcdir)"/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE)
installcheck-parallel: all
-rm -rf ./testtablespace
mkdir ./testtablespace
- ./pg_regress --psqldir=$(PSQLDIR) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
+ ./pg_regress --psqldir="$(PSQLDIR)" --schedule="$(srcdir)"/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE)
# old interfaces follow...
@@ -168,10 +168,10 @@ runtest: installcheck
runtest-parallel: installcheck-parallel
bigtest:
- ./pg_regress --psqldir=$(PSQLDIR) --schedule=$(srcdir)/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE) numeric_big
+ ./pg_regress --psqldir="$(PSQLDIR)" --schedule="$(srcdir)"/serial_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE) numeric_big
bigcheck:
- ./pg_regress --temp-install=./tmp_check --top-builddir=$(top_builddir) --temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) numeric_big
+ ./pg_regress --temp-install=./tmp_check --top-builddir=$(top_builddir) --temp-port=$(TEMP_PORT) --schedule="$(srcdir)"/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) numeric_big
##