Skip to content

Commit c921b50

Browse files
committed
ODBC-264 Windows and OSX build fix.
C/C is updated to 3.1.4 For OSX added workaround for typo(aka bug) in c/c preventing linking of one of auth plugins. Plus solved some rather old issues in pkg cmake for the case, when src and build directories are different
1 parent 18ea7d4 commit c921b50

File tree

4 files changed

+34
-31
lines changed

4 files changed

+34
-31
lines changed

CMakeLists.txt

Lines changed: 30 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,7 @@ IF(WIN32)
9090
ENDFOREACH()
9191
ENDIF()
9292
ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS)
93+
SET(INSTALL_PLUGINDIR "${MARIADB_DEFAULT_PLUGINS_SUBDIR}")
9394
ELSE()
9495
# This has been done before C/C cmake scripts are included
9596
IF(NOT DEFINED INSTALL_LIB_SUFFIX)
@@ -103,6 +104,35 @@ ELSE()
103104
MESSAGE(STATUS "Autentication Plugins installation dir: ${INSTALL_PLUGINDIR}")
104105
ENDIF()
105106

107+
IF(WIN32 OR WITH_OPENSSL OR "${WITH_SSL}" STREQUAL "OPENSSL")
108+
IF(WITH_OPENSSL OR "${WITH_SSL}" STREQUAL "OPENSSL")
109+
FIND_PACKAGE(OpenSSL)
110+
111+
IF(OPENSSL_FOUND)
112+
MESSAGE(STATUS "Configuring to build with OpenSSL ${OPENSSL_LIBRARIES}")
113+
114+
ADD_DEFINITIONS(-DHAVE_OPENSSL)
115+
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
116+
SET(SSL_LIBRARIES ${OPENSSL_LIBRARIES})
117+
118+
#IF(OPENSSL_CRYPTO_LIBRARIES)
119+
# SET(SSL_LIBRARIES ${SSL_LIBRARIES} ${OPENSSL_CRYPTO_LIBRARIES})
120+
#ENDIF()
121+
122+
SET(PLATFORM_DEPENDENCIES ${PLATFORM_DEPENDENCIES} ${SSL_LIBRARIES})
123+
# Temporary workarond for the (typo) issue in the c/c 3.1.4
124+
SET(CRYT_LIBS ${SSL_LIBRARIES})
125+
ELSE()
126+
MESSAGE(FATAL_ERROR "OpenSSL not found. Please install OpenSSL or disable SSL support via option -DWITH_OPENSSL=Off")
127+
ENDIF()
128+
ELSE()
129+
MESSAGE(STATUS "Configuring SSL support using SChannel")
130+
SET(PLATFORM_DEPENDENCIES ${PLATFORM_DEPENDENCIES} version.lib)
131+
ENDIF()
132+
ELSE()
133+
MESSAGE(STATUS "Configuring to build without SSL support")
134+
ENDIF()
135+
106136
IF(EXISTS ${CMAKE_SOURCE_DIR}/libmariadb)
107137
IF(GIT_BUILD_SRCPKG)
108138
# We don't want conn/c (wrong) src pkg to be built.
@@ -254,33 +284,6 @@ ELSE()
254284

255285
ENDIF()
256286

257-
IF(WIN32 OR WITH_OPENSSL)
258-
IF(WITH_OPENSSL)
259-
FIND_PACKAGE(OpenSSL)
260-
261-
IF(OPENSSL_FOUND)
262-
MESSAGE(STATUS "Configuring to build with OpenSSL")
263-
264-
ADD_DEFINITIONS(-DHAVE_OPENSSL)
265-
INCLUDE_DIRECTORIES(${OPENSSL_INCLUDE_DIR})
266-
SET(SSL_LIBRARIES ${OPENSSL_LIBRARIES})
267-
268-
IF(OPENSSL_CRYPTO_LIBRARIES)
269-
SET(SSL_LIBRARIES ${SSL_LIBRARIES} ${OPENSSL_CRYPTO_LIBRARIES})
270-
ENDIF()
271-
272-
SET(PLATFORM_DEPENDENCIES ${PLATFORM_DEPENDENCIES} ${SSL_LIBRARIES})
273-
ELSE()
274-
MESSAGE(FATAL_ERROR "OpenSSL not found. Please install OpenSSL or disable SSL support via option -DWITH_OPENSSL=Off")
275-
ENDIF()
276-
ELSE()
277-
MESSAGE(STATUS "Configuring SSL support using SChannel")
278-
SET(PLATFORM_DEPENDENCIES ${PLATFORM_DEPENDENCIES} version.lib)
279-
ENDIF()
280-
ELSE()
281-
MESSAGE(STATUS "Configuring to build without SSL support")
282-
ENDIF()
283-
284287
SET(LIBRARY_NAME "maodbc")
285288
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/mariadb-odbc-driver.def.in
286289
${CMAKE_SOURCE_DIR}/mariadb-odbc-driver-uni.def)

libmariadb

osxinstall/CMakeLists.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,8 @@ ELSE()
6161
ENDIF()
6262

6363
ADD_CUSTOM_TARGET(maodbcpkg
64-
COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/build_package.sh ${PRODUCT_IDENTIFIER} ${PRODUCT_VERSION} ${PKG_PACKAGE}
65-
DEPENDS copypkgfiles ${CMAKE_CURRENT_BINARY_DIR}/scripts/postinstall distribution.plist README.html WELCOME.html LICENSE.html
64+
COMMAND ${CMAKE_CURRENT_BINARY_DIR}/build_package.sh ${PRODUCT_IDENTIFIER} ${PRODUCT_VERSION} ${PKG_PACKAGE}
65+
DEPENDS copypkgfiles ${CMAKE_CURRENT_BINARY_DIR}/scripts/postinstall ${CMAKE_CURRENT_BINARY_DIR}/distribution.plist README.html ${CMAKE_CURRENT_BINARY_DIR}/WELCOME.html LICENSE.html
6666
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
6767

6868
SET_TARGET_PROPERTIES(maodbcpkg PROPERTIES EXCLUDE_FROM_ALL OFF)

osxinstall/build_package.sh.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,4 @@
1919
# *************************************************************************************/
2020

2121
pkgbuild --root ROOT --scripts scripts --identifier $1 --version $2 libmaodbc.pkg
22-
productbuild --distribution distribution.plist --resources . --package-path libmaodbc.pkg @SIGN_WITH_DEVID@ $3
22+
productbuild --distribution @CMAKE_CURRENT_BINARY_DIR@/distribution.plist --resources . --package-path libmaodbc.pkg @SIGN_WITH_DEVID@ $3

0 commit comments

Comments
 (0)