openmpi/variants: conflicts resolved

This commit is contained in:
2018-05-15 13:00:05 +02:00
9 changed files with 163 additions and 9 deletions

View File

@@ -6,5 +6,6 @@ H5root/1.3.2rc4 unstable gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6
H5root/1.3.2rc4-1 unstable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6.08.02 boost/1.62.0 gsl/2.2.1
H5root/1.3.2rc5 unstable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6.08.02 boost/1.62.0 gsl/2.2.1
H5root/1.3.2rc5-1 unstable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6.08.02 boost/1.62.0 gsl/2.2.1
H5root/1.3.2 unstable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6.08.02 boost/1.62.0 gsl/2.2.1
H5root/1.3.4 unstable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6.08.02 boost/1.62.0 gsl/2.2.1
H5root/1.3.2 stable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6.08.02 boost/1.62.0 gsl/2.2.1
H5root/1.3.4 stable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/5.4.0 b:hdf5_serial/1.8.18 b:H5hut/2.0.0rc3 root/6.08.02 boost/1.62.0 gsl/2.2.1
H5root/1.3.4 unstable b:autoconf/2.69 b:automake/1.14 b:libtool/2.4.2 gcc/7.3.0 b:hdf5_serial/1.10.1 b:H5hut/2.0.0rc4 root/6.12.06 boost/1.66.0 gsl/2.4

View File

@@ -4,6 +4,8 @@ openmpi/3.0.0 stable gcc/7.2.0
openmpi/3.0.0 stable gcc/7.3.0
openmpi/3.0.0 stable intel/17.4
openmpi/3.0.1 stable gcc/5.5.0
openmpi/3.0.1 stable gcc/6.4.0
openmpi/3.0.1 stable gcc/7.3.0
openmpi/3.0.1 stable gcc/5.5.0
openmpi/3.0.1 stable gcc/6.4.0
openmpi/3.0.1 stable gcc/7.3.0
openmpi/3.0.1 unstable gcc/8.1.0
openpmi/3.0.1 unstable intel/18.2

View File

@@ -16,6 +16,7 @@ pbuild::configure() {
--enable-mpi-profile \
--enable-orterun-prefix-by-default \
--enable-shared \
--enable-static \
--enable-smp-locks \
--with-sge=yes \
--with-slurm=yes \
@@ -23,6 +24,12 @@ pbuild::configure() {
|| exit 1
}
pbuild::post_install() {
if [[ -r /usr/lib64/libnuma.a ]]; then
:
fi
}
pbuild::add_to_group 'Compiler'
pbuild::set_docfiles 'AUTHORS' 'LICENSE' 'NEWS' 'README'
pbuild::make_all

1
MPI/OPAL/2.0/variants Normal file
View File

@@ -0,0 +1 @@
OPAL/2.0.0rc2 unstable gcc/7.3.0 openmpi/3.0.0 boost/1.66.0 hdf5/1.10.1 H5hut/2.0.0rc4 gsl/2.4 trilinos/12.12.1 b:cmake/3.9.6 b:OpenBLAS/0.2.20

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env modbuild
SOURCE_URL='http://amas.web.psi.ch/Downloads/$P/$P-$V.tar.bz2'
SOURCE_URL="http://amas.web.psi.ch/Downloads/$P/src/$P-$V.tar.bz2"
config_args=()
@@ -9,7 +9,9 @@ Darwin )
:
;;
Linux )
config_args+=( '-DENABLE_DKS=ON' )
if (( V_MAJOR < 2)); then
config_args+=( '-DENABLE_DKS=ON' )
fi
;;
esac
@@ -24,6 +26,6 @@ pbuild::configure() {
}
pbuild::add_to_group 'MPI'
pbuild::set_supported_compilers 'gcc/4.7' 'gcc/4.8' 'gcc/4.9' 'gcc/5.4'
pbuild::set_supported_compilers 'gcc/5.4.0' 'gcc/5.5.0' 'gcc/6.4.0' 'gcc/7.3.0'
pbuild::make_all

138
MPI/elegant/README.md Normal file
View File

