From 1647ae059257bca485b32102fb4c1c35d15c3b5e Mon Sep 17 00:00:00 2001 From: Marko Petric Date: Fri, 16 Jun 2017 22:19:29 +0200 Subject: [PATCH 1/7] Remove DD4HEP_USE_BOOST from CI since it's not needed --- .dd4hep-ci.d/compile_and_test.sh | 2 +- .dd4hep-ci.d/coverity_scan.sh | 2 +- .gitlab-ci.yml | 18 +++++++++--------- bootstrap.sh | 4 ++-- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.dd4hep-ci.d/compile_and_test.sh b/.dd4hep-ci.d/compile_and_test.sh index 8801cd090..4b0e1607e 100755 --- a/.dd4hep-ci.d/compile_and_test.sh +++ b/.dd4hep-ci.d/compile_and_test.sh @@ -8,7 +8,7 @@ source /DD4hep/.dd4hep-ci.d/init_x86_64.sh cd /DD4hep mkdir build cd build -cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always" .. && \ +cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always" .. && \ ninja && \ ninja install && \ . ../bin/thisdd4hep.sh && \ diff --git a/.dd4hep-ci.d/coverity_scan.sh b/.dd4hep-ci.d/coverity_scan.sh index d3615961d..5f55f387d 100755 --- a/.dd4hep-ci.d/coverity_scan.sh +++ b/.dd4hep-ci.d/coverity_scan.sh @@ -7,7 +7,7 @@ source /Package/.dd4hep-ci.d/init_x86_64.sh cd /Package mkdir build cd build -cmake -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always" .. && \ +cmake -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS -DCMAKE_CXX_FLAGS="-fdiagnostics-color=always" .. && \ export PATH=/cov-analysis-linux64/bin:$PATH && \ cov-build --dir cov-int make -j4 && \ tar czvf myproject.tgz cov-int diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c2f83e59c..19145cd81 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,7 +7,7 @@ slc6-gcc7-Geant10.2: - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -29,7 +29,7 @@ slc6-llvm40-Geant10.2: - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -52,7 +52,7 @@ slc6-ggc7-Geant10.3: - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.3.1 -D DD4HEP_USE_CXX14=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.3.1 -D DD4HEP_USE_CXX14=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -74,7 +74,7 @@ slc6-gcc7-Geant10.2-XERCESC: - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -96,7 +96,7 @@ centos7-gcc7-Geant10.2: - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -119,7 +119,7 @@ centos7-llvm40-Geant10.2: - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -142,7 +142,7 @@ centos7-llvm40-Geant10.3-XERCESC: - source .dd4hep-ci.d/init_x86_64.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.3.1 -D DD4HEP_USE_CXX14=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.3.1 -D DD4HEP_USE_CXX14=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -162,7 +162,7 @@ mac1012-clang80: - source .dd4hep-ci.d/init_mac.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib/Geant4-10.2.2 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib/Geant4-10.2.2 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh @@ -182,7 +182,7 @@ mac1012-clang80-XERCESC: - source .dd4hep-ci.d/init_mac.sh - mkdir build - cd build - - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib/Geant4-10.2.2 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. + - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib/Geant4-10.2.2 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DDD4HEP_USE_XERCESC=ON -DXERCESC_ROOT_DIR=${XercesC_HOME} -DROOT_DIR=$ROOTSYS .. - ninja - ninja install - . ../bin/thisdd4hep.sh diff --git a/bootstrap.sh b/bootstrap.sh index 66213f929..1e78b0f14 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -14,9 +14,9 @@ STRING=$(env LC_CTYPE=C tr -dc "a-zA-Z0-9-_\$\?" < /dev/urandom | head -c 4) mkdir build_${STRING} cd build_${STRING} if [ "$(uname)" == "Darwin" ]; then - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib/Geant4-10.2.2 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib/Geant4-10.2.2 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. else - cmake -GNinja -D DD4HEP_USE_GEANT4=ON -D DD4HEP_USE_BOOST=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.2 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. + cmake -GNinja -D DD4HEP_USE_GEANT4=ON -DBoost_NO_BOOST_CMAKE=ON -D DD4HEP_USE_LCIO=ON -D BUILD_TESTING=ON -D Geant4_DIR=$G4INSTALL/lib64/Geant4-10.2.3 -D DD4HEP_USE_CXX11=ON -DCMAKE_BUILD_TYPE=Release -DROOT_DIR=$ROOTSYS .. fi ninja ninja install From 3c6ac5cdf135db9e7b6f4d4067155f801e1234ff Mon Sep 17 00:00:00 2001 From: Marko Petric Date: Fri, 16 Jun 2017 22:26:26 +0200 Subject: [PATCH 2/7] Account boost option from cmake --- CMakeLists.txt | 6 +++++- cmake/DD4hep.cmake | 16 ---------------- cmake/DD4hepBuild.cmake | 1 - cmake/DD4hepConfig.cmake.in | 1 - 4 files changed, 5 insertions(+), 19 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 652d3afae..b412414d5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -53,7 +53,11 @@ dd4hep_configure_output( OUTPUT "${PROJECT_BINARY_DIR}" INSTALL "${CMAKE_INSTALL find_package ( ROOT REQUIRED COMPONENTS Geom GenVector Eve Gui Graf3d RGL EG) include(${ROOT_USE_FILE}) message ( STATUS "ROOT_VERSION: ${ROOT_VERSION}" ) - +# +# Include Boost +# +find_package( Boost REQUIRED ) +add_definitions( -DBOOST_SPIRIT_USE_PHOENIX_V3 ) #--------------------------------------------------------------------------------------------------- #fg: moved to here from DD4hep.cmake to not force CMAKE_CXX_FLAGS upon dependent packages dd4hep_set_compiler_flags() diff --git a/cmake/DD4hep.cmake b/cmake/DD4hep.cmake index a861f7a61..499e6ae68 100644 --- a/cmake/DD4hep.cmake +++ b/cmake/DD4hep.cmake @@ -19,22 +19,6 @@ if(CMAKE_INSTALL_PREFIX) endif() #--------------------------------------------------------------------------------------------------- -# Need this fix, since the cmake name is Geant4 and on GEANT4 -if(DD4HEP_USE_GEANT4) - set ( DD4HEP_USE_BOOST ON ) # Boost is required ! -endif() -#--------------------------------------------------------------------------------------------------- -if(DD4HEP_USE_BOOST) - #message(FATAL_ERROR "Boost is required ${DD4HEP_USE_BOOST}") - if ( "${Boost_INCLUDE_DIRS}" STREQUAL "" ) - find_package( Boost REQUIRED ) - ##include_directories( SYSTEM ${Boost_INCLUDE_DIRS} ) - endif() - add_definitions( -DDD4HEP_USE_BOOST ) - add_definitions( -DBOOST_SPIRIT_USE_PHOENIX_V3 ) -else() - set ( DD4HEP_USE_BOOST OFF ) -endif() # Main functional include file if ( "${DD4hepBuild_included}" STREQUAL "" ) include ( DD4hepBuild ) diff --git a/cmake/DD4hepBuild.cmake b/cmake/DD4hepBuild.cmake index 8f8122f81..1d7431de7 100644 --- a/cmake/DD4hepBuild.cmake +++ b/cmake/DD4hepBuild.cmake @@ -251,7 +251,6 @@ function ( dd4hep_print_options ) dd4hep_print ( "| DD4hep build setup: " ) dd4hep_print ( "| " ) dd4hep_print ( "| CMAKE_MODULE_PATH: ${CMAKE_MODULE_PATH} " ) - dd4hep_print ( "| DD4HEP_USE_BOOST: ${DD4HEP_USE_BOOST} DD4HEP_USE_Boost:${DD4HEP_USE_Boost}" ) dd4hep_print ( "| DD4HEP_USE_XERCESC: ${DD4HEP_USE_XERCESC} " ) dd4hep_print ( "| XERCESC_ROOT_DIR: ${XERCESC_ROOT_DIR} " ) dd4hep_print ( "| DD4HEP_USE_LCIO: ${DD4HEP_USE_LCIO} " ) diff --git a/cmake/DD4hepConfig.cmake.in b/cmake/DD4hepConfig.cmake.in index f994e3650..9eb51c039 100644 --- a/cmake/DD4hepConfig.cmake.in +++ b/cmake/DD4hepConfig.cmake.in @@ -17,7 +17,6 @@ set ( DD4hep_DIR "$ENV{DD4hep_DIR}" ) set ( DD4hep_ROOT "$ENV{DD4hep_ROOT}" ) set ( DD4hep_VERSION "@DD4hep_VERSION@" ) set ( DD4hep_SOVERSION "@DD4hep_SOVERSION@" ) -set ( DD4HEP_USE_BOOST "@DD4HEP_USE_BOOST@" ) set ( DD4HEP_USE_GEANT4 "@DD4HEP_USE_GEANT4@" ) set ( DD4HEP_USE_XERCESC "@DD4HEP_USE_XERCESC@" ) set ( DD4HEP_USE_CXX11 "@DD4HEP_USE_CXX11@" ) From 3f3176734bd0366f12e910c959569e8b5ce0d0ad Mon Sep 17 00:00:00 2001 From: Marko Petric Date: Fri, 16 Jun 2017 22:37:49 +0200 Subject: [PATCH 3/7] Remove boost ifdes from JsonProcessor --- DDCore/src/plugins/JsonProcessor.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/DDCore/src/plugins/JsonProcessor.cpp b/DDCore/src/plugins/JsonProcessor.cpp index 56b6807ec..d7ac2c302 100644 --- a/DDCore/src/plugins/JsonProcessor.cpp +++ b/DDCore/src/plugins/JsonProcessor.cpp @@ -10,7 +10,6 @@ // Author : M.Frank // //========================================================================== -#ifdef DD4HEP_USE_BOOST /** Note: @@ -157,6 +156,3 @@ static long handle_json(Detector& description, int argc, char** argv) { return 1; } DECLARE_APPLY(DD4hep_JsonProcessor,handle_json) - -#endif // DD4HEP_USE_BOOST - From e3f67732dafa22a96630aeee28950ee2a03385e5 Mon Sep 17 00:00:00 2001 From: Marko Petric Date: Fri, 16 Jun 2017 22:59:06 +0200 Subject: [PATCH 4/7] Require boost 1.49 this is when spirit 2.5.2 was instroduced and this is still the same spirit as in boost 1.64 --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b412414d5..8a45ac043 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -56,7 +56,7 @@ message ( STATUS "ROOT_VERSION: ${ROOT_VERSION}" ) # # Include Boost # -find_package( Boost REQUIRED ) +find_package( Boost 1.49 REQUIRED ) add_definitions( -DBOOST_SPIRIT_USE_PHOENIX_V3 ) #--------------------------------------------------------------------------------------------------- #fg: moved to here from DD4hep.cmake to not force CMAKE_CXX_FLAGS upon dependent packages From 110585d97e98ecb1333e612cdbb68da4877f6872 Mon Sep 17 00:00:00 2001 From: Marko Petric Date: Fri, 16 Jun 2017 23:01:01 +0200 Subject: [PATCH 5/7] Remove last DD4HEP_USE_BOOST --- examples/ClientTests/src_boost/JsonDumper.cpp | 3 --- 1 file changed, 3 deletions(-) diff --git a/examples/ClientTests/src_boost/JsonDumper.cpp b/examples/ClientTests/src_boost/JsonDumper.cpp index 08f97e415..996f9b1f9 100644 --- a/examples/ClientTests/src_boost/JsonDumper.cpp +++ b/examples/ClientTests/src_boost/JsonDumper.cpp @@ -10,7 +10,6 @@ // Author : M.Frank // //========================================================================== -#ifdef DD4HEP_USE_BOOST // Framework include files #include "JSON/Elements.h" @@ -32,5 +31,3 @@ static long json_dump(Detector& /* description */, int argc, char** argv) { return 1; } DECLARE_APPLY(DD4hep_JsonDumper,json_dump) - -#endif From 10f3dbf0349ace1e09be8927f356097ecb439c79 Mon Sep 17 00:00:00 2001 From: Marko Petric Date: Fri, 16 Jun 2017 23:06:17 +0200 Subject: [PATCH 6/7] Update readme and update min requirement for ROOT --- CMakeLists.txt | 2 +- README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 8a45ac043..6f50db70b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -50,7 +50,7 @@ dd4hep_configure_output( OUTPUT "${PROJECT_BINARY_DIR}" INSTALL "${CMAKE_INSTALL # # Include ROOT # -find_package ( ROOT REQUIRED COMPONENTS Geom GenVector Eve Gui Graf3d RGL EG) +find_package ( ROOT 6.08 REQUIRED COMPONENTS Geom GenVector Eve Gui Graf3d RGL EG) include(${ROOT_USE_FILE}) message ( STATUS "ROOT_VERSION: ${ROOT_VERSION}" ) # diff --git a/README.md b/README.md index 5d4206c90..6d1785220 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ system before building and running the examples - **Mandatory** - CMake (version 2.8 or higher), ROOT (version 5.30 or higher) and Boost installations are mandatory. + CMake (version 3.3 or higher), ROOT (version 6.08 or higher) and Boost (version 1.49 or higher) installations are mandatory. - **Optional** From f001fbcbe9bbbeb329f264cc0bab94b7c70cb222 Mon Sep 17 00:00:00 2001 From: Marko Petric Date: Tue, 20 Jun 2017 18:44:13 +0200 Subject: [PATCH 7/7] Remove boost ifdefs from BasicGrammar_inl --- .../include/DD4hep/detail/BasicGrammar_inl.h | 26 ------------------- 1 file changed, 26 deletions(-) diff --git a/DDCore/include/DD4hep/detail/BasicGrammar_inl.h b/DDCore/include/DD4hep/detail/BasicGrammar_inl.h index 1cbfc950a..5f6438a67 100644 --- a/DDCore/include/DD4hep/detail/BasicGrammar_inl.h +++ b/DDCore/include/DD4hep/detail/BasicGrammar_inl.h @@ -25,7 +25,6 @@ #include "DD4hep/Primitives.h" #include "DD4hep/BasicGrammar.h" -#ifdef DD4HEP_USE_BOOST #if defined(DD4HEP_PARSER_HEADER) #define DD4HEP_NEED_EVALUATOR @@ -40,7 +39,6 @@ #include "DDParsers/Evaluator.h" namespace dd4hep { XmlTools::Evaluator& g4Evaluator(); } #endif -#endif namespace { static XmlTools::Evaluator& s__eval(dd4hep::g4Evaluator()); } // C/C++ include files @@ -115,9 +113,7 @@ namespace dd4hep { template bool Grammar::fromString(void* ptr, const std::string& string_val) const { int sc = 0; TYPE temp; -#ifdef DD4HEP_USE_BOOST sc = ::dd4hep::Parsers::parse(temp,string_val); -#endif if ( !sc ) sc = evaluate(&temp,string_val); #if 0 std::cout << "Sc=" << sc << " Converting value: " << string_val @@ -128,29 +124,15 @@ namespace dd4hep { *(TYPE*)ptr = temp; return true; } -#ifndef DD4HEP_USE_BOOST - throw std::runtime_error("This version of DD4HEP is not compiled to use boost::spirit.\n" - "To enable elaborated property handling set DD4HEP_USE_BOOST=ON\n" - "and BOOST_INCLUDE_DIR="); -#else BasicGrammar::invalidConversion(string_val, typeid(TYPE)); return false; -#endif } /// Serialize a property to a string template std::string Grammar::str(const void* ptr) const { -#ifdef DD4HEP_USE_BOOST std::stringstream string_rep; Utils::toStream(*(TYPE*)ptr,string_rep); return string_rep.str(); -#else - if (ptr) { - } - throw std::runtime_error("This version of DD4HEP is not compiled to use boost::spirit.\n" - "To enable elaborated property handling set DD4HEP_USE_BOOST=ON\n" - "and BOOST_INCLUDE_DIR="); -#endif } /// Helper function to parse data type @@ -243,7 +225,6 @@ namespace dd4hep { /// Container evaluator template static int eval_container(TYPE* p, const std::string& str) { -#ifdef DD4HEP_USE_BOOST std::vector buff; int sc = Parsers::parse(buff,str); if ( sc ) { @@ -263,9 +244,6 @@ namespace dd4hep { return fill_data(p,buff); } } -#else - if ( p && str.empty() ) return 0; -#endif return 0; } @@ -276,16 +254,12 @@ namespace dd4hep { val.erase(idx, 5); while (val[0] == ' ') val.erase(0, 1); -#ifdef DD4HEP_USE_BOOST double result = s__eval.evaluate(val.c_str()); if (s__eval.status() != XmlTools::Evaluator::OK) { return 0; } *ptr = (T)result; return 1; -#else - return 0; -#endif } /// String evaluator