Merge branch 'master' of git.psi.ch:Pmodules/buildblocks

This commit is contained in:
2016-04-20 15:18:09 +02:00
16 changed files with 155 additions and 41 deletions

View File

@@ -1,8 +1,5 @@
#!/usr/bin/env modbuild
# :TODO: detect compiler
TOOLSET=intel-linux
BOOST_BUILD_PATH="${MODULE_BUILDDIR}"
pbuild::configure() {
@@ -11,7 +8,6 @@ pbuild::configure() {
--prefix="${PREFIX}" \
--with-libraries=all \
--with-python-root="${PYTHON_PREFIX}" \
-with-toolset=${TOOLSET} \
|| exit 1
}
@@ -23,7 +19,7 @@ pbuild::build() {
--layout=system \
--without-mpi \
variant=release \
link=static \
link=shared \
threading=multi \
stage
}
@@ -36,7 +32,7 @@ pbuild::install() {
--layout=system \
--without-mpi \
variant=release \
link=static \
link=shared \
threading=multi \
install
}

19
Compiler/roger/build Executable file
View File

@@ -0,0 +1,19 @@
#!/usr/bin/env modbuild
pbuild::pre_configure() {
./autogen.sh
}
pbuild::configure() {
"${MODULE_SRCDIR}"/configure \
--prefix="${PREFIX}"
}
declare JOBS=1
pbuild::compile_in_sourcetree
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' 'gsl' 'root' 'boost'
pbuild::make_all

10
Compiler/roger/modulefile Normal file
View 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)

View File

@@ -0,0 +1,6 @@
gcc/4.8.3
hdf5_serial/1.8.12
H5hut_serial/1.99.13
gsl/1.15
root/5.34.34
boost/1.60.0

View File

@@ -5,6 +5,22 @@ module use Libraries
INSTANTCLIENT_INCLUDE_DIR='/usr/include/oracle/12.1/client64'
INSTANTCLIENT_LIBRARY_DIR='/usr/lib/oracle/12.1/client64/lib'
declare -a EXTRA_LIBS=()
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libclntshcore.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libclntshcore.so.12.1" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libclntsh.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libclntsh.so.12.1" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libipc1.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libmql1.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libnnz12.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libocci.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libocci.so.12.1" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libociei.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libocijdbc12.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/libons.so" )
EXTRA_LIBS+=( "${INSTANTCLIENT_LIBRARY_DIR}/liboramysql12.so" )
case ${OS} in
Darwin )
# cocoa doesn't work with GCC!?
@@ -22,12 +38,12 @@ esac
#
pbuild::configure() {
"${MODULE_SRCDIR}"/configure \
--disable-asimage \
--enable-asimage \
--enable-mathmore \
--disable-ldap \
--disable-mysql \
--disable-opengl \
--disable-python \
--enable-mathmore \
--with-cc=${CC} \
--with-cxx=${CXX} \
--with-f77=${F77} \
@@ -45,6 +61,17 @@ pbuild::build() {
pbuild::install() {
make clean
mkdir -p "${PREFIX}"
cp -rv * "${PREFIX}"
mkdir -p "${DOCDIR}"
rsync --archive --verbose "${PREFIX}/LICENSE" "${DOCDIR}/LICENSE"
rsync --archive --verbose "${PREFIX}/man/" "${PREFIX}/share/man/"
rsync --archive --verbose "${PREFIX}/README/" "${DOCDIR}/README/"
rm -rf "${PREFIX}/LICENSE"
rm -rf "${PREFIX}/man/"
rm -rf "${PREFIX}/README"
rm -f Makefile
rm -rf config.*
rm -rf core
@@ -66,20 +93,12 @@ pbuild::install() {
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 -f "${PREFIX}/LICENSE" "${DOCDIR}"
rm -f "${DOCDIR}/README"
mv -f "${PREFIX}/README" "${DOCDIR}"
}
pbuild::postinstall() {
cp -av "${INSTANTCLIENT_LIBRARY_DIR}/"libocci.so* "${PREFIX}"/lib
pbuild::post_install() {
for lib in "${EXTRA_LIBS[@]}"; do
cp -av "${lib}" "${PREFIX}"/lib
done
}
module use unstable

View File

@@ -1,16 +1,12 @@
#%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 "
module-whatis "CERN root"
module-url "http://root.cern.ch/"
module-license "GNU LGPL v2"
module-maintainer "Achim Gsell <achim.gsell@psi.ch>"
module-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.
challenges of high-energy physics.
"
source $env(PSI_LIBMODULES)
setenv ROOTSYS $PREFIX

View File

@@ -0,0 +1,2 @@
gsl/1.15
Python/3.4.3