expose remove_*_batch functions
[hiphop-php.git] / third-party / timelib / CMakeLists.txt
blob35aa03df215fd31533501bc762d9848cafdf3549
1 message(STATUS "Building timelib")
2 include(ExternalProject)
3 include(HPHPFunctions)
5 find_program(RE2C_EXECUTABLE NAMES re2c REQUIRED)
7 SET_HHVM_THIRD_PARTY_SOURCE_ARGS(
8   TIMELIB_DOWNLOAD_ARGS
9   SOURCE_URL "https://github.com/derickr/timelib/archive/refs/tags/2021.07.tar.gz"
10   SOURCE_HASH "SHA512=7bc56d20360937af10f63960e443cc8bd4d24c5369f697241e54da21465d4512bd16cfa6f0efcf2b847cc19781e1cecf93c9e19a1efa4f1a7012c9fa442eeabe"
11   # Look for timelib-YYYY.MM.tar.gz in download cache, not just YYYY.MM.tar.gz
12   FILENAME_PREFIX "timelib-"
15 if(USE_BUNDLED_TZDATA)
16   set(HAVE_SYSTEM_TZDATA OFF)
17 else()
18   set(HAVE_SYSTEM_TZDATA ON)
19 endif()
21 ExternalProject_Add(
22   bundled_timelib
23   ${TIMELIB_DOWNLOAD_ARGS}
24   PATCH_COMMAND
25     "${CMAKE_COMMAND}" -E copy
26     "${CMAKE_CURRENT_SOURCE_DIR}/timelib-CMakeLists.txt"
27     "<SOURCE_DIR>/CMakeLists.txt"
28     &&
29     "${CMAKE_CURRENT_SOURCE_DIR}/../apply-quilt-patches.sh"
30     "${CMAKE_CURRENT_SOURCE_DIR}/patches"
31   CMAKE_ARGS
32     "-DRE2C_EXECUTABLE=${RE2C_EXECUTABLE}"
33     -DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
34     -DCMAKE_INSTALL_INCLUDEDIR=include
35     -DCMAKE_INSTALL_LIBDIR=lib
37     -DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
38     -DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
39     -DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}
41     -DHAVE_SYSTEM_TZDATA=${HAVE_SYSTEM_TZDATA}
42     -DHAVE_SYSTEM_TZDATA_PREFIX=${HAVE_SYSTEM_TZDATA_PREFIX}
45 ExternalProject_Get_Property(bundled_timelib INSTALL_DIR)
47 add_library(timelib INTERFACE)
48 add_dependencies(timelib bundled_timelib)
49 target_include_directories(timelib INTERFACE "${INSTALL_DIR}/include")
50 target_link_libraries(timelib INTERFACE
51   "${INSTALL_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}timelib${CMAKE_STATIC_LIBRARY_SUFFIX}"