9c7c797
The symbol versioning solution for libmysqlclient in mysql 5.1 was pretty
9c7c797
awful (export everything) and as of 5.5.8 the cmake build scripts have
9c7c797
forgotten the issue entirely.  So we now maintain our own list of exported
9c7c797
symbols and jam it into the build with this hack.
9c7c797
9c7c797
9c7c797
diff -up mysql-5.5.28/libmysql/CMakeLists.txt.p7 mysql-5.5.28/libmysql/CMakeLists.txt
9c7c797
--- mysql-5.5.28/libmysql/CMakeLists.txt.p7	2012-08-29 10:50:46.000000000 +0200
9c7c797
+++ mysql-5.5.28/libmysql/CMakeLists.txt	2012-12-06 14:15:03.905461517 +0100
9c7c797
@@ -209,7 +209,7 @@ IF(NOT DISABLE_SHARED)
9c7c797
         SET(libmysql_link_flags)
9c7c797
       ENDIF()
9c7c797
       SET_TARGET_PROPERTIES(libmysql PROPERTIES LINK_FLAGS 
9c7c797
-        "${libmysql_link_flags} ${LINK_FLAG_NO_UNDEFINED}")
9c7c797
+        "${libmysql_link_flags} -Wl,--version-script=libmysql.version ${LINK_FLAG_NO_UNDEFINED}")
9c7c797
     ENDIF() 
9c7c797
     # clean direct output needs to be set several targets have the same name
9c7c797
     #(mysqlclient in this case)