forked from alisw/alibuild
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathaliModules
More file actions
executable file
·57 lines (47 loc) · 1.43 KB
/
aliModules
File metadata and controls
executable file
·57 lines (47 loc) · 1.43 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/bin/bash -e
# Load and test Modulefiles created by recipes.
MODULECVMFS='/cvmfs/alice.cern.ch/x86_64-2.6-gnu-4.1.2/Modules/3.2.10/Scientific/5.x'
MODULECMD=$(which modulecmd 2>/dev/null || true)
[[ "$MODULECMD" == '' ]] && MODULECMD="env LD_LIBRARY_PATH=$MODULECVMFS/lib:\$LD_LIBRARY_PATH $MODULECVMFS/bin/modulecmd"
MODULECMD="$MODULECMD bash"
WORK_DIR=${WORK_DIR:-$(cd $(dirname $0)/..; pwd)/sw}
ARCHITECTURE=${ARCHITECTURE:-slc5}
export MODULEPATH=$WORK_DIR/MODULES/$ARCHITECTURE
rm -rf $MODULEPATH
mkdir -p $MODULEPATH
pushd $MODULEPATH
find $WORK_DIR/$ARCHITECTURE -name modulefiles | while read FILE; do
PKGVER=$(basename $(cd $FILE/../..;pwd))
PKGNAME=$(basename $(cd $FILE/../../..;pwd))
mkdir -p $PKGNAME
cp $FILE/$PKGNAME $PKGNAME/$PKGVER
done
mkdir BASE
cat > BASE/1.0 <<EOF
#%Module1.0
proc ModulesHelp { } {
global version
puts stderr "This module is THE module of the ALICE."
}
set version 1.0
module-whatis "ALICE versions module for the ALICE"
set base_path $WORK_DIR/$ARCHITECTURE
setenv BASEDIR \$base_path
set osname [uname sysname]
set osarchitecture [uname machine]
EOF
popd
echo "==> Available modules"
$MODULECMD avail
if [[ "$*" == '' ]]; then
echo ''
echo "==> Use $0 [module1 [module2...] to load modules."
false
fi
echo "==> Loading $*"
eval $($MODULECMD add $*)
echo "==> Loaded modules"
$MODULECMD list
echo "==> Type exit to exit the environment"
export PS1="[Modules: $*] \w \$> "
exec bash --norc -i