refactor and simplify xrefs map
[hiphop-php.git] / third-party / re2 / CMakeLists.txt
blobfd597f6d794a8e2af76c4044facde67b72db645e
1 add_library(re2 INTERFACE)
3 find_package(RE2)
4 if(RE2_LIBRARY)
5   target_link_libraries(re2 INTERFACE ${RE2_LIBRARY})
6   target_include_directories(re2 INTERFACE ${RE2_INCLUDE_DIR})
7   return() # from File
8 endif()
10 include(ExternalProject)
11 include(HPHPFunctions)
13 SET_HHVM_THIRD_PARTY_SOURCE_ARGS(
14   RE2_SOURCE_ARGS
15   SOURCE_URL
16   "https://github.com/google/re2/archive/refs/tags/2021-11-01.tar.gz"
17   SOURCE_HASH
18   "SHA256=8c45f7fba029ab41f2a7e6545058d9eec94eef97ce70df58e92d85cfc08b4669"
19   FILENAME_PREFIX "re2-"
22 ExternalProject_Add(
23   bundled_re2
24   ${RE2_SOURCE_ARGS}
25   EXCLUDE_FROM_ALL
26   CMAKE_ARGS
27     "-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}"
28     -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
29     -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
30     -DCMAKE_INSTALL_INCLUDEDIR=include
31     -DCMAKE_INSTALL_LIBDIR=lib
33     -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
34     -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
35     -DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}
37     -DBUILD_TESTING=OFF
38     -DRE2_BUILD_TESTING=OFF
40 ExternalProject_Get_property(bundled_re2 INSTALL_DIR)
42 add_dependencies(re2 bundled_re2)
43 target_include_directories(re2 INTERFACE "${INSTALL_DIR}/include")
44 target_link_libraries(
45   re2
46   INTERFACE
47   "${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}re2${CMAKE_STATIC_LIBRARY_SUFFIX}"