18195512 mysql_config --libs in MySQL 5.5 don't return some libraries s11-update
authorLaasya Moduludu <laasya.moduludu@oracle.com>
Thu, 17 Apr 2014 21:50:14 -0700
branchs11-update
changeset 3080 d5755c2e7f35
parent 3079 68f0a63eb0c1
child 3084 08370e6501dc
18195512 mysql_config --libs in MySQL 5.5 don't return some libraries
components/mysql-5-5/patches/mysql_config.patch
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/components/mysql-5-5/patches/mysql_config.patch	Thu Apr 17 21:50:14 2014 -0700
@@ -0,0 +1,91 @@
+=== modified file 'cmake/libutils.cmake'
+--- a/cmake/libutils.cmake	revid:[email protected]
++++ b/cmake/libutils.cmake	revid:[email protected]
+@@ -1,4 +1,4 @@
+-# Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
++# Copyright (c) 2009, 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
+@@ -158,6 +158,7 @@ MACRO(MERGE_STATIC_LIBS TARGET OUTPUT_NA
+   IF(OSLIBS)
+     LIST(REMOVE_DUPLICATES OSLIBS)
+     TARGET_LINK_LIBRARIES(${TARGET} ${OSLIBS})
++    MESSAGE(STATUS "Library ${TARGET} depends on OSLIBS ${OSLIBS}")
+   ENDIF()
+ 
+   # Make the generated dummy source file depended on all static input
+
+=== modified file 'scripts/CMakeLists.txt'
+--- a/scripts/CMakeLists.txt	revid:[email protected]
++++ b/scripts/CMakeLists.txt	revid:[email protected]
+@@ -229,6 +229,11 @@
+ 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")
+@@ -313,6 +318,9 @@
+     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
+
+=== modified file 'scripts/mysql_config.pl.in'
+--- a/scripts/mysql_config.pl.in	revid:[email protected]
++++ b/scripts/mysql_config.pl.in	revid:[email protected]
+@@ -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");
+
+=== modified file 'scripts/mysql_config.sh'
+--- a/scripts/mysql_config.sh	revid:[email protected]
++++ b/scripts/mysql_config.sh	revid:[email protected]
+@@ -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 @@
+ 
+ # 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
+