diff --git a/CMakeLists.txt b/CMakeLists.txt index a693d962..eeb8f6a5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,15 +1,6 @@ # CMakeLists.txt - # This is the LGPL libmariadb project. -PROJECT(mariadb-connector-c C) - -SET(PACKAGE_STATUS_SUFFIX "alpha") - -SET(CPACK_PACKAGE_VERSION_MAJOR 3) -SET(CPACK_PACKAGE_VERSION_MINOR 1) -SET(CPACK_PACKAGE_VERSION_PATCH 0) -SET(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") CMAKE_MINIMUM_REQUIRED(VERSION 2.8 FATAL_ERROR) @@ -25,48 +16,83 @@ IF(COMMAND CMAKE_POLICY) ENDFOREACH() ENDIF() +IF (NOT DEFINED CMAKE_PROJECT_NAME) + # Standalone project + PROJECT(mariadb-connector-c C) +ELSE() + # do not inherit include directories from the parent project + SET_PROPERTY(DIRECTORY PROPERTY INCLUDE_DIRECTORIES) + FOREACH(V WITH_MYSQLCOMPAT WITH_MSI WITH_SIGNCODE WITH_RTC WITH_UNITTEST + WITH_DYNCOL WITH_EXTERNAL_ZLIB WITH_CURL WITH_SQLITE WITH_SSL + INSTALL_LAYOUT WITH_TEST_SRCPKG) + SET(${V} ${${OPT}${V}}) + ENDFOREACH() +ENDIF() -SET(MARIADB_CONNECTOR_C_COPYRIGHT "2013-2016 MariaDB Corporation Ab") +SET(PACKAGE_STATUS_SUFFIX "alpha") + +SET(CC_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) +SET(CC_BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}) + +SET(CPACK_PACKAGE_VERSION_MAJOR 3) +SET(CPACK_PACKAGE_VERSION_MINOR 1) +SET(CPACK_PACKAGE_VERSION_PATCH 0) +SET(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") + +MACRO(ADD_OPTION _name _text _default) + IF(NOT DEFINED ${_name}) + SET(${_name} ${_default}) + ENDIF() + OPTION(${OPT}${_name} "${_text}" "${${_name}}") +ENDMACRO() ### Options ### IF(NOT WIN32) - OPTION(WITH_MYSQLCOMPAT "creates libmysql* symbolic links" ON) + ADD_OPTION(WITH_MYSQLCOMPAT "creates libmysql* symbolic links" ON) ELSE() - OPTION(WITH_MSI "Build MSI installation package" OFF) - OPTION(WITH_SIGNCODE "digitally sign files" OFF) - OPTION(WITH_RTC "enables run time checks for debug builds" OFF) + ADD_OPTION(WITH_MSI "Build MSI installation package" OFF) + ADD_OPTION(WITH_SIGNCODE "digitally sign files" OFF) + ADD_OPTION(WITH_RTC "enables run time checks for debug builds" OFF) ENDIF() -OPTION(WITH_UNITTEST "build test suite" ON) -OPTION(WITH_DYNCOL "Enables support of dynamic coluumns" ON) -OPTION(WITH_EXTERNAL_ZLIB "Enables use of external zlib" OFF) +ADD_OPTION(WITH_UNITTEST "build test suite" ON) +ADD_OPTION(WITH_DYNCOL "Enables support of dynamic coluumns" ON) +ADD_OPTION(WITH_EXTERNAL_ZLIB "Enables use of external zlib" OFF) +ADD_OPTION(WITH_CURL "Enables use of curl" ON) +ADD_OPTION(WITH_SQLITE "Experimental" OFF) +MARK_AS_ADVANCED(${OPT}WITH_SQLITE) ############### + +INCLUDE(${CC_SOURCE_DIR}/cmake/misc.cmake) + +IF (WITH_CURL) + INCLUDE(FindCURL) + IF(CURL_FOUND) + ADD_DEFINITIONS(-DHAVE_CURL=1) + ENDIF() +ENDIF() + IF(WITH_SIGNCODE) - IF(WIN32) + IF(WIN32 AND NOT SIGN_OPTIONS) SET(SIGN_OPTIONS /a /t http://timestamp.verisign.com/scripts/timstamp.dll) ENDIF() MARK_AS_ADVANCED(SIGN_OPTIONS) ENDIF() +SET(MARIADB_CONNECTOR_C_COPYRIGHT "2013-2016 MariaDB Corporation Ab") + IF(WITH_RTC) SET(RTC_OPTIONS "/RTC1 /RTCc") ENDIF() -IF(NOT FOR_SERVER) -INCLUDE(FindCURL) -IF(CURL_FOUND) - ADD_DEFINITIONS(-DHAVE_CURL=1) -ENDIF() -ENDIF(NOT FOR_SERVER) - IF(NOT WIN32) - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/FindGSSAPI.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/FindGSSAPI.cmake) IF(GSSAPI_FOUND) INCLUDE_DIRECTORIES(${GSSAPI_INCS}) ENDIF() ENDIF() -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/plugins.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/plugins.cmake) IF(AUTH_GSSAPI_PLUGIN_TYPE MATCHES "STATIC") SET(SYSTEM_LIBS ${SYSTEM_LIBS} ${GSSAPI_LIBS}) @@ -74,13 +100,13 @@ ENDIF() IF(WIN32) - FILE(REMOVE ${PROJECT_BINARY_DIR}/win/packaging/plugin.conf) - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/version_info.cmake) + FILE(REMOVE ${CC_BINARY_DIR}/win/packaging/plugin.conf) + INCLUDE(${CC_SOURCE_DIR}/cmake/version_info.cmake) ENDIF() IF(MSVC) # Speedup system tests - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/WindowsCache.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/WindowsCache.cmake) IF (MSVC) SET(CONFIG_TYPES "DEBUG" "RELEASE" "RELWITHDEBINFO") FOREACH(BUILD_TYPE ${CONFIG_TYPES}) @@ -134,7 +160,7 @@ IF(NOT MARIADB_UNIX_ADDR) SET(MARIADB_UNIX_ADDR "/tmp/mysql.sock") ENDIF() -INCLUDE("${PROJECT_SOURCE_DIR}/cmake/install.cmake") +INCLUDE("${CC_SOURCE_DIR}/cmake/install.cmake") IF(NOT PLUGINDIR) SET(PLUGINDIR "${PREFIX_INSTALL_DIR}/${PLUGIN_INSTALL_DIR}") ENDIF() @@ -143,7 +169,7 @@ ENDIF() SET(SHAREDIR "share") SET(DEFAULT_CHARSET_HOME "${CMAKE_INSTALL_PREFIX}") -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/SearchLibrary.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/SearchLibrary.cmake) IF(WITH_EXTERNAL_ZLIB) FIND_PACKAGE(ZLIB) @@ -165,7 +191,7 @@ IF(UNIX) ${LIBSOCKET} ${LIBDL} ${LIBM} ${LIBPTHREAD}) SET(SYSTEM_LIBS ${LIBNSL} ${LIBBIND} ${LIBICONV} ${LIBSOCKET} ${LIBDL} ${LIBM} ${LIBPTHREAD}) - MESSAGE(STATUS "SYSTEM_LIBS ${SYSTEM_LIBS}") + MESSAGE1(SYSTEM_LIBS "SYSTEM_LIBS ${SYSTEM_LIBS}") #remove possible dups from required libraries LIST(LENGTH CMAKE_REQUIRED_LIBRARIES rllength) IF(${rllength} GREATER 0) @@ -194,11 +220,11 @@ ELSEIF() ENDIF() # check for various include files -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/CheckIncludeFiles.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/CheckIncludeFiles.cmake) # check for various functions -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/CheckFunctions.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/CheckFunctions.cmake) # check for various types -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/CheckTypes.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/CheckTypes.cmake) IF(NOT WITH_SSL AND NOT WITH_SSL STREQUAL "OFF") IF(WIN32) @@ -213,29 +239,29 @@ IF(NOT WITH_SSL STREQUAL "OFF") FIND_PACKAGE(OpenSSL) IF(OPENSSL_FOUND) ADD_DEFINITIONS(-DHAVE_OPENSSL -DHAVE_TLS) - SET(SSL_SOURCES "${PROJECT_SOURCE_DIR}/libmariadb/secure/openssl.c") + SET(SSL_SOURCES "${CC_SOURCE_DIR}/libmariadb/secure/openssl.c") SET(SSL_LIBRARIES ${OPENSSL_LIBRARIES} ${OPENSSL_CRYPTO_LIBRARIES}) INCLUDE_DIRECTORIES(BEFORE ${OPENSSL_INCLUDE_DIR}) - MESSAGE(STATUS "OpenSSL version: ${OPENSSL_VERSION}") + MESSAGE1(OPENSSL_VERSION "OpenSSL version: ${OPENSSL_VERSION}") ELSE() - MESSAGE(WARNING "OpenSSL not found") + MESSAGE1(OPENSSL_VERSION "OpenSSL not found") ENDIF() ENDIF() IF(WITH_SSL STREQUAL "GNUTLS") FIND_PACKAGE(GnuTLS) IF(GNUTLS_FOUND) ADD_DEFINITIONS(-DHAVE_GNUTLS -DHAVE_TLS) - SET(SSL_SOURCES "${PROJECT_SOURCE_DIR}/libmariadb/secure/gnutls.c") + SET(SSL_SOURCES "${CC_SOURCE_DIR}/libmariadb/secure/gnutls.c") SET(SSL_LIBRARIES ${GNUTLS_LIBRARY}) ELSE() - MESSAGE(FATAL "GnuTLS not found") + MESSAGE(FATAL_ERROR "GnuTLS not found") ENDIF() ENDIF() IF(WIN32) IF(WITH_SSL STREQUAL "SCHANNEL") ADD_DEFINITIONS(-DHAVE_SCHANNEL -DHAVE_TLS) - SET(SSL_SOURCES "${PROJECT_SOURCE_DIR}/libmariadb/secure/schannel.c" "${PROJECT_SOURCE_DIR}/libmariadb/secure/ma_schannel.c") - INCLUDE_DIRECTORIES("${PROJECT_SOURCE_DIR}/plugins/pvio/") + SET(SSL_SOURCES "${CC_SOURCE_DIR}/libmariadb/secure/schannel.c" "${CC_SOURCE_DIR}/libmariadb/secure/ma_schannel.c") + INCLUDE_DIRECTORIES("${CC_SOURCE_DIR}/plugins/pvio/") ENDIF() ENDIF() @@ -243,15 +269,17 @@ IF(NOT WITH_SSL STREQUAL "OFF") ENDIF() IF(NOT WIN32) - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/FindIconv.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/FindIconv.cmake) ENDIF() -CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/include/ma_config.h.in - ${CMAKE_CURRENT_BINARY_DIR}/include/ma_config.h) -CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/include/mariadb_version.h.in - ${CMAKE_CURRENT_SOURCE_DIR}/include/mariadb_version.h) +CONFIGURE_FILE(${CC_SOURCE_DIR}/include/ma_config.h.in + ${CC_BINARY_DIR}/include/ma_config.h) +CONFIGURE_FILE(${CC_SOURCE_DIR}/include/ma_config.h.in + ${CC_BINARY_DIR}/include/config.h) +CONFIGURE_FILE(${CC_SOURCE_DIR}/include/mariadb_version.h.in + ${CC_BINARY_DIR}/include/mariadb_version.h) -INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/include) +INCLUDE_DIRECTORIES(${CC_BINARY_DIR}/include) IF(WIN32) SET(SYSTEM_LIBS ws2_32 advapi32 kernel32) @@ -277,7 +305,7 @@ IF(NOT REMOTEIO_PLUGIN_TYPE MATCHES "OFF") ENDIF() IF(NOT WIN32) IF(NOT AUTH_GSSAPI_PLUGIN_TYPE MATCHES "OFF") - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/FindGSSAPI.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/FindGSSAPI.cmake) IF(GSSAPI_FOUND) INCLUDE_DIRECTORIES(${GSSAPI_INCS}) IF(AUTH_GSSAPI_PLUGIN_TYPE MATCHES "STATIC") @@ -293,7 +321,7 @@ IF(NOT WIN32) ADD_SUBDIRECTORY(mariadb_config) ENDIF() -IF(IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/unittest) +IF(IS_DIRECTORY ${CC_SOURCE_DIR}/unittest) IF(WITH_UNITTEST STREQUAL "ON") ADD_SUBDIRECTORY(unittest/mytap) ADD_SUBDIRECTORY(unittest/libmariadb) @@ -302,7 +330,8 @@ ENDIF() IF(CLIENT_DOCS) INSTALL(DIRECTORY ${CLIENT_DOCS} - DESTINATION ${DOCS_INSTALL_DIR_${INSTALL_LAYOUT}}) + DESTINATION ${DOCS_INSTALL_DIR_${INSTALL_LAYOUT}} + COMPONENT SharedLibraries) ENDIF() @@ -314,8 +343,8 @@ SET(CPACK_PACKAGE_VENDOR "MariaDB Corporation Ab") SET(CPACK_PACKAGE_DESCRIPTION "MariaDB Connector/C. A library for connecting to MariaDB and MySQL servers") SET(CPACK_PACKAGE_NAME "mariadb_connector_c") STRING(TOLOWER ${CMAKE_SYSTEM_NAME} system_name) -SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING.LIB") -SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README") +SET(CPACK_RESOURCE_FILE_LICENSE "${CC_SOURCE_DIR}/COPYING.LIB") +SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CC_SOURCE_DIR}/README") INCLUDE(cmake/ConnectorName.cmake) IF(NOT PACKAGE_STATUS_SUFFIX) SET(CPACK_SOURCE_PACKAGE_FILE_NAME "mariadb-connector-c-${CPACK_PACKAGE_VERSION}-src") @@ -330,7 +359,7 @@ IF(GIT_BUILD_SRCPKG) EXECUTE_PROCESS(COMMAND git show-branch OUTPUT_VARIABLE git_branch) STRING(REGEX MATCH "\\[([^]]+)\\]" git_branch ${git_branch}) STRING(REGEX REPLACE "\\[|\\]" "" GIT_BRANCH ${git_branch}) - MESSAGE(STATUS "${GIT_BRANCH}") + MESSAGE1(GIT_BRANCH "${GIT_BRANCH}") IF(WIN32) EXECUTE_PROCESS(COMMAND git archive ${GIT_BRANCH} --format=zip --prefix=${CPACK_SOURCE_PACKAGE_FILE_NAME}/ --output=${CPACK_SOURCE_PACKAGE_FILE_NAME}.zip) ELSE() @@ -368,7 +397,7 @@ include/my_config\\\\.h$ ) IF(WITH_TEST_SRCPKG) - SET(PACKAGE_FILE ${PROJECT_SOURCE_DIR}/package.name) + SET(PACKAGE_FILE ${CC_SOURCE_DIR}/package.name) FILE(REMOVE ${PACKAGE_FILE}) FILE(WRITE ${PACKAGE_FILE} ${CPACK_SOURCE_PACKAGE_FILE_NAME}) ENDIF() @@ -382,21 +411,20 @@ ELSE() ENDIF() INCLUDE(CPack) -MESSAGE(STATUS "MariaDB Connector/c configuration:") -MESSAGE(STATUS "CPack generation: ${CPACK_GENERATOR}") -IF(CLIENT_DOCS) - MESSAGE(STATUS "Documentation included from ${CLIENT_DOCS}") -ENDIF() -MESSAGE(STATUS "SSL support: ${WITH_SSL} Libs: ${SSL_LIBRARIES}") -MESSAGE(STATUS "Experimental Sqlite support: ${WITH_SQLITE}") IF(WITH_EXTERNAL_ZLIB) - MESSAGE(STATUS "Zlib support: ${WITH_EXTERNAL_ZLIB}") + SET(zlib_status: ${WITH_EXTERNAL_ZLIB}) ELSE() - MESSAGE(STATUS "Zlib support: yes (using bundled zlib)") + SET(zlib_status: "yes (using bundled zlib") ENDIF() -MESSAGE(STATUS "Installation layout: ${INSTALL_LAYOUT}") -MESSAGE(STATUS "Include files will be installed in ${PREFIX_INSTALL_DIR}/${INCLUDE_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}") -MESSAGE(STATUS "Libraries will be installed in ${PREFIX_INSTALL_DIR}/${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}") -MESSAGE(STATUS "Binaries will be installed in ${PREFIX_INSTALL_DIR}/${BIN_INSTALL_DIR}") -MESSAGE(STATUS "Required: ${CMAKE_REQUIRED_LIBRARIES}") +MESSAGE1(STATUS "MariaDB Connector/c configuration: +-- CPack generation: ${CPACK_GENERATOR} +-- SSL support: ${WITH_SSL} Libs: ${SSL_LIBRARIES} +-- Experimental Sqlite support: ${WITH_SQLITE} +-- Zlib support: ${zlib_status} +-- Installation layout: ${INSTALL_LAYOUT} +-- Include files will be installed in ${PREFIX_INSTALL_DIR}/${INCLUDE_INSTALL_DIR}/${SUFFIX_INSTALL_DIR} +-- Libraries will be installed in ${PREFIX_INSTALL_DIR}/${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR} +-- Binaries will be installed in ${PREFIX_INSTALL_DIR}/${BIN_INSTALL_DIR} +-- Documentation included from ${CLIENT_DOCS} +-- Required: ${CMAKE_REQUIRED_LIBRARIES}") diff --git a/client/CMakeLists.txt b/client/CMakeLists.txt index cbc5ed91..841d0221 100644 --- a/client/CMakeLists.txt +++ b/client/CMakeLists.txt @@ -1,4 +1,4 @@ -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) IF(WIN32) SET_VERSION_INFO("TARGET:mariadb_client_plugin_info" @@ -12,5 +12,6 @@ ADD_EXECUTABLE(mariadb_client_plugin_info ${mariadb_client_plugin_info_RC} ma_pl TARGET_LINK_LIBRARIES(mariadb_client_plugin_info mariadbclient) INSTALL(TARGETS mariadb_client_plugin_info - DESTINATION "bin") + DESTINATION "bin" + COMPONENT SharedLibraries) SIGN_TARGET(mariadb_client_plugin_info) diff --git a/cmake/install.cmake b/cmake/install.cmake index 56649e7e..7cfc868b 100644 --- a/cmake/install.cmake +++ b/cmake/install.cmake @@ -46,7 +46,7 @@ ENDIF() SET(VALID_INSTALL_LAYOUTS "DEFAULT" "RPM") LIST(FIND VALID_INSTALL_LAYOUTS "${INSTALL_LAYOUT}" layout_no) IF(layout_no EQUAL -1) - MESSAGE(FATAL_ERROR "Invalid installation layout. Please specify one of the following layouts: ${VALID_INSTALL_LAYOUTS}") + MESSAGE(FATAL_ERROR "Invalid installation layout ${INSTALL_LAYOUT}. Please specify one of the following layouts: ${VALID_INSTALL_LAYOUTS}") ENDIF() diff --git a/cmake/install_plugins.cmake b/cmake/install_plugins.cmake index 1db3b50f..5f2beed2 100644 --- a/cmake/install_plugins.cmake +++ b/cmake/install_plugins.cmake @@ -9,10 +9,11 @@ MACRO(INSTALL_PLUGIN name binary_dir) INSTALL(TARGETS ${name} + COMPONENT ClientPlugins RUNTIME DESTINATION "${PLUGIN_INSTALL_DIR}" LIBRARY DESTINATION "${PLUGIN_INSTALL_DIR}" ARCHIVE DESTINATION "${PLUGIN_INSTALL_DIR}") IF(WIN32) - FILE(APPEND ${PROJECT_BINARY_DIR}/win/packaging/plugin.conf "\n") + FILE(APPEND ${CC_BINARY_DIR}/win/packaging/plugin.conf "\n") ENDIF() ENDMACRO() diff --git a/cmake/misc.cmake b/cmake/misc.cmake new file mode 100644 index 00000000..0b7149b2 --- /dev/null +++ b/cmake/misc.cmake @@ -0,0 +1,13 @@ +IF ("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}.${CMAKE_PATCH_VERSION}" VERSION_LESS "2.8.7") + FUNCTION(MESSAGE1 id out) + MESSAGE(STATUS "${out}") + ENDFUNCTION() +ELSE() + FUNCTION(MESSAGE1 id out) + STRING(MD5 hash "${out}") + IF(NOT __msg1_${id} STREQUAL "${hash}") + MESSAGE(STATUS "${out}") + ENDIF() + SET(__msg1_${id} ${hash} CACHE INTERNAL "") + ENDFUNCTION() +ENDIF() diff --git a/cmake/plugins.cmake b/cmake/plugins.cmake index afe25b63..0cde4551 100644 --- a/cmake/plugins.cmake +++ b/cmake/plugins.cmake @@ -31,23 +31,23 @@ ENDMACRO() MARK_AS_ADVANCED(PLUGINS) # CIO -REGISTER_PLUGIN("SOCKET" "${PROJECT_SOURCE_DIR}/plugins/pvio/pvio_socket.c" "pvio_socket_plugin" "STATIC" pvio_socket 0) +REGISTER_PLUGIN("SOCKET" "${CC_SOURCE_DIR}/plugins/pvio/pvio_socket.c" "pvio_socket_plugin" "STATIC" pvio_socket 0) IF(WIN32) - REGISTER_PLUGIN("NPIPE" "${PROJECT_SOURCE_DIR}/plugins/pvio/pvio_npipe.c" "pvio_npipe_plugin" "STATIC" pvio_npipe 1) - REGISTER_PLUGIN("SHMEM" "${PROJECT_SOURCE_DIR}/plugins/pvio/pvio_shmem.c" "pvio_shmem_plugin" "STATIC" pvio_shmem 1) + REGISTER_PLUGIN("NPIPE" "${CC_SOURCE_DIR}/plugins/pvio/pvio_npipe.c" "pvio_npipe_plugin" "STATIC" pvio_npipe 1) + REGISTER_PLUGIN("SHMEM" "${CC_SOURCE_DIR}/plugins/pvio/pvio_shmem.c" "pvio_shmem_plugin" "STATIC" pvio_shmem 1) ENDIF() # AUTHENTICATION -REGISTER_PLUGIN("AUTH_NATIVE" "${PROJECT_SOURCE_DIR}/plugins/auth/my_auth.c" "native_password_client_plugin" "STATIC" "" 0) -REGISTER_PLUGIN("AUTH_OLDPASSWORD" "${PROJECT_SOURCE_DIR}/plugins/auth/old_password.c" "old_password_client_plugin" "STATIC" "" 1) -REGISTER_PLUGIN("AUTH_DIALOG" "${PROJECT_SOURCE_DIR}/plugins/auth/dialog.c" "auth_dialog_plugin" "DYNAMIC" dialog 1) -REGISTER_PLUGIN("AUTH_CLEARTEXT" "${PROJECT_SOURCE_DIR}/plugins/auth/mariadb_clear_text.c" "auth_cleartext_plugin" "DYNAMIC" "mysql_clear_password" 1) +REGISTER_PLUGIN("AUTH_NATIVE" "${CC_SOURCE_DIR}/plugins/auth/my_auth.c" "native_password_client_plugin" "STATIC" "" 0) +REGISTER_PLUGIN("AUTH_OLDPASSWORD" "${CC_SOURCE_DIR}/plugins/auth/old_password.c" "old_password_client_plugin" "STATIC" "" 1) +REGISTER_PLUGIN("AUTH_DIALOG" "${CC_SOURCE_DIR}/plugins/auth/dialog.c" "auth_dialog_plugin" "DYNAMIC" dialog 1) +REGISTER_PLUGIN("AUTH_CLEARTEXT" "${CC_SOURCE_DIR}/plugins/auth/mariadb_clear_text.c" "auth_cleartext_plugin" "DYNAMIC" "mysql_clear_password" 1) IF(WIN32) - SET(GSSAPI_SOURCES ${PROJECT_SOURCE_DIR}/plugins/auth/auth_gssapi_client.c ${PROJECT_SOURCE_DIR}/plugins/auth/sspi_client.c ${PROJECT_SOURCE_DIR}/plugins/auth/sspi_errmsg.c) + SET(GSSAPI_SOURCES ${CC_SOURCE_DIR}/plugins/auth/auth_gssapi_client.c ${CC_SOURCE_DIR}/plugins/auth/sspi_client.c ${CC_SOURCE_DIR}/plugins/auth/sspi_errmsg.c) REGISTER_PLUGIN("AUTH_GSSAPI" "${GSSAPI_SOURCES}" "auth_gssapi_plugin" "DYNAMIC" "auth_gssapi_client" 1) ELSE() IF(GSSAPI_FOUND) - SET(GSSAPI_SOURCES ${PROJECT_SOURCE_DIR}/plugins/auth/auth_gssapi_client.c ${PROJECT_SOURCE_DIR}/plugins/auth/gssapi_client.c ${PROJECT_SOURCE_DIR}/plugins/auth/gssapi_errmsg.c) + SET(GSSAPI_SOURCES ${CC_SOURCE_DIR}/plugins/auth/auth_gssapi_client.c ${CC_SOURCE_DIR}/plugins/auth/gssapi_client.c ${CC_SOURCE_DIR}/plugins/auth/gssapi_errmsg.c) REGISTER_PLUGIN("AUTH_GSSAPI" "${GSSAPI_SOURCES}" "auth_gssapi_plugin" "DYNAMIC" "auth_gssapi_client" 1) ENDIF() ENDIF() @@ -55,18 +55,18 @@ ENDIF() #Remote_IO IF(CURL_FOUND) IF(WIN32) - REGISTER_PLUGIN("REMOTEIO" "${PROJECT_SOURCE_DIR}/plugins/io/remote_io.c" "remote_io_plugin" "DYNAMIC" "remote_io" 1) + REGISTER_PLUGIN("REMOTEIO" "${CC_SOURCE_DIR}/plugins/io/remote_io.c" "remote_io_plugin" "DYNAMIC" "remote_io" 1) ELSE() - REGISTER_PLUGIN("REMOTEIO" "${PROJECT_SOURCE_DIR}/plugins/io/remote_io.c" "remote_io_plugin" "DYNAMIC" "remote_io" 1) + REGISTER_PLUGIN("REMOTEIO" "${CC_SOURCE_DIR}/plugins/io/remote_io.c" "remote_io_plugin" "DYNAMIC" "remote_io" 1) ENDIF() ENDIF() #Trace -REGISTER_PLUGIN("TRACE_EXAMPLE" "${PROJECT_SOURCE_DIR}/plugins/trace/trace_example.c" "trace_example_plugin" "DYNAMIC" "trace_example" 1) +REGISTER_PLUGIN("TRACE_EXAMPLE" "${CC_SOURCE_DIR}/plugins/trace/trace_example.c" "trace_example_plugin" "DYNAMIC" "trace_example" 1) #Connection -REGISTER_PLUGIN("REPLICATION" "${PROJECT_SOURCE_DIR}/plugins/connection/replication.c" "connection_replication_plugin" "DYNAMIC" "replication" 1) -REGISTER_PLUGIN("AURORA" "${PROJECT_SOURCE_DIR}/plugins/connection/aurora.c" "connection_aurora_plugin" "DYNAMIC" "aurora" 1) +REGISTER_PLUGIN("REPLICATION" "${CC_SOURCE_DIR}/plugins/connection/replication.c" "connection_replication_plugin" "DYNAMIC" "replication" 1) +REGISTER_PLUGIN("AURORA" "${CC_SOURCE_DIR}/plugins/connection/aurora.c" "connection_aurora_plugin" "DYNAMIC" "aurora" 1) # Allow registration of additional plugins IF(PLUGIN_CONF_FILE) @@ -76,20 +76,20 @@ ENDIF() SET(LIBMARIADB_SOURCES "") -MESSAGE(STATUS "Plugin configuration:") FOREACH(PLUGIN ${PLUGINS}) - IF(WITH_${PLUGIN}_PLUGIN AND ${${PLUGIN}_PLUGIN_CHG} GREATER 0) - SET(${PLUGIN}_PLUGIN_TYPE ${WITH_${PLUGIN}_PLUGIN}) + IF(${OPT}WITH_${PLUGIN}_PLUGIN AND ${${PLUGIN}_PLUGIN_CHG} GREATER 0) + SET(${PLUGIN}_PLUGIN_TYPE ${${OPT}WITH_${PLUGIN}_PLUGIN}) ENDIF() IF(${PLUGIN}_PLUGIN_TYPE MATCHES "STATIC") SET(LIBMARIADB_SOURCES ${LIBMARIADB_SOURCES} ${${PLUGIN}_PLUGIN_SOURCE}) SET(EXTERNAL_PLUGINS "${EXTERNAL_PLUGINS}extern struct st_mysql_client_plugin ${${PLUGIN}_PLUGIN_STRUCT};\n") SET(BUILTIN_PLUGINS "${BUILTIN_PLUGINS}(struct st_mysql_client_plugin *)&${${PLUGIN}_PLUGIN_STRUCT},\n") ENDIF() - MESSAGE(STATUS "${PLUGIN}: ${${PLUGIN}_PLUGIN_TYPE}") + SET(plugin_config "${plugin_config}\n-- ${PLUGIN}: ${${PLUGIN}_PLUGIN_TYPE}") MARK_AS_ADVANCED(${PLUGIN}_PLUGIN_TYPE) ENDFOREACH() -MESSAGE(STATUS "STATIC PLUGIN SOURCES: ${LIBMARIADB_SOURCES}") +MESSAGE1(plugin_config "Plugin configuration:${plugin_config}") +MESSAGE1(LIBMARIADB_SOURCES "STATIC PLUGIN SOURCES: ${LIBMARIADB_SOURCES}") IF(NOT REMOTEIO_PLUGIN_TYPE MATCHES "NO") FIND_PACKAGE(CURL) @@ -98,7 +98,7 @@ ENDIF() # since some files contain multiple plugins, remove duplicates from source files LIST(REMOVE_DUPLICATES LIBMARIADB_SOURCES) -CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/libmariadb/ma_client_plugin.c.in - ${PROJECT_BINARY_DIR}/libmariadb/ma_client_plugin.c) +CONFIGURE_FILE(${CC_SOURCE_DIR}/libmariadb/ma_client_plugin.c.in + ${CC_BINARY_DIR}/libmariadb/ma_client_plugin.c) MARK_AS_ADVANCED(LIBMARIADB_SOURCES) diff --git a/cmake/symlink.cmake b/cmake/symlink.cmake index f69c11e1..eed83a17 100644 --- a/cmake/symlink.cmake +++ b/cmake/symlink.cmake @@ -32,6 +32,8 @@ IF(UNIX) "\${CMAKE_INSTALL_CONFIG_NAME}" output ${target_path}/${symlink_name}) ENDIF() - INSTALL(FILES ${target_path}/${symlink_name} DESTINATION ${install_path}) + # presumably this will be used for libmysql*.so symlinks + INSTALL(FILES ${target_path}/${symlink_name} DESTINATION ${install_path} + COMPONENT SharedLibraries) ENDIF() ENDMACRO() diff --git a/cmake/version_info.cmake b/cmake/version_info.cmake index 9d597a70..4b2324a7 100644 --- a/cmake/version_info.cmake +++ b/cmake/version_info.cmake @@ -9,8 +9,8 @@ FUNCTION(GET_FILE_VERSION FILE_NAME FILE_VERSION) # if we build from a git repository, we calculate the file version: # Patch number is numer of commits for given file - IF(EXISTS ${PROJECT_SOURCE_DIR}/.git) - EXECUTE_PROCESS(COMMAND git --git-dir=${PROJECT_SOURCE_DIR}/.git --work-tree=${PROJECT_SOURCE_DIR} rev-list HEAD --count -- ${FILE_NAME} + IF(EXISTS ${CC_SOURCE_DIR}/.git) + EXECUTE_PROCESS(COMMAND git --git-dir=${CC_SOURCE_DIR}/.git --work-tree=${CC_SOURCE_DIR} rev-list HEAD --count -- ${FILE_NAME} OUTPUT_VARIABLE FV) STRING(REPLACE "\n" "" FV ${FV}) SET(${FILE_VERSION} ${FV} PARENT_SCOPE) @@ -35,9 +35,9 @@ MACRO(SET_VERSION_INFO) STRING(REPLACE "FILE_DESCRIPTION:" "" FILE_DESCRIPTION ${PROPERTY}) ENDIF() ENDFOREACH() - CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/win/resource.rc.in - ${PROJECT_BINARY_DIR}/win/${TARGET}.rc) - SET(${TARGET}_RC ${PROJECT_BINARY_DIR}/win/${TARGET}.rc) + CONFIGURE_FILE(${CC_SOURCE_DIR}/win/resource.rc.in + ${CC_BINARY_DIR}/win/${TARGET}.rc) + SET(${TARGET}_RC ${CC_BINARY_DIR}/win/${TARGET}.rc) ENDMACRO() diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index d1862a58..574f61c5 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -1,7 +1,7 @@ SET(EXAMPLE_FILES "mysql_affected_rows" "mysql_debug") -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) ENABLE_TESTING() @@ -13,6 +13,6 @@ FOREACH(EXAMPLE_FILE ${EXAMPLE_FILES}) SET(XML_EXAMPLE_FILES $XML_EXAMPLE_FILES "examples/${EXAMPLE_FILE}.c") ADD_EXECUTABLE(${EXAMPLE_FILE} ${EXAMPLE_FILE}.c) TARGET_LINK_LIBRARIES(${EXAMPLE_FILE} mariadbclient) - ADD_TEST(TEST_${EXAMPLE_FILE} ./${EXECUTABLE_OUTPUT_PATH}/test_output ./${EXAMPLE_FILE} ${PROJECT_SOURCE_DIR}/examples/${EXAMPLE_FILE}.out ${PROJECT_SOURCE_DIR}/examples/${EXAMPLE_FILE}.exp) + ADD_TEST(TEST_${EXAMPLE_FILE} ./${EXECUTABLE_OUTPUT_PATH}/test_output ./${EXAMPLE_FILE} ${CC_SOURCE_DIR}/examples/${EXAMPLE_FILE}.out ${CC_SOURCE_DIR}/examples/${EXAMPLE_FILE}.exp) ENDFOREACH(EXAMPLE_FILE ${EXAMPLE_FILES}) diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt index 8f0db995..668b2875 100644 --- a/include/CMakeLists.txt +++ b/include/CMakeLists.txt @@ -1,31 +1,31 @@ -SET(MARIADB_CLIENT_INCLUDES ${PROJECT_SOURCE_DIR}/include/mariadb_com.h - ${PROJECT_SOURCE_DIR}/include/mysql.h - ${PROJECT_SOURCE_DIR}/include/mariadb_stmt.h - ${PROJECT_SOURCE_DIR}/include/ma_pvio.h - ${PROJECT_SOURCE_DIR}/include/ma_tls.h - ${PROJECT_SOURCE_DIR}/include/mariadb_version.h - ${PROJECT_SOURCE_DIR}/include/ma_list.h - ${PROJECT_SOURCE_DIR}/include/ma_errmsg.h - ${PROJECT_SOURCE_DIR}/include/mariadb_dyncol.h - ${PROJECT_SOURCE_DIR}/include/mariadb_ctype.h) +SET(MARIADB_CLIENT_INCLUDES ${CC_SOURCE_DIR}/include/mariadb_com.h + ${CC_SOURCE_DIR}/include/mysql.h + ${CC_SOURCE_DIR}/include/mariadb_stmt.h + ${CC_SOURCE_DIR}/include/ma_pvio.h + ${CC_SOURCE_DIR}/include/ma_tls.h + ${CC_SOURCE_DIR}/include/mariadb_version.h + ${CC_SOURCE_DIR}/include/ma_list.h + ${CC_SOURCE_DIR}/include/ma_errmsg.h + ${CC_SOURCE_DIR}/include/mariadb_dyncol.h + ${CC_SOURCE_DIR}/include/mariadb_ctype.h) SET(MYSQL_ADDITIONAL_INCLUDES - ${PROJECT_SOURCE_DIR}/include/mysql/client_plugin.h - ${PROJECT_SOURCE_DIR}/include/mysql/plugin_auth_common.h - ${PROJECT_SOURCE_DIR}/include/mysql/plugin_auth.h) + ${CC_SOURCE_DIR}/include/mysql/client_plugin.h + ${CC_SOURCE_DIR}/include/mysql/plugin_auth_common.h + ${CC_SOURCE_DIR}/include/mysql/plugin_auth.h) SET(MARIADB_ADDITIONAL_INCLUDES - ${PROJECT_SOURCE_DIR}/include/mariadb/ma_io.h) + ${CC_SOURCE_DIR}/include/mariadb/ma_io.h) INSTALL(FILES ${MARIADB_CLIENT_INCLUDES} DESTINATION ${INCLUDE_INSTALL_DIR}/${SUFFIX_INSTALL_DIR} - COMPONENT ALL) + COMPONENT Development) INSTALL(FILES ${MYSQL_ADDITIONAL_INCLUDES} DESTINATION ${INCLUDE_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}/mysql - COMPONENT ALL) + COMPONENT Development) INSTALL(FILES ${MARIADB_ADDITIONAL_INCLUDES} DESTINATION ${INCLUDE_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}/mariadb - COMPONENT ALL) + COMPONENT Development) diff --git a/libmariadb/CMakeLists.txt b/libmariadb/CMakeLists.txt index c7480f77..3afbc224 100644 --- a/libmariadb/CMakeLists.txt +++ b/libmariadb/CMakeLists.txt @@ -1,13 +1,13 @@ -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include ${ZLIB_INC} - ${PROJECT_SOURCE_DIR}/libmariadb) - + ${CC_SOURCE_DIR}/libmariadb) + ADD_DEFINITIONS(-D ENABLED_LOCAL_INFILE) ADD_DEFINITIONS(-D HAVE_COMPRESS) ADD_DEFINITIONS(-D LIBMARIADB) ADD_DEFINITIONS(-D THREAD) -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/sign.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/sign.cmake) SET(MARIADB_LIB_SYMBOLS mariadb_cancel @@ -272,16 +272,16 @@ ma_loaddata.c ma_stmt_codec.c ma_string.c ma_dtoa.c -${PROJECT_BINARY_DIR}/libmariadb/ma_client_plugin.c +${CC_BINARY_DIR}/libmariadb/ma_client_plugin.c ma_io.c ${SSL_SOURCES} ) IF(WIN32) ADD_DEFINITIONS(-DSIZEOF_CHARP=${CMAKE_SIZEOF_VOID_P}) - INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/win-iconv) + INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/win-iconv) SET(LIBMARIADB_SOURCES ${LIBMARIADB_SOURCES} - ${PROJECT_SOURCE_DIR}/win-iconv/win_iconv.c) + ${CC_SOURCE_DIR}/win-iconv/win_iconv.c) ELSE() IF(ICONV_INCLUDE_DIR) INCLUDE_DIRECTORIES(BEFORE ${ICONV_INCLUDE_DIR}) @@ -311,11 +311,11 @@ ELSE() ../zlib/zutil.c ) SET(LIBMARIADB_SOURCES ${LIBMARIADB_SOURCES} ${ZLIB_SOURCES}) - INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/zlib) + INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/zlib) ENDIF() IF(WITH_DYNCOL) - MESSAGE(STATUS "Dynamic column API support=ON") + MESSAGE1(WITH_DYNCOL "Dynamic column API support: ON") SET(MARIADB_LIB_SYMBOLS ${MARIADB_LIB_SYMBOLS} ${MARIADB_DYNCOL_SYMBOLS}) SET(LIBMARIADB_SOURCES ${LIBMARIADB_SOURCES} mariadb_dyncol.c) ENDIF() @@ -323,7 +323,7 @@ ENDIF() SET(LIBMARIADB_SOURCES ${LIBMARIADB_SOURCES} mariadb_async.c ma_context.c) SET(MARIADB_LIB_SYMBOLS ${MARIADB_LIB_SYMBOLS} ${MARIADB_NONBLOCK_SYMBOLS}) -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/export.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/export.cmake) CREATE_EXPORT_FILE(mariadbclient ${CMAKE_CURRENT_BINARY_DIR} "${MARIADB_LIB_SYMBOLS}") @@ -343,8 +343,8 @@ ENDIF() # Xcode doesn't support targets that have only object files, # so let's add an empty file to keep Xcode happy IF(CMAKE_GENERATOR MATCHES Xcode) - FILE(WRITE ${PROJECT_SOURCE_DIR}/libmariadb/empty.c "") - SET(EMPTY_FILE ${PROJECT_SOURCE_DIR}/libmariadb/empty.c) + FILE(WRITE ${CC_SOURCE_DIR}/libmariadb/empty.c "") + SET(EMPTY_FILE ${CC_SOURCE_DIR}/libmariadb/empty.c) ENDIF() IF(WIN32) @@ -359,14 +359,6 @@ ADD_LIBRARY(mariadbclient STATIC ${mariadbclient_RC} ${MARIADB_OBJECTS} ${EMPTY_ TARGET_LINK_LIBRARIES(mariadbclient ${SYSTEM_LIBS}) ADD_LIBRARY(libmariadb SHARED ${libmariadb_RC} ${MARIADB_OBJECTS} ${EMPTY_FILE} mariadbclient.def) TARGET_LINK_LIBRARIES(libmariadb ${SYSTEM_LIBS}) -IF(FOR_SERVER) - SET_TARGET_PROPERTIES(mariadbclient PROPERTIES OUTPUT_NAME mysqlclient) - IF(WIN32) - SET_TARGET_PROPERTIES(libmariadb PROPERTIES OUTPUT_NAME libmysql) - ELSE() - SET_TARGET_PROPERTIES(libmariadb PROPERTIES OUTPUT_NAME libmysqlclient) - ENDIF() -ENDIF() IF(UNIX) SET_TARGET_PROPERTIES(libmariadb PROPERTIES COMPILE_FLAGS "${CMAKE_SHARED_LIBRARY_C_FLAGS}") @@ -379,7 +371,7 @@ ENDIF() IF(CMAKE_SYSTEM_NAME MATCHES "Linux") TARGET_LINK_LIBRARIES (libmariadb "-Wl,--no-undefined") - TARGET_LINK_LIBRARIES (libmariadb "-Wl,--version-script=${PROJECT_BINARY_DIR}/libmariadb/mariadbclient.def") + TARGET_LINK_LIBRARIES (libmariadb "-Wl,--version-script=${CC_BINARY_DIR}/libmariadb/mariadbclient.def") ENDIF() SET_TARGET_PROPERTIES(mariadbclient PROPERTIES IMPORTED_INTERFACE_LINK_LIBRARIES "${SYSTEM_LIBS}") @@ -390,7 +382,7 @@ SET_TARGET_PROPERTIES(libmariadb PROPERTIES PREFIX "") # # Installation # -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/symlink.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/symlink.cmake) # There are still several projects which don't make use @@ -398,32 +390,17 @@ INCLUDE(${PROJECT_SOURCE_DIR}/cmake/symlink.cmake) # use mariadb client library we provide libmysql symlinks SET(INSTALL_PATH ${LIB_INSTALL_DIR}/${SUFFIX_INSTALL_DIR}) -IF(NOT FOR_SERVER) - SET_TARGET_PROPERTIES(libmariadb PROPERTIES VERSION - ${CPACK_PACKAGE_VERSION_MAJOR} - SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}) -ELSE() - SET(SHARED_LIB_MAJOR_VERSION 18 CACHE STRING "") - SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}.0.0" CACHE STRING "") - IF(CMAKE_SYSTEM_NAME MATCHES "Linux") - SET_TARGET_PROPERTIES(libmariadb PROPERTIES - VERSION ${SHARED_LIB_MAJOR_VERSION} - SOVERSION ${OS_SHARED_LIB_VERSION}) - ENDIF() - create_symlink(libmysqlclient_r${CMAKE_STATIC_LIBRARY_SUFFIX} mariadbclient ${INSTALL_PATH}) - create_symlink(libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX} libmariadb ${INSTALL_PATH}) -ENDIF() +SET_TARGET_PROPERTIES(libmariadb PROPERTIES VERSION + ${CPACK_PACKAGE_VERSION_MAJOR} + SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR}) -IF(NOT WIN32 AND WITH_MYSQLCOMPAT AND NOT FOR_SERVER) - create_symlink(libmysqlclient${CMAKE_SHARED_LIBRARY_SUFFIX} libmariadb ${INSTALL_PATH}) - create_symlink(libmysqlclient_r${CMAKE_SHARED_LIBRARY_SUFFIX} libmariadb ${INSTALL_PATH}) - create_symlink(libmysqlclient${CMAKE_STATIC_LIBRARY_SUFFIX} mariadbclient ${INSTALL_PATH}) - create_symlink(libmysqlclient_r${CMAKE_STATIC_LIBRARY_SUFFIX} mariadbclient ${INSTALL_PATH}) -ENDIF() - - -INSTALL(TARGETS - libmariadb mariadbclient +INSTALL(TARGETS mariadbclient + COMPONENT Development + RUNTIME DESTINATION "${INSTALL_PATH}" + LIBRARY DESTINATION "${INSTALL_PATH}" + ARCHIVE DESTINATION "${INSTALL_PATH}") +INSTALL(TARGETS libmariadb + COMPONENT SharedLibraries RUNTIME DESTINATION "${INSTALL_PATH}" LIBRARY DESTINATION "${INSTALL_PATH}" ARCHIVE DESTINATION "${INSTALL_PATH}") @@ -436,5 +413,6 @@ IF(WIN32) STRING(REPLACE "${CMAKE_CFG_INTDIR}" "\${CMAKE_INSTALL_CONFIG_NAME}" pdb_location ${pdb_location}) ENDIF() - INSTALL(FILES ${pdb_location} DESTINATION "${INSTALL_PATH}") + INSTALL(FILES ${pdb_location} DESTINATION "${INSTALL_PATH}" + COMPONENT Development) ENDIF() diff --git a/mariadb_config/CMakeLists.txt b/mariadb_config/CMakeLists.txt index d55b9642..e801d557 100644 --- a/mariadb_config/CMakeLists.txt +++ b/mariadb_config/CMakeLists.txt @@ -1,4 +1,4 @@ -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) # Figure out additional libraries for use with @@ -41,4 +41,5 @@ TARGET_LINK_LIBRARIES(mariadb_config) # Installation # INSTALL(TARGETS mariadb_config - DESTINATION "bin") + DESTINATION "bin" + COMPONENT Development) diff --git a/plugins/CMakeLists.txt b/plugins/CMakeLists.txt index 2ce1a940..78dab716 100644 --- a/plugins/CMakeLists.txt +++ b/plugins/CMakeLists.txt @@ -1,7 +1,4 @@ -IF(FOR_SERVER) - RETURN() -ENDIF() -FILE(GLOB plugin_dirs ${PROJECT_SOURCE_DIR}/plugins/*) +FILE(GLOB plugin_dirs ${CC_SOURCE_DIR}/plugins/*) FOREACH(dir ${plugin_dirs}) IF (EXISTS ${dir}/CMakeLists.txt) ADD_SUBDIRECTORY(${dir}) diff --git a/plugins/auth/CMakeLists.txt b/plugins/auth/CMakeLists.txt index e679f3b4..14a00518 100644 --- a/plugins/auth/CMakeLists.txt +++ b/plugins/auth/CMakeLists.txt @@ -1,9 +1,9 @@ -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/plugins/auth) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/plugins/auth) -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/install_plugins.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/install_plugins.cmake) IF(WITH_SIGNCODE) - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/sign.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/sign.cmake) ENDIF() # Dialog plugin @@ -16,13 +16,13 @@ IF(AUTH_DIALOG_PLUGIN_TYPE MATCHES "DYNAMIC") "ORIGINAL_FILE_NAME:dialog.dll" "FILE_DESCRIPTION:Authentication plugin") ENDIF() - SET(DIALOG_SOURCES ${ialog_RC} dialog.c ${PROJECT_SOURCE_DIR}/libmariadb/get_password.c) + SET(DIALOG_SOURCES ${ialog_RC} dialog.c ${CC_SOURCE_DIR}/libmariadb/get_password.c) IF(WIN32) - SET(DIALOG_SOURCES ${DIALOG_SOURCES} ${PROJECT_SOURCE_DIR}/plugins/plugin.def) + SET(DIALOG_SOURCES ${DIALOG_SOURCES} ${CC_SOURCE_DIR}/plugins/plugin.def) ENDIF() ADD_LIBRARY(dialog MODULE ${DIALOG_SOURCES}) SET_TARGET_PROPERTIES(dialog PROPERTIES PREFIX "") - INSTALL_PLUGIN(dialog ${PROJECT_BINARY_DIR}/plugins/auth) + INSTALL_PLUGIN(dialog ${CC_BINARY_DIR}/plugins/auth) SIGN_TARGET(dialog) ENDIF() @@ -38,11 +38,11 @@ IF(AUTH_OLDPASSWORD_PLUGIN_TYPE MATCHES "DYNAMIC") ENDIF() SET(OLDPASSWORD_SOURCES ${old_password_RC} old_password.c) IF(WIN32) - SET(OLDPASSWORD_SOURCES ${DIALOG_SOURCES} ${PROJECT_SOURCE_DIR}/plugins/plugin.def) + SET(OLDPASSWORD_SOURCES ${DIALOG_SOURCES} ${CC_SOURCE_DIR}/plugins/plugin.def) ENDIF() ADD_LIBRARY(mysql_old_password MODULE ${OLDPASSWORD_SOURCES}) SET_TARGET_PROPERTIES(mysql_old_password PROPERTIES PREFIX "") - INSTALL_PLUGIN(mysql_old_password ${PROJECT_BINARY_DIR}/plugins/auth) + INSTALL_PLUGIN(mysql_old_password ${CC_BINARY_DIR}/plugins/auth) SIGN_TARGET(mysql_old_password) ENDIF() @@ -58,11 +58,11 @@ IF(AUTH_CLEARTEXT_PLUGIN_TYPE MATCHES "DYNAMIC") ENDIF() SET(CTEXT_SOURCES mariadb_cleartext.c) IF(WIN32) - SET(CTEXT_SOURCES ${CTEXT_SOURCES} ${mysql_clear_password_RC} ${PROJECT_SOURCE_DIR}/plugins/plugin.def) + SET(CTEXT_SOURCES ${CTEXT_SOURCES} ${mysql_clear_password_RC} ${CC_SOURCE_DIR}/plugins/plugin.def) ENDIF() ADD_LIBRARY(mysql_clear_password MODULE ${CTEXT_SOURCES}) SET_TARGET_PROPERTIES(mysql_clear_password PROPERTIES PREFIX "") - INSTALL_PLUGIN(mysql_clear_password ${PROJECT_BINARY_DIR}/plugins/auth) + INSTALL_PLUGIN(mysql_clear_password ${CC_BINARY_DIR}/plugins/auth) SIGN_TARGET(mysql_clear_password) ENDIF() @@ -71,7 +71,7 @@ IF(WIN32) SET(USE_SSPI 1) ENDIF() -MESSAGE(STATUS "GSSAPI: ${AUTH_GSSAPI_PLUGIN_TYPE}") +MESSAGE1(GSSAPI "GSSAPI: ${AUTH_GSSAPI_PLUGIN_TYPE}") IF(${AUTH_GSSAPI_PLUGIN_TYPE} MATCHES "DYNAMIC") IF(WIN32) SET_VERSION_INFO("TARGET:auth_gssapi_client" @@ -80,7 +80,7 @@ IF(${AUTH_GSSAPI_PLUGIN_TYPE} MATCHES "DYNAMIC") "ORIGINAL_FILE_NAME:auth_gssapi_client.dll" "FILE_DESCRIPTION:Authentication plugin") ADD_DEFINITIONS(-DHAVE_AUTH_GSSAPI_DYNAMIC=1) - SET(GSSAPI_SOURCES auth_gssapi_client.c sspi_client.c sspi_errmsg.c ${PROJECT_SOURCE_DIR}/plugins/plugin.def ${gssapi_RC}) + SET(GSSAPI_SOURCES auth_gssapi_client.c sspi_client.c sspi_errmsg.c ${CC_SOURCE_DIR}/plugins/plugin.def ${gssapi_RC}) ELSE() IF(GSSAPI_FOUND) SET(GSSAPI_SOURCES auth_gssapi_client.c gssapi_client.c gssapi_errmsg.c) @@ -94,7 +94,7 @@ IF(${AUTH_GSSAPI_PLUGIN_TYPE} MATCHES "DYNAMIC") TARGET_LINK_LIBRARIES(auth_gssapi_client ${GSSAPI_LIBS}) ENDIF() SET_TARGET_PROPERTIES(auth_gssapi_client PROPERTIES PREFIX "") - INSTALL_PLUGIN(auth_gssapi_client ${PROJECT_BINARY_DIR}/plugins/auth) + INSTALL_PLUGIN(auth_gssapi_client ${CC_BINARY_DIR}/plugins/auth) SIGN_TARGET(auth_gssapi_client) ENDIF() ENDIF() diff --git a/plugins/connection/CMakeLists.txt b/plugins/connection/CMakeLists.txt index 8f6af6b4..c51b7c3a 100644 --- a/plugins/connection/CMakeLists.txt +++ b/plugins/connection/CMakeLists.txt @@ -3,7 +3,7 @@ IF(WIN32) ENDIF() SET(CMAKE_SHARED_LIBRARY_PREFIX "") -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) IF(REPLICATION_PLUGIN_TYPE MATCHES "DYNAMIC") IF(WIN32) @@ -41,6 +41,7 @@ ENDIF() IF(INSTALL_LIBS) INSTALL(TARGETS ${INSTALL_LIBS} + COMPONENT ClientPlugins RUNTIME DESTINATION "${PLUGIN_INSTALL_DIR}" LIBRARY DESTINATION "${PLUGIN_INSTALL_DIR}" ARCHIVE DESTINATION "${PLUGIN_INSTALL_DIR}") diff --git a/plugins/io/CMakeLists.txt b/plugins/io/CMakeLists.txt index a3303b40..276a733e 100644 --- a/plugins/io/CMakeLists.txt +++ b/plugins/io/CMakeLists.txt @@ -1,8 +1,8 @@ -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/install_plugins.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/install_plugins.cmake) IF(WITH_SIGNCODE) - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/sign.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/sign.cmake) ENDIF() IF(REMOTEIO_PLUGIN_TYPE MATCHES "DYNAMIC") @@ -18,10 +18,10 @@ IF(REMOTEIO_PLUGIN_TYPE MATCHES "DYNAMIC") INCLUDE_DIRECTORIES(${CURL_INCLUDE_DIR}) SET(REMOTE_IO_SOURCES ${remote_io_RC} remote_io.c) ADD_DEFINITIONS(-DHAVE_REMOTEIO_DYNAMIC=1) - ADD_LIBRARY(remote_io MODULE ${REMOTE_IO_SOURCES} ${PROJECT_SOURCE_DIR}/plugins/plugin.def) + ADD_LIBRARY(remote_io MODULE ${REMOTE_IO_SOURCES} ${CC_SOURCE_DIR}/plugins/plugin.def) TARGET_LINK_LIBRARIES(remote_io ${CURL_LIBRARIES}) SET_TARGET_PROPERTIES(remote_io PROPERTIES PREFIX "") - INSTALL_PLUGIN(remote_io ${PROJECT_BINARY_DIR}/plugins/io) + INSTALL_PLUGIN(remote_io ${CC_BINARY_DIR}/plugins/io) SIGN_TARGET(remote_io) ENDIF() ENDIF() diff --git a/plugins/pvio/CMakeLists.txt b/plugins/pvio/CMakeLists.txt index 726fb0a0..98c527ef 100644 --- a/plugins/pvio/CMakeLists.txt +++ b/plugins/pvio/CMakeLists.txt @@ -2,12 +2,12 @@ IF(WIN32) SET(EXPORT_FILE "pvio_plugin.def") ENDIF() -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/install_plugins.cmake) +INCLUDE(${CC_SOURCE_DIR}/cmake/install_plugins.cmake) IF(WITH_SIGNCODE) - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/sign.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/sign.cmake) ENDIF() -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) SET(CMAKE_SHARED_LIBRARY_PREFIX "") @@ -21,7 +21,7 @@ IF(SOCKET_PLUGIN_TYPE MATCHES "DYNAMIC") ENDIF() ADD_DEFINITIONS(-DHAVE_SOCKET_DYNAMIC=1) ADD_LIBRARY(pvio_socket MODULE ${pvio_socket_RC} pvio_socket.c ${EXPORT_FILE}) - INSTALL_PLUGIN(pvio_socket ${PROJECT_BINARY_DIR}/plugins/pvio) + INSTALL_PLUGIN(pvio_socket ${CC_BINARY_DIR}/plugins/pvio) SIGN_TARGET(pvio_socket) ENDIF() @@ -36,7 +36,7 @@ IF(WIN32) ENDIF() ADD_DEFINITIONS(-DHAVE_NPIPE_DYNAMIC=1) ADD_LIBRARY(pvio_npipe MODULE ${pvio_npipe_RC} pvio_npipe.c ${EXPORT_FILE}) - INSTALL_PLUGIN(pvio_npipe ${PROJECT_BINARY_DIR}/plugins/pvio) + INSTALL_PLUGIN(pvio_npipe ${CC_BINARY_DIR}/plugins/pvio) SIGN_TARGET(pvio_npipe) ENDIF() IF(SHMEM_PLUGIN_TYPE MATCHES "DYNAMIC") @@ -49,7 +49,7 @@ IF(WIN32) "FILE_DESCRIPTION:VIO plugin for shared memory communication") ENDIF() ADD_LIBRARY(pvio_shmem MODULE ${pvio_shmem_RC} pvio_shmem.c ${EXPORT_FILE}) - INSTALL_PLUGIN(pvio_shmem ${PROJECT_BINARY_DIR}/plugins/pvio) + INSTALL_PLUGIN(pvio_shmem ${CC_BINARY_DIR}/plugins/pvio) SIGN_TARGET(pvio_shmem) ENDIF() ENDIF() diff --git a/plugins/trace/CMakeLists.txt b/plugins/trace/CMakeLists.txt index 2c866312..9e0fe1ac 100644 --- a/plugins/trace/CMakeLists.txt +++ b/plugins/trace/CMakeLists.txt @@ -1,7 +1,7 @@ -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include) -INCLUDE(${PROJECT_SOURCE_DIR}/cmake/install_plugins.cmake) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) +INCLUDE(${CC_SOURCE_DIR}/cmake/install_plugins.cmake) IF(WITH_SIGNCODE) - INCLUDE(${PROJECT_SOURCE_DIR}/cmake/sign.cmake) + INCLUDE(${CC_SOURCE_DIR}/cmake/sign.cmake) ENDIF() # Trace example plugin @@ -16,10 +16,10 @@ IF(TRACE_EXAMPLE_PLUGIN_TYPE MATCHES "DYNAMIC") ADD_DEFINITIONS(-DHAVE_TRACE_EXAMPLE_PLUGIN_DYNAMIC=1) SET(TRACE_EXAMPLE_SOURCES ${trace_example_RC} trace_example.c) IF(WIN32) - SET(TRACE_EXAMPLE_SOURCES ${TRACE_EXAMPLE_SOURCES} ${PROJECT_SOURCE_DIR}/plugins/plugin.def) + SET(TRACE_EXAMPLE_SOURCES ${TRACE_EXAMPLE_SOURCES} ${CC_SOURCE_DIR}/plugins/plugin.def) ENDIF() ADD_LIBRARY(trace_example MODULE ${TRACE_EXAMPLE_SOURCES}) SET_TARGET_PROPERTIES(trace_example PROPERTIES PREFIX "") - INSTALL_PLUGIN(trace_example ${PROJECT_BINARY_DIR}/plugins/trace) + INSTALL_PLUGIN(trace_example ${CC_BINARY_DIR}/plugins/trace) SIGN_TARGET(trace_example) ENDIF() diff --git a/unittest/libmariadb/CMakeLists.txt b/unittest/libmariadb/CMakeLists.txt index 2059c447..93bf2c9d 100644 --- a/unittest/libmariadb/CMakeLists.txt +++ b/unittest/libmariadb/CMakeLists.txt @@ -20,9 +20,10 @@ ENDIF() ENABLE_TESTING() -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include - ${PROJECT_BINARY_DIR}/include - ${PROJECT_SOURCE_DIR}/unittest/mytap) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include + ${CC_BINARY_DIR}/include + ${CC_SOURCE_DIR}/unittest/mytap + ${CC_SOURCE_DIR}/unittest/libmariadb) ADD_DEFINITIONS(-DLIBMARIADB) SET(API_TESTS "performance" "basic-t" "fetch" "charset" "logs" "cursor" "errors" "view" "ps" "ps_bugs" "sp" "result" "connection" "misc" "ps_new" "sqlite3" "thread" "features-10_2" @@ -37,47 +38,50 @@ SET(API_TESTS ${API_TESTS} "async") SET(MANUAL_TESTS "t_aurora" "t_conc173") # Get finger print from server certificate IF(WITH_SSL) - IF(OPENSSL_FOUND) + IF(OPENSSL_FOUND AND EXISTS "${CC_SOURCE_DIR}/unittest/libmariadb/certs") #create certificates - IF(EXISTS "${PROJECT_SOURCE_DIR}/unittest/libmariadb/certs/server-cert.pem") + IF(EXISTS "${CC_SOURCE_DIR}/unittest/libmariadb/certs/server-cert.pem") MESSAGE(STATUS "certificates already exist") ELSE() MESSAGE(STATUS "creating certificates") IF(WIN32) EXECUTE_PROCESS(COMMAND create_certs.bat - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/unittest/libmariadb/certs + WORKING_DIRECTORY ${CC_SOURCE_DIR}/unittest/libmariadb/certs OUTPUT_FILE x.1 ERROR_FILE x.2) ELSE() EXECUTE_PROCESS(COMMAND ./create_certs.sh - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/unittest/libmariadb/certs) + WORKING_DIRECTORY ${CC_SOURCE_DIR}/unittest/libmariadb/certs) ENDIF() ENDIF() EXECUTE_PROCESS(COMMAND openssl x509 -in server-cert.pem -sha1 -fingerprint -noout - WORKING_DIRECTORY ${PROJECT_SOURCE_DIR}/unittest/libmariadb/certs + WORKING_DIRECTORY ${CC_SOURCE_DIR}/unittest/libmariadb/certs OUTPUT_VARIABLE FINGER_PRINT) STRING(REPLACE "SHA1 Fingerprint=" "" FINGER_PRINT "${FINGER_PRINT}") STRING(REPLACE "\n" "" FINGER_PRINT "${FINGER_PRINT}") STRING(REPLACE ":" "" SSL_CERT_FINGER_PRINT "${FINGER_PRINT}") ENDIF() - CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/unittest/libmariadb/ssl.c.in - ${PROJECT_SOURCE_DIR}/unittest/libmariadb/ssl.c) - CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/unittest/libmariadb/fingerprint.list.in - ${PROJECT_SOURCE_DIR}/unittest/libmariadb/fingerprint.list) + CONFIGURE_FILE(${CC_SOURCE_DIR}/unittest/libmariadb/ssl.c.in + ${CC_BINARY_DIR}/unittest/libmariadb/ssl.c) + CONFIGURE_FILE(${CC_SOURCE_DIR}/unittest/libmariadb/fingerprint.list.in + ${CC_BINARY_DIR}/unittest/libmariadb/fingerprint.list) SET(API_TESTS ${API_TESTS} "ssl") + ADD_EXECUTABLE(ssl ${CC_BINARY_DIR}/unittest/libmariadb/ssl.c) ENDIF() ADD_LIBRARY(ma_getopt ma_getopt.c) FOREACH(API_TEST ${API_TESTS}) - ADD_EXECUTABLE(${API_TEST} ${API_TEST}.c) - TARGET_LINK_LIBRARIES(${API_TEST} mytap ma_getopt mariadbclient) + IF (NOT TARGET ${API_TEST}) + ADD_EXECUTABLE(${API_TEST} ${API_TEST}.c) + ENDIF() + TARGET_LINK_LIBRARIES(${API_TEST} cctap ma_getopt mariadbclient) ADD_TEST(${API_TEST} ${EXECUTABLE_OUTPUT_PATH}/${API_TEST}) SET_TESTS_PROPERTIES(${API_TEST} PROPERTIES TIMEOUT 120) ENDFOREACH(API_TEST) FOREACH(API_TEST ${MANUAL_TESTS}) ADD_EXECUTABLE(${API_TEST} ${API_TEST}.c) - TARGET_LINK_LIBRARIES(${API_TEST} mytap ma_getopt mariadbclient) + TARGET_LINK_LIBRARIES(${API_TEST} cctap ma_getopt mariadbclient) ENDFOREACH() diff --git a/unittest/mytap/CMakeLists.txt b/unittest/mytap/CMakeLists.txt index 6b49f174..1a03d7ac 100644 --- a/unittest/mytap/CMakeLists.txt +++ b/unittest/mytap/CMakeLists.txt @@ -14,9 +14,6 @@ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/zlib - ${PROJECT_SOURCE_DIR}/sql - ${PROJECT_BINARY_DIR}/include - ${PROJECT_SOURCE_DIR}/regex - ${PROJECT_SOURCE_DIR}/extra/yassl/include) -ADD_LIBRARY(mytap tap.c) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include ${CC_SOURCE_DIR}/zlib + ${CC_BINARY_DIR}/include) +ADD_LIBRARY(cctap tap.c) diff --git a/win/packaging/CMakeLists.txt b/win/packaging/CMakeLists.txt index 7968b400..1076da76 100644 --- a/win/packaging/CMakeLists.txt +++ b/win/packaging/CMakeLists.txt @@ -1,7 +1,7 @@ -SET(CLIENT_LIB_DIR ${PROJECT_BINARY_DIR}/libmariadb/${CMAKE_BUILD_TYPE}) -SET(CLIENT_BIN_DIR ${PROJECT_BINARY_DIR}/client/${CMAKE_BUILD_TYPE}) -SET(CLIENT_DBG_DIR ${PROJECT_BINARY_DIR}/libmariadb/Debug) -SET(CLIENT_INC_DIR ${PROJECT_SOURCE_DIR}/include) +SET(CLIENT_LIB_DIR ${CC_BINARY_DIR}/libmariadb/${CMAKE_BUILD_TYPE}) +SET(CLIENT_BIN_DIR ${CC_BINARY_DIR}/client/${CMAKE_BUILD_TYPE}) +SET(CLIENT_DBG_DIR ${CC_BINARY_DIR}/libmariadb/Debug) +SET(CLIENT_INC_DIR ${CC_SOURCE_DIR}/include) SET(PRODUCT_NAME "MariaDB Connector C") SET(PRODUCT_INSTALL_DIR "MariaDB") @@ -41,14 +41,14 @@ ENDFOREACH() SET(ALL_INCLUDES ${MARIADB_CLIENT_INCLUDES} ${MARIADB_ADDITIONAL_INCLUDES}) FOREACH(src ${ALL_INCLUDES}) - STRING(REPLACE "${PROJECT_SOURCE_DIR}/include/" "" src ${src}) + STRING(REPLACE "${CC_SOURCE_DIR}/include/" "" src ${src}) STRING(REPLACE "-" "_" src_id ${src}) STRING(REPLACE "mysql/" "" src_id ${src_id}) STRING(REPLACE "mysql/" "" src_name ${src}) IF(${src} MATCHES "mysql/") - SET(MARIADB_INCLUDEMYSQL_FILES "${MARIADB_INCLUDEMYSQL_FILES} \n") + SET(MARIADB_INCLUDEMYSQL_FILES "${MARIADB_INCLUDEMYSQL_FILES} \n") ELSE() - SET(MARIADB_INCLUDE_FILES "${MARIADB_INCLUDE_FILES} \n") + SET(MARIADB_INCLUDE_FILES "${MARIADB_INCLUDE_FILES} \n") ENDIF() ENDFOREACH() @@ -92,5 +92,5 @@ SET_TARGET_PROPERTIES(${WIXOBJ} PROPERTIES EXCLUDE_FROM_ALL OFF) ADD_DEPENDENCIES(${MSI_PACKAGE} WIXOBJ) ADD_DEPENDENCIES(WIXOBJ libmariadb mariadbclient ${DYNAMIC_TARGETS}) -CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/win/packaging/mariadb-connector-c.xml.in - ${PROJECT_BINARY_DIR}/win/packaging/mariadb-connector-c.xml) +CONFIGURE_FILE(${CC_SOURCE_DIR}/win/packaging/mariadb-connector-c.xml.in + ${CC_BINARY_DIR}/win/packaging/mariadb-connector-c.xml) diff --git a/zlib/CMakeLists.txt b/zlib/CMakeLists.txt index 9ea6bc4a..dc352b40 100644 --- a/zlib/CMakeLists.txt +++ b/zlib/CMakeLists.txt @@ -1,4 +1,4 @@ -INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/zlib) +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/zlib) SET(SOURCE_FILES adler32.c compress.c crc32.c deflate.c gzclose.c gzlib.c gzread.c gzwrite.c infback.c inffast.c inflate.c inftrees.c minigzip.c trees.c uncompr.c zutil.c)