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: Thu, 23 Jan 2014 00:14:22
Message-Id: 1390436031.916d01948c83d066d91ce18fa8f7d945761750ed.grknight.pub@gentoo
1 commit: 916d01948c83d066d91ce18fa8f7d945761750ed
2 Author: Brian Evans <grknight <AT> tuffmail <DOT> com>
3 AuthorDate: Thu Jan 23 00:13:51 2014 +0000
4 Commit: Brian Evans <grknight <AT> lavabit <DOT> com>
5 CommitDate: Thu Jan 23 00:13:51 2014 +0000
6 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/mysql-extras.git;a=commit;h=916d0194
7
8 Respin elib patch for percona, mysql 5.6 and mariadb 10.0
9
10 ---
11 00000_index.txt | 20 +++++
12 20006_all_cmake_elib-mariadb-10.0.7.patch | 1 +
13 20006_all_cmake_elib-mysql-5.6.15.patch | 132 +++++++++++++++++++++++++++++
14 20006_all_cmake_elib-percona-5.5.35.patch | 133 ++++++++++++++++++++++++++++++
15 20006_all_cmake_elib-percona-5.6.15.patch | 132 +++++++++++++++++++++++++++++
16 5 files changed, 418 insertions(+)
17
18 diff --git a/00000_index.txt b/00000_index.txt
19 index 972c386..096c746 100644
20 --- a/00000_index.txt
21 +++ b/00000_index.txt
22 @@ -1570,3 +1570,23 @@
23 @ver 5.05.35.00 to 5.05.99.99
24 @pn mysql
25 @@ Add ELIBPATH to split client and embedded libs
26 +
27 +@patch 20006_all_cmake_elib-mysql-5.6.15.patch
28 +@ver 5.06.15.00 to 5.05.99.99
29 +@pn mysql
30 +@@ Add ELIBPATH to split client and embedded libs
31 +
32 +@patch 20006_all_cmake_elib-percona-5.5.35.patch
33 +@ver 5.05.35.00 to 5.05.99.99
34 +@pn percona-server
35 +@@ Add ELIBPATH to split client and embedded libs
36 +
37 +@patch 20006_all_cmake_elib-percona-5.6.15.patch
38 +@ver 5.06.15.00 to 5.06.99.99
39 +@pn percona-server
40 +@@ Add ELIBPATH to split client and embedded libs
41 +
42 +@patch 20006_all_cmake_elib-mariadb-10.0.7.patch
43 +@ver 10.00.07.00 to 10.00.99.99
44 +@pn mariadb
45 +@@ Add ELIBPATH to split client and embedded libs
46
47 diff --git a/20006_all_cmake_elib-mariadb-10.0.7.patch b/20006_all_cmake_elib-mariadb-10.0.7.patch
48 new file mode 120000
49 index 0000000..fe5632d
50 --- /dev/null
51 +++ b/20006_all_cmake_elib-mariadb-10.0.7.patch
52 @@ -0,0 +1 @@
53 +20006_all_cmake_elib-mariadb-5.5.33.patch
54 \ No newline at end of file
55
56 diff --git a/20006_all_cmake_elib-mysql-5.6.15.patch b/20006_all_cmake_elib-mysql-5.6.15.patch
57 new file mode 100644
58 index 0000000..5dd5f0c
59 --- /dev/null
60 +++ b/20006_all_cmake_elib-mysql-5.6.15.patch
61 @@ -0,0 +1,132 @@
62 +diff -ur mysql-old/cmake/install_layout.cmake mysql/cmake/install_layout.cmake
63 +--- mysql-old/cmake/install_layout.cmake 2014-01-20 00:14:06.581799638 -0100
64 ++++ mysql/cmake/install_layout.cmake 2014-01-20 00:15:27.647802721 -0100
65 +@@ -43,7 +43,8 @@
66 + # - INSTALL_SBINDIR (directory with mysqld)
67 + # - INSTALL_SCRIPTDIR (several scripts, rarely used)
68 + #
69 +-# - INSTALL_LIBDIR (directory with client end embedded libraries)
70 ++# - INSTALL_LIBDIR (directory with client libraries)
71 ++# - INSTALL_ELIBDIR (directory with embedded libraries)
72 + # - INSTALL_PLUGINDIR (directory for plugins)
73 + #
74 + # - INSTALL_INCLUDEDIR (directory for MySQL headers)
75 +@@ -117,6 +118,7 @@
76 + SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
77 + #
78 + SET(INSTALL_LIBDIR_STANDALONE "lib")
79 ++SET(INSTALL_ELIBDIR_STANDALONE "lib")
80 + SET(INSTALL_PLUGINDIR_STANDALONE "lib/plugin")
81 + #
82 + SET(INSTALL_INCLUDEDIR_STANDALONE "include")
83 +@@ -148,9 +150,11 @@
84 + #
85 + IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
86 + SET(INSTALL_LIBDIR_RPM "lib64")
87 ++ SET(INSTALL_ELIBDIR_RPM "lib64")
88 + SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
89 + ELSE()
90 + SET(INSTALL_LIBDIR_RPM "lib")
91 ++ SET(INSTALL_ELIBDIR_RPM "lib")
92 + SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
93 + ENDIF()
94 + #
95 +@@ -178,6 +182,7 @@
96 + SET(INSTALL_SCRIPTDIR_DEB "scripts")
97 + #
98 + SET(INSTALL_LIBDIR_DEB "lib")
99 ++SET(INSTALL_ELIBDIR_DEB "lib")
100 + SET(INSTALL_PLUGINDIR_DEB "lib/plugin")
101 + #
102 + SET(INSTALL_INCLUDEDIR_DEB "include")
103 +@@ -204,6 +209,7 @@
104 + SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
105 + #
106 + SET(INSTALL_LIBDIR_SVR4 "lib")
107 ++SET(INSTALL_ELIBDIR_SVR4 "lib")
108 + SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
109 + #
110 + SET(INSTALL_INCLUDEDIR_SVR4 "include")
111 +@@ -234,7 +240,7 @@
112 + # Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
113 + # will be defined as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
114 + # layout is chosen)
115 +-FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
116 ++FOREACH(var BIN SBIN LIB ELIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
117 + INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA PLUGINTEST)
118 + SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
119 + CACHE STRING "${var} installation directory" ${FORCE})
120 +diff -ur mysql-old/cmake/libutils.cmake mysql/cmake/libutils.cmake
121 +--- mysql-old/cmake/libutils.cmake 2014-01-20 00:14:06.581799638 -0100
122 ++++ mysql/cmake/libutils.cmake 2014-01-20 00:15:27.647802721 -0100
123 +@@ -40,6 +40,8 @@
124 + # - MERGE_LIBRARIES(target [STATIC|SHARED|MODULE] [linklib1 .... linklibN]
125 + # [EXPORTS exported_func1 .... exported_func_N]
126 + # [OUTPUT_NAME output_name]
127 ++# [OUTPUT_DIR output_dir]
128 ++
129 + # This macro merges several static libraries into a single one or creates a shared
130 + # library from several convenience libraries
131 +
132 +@@ -214,7 +216,7 @@
133 + #)
134 + MACRO(MERGE_LIBRARIES)
135 + MYSQL_PARSE_ARGUMENTS(ARG
136 +- "EXPORTS;OUTPUT_NAME;COMPONENT"
137 ++ "EXPORTS;OUTPUT_NAME;COMPONENT;OUTPUT_DIR"
138 + "STATIC;SHARED;MODULE;NOINSTALL"
139 + ${ARGN}
140 + )
141 +@@ -265,7 +267,11 @@
142 + IF(ARG_COMPONENT)
143 + SET(COMP COMPONENT ${ARG_COMPONENT})
144 + ENDIF()
145 +- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
146 ++ IF(ARG_OUTPUT_DIR)
147 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${ARG_OUTPUT_DIR}" ${COMP})
148 ++ ELSE()
149 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
150 ++ ENDIF()
151 + ENDIF()
152 + SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_INTERFACE_LIBRARIES "")
153 +
154 +diff -ur mysql-old/libmysql/CMakeLists.txt mysql/libmysql/CMakeLists.txt
155 +--- mysql-old/libmysql/CMakeLists.txt 2014-01-20 00:14:06.580799638 -0100
156 ++++ mysql/libmysql/CMakeLists.txt 2014-01-20 00:15:27.647802721 -0100
157 +@@ -165,6 +165,6 @@
158 +
159 + # Merge several convenience libraries into one big mysqlclient
160 +-MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development)
161 ++MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development OUTPUT_DIR ${INSTALL_LIBDIR})
162 +
163 + # Visual Studio users need debug static library for debug projects
164 + INSTALL_DEBUG_SYMBOLS(clientlib)
165 +diff -ur mysql-old/libmysqld/CMakeLists.txt mysql/libmysqld/CMakeLists.txt
166 +--- mysql-old/libmysqld/CMakeLists.txt 2014-01-20 00:14:06.453799634 -0100
167 ++++ mysql/libmysqld/CMakeLists.txt 2014-01-20 00:25:46.375826250 -0100
168 +@@ -127,7 +127,7 @@
169 + ENDFOREACH()
170 +
171 + MERGE_LIBRARIES(mysqlserver STATIC ${EMBEDDED_LIBS}
172 +- OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded)
173 ++ OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
174 +
175 + # Visual Studio users need debug static library
176 + IF(MSVC)
177 +@@ -135,12 +135,14 @@
178 + ENDIF()
179 +
180 + IF(UNIX)
181 +- INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_LIBDIR} RENAME
182 ++ INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_ELIBDIR} RENAME
183 + ${CMAKE_STATIC_LIBRARY_PREFIX}mysqld-debug)
184 + ENDIF()
185 +
186 + IF(NOT DISABLE_SHARED)
187 +- MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS})
188 ++ MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS}
189 ++ COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
190 ++
191 + IF(UNIX)
192 + # Name the shared library, handle versioning (provides same api as client library
193 + # hence the same version)
194
195 diff --git a/20006_all_cmake_elib-percona-5.5.35.patch b/20006_all_cmake_elib-percona-5.5.35.patch
196 new file mode 100644
197 index 0000000..8662c5e
198 --- /dev/null
199 +++ b/20006_all_cmake_elib-percona-5.5.35.patch
200 @@ -0,0 +1,133 @@
201 +diff -ur mysql-old/cmake/install_layout.cmake mysql/cmake/install_layout.cmake
202 +--- mysql-old/cmake/install_layout.cmake 2014-01-20 00:14:06.581799638 -0100
203 ++++ mysql/cmake/install_layout.cmake 2014-01-20 00:15:27.647802721 -0100
204 +@@ -43,7 +43,8 @@
205 + # - INSTALL_SBINDIR (directory with mysqld)
206 + # - INSTALL_SCRIPTDIR (several scripts, rarely used)
207 + #
208 +-# - INSTALL_LIBDIR (directory with client end embedded libraries)
209 ++# - INSTALL_LIBDIR (directory with client libraries)
210 ++# - INSTALL_ELIBDIR (directory with embedded libraries)
211 + # - INSTALL_PLUGINDIR (directory for plugins)
212 + #
213 + # - INSTALL_INCLUDEDIR (directory for MySQL headers)
214 +@@ -117,6 +118,7 @@
215 + SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
216 + #
217 + SET(INSTALL_LIBDIR_STANDALONE "lib")
218 ++SET(INSTALL_ELIBDIR_STANDALONE "lib")
219 + SET(INSTALL_PLUGINDIR_STANDALONE "lib/mysql/plugin")
220 + #
221 + SET(INSTALL_INCLUDEDIR_STANDALONE "include")
222 +@@ -148,9 +150,11 @@
223 + #
224 + IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
225 + SET(INSTALL_LIBDIR_RPM "lib64")
226 ++ SET(INSTALL_ELIBDIR_RPM "lib64")
227 + SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
228 + ELSE()
229 + SET(INSTALL_LIBDIR_RPM "lib")
230 ++ SET(INSTALL_ELIBDIR_RPM "lib")
231 + SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
232 + ENDIF()
233 + #
234 +@@ -178,6 +182,7 @@
235 + SET(INSTALL_SCRIPTDIR_DEB "scripts")
236 + #
237 + SET(INSTALL_LIBDIR_DEB "lib")
238 ++SET(INSTALL_ELIBDIR_DEB "lib")
239 + SET(INSTALL_PLUGINDIR_DEB "lib/mysql/plugin")
240 + #
241 + SET(INSTALL_INCLUDEDIR_DEB "include")
242 +@@ -204,6 +209,7 @@
243 + SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
244 + #
245 + SET(INSTALL_LIBDIR_SVR4 "lib")
246 ++SET(INSTALL_ELIBDIR_SVR4 "lib")
247 + SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
248 + #
249 + SET(INSTALL_INCLUDEDIR_SVR4 "include")
250 +@@ -234,7 +240,7 @@
251 + # Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
252 + # will be defined as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
253 + # layout is chosen)
254 +-FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
255 ++FOREACH(var BIN SBIN LIB ELIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
256 + INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA PLUGINTEST)
257 + SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
258 + CACHE STRING "${var} installation directory" ${FORCE})
259 +diff -ur mysql-old/cmake/libutils.cmake mysql/cmake/libutils.cmake
260 +--- mysql-old/cmake/libutils.cmake 2014-01-20 00:14:06.581799638 -0100
261 ++++ mysql/cmake/libutils.cmake 2014-01-20 00:15:27.647802721 -0100
262 +@@ -40,6 +40,8 @@
263 + # - MERGE_LIBRARIES(target [STATIC|SHARED|MODULE] [linklib1 .... linklibN]
264 + # [EXPORTS exported_func1 .... exported_func_N]
265 + # [OUTPUT_NAME output_name]
266 ++# [OUTPUT_DIR output_dir]
267 ++
268 + # This macro merges several static libraries into a single one or creates a shared
269 + # library from several convenience libraries
270 +
271 +@@ -214,7 +216,7 @@
272 + #)
273 + MACRO(MERGE_LIBRARIES)
274 + MYSQL_PARSE_ARGUMENTS(ARG
275 +- "EXPORTS;OUTPUT_NAME;COMPONENT"
276 ++ "EXPORTS;OUTPUT_NAME;COMPONENT;OUTPUT_DIR"
277 + "STATIC;SHARED;MODULE;NOINSTALL"
278 + ${ARGN}
279 + )
280 +@@ -265,7 +267,11 @@
281 + IF(ARG_COMPONENT)
282 + SET(COMP COMPONENT ${ARG_COMPONENT})
283 + ENDIF()
284 +- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
285 ++ IF(ARG_OUTPUT_DIR)
286 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${ARG_OUTPUT_DIR}" ${COMP})
287 ++ ELSE()
288 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
289 ++ ENDIF()
290 + ENDIF()
291 + SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_INTERFACE_LIBRARIES "")
292 +
293 +diff -ur mysql-old/libmysql/CMakeLists.txt mysql/libmysql/CMakeLists.txt
294 +--- mysql-old/libmysql/CMakeLists.txt 2014-01-20 00:14:06.580799638 -0100
295 ++++ mysql/libmysql/CMakeLists.txt 2014-01-20 00:15:27.647802721 -0100
296 +@@ -165,7 +165,7 @@
297 +
298 + # Merge several convenience libraries into one big mysqlclient
299 + # and link them together into shared library.
300 +-MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development)
301 ++MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development OUTPUT_DIR ${INSTALL_LIBDIR})
302 +
303 + # Visual Studio users need debug static library for debug projects
304 + INSTALL_DEBUG_SYMBOLS(clientlib)
305 +diff -ur mysql-old/libmysqld/CMakeLists.txt mysql/libmysqld/CMakeLists.txt
306 +--- mysql-old/libmysqld/CMakeLists.txt 2014-01-20 00:14:06.453799634 -0100
307 ++++ mysql/libmysqld/CMakeLists.txt 2014-01-20 00:25:46.375826250 -0100
308 +@@ -127,7 +127,7 @@
309 + ENDFOREACH()
310 +
311 + MERGE_LIBRARIES(mysqlserver STATIC ${EMBEDDED_LIBS}
312 +- OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded)
313 ++ OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
314 +
315 + # Visual Studio users need debug static library
316 + IF(MSVC)
317 +@@ -135,12 +135,14 @@
318 + ENDIF()
319 +
320 + IF(UNIX)
321 +- INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_LIBDIR} RENAME
322 ++ INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_ELIBDIR} RENAME
323 + ${CMAKE_STATIC_LIBRARY_PREFIX}mysqld-debug)
324 + ENDIF()
325 +
326 + IF(NOT DISABLE_SHARED)
327 +- MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS})
328 ++ MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS}
329 ++ COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
330 ++
331 + IF(UNIX)
332 + # Name the shared library, handle versioning (provides same api as client library
333 + # hence the same version)
334
335 diff --git a/20006_all_cmake_elib-percona-5.6.15.patch b/20006_all_cmake_elib-percona-5.6.15.patch
336 new file mode 100644
337 index 0000000..cb37a3a
338 --- /dev/null
339 +++ b/20006_all_cmake_elib-percona-5.6.15.patch
340 @@ -0,0 +1,132 @@
341 +diff -ur mysql-old/cmake/install_layout.cmake mysql/cmake/install_layout.cmake
342 +--- mysql-old/cmake/install_layout.cmake 2014-01-20 00:14:06.581799638 -0100
343 ++++ mysql/cmake/install_layout.cmake 2014-01-20 00:15:27.647802721 -0100
344 +@@ -43,7 +43,8 @@
345 + # - INSTALL_SBINDIR (directory with mysqld)
346 + # - INSTALL_SCRIPTDIR (several scripts, rarely used)
347 + #
348 +-# - INSTALL_LIBDIR (directory with client end embedded libraries)
349 ++# - INSTALL_LIBDIR (directory with client libraries)
350 ++# - INSTALL_ELIBDIR (directory with embedded libraries)
351 + # - INSTALL_PLUGINDIR (directory for plugins)
352 + #
353 + # - INSTALL_INCLUDEDIR (directory for MySQL headers)
354 +@@ -117,6 +118,7 @@
355 + SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
356 + #
357 + SET(INSTALL_LIBDIR_STANDALONE "lib")
358 ++SET(INSTALL_ELIBDIR_STANDALONE "lib")
359 + SET(INSTALL_PLUGINDIR_STANDALONE "lib/mysql/plugin")
360 + #
361 + SET(INSTALL_INCLUDEDIR_STANDALONE "include")
362 +@@ -148,9 +150,11 @@
363 + #
364 + IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
365 + SET(INSTALL_LIBDIR_RPM "lib64")
366 ++ SET(INSTALL_ELIBDIR_RPM "lib64")
367 + SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
368 + ELSE()
369 + SET(INSTALL_LIBDIR_RPM "lib")
370 ++ SET(INSTALL_ELIBDIR_RPM "lib")
371 + SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
372 + ENDIF()
373 + #
374 +@@ -178,6 +182,7 @@
375 + SET(INSTALL_SCRIPTDIR_DEB "scripts")
376 + #
377 + SET(INSTALL_LIBDIR_DEB "lib")
378 ++SET(INSTALL_ELIBDIR_DEB "lib")
379 + SET(INSTALL_PLUGINDIR_DEB "lib/mysql/plugin")
380 + #
381 + SET(INSTALL_INCLUDEDIR_DEB "include")
382 +@@ -204,6 +209,7 @@
383 + SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
384 + #
385 + SET(INSTALL_LIBDIR_SVR4 "lib")
386 ++SET(INSTALL_ELIBDIR_SVR4 "lib")
387 + SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
388 + #
389 + SET(INSTALL_INCLUDEDIR_SVR4 "include")
390 +@@ -234,7 +240,7 @@
391 + # Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
392 + # will be defined as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
393 + # layout is chosen)
394 +-FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
395 ++FOREACH(var BIN SBIN LIB ELIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
396 + INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA PLUGINTEST)
397 + SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
398 + CACHE STRING "${var} installation directory" ${FORCE})
399 +diff -ur mysql-old/cmake/libutils.cmake mysql/cmake/libutils.cmake
400 +--- mysql-old/cmake/libutils.cmake 2014-01-20 00:14:06.581799638 -0100
401 ++++ mysql/cmake/libutils.cmake 2014-01-20 00:15:27.647802721 -0100
402 +@@ -40,6 +40,8 @@
403 + # - MERGE_LIBRARIES(target [STATIC|SHARED|MODULE] [linklib1 .... linklibN]
404 + # [EXPORTS exported_func1 .... exported_func_N]
405 + # [OUTPUT_NAME output_name]
406 ++# [OUTPUT_DIR output_dir]
407 ++
408 + # This macro merges several static libraries into a single one or creates a shared
409 + # library from several convenience libraries
410 +
411 +@@ -214,7 +216,7 @@
412 + #)
413 + MACRO(MERGE_LIBRARIES)
414 + MYSQL_PARSE_ARGUMENTS(ARG
415 +- "EXPORTS;OUTPUT_NAME;COMPONENT"
416 ++ "EXPORTS;OUTPUT_NAME;COMPONENT;OUTPUT_DIR"
417 + "STATIC;SHARED;MODULE;NOINSTALL"
418 + ${ARGN}
419 + )
420 +@@ -265,7 +267,11 @@
421 + IF(ARG_COMPONENT)
422 + SET(COMP COMPONENT ${ARG_COMPONENT})
423 + ENDIF()
424 +- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
425 ++ IF(ARG_OUTPUT_DIR)
426 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${ARG_OUTPUT_DIR}" ${COMP})
427 ++ ELSE()
428 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
429 ++ ENDIF()
430 + ENDIF()
431 + SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_INTERFACE_LIBRARIES "")
432 +
433 +diff -ur mysql-old/libmysql/CMakeLists.txt mysql/libmysql/CMakeLists.txt
434 +--- mysql-old/libmysql/CMakeLists.txt 2014-01-20 00:14:06.580799638 -0100
435 ++++ mysql/libmysql/CMakeLists.txt 2014-01-20 00:15:27.647802721 -0100
436 +@@ -165,6 +165,6 @@
437 +
438 + # Merge several convenience libraries into one big mysqlclient
439 +-MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development)
440 ++MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development OUTPUT_DIR ${INSTALL_LIBDIR})
441 +
442 + # Visual Studio users need debug static library for debug projects
443 + INSTALL_DEBUG_SYMBOLS(clientlib)
444 +diff -ur mysql-old/libmysqld/CMakeLists.txt mysql/libmysqld/CMakeLists.txt
445 +--- mysql-old/libmysqld/CMakeLists.txt 2014-01-20 00:14:06.453799634 -0100
446 ++++ mysql/libmysqld/CMakeLists.txt 2014-01-20 00:25:46.375826250 -0100
447 +@@ -127,7 +127,7 @@
448 + ENDFOREACH()
449 +
450 + MERGE_LIBRARIES(mysqlserver STATIC ${EMBEDDED_LIBS}
451 +- OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded)
452 ++ OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
453 +
454 + # Visual Studio users need debug static library
455 + IF(MSVC)
456 +@@ -135,12 +135,14 @@
457 + ENDIF()
458 +
459 + IF(UNIX)
460 +- INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_LIBDIR} RENAME
461 ++ INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_ELIBDIR} RENAME
462 + ${CMAKE_STATIC_LIBRARY_PREFIX}mysqld-debug)
463 + ENDIF()
464 +
465 + IF(NOT DISABLE_SHARED)
466 +- MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS})
467 ++ MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS}
468 ++ COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
469 ++
470 + IF(UNIX)
471 + # Name the shared library, handle versioning (provides same api as client library
472 + # hence the same version)