Local data package lookup fails with new CMake
git-lb-clone-pkg PRConfig
(which lb-stack-setup uses) creates some version directories such as v1r999
and v999r999
with only some xenv inside. The finalization of the LHCb configuration then fails to find a python subdirectory and PYTHONPATH
is missing the package.
The nightlies work because they do something different to checkout data packages and one has the usual structure (/workspace/build/DBASE/PRConfig/v999r999/python
exists).
$ grep -i prconfig LHCb/build.x86_64_v3-centos7-gcc10-opt/lhcbenv.sh
export PRCONFIGROOT=${PRCONFIGROOT:-/home/rmatev/stackx/DBASE/PRConfig/v999r999}
$ grep -i prconfig LHCb/build.x86_64_v3-centos7-gcc10-opt/CMakeCache.txt
//Base directory of PRConfig
PRConfig_ROOT_DIR:PATH=/home/rmatev/stackx/DBASE/PRConfig/v999r999
//Version of PRConfig found
PRConfig_VERSION:STRING=999.999
//Details about finding PRConfig
FIND_PACKAGE_MESSAGE_DETAILS_PRConfig:INTERNAL=[/home/rmatev/stackx/DBASE/PRConfig/v999r999][v999.999()]
PRConfig_FOUND:INTERNAL=TRUE
Workaround
Replace the vXrY
directories with symlinks and purge/configure again. For example, for PRConfig
one should do
$ cd DBASE/PRConfig
$ rm -rf v1r999 v999r999
$ ln -s . v1r999
$ ln -s . v999r999