diff --git a/CMakeLists.txt b/CMakeLists.txt index 079c16d47dca1b72b91c6397e9e82066c4fc00f6..c8ebdffa0be2827abc5a497f82b1a071389f7d2a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,7 +34,7 @@ if(USGSCSM_EXTERNAL_DEPS) # Eigen find_package(Eigen3 3.3 REQUIRED NO_MODULE) - + # ALE find_package(ale REQUIRED) set(ALE_TARGET ale::ale) @@ -46,12 +46,11 @@ else() set(CSM_LIBRARY csmapi) # Nlohmann JSON - set(JSON_BuildTests OFF CACHE INTERNAL "") - add_subdirectory(json) + # Use the Nlohmann JSON version embedded in ALE # ALE set(ALE_USE_EXTERNAL_EIGEN OFF) - set(ALE_USE_EXTERNAL_JSON ON) + set(ALE_USE_EXTERNAL_JSON OFF) set(ALE_BUILD_LOAD OFF) set(ALE_BUILD_TESTS OFF) add_subdirectory(ale) diff --git a/cmake/nlohmann_jsonConfig.cmake b/cmake/nlohmann_jsonConfig.cmake deleted file mode 100644 index 27b0a864a89356e466d57f57b6a6cd76be2be801..0000000000000000000000000000000000000000 --- a/cmake/nlohmann_jsonConfig.cmake +++ /dev/null @@ -1,15 +0,0 @@ -include(FindPackageHandleStandardArgs) -set(${CMAKE_FIND_PACKAGE_NAME}_CONFIG ${CMAKE_CURRENT_LIST_FILE}) -find_package_handle_standard_args(nlohmann_json CONFIG_MODE) - -if(NOT TARGET nlohmann_json::nlohmann_json) - include("${CMAKE_CURRENT_LIST_DIR}/nlohmann_jsonTargets.cmake") - if((NOT TARGET nlohmann_json) AND - (NOT nlohmann_json_FIND_VERSION OR - nlohmann_json_FIND_VERSION VERSION_LESS 3.2.0)) - add_library(nlohmann_json INTERFACE IMPORTED) - set_target_properties(nlohmann_json PROPERTIES - INTERFACE_LINK_LIBRARIES nlohmann_json::nlohmann_json - ) - endif() -endif() diff --git a/cmake/nlohmann_jsonTargets.cmake b/cmake/nlohmann_jsonTargets.cmake deleted file mode 100644 index 0ae4cac305d7a07c0e84c9db2c34f48e75e30a2a..0000000000000000000000000000000000000000 --- a/cmake/nlohmann_jsonTargets.cmake +++ /dev/null @@ -1,100 +0,0 @@ -# Generated by CMake - -if("${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}" LESS 2.5) - message(FATAL_ERROR "CMake >= 2.6.0 required") -endif() -cmake_policy(PUSH) -cmake_policy(VERSION 2.6...3.19) -#---------------------------------------------------------------- -# Generated CMake target import file. -#---------------------------------------------------------------- - -# Commands may need to know the format version. -set(CMAKE_IMPORT_FILE_VERSION 1) - -# Protect against multiple inclusion, which would fail when already imported targets are added once more. -set(_targetsDefined) -set(_targetsNotDefined) -set(_expectedTargets) -foreach(_expectedTarget nlohmann_json::nlohmann_json) - list(APPEND _expectedTargets ${_expectedTarget}) - if(NOT TARGET ${_expectedTarget}) - list(APPEND _targetsNotDefined ${_expectedTarget}) - endif() - if(TARGET ${_expectedTarget}) - list(APPEND _targetsDefined ${_expectedTarget}) - endif() -endforeach() -if("${_targetsDefined}" STREQUAL "${_expectedTargets}") - unset(_targetsDefined) - unset(_targetsNotDefined) - unset(_expectedTargets) - set(CMAKE_IMPORT_FILE_VERSION) - cmake_policy(POP) - return() -endif() -if(NOT "${_targetsDefined}" STREQUAL "") - message(FATAL_ERROR "Some (but not all) targets in this export set were already defined.\nTargets Defined: ${_targetsDefined}\nTargets not yet defined: ${_targetsNotDefined}\n") -endif() -unset(_targetsDefined) -unset(_targetsNotDefined) -unset(_expectedTargets) - - -# Compute the installation prefix relative to this file. -get_filename_component(_IMPORT_PREFIX "${CMAKE_CURRENT_LIST_FILE}" PATH) -get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) -get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) -get_filename_component(_IMPORT_PREFIX "${_IMPORT_PREFIX}" PATH) -if(_IMPORT_PREFIX STREQUAL "/") - set(_IMPORT_PREFIX "") -endif() - -# Create imported target nlohmann_json::nlohmann_json -add_library(nlohmann_json::nlohmann_json INTERFACE IMPORTED) - -set_target_properties(nlohmann_json::nlohmann_json PROPERTIES - INTERFACE_COMPILE_DEFINITIONS "JSON_USE_IMPLICIT_CONVERSIONS=\$<BOOL:ON>;JSON_DIAGNOSTICS=\$<BOOL:OFF>" - INTERFACE_COMPILE_FEATURES "cxx_std_11" - #INTERFACE_INCLUDE_DIRECTORIES "${_IMPORT_PREFIX}/include;${_IMPORT_PREFIX}/include" -) - -if(CMAKE_VERSION VERSION_LESS 3.0.0) - message(FATAL_ERROR "This file relies on consumers using CMake 3.0.0 or greater.") -endif() - -# Load information for each installed configuration. -get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) -file(GLOB CONFIG_FILES "${_DIR}/nlohmann_jsonTargets-*.cmake") -foreach(f ${CONFIG_FILES}) - include(${f}) -endforeach() - -# Cleanup temporary variables. -set(_IMPORT_PREFIX) - -# Loop over all imported files and verify that they actually exist -foreach(target ${_IMPORT_CHECK_TARGETS} ) - foreach(file ${_IMPORT_CHECK_FILES_FOR_${target}} ) - if(NOT EXISTS "${file}" ) - message(FATAL_ERROR "The imported target \"${target}\" references the file - \"${file}\" -but this file does not exist. Possible reasons include: -* The file was deleted, renamed, or moved to another location. -* An install or uninstall procedure did not complete successfully. -* The installation package was faulty and contained - \"${CMAKE_CURRENT_LIST_FILE}\" -but not all the files it references. -") - endif() - endforeach() - unset(_IMPORT_CHECK_FILES_FOR_${target}) -endforeach() -unset(_IMPORT_CHECK_TARGETS) - -# This file does not depend on other imported targets which have -# been exported from the same project but in a separate export set. - -# Commands beyond this point should not need to know the version. -set(CMAKE_IMPORT_FILE_VERSION) -cmake_policy(POP) diff --git a/environment.yml b/environment.yml index 680db84d5425590655992b7a964ef0d20335de6c..c93069f2231002ee084d889735428226ee7a6be0 100644 --- a/environment.yml +++ b/environment.yml @@ -7,5 +7,5 @@ dependencies: - cmake>=3.15 - ale - csm - - nlohmann_json + - nlohmann_json<=3.10.4 - eigen