diff options
author | Tor Didriksen <tor.didriksen@oracle.com> | 2014-02-25 09:07:44 +0100 |
---|---|---|
committer | Tor Didriksen <tor.didriksen@oracle.com> | 2014-02-25 09:07:44 +0100 |
commit | bec1ce66447ad659a579fb75ec791a457710ca50 (patch) | |
tree | 64e245beab2d1a32f26928cb556050849763b951 /scripts | |
parent | d18f67bbab25cb15b0ca2b91693a7e134ac0cbb4 (diff) | |
download | mariadb-git-bec1ce66447ad659a579fb75ec791a457710ca50.tar.gz |
Bug#18235669 MYSQL_CONFIG TO PROVIDE R FLAG ON SOLARIS
'mysql_config --libs' outputs -L/path/to/library
on SunOS we also want it to output '-R/path/to/library'
in order to find libraries at runtime.
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/CMakeLists.txt | 10 | ||||
-rw-r--r-- | scripts/mysql_config.pl.in | 4 | ||||
-rw-r--r-- | scripts/mysql_config.sh | 8 |
3 files changed, 15 insertions, 7 deletions
diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt index b91c50a9614..6596396191a 100644 --- a/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -228,6 +228,11 @@ SET(pkglibdir ${prefix}/${INSTALL_LIBDIR}) SET(pkgplugindir ${prefix}/${INSTALL_PLUGINDIR}) SET(localstatedir ${MYSQL_DATADIR}) +SET(RPATH_OPTION "") +IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS") + SET(RPATH_OPTION "-R$pkglibdir") +ENDIF() + # some scripts use @TARGET_LINUX@ IF(CMAKE_SYSTEM_NAME MATCHES "Linux") SET(TARGET_LINUX "true") @@ -312,6 +317,9 @@ IF(WIN32) INSTALL_SCRIPT(${CMAKE_CURRENT_BINARY_DIR}/${file}.pl COMPONENT Server_Scripts) ENDFOREACH() ELSE() + # Configure this one, for testing, but do not install it. + CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_config.pl.in + ${CMAKE_CURRENT_BINARY_DIR}/mysql_config.pl ESCAPE_QUOTES @ONLY) # On Unix, most of the files end up in the bin directory SET(mysql_config_COMPONENT COMPONENT Development) SET(BIN_SCRIPTS diff --git a/scripts/mysql_config.pl.in b/scripts/mysql_config.pl.in index 78200278833..bced4a16360 100644 --- a/scripts/mysql_config.pl.in +++ b/scripts/mysql_config.pl.in @@ -1,7 +1,7 @@ #!/usr/bin/perl # -*- cperl -*- # -# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -189,7 +189,7 @@ if ( $^O eq "MSWin32" ) } else { - my $linkpath = "-L$pkglibdir"; + my $linkpath = "-L$pkglibdir @RPATH_OPTION@"; @lib_opts = ($linkpath,"-lmysqlclient"); @lib_r_opts = ($linkpath,"-lmysqlclient_r"); @lib_e_opts = ($linkpath,"-lmysqld"); diff --git a/scripts/mysql_config.sh b/scripts/mysql_config.sh index 92960756777..327b03504cd 100644 --- a/scripts/mysql_config.sh +++ b/scripts/mysql_config.sh @@ -1,5 +1,5 @@ #!/bin/sh -# Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. +# Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -110,10 +110,10 @@ fi # Create options # We intentionally add a space to the beginning and end of lib strings, simplifies replace later -libs=" $ldflags -L$pkglibdir -lmysqlclient @ZLIB_DEPS@ @NON_THREADED_LIBS@" +libs=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqlclient @ZLIB_DEPS@ @NON_THREADED_LIBS@" libs="$libs @openssl_libs@ @STATIC_NSS_FLAGS@ " -libs_r=" $ldflags -L$pkglibdir -lmysqlclient_r @ZLIB_DEPS@ @CLIENT_LIBS@ @openssl_libs@ " -embedded_libs=" $ldflags -L$pkglibdir -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ " +libs_r=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqlclient_r @ZLIB_DEPS@ @CLIENT_LIBS@ @openssl_libs@ " +embedded_libs=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ " if [ -r "$pkglibdir/libmygcc.a" ]; then # When linking against the static library with a different version of GCC |