You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

67 lines
2.7 KiB

# --- SDE-COPYRIGHT-NOTE-BEGIN ---
# This copyright note is auto-generated by ./scripts/Create-CopyPatch.
#
# Filename: package/.../mysql/mysql-5.5.17-embedded-library-shared-1.patch
# Copyright (C) 2012 The OpenSDE Project
#
# More information can be found in the files COPYING and README.
#
# This patch file is dual-licensed. It is available under the license the
# patched project is licensed under, as long as it is an OpenSource license
# as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
# of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
# --- SDE-COPYRIGHT-NOTE-END ---
Submitted By: Ragnar Thomsen (rthomsen at linuxfromscratch dot org)
Date: 2012-03-21
Initial Package Version: 5.5.17
Origin: Gentoo Git
Description: Fixes mysql to build a shared version of the embedded server library (libmysqld.so) used by amarok2
=== modified file 'cmake/libutils.cmake'
--- a/cmake/libutils.cmake 2010-01-26 12:47:34 +0000
+++ b/cmake/libutils.cmake 2010-03-04 21:19:38 +0000
@@ -268,6 +268,16 @@ MACRO(MERGE_LIBRARIES)
MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
ENDIF()
SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_INTERFACE_LIBRARIES "")
+
+ IF(ARG_SHARED AND LINK_FLAG_NO_UNDEFINED)
+ # Do not allow undefined symbols in shared libraries
+ GET_TARGET_PROPERTY(TARGET_LINK_FLAGS ${TARGET} LINK_FLAGS)
+ IF(NOT TARGET_LINK_FLAGS)
+ SET(TARGET_LINK_FLAGS)
+ ENDIF()
+ SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_FLAGS
+ "${TARGET_LINK_FLAGS} ${LINK_FLAG_NO_UNDEFINED}")
+ ENDIF()
ENDMACRO()
FUNCTION(GET_DEPENDEND_OS_LIBS target result)
=== modified file 'libmysqld/CMakeLists.txt'
--- a/libmysqld/CMakeLists.txt 2010-02-20 19:40:03 +0000
+++ b/libmysqld/CMakeLists.txt 2010-03-04 21:19:38 +0000
@@ -138,7 +138,17 @@ IF(MSVC)
${CMAKE_STATIC_LIBRARY_PREFIX}mysqld-debug)
ENDIF()
-IF(MSVC AND NOT DISABLE_SHARED)
- MERGE_LIBRARIES(libmysqld SHARED ${LIBS} EXPORTS ${CLIENT_API_FUNCTIONS}
- COMPONENT Embedded)
+IF(NOT DISABLE_SHARED)
+ MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS})
+ IF(UNIX)
+ # Name the shared library, handle versioning (provides same api as client library
+ # hence the same version)
+ SET_TARGET_PROPERTIES(libmysqld PROPERTIES
+ OUTPUT_NAME mysqld
+ VERSION "${SHARED_LIB_MAJOR_VERSION}.0.0"
+ SOVERSION "${SHARED_LIB_MAJOR_VERSION}")
+ # Clean direct output flags, as 2 targets have the same base name (libmysqld)
+ SET_TARGET_PROPERTIES(libmysqld PROPERTIES CLEAN_DIRECT_OUTPUT 1)
+ SET_TARGET_PROPERTIES(mysqlserver PROPERTIES CLEAN_DIRECT_OUTPUT 1)
+ ENDIF()
ENDIF()