Skip to content

Commit 44343f6

Browse files
valguruilianries
authored andcommitted
(conan-io#21910) mariadb-connector-c: add v3.3.8
* mariadb-connector-c: add v3.3.8 * mariadb-connector-c: fix "warnings as errors" handling * mariadb-connector-c: restore the fix-install-and-static-or-shared patch
1 parent dc50d5b commit 44343f6

7 files changed

+139
-45
lines changed

recipes/mariadb-connector-c/all/conandata.yml

+10-9
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
sources:
2+
"3.3.8":
3+
url: "https://downloads.mariadb.com/Connectors/c/connector-c-3.3.8/mariadb-connector-c-3.3.8-src.tar.gz"
4+
sha256: "f9f076b4aa9fb22cc94b24f82c80f9ef063805ecd6533a2eb5d5060cf93833e8"
25
"3.3.3":
36
url: "https://downloads.mariadb.com/Connectors/c/connector-c-3.3.3/mariadb-connector-c-3.3.3-src.tar.gz"
47
sha256: "d77630e2376fe08185b5354621c877b0a203a6b186a0694574d37b764aeb2874"
@@ -12,16 +15,17 @@ sources:
1215
url: "https://downloads.mariadb.com/Connectors/c/connector-c-3.1.11/mariadb-connector-c-3.1.11-src.tar.gz"
1316
sha256: "3e6f6c399493fe90efdc21a3fe70c30434b7480e8195642a959f1dd7a0fa5b0f"
1417
patches:
15-
"3.3.3":
16-
- patch_file: "patches/3.3.3-0002-find-package-zstd.patch"
17-
patch_description: "Use ZSTD cmake file from Conan"
18+
"3.3.8":
19+
- patch_file: "patches/3.3.8-0001-fix-install-and-static-or-shared.patch"
20+
patch_description: "fix install path, separate static/shared build"
1821
patch_type: "conan"
22+
- patch_file: "patches/3.1.11-0004-include-mysqld_error-header.patch"
23+
patch_description: "always include mysqld_error.h"
24+
patch_type: "portability"
25+
"3.3.3":
1926
- patch_file: "patches/3.3.3-0001-fix-install-and-static-or-shared.patch"
2027
patch_description: "fix install path, separate static/shared build"
2128
patch_type: "conan"
22-
- patch_file: "patches/3.1.19-0002-remove-wx-flag.patch"
23-
patch_description: "remove WX flags in MSVC"
24-
patch_type: "conan"
2529
- patch_file: "patches/3.1.11-0003-include-order-windows-winsock2.patch"
2630
patch_description: "fix include order for windows winsock2"
2731
patch_type: "portability"
@@ -32,9 +36,6 @@ patches:
3236
- patch_file: "patches/3.1.19-0001-fix-install-and-static-or-shared.patch"
3337
patch_description: "fix install path, separate static/shared build"
3438
patch_type: "conan"
35-
- patch_file: "patches/3.1.19-0002-remove-wx-flag.patch"
36-
patch_description: "remove WX flags in MSVC"
37-
patch_type: "conan"
3839
- patch_file: "patches/3.1.11-0003-include-order-windows-winsock2.patch"
3940
patch_description: "fix include order for windows winsock2"
4041
patch_type: "portability"

recipes/mariadb-connector-c/all/conanfile.py

+10-1
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,7 @@ def generate(self):
9292
tc.variables["INSTALL_BINDIR"] = "bin"
9393
tc.variables["INSTALL_LIBDIR"] = "lib"
9494
tc.variables["INSTALL_PLUGINDIR"] = os.path.join("lib", "plugin").replace("\\", "/")
95+
tc.variables["ZLIB_LIBRARY"] = "ZLIB::ZLIB"
9596
# To install relocatable shared libs on Macos
9697
tc.cache_variables["CMAKE_POLICY_DEFAULT_CMP0042"] = "NEW"
9798
tc.generate()
@@ -104,7 +105,7 @@ def _patch_sources(self):
104105
apply_conandata_patches(self)
105106

106107
root_cmake = os.path.join(self.source_folder, "CMakeLists.txt")
107-
replace_in_file(self, root_cmake, "${ZLIB_LIBRARY}", "${ZLIB_LIBRARIES}")
108+
libmariadb_cmake = os.path.join(self.source_folder, "libmariadb", "CMakeLists.txt")
108109
replace_in_file(self,
109110
root_cmake,
110111
"SET(SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_CRYPTO_LIBRARY})",
@@ -113,6 +114,14 @@ def _patch_sources(self):
113114
replace_in_file(self, root_cmake, "${CURL_LIBRARIES}", "CURL::libcurl")
114115
plugins_io_cmake = os.path.join(self.source_folder, "plugins", "io", "CMakeLists.txt")
115116
replace_in_file(self, plugins_io_cmake, "${CURL_LIBRARIES}", "CURL::libcurl")
117+
if Version(self.version) >= "3.3.6":
118+
replace_in_file(self, root_cmake, "${WARNING_AS_ERROR}", "")
119+
elif Version(self.version) >= "3.1.18":
120+
replace_in_file(self, root_cmake, " -WX", "")
121+
if Version(self.version) >= "3.3":
122+
replace_in_file(self, root_cmake,
123+
"INCLUDE(${CC_SOURCE_DIR}/cmake/FindZStd.cmake)",
124+
"find_package(ZSTD REQUIRED CONFIG)")
116125

117126
def build(self):
118127
self._patch_sources()

recipes/mariadb-connector-c/all/patches/3.1.19-0002-remove-wx-flag.patch

-13
This file was deleted.

recipes/mariadb-connector-c/all/patches/3.3.3-0001-fix-install-and-static-or-shared.patch

-9
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,6 @@ diff --git a/libmariadb/CMakeLists.txt b/libmariadb/CMakeLists.txt
22
index 070fdc9..77584e6 100644
33
--- a/libmariadb/CMakeLists.txt
44
+++ b/libmariadb/CMakeLists.txt
5-
@@ -288,7 +288,7 @@ SET(MARIADB_NONBLOCK_SYMBOLS
6-
7-
# handle static plugins
8-
SET(LIBMARIADB_SOURCES ${LIBMARIADB_SOURCES} ${LIBMARIADB_PLUGIN_SOURCES})
9-
-SET(SYSTEM_LIBS ${SYSTEM_LIBS} ${LIBMARIADB_PLUGIN_LIBS} ${ZSTD_LIBRARY} ${ZLIB_LIBRARY})
10-
+SET(SYSTEM_LIBS ${SYSTEM_LIBS} ${LIBMARIADB_PLUGIN_LIBS} ${ZSTD_LIBRARY} ZLIB::ZLIB)
11-
MESSAGE(STATUS "SYSTEM_LIBS: ${SYSTEM_LIBS}")
12-
INCLUDE_DIRECTORIES(${LIBMARIADB_PLUGIN_INCLUDES})
13-
ADD_DEFINITIONS(${LIBMARIADB_PLUGIN_DEFS})
145
@@ -404,7 +404,7 @@ ELSE()
156
ENDIF()
167

recipes/mariadb-connector-c/all/patches/3.3.3-0002-find-package-zstd.patch

-13
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
--- libmariadb/CMakeLists.txt
2+
+++ libmariadb/CMakeLists.txt
3+
@@ -414,7 +414,7 @@
4+
ENDIF()
5+
6+
7+
-IF(CMAKE_VERSION VERSION_GREATER 2.8.7)
8+
+IF(FALSE)
9+
# CREATE OBJECT LIBRARY
10+
ADD_LIBRARY(mariadb_obj OBJECT ${LIBMARIADB_SOURCES})
11+
IF(UNIX)
12+
@@ -443,21 +443,24 @@
13+
"FILE_DESCRIPTION:Dynamic lib for client/server communication")
14+
ENDIF()
15+
16+
+IF(NOT BUILD_SHARED_LIBS)
17+
ADD_LIBRARY(mariadbclient STATIC ${MARIADB_OBJECTS} ${EMPTY_FILE})
18+
TARGET_LINK_LIBRARIES(mariadbclient ${SYSTEM_LIBS} ${CRYPTO_LIBS})
19+
-
20+
+ELSE()
21+
IF(UNIX)
22+
ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} ${MARIADB_OBJECTS} ${EMPTY_FILE})
23+
SET_TARGET_PROPERTIES(libmariadb PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}")
24+
ELSE()
25+
- ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} ${MARIADB_OBJECTS} mariadbclient.def)
26+
+ ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} ${MARIADB_OBJECTS} ${EMPTY_FILE} mariadbclient.def)
27+
SET_TARGET_PROPERTIES(libmariadb PROPERTIES LINKER_LANGUAGE C)
28+
ENDIF()
29+
30+
TARGET_LINK_LIBRARIES(libmariadb LINK_PRIVATE ${SYSTEM_LIBS} ${CRYPTO_LIBS})
31+
32+
SIGN_TARGET(libmariadb)
33+
-
34+
+ENDIF()
35+
+
36+
+IF(BUILD_SHARED_LIBS)
37+
IF(CMAKE_SYSTEM_NAME MATCHES "Linux" OR
38+
CMAKE_SYSTEM_NAME MATCHES "kFreeBSD" OR
39+
CMAKE_SYSTEM_NAME MATCHES "GNU")
40+
@@ -466,11 +469,14 @@
41+
ENDIF()
42+
SET_TARGET_PROPERTIES(libmariadb PROPERTIES LINK_FLAGS "${CC_BINARY_DIR}/libmariadb/mariadbclient.def")
43+
ENDIF()
44+
-
45+
+ELSE()
46+
SET_TARGET_PROPERTIES(mariadbclient PROPERTIES IMPORTED_INTERFACE_LINK_LIBRARIES "${SYSTEM_LIBS}")
47+
+ENDIF()
48+
+IF(BUILD_SHARED_LIBS)
49+
SET_TARGET_PROPERTIES(libmariadb PROPERTIES IMPORTED_INTERFACE_LINK_LIBRARIES "${SYSTEM_LIBS}")
50+
51+
SET_TARGET_PROPERTIES(libmariadb PROPERTIES PREFIX "")
52+
+ENDIF()
53+
54+
#
55+
# Installation
56+
@@ -490,11 +496,15 @@
57+
ENDIF()
58+
ENDIF()
59+
60+
+IF(NOT BUILD_SHARED_LIBS)
61+
create_symlink(libmariadb${CMAKE_STATIC_LIBRARY_SUFFIX} mariadbclient ${INSTALL_LIBDIR})
62+
-
63+
+ENDIF()
64+
+
65+
+IF(BUILD_SHARED_LIBS)
66+
SET_TARGET_PROPERTIES(libmariadb PROPERTIES VERSION
67+
${CPACK_PACKAGE_VERSION_MAJOR}
68+
SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR})
69+
+ELSE()
70+
71+
IF(NOT WIN32)
72+
SET_TARGET_PROPERTIES(mariadbclient PROPERTIES OUTPUT_NAME "${LIBMARIADB_STATIC_NAME}")
73+
@@ -502,20 +512,33 @@
74+
75+
INSTALL(TARGETS mariadbclient
76+
COMPONENT Development
77+
- DESTINATION ${INSTALL_LIBDIR})
78+
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
79+
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
80+
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
81+
+ENDIF()
82+
+
83+
+IF(BUILD_SHARED_LIBS)
84+
IF(WIN32)
85+
INSTALL(TARGETS libmariadb
86+
COMPONENT SharedLibraries
87+
- DESTINATION ${INSTALL_LIBDIR})
88+
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
89+
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
90+
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
91+
ELSE()
92+
# in cmake 3.12+ we can use
93+
#INSTALL(TARGETS libmariadb LIBRARY DESTINATION ${INSTALL_LIBDIR}
94+
# COMPONENT SharedLibraries NAMELINK_COMPONENT Development)
95+
# but as long as we build on CentOS 7 with its cmake 2.8.12.2 we have to use
96+
-INSTALL(TARGETS libmariadb LIBRARY DESTINATION ${INSTALL_LIBDIR}
97+
- COMPONENT SharedLibraries NAMELINK_SKIP)
98+
-INSTALL(TARGETS libmariadb LIBRARY DESTINATION ${INSTALL_LIBDIR}
99+
- COMPONENT Development NAMELINK_ONLY)
100+
+INSTALL(TARGETS libmariadb LIBRARY
101+
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
102+
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
103+
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
104+
+ COMPONENT SharedLibraries)
105+
+INSTALL(TARGETS libmariadb LIBRARY
106+
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
107+
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
108+
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
109+
+ COMPONENT Development)
110+
ENDIF()
111+
112+
IF(MSVC)
113+
@@ -524,3 +547,4 @@
114+
CONFIGURATIONS Debug RelWithDebInfo
115+
COMPONENT Development)
116+
ENDIF()
117+
+ENDIF()

recipes/mariadb-connector-c/config.yml

+2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
versions:
2+
"3.3.8":
3+
folder: all
24
"3.3.3":
35
folder: all
46
"3.1.19":

0 commit comments

Comments
 (0)