aboutsummaryrefslogtreecommitdiff
path: root/third-party/cmake/BuildLibtermkey.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'third-party/cmake/BuildLibtermkey.cmake')
-rw-r--r--third-party/cmake/BuildLibtermkey.cmake48
1 files changed, 36 insertions, 12 deletions
diff --git a/third-party/cmake/BuildLibtermkey.cmake b/third-party/cmake/BuildLibtermkey.cmake
index 57e14d36d3..4b581c2a01 100644
--- a/third-party/cmake/BuildLibtermkey.cmake
+++ b/third-party/cmake/BuildLibtermkey.cmake
@@ -1,21 +1,41 @@
-if(WIN32)
- message(STATUS "Building libtermkey in Windows is not supported (skipping)")
- return()
-endif()
find_package(PkgConfig REQUIRED)
+if(WIN32)
+ExternalProject_Add(libtermkey
+ PREFIX ${DEPS_BUILD_DIR}
+ URL ${LIBTERMKEY_URL}
+ DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/libtermkey
+ DOWNLOAD_COMMAND ${CMAKE_COMMAND}
+ -DPREFIX=${DEPS_BUILD_DIR}
+ -DDOWNLOAD_DIR=${DEPS_DOWNLOAD_DIR}/libtermkey
+ -DURL=${LIBTERMKEY_URL}
+ -DEXPECTED_SHA256=${LIBTERMKEY_SHA256}
+ -DTARGET=libtermkey
+ -DUSE_EXISTING_SRC_DIR=${USE_EXISTING_SRC_DIR}
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/DownloadAndExtractFile.cmake
+ CONFIGURE_COMMAND ${CMAKE_COMMAND} ${DEPS_BUILD_DIR}/src/libtermkey
+ -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
+ # Pass toolchain
+ -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN}
+ -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
+ # Hack to avoid -rdynamic in Mingw
+ -DCMAKE_SHARED_LIBRARY_LINK_C_FLAGS=""
+ -DCMAKE_GENERATOR=${CMAKE_GENERATOR}
+ BUILD_COMMAND ${CMAKE_COMMAND} --build . --config ${CMAKE_BUILD_TYPE}
+ INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config ${CMAKE_BUILD_TYPE})
+else()
ExternalProject_Add(libtermkey
PREFIX ${DEPS_BUILD_DIR}
URL ${LIBTERMKEY_URL}
DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/libtermkey
DOWNLOAD_COMMAND ${CMAKE_COMMAND}
- -DPREFIX=${DEPS_BUILD_DIR}
- -DDOWNLOAD_DIR=${DEPS_DOWNLOAD_DIR}/libtermkey
- -DURL=${LIBTERMKEY_URL}
- -DEXPECTED_SHA256=${LIBTERMKEY_SHA256}
- -DTARGET=libtermkey
- -DUSE_EXISTING_SRC_DIR=${USE_EXISTING_SRC_DIR}
- -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/DownloadAndExtractFile.cmake
+ -DPREFIX=${DEPS_BUILD_DIR}
+ -DDOWNLOAD_DIR=${DEPS_DOWNLOAD_DIR}/libtermkey
+ -DURL=${LIBTERMKEY_URL}
+ -DEXPECTED_SHA256=${LIBTERMKEY_SHA256}
+ -DTARGET=libtermkey
+ -DUSE_EXISTING_SRC_DIR=${USE_EXISTING_SRC_DIR}
+ -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/DownloadAndExtractFile.cmake
CONFIGURE_COMMAND ""
BUILD_IN_SOURCE 1
BUILD_COMMAND ""
@@ -24,6 +44,10 @@ ExternalProject_Add(libtermkey
PKG_CONFIG_PATH=${DEPS_LIB_DIR}/pkgconfig
CFLAGS=-fPIC
install)
+endif()
list(APPEND THIRD_PARTY_DEPS libtermkey)
-add_dependencies(libtermkey unibilium)
+if(NOT WIN32)
+ # There is no unibilium build recipe for Windows yet
+ add_dependencies(libtermkey unibilium)
+endif()