BuildLibtermkey.cmake 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  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. -DCMAKE_GENERATOR_PLATFORM=${CMAKE_GENERATOR_PLATFORM}
  26. -DUNIBILIUM_INCLUDE_DIRS=${DEPS_INSTALL_DIR}/include
  27. -DUNIBILIUM_LIBRARIES=${DEPS_LIB_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}unibilium${CMAKE_STATIC_LIBRARY_SUFFIX}
  28. BUILD_COMMAND ${CMAKE_COMMAND} --build . --config ${CMAKE_BUILD_TYPE}
  29. INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config ${CMAKE_BUILD_TYPE})
  30. else()
  31. find_package(PkgConfig REQUIRED)
  32. ExternalProject_Add(libtermkey
  33. PREFIX ${DEPS_BUILD_DIR}
  34. URL ${LIBTERMKEY_URL}
  35. DOWNLOAD_DIR ${DEPS_DOWNLOAD_DIR}/libtermkey
  36. DOWNLOAD_COMMAND ${CMAKE_COMMAND}
  37. -DPREFIX=${DEPS_BUILD_DIR}
  38. -DDOWNLOAD_DIR=${DEPS_DOWNLOAD_DIR}/libtermkey
  39. -DURL=${LIBTERMKEY_URL}
  40. -DEXPECTED_SHA256=${LIBTERMKEY_SHA256}
  41. -DTARGET=libtermkey
  42. -DUSE_EXISTING_SRC_DIR=${USE_EXISTING_SRC_DIR}
  43. -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/DownloadAndExtractFile.cmake
  44. CONFIGURE_COMMAND ""
  45. BUILD_IN_SOURCE 1
  46. BUILD_COMMAND ""
  47. INSTALL_COMMAND ${MAKE_PRG} CC=${DEPS_C_COMPILER}
  48. PREFIX=${DEPS_INSTALL_DIR}
  49. PKG_CONFIG_PATH=${DEPS_LIB_DIR}/pkgconfig
  50. CFLAGS=-fPIC
  51. LDFLAGS+=-static
  52. ${DEFAULT_MAKE_CFLAGS}
  53. install)
  54. endif()
  55. list(APPEND THIRD_PARTY_DEPS libtermkey)