From 5085132c6d3f5ea9c5dec18ee6a2a70ddf4e91b5 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Tue, 11 May 1999 22:57:50 +0000
Subject: [PATCH] Fix configure to generate correct expansion of library
 directory in pl/plpgsql/src/mklang.sql.

---
 src/configure                    | 10 ++++++++++
 src/configure.in                 | 20 ++++++++++++++++++++
 src/pl/plpgsql/src/mklang.sql.in |  4 ++--
 3 files changed, 32 insertions(+), 2 deletions(-)

diff --git a/src/configure b/src/configure
index b991dc6f4b4..ad220cc1b08 100755
--- a/src/configure
+++ b/src/configure
@@ -7052,6 +7052,15 @@ fi
 	
 fi
 
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+eval expanded_libdir="$libdir"
+eval expanded_libdir="$expanded_libdir"
+
+
+
 trap '' 1 2 15
 cat > confcache <<\EOF
 # This file is a shell script that caches the results of configure
@@ -7282,6 +7291,7 @@ s%@X_PRE_LIBS@%$X_PRE_LIBS%g
 s%@X_LIBS@%$X_LIBS%g
 s%@X_EXTRA_LIBS@%$X_EXTRA_LIBS%g
 s%@X11_LIBS@%$X11_LIBS%g
+s%@expanded_libdir@%$expanded_libdir%g
 
 CEOF
 EOF
diff --git a/src/configure.in b/src/configure.in
index 311e4c558da..792af606dfc 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1138,6 +1138,26 @@ then
 	AC_SUBST(USE_ODBC)
 fi
 
+dnl Output files that are neither makefiles nor shell scripts probably
+dnl need fully-expanded substitutions, rather than partial expansions
+dnl that include references to other variables.  Currently the only
+dnl such item that's needed is an expanded version of libdir, but
+dnl others may be needed someday.  NOTE: 'eval' technique only copes
+dnl with one level of indirect reference per expansion; two levels is
+dnl currently enough for libdir, but it's ugly...
+
+dnl First we have to force 'NONE' prefix to be expanded itself.
+dnl For some reason, autoconf 2.13 doesn't do this until AC_OUTPUT,
+dnl which is too late...
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+eval expanded_libdir="$libdir"
+eval expanded_libdir="$expanded_libdir"
+AC_SUBST(expanded_libdir)
+
+dnl Finally ready to produce output files ...
+
 AC_OUTPUT(
 	GNUmakefile
 	Makefile.global
diff --git a/src/pl/plpgsql/src/mklang.sql.in b/src/pl/plpgsql/src/mklang.sql.in
index 2d0d9437304..18235d0bca9 100644
--- a/src/pl/plpgsql/src/mklang.sql.in
+++ b/src/pl/plpgsql/src/mklang.sql.in
@@ -1,11 +1,11 @@
 --
 -- PL/pgSQL language declaration
 --
--- $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/mklang.sql.in,v 1.3 1999/05/11 03:30:41 momjian Exp $
+-- $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/mklang.sql.in,v 1.4 1999/05/11 22:57:50 tgl Exp $
 --
 
 create function plpgsql_call_handler() returns opaque
-	as '@libdir@/plpgsql.so'
+	as '@expanded_libdir@/plpgsql@DLSUFFIX@'
 	language 'C';
 
 create trusted procedural language 'plpgsql'
-- 
GitLab