BuildLibtermkey.cmake 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. if(WIN32)
  2. ExternalProject_Add(libtermkey
  3. PREFIX ${DEPS_BUILD_DIR}
  4. URL ${LIBTERMKEY_URL}
  5. DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/libtermkey
  6. DOWNLOAD_COMMAND ${CMAKE_COMMAND}
  7. -DPREFIX=${DEPS_BUILD_DIR}
  8. -DDOWNLOAD_DIR=${DEPS_DOWNLOAD_DIR}/libtermkey
  9. -DURL=${LIBTERMKEY_URL}
  10. -DEXPECTED_SHA256=${LIBTERMKEY_SHA256}
  11. -DTARGET=libtermkey
  12. -DUSE_EXISTING_SRC_DIR=${USE_EXISTING_SRC_DIR}
  13. -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/DownloadAndExtractFile.cmake
  14. CONFIGURE_COMMAND ${CMAKE_COMMAND} -E copy
  15. ${CMAKE_CURRENT_SOURCE_DIR}/cmake/libtermkeyCMakeLists.txt
  16. ${DEPS_BUILD_DIR}/src/libtermkey/CMakeLists.txt
  17. COMMAND ${CMAKE_COMMAND} ${DEPS_BUILD_DIR}/src/libtermkey
  18. -DCMAKE_INSTALL_PREFIX=${DEPS_INSTALL_DIR}
  19. # Pass toolchain
  20. -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN}
  21. -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
  22. # Hack to avoid -rdynamic in Mingw
  23. -DCMAKE_SHARED_LIBRARY_LINK_C_FLAGS=""
  24. -DCMAKE_GENERATOR=${CMAKE_GENERATOR}
  25. -DUNIBILIUM_INCLUDE_DIRS=${DEPS_INSTALL_DIR}/include
  26. -DUNIBILIUM_LIBRARIES=${DEPS_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}unibilium${CMAKE_STATIC_LIBRARY_SUFFIX}
  27. BUILD_COMMAND ${CMAKE_COMMAND} --build . --config ${CMAKE_BUILD_TYPE}
  28. INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config ${CMAKE_BUILD_TYPE})
  29. else()
  30. find_package(PkgConfig REQUIRED)
  31. ExternalProject_Add(libtermkey
  32. PREFIX ${DEPS_BUILD_DIR}
  33. URL ${LIBTERMKEY_URL}
  34. DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/libtermkey
  35. DOWNLOAD_COMMAND ${CMAKE_COMMAND}
  36. -DPREFIX=${DEPS_BUILD_DIR}
  37. -DDOWNLOAD_DIR=${DEPS_DOWNLOAD_DIR}/libtermkey
  38. -DURL=${LIBTERMKEY_URL}
  39. -DEXPECTED_SHA256=${LIBTERMKEY_SHA256}
  40. -DTARGET=libtermkey
  41. -DUSE_EXISTING_SRC_DIR=${USE_EXISTING_SRC_DIR}
  42. -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/DownloadAndExtractFile.cmake
  43. CONFIGURE_COMMAND ""
  44. BUILD_IN_SOURCE 1
  45. BUILD_COMMAND ""
  46. INSTALL_COMMAND ${MAKE_PRG} CC=${DEPS_C_COMPILER}
  47. PREFIX=${DEPS_INSTALL_DIR}
  48. PKG_CONFIG_PATH=${DEPS_LIB_DIR}/pkgconfig
  49. CFLAGS=-fPIC
  50. LDFLAGS+=-static
  51. ${DEFAULT_MAKE_CFLAGS}
  52. install)
  53. endif()
  54. list(APPEND THIRD_PARTY_DEPS libtermkey)