Skip to content

Commit ef27169

Browse files
authored
Merge pull request #74 from boegel/autotools_EESSI_2025.06
only filter Autotools & co (build) dependencies for EESSI 2023.06
2 parents 97a004d + 8e88eb5 commit ef27169

File tree

2 files changed

+36
-30
lines changed

2 files changed

+36
-30
lines changed

EESSI-extend-easybuild.eb

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,16 @@ description = """
4545
toolchain = SYSTEM
4646

4747
# All the dependencies we filter in EESSI
48-
local_deps_to_filter = "Autoconf,Automake,Autotools,binutils,bzip2,DBus,flex,gettext,gperf,help2man,intltool,libreadline,libtool,M4,makeinfo,ncurses,ParMETIS,util-linux,XZ,zlib"
48+
local_deps_to_filter = "binutils,bzip2,DBus,flex,gettext,gperf,help2man,intltool,libreadline,makeinfo,ncurses,ParMETIS,util-linux,XZ,zlib"
49+
50+
# filter extra dependencies based on CPU family
4951
local_arch_specific_deps_to_filter = {'aarch64': ',Yasm', 'riscv64': ',Yasm', 'x86_64': ''}
5052
local_deps_to_filter += local_arch_specific_deps_to_filter[ARCH]
5153

54+
# only filter Autotools & co for EESSI 2023.06
55+
if version == '2023.06':
56+
local_deps_to_filter += ",Autoconf,Automake,Autotools,libtool,M4"
57+
5258
# Set the universal EasyBuild variables
5359
modextravars = {
5460
'EASYBUILD_FILTER_DEPS': local_deps_to_filter,

EESSI-install-software.sh

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -382,44 +382,44 @@ else
382382
# make sure that easystack file being picked up is for EESSI version that we're building for...
383383
echo "${easystack_file}" | grep -q "^easystacks/$(basename ${EESSI_CVMFS_REPO})/${EESSI_VERSION}/"
384384
if [ $? -ne 0 ]; then
385-
fatal_error "Easystack file ${easystack_file} is not intended for EESSI version ${EESSI_VERSION}, giving up!"
386-
fi
385+
echo_yellow "Easystack file ${easystack_file} is not intended for EESSI version ${EESSI_VERSION}, skipping it..."
386+
else
387+
echo -e "Processing easystack file ${easystack_file}...\n\n"
388+
389+
# determine version of EasyBuild module to load based on EasyBuild version included in name of easystack file
390+
eb_version=$(echo ${easystack_file} | sed 's/.*eb-\([0-9.]*\).*.yml/\1/g')
387391

388-
echo -e "Processing easystack file ${easystack_file}...\n\n"
392+
# load EasyBuild module (will be installed if it's not available yet)
393+
source ${TOPDIR}/load_easybuild_module.sh ${eb_version}
389394

390-
# determine version of EasyBuild module to load based on EasyBuild version included in name of easystack file
391-
eb_version=$(echo ${easystack_file} | sed 's/.*eb-\([0-9.]*\).*.yml/\1/g')
395+
${EB} --show-config
392396

393-
# load EasyBuild module (will be installed if it's not available yet)
394-
source ${TOPDIR}/load_easybuild_module.sh ${eb_version}
397+
echo_green "All set, let's start installing some software with EasyBuild v${eb_version} in ${EASYBUILD_INSTALLPATH}..."
395398

396-
${EB} --show-config
399+
if [ -f ${easystack_file} ]; then
400+
echo_green "Feeding easystack file ${easystack_file} to EasyBuild..."
397401

398-
echo_green "All set, let's start installing some software with EasyBuild v${eb_version} in ${EASYBUILD_INSTALLPATH}..."
402+
if [[ ${easystack_file} == *"/rebuilds/"* ]]; then
403+
${EB} --easystack ${easystack_file} --rebuild
404+
else
405+
${EB} --easystack ${easystack_file} --robot
406+
fi
407+
ec=$?
399408

400-
if [ -f ${easystack_file} ]; then
401-
echo_green "Feeding easystack file ${easystack_file} to EasyBuild..."
409+
# copy EasyBuild log file if EasyBuild exited with an error
410+
if [ ${ec} -ne 0 ]; then
411+
eb_last_log=$(unset EB_VERBOSE; eb --last-log)
412+
# copy to current working directory
413+
cp -a ${eb_last_log} .
414+
echo "Last EasyBuild log file copied from ${eb_last_log} to ${PWD}"
415+
# copy to build logs dir (with context added)
416+
copy_build_log "${eb_last_log}" "${build_logs_dir}"
417+
fi
402418

403-
if [[ ${easystack_file} == *"/rebuilds/"* ]]; then
404-
${EB} --easystack ${easystack_file} --rebuild
419+
$TOPDIR/check_missing_installations.sh ${easystack_file} ${pr_diff}
405420
else
406-
${EB} --easystack ${easystack_file} --robot
421+
fatal_error "Easystack file ${easystack_file} not found!"
407422
fi
408-
ec=$?
409-
410-
# copy EasyBuild log file if EasyBuild exited with an error
411-
if [ ${ec} -ne 0 ]; then
412-
eb_last_log=$(unset EB_VERBOSE; eb --last-log)
413-
# copy to current working directory
414-
cp -a ${eb_last_log} .
415-
echo "Last EasyBuild log file copied from ${eb_last_log} to ${PWD}"
416-
# copy to build logs dir (with context added)
417-
copy_build_log "${eb_last_log}" "${build_logs_dir}"
418-
fi
419-
420-
$TOPDIR/check_missing_installations.sh ${easystack_file} ${pr_diff}
421-
else
422-
fatal_error "Easystack file ${easystack_file} not found!"
423423
fi
424424

425425
done

0 commit comments

Comments
 (0)