Gentoo Archives: gentoo-commits

From: Brian Evans <grknight@×××××××.com>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/mysql-extras:master commit in: /
Date: Tue, 06 May 2014 19:30:01
Message-Id: 1399404586.19f09808ad93aa2941ed4aab515b66b8b4563e21.grknight.pub@gentoo
1 commit: 19f09808ad93aa2941ed4aab515b66b8b4563e21
2 Author: Brian Evans <grknight <AT> tuffmail <DOT> com>
3 AuthorDate: Tue May 6 19:29:46 2014 +0000
4 Commit: Brian Evans <grknight <AT> lavabit <DOT> com>
5 CommitDate: Tue May 6 19:29:46 2014 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/mysql-extras.git;a=commit;h=19f09808
7
8 Respon elib patch for percona 5.5.37
9
10 ---
11 00000_index.txt | 8 +-
12 20006_all_cmake_elib-percona-5.5.37.patch | 200 ++++++++++++++++++++++++++++++
13 2 files changed, 207 insertions(+), 1 deletion(-)
14
15 diff --git a/00000_index.txt b/00000_index.txt
16 index 45589ac..3111ac7 100644
17 --- a/00000_index.txt
18 +++ b/00000_index.txt
19 @@ -1601,7 +1601,13 @@
20 @@ Also install static libs by ENABLE_STATIC_LIBS
21
22 @patch 20006_all_cmake_elib-percona-5.5.36.patch
23 -@ver 5.05.36.00 to 5.05.99.99
24 +@ver 5.05.36.00 to 5.05.36.99
25 +@pn percona-server
26 +@@ Add ELIBPATH to split client and embedded libs
27 +@@ Also install static libs by ENABLE_STATIC_LIBS
28 +
29 +@patch 20006_all_cmake_elib-percona-5.5.37.patch
30 +@ver 5.05.37.00 to 5.05.99.99
31 @pn percona-server
32 @@ Add ELIBPATH to split client and embedded libs
33 @@ Also install static libs by ENABLE_STATIC_LIBS
34
35 diff --git a/20006_all_cmake_elib-percona-5.5.37.patch b/20006_all_cmake_elib-percona-5.5.37.patch
36 new file mode 100644
37 index 0000000..557f932
38 --- /dev/null
39 +++ b/20006_all_cmake_elib-percona-5.5.37.patch
40 @@ -0,0 +1,200 @@
41 +diff -ur mysql-old/cmake/install_layout.cmake mysql/cmake/install_layout.cmake
42 +--- mysql-old/cmake/install_layout.cmake 2014-01-20 00:14:06.581799638 -0100
43 ++++ mysql/cmake/install_layout.cmake 2014-01-20 00:15:27.647802721 -0100
44 +@@ -43,7 +43,8 @@
45 + # - INSTALL_SBINDIR (directory with mysqld)
46 + # - INSTALL_SCRIPTDIR (several scripts, rarely used)
47 + #
48 +-# - INSTALL_LIBDIR (directory with client end embedded libraries)
49 ++# - INSTALL_LIBDIR (directory with client libraries)
50 ++# - INSTALL_ELIBDIR (directory with embedded libraries)
51 + # - INSTALL_PLUGINDIR (directory for plugins)
52 + #
53 + # - INSTALL_INCLUDEDIR (directory for MySQL headers)
54 +@@ -117,6 +118,7 @@
55 + SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
56 + #
57 + SET(INSTALL_LIBDIR_STANDALONE "lib")
58 ++SET(INSTALL_ELIBDIR_STANDALONE "lib")
59 + SET(INSTALL_PLUGINDIR_STANDALONE "lib/mysql/plugin")
60 + #
61 + SET(INSTALL_INCLUDEDIR_STANDALONE "include")
62 +@@ -148,9 +150,11 @@
63 + #
64 + IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
65 + SET(INSTALL_LIBDIR_RPM "lib64")
66 ++ SET(INSTALL_ELIBDIR_RPM "lib64")
67 + SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
68 + ELSE()
69 + SET(INSTALL_LIBDIR_RPM "lib")
70 ++ SET(INSTALL_ELIBDIR_RPM "lib")
71 + SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
72 + ENDIF()
73 + #
74 +@@ -178,6 +182,7 @@
75 + SET(INSTALL_SCRIPTDIR_DEB "scripts")
76 + #
77 + SET(INSTALL_LIBDIR_DEB "lib")
78 ++SET(INSTALL_ELIBDIR_DEB "lib")
79 + SET(INSTALL_PLUGINDIR_DEB "lib/mysql/plugin")
80 + #
81 + SET(INSTALL_INCLUDEDIR_DEB "include")
82 +@@ -204,6 +209,7 @@
83 + SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
84 + #
85 + SET(INSTALL_LIBDIR_SVR4 "lib")
86 ++SET(INSTALL_ELIBDIR_SVR4 "lib")
87 + SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
88 + #
89 + SET(INSTALL_INCLUDEDIR_SVR4 "include")
90 +@@ -234,7 +240,7 @@
91 + # Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
92 + # will be defined as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
93 + # layout is chosen)
94 +-FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
95 ++FOREACH(var BIN SBIN LIB ELIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
96 + INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA PLUGINTEST)
97 + SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
98 + CACHE STRING "${var} installation directory" ${FORCE})
99 +diff -ur mysql-old/cmake/libutils.cmake mysql/cmake/libutils.cmake
100 +--- mysql-old/cmake/libutils.cmake 2014-01-20 00:14:06.581799638 -0100
101 ++++ mysql/cmake/libutils.cmake 2014-01-20 00:15:27.647802721 -0100
102 +@@ -40,6 +40,8 @@
103 + # - MERGE_LIBRARIES(target [STATIC|SHARED|MODULE] [linklib1 .... linklibN]
104 + # [EXPORTS exported_func1 .... exported_func_N]
105 + # [OUTPUT_NAME output_name]
106 ++# [OUTPUT_DIR output_dir]
107 ++
108 + # This macro merges several static libraries into a single one or creates a shared
109 + # library from several convenience libraries
110 +
111 +@@ -214,7 +216,7 @@
112 + #)
113 + MACRO(MERGE_LIBRARIES)
114 + MYSQL_PARSE_ARGUMENTS(ARG
115 +- "EXPORTS;OUTPUT_NAME;COMPONENT"
116 ++ "EXPORTS;OUTPUT_NAME;COMPONENT;OUTPUT_DIR"
117 + "STATIC;SHARED;MODULE;NOINSTALL"
118 + ${ARGN}
119 + )
120 +@@ -265,7 +267,11 @@
121 + IF(ARG_COMPONENT)
122 + SET(COMP COMPONENT ${ARG_COMPONENT})
123 + ENDIF()
124 +- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
125 ++ IF(ARG_OUTPUT_DIR)
126 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${ARG_OUTPUT_DIR}" ${COMP})
127 ++ ELSE()
128 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
129 ++ ENDIF()
130 + ENDIF()
131 + SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_INTERFACE_LIBRARIES "")
132 +
133 +diff -ur mysql-old/libmysql/CMakeLists.txt mysql/libmysql/CMakeLists.txt
134 +--- mysql-old/libmysql/CMakeLists.txt 2014-01-20 00:14:06.580799638 -0100
135 ++++ mysql/libmysql/CMakeLists.txt 2014-01-20 00:15:27.647802721 -0100
136 +@@ -163,9 +163,14 @@
137 + LIST(APPEND LIBS auth_win_client)
138 + ENDIF()
139 +
140 ++SET(INSTALL_STATIC_LIBS "")
141 ++IF(NOT ENABLE_STATIC_LIBS)
142 ++ SET(INSTALL_STATIC_LIBS "NOINSTALL")
143 ++ENDIF()
144 ++
145 + # Merge several convenience libraries into one big perconaserverclient
146 + # and link them together into shared library.
147 +-MERGE_LIBRARIES(perconaserverclient STATIC ${LIBS} COMPONENT Development)
148 ++MERGE_LIBRARIES(perconaserverclient STATIC ${LIBS} COMPONENT Development OUTPUT_DIR ${INSTALL_LIBDIR} ${INSTALL_STATIC_LIBS})
149 +
150 + # Visual Studio users need debug static library for debug projects
151 + INSTALL_DEBUG_SYMBOLS(clientlib)
152 +@@ -194,7 +194,7 @@
153 + ENDMACRO()
154 + ENDIF()
155 +
156 +-IF(UNIX)
157 ++IF(UNIX AND ENABLE_STATIC_LIBS)
158 + GET_TARGET_NAME(perconaserverclient lib_name)
159 + INSTALL_SYMLINK(perconaserverclient
160 + ${lib_name} ${CMAKE_STATIC_LIBRARY_PREFIX}perconaserverclient_r.a
161 +diff -ur mysql-old/libmysqld/CMakeLists.txt mysql/libmysqld/CMakeLists.txt
162 +--- mysql-old/libmysqld/CMakeLists.txt 2014-01-20 00:14:06.453799634 -0100
163 ++++ mysql/libmysqld/CMakeLists.txt 2014-01-20 00:25:46.375826250 -0100
164 +@@ -126,8 +126,13 @@
165 + ENDIF()
166 + ENDFOREACH()
167 +
168 ++SET(INSTALL_STATIC_LIBS "")
169 ++IF(NOT ENABLE_STATIC_LIBS)
170 ++ SET(INSTALL_STATIC_LIBS "NOINSTALL")
171 ++ENDIF()
172 ++
173 + MERGE_LIBRARIES(mysqlserver STATIC ${EMBEDDED_LIBS}
174 +- OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded)
175 ++ OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR} ${INSTALL_STATIC_LIBS})
176 +
177 + # Visual Studio users need debug static library
178 + IF(MSVC)
179 +@@ -135,12 +135,14 @@
180 + ENDIF()
181 +
182 + IF(UNIX)
183 +- INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_LIBDIR} RENAME
184 ++ INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_ELIBDIR} RENAME
185 + ${CMAKE_STATIC_LIBRARY_PREFIX}mysqld-debug)
186 + ENDIF()
187 +
188 + IF(NOT DISABLE_SHARED)
189 +- MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS})
190 ++ MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS}
191 ++ COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
192 ++
193 + IF(UNIX)
194 + # Name the shared library, handle versioning (provides same api as client library
195 + # hence the same version)
196 +--- mysql-old/libservices/CMakeLists.txt 2014-02-06 14:35:25.162325748 -0500
197 ++++ mysql/libservices/CMakeLists.txt 2014-02-06 14:36:20.051137978 -0500
198 +@@ -26,4 +26,6 @@
199 + my_thread_scheduler_service.c)
200 +
201 + ADD_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
202 +-INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
203 ++IF(ENABLE_STATIC_LIBS)
204 ++ INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
205 ++ENDIF()
206 +
207 +diff -aurN mysql.old/scripts/CMakeLists.txt mysql/scripts/CMakeLists.txt
208 +--- mysql.old/scripts/CMakeLists.txt 2014-03-25 09:10:46.000000000 -0400
209 ++++ mysql/scripts/CMakeLists.txt 2014-04-25 23:19:05.544375123 -0400
210 +@@ -192,6 +192,7 @@
211 + SET(scriptdir ${prefix}/${INSTALL_BINDIR})
212 + SET(libexecdir ${prefix}/${INSTALL_SBINDIR})
213 + SET(pkgdatadir ${prefix}/${INSTALL_MYSQLSHAREDIR})
214 ++SET(elibdir ${prefix}/${INSTALL_ELIBDIR})
215 + IF(INSTALL_LAYOUT MATCHES "STANDALONE")
216 + SET(localstatedir ${prefix}/data)
217 + ELSE()
218 +diff -aurN mysql.old/scripts/mysql_config.sh mysql/scripts/mysql_config.sh
219 +--- mysql.old/scripts/mysql_config.sh 2014-03-25 09:10:46.000000000 -0400
220 ++++ mysql/scripts/mysql_config.sh 2014-04-25 23:21:36.030085686 -0400
221 +@@ -91,6 +91,10 @@
222 + plugindir_rel=`echo $plugindir | sed -e "s;^$basedir/;;"`
223 + fix_path plugindir $plugindir_rel lib/mysql/plugin lib/plugin
224 +
225 ++elibdir='@elibdir@'
226 ++elibdir_rel=`echo $elibdir | sed -e "s;^$basedir/;;"`
227 ++fix_path elibdir $elibdir_rel lib64/mysql lib64 lib/mysql lib
228 ++
229 + pkgincludedir='@pkgincludedir@'
230 + if [ -f "$basedir/include/mysql/mysql.h" ]; then
231 + pkgincludedir="$basedir/include/mysql"
232 +@@ -113,7 +117,7 @@
233 + libs=" $ldflags -L$pkglibdir -lperconaserverclient @ZLIB_DEPS@ @NON_THREADED_LIBS@"
234 + libs="$libs @openssl_libs@ @STATIC_NSS_FLAGS@ "
235 + libs_r=" $ldflags -L$pkglibdir -lperconaserverclient_r @ZLIB_DEPS@ @CLIENT_LIBS@ @openssl_libs@ "
236 +-embedded_libs=" $ldflags -L$pkglibdir -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ "
237 ++embedded_libs=" $ldflags -L$elibdir -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ "
238 +
239 + if [ -r "$pkglibdir/libmygcc.a" ]; then
240 + # When linking against the static library with a different version of GCC