Gentoo Archives: gentoo-commits

From: Thomas Deutschmann <whissi@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/mysql-extras:master commit in: /
Date: Sat, 03 Dec 2016 20:41:59
Message-Id: 1480549386.7a855728c48b023b75d9b96aeb0e5f844fe51f2d.whissi@gentoo
1 commit: 7a855728c48b023b75d9b96aeb0e5f844fe51f2d
2 Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
3 AuthorDate: Wed Nov 30 23:43:06 2016 +0000
4 Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
5 CommitDate: Wed Nov 30 23:43:06 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/mysql-extras.git/commit/?id=7a855728
7
8 Respin elib patch for percona 5.6.34
9
10 20006_all_cmake_elib-percona-5.6.34.patch | 198 ++++++++++++++++++++++++++++++
11 1 file changed, 198 insertions(+)
12
13 diff --git a/20006_all_cmake_elib-percona-5.6.34.patch b/20006_all_cmake_elib-percona-5.6.34.patch
14 new file mode 100644
15 index 0000000..3969654
16 --- /dev/null
17 +++ b/20006_all_cmake_elib-percona-5.6.34.patch
18 @@ -0,0 +1,198 @@
19 +--- mysql-old/cmake/install_layout.cmake
20 ++++ mysql/cmake/install_layout.cmake
21 +@@ -55,7 +55,8 @@
22 + # - INSTALL_SBINDIR (directory with mysqld)
23 + # - INSTALL_SCRIPTDIR (several scripts, rarely used)
24 + #
25 +-# - INSTALL_LIBDIR (directory with client end embedded libraries)
26 ++# - INSTALL_LIBDIR (directory with client libraries)
27 ++# - INSTALL_ELIBDIR (directory with embedded libraries)
28 + # - INSTALL_PLUGINDIR (directory for plugins)
29 + #
30 + # - INSTALL_INCLUDEDIR (directory for MySQL headers)
31 +@@ -156,6 +157,7 @@
32 + SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
33 + #
34 + SET(INSTALL_LIBDIR_STANDALONE "lib")
35 ++SET(INSTALL_ELIBDIR_STANDALONE "lib")
36 + SET(INSTALL_PLUGINDIR_STANDALONE "lib/mysql/plugin")
37 + #
38 + SET(INSTALL_INCLUDEDIR_STANDALONE "include")
39 +@@ -329,9 +331,11 @@
40 + #
41 + IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
42 + SET(INSTALL_LIBDIR_RPM "lib64")
43 ++ SET(INSTALL_ELIBDIR_RPM "lib64")
44 + SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
45 + ELSE()
46 + SET(INSTALL_LIBDIR_RPM "lib")
47 ++ SET(INSTALL_ELIBDIR_RPM "lib")
48 + SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
49 + ENDIF()
50 + #
51 +@@ -394,6 +398,7 @@
52 + SET(INSTALL_SCRIPTDIR_DEB "scripts")
53 + #
54 + SET(INSTALL_LIBDIR_DEB "lib")
55 ++SET(INSTALL_ELIBDIR_DEB "lib")
56 + SET(INSTALL_PLUGINDIR_DEB "lib/mysql/plugin")
57 + #
58 + SET(INSTALL_INCLUDEDIR_DEB "include")
59 +@@ -422,6 +427,7 @@
60 + SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
61 + #
62 + SET(INSTALL_LIBDIR_SVR4 "lib")
63 ++SET(INSTALL_ELIBDIR_SVR4 "lib")
64 + SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
65 + #
66 + SET(INSTALL_INCLUDEDIR_SVR4 "include")
67 +@@ -454,7 +460,7 @@
68 + # Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
69 + # will be defined as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
70 + # layout is chosen)
71 +-FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
72 ++FOREACH(var BIN SBIN LIB ELIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
73 + INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA PLUGINTEST
74 + SECURE_FILE_PRIV SECURE_FILE_PRIV_EMBEDDED)
75 + SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
76 +--- mysql-old/cmake/libutils.cmake
77 ++++ mysql/cmake/libutils.cmake
78 +@@ -40,6 +40,8 @@
79 + # - MERGE_LIBRARIES(target [STATIC|SHARED|MODULE] [linklib1 .... linklibN]
80 + # [EXPORTS exported_func1 .... exported_func_N]
81 + # [OUTPUT_NAME output_name]
82 ++# [OUTPUT_DIR output_dir]
83 ++
84 + # This macro merges several static libraries into a single one or creates a shared
85 + # library from several convenience libraries
86 +
87 +@@ -215,7 +217,7 @@
88 + #)
89 + MACRO(MERGE_LIBRARIES)
90 + MYSQL_PARSE_ARGUMENTS(ARG
91 +- "EXPORTS;OUTPUT_NAME;COMPONENT"
92 ++ "EXPORTS;OUTPUT_NAME;COMPONENT;OUTPUT_DIR"
93 + "STATIC;SHARED;MODULE;NOINSTALL"
94 + ${ARGN}
95 + )
96 +@@ -266,7 +268,11 @@
97 + IF(ARG_COMPONENT)
98 + SET(COMP COMPONENT ${ARG_COMPONENT})
99 + ENDIF()
100 +- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
101 ++ IF(ARG_OUTPUT_DIR)
102 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${ARG_OUTPUT_DIR}" ${COMP})
103 ++ ELSE()
104 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
105 ++ ENDIF()
106 + ENDIF()
107 + SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_INTERFACE_LIBRARIES "")
108 +
109 +--- mysql-old/libmysql/CMakeLists.txt
110 ++++ mysql/libmysql/CMakeLists.txt
111 +@@ -179,8 +179,13 @@
112 + LIST(APPEND LIBS auth_win_client)
113 + ENDIF()
114 +
115 ++SET(INSTALL_STATIC_LIBS "")
116 ++IF(NOT ENABLE_STATIC_LIBS)
117 ++ SET(INSTALL_STATIC_LIBS "NOINSTALL")
118 ++ENDIF()
119 ++
120 + # Merge several convenience libraries into one big perconaserverclient
121 +-MERGE_LIBRARIES(perconaserverclient STATIC ${LIBS} COMPONENT Development)
122 ++MERGE_LIBRARIES(perconaserverclient STATIC ${LIBS} COMPONENT Development OUTPUT_DIR ${INSTALL_LIBDIR} ${INSTALL_STATIC_LIBS})
123 +
124 + # Visual Studio users need debug static library for debug projects
125 + IF(MSVC)
126 +@@ -210,9 +215,11 @@
127 +
128 + IF(UNIX)
129 + GET_TARGET_NAME(perconaserverclient lib_name)
130 +- INSTALL_SYMLINK(perconaserverclient
131 +- ${lib_name} ${CMAKE_STATIC_LIBRARY_PREFIX}perconaserverclient_r.a
132 +- ${INSTALL_LIBDIR} Development)
133 ++ IF(ENABLE_STATIC_LIBS)
134 ++ INSTALL_SYMLINK(perconaserverclient
135 ++ ${lib_name} ${CMAKE_STATIC_LIBRARY_PREFIX}perconaserverclient_r.a
136 ++ ${INSTALL_LIBDIR} Development)
137 ++ ENDIF()
138 + ENDIF()
139 +
140 + IF(NOT DISABLE_SHARED)
141 +--- mysql-old/libmysqld/CMakeLists.txt
142 ++++ mysql/libmysqld/CMakeLists.txt
143 +@@ -115,8 +115,13 @@
144 + ENDIF()
145 + ENDFOREACH()
146 +
147 ++SET(INSTALL_STATIC_LIBS "")
148 ++IF(NOT ENABLE_STATIC_LIBS)
149 ++ SET(INSTALL_STATIC_LIBS "NOINSTALL")
150 ++ENDIF()
151 ++
152 + MERGE_LIBRARIES(mysqlserver STATIC ${EMBEDDED_LIBS}
153 +- OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded)
154 ++ OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR} ${INSTALL_STATIC_LIBS})
155 +
156 + # Visual Studio users need debug static library
157 + IF(MSVC)
158 +@@ -124,12 +129,14 @@
159 + ENDIF()
160 +
161 + IF(UNIX)
162 +- INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_LIBDIR} RENAME
163 ++ INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_ELIBDIR} RENAME
164 + ${CMAKE_STATIC_LIBRARY_PREFIX}mysqld-debug)
165 + ENDIF()
166 +
167 + IF(NOT DISABLE_SHARED)
168 +- MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS})
169 ++ MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS}
170 ++ COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
171 ++
172 + IF(UNIX)
173 + # Name the shared library, handle versioning (provides same api as client library
174 + # hence the same version)
175 +--- mysql-old/libservices/CMakeLists.txt
176 ++++ mysql/libservices/CMakeLists.txt
177 +@@ -24,4 +24,6 @@
178 + mysql_string_service.c)
179 +
180 + ADD_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
181 +-INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
182 ++IF(ENABLE_STATIC_LIBS)
183 ++ INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
184 ++ENDIF()
185 +--- mysql-old/scripts/CMakeLists.txt
186 ++++ mysql/scripts/CMakeLists.txt
187 +@@ -249,6 +249,7 @@
188 + SET(pkglibdir ${prefix}/${INSTALL_LIBDIR})
189 + SET(pkgplugindir ${prefix}/${INSTALL_PLUGINDIR})
190 + SET(localstatedir ${MYSQL_DATADIR})
191 ++SET(elibdir ${prefix}/${INSTALL_ELIBDIR})
192 +
193 + SET(RPATH_OPTION "")
194 + IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS")
195 +--- mysql-old/scripts/mysql_config.sh
196 ++++ mysql/scripts/mysql_config.sh
197 +@@ -92,6 +92,10 @@
198 + plugindir_rel=`echo $plugindir | sed -e "s;^$basedir/;;"`
199 + fix_path plugindir $plugindir_rel @libsubdir@/mysql/plugin @libsubdir@/plugin
200 +
201 ++elibdir='@elibdir@'
202 ++elibdir_rel=`echo $elibdir | sed -e "s;^$basedir/;;"`
203 ++fix_path elibdir $elibdir_rel lib64/mysql lib64 lib/mysql lib
204 ++
205 + pkgincludedir='@pkgincludedir@'
206 + if [ -f "$basedir/include/mysql/mysql.h" ]; then
207 + pkgincludedir="$basedir/include/mysql"
208 +@@ -116,7 +120,7 @@
209 + libs="$libs @QUOTED_CMAKE_C_LINK_FLAGS@"
210 + libs_r=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lperconaserverclient @ZLIB_DEPS@ @CLIENT_LIBS@ @openssl_libs@ "
211 + libs_r="$libs_r @QUOTED_CMAKE_C_LINK_FLAGS@"
212 +-embedded_libs=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ "
213 ++embedded_libs=" $ldflags -L$elibdir @RPATH_OPTION@ -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ "
214 + embedded_libs="$embedded_libs @QUOTED_CMAKE_CXX_LINK_FLAGS@"
215 +
216 + cflags="-I$pkgincludedir @CFLAGS@ " #note: end space!