Full story below, but in short:
I see that there is a config/missing script in source, and that
Makefile.global.in references it:
> src/Makefile.global.in:missing = $(SHELL)
$(top_srcdir)/config/missing
AFAICT the problem is that missing wasn't included in install or
uninstall in config/Makefile. Attached patch fixes that, and results in
missing being properly installed in lib/pgxs/config.
-------- Forwarded Message --------
Subject: [GENERAL] pgxs/config/missing is... missing
Date: Wed, 28 Oct 2015 12:54:54 -0500
From: Jim Nasby <[email protected]>
To: pgsql-general <[email protected]>
CC: David E. Wheeler <[email protected]>
I'm trying to install pgTAP on a FreeBSD machine and running into an odd
problem:
sed -e 's,MODULE_PATHNAME,$libdir/pgtap,g' -e 's,__OS__,freebsd,g' -e
's,__VERSION__,0.95,g' sql/pgtap-core.sql > sql/pgtap-core.tmp
/bin/sh /usr/local/lib/postgresql/pgxs/src/makefiles/../../config/missing perl
compat/gencore 0 sql/pgtap-core.tmp > sql/pgtap-core.sql
cannot open /usr/local/lib/postgresql/pgxs/src/makefiles/../../config/missing:
No such file or directory
Makefile:124: recipe for target 'sql/pgtap-core.sql' failed
That particular recipe is
sql/pgtap-core.sql: sql/pgtap.sql.in
cp $< $@
sed -e 's,sql/pgtap,sql/pgtap-core,g' compat/install-8.4.patch | patch
-p0
sed -e 's,sql/pgtap,sql/pgtap-core,g' compat/install-8.3.patch | patch
-p0
sed -e 's,MODULE_PATHNAME,$$libdir/pgtap,g' -e 's,__OS__,$(OSNAME),g' -e
's,__VERSION__,$(NUMVERSION),g' sql/pgtap-core.sql > sql/pgtap-core.tmp
$(PERL) compat/gencore 0 sql/pgtap-core.tmp > sql/pgtap-core.sql
rm sql/pgtap-core.tmp
and it's the $(PERL) that's failing. If I add this recipe
print-% : ; @echo $* = $($*)
and do
gmake print-PERL
I indeed get
PERL = /bin/sh
/usr/local/lib/postgresql/pgxs/src/makefiles/../../config/missing perl
even after explicitly exporting PERL=/usr/local/bin/perl
I see that there is a config/missing script in source, and that
Makefile.global.in references it:
src/Makefile.global.in:missing = $(SHELL)
$(top_srcdir)/config/missing
Any ideas why it's not being installed, or why the PGXS Makefile is
ignoring/over-riding $PERL?
--
Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX
Experts in Analytics, Data Architecture and PostgreSQL
Data in Trouble? Get it in Treble! http://BlueTreble.com
--
Sent via pgsql-general mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general
diff --git a/config/Makefile b/config/Makefile
index da12838..67e7998 100644
--- a/config/Makefile
+++ b/config/Makefile
@@ -7,9 +7,11 @@ include $(top_builddir)/src/Makefile.global
install: all installdirs
$(INSTALL_SCRIPT) $(srcdir)/install-sh
'$(DESTDIR)$(pgxsdir)/config/install-sh'
+ $(INSTALL_SCRIPT) $(srcdir)/missing
'$(DESTDIR)$(pgxsdir)/config/missing'
installdirs:
$(MKDIR_P) '$(DESTDIR)$(pgxsdir)/config'
uninstall:
rm -f '$(DESTDIR)$(pgxsdir)/config/install-sh'
+ rm -f '$(DESTDIR)$(pgxsdir)/config/missing'
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers