Gentoo Archives: gentoo-commits

From: Brian Evans <grknight@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/mysql-extras:master commit in: /
Date: Sat, 19 Jan 2019 20:38:25
Message-Id: 1547930249.d3f03ae3af3e7413ab6c5382bebb65bd8e28bfa5.grknight@gentoo
1 commit: d3f03ae3af3e7413ab6c5382bebb65bd8e28bfa5
2 Author: Brian Evans <grknight <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 19 20:37:29 2019 +0000
4 Commit: Brian Evans <grknight <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 19 20:37:29 2019 +0000
6 URL: https://gitweb.gentoo.org/proj/mysql-extras.git/commit/?id=d3f03ae3
7
8 Respin patch for mysql-cluster-7.2.34
9
10 Signed-off-by: Brian Evans <grknight <AT> gentoo.org>
11
12 20006_all_cmake_elib-mysql-cluster-7.2.34.patch | 225 ++++++++++++++++++++++++
13 1 file changed, 225 insertions(+)
14
15 diff --git a/20006_all_cmake_elib-mysql-cluster-7.2.34.patch b/20006_all_cmake_elib-mysql-cluster-7.2.34.patch
16 new file mode 100644
17 index 0000000..91bcea5
18 --- /dev/null
19 +++ b/20006_all_cmake_elib-mysql-cluster-7.2.34.patch
20 @@ -0,0 +1,225 @@
21 +diff -aurN a/cmake/install_layout.cmake b/cmake/install_layout.cmake
22 +--- a/cmake/install_layout.cmake 2018-06-21 07:34:38.000000000 -0400
23 ++++ b/cmake/install_layout.cmake 2019-01-19 15:20:18.791407251 -0500
24 +@@ -55,7 +55,8 @@
25 + # - INSTALL_SBINDIR (directory with mysqld)
26 + # - INSTALL_SCRIPTDIR (several scripts, rarely used)
27 + #
28 +-# - INSTALL_LIBDIR (directory with client end embedded libraries)
29 ++# - INSTALL_LIBDIR (directory with client libraries)
30 ++# - INSTALL_ELIBDIR (directory with embedded libraries)
31 + # - INSTALL_PLUGINDIR (directory for plugins)
32 + #
33 + # - INSTALL_INCLUDEDIR (directory for MySQL headers)
34 +@@ -156,6 +157,7 @@
35 + SET(INSTALL_SCRIPTDIR_STANDALONE "scripts")
36 + #
37 + SET(INSTALL_LIBDIR_STANDALONE "lib")
38 ++SET(INSTALL_ELIBDIR_STANDALONE "lib")
39 + SET(INSTALL_PLUGINDIR_STANDALONE "lib/plugin")
40 + #
41 + SET(INSTALL_INCLUDEDIR_STANDALONE "include")
42 +@@ -329,9 +331,11 @@
43 + #
44 + IF(CMAKE_SYSTEM_PROCESSOR MATCHES "x86_64")
45 + SET(INSTALL_LIBDIR_RPM "lib64")
46 ++ SET(INSTALL_ELIBDIR_RPM "lib64")
47 + SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin")
48 + ELSE()
49 + SET(INSTALL_LIBDIR_RPM "lib")
50 ++ SET(INSTALL_ELIBDIR_RPM "lib")
51 + SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin")
52 + ENDIF()
53 + #
54 +@@ -394,6 +398,7 @@
55 + SET(INSTALL_SCRIPTDIR_DEB "scripts")
56 + #
57 + SET(INSTALL_LIBDIR_DEB "lib")
58 ++SET(INSTALL_ELIBDIR_DEB "lib")
59 + SET(INSTALL_PLUGINDIR_DEB "lib/plugin")
60 + #
61 + SET(INSTALL_INCLUDEDIR_DEB "include")
62 +@@ -422,6 +427,7 @@
63 + SET(INSTALL_SCRIPTDIR_SVR4 "scripts")
64 + #
65 + SET(INSTALL_LIBDIR_SVR4 "lib")
66 ++SET(INSTALL_ELIBDIR_SVR4 "lib")
67 + SET(INSTALL_PLUGINDIR_SVR4 "lib/plugin")
68 + #
69 + SET(INSTALL_INCLUDEDIR_SVR4 "include")
70 +@@ -453,7 +459,7 @@
71 + # Set INSTALL_FOODIR variables for chosen layout (for example, INSTALL_BINDIR
72 + # will be defined as ${INSTALL_BINDIR_STANDALONE} by default if STANDALONE
73 + # layout is chosen)
74 +-FOREACH(var BIN SBIN LIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
75 ++FOREACH(var BIN SBIN LIB ELIB MYSQLSHARE SHARE PLUGIN INCLUDE SCRIPT DOC MAN
76 + INFO MYSQLTEST SQLBENCH DOCREADME SUPPORTFILES MYSQLDATA PLUGINTEST
77 + SECURE_FILE_PRIV SECURE_FILE_PRIV_EMBEDDED)
78 + SET(INSTALL_${var}DIR ${INSTALL_${var}DIR_${INSTALL_LAYOUT}}
79 +diff -aurN a/cmake/libutils.cmake b/cmake/libutils.cmake
80 +--- a/cmake/libutils.cmake 2019-01-19 15:15:56.294486959 -0500
81 ++++ b/cmake/libutils.cmake 2019-01-19 15:23:39.369054028 -0500
82 +@@ -40,6 +40,7 @@
83 + # - MERGE_LIBRARIES(target [STATIC|SHARED|MODULE] [linklib1 .... linklibN]
84 + # [EXPORTS exported_func1 .... exported_func_N]
85 + # [OUTPUT_NAME output_name]
86 ++# [OUTPUT_DIR output_dir]
87 + # This macro merges several static libraries into a single one or creates a shared
88 + # library from several convenience libraries
89 +
90 +@@ -215,7 +216,7 @@
91 + #)
92 + MACRO(MERGE_LIBRARIES)
93 + MYSQL_PARSE_ARGUMENTS(ARG
94 +- "EXPORTS;OUTPUT_NAME;COMPONENT"
95 ++ "EXPORTS;OUTPUT_NAME;COMPONENT;OUTPUT_DIR"
96 + "STATIC;SHARED;MODULE;NOINSTALL"
97 + ${ARGN}
98 + )
99 +@@ -266,7 +267,11 @@
100 + IF(ARG_COMPONENT)
101 + SET(COMP COMPONENT ${ARG_COMPONENT})
102 + ENDIF()
103 +- MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
104 ++ IF(ARG_OUTPUT_DIR)
105 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${ARG_OUTPUT_DIR}" ${COMP})
106 ++ ELSE
107 ++ MYSQL_INSTALL_TARGETS(${TARGET} DESTINATION "${INSTALL_LIBDIR}" ${COMP})
108 ++ ENDIF()
109 + ENDIF()
110 + SET_TARGET_PROPERTIES(${TARGET} PROPERTIES LINK_INTERFACE_LIBRARIES "")
111 +
112 +diff -aurN a/libmysql/CMakeLists.txt b/libmysql/CMakeLists.txt
113 +--- a/libmysql/CMakeLists.txt 2019-01-19 15:15:56.504484491 -0500
114 ++++ b/libmysql/CMakeLists.txt 2019-01-19 15:26:57.836803741 -0500
115 +@@ -153,6 +153,11 @@
116 +
117 + SET(LIBS clientlib dbug strings vio mysys ${ZLIB_LIBRARY} ${SSL_LIBRARIES} ${LIBDL})
118 +
119 ++SET(INSTALL_STATIC_LIBS "")
120 ++IF(NOT ENABLE_STATIC_LIBS)
121 ++ SET(INSTALL_STATIC_LIBS "NOINSTALL")
122 ++ENDIF()
123 ++
124 + #
125 + # On Windows platform client library includes the client-side
126 + # Windows Native Authentication plugin.
127 +@@ -165,7 +170,7 @@
128 +
129 + # Merge several convenience libraries into one big mysqlclient
130 + # and link them together into shared library.
131 +-MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development)
132 ++MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development OUTPUT_DIR ${INSTALL_LIBDIR} ${INSTALL_STATIC_LIBS})
133 +
134 + # Visual Studio users need debug static library for debug projects
135 + IF(MSVC)
136 +@@ -195,9 +200,11 @@
137 +
138 + IF(UNIX)
139 + GET_TARGET_NAME(mysqlclient lib_name)
140 +- INSTALL_SYMLINK(mysqlclient
141 +- ${lib_name} ${CMAKE_STATIC_LIBRARY_PREFIX}mysqlclient_r.a
142 +- ${INSTALL_LIBDIR} Development)
143 ++ IF(ENABLE_STATIC_LIBS)
144 ++ INSTALL_SYMLINK(mysqlclient
145 ++ ${lib_name} ${CMAKE_STATIC_LIBRARY_PREFIX}mysqlclient_r.a
146 ++ ${INSTALL_LIBDIR} Development)
147 ++ ENDIF()
148 + ENDIF()
149 +
150 + IF(NOT DISABLE_SHARED)
151 +diff -aurN a/libmysqld/CMakeLists.txt b/libmysqld/CMakeLists.txt
152 +--- a/libmysqld/CMakeLists.txt 2019-01-19 15:15:56.504484491 -0500
153 ++++ b/libmysqld/CMakeLists.txt 2019-01-19 15:30:07.304860344 -0500
154 +@@ -135,8 +135,13 @@
155 + ENDIF()
156 + ENDFOREACH()
157 +
158 ++SET(INSTALL_STATIC_LIBS "")
159 ++IF(NOT ENABLE_STATIC_LIBS)
160 ++ SET(INSTALL_STATIC_LIBS "NOINSTALL")
161 ++ENDIF()
162 ++
163 + MERGE_LIBRARIES(mysqlserver STATIC ${EMBEDDED_LIBS}
164 +- OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded)
165 ++ OUTPUT_NAME ${MYSQLSERVER_OUTPUT_NAME} COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR} ${INSTALL_STATIC_LIBS})
166 +
167 + # Visual Studio users need debug static library
168 + IF(MSVC)
169 +@@ -149,12 +154,14 @@
170 + # to handle. So, for now, we just disable it for those builds.
171 + #
172 + IF(UNIX AND NOT INSTALL_LAYOUT MATCHES "SVR4")
173 +- INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_LIBDIR} RENAME
174 ++ INSTALL_DEBUG_TARGET(mysqlserver DESTINATION ${INSTALL_ELIBDIR} RENAME
175 + ${CMAKE_STATIC_LIBRARY_PREFIX}mysqld-debug)
176 + ENDIF()
177 +
178 + IF(NOT DISABLE_SHARED)
179 +- MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS})
180 ++ MERGE_LIBRARIES(libmysqld SHARED mysqlserver EXPORTS ${CLIENT_API_FUNCTIONS}
181 ++ COMPONENT Embedded OUTPUT_DIR ${INSTALL_ELIBDIR})
182 ++
183 + IF(UNIX)
184 + # Name the shared library, handle versioning (provides same api as client library
185 + # hence the same version)
186 +diff -aurN a/libservices/CMakeLists.txt b/libservices/CMakeLists.txt
187 +--- a/libservices/CMakeLists.txt 2019-01-19 15:15:56.504484491 -0500
188 ++++ b/libservices/CMakeLists.txt 2019-01-19 15:31:15.404161862 -0500
189 +@@ -22,4 +22,6 @@
190 + my_thread_scheduler_service.c)
191 +
192 + ADD_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
193 +-INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
194 ++IF(ENABLE_STATIC_LIBS)
195 ++ INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
196 ++ENDIF()
197 +diff -aurN a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt
198 +--- a/scripts/CMakeLists.txt 2019-01-19 15:15:56.504484491 -0500
199 ++++ b/scripts/CMakeLists.txt 2019-01-19 15:31:59.513709368 -0500
200 +@@ -209,6 +209,7 @@
201 + SET(scriptdir ${prefix}/${INSTALL_BINDIR})
202 + SET(libexecdir ${prefix}/${INSTALL_SBINDIR})
203 + SET(pkgdatadir ${prefix}/${INSTALL_MYSQLSHAREDIR})
204 ++SET(elibdir ${prefix}/${INSTALL_ELIBDIR})
205 + IF(INSTALL_LAYOUT MATCHES "STANDALONE")
206 + SET(localstatedir ${prefix}/data)
207 + ELSE()
208 +diff -aurN a/scripts/mysql_config.pl.in b/scripts/mysql_config.pl.in
209 +--- a/scripts/mysql_config.pl.in 2018-06-21 07:34:38.000000000 -0400
210 ++++ b/scripts/mysql_config.pl.in 2019-01-19 15:33:17.682907458 -0500
211 +@@ -190,9 +190,10 @@
212 + else
213 + {
214 + my $linkpath = "-L$pkglibdir @RPATH_OPTION@";
215 ++ my $elinkpath = "-L@elibdir@ @RPATH_OPTION@";
216 + @lib_opts = ($linkpath,"-lmysqlclient");
217 + @lib_r_opts = ($linkpath,"-lmysqlclient_r");
218 +- @lib_e_opts = ($linkpath,"-lmysqld");
219 ++ @lib_e_opts = ($elinkpath,"-lmysqld");
220 + }
221 +
222 + my $flags;
223 +diff -aurN a/scripts/mysql_config.sh b/scripts/mysql_config.sh
224 +--- a/scripts/mysql_config.sh 2019-01-19 15:15:56.294486959 -0500
225 ++++ b/scripts/mysql_config.sh 2019-01-19 15:34:31.992145205 -0500
226 +@@ -92,6 +92,10 @@
227 + plugindir_rel=`echo $plugindir | sed -e "s;^$basedir/;;"`
228 + fix_path plugindir $plugindir_rel @libsubdir@/mysql/plugin @libsubdir@/plugin
229 +
230 ++elibdir='@elibdir@'
231 ++elibdir_rel=`echo $elibdir | sed -e "s;^$basedir/;;"`
232 ++fix_path elibdir $elibdir_rel lib64/mysql lib64 lib/mysql lib
233 ++
234 + pkgincludedir='@pkgincludedir@'
235 + if [ -f "$basedir/include/mysql/mysql.h" ]; then
236 + pkgincludedir="$basedir/include/mysql"
237 +@@ -114,7 +118,7 @@
238 + libs=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqlclient @ZLIB_DEPS@ @NON_THREADED_LIBS@"
239 + libs="$libs @openssl_libs@ @STATIC_NSS_FLAGS@ "
240 + libs_r=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqlclient_r @ZLIB_DEPS@ @CLIENT_LIBS@ @openssl_libs@ "
241 +-embedded_libs=" $ldflags -L$pkglibdir @RPATH_OPTION@ -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ "
242 ++embedded_libs=" $ldflags -L$elibdir @RPATH_OPTION@ -lmysqld @LIBDL@ @ZLIB_DEPS@ @LIBS@ @WRAPLIBS@ @openssl_libs@ "
243 +
244 + if [ -r "$pkglibdir/libmygcc.a" ]; then
245 + # When linking against the static library with a different version of GCC