mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-12-28 03:10:57 +08:00
72 lines
2.7 KiB
CMake
72 lines
2.7 KiB
CMake
vcpkg_from_github(
|
|
OUT_SOURCE_PATH SOURCE_PATH
|
|
REPO mysql/mysql-connector-cpp
|
|
REF "${VERSION}"
|
|
SHA512 aa432822d4c9d7f1328bf59e261c362570f6b2237a5a9f730f96f079aba14bdc689f400ab2857c4cdd1dca025eb09eaaf2b26328f3b42d117f24b9182dc2cc0a
|
|
HEAD_REF master
|
|
PATCHES
|
|
fix-static-build8.patch
|
|
export-targets.patch
|
|
dependencies.patch
|
|
protobuf-cmake.patch
|
|
protobuf-source.patch
|
|
)
|
|
|
|
vcpkg_check_features(
|
|
OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
|
FEATURES
|
|
jdbc WITH_JDBC
|
|
)
|
|
|
|
file(COPY "${CMAKE_CURRENT_LIST_DIR}/mysql-connector-cpp-config.cmake.in" DESTINATION "${SOURCE_PATH}")
|
|
|
|
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" BUILD_STATIC)
|
|
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_SHARED_LIBS)
|
|
string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" STATIC_MSVCRT)
|
|
|
|
# Use mysql-connector-cpp's own build process.
|
|
vcpkg_cmake_configure(
|
|
SOURCE_PATH "${SOURCE_PATH}"
|
|
WINDOWS_USE_MSBUILD
|
|
OPTIONS
|
|
"-DWITH_SSL=${CURRENT_INSTALLED_DIR}"
|
|
"-DWITH_LZ4=${CURRENT_INSTALLED_DIR}"
|
|
"-DWITH_ZSTD=${CURRENT_INSTALLED_DIR}"
|
|
"-DWITH_ZLIB=${CURRENT_INSTALLED_DIR}"
|
|
"-DProtobuf_DIR=${CURRENT_INSTALLED_DIR}/share/protobuf" # Without these Windows is unable to find protobuf
|
|
"-Dabsl_DIR=${CURRENT_INSTALLED_DIR}/share/absl"
|
|
"-Dutf8_range_DIR=${CURRENT_INSTALLED_DIR}/share/utf8_range"
|
|
"-DProtobuf_PROTOC_EXECUTABLE=${CURRENT_INSTALLED_DIR}/tools/protobuf/protoc"
|
|
-DBUILD_STATIC=${BUILD_STATIC}
|
|
-DSTATIC_MSVCRT=${STATIC_MSVCRT}
|
|
-DBUILD_SHARED_LIBS=${BUILD_SHARED_LIBS}
|
|
-DWITH_JDBC=${WITH_JDBC} # the following variables are only used by jdbc
|
|
"-DMYSQL_INCLUDE_DIR=${CURRENT_INSTALLED_DIR}/include/mysql"
|
|
"-DMYSQL_LIB_DIR=${CURRENT_INSTALLED_DIR}"
|
|
"-DWITH_BOOST=${CURRENT_INSTALLED_DIR}"
|
|
"-DWITH_TESTS=OFF"
|
|
MAYBE_UNUSED_VARIABLES # and they are windows only
|
|
MYSQL_INCLUDE_DIR
|
|
MYSQL_LIB_DIR
|
|
WITH_BOOST
|
|
)
|
|
|
|
vcpkg_cmake_install()
|
|
|
|
vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-mysql-connector-cpp)
|
|
|
|
file(REMOVE
|
|
"${CURRENT_PACKAGES_DIR}/INFO_BIN"
|
|
"${CURRENT_PACKAGES_DIR}/INFO_SRC"
|
|
"${CURRENT_PACKAGES_DIR}/debug/INFO_BIN"
|
|
"${CURRENT_PACKAGES_DIR}/debug/INFO_SRC"
|
|
"${CURRENT_PACKAGES_DIR}/INFO_BIN"
|
|
"${CURRENT_PACKAGES_DIR}/mysql-concpp-config.cmake"
|
|
"${CURRENT_PACKAGES_DIR}/mysql-concpp-config-version.cmake"
|
|
"${CURRENT_PACKAGES_DIR}/debug/mysql-concpp-config.cmake"
|
|
"${CURRENT_PACKAGES_DIR}/debug/mysql-concpp-config-version.cmake"
|
|
)
|
|
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
|
|
|
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt")
|