Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
Pmodules
buildblocks
Commits
51792a80
Commit
51792a80
authored
Feb 27, 2015
by
gsell
Browse files
major reorganization; updates to versions; fixes
parent
67e3d5c7
Changes
65
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
228 additions
and
50 deletions
+228
-50
config/versions.conf
config/versions.conf
+5
-5
lib/libem.bash
lib/libem.bash
+15
-7
scripts/Bootstrap/bash.build
scripts/Bootstrap/bash.build
+13
-1
scripts/Bootstrap/bash.build
scripts/Bootstrap/bash.build
+13
-1
scripts/Bootstrap/dialog.build
scripts/Bootstrap/dialog.build
+13
-1
scripts/Bootstrap/dialog.build
scripts/Bootstrap/dialog.build
+13
-1
scripts/Bootstrap/getopt.build
scripts/Bootstrap/getopt.build
+42
-1
scripts/Bootstrap/getopt.build
scripts/Bootstrap/getopt.build
+42
-1
scripts/Bootstrap/gettext.build
scripts/Bootstrap/gettext.build
+24
-1
scripts/Bootstrap/gettext.build
scripts/Bootstrap/gettext.build
+24
-1
scripts/Bootstrap/modulecmd.bash
scripts/Bootstrap/modulecmd.bash
+15
-21
scripts/Compiler/H5root/build
scripts/Compiler/H5root/build
+1
-1
scripts/Compiler/OpenBLAS/build
scripts/Compiler/OpenBLAS/build
+1
-1
scripts/Compiler/OpenBLAS_OMP/build
scripts/Compiler/OpenBLAS_OMP/build
+1
-1
scripts/Compiler/SuperLU/build
scripts/Compiler/SuperLU/build
+1
-1
scripts/Compiler/UMFPACK/build
scripts/Compiler/UMFPACK/build
+1
-1
scripts/Compiler/boost/build
scripts/Compiler/boost/build
+1
-1
scripts/Compiler/gsl/build
scripts/Compiler/gsl/build
+1
-1
scripts/Compiler/hdf5_serial/build
scripts/Compiler/hdf5_serial/build
+1
-1
scripts/Compiler/openmpi/build
scripts/Compiler/openmpi/build
+1
-1
No files found.
config/versions.conf
View file @
51792a80
autoconf
2
.
69
automake
1
.
14
bash
4
.
3
.
30
boost
1
.
5
5
.
0
boost
1
.
5
7
.
0
BoxLib
2014
-
02
-
28
cmake
2
.
8
.
12
.
2
dialog
1
.
2
.
1
...
...
@@ -17,8 +17,8 @@ fsstress 1.0.0
h5hut_serial
1
.
99
.
13
H5hut
1
.
99
.
13
H5root
1
.
2
.
0
hdf5_serial
1
.
8
.
1
2
hdf5
1
.
8
.
1
2
hdf5_serial
1
.
8
.
1
4
hdf5
1
.
8
.
1
4
ippl
1
.
1
.
3
libtool
2
.
4
.
2
libungif
4
.
1
.
4
...
...
@@ -36,11 +36,11 @@ OpenBLAS_OMP 0.2.9
parmetis
3
.
2
.
0
patchelf
0
.
8
.
1
Python
3
.
4
.
0
root
5
.
34
.
19
root
5
.
34
.
26
SuperLU
4
.
3
SuperLU_DIST
3
.
3
Tcl
8
.
6
.
3
tiff
4
.
0
.
3
trilinos
11
.
1
0
.
2
trilinos
11
.
1
2
.
1
UMFPACK
5
.
6
.
2
vtk
5
.
10
.
1
lib/libem.bash
View file @
51792a80
...
...
@@ -25,6 +25,8 @@ declare -xr BUILD_TMPDIR="${BUILD_BASEDIR}/tmp"
declare
-xr
BUILD_DOWNLOADSDIR
=
"
${
BUILD_BASEDIR
}
/Downloads"
declare
-xr
BUILD_VERSIONSFILE
=
"
${
BUILD_CONFIGDIR
}
/versions.conf"
declare
-xr
PSI_TEMPLATES_DIR
=
'templates'
if
[[
-z
"
${
BUILD_CONFIGDIR
}
/families.d/"
*
.conf
]]
;
then
die 1
"Default family configuration not set in
${
BUILD_CONFIGDIR
}
/families.d"
fi
...
...
@@ -151,14 +153,14 @@ fi
# while bootstraping the module command is not yet available
if
[[
${
bootstrap
}
==
no
]]
;
then
source
"
${
PSI_PREFIX
}
/
${
PSI_CONFIG_DIR
}
/profile.bash"
source
"
${
PSI_PREFIX
}
/
${
PSI_CONFIG_DIR
}
/profile.bash"
MODULECMD
=
"
${
PMODULES_HOME
}
/bin/modulecmd"
[[
-x
${
MODULECMD
}
]]
||
die 1
"
${
MODULECMD
}
: no such executable"
module use unstable
module purge
fi
P
=
$(
basename
$0
)
P
=
${
P
%.*
}
P
=
$(
basename
$(
dirname
"
${
BUILDSCRIPT
}
"
))
_P
=
$(
echo
$P
|
tr
[
:lower:]
[
:upper:]
)
_P
=
${
_P
//-/_
}
_V
=
${
_P
}
_VERSION
...
...
@@ -193,7 +195,7 @@ function em.add_to_family() {
if
[[
-z
${
1
}
]]
;
then
die 42
"
${
FUNCNAME
}
: Missing family argument."
fi
if
[[
!
-d
${
PSI_PREFIX
}
/
${
PSI_
CONFIG_DIR
}
/
${
1
}
]]
;
then
if
[[
!
-d
${
PSI_PREFIX
}
/
${
PSI_
MODULES_ROOT
}
/
${
1
}
]]
;
then
die 43
"
${
1
}
: family does not exist."
fi
MODULE_FAMILY
=
$1
...
...
@@ -220,8 +222,14 @@ function module_is_available() {
}
function
_load_build_dependencies
()
{
# :FIXME: merge this two loops, load only modules which are required
# this merge is not as easy as it looks like at a first glance!
for
m
in
"
${
with_modules
[@]
}
"
;
do
module load
"
${
m
}
"
if
module_is_available
"
$m
"
;
then
module load
"
${
m
}
"
else
die 44
"
$m
: module not available!"
fi
done
for
m
in
"
${
MODULE_BUILD_DEPENDENCIES
[@]
}
"
;
do
[[
-z
$m
]]
&&
continue
...
...
@@ -274,7 +282,7 @@ function _load_build_dependencies() {
esac
shift
done
"
${
BUILD_SCRIPTSDIR
}
/
${
m
/\/*
}
.
build"
${
args
[@]
}
"
${
BUILD_SCRIPTSDIR
}
"
/
*
/
"
${
m
/\/*
}
/
build"
${
args
[@]
}
if
[[
-z
$(
module avail
"
$m
"
2>&1
)
]]
;
then
die 1
"
$m
: oops: build failed..."
fi
...
...
@@ -618,7 +626,7 @@ function _set_link() {
local
x
IFS
=
'/'
x
=(
${
dir_name
/
${
PSI_PREFIX
}
\/
${
PSI_MODULES_ROOT
}
\/
}
)
local
n
=
${#
x
[@]
}
local
-r
_target
=
"../"
$(
eval printf
"../%.s"
{
1..
${
n
}
}
)
${
PSI_
CONFIG
_DIR
##*/
}
/
"
${
MODULE_FAMILY
}
/
${
P
}
/modulefile"
local
-r
_target
=
"../"
$(
eval printf
"../%.s"
{
1..
${
n
}
}
)
${
PSI_
TEMPLATES
_DIR
##*/
}
/
"
${
MODULE_FAMILY
}
/
${
P
}
/modulefile"
ln
-fs
"
${
_target
}
"
"
${
MODULE_NAME
##*/
}
"
)
fi
...
...
scripts/Bootstrap/bash.build
deleted
120000 → 0
View file @
67e3d5c7
../System/bash.build
\ No newline at end of file
scripts/Bootstrap/bash.build
0 → 100755
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
function
em.configure
()
{
"
${
MODULE_SRCDIR
}
"
/configure
\
--prefix
=
"
${
PREFIX
}
"
\
||
exit
1
}
em.add_to_family
'System'
em.set_build_dependencies
"
${
COMPILER
}
"
em.make_all
scripts/Bootstrap/dialog.build
deleted
120000 → 0
View file @
67e3d5c7
../Tools/dialog.build
\ No newline at end of file
scripts/Bootstrap/dialog.build
0 → 100755
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
function
em.configure
()
{
"
${
MODULE_SRCDIR
}
"
/configure
\
--prefix
=
"
${
PREFIX
}
"
\
||
exit
1
}
em.add_to_family
'Tools'
em.set_build_dependencies
"
${
COMPILER
}
"
em.make_all
scripts/Bootstrap/getopt.build
deleted
120000 → 0
View file @
67e3d5c7
../System/getopt.build
\ No newline at end of file
scripts/Bootstrap/getopt.build
0 → 100755
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
function
em.configure
()
{
:
}
function
em.build
()
{
case
${
OS
}
in
Linux
)
declare
-x
LDFLAGS
=
"-lintl -liconv"
;;
Darwin
)
declare
-x
LDFLAGS
=
"-lintl -liconv -framework CoreFoundation"
;;
esac
cd
"
${
MODULE_SRCDIR
}
"
make
-e
}
function
em.install
()
{
cd
"
${
MODULE_SRCDIR
}
"
declare
-x
DESTDIR
=
"
${
PREFIX
}
"
declare
-x
prefix
=
''
make
-e
install
}
function
em.cleanup_build
()
{
cd
"
${
MODULE_SRCDIR
}
"
make
-e
realclean
}
em.add_to_family
'Tools'
em.make_all
# Local Variables:
# mode: sh
# sh-basic-offset: 8
# tab-width: 8
# End:
scripts/Bootstrap/gettext.build
deleted
120000 → 0
View file @
67e3d5c7
../Tools/gettext.build
\ No newline at end of file
scripts/Bootstrap/gettext.build
0 → 100755
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
function
em.configure
()
{
"
${
MODULE_SRCDIR
}
"
/configure
\
--prefix
=
"
${
PREFIX
}
"
\
--disable-java
\
--disable-threads
\
--disable-shared
\
--enable-relocatable
\
--disable-openmp
\
--disable-acl
\
--disable-curses
\
--with-included-gettext
\
--without-libiconv-prefix
\
--without-libintl-prefix
\
--with-included-libxml
\
||
exit
1
}
em.add_to_family
'Tools'
em.set_build_dependencies
"
${
COMPILER
}
"
em.make_all
scripts/Bootstrap/modulecmd.bash
View file @
51792a80
...
...
@@ -667,6 +667,13 @@ subcommand_avail() {
done
}
get_families
()
{
{
cd
"
${
modulepath_root
}
"
echo
*
}
}
#
# $1: family name (not path!)
compute_family_depth
()
{
...
...
@@ -690,18 +697,12 @@ subcommand_use() {
echo
-e
"
\t
${
f
}
"
1>&2
done
echo
-e
"
\n
Families you may use in addition:"
1>&2
local
available_families
=
':'
{
cd
"
${
PSI_PREFIX
}
/
${
PSI_MODULES_ROOT
}
"
for
f
in
*
;
do
local
tmp
=
$(
find
$f
-d
-type
f
-o
-type
l |
head
-1
)
local
-a
tmp2
=(
${
tmp
//\//
}
)
local
-i
depth
=
${#
tmp2
[@]
}
-3
if
!
is_used_family
$f
&&
((
depth
==
0
))
;
then
echo
-e
"
\t
${
f
}
"
1>&2
fi
done
}
for
family
in
$(
get_families
)
;
do
local
-i
depth
=
$(
compute_family_depth
"
${
family
}
"
)
if
!
is_used_family
$f
&&
((
depth
==
0
))
;
then
echo
-e
"
\t
${
f
}
"
1>&2
fi
done
echo
-e
"
\n
Used releases:"
1>&2
for
r
in
${
used_releases
//
:/
}
;
do
...
...
@@ -831,14 +832,8 @@ subcommand_search() {
local
-r
tmpfile
=
$(
mktemp
/tmp/
$(
basename
$0
)
.XXXXXX
)
||
exit
1
local
family
# loop over all families
push
-n
.
cd
"
${
PSI_PREFIX
}
/
${
PSI_MODULES_ROOT
}
"
for
family
in
*
;
do
local
tmp
=
$(
find
"
${
family
}
"
-d
-type
f
-o
-type
l 2>&1 |
head
-1
)
local
-a
tmp2
=(
${
tmp
//\//
}
)
echo
${
tmp2
[0]
}
local
-i
depth
=
${
tmp2
[@]
}
let
depth-
=
3
for
family
in
$(
get_families
)
;
do
local
-i
depth
=
$(
compute_family_depth
${
family
}
)
# get all potential directories of family $f with module-files
local
mpaths
=(
$(
find
\
"
${
modulepath_root
}
/
${
family
}
"
\
...
...
@@ -870,7 +865,6 @@ subcommand_search() {
done
done
done
popd
sort
-k
1,1
-k
4,4
-k
5,5
"
${
tmpfile
}
"
|
awk
"
${
with_modules
}
"
1>&2
rm
-f
"
${
tmpfile
}
"
...
...
scripts/Compiler/H5root
.
build
→
scripts/Compiler/H5root
/
build
View file @
51792a80
#!/bin/bash
source
$(
dirname
$0
)
/../../lib/libem.bash
source
$
(
dirname
$
0
)
/
..
/
..
/
..
/
lib
/
libem
.
bash
function
em
.
pre_configure
()
{
.
/
autogen
.
sh
...
...
scripts/Compiler/OpenBLAS
.
build
→
scripts/Compiler/OpenBLAS
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
source
"$(dirname $0)/../../
../
lib/libem.bash"
function
em
.
configure
()
{
cat
<<
EOF
>
"${MODULE_SRCDIR}/make.inc"
...
...
scripts/Compiler/OpenBLAS_OMP
.
build
→
scripts/Compiler/OpenBLAS_OMP
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
source
"$(dirname $0)/../../
../
lib/libem.bash"
function
em
.
configure
()
{
cat
<<
EOF
>
"${MODULE_SRCDIR}/make.inc"
...
...
scripts/Compiler/SuperLU
.
build
→
scripts/Compiler/SuperLU
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
source
"$(dirname $0)/../../
../
lib/libem.bash"
function
em
.
configure
()
{
cat
<<
EOF
>
"${MODULE_SRCDIR}/make.inc"
...
...
scripts/Compiler/UMFPACK
.
build
→
scripts/Compiler/UMFPACK
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../../lib/libem.bash"
source
"$(dirname $0)/../../
../
lib/libem.bash"
function
em
.
configure
()
{
cat
<<
EOF
>
"${MODULE_SRCDIR}/SuiteSparse_config/SuiteSparse_config.mk"
...
...
scripts/
System
/boost
.
build
→
scripts/
Compiler
/boost
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../lib/libem.bash"
source
"$(dirname $0)/../
../../
lib/libem.bash"
# :TODO: detect compiler
TOOLSET
=
gcc
...
...
scripts/
System
/gsl
.
build
→
scripts/
Compiler
/gsl
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../lib/libem.bash"
source
"$(dirname $0)/../
../../
lib/libem.bash"
function
em
.
configure
()
{
"${MODULE_SRCDIR}"
/
configure
\
...
...
scripts/
System
/hdf5_serial
.
build
→
scripts/
Compiler
/hdf5_serial
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../lib/libem.bash"
source
"$(dirname $0)/../
../../
lib/libem.bash"
function
em
.
configure
()
{
"${MODULE_SRCDIR}"
/
configure
\
...
...
scripts/
System
/openmpi
.
build
→
scripts/
Compiler
/openmpi
/
build
View file @
51792a80
#!/bin/bash
source
"
$(
dirname
$0
)
/../lib/libem.bash"
source
"$(dirname $0)/../
../../
lib/libem.bash"
function
em
.
configure
()
{
"${MODULE_SRCDIR}"
/
configure
\
...
...
Prev
1
2
3
4
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment