diff --git a/external/Hal.patch b/external/Hal.patch new file mode 100644 index 0000000000000000000000000000000000000000..b9b1213ca71e0874a1844394c520bbec1fa37a2a --- /dev/null +++ b/external/Hal.patch @@ -0,0 +1,105 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9376018..c87ecb1 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -15,7 +15,18 @@ endif() + Set(USE_FAIRROOT FALSE) + Set(USE_EXAMPLES FALSE) + #check if simpath detected +-if(DEFINED ENV{SIMPATH}) ++ ++if(NOT DEFINED ENV{SIMPATH} AND NOT DEFINED SIMPATH) ++message (FATAL_ERROR "\ ++You did not define the environment variable SIMPATH or define SIMPATH when calling cmake. \ ++Either of the two is needed to properly find the external packages. \ ++Please either set this environment variable or pass -DSIMPATH=<path> and execute cmake again. \ ++") ++endif() ++if (NOT DEFINED SIMPATH) ++ set(SIMPATH $ENV{SIMPATH}) ++endif() ++if(DEFINED SIMPATH) + Set(USE_FAIRROOT TRUE) + endif() + #check if fairroot disabled +diff --git a/cmake/fair/CheckCompiler.cmake b/cmake/fair/CheckCompiler.cmake +index 2bc05b2..91a6fa2 100644 +--- a/cmake/fair/CheckCompiler.cmake ++++ b/cmake/fair/CheckCompiler.cmake +@@ -19,7 +19,7 @@ endif (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE) + # the compiler and compiler flags used to install fairsoft. + # Compare compiler and compiler flags used to compile fairsoft with the compiler and flags used now + # In case of differences print a warning +-Find_Program(FAIRSOFT_CONFIG fairsoft-config PATHS $ENV{SIMPATH}/bin $ENV{FAIRSOFT_ROOT}/bin NO_DEFAULT_PATH) ++Find_Program(FAIRSOFT_CONFIG fairsoft-config PATHS ${SIMPATH}/bin $ENV{SIMPATH}/bin $ENV{FAIRSOFT_ROOT}/bin NO_DEFAULT_PATH) + + If(FAIRSOFT_CONFIG) + Message(STATUS "fairsoft-config found") +diff --git a/cmake/modules/CMakeFairRoot.cmake b/cmake/modules/CMakeFairRoot.cmake +index 1fad98c..19a3290 100644 +--- a/cmake/modules/CMakeFairRoot.cmake ++++ b/cmake/modules/CMakeFairRoot.cmake +@@ -22,9 +22,12 @@ IF(NOT UNIX) + ENDIF(NOT UNIX) + + +-IF(NOT DEFINED ENV{SIMPATH}) ++if(NOT DEFINED ENV{SIMPATH} AND NOT DEFINED SIMPATH) + MESSAGE(FATAL_ERROR "You did not define the environment variable SIMPATH which is nedded to find the external packages. Please set this variable and execute cmake again.") + ENDIF(NOT DEFINED ENV{SIMPATH}) ++if(NOT SIMPATH) ++ Set(SIMPATH $ENV{SIMPATH}) ++endif() + + find_package(ROOT 6.00.00 REQUIRED) + if("${ROOT_VERSION_MAJOR}.${ROOT_VERSION_MINOR}" VERSION_GREATER 6.16) +@@ -36,7 +39,6 @@ find_package(ROOT 6.00.00 REQUIRED) + set(VMCLIB VMCLibrary) + endif() + endif() +-Set(SIMPATH $ENV{SIMPATH}) + Set(Boost_NO_SYSTEM_PATHS TRUE) + Set(Boost_NO_BOOST_CMAKE TRUE) + Set(BOOST_ROOT ${SIMPATH}) +diff --git a/cmake/modules/HalMacros.cmake b/cmake/modules/HalMacros.cmake +index c48a4ca..284a5a9 100644 +--- a/cmake/modules/HalMacros.cmake ++++ b/cmake/modules/HalMacros.cmake +@@ -8,15 +8,17 @@ Macro(SetFairBase) + SET(FAIRBASE ${FAIRBASE}) + Else (FAIRBASE) + Message(STATUS "NOT Found FAIRBASE") +- IF(NOT DEFINED ENV{FAIRROOTPATH}) ++ if(NOT DEFINED ENV{FAIRROOTPATH} AND NOT DEFINED FAIRROOTPATH) + MESSAGE(FATAL_ERROR "You did not define the environment variable FAIRROOTPATH which is needed to find FairRoot. Please set this variable and execute cmake again.") + SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/fair" ${CMAKE_MODULE_PATH}) + MESSAGE(WARNING "CMP ${CMAKE_MODULE_PATH}") +- ENDIF(NOT DEFINED ENV{FAIRROOTPATH}) +- SET(FAIRROOTPATH $ENV{FAIRROOTPATH}) ++ endif() ++ if(NOT FAIRROOTPATH) ++ SET(FAIRROOTPATH $ENV{FAIRROOTPATH}) ++ endif() + EndIf (FAIRBASE) +- set(CMAKE_MODULE_PATH "$ENV{FAIRROOTPATH}/share/fairbase/cmake/modules_old" ${CMAKE_MODULE_PATH}) +- set(CMAKE_MODULE_PATH "$ENV{FAIRROOTPATH}/share/fairbase/cmake/modules" ${CMAKE_MODULE_PATH}) ++ set(CMAKE_MODULE_PATH "${FAIRROOTPATH}/share/fairbase/cmake/modules_old" ${CMAKE_MODULE_PATH}) ++ set(CMAKE_MODULE_PATH "${FAIRROOTPATH}/share/fairbase/cmake/modules" ${CMAKE_MODULE_PATH}) + IF(FAIRROOTPATH) + Set(CheckSrcDir "${FAIRROOTPATH}/share/fairbase/cmake/checks") + ELSE(FAIRROOTPATH) +diff --git a/fair/CMakeLists.txt b/fair/CMakeLists.txt +index 266e82e..46246e6 100644 +--- a/fair/CMakeLists.txt ++++ b/fair/CMakeLists.txt +@@ -8,8 +8,8 @@ ${HAL_CORE}/fair + Set(SYSTEM_INCLUDE_DIRECTORIES + ${ROOT_INCLUDE_DIR} + ${BASE_INCLUDE_DIRECTORIES} +- $ENV{SIMPATH}/include +- $ENV{SIMPATH}/include/vmc ++ ${SIMPATH}/include ++ ${SIMPATH}/include/vmc + ) + + Set(LINK_DIRECTORIES diff --git a/external/InstallHal.cmake b/external/InstallHal.cmake index 81aba3e597d2f2f4a9342c44b3817fa95ba822f7..2ba6f2836ca9ebbead6e29b9306d2c92e65de177 100644 --- a/external/InstallHal.cmake +++ b/external/InstallHal.cmake @@ -11,7 +11,7 @@ download_project_if_needed(PROJECT Hal_source GIT_REPOSITORY ${HAL_SRC_URL} GIT_TAG ${HAL_VERSION} SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Hal - # PATCH_COMMAND "patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/Hal.patch" + PATCH_COMMAND "patch -p1 < ${CMAKE_CURRENT_SOURCE_DIR}/Hal.patch" ) If(ProjectUpdated) @@ -41,15 +41,16 @@ ExternalProject_Add(HAL -DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR} -DCMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD} -DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH} - -DROOTSYS=${SIMPATH} - -DGSL_DIR=${GSLPATH} - -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON - -DCMAKE_BUILD_TYPE=RelWithDebInfo - "${EXTRA_ARGS}" + -DROOTSYS=${SIMPATH} + -DSIMPATH=${SIMPATH} + -DFAIRROOTPATH=${FAIRROOTPATH} + -DGSL_DIR=${GSLPATH} + -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON + -DCMAKE_BUILD_TYPE=RelWithDebInfo + "${EXTRA_ARGS}" INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install ) - foreach(HAL_LIB_LOCAL ${HAL_LIB_LIST}) add_library(${HAL_LIB_LOCAL} SHARED IMPORTED GLOBAL) set_target_properties(${HAL_LIB_LOCAL} PROPERTIES