From 79e39021a6f79b6fb733e6e58cc5c246922f7e00 Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Sun, 22 Sep 2024 12:02:38 -0400 Subject: [PATCH 01/10] switch to using __cpp_lib_chrono to determine if chrono or date/date.h should be used --- scwx-qt/source/scwx/qt/config/radar_site.cpp | 4 ++-- scwx-qt/source/scwx/qt/main/main_window.cpp | 2 +- scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp | 2 +- scwx-qt/source/scwx/qt/map/overlay_layer.cpp | 2 +- scwx-qt/source/scwx/qt/view/level3_product_view.cpp | 2 +- wxdata/include/scwx/util/time.hpp | 4 ++-- wxdata/source/scwx/awips/coded_time_motion_location.cpp | 4 ++-- wxdata/source/scwx/awips/pvtec.cpp | 4 ++-- wxdata/source/scwx/gr/placefile.cpp | 4 ++-- wxdata/source/scwx/network/dir_list.cpp | 4 ++-- wxdata/source/scwx/provider/aws_level2_data_provider.cpp | 4 ++-- wxdata/source/scwx/provider/aws_level3_data_provider.cpp | 4 ++-- wxdata/source/scwx/provider/warnings_provider.cpp | 4 ++-- wxdata/source/scwx/util/time.cpp | 6 +++--- 14 files changed, 25 insertions(+), 25 deletions(-) diff --git a/scwx-qt/source/scwx/qt/config/radar_site.cpp b/scwx-qt/source/scwx/qt/config/radar_site.cpp index 782436df..5e49847a 100644 --- a/scwx-qt/source/scwx/qt/config/radar_site.cpp +++ b/scwx-qt/source/scwx/qt/config/radar_site.cpp @@ -10,7 +10,7 @@ #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -271,7 +271,7 @@ size_t RadarSite::ReadConfig(const std::string& path) try { -#if (defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono >= 201907L) using namespace std::chrono; #else using namespace date; diff --git a/scwx-qt/source/scwx/qt/main/main_window.cpp b/scwx-qt/source/scwx/qt/main/main_window.cpp index 711aed80..6b865703 100644 --- a/scwx-qt/source/scwx/qt/main/main_window.cpp +++ b/scwx-qt/source/scwx/qt/main/main_window.cpp @@ -52,7 +52,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif diff --git a/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp b/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp index 377c7aff..1c093e9b 100644 --- a/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp +++ b/scwx-qt/source/scwx/qt/manager/radar_product_manager.cpp @@ -413,7 +413,7 @@ const scwx::util::time_zone* RadarProductManager::default_time_zone() const } case types::DefaultTimeZone::Local: -#if (defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono >= 201907L) return std::chrono::current_zone(); #else return date::current_zone(); diff --git a/scwx-qt/source/scwx/qt/map/overlay_layer.cpp b/scwx-qt/source/scwx/qt/map/overlay_layer.cpp index 0151b6cb..a42bc2b3 100644 --- a/scwx-qt/source/scwx/qt/map/overlay_layer.cpp +++ b/scwx-qt/source/scwx/qt/map/overlay_layer.cpp @@ -22,7 +22,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif diff --git a/scwx-qt/source/scwx/qt/view/level3_product_view.cpp b/scwx-qt/source/scwx/qt/view/level3_product_view.cpp index a700b206..df65c693 100644 --- a/scwx-qt/source/scwx/qt/view/level3_product_view.cpp +++ b/scwx-qt/source/scwx/qt/view/level3_product_view.cpp @@ -17,7 +17,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif diff --git a/wxdata/include/scwx/util/time.hpp b/wxdata/include/scwx/util/time.hpp index 780a31c3..e31e8ca9 100644 --- a/wxdata/include/scwx/util/time.hpp +++ b/wxdata/include/scwx/util/time.hpp @@ -6,7 +6,7 @@ #include #include -#if !defined(_MSC_VER) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -15,7 +15,7 @@ namespace scwx namespace util { -#if (defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono >= 201907L) typedef std::chrono::time_zone time_zone; #else typedef date::time_zone time_zone; diff --git a/wxdata/source/scwx/awips/coded_time_motion_location.cpp b/wxdata/source/scwx/awips/coded_time_motion_location.cpp index 40358eef..569cc513 100644 --- a/wxdata/source/scwx/awips/coded_time_motion_location.cpp +++ b/wxdata/source/scwx/awips/coded_time_motion_location.cpp @@ -13,7 +13,7 @@ #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -107,7 +107,7 @@ bool CodedTimeMotionLocation::Parse(const StringRange& lines, { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif diff --git a/wxdata/source/scwx/awips/pvtec.cpp b/wxdata/source/scwx/awips/pvtec.cpp index 426a58d3..b93d2be0 100644 --- a/wxdata/source/scwx/awips/pvtec.cpp +++ b/wxdata/source/scwx/awips/pvtec.cpp @@ -17,7 +17,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -143,7 +143,7 @@ bool PVtec::Parse(const std::string& s) { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif diff --git a/wxdata/source/scwx/gr/placefile.cpp b/wxdata/source/scwx/gr/placefile.cpp index 70881299..02bb3527 100644 --- a/wxdata/source/scwx/gr/placefile.cpp +++ b/wxdata/source/scwx/gr/placefile.cpp @@ -20,7 +20,7 @@ #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -284,7 +284,7 @@ void Placefile::Impl::ProcessLine(const std::string& line) { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif diff --git a/wxdata/source/scwx/network/dir_list.cpp b/wxdata/source/scwx/network/dir_list.cpp index e4a2c4c3..f1be20b9 100644 --- a/wxdata/source/scwx/network/dir_list.cpp +++ b/wxdata/source/scwx/network/dir_list.cpp @@ -11,7 +11,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -200,7 +200,7 @@ void DirListSAXHandler::Characters(void* userData, const xmlChar* ch, int len) { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif diff --git a/wxdata/source/scwx/provider/aws_level2_data_provider.cpp b/wxdata/source/scwx/provider/aws_level2_data_provider.cpp index 87f0d2a2..c2910773 100644 --- a/wxdata/source/scwx/provider/aws_level2_data_provider.cpp +++ b/wxdata/source/scwx/provider/aws_level2_data_provider.cpp @@ -5,7 +5,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -82,7 +82,7 @@ AwsLevel2DataProvider::GetTimePointFromKey(const std::string& key) { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif diff --git a/wxdata/source/scwx/provider/aws_level3_data_provider.cpp b/wxdata/source/scwx/provider/aws_level3_data_provider.cpp index e052b907..5bae6843 100644 --- a/wxdata/source/scwx/provider/aws_level3_data_provider.cpp +++ b/wxdata/source/scwx/provider/aws_level3_data_provider.cpp @@ -12,7 +12,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -110,7 +110,7 @@ AwsLevel3DataProvider::GetTimePointFromKey(const std::string& key) { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif diff --git a/wxdata/source/scwx/provider/warnings_provider.cpp b/wxdata/source/scwx/provider/warnings_provider.cpp index 443582c7..8cfe9b77 100644 --- a/wxdata/source/scwx/provider/warnings_provider.cpp +++ b/wxdata/source/scwx/provider/warnings_provider.cpp @@ -14,7 +14,7 @@ #include #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -71,7 +71,7 @@ WarningsProvider::ListFiles(std::chrono::system_clock::time_point newerThan) { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif diff --git a/wxdata/source/scwx/util/time.cpp b/wxdata/source/scwx/util/time.cpp index dcf763d2..7a706224 100644 --- a/wxdata/source/scwx/util/time.cpp +++ b/wxdata/source/scwx/util/time.cpp @@ -17,7 +17,7 @@ #include -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) # include #endif @@ -59,7 +59,7 @@ std::string TimeString(std::chrono::system_clock::time_point time, { using namespace std::chrono; -#if (defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono >= 201907L) # define FORMAT_STRING_24_HOUR "{:%Y-%m-%d %H:%M:%S %Z}" # define FORMAT_STRING_12_HOUR "{:%Y-%m-%d %I:%M:%S %p %Z}" namespace date = std::chrono; @@ -128,7 +128,7 @@ TryParseDateTime(const std::string& dateTimeFormat, const std::string& str) { using namespace std::chrono; -#if !(defined(_MSC_VER) || defined(__clang__)) +#if (__cpp_lib_chrono < 201907L) using namespace date; #endif From 264ed5a943b85434659d582ef8dbe21e78f91c21 Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Sun, 22 Sep 2024 12:33:43 -0400 Subject: [PATCH 02/10] Update cmake file and add test cpp file for not compiling the date library if not needed --- wxdata/wxdata.cmake | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index 47ada181..42e07cce 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -252,6 +252,11 @@ source_group("Source Files\\wsr88d\\rda" FILES ${SRC_WSR88D_RDA}) source_group("Header Files\\wsr88d\\rpg" FILES ${HDR_WSR88D_RPG}) source_group("Source Files\\wsr88d\\rpg" FILES ${SRC_WSR88D_RPG}) + +try_compile(HAS_FULL_CHRONO + ${CMAKE_BINARY_DIR} + ${PROJECT_SOURCE_DIR}/source/cpp-feature-tests/chrono_feature_test.cpp) + target_include_directories(wxdata PRIVATE ${Boost_INCLUDE_DIR} ${HSLUV_C_INCLUDE_DIR} ${scwx-data_SOURCE_DIR}/include @@ -293,9 +298,12 @@ if (WIN32) target_link_libraries(wxdata INTERFACE Ws2_32) endif() +if (NOT HAS_FULL_CHRONO) + target_link_libraries(wxdata PUBLIC date::date-tz) +endif() + if (NOT MSVC) - target_link_libraries(wxdata PUBLIC date::date-tz - TBB::tbb) + target_link_libraries(wxdata PUBLIC TBB::tbb) endif() set_target_properties(wxdata PROPERTIES CXX_STANDARD 20 From ccacc7f7db3ad148e17ca5b9296cb93607221f2f Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Sun, 22 Sep 2024 12:58:44 -0400 Subject: [PATCH 03/10] add cpp-feature-tests folder and cpp test --- wxdata/source/cpp-feature-tests/chrono_feature_test.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 wxdata/source/cpp-feature-tests/chrono_feature_test.cpp diff --git a/wxdata/source/cpp-feature-tests/chrono_feature_test.cpp b/wxdata/source/cpp-feature-tests/chrono_feature_test.cpp new file mode 100644 index 00000000..c23acffb --- /dev/null +++ b/wxdata/source/cpp-feature-tests/chrono_feature_test.cpp @@ -0,0 +1,8 @@ +#include + +int main() +{ +#if (__cpp_lib_chrono < 201907L) +# error("Old chrono version") +#endif +} From 7c15a8272bd245dd328e9f46d01807d9adcd3857 Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Sun, 22 Sep 2024 16:13:36 -0400 Subject: [PATCH 04/10] add c++ standard to try_compile --- wxdata/wxdata.cmake | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index 42e07cce..54c5574b 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -255,7 +255,10 @@ source_group("Source Files\\wsr88d\\rpg" FILES ${SRC_WSR88D_RPG}) try_compile(HAS_FULL_CHRONO ${CMAKE_BINARY_DIR} - ${PROJECT_SOURCE_DIR}/source/cpp-feature-tests/chrono_feature_test.cpp) + ${PROJECT_SOURCE_DIR}/source/cpp-feature-tests/chrono_feature_test.cpp + CXX_STANDARD 20 + CXX_STANDARD_REQUIRED ON + CXX_EXTENSIONS OFF) target_include_directories(wxdata PRIVATE ${Boost_INCLUDE_DIR} ${HSLUV_C_INCLUDE_DIR} From 1b79c37fd2fa8ab696eb251df3543db2c7cfc8dd Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Fri, 27 Sep 2024 11:55:20 -0400 Subject: [PATCH 05/10] Removed unneeded date/chrono header includes --- scwx-qt/source/scwx/qt/main/main_window.cpp | 4 ---- scwx-qt/source/scwx/qt/map/overlay_layer.cpp | 6 ------ scwx-qt/source/scwx/qt/view/level3_product_view.cpp | 4 ---- 3 files changed, 14 deletions(-) diff --git a/scwx-qt/source/scwx/qt/main/main_window.cpp b/scwx-qt/source/scwx/qt/main/main_window.cpp index 6b865703..cadd9c90 100644 --- a/scwx-qt/source/scwx/qt/main/main_window.cpp +++ b/scwx-qt/source/scwx/qt/main/main_window.cpp @@ -52,10 +52,6 @@ #include #include -#if (__cpp_lib_chrono < 201907L) -# include -#endif - namespace scwx { namespace qt diff --git a/scwx-qt/source/scwx/qt/map/overlay_layer.cpp b/scwx-qt/source/scwx/qt/map/overlay_layer.cpp index a42bc2b3..9640a705 100644 --- a/scwx-qt/source/scwx/qt/map/overlay_layer.cpp +++ b/scwx-qt/source/scwx/qt/map/overlay_layer.cpp @@ -11,8 +11,6 @@ #include #include -#include - #if defined(_MSC_VER) # pragma warning(push, 0) #endif @@ -22,10 +20,6 @@ #include #include -#if (__cpp_lib_chrono < 201907L) -# include -#endif - #if defined(_MSC_VER) # pragma warning(pop) #endif diff --git a/scwx-qt/source/scwx/qt/view/level3_product_view.cpp b/scwx-qt/source/scwx/qt/view/level3_product_view.cpp index df65c693..d0bb0d47 100644 --- a/scwx-qt/source/scwx/qt/view/level3_product_view.cpp +++ b/scwx-qt/source/scwx/qt/view/level3_product_view.cpp @@ -17,10 +17,6 @@ #include #include -#if (__cpp_lib_chrono < 201907L) -# include -#endif - namespace scwx { namespace qt From 6953eddea6042221951758987e481867466da7a2 Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Fri, 27 Sep 2024 12:05:14 -0400 Subject: [PATCH 06/10] Moved cpp-feature-tests out of source --- wxdata/{source => }/cpp-feature-tests/chrono_feature_test.cpp | 0 wxdata/wxdata.cmake | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename wxdata/{source => }/cpp-feature-tests/chrono_feature_test.cpp (100%) diff --git a/wxdata/source/cpp-feature-tests/chrono_feature_test.cpp b/wxdata/cpp-feature-tests/chrono_feature_test.cpp similarity index 100% rename from wxdata/source/cpp-feature-tests/chrono_feature_test.cpp rename to wxdata/cpp-feature-tests/chrono_feature_test.cpp diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index 54c5574b..03793291 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -255,7 +255,7 @@ source_group("Source Files\\wsr88d\\rpg" FILES ${SRC_WSR88D_RPG}) try_compile(HAS_FULL_CHRONO ${CMAKE_BINARY_DIR} - ${PROJECT_SOURCE_DIR}/source/cpp-feature-tests/chrono_feature_test.cpp + ${PROJECT_SOURCE_DIR}/cpp-feature-tests/chrono_feature_test.cpp CXX_STANDARD 20 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF) From 421cae671662ba8289075d12dd4ce059c60a98db Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Fri, 27 Sep 2024 12:06:10 -0400 Subject: [PATCH 07/10] Renamed HAS_FULL_CHRONO to CHRONO_HAS_TIMEZONES_AND_CALANDERS --- wxdata/wxdata.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index 03793291..fd05be20 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -253,7 +253,7 @@ source_group("Header Files\\wsr88d\\rpg" FILES ${HDR_WSR88D_RPG}) source_group("Source Files\\wsr88d\\rpg" FILES ${SRC_WSR88D_RPG}) -try_compile(HAS_FULL_CHRONO +try_compile(CHRONO_HAS_TIMEZONES_AND_CALANDERS ${CMAKE_BINARY_DIR} ${PROJECT_SOURCE_DIR}/cpp-feature-tests/chrono_feature_test.cpp CXX_STANDARD 20 @@ -301,7 +301,7 @@ if (WIN32) target_link_libraries(wxdata INTERFACE Ws2_32) endif() -if (NOT HAS_FULL_CHRONO) +if (NOT CHRONO_HAS_TIMEZONES_AND_CALANDERS) target_link_libraries(wxdata PUBLIC date::date-tz) endif() From 6c7f7f952fc02941dc167368f26e846065f6d52b Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Fri, 27 Sep 2024 12:12:51 -0400 Subject: [PATCH 08/10] bumped minimum CMake version to 3.26 so it logs try_compile statements --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index c06a46e6..f3c4d157 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.21) +cmake_minimum_required(VERSION 3.26) set(PROJECT_NAME supercell-wx) project(${PROJECT_NAME} VERSION 0.4.5 From 2d9d240a5a89ca91459daba895b35f6583e19f1d Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Fri, 27 Sep 2024 13:11:35 -0400 Subject: [PATCH 09/10] Fixed CALANDERS spelling mistake --- wxdata/wxdata.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index fd05be20..e1ed8ddd 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -253,7 +253,7 @@ source_group("Header Files\\wsr88d\\rpg" FILES ${HDR_WSR88D_RPG}) source_group("Source Files\\wsr88d\\rpg" FILES ${SRC_WSR88D_RPG}) -try_compile(CHRONO_HAS_TIMEZONES_AND_CALANDERS +try_compile(CHRONO_HAS_TIMEZONES_AND_CALENDERS ${CMAKE_BINARY_DIR} ${PROJECT_SOURCE_DIR}/cpp-feature-tests/chrono_feature_test.cpp CXX_STANDARD 20 @@ -301,7 +301,7 @@ if (WIN32) target_link_libraries(wxdata INTERFACE Ws2_32) endif() -if (NOT CHRONO_HAS_TIMEZONES_AND_CALANDERS) +if (NOT CHRONO_HAS_TIMEZONES_AND_CALENDERS) target_link_libraries(wxdata PUBLIC date::date-tz) endif() From d1e583d252e5145184df2cb3d84d279f17a165f0 Mon Sep 17 00:00:00 2001 From: AdenKoperczak Date: Fri, 27 Sep 2024 13:44:45 -0400 Subject: [PATCH 10/10] revert back to cmake version 3.21 and add manual logging of CHRONO_HAS_TIMEZONES_AND_CALENDERS --- CMakeLists.txt | 2 +- wxdata/wxdata.cmake | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f3c4d157..c06a46e6 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 3.26) +cmake_minimum_required(VERSION 3.21) set(PROJECT_NAME supercell-wx) project(${PROJECT_NAME} VERSION 0.4.5 diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index e1ed8ddd..434fc415 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -259,6 +259,7 @@ try_compile(CHRONO_HAS_TIMEZONES_AND_CALENDERS CXX_STANDARD 20 CXX_STANDARD_REQUIRED ON CXX_EXTENSIONS OFF) +message("CHRONO_HAS_TIMEZONES_AND_CALENDERS: ${CHRONO_HAS_TIMEZONES_AND_CALENDERS}") target_include_directories(wxdata PRIVATE ${Boost_INCLUDE_DIR} ${HSLUV_C_INCLUDE_DIR}