From ee6781f37c76f1659e2c01007eb0af94213c9481 Mon Sep 17 00:00:00 2001 From: Dave Puchyr Date: Tue, 12 Jul 2016 12:12:28 -0500 Subject: [PATCH] Enable mysql-connector-cpp as a cmake subproject. --- CMakeLists.txt | 48 ++++++++++++++++---------------- test/unit/classes/CMakeLists.txt | 6 ++-- 2 files changed, 27 insertions(+), 27 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8be33d718..f3bf95cea 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -46,20 +46,20 @@ ENDIF() SET(EDIT_WARNING_MESSAGE "Please do not edit this file - it is generated by cmake. Edit its source file instead.") # Configuring header file with driver version info -CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/driver/version_info.h.cmake - ${CMAKE_BINARY_DIR}/driver/version_info.h @ONLY) +CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/driver/version_info.h.cmake + ${CMAKE_CURRENT_BINARY_DIR}/driver/version_info.h @ONLY) # This is needed by windows installer and fro CPACK -IF(EXISTS "${CMAKE_SOURCE_DIR}/COPYING") - SET(LICENSE_FILENAME "${CMAKE_SOURCE_DIR}/COPYING") -ELSE(EXISTS "${CMAKE_SOURCE_DIR}/COPYING") - SET(LICENSE_FILENAME "${CMAKE_SOURCE_DIR}/LICENSE.mysql") -ENDIF(EXISTS "${CMAKE_SOURCE_DIR}/COPYING") +IF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/COPYING") + SET(LICENSE_FILENAME "${CMAKE_CURRENT_SOURCE_DIR}/COPYING") +ELSE(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/COPYING") + SET(LICENSE_FILENAME "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.mysql") +ENDIF(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/COPYING") # Creating file with version info that will be used for installer -# We have to do this trick because of license filename that is looked in this CMAKE_SOURCE_DIR (installer's cmake is run separately) +# We have to do this trick because of license filename that is looked in this CMAKE_CURRENT_SOURCE_DIR (installer's cmake is run separately) IF(WIN32) - FILE(WRITE "${CMAKE_BINARY_DIR}/win/config.cmake" "SET(CONNECTOR_PRODUCT_VERSION ${CONNECTOR_VERSION})\n" + FILE(WRITE "${CMAKE_CURRENT_BINARY_DIR}/win/config.cmake" "SET(CONNECTOR_PRODUCT_VERSION ${CONNECTOR_VERSION})\n" "SET(LICENSE_FILENAME \"${LICENSE_FILENAME}\")\n") ENDIF(WIN32) @@ -83,7 +83,7 @@ ENDIF(CMAKE_ENABLE_C++11) #----------------- # Changing CRT from dynamic to static (Windows Only) IF(WIN32) - INCLUDE(${CMAKE_SOURCE_DIR}/changeCrt.cmake) + INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/changeCrt.cmake) CHANGE_CRT("/MT") ENDIF(WIN32) @@ -215,11 +215,11 @@ ENDIF(MYSQLCPPCONN_STLPORT_ENABLE) # Make tests cover methods that throw not implemented to detect API changes? SET(MYSQLCPPCONN_TEST_NOT_IMPLEMENTED 0 CACHE BOOL "HEAD/trunk QA: invoke methods that should return not implemented to detect API changes") -INCLUDE(${CMAKE_SOURCE_DIR}/FindMySQL.cmake) +INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/FindMySQL.cmake) SET(MYSQLCLIENT_STATIC_BINDING 1 CACHE BOOL "enable static binding") -IF(MYSQLCLIENT_STATIC_BINDING AND EXISTS "${CMAKE_SOURCE_DIR}/cmake/mysql_version_info.cmake") - INCLUDE(${CMAKE_SOURCE_DIR}/cmake/mysql_version_info.cmake) +IF(MYSQLCLIENT_STATIC_BINDING AND EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/cmake/mysql_version_info.cmake") + INCLUDE(${CMAKE_CURRENT_SOURCE_DIR}/cmake/mysql_version_info.cmake) IF(NOT LIBMYSQL_CPP_VERSION STREQUAL "") SET(MYSQL_VERSION "${LIBMYSQL_CPP_VERSION}") ELSEIF(NOT MYSQL_CPP_SERVER_VERSION STREQUAL "") @@ -250,8 +250,8 @@ SET(MYSQLCPPCONN_LINK_FLAGS_ENV "$ENV{LDFLAGS}") MESSAGE(STATUS "Environment link flags: ${MYSQLCPPCONN_LINK_FLAGS_ENV}") # Configuring header file with DM version info -CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/cppconn/version_info.h.cmake - ${CMAKE_BINARY_DIR}/cppconn/version_info.h @ONLY) +CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/cppconn/version_info.h.cmake + ${CMAKE_CURRENT_BINARY_DIR}/cppconn/version_info.h @ONLY) # # ---------------------------------------------------------------------- @@ -304,8 +304,8 @@ SET(CPACK_RPM_PACKAGE_DESCRIPTION in the manual for further info.") SET(CPACK_RESOURCE_FILE_LICENSE "${LICENSE_FILENAME}") -SET(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/README") -SET(CPACK_RESOURCE_FILE_INSTALL "${CMAKE_SOURCE_DIR}/INSTALL") +SET(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/README") +SET(CPACK_RESOURCE_FILE_INSTALL "${CMAKE_CURRENT_SOURCE_DIR}/INSTALL") SET(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${MYSQLCPPCONN_VERSION}") SET(CPACK_PACKAGE_INSTALL_DIRECTORY "${CPACK_PACKAGE_NAME}-${MYSQLCPPCONN_VERSION}-${CONNECTOR_PLATFORM}") IF(WIN32) @@ -325,8 +325,8 @@ INSTALL(FILES ${CPACK_RESOURCE_FILE_README} ${CPACK_RESOURCE_FILE_INSTALL} ${CPACK_RESOURCE_FILE_LICENSE} - "${CMAKE_SOURCE_DIR}/Licenses_for_Third-Party_Components.txt" - "${CMAKE_SOURCE_DIR}/ANNOUNCEMENT" + "${CMAKE_CURRENT_SOURCE_DIR}/Licenses_for_Third-Party_Components.txt" + "${CMAKE_CURRENT_SOURCE_DIR}/ANNOUNCEMENT" DESTINATION ${DOC_DESTINATION} OPTIONAL) SET(COMMON_IGNORE_FILES @@ -380,11 +380,11 @@ IF(WIN32) ENDIF(WIN32) MESSAGE(STATUS "Installation path is: ${CMAKE_INSTALL_PREFIX} (overwrite with -DCMAKE_INSTALL_PREFIX=/your/path)") -INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}) -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}) -INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/cppconn) -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/cppconn) -INCLUDE_DIRECTORIES(${CMAKE_BINARY_DIR}/driver/nativeapi) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/cppconn) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/cppconn) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/driver/nativeapi) ADD_SUBDIRECTORY(cppconn) ADD_SUBDIRECTORY(driver) diff --git a/test/unit/classes/CMakeLists.txt b/test/unit/classes/CMakeLists.txt index 6d032a854..d5c47b08f 100644 --- a/test/unit/classes/CMakeLists.txt +++ b/test/unit/classes/CMakeLists.txt @@ -234,14 +234,14 @@ MESSAGE(STATUS "Configuring unit tests - statement") SET(test_uri_sources ${test_common_sources} - "${CMAKE_SOURCE_DIR}/driver/mysql_uri.cpp" - "${CMAKE_SOURCE_DIR}/driver/mysql_util.cpp" + "${MYSQLCPPCONN_SOURCE_DIR}/driver/mysql_uri.cpp" + "${MYSQLCPPCONN_SOURCE_DIR}/driver/mysql_util.cpp" uri.cpp) IF(WIN32) SET(test_uri_sources ${test_uri_sources} - "${CMAKE_SOURCE_DIR}/driver/mysql_uri.h" + "${MYSQLCPPCONN_SOURCE_DIR}/driver/mysql_uri.h" uri.h) ENDIF(WIN32)