Use CMAKE_TOOLCHAIN_FILE, various cmake changes
This MR moves to using CMAKE_TOOLCHAIN_FILE
and removes the umesimd submodule. There are several implications and changes that have come on top of those two.
- The build with CVMFS requires now lbenv and CMAKE_TOOLCHAIN_FILE:
source /cvmfs/lhcb.cern.ch/lib/LbEnv
export CMAKE_TOOLCHAIN_FILE=/cvmfs/lhcb.cern.ch/lib/lhcb/lcg-toolchains/LCG_101/x86_64-centos7-clang12-opt.cmake
- Running Allen STANDALONE with CVMFS now requires using the generated wrapper:
./toolchain/wrapper ./Allen --sequence hlt1_pp_validation
- A local standalone build without CVMFS will require specifying the env variable
UMESIMD_ROOT_DIR
to be able to find umesimd properly:
git clone https://github.com/edanor/umesimd.git <some_dir>/umesimd
export UMESIMD_ROOT_DIR=<some_dir>
-
Findumesimd.cmake
has been added. Submodules are no longer used. - An issue has been uncovered when using
CMAKE_TOOLCHAIN_FILE
by which boost iostreams was incorrectly not marked as a requirement for targetHostCommon
. It has been fixed. - Allen CI tests now set
CMAKE_TOOLCHAIN_FILE
prior to building. -
HIPCC_OPTIONS
is now passed thegcc-toolchain
from either variableGCC_TOOLCHAIN_ROOT
(thanks @clemenci ) or by invoking${CMAKE_CXX_COMPILER} -print-libgcc-file-name
as a last resource. This fix also makes it compatible with ROCm 5. - This MR moves to using ROCm 5, which has been recently installed in CVMFS (https://its.cern.ch/jira/browse/LBCORE-2051, thanks @bcouturi !).
- HIP build is now set to export the origin folder
./
withCMAKE_EXE_LINKER_FLAGS
(RPATH
options didn't work). -
CMAKE_CUDA_FLAGS
is now passed-ccbin=${CXX_COMPILER_DIR}
, where the compiler dir is obtained by stripping the executable filename from theCMAKE_CXX_COMPILER
variable. - Given that
CMAKE_TOOLCHAIN_FILE
sets an architecture (passed as-march
), the Allen standalone target detection is only executed if no-march
is already existing. - Allen CI is compiled with architecture
x86_64_v3
by default. - Allen CI has been properly adjusted to use
./toolchain/wrapper
on every Allen call. -
setupviews
are not used anymore as of this MR. - The docs have been accordingly updated.
- An additional CI job was being triggered with every commit of every branch. That has been corrected with this MR.
Closes #287 (closed), #307 (closed), #308 (closed), #309 (closed)
Edited by Daniel Hugo Campora Perez