From 29c56ef8674207f2126eea48f3289590028cd392 Mon Sep 17 00:00:00 2001 From: Julien Marrec Date: Fri, 10 Jul 2020 13:15:55 +0200 Subject: [PATCH 1/6] Update deps to use conan-center-index for everything --- CMakeLists.txt | 10 +++++----- ConanInstall.cmake | 33 +++++++++++---------------------- 2 files changed, 16 insertions(+), 27 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4ec0b169d44..f3dc449a751 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -729,9 +729,9 @@ endif() # set(SWIG_EXECUTABLE swig) # But will have the probblem with the swiglib anyways. # Plus, it doesn't appear to work on windows either, the PATH doesn't include it. -#find_program(SWIG_EXECUTABLE swig PATHS CURRENT_CONAN_SWIG_INSTALLER_ROOT NO_DEFAULT_PATH) +#find_program(SWIG_EXECUTABLE swig PATHS CURRENT_CONAN_SWIG_ROOT NO_DEFAULT_PATH) #if(NOT SWIG_EXECUTABLE) -# message(FATAL_ERROR "Couldn't find swig, which shouldn't happen. CONAN_BIN_DIRS_SWIG_INSTALLER=${CONAN_BIN_DIRS_SWIG_INSTALLER}, CONAN_SWIG_INSTALLER_ROOT_RELEASE=${CONAN_SWIG_INSTALLER_ROOT_RELEASE}, CURRENT_CONAN_SWIG_INSTALLER_ROOT=${CURRENT_CONAN_SWIG_INSTALLER_ROOT}, ${ENV{SWIG_LIB}}, ${ENV{SWIG_INSTALLER_ROOT}}") +# message(FATAL_ERROR "Couldn't find swig, which shouldn't happen. CONAN_BIN_DIRS_SWIG_INSTALLER=${CONAN_BIN_DIRS_SWIG_INSTALLER}, CONAN_SWIG_ROOT_RELEASE=${CONAN_SWIG_ROOT_RELEASE}, CURRENT_CONAN_SWIG_ROOT=${CURRENT_CONAN_SWIG_ROOT}, ${ENV{SWIG_LIB}}, ${ENV{SWIG_INSTALLER_ROOT}}") #endif() # Another thing I tried is to use the `virtualenv` generator (`conan_cmake_run( ... GENERATORS virtualenv)`), @@ -740,12 +740,12 @@ endif() # I also tried using CMake to extract the value from the activate.sh script on all plaftorms but it seems even more of a hack # So instead, we use a generator expression to find the right value. At least it makes sense, and should be robust. -FindValue(CONAN_SWIG_INSTALLER_ROOT) +FindValue(CONAN_SWIG_ROOT) -set(SWIG_EXECUTABLE "${CURRENT_CONAN_SWIG_INSTALLER_ROOT}/bin/swig") +set(SWIG_EXECUTABLE "${CURRENT_CONAN_SWIG_ROOT}/bin/swig") # The conan-provided binary has a built-in swiglib (`swig -swiglib`) that points to the build box on which it was built, which is problematic for us. -set(SWIG_LIB "${CURRENT_CONAN_SWIG_INSTALLER_ROOT}/share/swig/4.0.1") +set(SWIG_LIB "${CURRENT_CONAN_SWIG_ROOT}/bin/swiglib") # Export SWIG to parent scope if(hasParent) diff --git a/ConanInstall.cmake b/ConanInstall.cmake index bf3a7c9d3a7..4a220b0b3e2 100644 --- a/ConanInstall.cmake +++ b/ConanInstall.cmake @@ -23,7 +23,7 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) include(${CMAKE_BINARY_DIR}/conan.cmake) - conan_check(VERSION 1.21.0 REQUIRED) + conan_check(VERSION 1.25.0 REQUIRED) message(STATUS "openstudio: RUNNING CONAN") @@ -60,27 +60,16 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) openssl/1.1.0l # ruby 2.5.5 won't work with 1.1.1x, so use 1.1.0l here to try to force every package to align on the same as ruby # Track NREL/stable in general, on a feature branch this could be temporarily switched to NREL/testing openstudio_ruby/2.5.5@nrel/stable # TODO: Temp #@nrel/stable - boost/1.71.0 - #boost_asio/${BOOST_VERSION}@bincrafters/stable - #boost_program_options/${BOOST_VERSION}@bincrafters/stable - #boost_regex/${BOOST_VERSION}@bincrafters/stable - #boost_filesystem/${BOOST_VERSION}@bincrafters/stable - #boost_crc/${BOOST_VERSION}@bincrafters/stable - #boost_algorithm/${BOOST_VERSION}@bincrafters/stable - #boost_uuid/${BOOST_VERSION}@bincrafters/stable - #boost_log/${BOOST_VERSION}@bincrafters/stable - #boost_numeric_ublas/${BOOST_VERSION}@bincrafters/stable - #boost_functional/${BOOST_VERSION}@bincrafters/stable - #boost_geometry/${BOOST_VERSION}@bincrafters/stable - pugixml/1.10@bincrafters/stable - jsoncpp/1.9.2 - zlib/1.2.11@nrel/testing # TODO: Temp, pending merging of https://github.com/conan-io/conan-center-index/pull/1526, to resolve #3961 - fmt/6.2.0 - sqlite3/3.30.1 - cpprestsdk/2.10.14@bincrafters/stable - websocketpp/0.8.1@bincrafters/stable - geographiclib/1.49@bincrafters/stable - swig_installer/4.0.1@bincrafters/stable + boost/1.72.0 + pugixml/1.10 + jsoncpp/1.9.3 + zlib/1.2.11 + fmt/7.0.1 + sqlite3/3.32.3 + cpprestsdk/2.10.16 + websocketpp/0.8.2 + geographiclib/1.50.1 + swig/4.0.1 ${CONAN_GTEST} # Override to avoid dependency mismatches From 5fbf022a8ded4af7dbb25da7db76ade022042c01 Mon Sep 17 00:00:00 2001 From: Julien Marrec Date: Fri, 10 Jul 2020 13:16:49 +0200 Subject: [PATCH 2/6] Use the openstudio_ruby testing from https://github.com/NREL/conan-openstudio-ruby/pull/28 --- ConanInstall.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ConanInstall.cmake b/ConanInstall.cmake index 4a220b0b3e2..feceeb8f423 100644 --- a/ConanInstall.cmake +++ b/ConanInstall.cmake @@ -59,7 +59,7 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) ${CONAN_QT} openssl/1.1.0l # ruby 2.5.5 won't work with 1.1.1x, so use 1.1.0l here to try to force every package to align on the same as ruby # Track NREL/stable in general, on a feature branch this could be temporarily switched to NREL/testing - openstudio_ruby/2.5.5@nrel/stable # TODO: Temp #@nrel/stable + openstudio_ruby/2.5.5@nrel/testing # TODO: Temp #@nrel/stable boost/1.72.0 pugixml/1.10 jsoncpp/1.9.3 From 9ea19199cf7296d421b9d2b79e29e4328898a14e Mon Sep 17 00:00:00 2001 From: Julien Marrec Date: Fri, 10 Jul 2020 13:23:37 +0200 Subject: [PATCH 3/6] Put NREL remote first in line --- ConanInstall.cmake | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ConanInstall.cmake b/ConanInstall.cmake index feceeb8f423..95832e8b7e7 100644 --- a/ConanInstall.cmake +++ b/ConanInstall.cmake @@ -27,16 +27,16 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) message(STATUS "openstudio: RUNNING CONAN") + # Add NREL remote and place it first in line, so that if we vendor dependencies to NREL's repo they will be picked first + conan_add_remote(NAME nrel INDEX 0 + URL https://api.bintray.com/conan/commercialbuilding/nrel) + conan_add_remote(NAME bincrafters URL https://api.bintray.com/conan/bincrafters/public-conan) - conan_add_remote(NAME nrel - URL https://api.bintray.com/conan/commercialbuilding/nrel) + #conan_add_remote(NAME jmarrec # URL https://api.bintray.com/conan/jmarrec/testing) - # Convenience variable to set a consistent version for individual boost packages - # set(BOOST_VERSION "1.71.0") - list(APPEND CONAN_OPTIONS "zlib:minizip=True") # TODO: list(APPEND CONAN_OPTIONS "fmt:header_only=True") From 0fd4356f5ab250da6c825f1b8aefd57565bedb30 Mon Sep 17 00:00:00 2001 From: Julien Marrec Date: Fri, 10 Jul 2020 13:27:43 +0200 Subject: [PATCH 4/6] CI apparently only has conan 1.24, so use 1.24. I ahd choosen 1.25 because I thought that was required, but perhaps not. Note: conan 1.27.1 is out currently --- ConanInstall.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ConanInstall.cmake b/ConanInstall.cmake index 95832e8b7e7..23176169b83 100644 --- a/ConanInstall.cmake +++ b/ConanInstall.cmake @@ -23,7 +23,7 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) include(${CMAKE_BINARY_DIR}/conan.cmake) - conan_check(VERSION 1.25.0 REQUIRED) + conan_check(VERSION 1.24.0 REQUIRED) message(STATUS "openstudio: RUNNING CONAN") From de0bf2095daf67aa4607f5773228bf847b9486b5 Mon Sep 17 00:00:00 2001 From: Julien Marrec Date: Fri, 14 Aug 2020 22:15:13 +0200 Subject: [PATCH 5/6] Bump conan to 1.28 and swig to 4.0.2 --- ConanInstall.cmake | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ConanInstall.cmake b/ConanInstall.cmake index 23176169b83..d1fa0eed335 100644 --- a/ConanInstall.cmake +++ b/ConanInstall.cmake @@ -23,11 +23,11 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) include(${CMAKE_BINARY_DIR}/conan.cmake) - conan_check(VERSION 1.24.0 REQUIRED) + conan_check(VERSION 1.28.0 REQUIRED) message(STATUS "openstudio: RUNNING CONAN") - # Add NREL remote and place it first in line, so that if we vendor dependencies to NREL's repo they will be picked first + # Add NREL remote and place it first in line, since we vendored dependencies to NREL's repo, they will be picked first conan_add_remote(NAME nrel INDEX 0 URL https://api.bintray.com/conan/commercialbuilding/nrel) @@ -69,7 +69,7 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) cpprestsdk/2.10.16 websocketpp/0.8.2 geographiclib/1.50.1 - swig/4.0.1 + swig/4.0.2 ${CONAN_GTEST} # Override to avoid dependency mismatches From 180aab32e1bd33ef0b08b5cd449213772c63ff00 Mon Sep 17 00:00:00 2001 From: Julien Marrec Date: Sat, 15 Aug 2020 00:47:37 +0200 Subject: [PATCH 6/6] USe os ruby stable now that it's availalbe, and bump to boost 1.73 the 1.73 is untested, but since ruby stable is same as testing if it fails we can just revert that --- ConanInstall.cmake | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ConanInstall.cmake b/ConanInstall.cmake index d1fa0eed335..1481d0110fe 100644 --- a/ConanInstall.cmake +++ b/ConanInstall.cmake @@ -59,8 +59,8 @@ if(NOT CONAN_OPENSTUDIO_ALREADY_RUN) ${CONAN_QT} openssl/1.1.0l # ruby 2.5.5 won't work with 1.1.1x, so use 1.1.0l here to try to force every package to align on the same as ruby # Track NREL/stable in general, on a feature branch this could be temporarily switched to NREL/testing - openstudio_ruby/2.5.5@nrel/testing # TODO: Temp #@nrel/stable - boost/1.72.0 + openstudio_ruby/2.5.5@nrel/stable # TODO: Temp #@nrel/stable + boost/1.73.0 pugixml/1.10 jsoncpp/1.9.3 zlib/1.2.11 @@ -92,4 +92,3 @@ else() message(STATUS "openstudio: CONAN RUN BY CALLING SCRIPT") endif() -