diff --git a/Pmodules/libpbuild.bash b/Pmodules/libpbuild.bash index f589c59..41ae46b 100644 --- a/Pmodules/libpbuild.bash +++ b/Pmodules/libpbuild.bash @@ -932,7 +932,7 @@ _build_module() { "module is in group '${GROUP}' but no HDF5 module loaded!" } - modulefile_dir="${ol_modulefiles_root}/${GROUP}/${PMODULES_MODULEFILES_DIR}/" + modulefile_dir="${ol_modulefiles_root}/${GROUP}/${__MODULEFILES_DIR__}/" PREFIX="${ol_install_root}/${GROUP}/${module_name}/${module_version}/" case "${GROUP}" in Compiler ) diff --git a/Pmodules/libpmodules.bash.in b/Pmodules/libpmodules.bash.in index 961aa55..3b8d775 100644 --- a/Pmodules/libpmodules.bash.in +++ b/Pmodules/libpmodules.bash.in @@ -1,6 +1,6 @@ #!/bin/bash -declare PMODULES_MODULEFILES_DIR='modulefiles' +declare -r __MODULEFILES_DIR__='modulefiles' declare PMODULES_VERSION='@PMODULES_VERSION@' declare -A GroupDepths=(['none']=0) @@ -48,14 +48,14 @@ scan_groups () { for ol in "$@"; do local modulefiles_root="${OverlayInfo[${ol}:modulefiles_root]}" local dir - for dir in "${modulefiles_root}"/*/"${PMODULES_MODULEFILES_DIR}"; do + for dir in "${modulefiles_root}"/*/"${__MODULEFILES_DIR__}"; do local group="${dir%/*}" group="${group##*/}" if [[ ! -v GroupDepths[${group}] ]]; then compute_group_depth depth "${dir}" GroupDepths[$group]=${depth} fi - Dir2OverlayMap[${dir%/"${PMODULES_MODULEFILES_DIR}"*}]="${ol}" + Dir2OverlayMap[${dir%/"${__MODULEFILES_DIR__}"*}]="${ol}" done done GroupDepths['none']=0 diff --git a/Pmodules/modulecmd.bash.in b/Pmodules/modulecmd.bash.in index f09259a..b499854 100644 --- a/Pmodules/modulecmd.bash.in +++ b/Pmodules/modulecmd.bash.in @@ -339,7 +339,7 @@ get_module_config(){ ref_cfg['relstage']='unstable' ref_cfg['systems']='' ref_cfg['blocklist']='' - if [[ ! -v Dir2OverlayMap[${dir%/"${PMODULES_MODULEFILES_DIR}"*}] ]]; then + if [[ ! -v Dir2OverlayMap[${dir%/"${__MODULEFILES_DIR__}"*}] ]]; then # this module is not in an overlay ref_cfg['relstage']='stable' return @@ -439,7 +439,7 @@ find_overlay () { local -n fo_group="$2" local path="${3//+(\/)/\/}" # replace multpile '/' with one path="${path/%\/}" # remove trailing slash if exist - path="${path%/"${PMODULES_MODULEFILES_DIR}"*}" + path="${path%/"${__MODULEFILES_DIR__}"*}" # return if not in an overlay [[ -v Dir2OverlayMap[${path}] ]] || return 1 @@ -735,7 +735,7 @@ subcommand_load() { is_group () { find_overlay_with_group() { local -n _ol="$1" - local -r group="$2/${PMODULES_MODULEFILES_DIR}" + local -r group="$2/${__MODULEFILES_DIR__}" local ol for ol in "${UsedOverlays[@]}"; do local install_root="${OverlayInfo[${ol}:install_root]}" @@ -753,7 +753,7 @@ subcommand_load() { local ol='' find_overlay_with_group ol "${group}" || return 1 - local moduledir="${OverlayInfo[${ol}:modulefiles_root]}/${group}/${PMODULES_MODULEFILES_DIR}" + local moduledir="${OverlayInfo[${ol}:modulefiles_root]}/${group}/${__MODULEFILES_DIR__}" local -i depth compute_group_depth depth "${moduledir}" || return 1 GroupDepths[${group}]=${depth} @@ -844,7 +844,7 @@ subcommand_load() { local -i depth=${GroupDepths[${group}]} (( depth != 0 )) && \ die_illegal_group "${group}" - group+="/${PMODULES_MODULEFILES_DIR}" + group+="/${__MODULEFILES_DIR__}" for overlay in "${UsedOverlays[@]}"; do local modulefiles_root="${OverlayInfo[${overlay}:modulefiles_root]}" modulepath=( "${modulefiles_root}/${group}" "${modulepath[@]}" ) @@ -1764,10 +1764,10 @@ subcommand_use() { for group in ${UsedGroups//:/ }; do # is this group in the to be added overlay? local dir="${OverlayInfo[${ol_name}:modulefiles_root]}/" - dir+="${group}/${PMODULES_MODULEFILES_DIR}" + dir+="${group}/${__MODULEFILES_DIR__}" [[ -d "${dir}" ]] || continue # no - dir="/${group}/${PMODULES_MODULEFILES_DIR}" + dir="/${group}/${__MODULEFILES_DIR__}" local -a dirs=() for ol in "${UsedOverlays[@]}"; do dirs+=( "${OverlayInfo[${ol}:modulefiles_root]}${dir}" ) @@ -1778,7 +1778,7 @@ subcommand_use() { scan_groups "${ol_name}" for group in ${UsedGroups//:/ }; do local dir="${OverlayInfo[${ol_name}:modulefiles_root]}/" - dir+="${group}/${PMODULES_MODULEFILES_DIR}" + dir+="${group}/${__MODULEFILES_DIR__}" if [[ -d "${dir}" ]]; then std::prepend_path MODULEPATH "${dir}" fi @@ -1820,7 +1820,7 @@ subcommand_use() { local -i n="${#UsedOverlays[@]}" for ((i=n-1; i>=0; i--)); do ol_name="${UsedOverlays[i]}" - local dir="${OverlayInfo[${ol_name}:modulefiles_root]}/$1/${PMODULES_MODULEFILES_DIR}" + local dir="${OverlayInfo[${ol_name}:modulefiles_root]}/$1/${__MODULEFILES_DIR__}" [[ -d "${dir}" ]] || continue std::prepend_path MODULEPATH "${dir}" [[ "${OverlayInfo[${ol_name}:type]}" == "${ol_replacing}" ]] && break @@ -1956,10 +1956,10 @@ subcommand_unuse() { local modulefiles_root=${OverlayInfo[${ol_name}:modulefiles_root]} for group in ${UsedGroups//:/ }; do # is this group in the to be removed overlay? - local dir="${modulefiles_root}/${group}/${PMODULES_MODULEFILES_DIR}" + local dir="${modulefiles_root}/${group}/${__MODULEFILES_DIR__}" [[ -d "${dir}" ]] || continue # no - dir="/${group}/${PMODULES_MODULEFILES_DIR}" + dir="/${group}/${__MODULEFILES_DIR__}" std::prepend_path MODULEPATH "${UsedOverlays[@]/%/${dir}}" done fi @@ -2031,7 +2031,7 @@ subcommand_unuse() { local overlay for overlay in "${UsedOverlays[@]}"; do local dir="${OverlayInfo[${overlay}:modulefiles_root]}" - dir+="/${arg}/${PMODULES_MODULEFILES_DIR}" + dir+="/${arg}/${__MODULEFILES_DIR__}" std::remove_path MODULEPATH "${dir}" done } diff --git a/Pmodules/modulecmd.tcl.in b/Pmodules/modulecmd.tcl.in index c56532a..3acf611 100755 --- a/Pmodules/modulecmd.tcl.in +++ b/Pmodules/modulecmd.tcl.in @@ -296,13 +296,6 @@ proc _pmodules_setenv { PREFIX name version } { # # intialize global vars -# Modulefile is something like -# -# ${PMODULES_ROOT}/group/${PMODULES_MODULEFILES_DIR}/name/version -# or -# ${PMODULES_ROOT}/group/${PMODULES_MODULEFILES_DIR}/X1/Y1/name/version -# or -# ${PMODULES_ROOT}/group/${PMODULES_MODULEFILES_DIR}/X1/Y1//X2/Y2/name/version # proc _init_global_vars { prefixVN } { global group @@ -313,7 +306,7 @@ proc _init_global_vars { prefixVN } { reportDebug "$::ModulesCurrentModulefile" set ::PmodulesRoot $::env(PMODULES_ROOT) - set ::PmodulesModulfilesDir $::env(PMODULES_MODULEFILES_DIR) + set ::PmodulesModulfilesDir "modulefiles" set modulefile [file split $::ModulesCurrentModulefile] set pmodules_root [file split $::PmodulesRoot] set pmodules_root_num_dirs [llength $pmodules_root]