summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTatiana A. Nurnberg <azundris@mysql.com>2008-11-10 22:12:15 +0100
committerTatiana A. Nurnberg <azundris@mysql.com>2008-11-10 22:12:15 +0100
commitc5da8fbe16caefe077116c35df01d37280bada1c (patch)
treea0e997f6f5a80bb2cf7908ccd736574929c3c289
parent9a0637750a4775e199b3915bd83e630540729d64 (diff)
downloadmariadb-git-c5da8fbe16caefe077116c35df01d37280bada1c.tar.gz
Bug#34025: mysql_config is not returning -ldl lib flag needed when using embedded server
mysql_config did not output -ldl (or equivalent) when needed for --libmysqld-libs, so its output could be insufficient to build an application using the embedded server. LIBDL was already set in configure; it's now propagated all the way into the relevant mysql_config scripts. scripts/Makefile.am: We "manually" replace configure's constants in .sh scripts using sed, so AC_SUBST() alone is not good enough. Add LIBDL to the substitution list; we'll be needing it for mysql_config --libmysqld-libs scripts/mysql_config.pl.in: Add LIBDL (usually -ldl) to output of mysql_config --libmysqld-libs (perl version) scripts/mysql_config.sh: Add LIBDL (usually -ldl) to output of mysql_config --libmysqld-libs (shell version)
-rw-r--r--scripts/Makefile.am1
-rw-r--r--scripts/mysql_config.pl.in2
-rw-r--r--scripts/mysql_config.sh2
3 files changed, 3 insertions, 2 deletions
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
index ac43bb7b0a4..0292617c7a5 100644
--- a/scripts/Makefile.am
+++ b/scripts/Makefile.am
@@ -162,6 +162,7 @@ SUFFIXES = .sh
-e 's!@''CFLAGS''@!@CFLAGS@!'\
-e 's!@''CXXFLAGS''@!@CXXFLAGS@!'\
-e 's!@''LDFLAGS''@!@LDFLAGS@!'\
+ -e 's!@''LIBDL''@!@LIBDL@!'\
-e 's!@''CLIENT_LIBS''@!@CLIENT_LIBS@!' \
-e 's!@''ZLIB_LIBS''@!@ZLIB_LIBS@!' \
-e 's!@''LIBS''@!@LIBS@!' \
diff --git a/scripts/mysql_config.pl.in b/scripts/mysql_config.pl.in
index 3ae8baf7db0..21896711fa8 100644
--- a/scripts/mysql_config.pl.in
+++ b/scripts/mysql_config.pl.in
@@ -202,7 +202,7 @@ $flags->{libs} =
$flags->{libs_r} =
[@ldflags,@lib_r_opts,'@ZLIB_DEPS@','@LIBS@','@openssl_libs@'];
$flags->{embedded_libs} =
- [@ldflags,@lib_e_opts,'@ZLIB_DEPS@','@LIBS@','@WRAPLIBS@','@innodb_system_libs@','@openssl_libs@'];
+ [@ldflags,@lib_e_opts,'@LIBDL@','@ZLIB_DEPS@','@LIBS@','@WRAPLIBS@','@innodb_system_libs@','@openssl_libs@'];
$flags->{include} = ["-I$pkgincludedir"];
$flags->{cflags} = [@{$flags->{include}},split(" ",'@CFLAGS@')];
diff --git a/scripts/mysql_config.sh b/scripts/mysql_config.sh
index c16d9bb62e5..efc82544bc0 100644
--- a/scripts/mysql_config.sh
+++ b/scripts/mysql_config.sh
@@ -107,7 +107,7 @@ fi
libs=" $ldflags -L$pkglibdir -lmysqlclient @ZLIB_DEPS@ @NON_THREADED_LIBS@"
libs="$libs @openssl_libs@ @STATIC_NSS_FLAGS@ "
libs_r=" $ldflags -L$pkglibdir -lmysqlclient_r @ZLIB_DEPS@ @LIBS@ @openssl_libs@ "
-embedded_libs=" $ldflags -L$pkglibdir -lmysqld @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @innodb_system_libs@ @openssl_libs@ "
+embedded_libs=" $ldflags -L$pkglibdir -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @innodb_system_libs@ @openssl_libs@ "
if [ -r "$pkglibdir/libmygcc.a" ]; then
# When linking against the static library with a different version of GCC