@@ -0,0 +1,138 @@
# How to compile (P)elegant
## Official build instructions
>
Go down for PSI build instructions!
Instructions to setup `epics/base`, `epics/extensions` compile `SDDS` and `elegant`. The instructions to build from source are almost at the end of the page:
https://www.aps.anl.gov/Accelerator-Operations-Physics/Software/installationGuide_Linux
Instructions to build `Pelegant`:
https://ops.aps.anl.gov/publish/Pelegant_manual/node2.html
## Get the software
**Main page**
* https://www1.aps.anl.gov/Accelerator-Operations-Physics/Software
**Configuration files for EPICS build system (base and extensions)**
* http://www.aps.anl.gov/Accelerator_Systems_Division/Accelerator_Operations_Physics/cgi-bin/oagLog4.cgi?name=epics.base.configure.tar.gz
* http://www.aps.anl.gov/Accelerator_Systems_Division/Accelerator_Operations_Physics/cgi-bin/oagLog4.cgi?name=epics.extensions.configure.tar.gz
**Configure files for elegant, spiffe, genesis, and shower**
* http://www.aps.anl.gov/Accelerator_Systems_Division/Accelerator_Operations_Physics/cgi-bin/oagLog4.cgi?name=oag.apps.configure.tar.gz
**SDDS source**
* http://www.aps.anl.gov/Accelerator_Systems_Division/Accelerator_Operations_Physics/cgi-bin/oagLog4.cgi?name=SDDS.3.6.1.tar.gz
**elegant source**
* http://www.aps.anl.gov/Accelerator_Systems_Division/Accelerator_Operations_Physics/cgi-bin/oagLog4.cgi?name=elegant.34.2.0.tar.gz
## Required Modules
```
module load gcc/7.3.0 gsl/2.4 OpenBLAS/0.2.20 mpich/3.2.1
```
## Set used versions
```
SDDS_VERSION=3.6.1
ELEGANT_VERSION=34.2.0
```
## Setup Environment
```
DOWNLOAD_DIR='/afs/psi.ch/software/Pmodules/distfiles/elegant'
PREFIX=/opt/psi/MPI/elegant/${ELEGANT_VERSION}/${MPI}/${MPI_VERSION}/${COMPILER}/${COMPILER_VERSION}
export EPICS_BASE="${PREFIX}/epics/base"
export HOST_ARCH=linux-x86_64
export EPICS_HOST_ARCH=linux-x86_64
export RPN_DEFNS="${PREFIX}/RPN_DEFNS/defns.rpn"
export PERLLIB="${PREFIX}/lib/perl"
```
```
ARGS=()
ARGS+=( "GNU_BIN=$GCC_DIR/bin" )
ARGS+=( "LD=/usr/bin/ld" )
ARGS+=( "AR=/usr/bin/ar -rc" )
ARGS+=( "RANLIB=/usr/bin/ranlib" )
ARGS+=( "EPICS_BASE=${PREFIX}" )
ARGS+=( "INSTALL_LOCATION=${PREFIX}" )
ARGS+=( "INSTALL_LIB=${PREFIX}/lib" )
ARGS+=( "INSTALL_SHRLIB=${PREFIX}/lib" )
ARGS+=( "INSTALL_TCLLIB=${PREFIX}/lib" )
ARGS+=( "INSTALL_BIN=${PREFIX}/bin" )
ARGS+=( "SYSGSL=1")
```
## Prepare base build environment
EPICS base configuration
```
mkdir -p "${PREFIX}"
mkdir -p "${RPN_DEFNS%/*}"
cp "${DOWNLOAD_DIR}/defns.rpn" "${RPN_DEFNS}"
cd "${PREFIX}"
tar xvf "${DOWNLOAD_DIR}/epics.base.configure.tar.gz"
cd epics/base
make -e "${ARGS[@]}"
```
## Unpack EPICS extensions and OAG apps configuration
```
ARGS+=( "TOOLS=${PREFIX}/bin")
cd "${PREFIX}"
tar xvf "${DOWNLOAD_DIR}/epics.extensions.configure.tar.gz"
tar xvf "${DOWNLOAD_DIR}/oag.apps.configure.tar.gz"
cd "${PREFIX}/oag/apps/configure"
sed -i "s/clean::/clean:/" RULES_PYTHON
make -e "${ARGS[@]}"
```
>
You have to fix the `clean::` target in `${PREFIX}/oag/apps/configure/PYTHON_RULES`
## Build required tools and libraries from SDDS
```
cd "${PREFIX}"
tar xvf "${DOWNLOAD_DIR}/SDDS.${SDDS_VERSION}.tar.gz"
cd "${PREFIX}/epics/extensions/src/SDDS/"
make -e "${ARGS[@]}" -C fftpack && \
make -e "${ARGS[@]}" -C lzma && \
make -e "${ARGS[@]}" -C matlib && \
make -e "${ARGS[@]}" -C mdbcommon && \
make -e "${ARGS[@]}" -C mdblib && \
make -e "${ARGS[@]}" -C mdbmth && \
make -e "${ARGS[@]}" -C meschach && \
make -e "${ARGS[@]}" -C namelist && \
make -e "${ARGS[@]}" -C pgapack && \
make -e "${ARGS[@]}" -C rpns/code && \
make -e "${ARGS[@]}" -C SDDSlib && \
make -e "${ARGS[@]}" -C SDDSlib clean
make "${ARGS[@]}" MPI=1 -C SDDSlib
```
## Compile (P)elegant
```
cd "${PREFIX}"
tar xvf "${DOWNLOAD_DIR}/elegant.${ELEGANT_VERSION}.tar.gz"
PATH+=":${PREFIX}/bin"
cd "${PREFIX}/oag/apps/src/elegant"
make -e "${ARGS[@]}"
make clean
make "${ARGS[@]}" Pelegant
```

View File

@@ -1,6 +1,6 @@
#%Module1.0
module-whatis "an accelerator modeling code th"
module-whatis "an accelerator modeling code"
module-url "http://www.aps.anl.gov/Accelerator_Systems_Division/Accelerator_Operations_Physics/elegant.html"
module-license "See: http://www.aps.anl.gov/epics/license/index.php"
module-maintainer "Achim Gsell <achim.gsell@psi.ch>"

View File

@@ -0,0 +1 @@
gcc/8.1.0 unstable b:gmp/6.1.2 b:mpfr/4.0.1 b:mpc/1.1.0

View File

@@ -7,6 +7,8 @@ pbuild::configure() {
cd "${MODULE_SRCDIR}"
"${MODULE_SRCDIR}"/configure \
--prefix="${PREFIX}" \
--enable-pythoninterp=dynamic \
--enable-python3interp=dynamic \
|| exit 1
}