Skip to content

Commit

Permalink
Merge pull request #329 from trz42/nessi-2023.06-wsclean-dp3-2023b
Browse files Browse the repository at this point in the history
{2023.06}[foss/2023b] DP3-6.0, WSClean 3.4 and deps
  • Loading branch information
poksumdo authored Apr 26, 2024
2 parents 21de1e9 + 4dfbfb4 commit 3b52dd5
Show file tree
Hide file tree
Showing 4 changed files with 41 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,11 @@ easyconfigs:
- NSS-3.94-GCCcore-13.2.0.eb
- nodejs-20.9.0-GCCcore-13.2.0.eb
- libGLU-9.0.3-GCCcore-13.2.0.eb
- AOFlagger-3.4.0-foss-2023b.eb
- arpack-ng-3.9.0-foss-2023b.eb
- Armadillo-12.8.0-foss-2023b.eb
- casacore-3.5.0-foss-2023b.eb
- IDG-1.2.0-foss-2023b.eb
- EveryBeam-0.5.2-foss-2023b.eb
- DP3-6.0-foss-2023b.eb
- WSClean-3.4-foss-2023b.eb
31 changes: 29 additions & 2 deletions eb_hooks.py
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,32 @@ def post_prepare_hook(self, *args, **kwargs):
POST_PREPARE_HOOKS[self.name](self, *args, **kwargs)


def parse_hook_casacore_disable_vectorize(ec, eprefix):
"""
Disable 'vectorize' toolchain option for casacore 3.5.0 on aarch64/neoverse_v1
Compiling casacore 3.5.0 with GCC 13.2.0 (foss-2023b) gives an error when building for aarch64/neoverse_v1.
See also, https://github.com/EESSI/software-layer/pull/479
"""
if ec.name == 'casacore':
tcname, tcversion = ec['toolchain']['name'], ec['toolchain']['version']
if (
LooseVersion(ec.version) == LooseVersion('3.5.0') and
tcname == 'foss' and tcversion == '2023b'
):
cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR')
if cpu_target == CPU_TARGET_NEOVERSE_V1:
if not hasattr(ec, 'toolchainopts'):
ec['toolchainopts'] = {}
ec['toolchainopts']['vectorize'] = False
print_msg("Changed toochainopts for %s: %s", ec.name, ec['toolchainopts'])
else:
print_msg("Not changing option vectorize for %s on non-neoverse_v1", ec.name)
else:
print_msg("Not changing option vectorize for %s %s %s", ec.name, ec.version, ec.toolchain)
else:
raise EasyBuildError("casacore-specific hook triggered for non-casacore easyconfig?!")


def parse_hook_cgal_toolchainopts_precise(ec, eprefix):
"""Enable 'precise' rather than 'strict' toolchain option for CGAL on POWER."""
if ec.name == 'CGAL':
Expand Down Expand Up @@ -423,7 +449,7 @@ def pre_configure_hook_wrf_aarch64(self, *args, **kwargs):
if LooseVersion(self.version) <= LooseVersion('3.9.0'):
self.cfg.update('preconfigopts', "sed -i 's/%s/%s/g' arch/configure_new.defaults && " % (pattern, repl))
print_msg("Using custom preconfigopts for %s: %s", self.name, self.cfg['preconfigopts'])

if LooseVersion('4.0.0') <= LooseVersion(self.version) <= LooseVersion('4.2.1'):
self.cfg.update('preconfigopts', "sed -i 's/%s/%s/g' arch/configure.defaults && " % (pattern, repl))
print_msg("Using custom preconfigopts for %s: %s", self.name, self.cfg['preconfigopts'])
Expand Down Expand Up @@ -510,7 +536,7 @@ def pre_test_hook_ignore_failing_tests_netCDF(self, *args, **kwargs):
"""
cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR')
if self.name == 'netCDF' and self.version == '4.9.2' and cpu_target == CPU_TARGET_NEOVERSE_V1:
self.cfg['testopts'] = "|| echo ignoring failing tests"
self.cfg['testopts'] = "|| echo ignoring failing tests"

def pre_test_hook_increase_max_failed_tests_arm_PyTorch(self, *args, **kwargs):
"""
Expand Down Expand Up @@ -675,6 +701,7 @@ def inject_gpu_property(ec):


PARSE_HOOKS = {
'casacore': parse_hook_casacore_disable_vectorize,
'CGAL': parse_hook_cgal_toolchainopts_precise,
'fontconfig': parse_hook_fontconfig_add_fonts,
'GPAW': parse_hook_gpaw_harcoded_path,
Expand Down
1 change: 1 addition & 0 deletions eessi_container.sh
Original file line number Diff line number Diff line change
Expand Up @@ -193,6 +193,7 @@ while [[ $# -gt 0 ]]; do
-x|--http-proxy)
HTTP_PROXY="$2"
export http_proxy=${HTTP_PROXY}
export ftp_proxy=${HTTP_PROXY}
shift 2
;;
-y|--https-proxy)
Expand Down
3 changes: 3 additions & 0 deletions run_in_compat_layer_env.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,9 @@ fi
if [ ! -z ${https_proxy} ]; then
INPUT="export https_proxy=${https_proxy}; ${INPUT}"
fi
if [ ! -z ${ftp_proxy} ]; then
INPUT="export ftp_proxy=${ftp_proxy}; ${INPUT}"
fi

echo "Running '${INPUT}' in EESSI (${EESSI_CVMFS_REPO}) ${EESSI_VERSION} compatibility layer environment..."
${EESSI_COMPAT_LAYER_DIR}/startprefix <<< "${INPUT}"

0 comments on commit 3b52dd5

Please sign in to comment.