Commit ae6a6828 authored by Praetorius, Simon's avatar Praetorius, Simon

build and install scripts cleaned up

parent 134899c4
......@@ -6,7 +6,6 @@ cache:
before_script:
- tools/install_boost.sh
- tools/install_petsc.sh
build:9-debug-gcc:
stage: build
......@@ -28,6 +27,7 @@ build:9-parallel-debug-gcc:
stage: build
image: duneci/base:9
script:
- tools/install_petsc.sh
- tools/build_parallel_amdis.sh Debug
only:
- master
......@@ -36,6 +36,7 @@ build:9-parallel-release-gcc:
stage: build
image: duneci/base:9
script:
- tools/install_petsc.sh
- tools/build_parallel_amdis.sh Release
only:
- master
......@@ -56,11 +56,12 @@ Optional Features:
requires boost-iostreams with enabled ZLib and libbz2
support.
--enable-parallel Compile the parallel version of AMDiS. Needs PETSc and
Parmetis. (see --with-petsc, --with-parmetis)
Parmetis. (see --with-petsc-dir, --with-parmetis-dir)
Optional Packages:
--with-umfpack Adds support for the direct solver UMFPACK.
--with-suitesparse (see --with-umfpack)
--with-boost-dir=DIR Sets the boost root directory. [${BOOST_PREFIX}]
--download-boost Download and install boost to '${SRC_DIR}/packages/boost'.
......@@ -194,11 +195,11 @@ if [ "${DOWNLOAD_BOOST}" -eq "1" ]; then
BOOST_PREFIX=${SRC_DIR}/packages/boost/${BOOST_VERSION}
cd /tmp/src/boost
./bootstrap.sh --prefix=${BOOST_PREFIX} --with-libraries=system,iostreams,filesystem,program_options,date_time
./bootstrap.sh --prefix=${BOOST_PREFIX} --with-libraries=system,iostreams,filesystem,program_options,date_time,unit_test_framework
if [ "${ENABLE_COMPRESSION}" = "ON" ]; then
./b2 -s cxxflags="-std=c++11" --build-type=minimal install
./b2 -s cxxflags="-std=c++11" --build-type=minimal variant=release install
else
./b2 -s NO_BZIP2=1 -s NO_ZLIB=1 cxxflags="-std=c++11" --build-type=minimal install
./b2 -s NO_BZIP2=1 -s NO_ZLIB=1 cxxflags="-std=c++11" --build-type=minimal variant=release install
fi
rm -rf /tmp/src/boost
fi
......@@ -283,8 +284,7 @@ fi
# Install AMDiS
cd ${BUILD_DIR}
if [ "${ENABLE_PARALLEL}" = "OFF" ]; then
cmake -DUSE_NEW_CMAKE:BOOL=ON \
-DENABLE_UMFPACK:BOOL=${ENABLE_UMFPACK} \
cmake -DENABLE_UMFPACK:BOOL=${ENABLE_UMFPACK} \
-DCMAKE_BUILD_TYPE:String=${BUILD_TYPE} \
-DCMAKE_INSTALL_PREFIX:PATH=${INSTALL_PREFIX} \
-DCMAKE_CXX_FLAGS:STRING="${CXX_FLAGS}" \
......@@ -293,8 +293,7 @@ if [ "${ENABLE_PARALLEL}" = "OFF" ]; then
-DENABLE_COMPRESSION:BOOL=${ENABLE_COMPRESSION} ${BOOST_CONFIG} \
${SRC_DIR}/AMDiS/
else
cmake -DUSE_NEW_CMAKE:BOOL=ON \
-DCMAKE_CXX_COMPILER=mpic++ \
cmake -DCMAKE_CXX_COMPILER=mpic++ \
-DCMAKE_C_COMPILER=mpicc \
-DCMAKE_BUILD_TYPE:String=${BUILD_TYPE} \
-DCMAKE_INSTALL_PREFIX:PATH=${INSTALL_PREFIX} \
......
......@@ -22,7 +22,8 @@ cmake -E chdir ${ROOT}/build_${POSTFIX} cmake \
-DENABLE_COMPRESSION:BOOL=OFF \
-DENABLE_UMFPACK:BOOL=OFF \
-DENABLE_PARALLEL_DOMAIN:BOOL=ON \
-DPETSC_DIR:PATH=/opt/sources/amdis-git/packages/petsc \
-DBOOST_ROOT:PATH=${ROOT}/install/boost \
-DPETSC_DIR:PATH=${ROOT}/install/petsc \
${ROOT}/AMDiS
cmake --build ${ROOT}/build_${POSTFIX} --target install -- -j2
......@@ -33,7 +34,8 @@ cmake -E make_directory ${BASEDIR}/build_${POSTFIX}
cmake -E chdir ${BASEDIR}/build_${POSTFIX} cmake \
-DAMDIS_DIR=${ROOT}/install_${POSTFIX}/share/amdis \
-DCMAKE_BUILD_TYPE=${CONFIURATION} \
-DPETSC_DIR:PATH=/opt/sources/amdis-git/packages/petsc \
-DBOOST_ROOT:PATH=${ROOT}/install/boost \
-DPETSC_DIR:PATH=${ROOT}/install/petsc \
${BASEDIR}
cmake --build ${BASEDIR}/build_${POSTFIX}
......@@ -44,7 +46,8 @@ cmake -E make_directory ${BASEDIR}/build_${POSTFIX}
cmake -E chdir ${BASEDIR}/build_${POSTFIX} cmake \
-DAMDIS_DIR=${ROOT}/install_${POSTFIX}/share/amdis \
-DCMAKE_BUILD_TYPE=${CONFIURATION} \
-DPETSC_DIR:PATH=/opt/sources/amdis-git/packages/petsc \
-DBOOST_ROOT:PATH=${ROOT}/install/boost \
-DPETSC_DIR:PATH=${ROOT}/install/petsc \
${BASEDIR}
cmake --build ${BASEDIR}/build_${POSTFIX}
cmake --build ${BASEDIR}/build_${POSTFIX} --target test
......@@ -5,30 +5,22 @@ set -x
ROOT=${PWD}
if [ ! -d install/ ]; then
mkdir -p install
fi
INSTALL_PREFIX=${ROOT}/install
cd install
BOOST_VERSION="1.62.0"
BOOST_FILENAME="boost_${BOOST_VERSION//[.]/_}.tar.gz"
#install current boost version
if [ ! -d boost/${BOOST_VERSION}/ ]; then
curl -o boost.tar.gz "http://netcologne.dl.sourceforge.net/project/boost/boost/${BOOST_VERSION}/${BOOST_FILENAME}"
mkdir boost_tmp
tar --strip-components=1 -xf boost.tar.gz -C boost_tmp
rm boost.tar.gz
cd boost_tmp
./bootstrap.sh --prefix=${INSTALL_PREFIX}/boost/${BOOST_VERSION}/ --with-libraries=system,iostreams,filesystem,program_options,date_time,unit_test_framework
./b2 -s NO_BZIP2=1 cxxflags="-std=c++11" --build-type=minimal variant=release -j 4 install
cd ${INSTALL_PREFIX}
rm -rf boost_tmp
fi
INSTALL_PREFIX=${ROOT}/install
mkdir -p ${INSTALL_PREFIX}
BUILD_DIR=/tmp/$USER/boost_build
mkdir -p ${BUILD_DIR}
# set a symbolic link to the latest boost installation
if [ ! -e ${INSTALL_PREFIX}/boost/latest ]; then
rm -f ${INSTALL_PREFIX}/boost/latest
# install boost
if [ ! -d ${INSTALL_PREFIX}/boost ]; then
curl -SL "http://netcologne.dl.sourceforge.net/project/boost/boost/${BOOST_VERSION}/${BOOST_FILENAME}" \
| tar --strip-components=1 -xzC ${BUILD_DIR}
cd ${BUILD_DIR}
./bootstrap.sh --prefix=${INSTALL_PREFIX}/boost/${BOOST_VERSION}/ \
--with-libraries=system,iostreams,filesystem,program_options,date_time,unit_test_framework
./b2 -s NO_BZIP2=1 cxxflags="-std=c++11" --build-type=minimal variant=release -j 4 install
rm -rf ${BUILD_DIR}
fi
ln -s ${INSTALL_PREFIX}/boost/${BOOST_VERSION} ${INSTALL_PREFIX}/boost/latest
......@@ -5,35 +5,26 @@ set -x
ROOT=${PWD}
if [ ! -d install/ ]; then
mkdir -p install
fi
INSTALL_PREFIX=${ROOT}/install
cd install
PETSC_VERSION="3.5.4"
PETSC_FILENAME="petsc-lite-${PETSC_VERSION}.tar.gz"
INSTALL_PREFIX=${ROOT}/install
mkdir -p ${INSTALL_PREFIX}
BUILD_DIR=/tmp/$USER/petsc_build
mkdir -p ${BUILD_DIR}
# install petsc
if [ ! -d petsc ]; then
curl -o petsc.tar.gz "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${PETSC_FILENAME}"
mkdir petsc_tmp
tar --strip-components=1 -xf petsc.tar.gz -C petsc_tmp
rm petsc.tar.gz
cd petsc_tmp
if [ ! -d ${INSTALL_PREFIX}/petsc ]; then
curl -SL "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/${PETSC_FILENAME}" \
| tar --strip-components=1 -xzC ${BUILD_DIR}
cd ${BUILD_DIR}
# minimal petsc configuration, just for test purposes
./configure --prefix=${INSTALL_PREFIX}/petsc/${PETSC_VERSION}/ --with-pic=1 --with-debugging=0 \
--with-clanguage=c++ --with-cxx-dialect=c++11 \
--with-metis=1 --download-metis=yes \
--with-parmetis=1 --download-parmetis=yes \
./configure --prefix=${INSTALL_PREFIX}/petsc/${PETSC_VERSION}/ --with-pic=1 \
--with-clanguage=c++ --with-debugging=0 \
--with-metis=1 --download-metis=yes \
--with-parmetis=1 --download-parmetis=yes \
--with-fblaslapack=1 --download-fblaslapack=yes
make && make install
cd ${ROOT}/install
rm -rf petsc_tmp
fi
# set a symbolic link to the latest boost installation
if [ ! -e ${INSTALL_PREFIX}/petsc/latest ]; then
rm -f ${INSTALL_PREFIX}/petsc/latest
rm -rf ${BUILD_DIR}
fi
ln -s ${INSTALL_PREFIX}/petsc/${PETSC_VERSION} ${INSTALL_PREFIX}/petsc/latest
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment