diff --git a/README.md b/README.md index 9e131149df..e1a499e347 100644 --- a/README.md +++ b/README.md @@ -60,7 +60,7 @@ At the minimum, Katana depends on the following software: - libxml2 (>= 2.9.1) - libarrow (>= 4.0) - libuuid (>= 2.31.1) -- [nlohmann/json](https://github.com/nlohmann/json) (>= 3.7.3) +- [nlohmann/json](https://github.com/nlohmann/json) (>= 3.10.3) Here are the dependencies for the optional features: diff --git a/conda_recipe/environment.yml b/conda_recipe/environment.yml index 70aed1db12..d2b431683d 100644 --- a/conda_recipe/environment.yml +++ b/conda_recipe/environment.yml @@ -50,7 +50,7 @@ dependencies: - nbsphinx>=0.8 - ncurses>=6.1,<7a0 - ninja>=1.10 - - nlohmann_json>=3.7.3,<4a0 + - nlohmann_json>=3.10.3,<4a0 - numba>=0.53.1,<0.54a0 - numpy>=1.17,<2a0 - openblas>=0.3.12 diff --git a/katana_requirements.yaml b/katana_requirements.yaml index 17dbedf011..5ff297272c 100644 --- a/katana_requirements.yaml +++ b/katana_requirements.yaml @@ -265,7 +265,7 @@ ninja: labels: - conda nlohmann_json: - version: [ 3.7.3, 4 ] + version: [ 3.10.3, 4 ] labels: - conda - conan diff --git a/libsupport/CMakeLists.txt b/libsupport/CMakeLists.txt index 0b22f92e26..8062005c40 100644 --- a/libsupport/CMakeLists.txt +++ b/libsupport/CMakeLists.txt @@ -48,10 +48,29 @@ set_common_katana_library_options(katana_support ALWAYS_SHARED) target_link_libraries(katana_support PUBLIC arrow::arrow arrow::parquet) +if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") + MESSAGE("CMAKE_CXX_COMPILER_ID: GNU") + if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9.1) + MESSAGE("CMAKE_CXX_COMPILER_VERSION: ${CMAKE_CXX_COMPILER_VERSION}") + target_link_libraries(katana_support PUBLIC stdc++fs) + endif() +endif() + +if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + MESSAGE("CMAKE_CXX_COMPILER_ID: Clang") + if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 9.0) + MESSAGE("CMAKE_CXX_COMPILER_VERSION: ${CMAKE_CXX_COMPILER_VERSION}") + target_link_libraries(katana_support PUBLIC c++fs) + endif() +endif() -find_package(nlohmann_json 3.7.3 REQUIRED) + +find_package(nlohmann_json 3.10.3 REQUIRED) target_link_libraries(katana_support PUBLIC nlohmann_json::nlohmann_json) + + + find_package(libcurl QUIET) if(libcurl_FOUND) # Older conan-generated package name is libcurl. More recent versions (at