1 message(STATUS "Building timelib")
2 include(ExternalProject)
5 find_program(RE2C_EXECUTABLE NAMES re2c REQUIRED)
7 SET_HHVM_THIRD_PARTY_SOURCE_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)
18 set(HAVE_SYSTEM_TZDATA ON)
23 ${TIMELIB_DOWNLOAD_ARGS}
25 "${CMAKE_COMMAND}" -E copy
26 "${CMAKE_CURRENT_SOURCE_DIR}/timelib-CMakeLists.txt"
27 "<SOURCE_DIR>/CMakeLists.txt"
29 "${CMAKE_CURRENT_SOURCE_DIR}/../apply-quilt-patches.sh"
30 "${CMAKE_CURRENT_SOURCE_DIR}/patches"
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}"