1 |
commit: 98a62031a548747cb66a8f6a5b24dc065aa8d8ac |
2 |
Author: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Jan 6 19:49:20 2019 +0000 |
4 |
Commit: Thomas Deutschmann <whissi <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Jan 6 19:50:24 2019 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=98a62031 |
7 |
|
8 |
dev-db/mysql-connector-c++: bump to v1.1.11 & v8.0.13 |
9 |
|
10 |
Bug: https://bugs.gentoo.org/674450 |
11 |
Package-Manager: Portage-2.3.53, Repoman-2.3.12 |
12 |
Signed-off-by: Thomas Deutschmann <whissi <AT> gentoo.org> |
13 |
|
14 |
dev-db/mysql-connector-c++/Manifest | 2 + |
15 |
...ysql-connector-c++-1.1.11-fix-cpp-linking.patch | 15 + |
16 |
.../mysql-connector-c++-1.1.11-fix-mariadb.patch | 43 +++ |
17 |
.../mysql-connector-c++-8.0.13-fix-build.patch | 329 +++++++++++++++++++++ |
18 |
.../mysql-connector-c++-1.1.11.ebuild | 63 ++++ |
19 |
.../mysql-connector-c++-8.0.13.ebuild | 40 +++ |
20 |
6 files changed, 492 insertions(+) |
21 |
|
22 |
diff --git a/dev-db/mysql-connector-c++/Manifest b/dev-db/mysql-connector-c++/Manifest |
23 |
index bcd51d9d1cf..9735622de44 100644 |
24 |
--- a/dev-db/mysql-connector-c++/Manifest |
25 |
+++ b/dev-db/mysql-connector-c++/Manifest |
26 |
@@ -1,2 +1,4 @@ |
27 |
+DIST mysql-connector-c++-1.1.11.tar.gz 504872 BLAKE2B 16a265ce291d18d3e76f6654b42271d8c6cc9329f047d9eb0c6cdfaea37e1c13f04932e595e4333882b26154f0940949bc9bdab9d8af8e25d2bfff43be0030fa SHA512 d6839ecda12d1f088f24b20c08f3e9a757e9907d3375dba39e0f247b6a11de59817739644201e74d782d4c900aa18bf60910fe60a9ee98a2c0138104fb55dc22 |
28 |
DIST mysql-connector-c++-1.1.9.tar.gz 508255 BLAKE2B e2cd300946a873a94beab13d9d1cb64ecb5bd9a9a56ef2217b1f7aff1643adc9afc0aa22c2ff1e0f6b8318cd34d12a7fe95f0584c96c212307fa9bd0cb54a2a1 SHA512 ec4d6cb7f21d52e786de3bff951e65ea5ad7391ba097b599d0094d3e8356cf17f700dee618e38e79d7a9e562684a6c51cca95fb8e2e225942766d33f8d0a5646 |
29 |
DIST mysql-connector-c++-8.0.11-src.tar.gz 2322951 BLAKE2B a1ea47c0440beae1892144186ad6b99a4519369845e1f37f5ce42088df6c29a458bd41840a1f9401dbd29827bc3a7c96ba34563a3a4cf3176e29e377cc254b9f SHA512 5113efb473b7cc63f680c04dacf5bee78d0a58ee20b41c8203edb92f8720c31c52c24de838996f25476eaa3d734c845531440317e82cb5e5f635bc03b057a148 |
30 |
+DIST mysql-connector-c++-8.0.13-src.tar.gz 2174609 BLAKE2B 5293ccfb7ad3bd6d50e0518db402d93f707535498ff1f608acc5c642cdc2c671601cbb7c14c7e6ec66fea8bdcb22effbb90e0ee2c207e8e82be7a2b446512f24 SHA512 0c260eff0002f5abc177049b9d050daf3b7860634355c10c02cb0ece18a3d1505454d67d8742d7e879c0cc6b44f8045f75e64d79bdd0bbfc211de9903abec902 |
31 |
|
32 |
diff --git a/dev-db/mysql-connector-c++/files/mysql-connector-c++-1.1.11-fix-cpp-linking.patch b/dev-db/mysql-connector-c++/files/mysql-connector-c++-1.1.11-fix-cpp-linking.patch |
33 |
new file mode 100644 |
34 |
index 00000000000..4b8a4a98309 |
35 |
--- /dev/null |
36 |
+++ b/dev-db/mysql-connector-c++/files/mysql-connector-c++-1.1.11-fix-cpp-linking.patch |
37 |
@@ -0,0 +1,15 @@ |
38 |
+https://bugs.mysql.com/bug.php?id=90727 |
39 |
+ |
40 |
+--- a/FindMySQL.cmake |
41 |
++++ b/FindMySQL.cmake |
42 |
+@@ -700,8 +700,10 @@ endif() |
43 |
+ |
44 |
+ # For dynamic linking use the built-in sys and strings |
45 |
+ if(NOT MYSQLCLIENT_STATIC_LINKING) |
46 |
++IF(CMAKE_SYSTEM_NAME MATCHES "SunOS") |
47 |
+ list(APPEND SYS_LIBRARIES "mysql_sys") |
48 |
+ list(APPEND SYS_LIBRARIES "mysql_strings") |
49 |
++endif() |
50 |
+ list(APPEND SYS_LIBRARIES ${MYSQL_LIBRARIES}) |
51 |
+ SET(MYSQL_LIBRARIES ${SYS_LIBRARIES}) |
52 |
+ |
53 |
|
54 |
diff --git a/dev-db/mysql-connector-c++/files/mysql-connector-c++-1.1.11-fix-mariadb.patch b/dev-db/mysql-connector-c++/files/mysql-connector-c++-1.1.11-fix-mariadb.patch |
55 |
new file mode 100644 |
56 |
index 00000000000..2868a3c024a |
57 |
--- /dev/null |
58 |
+++ b/dev-db/mysql-connector-c++/files/mysql-connector-c++-1.1.11-fix-mariadb.patch |
59 |
@@ -0,0 +1,43 @@ |
60 |
+--- a/driver/mysql_connection.cpp |
61 |
++++ b/driver/mysql_connection.cpp |
62 |
+@@ -1067,6 +1067,7 @@ MySQL_Connection::getClientOption(const sql::SQLString & optionName, void * opti |
63 |
+ proxy->get_character_set_info(&cs); |
64 |
+ *(static_cast<int *>(optionValue)) = cs.mbmaxlen; |
65 |
+ /* mysql_get_option() was added in mysql 5.7.3 version */ |
66 |
++#if !defined( MARIADB_BASE_VERSION ) && !defined ( MARIADB_VERSION_ID ) |
67 |
+ } else if ( proxy->get_server_version() >= 50703 ) { |
68 |
+ try { |
69 |
+ if (GET_CONN_OPTION(optionName, optionValue, intOptions)) { |
70 |
+@@ -1080,6 +1081,7 @@ MySQL_Connection::getClientOption(const sql::SQLString & optionName, void * opti |
71 |
+ CPP_ERR_FMT("Unsupported option : %d:(%s) %s", proxy->errNo(), proxy->sqlstate().c_str(), proxy->error().c_str()); |
72 |
+ throw e; |
73 |
+ } |
74 |
++#endif |
75 |
+ } |
76 |
+ } |
77 |
+ /* }}} */ |
78 |
+@@ -1097,11 +1099,13 @@ MySQL_Connection::getClientOption(const sql::SQLString & optionName) |
79 |
+ MY_CHARSET_INFO cs; |
80 |
+ proxy->get_character_set_info(&cs); |
81 |
+ return cs.dir ? sql::SQLString(cs.dir) : ""; |
82 |
++#if !defined( MARIADB_BASE_VERSION ) && !defined ( MARIADB_VERSION_ID ) |
83 |
+ } else if ( proxy->get_server_version() >= 50703 ) { |
84 |
+ const char* optionValue= NULL; |
85 |
+ if (GET_CONN_OPTION(optionName, &optionValue, stringOptions)) { |
86 |
+ return optionValue ? sql::SQLString(optionValue) : ""; |
87 |
+ } |
88 |
++#endif |
89 |
+ } |
90 |
+ return ""; |
91 |
+ } |
92 |
+--- a/driver/nativeapi/libmysql_static_proxy.cpp |
93 |
++++ b/driver/nativeapi/libmysql_static_proxy.cpp |
94 |
+@@ -325,7 +325,7 @@ LibmysqlStaticProxy::options(MYSQL * mysql, enum mysql_option option, const void |
95 |
+ int |
96 |
+ LibmysqlStaticProxy::get_option(MYSQL * mysql, enum mysql_option option, const void *arg) |
97 |
+ { |
98 |
+-#if MYSQL_VERSION_ID >= 50703 |
99 |
++#if MYSQL_VERSION_ID >= 50703 && !defined( MARIADB_BASE_VERSION ) && !defined ( MARIADB_VERSION_ID ) |
100 |
+ if (::mysql_get_option(mysql, option, arg)) { |
101 |
+ throw sql::InvalidArgumentException("Unsupported option provided to mysql_get_option()"); |
102 |
+ } else { |
103 |
|
104 |
diff --git a/dev-db/mysql-connector-c++/files/mysql-connector-c++-8.0.13-fix-build.patch b/dev-db/mysql-connector-c++/files/mysql-connector-c++-8.0.13-fix-build.patch |
105 |
new file mode 100644 |
106 |
index 00000000000..9bc45d274d7 |
107 |
--- /dev/null |
108 |
+++ b/dev-db/mysql-connector-c++/files/mysql-connector-c++-8.0.13-fix-build.patch |
109 |
@@ -0,0 +1,329 @@ |
110 |
+diff --git a/CMakeLists.txt b/CMakeLists.txt |
111 |
+index 8ba914a..e1127f1 100644 |
112 |
+--- a/CMakeLists.txt |
113 |
++++ b/CMakeLists.txt |
114 |
+@@ -669,7 +669,7 @@ set_target_properties(connector PROPERTIES |
115 |
+ |
116 |
+ |
117 |
+ install(TARGETS connector |
118 |
+- CONFIGURATIONS Release RelWithDebInfo |
119 |
++ CONFIGURATIONS Release RelWithDebInfo Gentoo |
120 |
+ ARCHIVE DESTINATION "${INSTALL_LIB_DIR_STATIC}" COMPONENT XDevAPIDev |
121 |
+ RUNTIME DESTINATION "${INSTALL_LIB_DIR}" COMPONENT XDevAPIDll |
122 |
+ LIBRARY DESTINATION "${INSTALL_LIB_DIR}" COMPONENT XDevAPIDll |
123 |
+@@ -740,6 +740,12 @@ TARGET_LINK_LIBRARIES(try connector) |
124 |
+ SET_INTERFACE_OPTIONS(try devapi) |
125 |
+ # ADD_GCOV(try) |
126 |
+ |
127 |
++IF(WITH_SSL STREQUAL "system") |
128 |
++ find_package(OpenSSL REQUIRED) |
129 |
++ TARGET_LINK_LIBRARIES(try ${OPENSSL_LIBRARIES}) |
130 |
++ENDIF() |
131 |
++ |
132 |
++ |
133 |
+ if(WITH_JDBC) |
134 |
+ |
135 |
+ add_executable(try_jdbc EXCLUDE_FROM_ALL try_jdbc.cc) |
136 |
+diff --git a/buildinfo.cmake b/buildinfo.cmake |
137 |
+index cc57a2c..129afeb 100644 |
138 |
+--- a/buildinfo.cmake |
139 |
++++ b/buildinfo.cmake |
140 |
+@@ -112,4 +112,4 @@ if(WITH_JDBC) |
141 |
+ endif() |
142 |
+ |
143 |
+ |
144 |
+-install(FILES "${PROJECT_BINARY_DIR}/BUILDINFO.txt" DESTINATION . COMPONENT Readme) |
145 |
++#install(FILES "${PROJECT_BINARY_DIR}/BUILDINFO.txt" DESTINATION . COMPONENT Readme) |
146 |
+diff --git a/cdk/cmake/install_macros.cmake b/cdk/cmake/install_macros.cmake |
147 |
+index 37c1061..39336cf 100644 |
148 |
+--- a/cdk/cmake/install_macros.cmake |
149 |
++++ b/cdk/cmake/install_macros.cmake |
150 |
+@@ -327,7 +327,7 @@ FUNCTION(INSTALL_DEBUG_TARGET target) |
151 |
+ DESTINATION ${ARG_DESTINATION} |
152 |
+ ${RENAME_PARAM} |
153 |
+ ${PERMISSIONS_${target_type}} |
154 |
+- CONFIGURATIONS Release RelWithDebInfo |
155 |
++ CONFIGURATIONS Release RelWithDebInfo Gentoo |
156 |
+ COMPONENT ${ARG_COMPONENT} |
157 |
+ OPTIONAL) |
158 |
+ |
159 |
+@@ -346,7 +346,7 @@ FUNCTION(INSTALL_DEBUG_TARGET target) |
160 |
+ INSTALL(FILES ${debug_pdb_target_location} |
161 |
+ DESTINATION ${ARG_PDB_DESTINATION} |
162 |
+ ${PDB_RENAME_PARAM} |
163 |
+- CONFIGURATIONS Release RelWithDebInfo |
164 |
++ CONFIGURATIONS Release RelWithDebInfo Gentoo |
165 |
+ COMPONENT ${ARG_COMPONENT} |
166 |
+ OPTIONAL) |
167 |
+ ENDIF() |
168 |
+diff --git a/cdk/cmake/libutils.cmake b/cdk/cmake/libutils.cmake |
169 |
+index 959fc5d..aec2d91 100644 |
170 |
+--- a/cdk/cmake/libutils.cmake |
171 |
++++ b/cdk/cmake/libutils.cmake |
172 |
+@@ -282,14 +282,7 @@ function(add_library_ex TARGET) |
173 |
+ endforeach() |
174 |
+ |
175 |
+ if(libs) |
176 |
+- |
177 |
+- if(${type} STREQUAL "STATIC") |
178 |
+- merge_static_libraries(${TARGET} ${libs}) |
179 |
+- add_dependencies(${TARGET} ${libs}) |
180 |
+- else() |
181 |
+ target_link_libraries(${TARGET} PRIVATE ${libs}) |
182 |
+- endif() |
183 |
+- |
184 |
+ endif() |
185 |
+ |
186 |
+ # |
187 |
+diff --git a/cdk/cmake/protobuf.cmake b/cdk/cmake/protobuf.cmake |
188 |
+index 95ecc71..484687c 100644 |
189 |
+--- a/cdk/cmake/protobuf.cmake |
190 |
++++ b/cdk/cmake/protobuf.cmake |
191 |
+@@ -26,201 +26,8 @@ |
192 |
+ # along with this program; if not, write to the Free Software Foundation, Inc., |
193 |
+ # 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
194 |
+ |
195 |
+-# |
196 |
+-# Usage: |
197 |
+-# |
198 |
+-# INCLUDE(protobuf) |
199 |
+-# [USE_FULL_PROTOBUF()] |
200 |
+-# |
201 |
+-# MYSQLX_PROTOBUF_GENERATE_CPP(SRCS HDRS <protobuf definitions>) |
202 |
+-# ADD_LIBRARY(target ... ${SRCS}) |
203 |
+-# |
204 |
+- |
205 |
+-if(DEFINED WITH_PROTOBUF) |
206 |
+- |
207 |
+- # |
208 |
+- # If WITH_PROTOBUF is defined, it should point at external location where |
209 |
+- # protobuf libraries were built using our CMakeLists.txt (so that |
210 |
+- # exports.cmake was produced). |
211 |
+- # |
212 |
+- |
213 |
+- if (NOT EXISTS "${WITH_PROTOBUF}/exports.cmake") |
214 |
+- message(FATAL_ERROR |
215 |
+- "Valid protobuf build not found at the given location" |
216 |
+- " (could not find exports.cmake): ${WITH_PROTOBUF}" |
217 |
+- ) |
218 |
+- endif() |
219 |
+- |
220 |
+- message("Using protobuf build at: ${WITH_PROTOBUF}") |
221 |
+- |
222 |
+-else(DEFINED WITH_PROTOBUF) |
223 |
+- |
224 |
+- # |
225 |
+- # If external WITH_PROTOBUF location is not given, then we arrange for |
226 |
+- # building of protbuf from bundled sources in ${PROJECT_BINARY_DIR}/protobuf. |
227 |
+- # |
228 |
+- |
229 |
+- message("Configuring Protobuf build using cmake generator: ${CMAKE_GENERATOR}") |
230 |
+- file(REMOVE "${PROJECT_BINARY_DIR}/protobuf/CMakeCache.txt") |
231 |
+- file(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/protobuf") |
232 |
+- |
233 |
+- # |
234 |
+- # Pick build configuration for the protobuf build. Normally we build using the |
235 |
+- # same build configuration that is used for building CDK (Release/Debug/etc.). |
236 |
+- # But we also support building CDK under non-standard build configuration |
237 |
+- # named 'Static' (this is a dirty trick we use to simplify building our MSIs). |
238 |
+- # Since protobuf does not know 'Static' build configuration, we build protobuf |
239 |
+- # under 'Release' configuration in that case. |
240 |
+- # |
241 |
+- # We need to handle two cases. For some build systems, like Makefiles, |
242 |
+- # the build configuration is specified at cmake time using CMAKE_BUILD_TYPE |
243 |
+- # variable. In that case we also set it during protobuf build configuration. |
244 |
+- # Another case is a multi-configuration build system like MSVC. In this case |
245 |
+- # we use generator expression to pick correct configuration when the build |
246 |
+- # command is invoked below. |
247 |
+- # |
248 |
+- |
249 |
+- if(CMAKE_BUILD_TYPE) |
250 |
+- if(CMAKE_BUILD_TYPE MATCHES "[Ss][Tt][Aa][Tt][Ii][Cc]") |
251 |
+- set(set_build_type -DCMAKE_BUILD_TYPE=Release) |
252 |
+- else() |
253 |
+- set(set_build_type -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}) |
254 |
+- endif() |
255 |
+- endif() |
256 |
+- |
257 |
+- set(CONFIG_EXPR |
258 |
+- $<$<CONFIG:Static>:Release>$<$<NOT:$<CONFIG:Static>>:$<CONFIG>> |
259 |
+- ) |
260 |
+- |
261 |
+- execute_process( |
262 |
+- COMMAND ${CMAKE_COMMAND} |
263 |
+- -G "${CMAKE_GENERATOR}" |
264 |
+- ${set_build_type} |
265 |
+- -DSTATIC_MSVCRT=${STATIC_MSVCRT} |
266 |
+- -DCMAKE_POSITION_INDEPENDENT_CODE=${CMAKE_POSITION_INDEPENDENT_CODE} |
267 |
+- -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER} |
268 |
+- -DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS} |
269 |
+- -DCMAKE_CXX_FLAGS_DEBUG=${CMAKE_CXX_FLAGS_DEBUG} |
270 |
+- -DCMAKE_CXX_FLAGS_RELEASE=${CMAKE_CXX_FLAGS_RELEASE} |
271 |
+- -DCMAKE_CXX_FLAGS_RELWITHDEBINFO=${CMAKE_CXX_FLAGS_RELWITHDEBINFO} |
272 |
+- -DCMAKE_CXX_FLAGS_MINSIZEREL=${CMAKE_CXX_FLAGS_MINSIZEREL} |
273 |
+- -DCMAKE_STATIC_LINKER_FLAGS=${CMAKE_STATIC_LINKER_FLAGS} |
274 |
+- ${PROJECT_SOURCE_DIR}/protobuf |
275 |
+- WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/protobuf |
276 |
+- RESULT_VARIABLE protobuf_config |
277 |
+- ) |
278 |
+- |
279 |
+- if(protobuf_config) |
280 |
+- message(FATAL_ERROR "Could not configure Protobuf build: ${protobuf_config}") |
281 |
+- endif() |
282 |
+- |
283 |
+- set(WITH_PROTOBUF "${PROJECT_BINARY_DIR}/protobuf") |
284 |
+- |
285 |
+-endif(DEFINED WITH_PROTOBUF) |
286 |
+- |
287 |
+-# Import targets exported by protobuf |
288 |
+- |
289 |
+-include(${WITH_PROTOBUF}/exports.cmake) |
290 |
+- |
291 |
+-# |
292 |
+-# Protobuf library targets imported above (pb_protobuf |
293 |
+-# and pb_protobuf-lite) are local to the directory from which |
294 |
+-# they were imported. This is not good if cdk is used as |
295 |
+-# a sub-project of a parent project, because the parent project |
296 |
+-# must have access to these targets. |
297 |
+-# |
298 |
+-# For that reason below we create global protobuf/protobuf-lite targets |
299 |
+-# and copy their locations from the imported targets. |
300 |
+-# |
301 |
+-# Note: we can't use ALIAS library because it does not work with imported |
302 |
+-# targets |
303 |
+-# |
304 |
+- |
305 |
+-add_library(protobuf STATIC IMPORTED GLOBAL) |
306 |
+-add_library(protobuf-lite STATIC IMPORTED GLOBAL) |
307 |
+- |
308 |
+-foreach(lib protobuf protobuf-lite) |
309 |
+- #message("processing: ${lib}") |
310 |
+- |
311 |
+- foreach(CONF NOCONFIG DEBUG RELEASE MINSIZEREL RELWITHDEBINFO) |
312 |
+- #message("- CONF: ${CONF}") |
313 |
+- |
314 |
+- get_target_property(LOC pb_${lib} IMPORTED_LOCATION_${CONF}) |
315 |
+- if(LOC) |
316 |
+- #message("- setting imported location to: ${LOC}") |
317 |
+- set_target_properties(${lib} PROPERTIES |
318 |
+- IMPORTED_LOCATION_${CONF} "${LOC}" |
319 |
+- ) |
320 |
+- set_property(TARGET ${lib} APPEND PROPERTY |
321 |
+- IMPORTED_CONFIGURATIONS ${CONF} |
322 |
+- ) |
323 |
+- endif() |
324 |
+- |
325 |
+- endforeach(CONF) |
326 |
+- |
327 |
+-endforeach(lib) |
328 |
+- |
329 |
+-# |
330 |
+-# To support 'Static' build configuration the targets imported from the |
331 |
+-# Protobuf project need to have IMPORTED_LOCATION_STATIC defined. We use |
332 |
+-# 'Release' locations as Protobuf is built using 'Release' configuration in |
333 |
+-# that case. |
334 |
+-# |
335 |
+- |
336 |
+-foreach(tgt protobuf protobuf-lite pb_protoc) |
337 |
+- |
338 |
+- get_target_property(LOC ${tgt} IMPORTED_LOCATION_RELEASE) |
339 |
+- set_property(TARGET ${tgt} PROPERTY IMPORTED_LOCATION_STATIC ${LOC}) |
340 |
+- |
341 |
+-endforeach(tgt) |
342 |
+- |
343 |
+- |
344 |
+-# protobuf depends on protobuf-lite |
345 |
+- |
346 |
+-set_target_properties(protobuf PROPERTIES |
347 |
+- INTERFACE_LINK_LIBRARIES "protobuf-lite" |
348 |
+-) |
349 |
+- |
350 |
+- |
351 |
+-message("Protobuf include path: ${PROTOBUF_INCLUDE_DIR}") |
352 |
+- |
353 |
+-set(PROTOBUF_INCLUDE_DIRS ${PROTOBUF_INCLUDE_DIR} |
354 |
+- CACHE INTERNAL "Protobuf include path" FORCE) |
355 |
+-set(PROTOBUF_PROTOC_EXECUTABLE pb_protoc |
356 |
+- CACHE INTERNAL "Protobuf compiler" FORCE) |
357 |
+- |
358 |
+-# |
359 |
+-# Custom target build_protobuf ensures that Protobuf project is built. |
360 |
+-# |
361 |
+-# Note: this depends on Protobuf project generating the stamp file |
362 |
+-# |
363 |
+- |
364 |
+-if(NOT DEFINED PROTOBUF_BUILD_STAMP) |
365 |
+- message(FATAL_ERROR "Protobuf build stamp file not defined") |
366 |
+-endif() |
367 |
+- |
368 |
+- |
369 |
+-if(CMAKE_VERSION VERSION_LESS 3.0) |
370 |
+- add_custom_command(OUTPUT ${PROTOBUF_BUILD_STAMP} |
371 |
+- COMMAND ${CMAKE_COMMAND} --build . --config $<CONFIGURATION> |
372 |
+- WORKING_DIRECTORY ${WITH_PROTOBUF} |
373 |
+- COMMENT "Building protobuf using configuration: $(Configuration)" |
374 |
+- ) |
375 |
+-else() |
376 |
+- add_custom_command(OUTPUT ${PROTOBUF_BUILD_STAMP} |
377 |
+- COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG_EXPR} |
378 |
+- WORKING_DIRECTORY ${WITH_PROTOBUF} |
379 |
+- COMMENT "Building protobuf using configuration: $(Configuration)" |
380 |
+- ) |
381 |
+-endif() |
382 |
+- |
383 |
+-add_custom_target(build_protobuf |
384 |
+- DEPENDS ${PROTOBUF_BUILD_STAMP} |
385 |
+-) |
386 |
+- |
387 |
+-add_dependencies(protobuf build_protobuf) |
388 |
+-add_dependencies(protobuf-lite build_protobuf) |
389 |
+-add_dependencies(pb_protoc build_protobuf) |
390 |
++#SET(Protobuf_USE_STATIC_LIBS ON) |
391 |
++find_package(Protobuf REQUIRED) |
392 |
+ |
393 |
+ # |
394 |
+ # Choice between full and lite version of the library. |
395 |
+diff --git a/cdk/protocol/mysqlx/crud.cc b/cdk/protocol/mysqlx/crud.cc |
396 |
+index 5cb12dc..6d32e21 100644 |
397 |
+--- a/cdk/protocol/mysqlx/crud.cc |
398 |
++++ b/cdk/protocol/mysqlx/crud.cc |
399 |
+@@ -295,7 +295,7 @@ public: |
400 |
+ class Placeholder_conv_imp |
401 |
+ : public Args_conv |
402 |
+ { |
403 |
+- map<string, unsigned> m_map; |
404 |
++ std::map<string, unsigned> m_map; |
405 |
+ |
406 |
+ public: |
407 |
+ |
408 |
+@@ -303,7 +303,7 @@ public: |
409 |
+ |
410 |
+ unsigned conv_placeholder(const string &name) |
411 |
+ { |
412 |
+- map<string, unsigned>::const_iterator it = m_map.find(name); |
413 |
++ std::map<string, unsigned>::const_iterator it = m_map.find(name); |
414 |
+ if (it == m_map.end()) |
415 |
+ throw_error("Placeholder converter: Placeholder was not defined on args"); |
416 |
+ //throw Generic_error((boost::format("Placeholder %s was not defined on args.") |
417 |
+@@ -314,7 +314,7 @@ public: |
418 |
+ |
419 |
+ void add_placeholder(const string &name) |
420 |
+ { |
421 |
+- map<string, unsigned>::const_iterator it = m_map.find(name); |
422 |
++ std::map<string, unsigned>::const_iterator it = m_map.find(name); |
423 |
+ if (it != m_map.end()) |
424 |
+ throw_error("Placeholder converter: Redefined placeholder"); |
425 |
+ //throw Generic_error((boost::format("Redifined placeholder %s.") |
426 |
+diff --git a/jdbc.cmake b/jdbc.cmake |
427 |
+index 60898da..b5d8bf0 100644 |
428 |
+--- a/jdbc.cmake |
429 |
++++ b/jdbc.cmake |
430 |
+@@ -38,7 +38,7 @@ if(MYSQL_CONFIG_EXECUTABLE) |
431 |
+ list(APPEND jdbc_cmake_opts -DMYSQL_CONFIG_EXECUTABLE=${MYSQL_CONFIG_EXECUTABLE}) |
432 |
+ endif() |
433 |
+ |
434 |
+-list(APPEND jdbc_cmake_opts -DMYSQLCLIENT_STATIC_LINKING=ON) |
435 |
++list(APPEND jdbc_cmake_opts -DMYSQLCLIENT_STATIC_LINKING=OFF) |
436 |
+ |
437 |
+ if(CMAKE_BUILD_TYPE) |
438 |
+ if(CMAKE_BUILD_TYPE MATCHES "[Ss][Tt][Aa][Tt][Ii][Cc]") |
439 |
|
440 |
diff --git a/dev-db/mysql-connector-c++/mysql-connector-c++-1.1.11.ebuild b/dev-db/mysql-connector-c++/mysql-connector-c++-1.1.11.ebuild |
441 |
new file mode 100644 |
442 |
index 00000000000..d7c1ec3619a |
443 |
--- /dev/null |
444 |
+++ b/dev-db/mysql-connector-c++/mysql-connector-c++-1.1.11.ebuild |
445 |
@@ -0,0 +1,63 @@ |
446 |
+# Copyright 1999-2019 Gentoo Authors |
447 |
+# Distributed under the terms of the GNU General Public License v2 |
448 |
+ |
449 |
+EAPI="7" |
450 |
+ |
451 |
+inherit cmake-utils flag-o-matic |
452 |
+ |
453 |
+DESCRIPTION="MySQL database connector for C++ (mimics JDBC 4.0 API)" |
454 |
+HOMEPAGE="https://dev.mysql.com/downloads/connector/cpp/" |
455 |
+URI_DIR="Connector-C++" |
456 |
+SRC_URI="https://dev.mysql.com/get/Downloads/${URI_DIR}/${P}.tar.gz" |
457 |
+ |
458 |
+LICENSE="GPL-2" |
459 |
+SLOT="0" |
460 |
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86" |
461 |
+IUSE="debug examples gcov static-libs" |
462 |
+ |
463 |
+DEPEND="virtual/libmysqlclient:= |
464 |
+ dev-libs/boost:= |
465 |
+ dev-libs/openssl:0= |
466 |
+ !<dev-db/mysql-connector-c-6.1.8" |
467 |
+RDEPEND="${DEPEND}" |
468 |
+ |
469 |
+PATCHES=( |
470 |
+ "${FILESDIR}/${PN}-1.1.6-fix-cmake.patch" |
471 |
+ "${FILESDIR}/${PN}-1.1.11-fix-mariadb.patch" |
472 |
+ "${FILESDIR}/${PN}-1.1.11-fix-cpp-linking.patch" |
473 |
+) |
474 |
+ |
475 |
+src_configure() { |
476 |
+ # native lib/wrapper needs this! |
477 |
+ append-flags "-fno-strict-aliasing" |
478 |
+ |
479 |
+ local mycmakeargs=( |
480 |
+ -DMYSQLCPPCONN_BUILD_EXAMPLES=OFF |
481 |
+ -DMYSQLCPPCONN_ICU_ENABLE=OFF |
482 |
+ -DMYSQLCPPCONN_TRACE_ENABLE=$(usex debug ON OFF) |
483 |
+ -DMYSQLCPPCONN_GCOV_ENABLE=$(usex gcov ON OFF) |
484 |
+ -DINSTALL_DOCS="/usr/share/doc/${PF}" |
485 |
+ -DMYSQL_CXX_LINKAGE=0 |
486 |
+ -DMYSQL_INCLUDE_DIR=$(mysql_config --variable=pkgincludedir) |
487 |
+ ) |
488 |
+ |
489 |
+ cmake-utils_src_configure |
490 |
+} |
491 |
+ |
492 |
+src_install() { |
493 |
+ cmake-utils_src_install |
494 |
+ |
495 |
+ # static lib has wrong name so we need to rename it |
496 |
+ if use static-libs; then |
497 |
+ mv "${ED%/}"/usr/$(get_libdir)/libmysqlcppconn-static.a \ |
498 |
+ "${ED%/}"/usr/$(get_libdir)/libmysqlcppconn.a || die |
499 |
+ else |
500 |
+ rm -f "${ED%/}"/usr/$(get_libdir)/libmysqlcppconn-static.a |
501 |
+ fi |
502 |
+ |
503 |
+ # examples |
504 |
+ if use examples; then |
505 |
+ insinto /usr/share/doc/${PF}/examples |
506 |
+ doins "${S}"/examples/* |
507 |
+ fi |
508 |
+} |
509 |
|
510 |
diff --git a/dev-db/mysql-connector-c++/mysql-connector-c++-8.0.13.ebuild b/dev-db/mysql-connector-c++/mysql-connector-c++-8.0.13.ebuild |
511 |
new file mode 100644 |
512 |
index 00000000000..f823bf40e1c |
513 |
--- /dev/null |
514 |
+++ b/dev-db/mysql-connector-c++/mysql-connector-c++-8.0.13.ebuild |
515 |
@@ -0,0 +1,40 @@ |
516 |
+# Copyright 1999-2019 Gentoo Authors |
517 |
+# Distributed under the terms of the GNU General Public License v2 |
518 |
+ |
519 |
+EAPI="7" |
520 |
+ |
521 |
+CMAKE_MAKEFILE_GENERATOR=emake |
522 |
+inherit cmake-utils |
523 |
+ |
524 |
+DESCRIPTION="MySQL database connector for C++ (mimics JDBC 4.0 API)" |
525 |
+HOMEPAGE="https://dev.mysql.com/downloads/connector/cpp/" |
526 |
+URI_DIR="Connector-C++" |
527 |
+SRC_URI="https://dev.mysql.com/get/Downloads/${URI_DIR}/${P}-src.tar.gz" |
528 |
+ |
529 |
+LICENSE="GPL-2" |
530 |
+SLOT="0" |
531 |
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~sparc ~x86" |
532 |
+IUSE="+legacy" |
533 |
+ |
534 |
+RDEPEND=" |
535 |
+ dev-libs/openssl:0= |
536 |
+ dev-libs/protobuf:= |
537 |
+ legacy? ( |
538 |
+ dev-libs/boost:= |
539 |
+ >=dev-db/mysql-connector-c-6.1.8:= |
540 |
+ )" |
541 |
+DEPEND="${RDEPEND}" |
542 |
+S="${WORKDIR}/${P}-src" |
543 |
+ |
544 |
+PATCHES=( |
545 |
+ "${FILESDIR}/${PN}-8.0.13-fix-build.patch" |
546 |
+) |
547 |
+ |
548 |
+src_configure() { |
549 |
+ local mycmakeargs=( |
550 |
+ -DWITH_SSL=system |
551 |
+ -DWITH_JDBC=$(usex legacy ON OFF) |
552 |
+ ) |
553 |
+ |
554 |
+ cmake-utils_src_configure |
555 |
+} |