all buildblocks moved one level up
This commit is contained in:
20
Compiler/H5root/build
Executable file
20
Compiler/H5root/build
Executable file
@@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::pre_configure() {
|
||||
./autogen.sh
|
||||
}
|
||||
|
||||
pbuild::configure() {
|
||||
"${MODULE_SRCDIR}"/configure \
|
||||
--prefix="${PREFIX}" \
|
||||
--enable-h5hut \
|
||||
--enable-hdf5 \
|
||||
--enable-root \
|
||||
--with-pic
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}" 'hdf5_serial' 'root'
|
||||
pbuild::set_build_dependencies 'autoconf' 'automake' 'libtool' "${COMPILER}" 'hdf5_serial' 'H5hut_serial' 'root'
|
||||
pbuild::make_all
|
||||
|
||||
10
Compiler/H5root/modulefile
Normal file
10
Compiler/H5root/modulefile
Normal file
@@ -0,0 +1,10 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "visualization tool for H5hut files"
|
||||
set url "http://amas.psi.ch/"
|
||||
set license "PSI"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
58
Compiler/OpenBLAS/build
Executable file
58
Compiler/OpenBLAS/build
Executable file
@@ -0,0 +1,58 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
case ${COMPILER} in
|
||||
gcc )
|
||||
CC='gcc'
|
||||
;;
|
||||
intel )
|
||||
CC='icc'
|
||||
;;
|
||||
* )
|
||||
die 3 "Oops: unknown compiler: ${COMPILER}"
|
||||
;;
|
||||
esac
|
||||
cat <<EOF > "${MODULE_SRCDIR}/make.inc"
|
||||
SHELL = /bin/sh
|
||||
PLAT =
|
||||
DRVOPTS = \$(OPTS)
|
||||
LOADER = \$(FORTRAN) -pthread
|
||||
ARCHFLAGS= -ru
|
||||
EOF
|
||||
cat <<EOF > "${MODULE_SRCDIR}/Makefile.rule"
|
||||
VERSION = 0.2.9
|
||||
TARGET = CORE2
|
||||
CC = ${CC}
|
||||
BINARY=64
|
||||
USE_THREAD = 0
|
||||
USE_OPENMP = 0
|
||||
NO_SHARED = 1
|
||||
NO_WARMUP = 1
|
||||
NO_AFFINITY = 1
|
||||
FCOMMON_OPT = -frecursive
|
||||
COMMON_PROF = -pg
|
||||
EOF
|
||||
}
|
||||
|
||||
pbuild::build() {
|
||||
cd "${MODULE_SRCDIR}"
|
||||
make
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
make PREFIX="${PREFIX}" install
|
||||
# We have to build shared libs and remove them here.
|
||||
# Building with NOSHARED gives an error during install -
|
||||
# due to a bug in the Makefile(s).
|
||||
rm -f "${PREFIX}/lib/"*.so
|
||||
rm -f "${PREFIX}/lib/"*.dylib
|
||||
#( cd "${PREFIX}/lib"; ln -fs
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::set_docfiles 'LICENSE' 'README.md'
|
||||
pbuild::set_supported_compilers 'gcc' 'intel'
|
||||
pbuild::make_all
|
||||
pbuild::cleanup_src
|
||||
30
Compiler/OpenBLAS/modulefile
Normal file
30
Compiler/OpenBLAS/modulefile
Normal file
@@ -0,0 +1,30 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "optimized BLAS and LAPACK library."
|
||||
set url "http://www.openblas.net/"
|
||||
set license "BSD"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
The BLAS (Basic Linear Algebra Subprograms) are routines that provide
|
||||
standard building blocks for performing basic vector and matrix operations.
|
||||
The Level 1 BLAS perform scalar, vector and vector-vector operations, the
|
||||
Level 2 BLAS perform matrix-vector operations, and the Level 3 BLAS perform
|
||||
matrix-matrix operations. Because the BLAS are efficient, portable, and
|
||||
widely available, they are commonly used in the development of high quality
|
||||
linear algebra software, LAPACK for example.
|
||||
|
||||
LAPACK (Linear Algebra PACKage) is written in Fortran 90 and provides
|
||||
routines for solving systems of simultaneous linear equations, least-
|
||||
squares solutions of linear systems of equations, eigenvalue problems,
|
||||
and singular value problems. The associated matrix factorizations (LU,
|
||||
Cholesky, QR, SVD, Schur, generalized Schur) are also provided, as are
|
||||
related computations such as reordering of the Schur factorizations and
|
||||
estimating condition numbers. Dense and banded matrices are handled, but
|
||||
not general sparse matrices. In all areas, similar functionality is
|
||||
provided for real and complex matrices, in both single and double precision.
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
|
||||
setenv BLASLIB $PREFIX/libopenblas.a
|
||||
|
||||
47
Compiler/OpenBLAS_OMP/build
Executable file
47
Compiler/OpenBLAS_OMP/build
Executable file
@@ -0,0 +1,47 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
cat <<EOF > "${MODULE_SRCDIR}/make.inc"
|
||||
SHELL = /bin/sh
|
||||
PLAT =
|
||||
DRVOPTS = \$(OPTS)
|
||||
LOADER = \$(FORTRAN) -pthread
|
||||
ARCHFLAGS= -ru
|
||||
EOF
|
||||
cat <<EOF > "${MODULE_SRCDIR}/Makefile.rule"
|
||||
VERSION = 0.2.9
|
||||
TARGET = CORE2
|
||||
CC = gcc
|
||||
BINARY=64
|
||||
USE_THREAD = 1
|
||||
USE_OPENMP = 1
|
||||
NO_SHARED = 1
|
||||
NO_WARMUP = 1
|
||||
NO_AFFINITY = 1
|
||||
FCOMMON_OPT = -frecursive
|
||||
COMMON_PROF = -pg
|
||||
EOF
|
||||
}
|
||||
|
||||
pbuild::build() {
|
||||
cd "${MODULE_SRCDIR}"
|
||||
make
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
make PREFIX="${PREFIX}" install
|
||||
# We have to build shared libs and remove them here.
|
||||
# Building with NOSHARED gives an error during install -
|
||||
# due to a bug in the Makefile(s).
|
||||
rm -f "${PREFIX}/lib/"*.so
|
||||
rm -f "${PREFIX}/lib/"*.dylib
|
||||
#( cd "${PREFIX}/lib"; ln -fs
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::set_docfiles 'LICENSE' 'README.md'
|
||||
pbuild::set_supported_compilers 'gcc'
|
||||
pbuild::make_all
|
||||
pbuild::cleanup_src
|
||||
30
Compiler/OpenBLAS_OMP/modulefile
Normal file
30
Compiler/OpenBLAS_OMP/modulefile
Normal file
@@ -0,0 +1,30 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "optimized BLAS and LAPACK library compiled with OpenMP."
|
||||
set url "http://www.openblas.net/"
|
||||
set license "BSD"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
The BLAS (Basic Linear Algebra Subprograms) are routines that provide
|
||||
standard building blocks for performing basic vector and matrix operations.
|
||||
The Level 1 BLAS perform scalar, vector and vector-vector operations, the
|
||||
Level 2 BLAS perform matrix-vector operations, and the Level 3 BLAS perform
|
||||
matrix-matrix operations. Because the BLAS are efficient, portable, and
|
||||
widely available, they are commonly used in the development of high quality
|
||||
linear algebra software, LAPACK for example.
|
||||
|
||||
LAPACK (Linear Algebra PACKage) is written in Fortran 90 and provides
|
||||
routines for solving systems of simultaneous linear equations, least-
|
||||
squares solutions of linear systems of equations, eigenvalue problems,
|
||||
and singular value problems. The associated matrix factorizations (LU,
|
||||
Cholesky, QR, SVD, Schur, generalized Schur) are also provided, as are
|
||||
related computations such as reordering of the Schur factorizations and
|
||||
estimating condition numbers. Dense and banded matrices are handled, but
|
||||
not general sparse matrices. In all areas, similar functionality is
|
||||
provided for real and complex matrices, in both single and double precision.
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
|
||||
setenv OMP_NUM_THREADS 1
|
||||
setenv BLASLIB $PREFIX/libopenblas.a
|
||||
46
Compiler/SuperLU/build
Executable file
46
Compiler/SuperLU/build
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
cat <<EOF > "${MODULE_SRCDIR}/make.inc"
|
||||
PLAT =
|
||||
SuperLUroot = \${PREFIX}
|
||||
SUPERLULIB = \$(SuperLUroot)/lib/libsuperlu.a
|
||||
BLASDEF = -DUSE_VENDOR_BLAS
|
||||
BLASLIB = \${OPENBLAS_PREFIX}/lib/libopenblas.a
|
||||
TMGLIB = libtmglib.a
|
||||
METISLIB =
|
||||
PARMETISLIB =
|
||||
FLIBS =
|
||||
LIBS = \$(DSUPERLULIB) \$(BLASLIB) \$(PARMETISLIB) \$(METISLIB)
|
||||
ARCH = ar
|
||||
ARCHFLAGS = cr
|
||||
RANLIB = ranlib
|
||||
CC = ${CC}
|
||||
CFLAGS = -pipe -O3
|
||||
NOOPTS =
|
||||
FORTRAN = ${FC}
|
||||
F90FLAGS =
|
||||
LOADER = ${FC}
|
||||
LOADOPTS = -fopenmp
|
||||
CDEFS = -DAdd_
|
||||
EOF
|
||||
}
|
||||
|
||||
pbuild::build() {
|
||||
cd "${MODULE_SRCDIR}"
|
||||
mkdir -p "${PREFIX}/lib"
|
||||
make
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
make install
|
||||
mkdir -p "${PREFIX}/include"
|
||||
install -m 0444 "${MODULE_SRCDIR}"/SRC/*.h "${PREFIX}/include"
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}" 'OpenBLAS'
|
||||
pbuild::set_docfiles 'README'
|
||||
pbuild::make_all
|
||||
pbuild::cleanup_src
|
||||
25
Compiler/SuperLU/modulefile
Normal file
25
Compiler/SuperLU/modulefile
Normal file
@@ -0,0 +1,25 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "library for direct solution of large, sparse, nonsymmetric systems of linear equations."
|
||||
set url "http://crd-legacy.lbl.gov/~xiaoye/SuperLU/"
|
||||
set license "BSD, see \$SUPERLU_DIR/share/doc/SuperLU/README"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
|
||||
set help "
|
||||
SuperLU is a general purpose library for the direct solution of large,
|
||||
sparse, nonsymmetric systems of linear equations on high performance
|
||||
machines. The library is written in C and is callable from either C or
|
||||
Fortran. The library routines will perform an LU decomposition with
|
||||
partial pivoting and triangular system solves through forward and back
|
||||
substitution. The LU factorization routines can handle non-square
|
||||
matrices but the triangular solves are performed only for square
|
||||
matrices. The matrix columns may be preordered (before factorization)
|
||||
either through library or user supplied routines. This preordering for
|
||||
sparsity is completely separate from the factorization. Working
|
||||
precision iterative refinement subroutines are provided for improved
|
||||
backward stability. Routines are also provided to equilibrate the
|
||||
system, estimate the condition number, calculate the relative backward
|
||||
error, and estimate error bounds for the refined solutions.
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
42
Compiler/UMFPACK/build
Executable file
42
Compiler/UMFPACK/build
Executable file
@@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
cat <<EOF > "${MODULE_SRCDIR}/SuiteSparse_config/SuiteSparse_config.mk"
|
||||
CF = \$(CFLAGS) \$(CPPFLAGS) \$(TARGET_ARCH) -O3 -fexceptions -fPIC -DNTIMER
|
||||
RANLIB = ranlib
|
||||
ARCHIVE = \$(AR) \$(ARFLAGS)
|
||||
CP = cp -f
|
||||
MV = mv -f
|
||||
F77 = gfortran
|
||||
F77FLAGS = \$(FFLAGS) -O
|
||||
F77LIB =
|
||||
LIB = -lm
|
||||
INSTALL_LIB = \${PREFIX}/lib
|
||||
INSTALL_INCLUDE = \${PREFIX}/include
|
||||
BLAS = -lopenblas -lgfortran
|
||||
XERBLA =
|
||||
GPU_BLAS_PATH =
|
||||
GPU_CONFIG =
|
||||
UMFPACK_CONFIG = -DNCHOLMOD
|
||||
CHOLMOD_CONFIG = \$(GPU_CONFIG)
|
||||
SPQR_CONFIG =
|
||||
TBB =
|
||||
EOF
|
||||
}
|
||||
|
||||
pbuild::build() {
|
||||
cd "${MODULE_SRCDIR}/UMFPACK"
|
||||
make TARGET=CORE2 BINARY=64 USE_THREAD=0 NO_SHARED=1
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
install -d "${PREFIX}/include"
|
||||
install -d "${PREFIX}/lib"
|
||||
make PREFIX="${PREFIX}" install
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}" 'OpenBLAS'
|
||||
pbuild::set_build_dependencies "${COMPILER}" 'OpenBLAS'
|
||||
pbuild::make_all
|
||||
#pbuild::cleanup_src
|
||||
18
Compiler/UMFPACK/modulefile
Normal file
18
Compiler/UMFPACK/modulefile
Normal file
@@ -0,0 +1,18 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "routines for solving unsymmetric sparse linear systems using the Unsymmetric MultiFrontal method."
|
||||
set url "https://www.cise.ufl.edu/research/sparse/umfpack/"
|
||||
set license "GNU GPL"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
|
||||
set help "
|
||||
UMFPACK is a set of routines for solving unsymmetric sparse linear systems,
|
||||
Ax=b, using the Unsymmetric MultiFrontal method. Written in ANSI/ISO C, with
|
||||
a MATLAB (Version 6.0 and later) interface. Appears as a built-in routine
|
||||
(for lu, backslash, and forward slash) in MATLAB. Includes a MATLAB
|
||||
interface, a C-callable interface, and a Fortran-callable interface. Note
|
||||
that "UMFPACK" is pronounced in two syllables, "Umph Pack". It is not "You
|
||||
Em Ef Pack".
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
18
Compiler/atlas/build
Executable file
18
Compiler/atlas/build
Executable file
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
"${MODULE_SRCDIR}"/configure \
|
||||
--prefix="${PREFIX}" \
|
||||
|| exit 1
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::make_all
|
||||
|
||||
# Local Variables:
|
||||
# mode: sh
|
||||
# sh-basic-offset: 8
|
||||
# tab-width: 8
|
||||
# End:
|
||||
16
Compiler/atlas/modulefile
Normal file
16
Compiler/atlas/modulefile
Normal file
@@ -0,0 +1,16 @@
|
||||
#%Module1.0
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
|
||||
set whatis "efficient BLAS and partial LAPACK implementation"
|
||||
set url "http://math-atlas.sourceforge.net/"
|
||||
set license "BSD-style license"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
The ATLAS (Automatically Tuned Linear Algebra Software) project is an
|
||||
ongoing research effort focusing on applying empirical techniques in
|
||||
order to provide portable performance. At present, it provides C and
|
||||
Fortran77 interfaces to a portably efficient BLAS implementation, as
|
||||
well as a few routines from LAPACK.
|
||||
"
|
||||
|
||||
48
Compiler/boost/build
Executable file
48
Compiler/boost/build
Executable file
@@ -0,0 +1,48 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
# :TODO: detect compiler
|
||||
TOOLSET=intel-linux
|
||||
|
||||
BOOST_BUILD_PATH="${MODULE_BUILDDIR}"
|
||||
|
||||
pbuild::configure() {
|
||||
cd "${MODULE_SRCDIR}"
|
||||
"${MODULE_SRCDIR}"/bootstrap.sh \
|
||||
--prefix="${PREFIX}" \
|
||||
--with-libraries=all \
|
||||
--with-python-root="${PYTHON_PREFIX}" \
|
||||
-with-toolset=${TOOLSET} \
|
||||
|| exit 1
|
||||
}
|
||||
|
||||
pbuild::build() {
|
||||
cd "${MODULE_SRCDIR}"
|
||||
./b2 \
|
||||
--build-type=minimal \
|
||||
--build-dir="${MODULE_BUILDDIR}" \
|
||||
--layout=system \
|
||||
--without-mpi \
|
||||
variant=release \
|
||||
link=static \
|
||||
threading=multi \
|
||||
stage
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
cd "${MODULE_SRCDIR}"
|
||||
./b2 \
|
||||
--build-type=minimal \
|
||||
--build-dir="${MODULE_BUILDDIR}" \
|
||||
--layout=system \
|
||||
--without-mpi \
|
||||
variant=release \
|
||||
link=static \
|
||||
threading=multi \
|
||||
install
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}" 'Python'
|
||||
pbuild::make_all
|
||||
|
||||
15
Compiler/boost/modulefile
Normal file
15
Compiler/boost/modulefile
Normal file
@@ -0,0 +1,15 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "C++ libraries"
|
||||
set url "http://www.boost.org"
|
||||
set license "Boost Software License"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
Boost is a set of libraries for the C++ programming language that provide
|
||||
support for tasks and structures such as linear algebra, pseudorandom number
|
||||
generation, multithreading, image processing, regular expressions, and unit
|
||||
testing. It contains over eighty individual libraries.
|
||||
(Wikipedia)
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
19
Compiler/build_all_variants
Executable file
19
Compiler/build_all_variants
Executable file
@@ -0,0 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
declare -r basedir=$(dirname $0)
|
||||
source '../../config/Pmodules.conf'
|
||||
|
||||
declare -r recipe="${basedir}/$1/build"
|
||||
shift
|
||||
|
||||
if [[ ! -x "${recipe}" ]]; then
|
||||
echo "Error: no recipe to build '$1'!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
for cc in "${COMPILER_VERSIONS[@]}"; do
|
||||
"${recipe}" "$@" --with=$cc || {
|
||||
echo "Oops: build failed for:"
|
||||
echo " compile: $cc"
|
||||
}
|
||||
done
|
||||
29
Compiler/gsl/build
Executable file
29
Compiler/gsl/build
Executable file
@@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
"${MODULE_SRCDIR}"/configure \
|
||||
--prefix="${PREFIX}" \
|
||||
|| exit 1
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_docfiles \
|
||||
'AUTHORS' \
|
||||
'BUGS' \
|
||||
'COPYING' \
|
||||
'ChangeLog' \
|
||||
'INSTALL' \
|
||||
'NEWS' \
|
||||
'README' \
|
||||
'THANKS' \
|
||||
'TODO'
|
||||
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::make_all
|
||||
|
||||
# Local Variables:
|
||||
# mode: sh
|
||||
# sh-basic-offset: 8
|
||||
# tab-width: 8
|
||||
# End:
|
||||
16
Compiler/gsl/modulefile
Normal file
16
Compiler/gsl/modulefile
Normal file
@@ -0,0 +1,16 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "GNU Scientific Library"
|
||||
set url "http://www.gnu.org/software/gsl/"
|
||||
set license "GNU GPL"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
The GNU Scientific Library (GSL) is a numerical library for C and C++
|
||||
programmers.
|
||||
|
||||
The library provides a wide range of mathematical routines such as random
|
||||
number generators, special functions and least-squares fitting. There are
|
||||
over 1000 functions in total with an extensive test suite.
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
17
Compiler/hdf5_serial/build
Executable file
17
Compiler/hdf5_serial/build
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
"${MODULE_SRCDIR}"/configure \
|
||||
--prefix="${PREFIX}" \
|
||||
--enable-shared \
|
||||
--enable-cxx \
|
||||
--enable-unsupported \
|
||||
--with-pic \
|
||||
|| exit 1
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::make_all
|
||||
|
||||
20
Compiler/hdf5_serial/modulefile
Normal file
20
Compiler/hdf5_serial/modulefile
Normal file
@@ -0,0 +1,20 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "Hierachical Data Format 5"
|
||||
set url "http://www.hdfgroup.org/HDF5"
|
||||
set license "HDF license (BSD-like)"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
HDF5 is a data model, library, and file format for storing and managing
|
||||
data. It supports an unlimited variety of datatypes, and is designed for
|
||||
flexible and efficient I/O and for high volume and complex data. HDF5 is
|
||||
portable and is extensible, allowing applications to evolve in their use
|
||||
of HDF5. The HDF5 Technology suite includes tools and applications for
|
||||
managing, manipulating, viewing, and analyzing data in the HDF5 format.
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
|
||||
set-family HDF5_serial
|
||||
conflict hdf5
|
||||
|
||||
17
Compiler/mpich/build
Executable file
17
Compiler/mpich/build
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
unset F90
|
||||
"${MODULE_SRCDIR}"/configure \
|
||||
--prefix="${PREFIX}" \
|
||||
--enable-cxx \
|
||||
--enable-fortran \
|
||||
|| exit 1
|
||||
}
|
||||
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::set_docfiles 'COPYRIGHT' 'README'
|
||||
pbuild::make_all
|
||||
25
Compiler/mpich/modulefile
Normal file
25
Compiler/mpich/modulefile
Normal file
@@ -0,0 +1,25 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "a high performance implementation of the MPI standard."
|
||||
set url "http://www.mpich.org/"
|
||||
set license "BSD-like"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
MPICH is a high-performance and widely portable implementation of the
|
||||
MPI Standard, designed to implement all of MPI-1, MPI-2, and MPI-3 (in-
|
||||
cluding dynamic process management, one-sided operations, parallel I/O,
|
||||
and other extensions).
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
|
||||
set-family MPI
|
||||
|
||||
setenv MPICC $PREFIX/bin/mpicc
|
||||
setenv MPICXX $PREFIX/bin/mpicxx
|
||||
setenv MPIF77 $PREFIX/bin/mpif77
|
||||
setenv MPIF90 $PREFIX/bin/mpif90
|
||||
setenv MPIFC $PREFIX/bin/mpif90
|
||||
setenv MPIFORTRAN $PREFIX/bin/mpif90
|
||||
setenv MPIEXEC $PREFIX/bin/mpiexec
|
||||
setenv MPIRUN $PREFIX/bin/mpirun
|
||||
19
Compiler/openmpi/build
Executable file
19
Compiler/openmpi/build
Executable file
@@ -0,0 +1,19 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
pbuild::configure() {
|
||||
"${MODULE_SRCDIR}"/configure \
|
||||
--prefix="${PREFIX}" \
|
||||
--enable-mpi-cxx \
|
||||
--enable-mpi-cxx-seek \
|
||||
--enable-mpi-f90 \
|
||||
--enable-mpi-profile \
|
||||
--enable-shared \
|
||||
--enable-smp-locks \
|
||||
|| exit 1
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::set_docfiles 'AUTHORS' 'LICENSE' 'NEWS' 'README'
|
||||
pbuild::make_all
|
||||
6
Compiler/openmpi/compiler
Normal file
6
Compiler/openmpi/compiler
Normal file
@@ -0,0 +1,6 @@
|
||||
gcc/4.7.4
|
||||
gcc/4.8.4
|
||||
gcc/4.9.2
|
||||
gcc/5.1.0
|
||||
gcc/5.2.0
|
||||
intel/15.3
|
||||
26
Compiler/openmpi/modulefile
Normal file
26
Compiler/openmpi/modulefile
Normal file
@@ -0,0 +1,26 @@
|
||||
#%Module1.0
|
||||
|
||||
module-whatis "open source MPI-2 implementation"
|
||||
module-url "http://www.open-mpi.org/"
|
||||
module-license "See \$OPENMPI_DIR/share/doc/openmpi/LICENSE"
|
||||
module-maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
module-help "
|
||||
The Open MPI Project is an open source MPI-2 implementation that is
|
||||
developed and maintained by a consortium of academic, research, and
|
||||
industry partners. Open MPI is therefore able to combine the expertise,
|
||||
technologies, and resources from all across the High Performance Computing
|
||||
community in order to build the best MPI library available. Open MPI offers
|
||||
advantages for system and software vendors, application developers and
|
||||
computer science researchers.
|
||||
"
|
||||
|
||||
module-addgroup MPI
|
||||
|
||||
setenv MPICC $PREFIX/bin/mpicc
|
||||
setenv MPICXX $PREFIX/bin/mpicxx
|
||||
setenv MPIF77 $PREFIX/bin/mpif77
|
||||
setenv MPIF90 $PREFIX/bin/mpif90
|
||||
setenv MPIFC $PREFIX/bin/mpif90
|
||||
setenv MPIFORTRAN $PREFIX/bin/mpif90
|
||||
setenv MPIEXEC $PREFIX/bin/mpiexec
|
||||
setenv MPIRUN $PREFIX/bin/mpirun
|
||||
4
Compiler/openmpi/versions
Normal file
4
Compiler/openmpi/versions
Normal file
@@ -0,0 +1,4 @@
|
||||
1.6.5
|
||||
1.8.2
|
||||
1.8.4
|
||||
1.8.8
|
||||
70
Compiler/root/build
Executable file
70
Compiler/root/build
Executable file
@@ -0,0 +1,70 @@
|
||||
#!/usr/bin/env modbuild
|
||||
|
||||
case ${OS} in
|
||||
Darwin )
|
||||
# cocoa doesn't work with GCC!?
|
||||
#config_args='--enable-cocoa --disable-x11'
|
||||
config_args='--with-finkdir=/opt/X11 --disable-cocoa'
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
pbuild::configure() {
|
||||
"${MODULE_SRCDIR}"/configure \
|
||||
--disable-ldap \
|
||||
--disable-mysql \
|
||||
--disable-opengl \
|
||||
--disable-python \
|
||||
--enable-fftw3 \
|
||||
--with-cc=${CC} \
|
||||
--with-cxx=${CXX} \
|
||||
--with-f77=${F77} \
|
||||
--with-ld=${CXX} \
|
||||
${config_args} \
|
||||
|| exit 1
|
||||
}
|
||||
|
||||
pbuild::build() {
|
||||
make -j 4
|
||||
}
|
||||
|
||||
pbuild::install() {
|
||||
make clean
|
||||
|
||||
rm -f Makefile
|
||||
rm -rf config.*
|
||||
rm -rf core
|
||||
rm -rf io
|
||||
rm -rf math
|
||||
rm -rf net
|
||||
rm -rf hist
|
||||
rm -rf tree
|
||||
rm -rf graf2d
|
||||
rm -rf graf3d
|
||||
rm -rf gui
|
||||
rm -rf html
|
||||
rm -rf montecarlo
|
||||
rm -rf geom
|
||||
rm -rf proof
|
||||
rm -rf sql
|
||||
rm -rf misc
|
||||
rm -rf test
|
||||
rm -rf tmva
|
||||
rm -rf tutorials
|
||||
rm -rf rootx
|
||||
|
||||
mkdir -p share
|
||||
mv man share
|
||||
|
||||
mkdir -p "${PREFIX}"
|
||||
cp -rv * "${PREFIX}"
|
||||
mkdir -p "${DOCDIR}"
|
||||
mv "${PREFIX}/LICENSE" "${DOCDIR}"
|
||||
mv "${PREFIX}/README" "${DOCDIR}"
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies "${COMPILER}"
|
||||
pbuild::make_all
|
||||
16
Compiler/root/modulefile
Normal file
16
Compiler/root/modulefile
Normal file
@@ -0,0 +1,16 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "CERN root"
|
||||
set url "http://root.cern.ch/"
|
||||
set license "GNU LGPL v2"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
set help "
|
||||
ROOT is an object-oriented framework aimed at solving the data analysis
|
||||
challenges of high-energy physics. There are two key words in this
|
||||
definition, object oriented and framework. First, we explain what we
|
||||
mean by a framework and then why it is an object-oriented framework.
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
|
||||
setenv ROOTSYS $PREFIX
|
||||
31
Compiler/vtk/build
Executable file
31
Compiler/vtk/build
Executable file
@@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env modbuild
|
||||
#
|
||||
# Notes:
|
||||
# On Mac OS X VTK does not compile out of the box with self-compiled GCC.
|
||||
# grep vor "long-branch" and "pascal-string" in the cmake configuration
|
||||
# and remove these strings.
|
||||
#
|
||||
|
||||
case ${OS} in
|
||||
Darwin )
|
||||
pbuild::pre_configure() {
|
||||
# for the time being: on Mac OS X we need GL/gl.h from MacPorts:
|
||||
std::append_path C_INLCUDE_PATH '/opt/local/include'
|
||||
std::append_path CPLUS_INCLUDE_PATH '/opt/local/include'
|
||||
}
|
||||
;;
|
||||
esac
|
||||
|
||||
pbuild::configure() {
|
||||
cmake -DCMAKE_INSTALL_PREFIX:PATH=$PREFIX \
|
||||
-DVTK_INSTALL_INCLUDE_DIR:PATH=include \
|
||||
-DVTK_INSTALL_LIB_DIR:PATH=lib \
|
||||
-DVTK_USE_COCOA:BOOL=OFF \
|
||||
"${MODULE_SRCDIR}"
|
||||
}
|
||||
|
||||
pbuild::add_to_group 'Compiler'
|
||||
pbuild::set_runtime_dependencies "${COMPILER}"
|
||||
pbuild::set_build_dependencies 'cmake' "${COMPILER}"
|
||||
pbuild::make_all
|
||||
|
||||
15
Compiler/vtk/modulefile
Normal file
15
Compiler/vtk/modulefile
Normal file
@@ -0,0 +1,15 @@
|
||||
#%Module1.0
|
||||
|
||||
set whatis "Visualization ToolKit"
|
||||
set url "http://www.vtk.org"
|
||||
set license "Kitware, Inc., Insight Software Consortium (BSD-like)"
|
||||
set maintainer "Achim Gsell <achim.gsell@psi.ch>"
|
||||
|
||||
set help "
|
||||
The Visualization Toolkit (VTK) is an open-source, freely available
|
||||
software system for 3D computer graphics, image processing and
|
||||
visualization. VTK consists of a C++ class library and several
|
||||
interpreted interface layers including Tcl/Tk, Java, and Python.
|
||||
"
|
||||
|
||||
source $env(PSI_LIBMODULES)
|
||||
Reference in New Issue
Block a user