buildBOOST_REGEX.cmake 1.5 KB

123456789101112131415161718192021222324252627282930313233
  1. include(ExternalProject)
  2. ExternalProject_Add(
  3. generate-boost-regex
  4. URL https://dl.bintray.com/boostorg/release/1.71.0/source/boost_1_71_0.tar.gz
  5. URL_HASH SHA256=96b34f7468f26a141f6020efb813f1a2f3dfb9797ecf76a7d7cbd843cc95f5bd
  6. TIMEOUT 15
  7. DOWNLOAD_DIR ${CMAKE_BINARY_DIR}/downloads
  8. SOURCE_DIR ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0
  9. CONFIGURE_COMMAND ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0/bootstrap.sh
  10. BUILD_COMMAND ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0/b2 --prefix=${INSTALL_DIR} --exec-prefix=${INSTALL_DIR} --with-regex --with-headers
  11. BUILD_IN_SOURCE TRUE
  12. INSTALL_COMMAND ""
  13. )
  14. add_library(boost-regex SHARED IMPORTED GLOBAL)
  15. set_property(TARGET boost-regex
  16. PROPERTY IMPORTED_LOCATION ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0/stage/lib/libboost_regex.so.1.71.0)
  17. add_dependencies(boost-regex generate-boost-regex)
  18. if(PLATFORM OR CLIENTTOOLS_ONLY)
  19. install(CODE "set(ENV{LD_LIBRARY_PATH} \"\$ENV{LD_LIBRARY_PATH}:${CMAKE_BINARY_DIR}:${CMAKE_BINARY_DIR}/downloads/boost_1_71_0/stage/lib\")")
  20. install(PROGRAMS
  21. ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0/stage/lib/libboost_regex.so.1.71.0
  22. ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0/stage/lib/libboost_regex.so
  23. DESTINATION ${LIB_DIR})
  24. endif()
  25. set(BOOST_REGEX_INCLUDE_DIR ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0)
  26. set(BOOST_REGEX_LIBRARIES ${CMAKE_BINARY_DIR}/downloads/boost_1_71_0/stage/lib/libboost_regex.so.1.17.0)
  27. message(STATUS "----------------------- ${BOOST_REGEX_LIBRARIES}")
  28. mark_as_advanced(BOOST_REGEX_LIBRARIES BOOST_REGEX_INCLUDE_DIR)