VERSION=master NAME=dealii.git EXTRACTSTO=deal.II-${VERSION} SOURCE=https://github.com/dealii/ PACKING=git BUILDCHAIN=cmake ################################################################################ BUILDDIR=${BUILD_PATH}/deal.II-${VERSION} INSTALL_PATH=${ORIG_INSTALL_PATH}/deal.II-${VERSION} ################################################################################ # Please do not change the line below! ################################################################################ #Choose general configuration and components of deal.II CONFOPTS=" \ ${DEAL_CONFOPTS} \ -D CMAKE_BUILD_TYPE=DebugRelease \ -D DEAL_II_WITH_MPI:BOOL=ON \ -D DEAL_II_WITH_THREADS:BOOL=ON \ -D DEAL_II_FORCE_BUNDLED_THREADS:BOOL=OFF \ -D DEAL_II_COMPONENT_DOCUMENTATION:BOOL=OFF \ -D DEAL_II_WITH_SLEPC:BOOL=OFF \ -D DEAL_II_WITH_PETSC:BOOL=OFF \ -D DEAL_II_WITH_LAPACK:BOOL=ON \ -D DEAL_II_WITH_UMFPACK:BOOL=ON \ -D DEAL_II_FORCE_BUNDLED_UMFPACK:BOOL=OFF \ -D DEAL_II_WITH_BOOST:BOOL=ON \ -D DEAL_II_FORCE_BUNDLED_BOOST:BOOL=OFF \ -D DEAL_II_WITH_ZLIB:BOOL=ON \ -D DEAL_II_WITH_FUNCTIONPARSER:BOOL=ON \ -D DEAL_II_COMPONENT_MESH_CONVERTER:BOOL=ON" ################################################################################ # Add additional packages, if present # arpack if [ ! -z "${ARPACK_DIR}" ]; then cecho ${INFO} "deal.II: configuration with ARPACK" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_ARPACK:BOOL=ON \ -D ARPACK_DIR=${ARPACK_DIR}" fi # metis if [[ ${PACKAGES_OFF} =~ 'metis' ]]; then # Disable METIS for deal.II, if a special DEAL_CONFOPTS together with # the dealii-prepare loop forces metis to be off if [ ! -z "${METIS_DIR}" ]; then cecho ${INFO} "deal.II: unset METIS_DIR due to forced DEAL_II_WITH_METIS:BOOL=OFF option" unset METIS_DIR fi fi if [ ! -z "${METIS_DIR}" ]; then cecho ${INFO} "deal.II: configuration with METIS" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_METIS:BOOL=ON \ -D METIS_DIR=${METIS_DIR}" fi # mumps if [ ! -z "${MUMPS_DIR}" ]; then cecho ${INFO} "deal.II: configuration with MUMPS" CONFOPTS="\ ${CONFOPTS} \ -D MUMPS_DIR=${MUMPS_DIR}" fi # p4est if [[ ${PACKAGES_OFF} =~ 'p4est' ]]; then # Disable p4est for deal.II, if a special DEAL_CONFOPTS together with # the dealii-prepare loop forces p4est to be off if [ ! -z "${P4EST_DIR}" ]; then cecho ${INFO} "deal.II: unset P4EST_DIR due to forced DEAL_II_WITH_P4EST:BOOL=OFF option" unset P4EST_DIR fi fi if [ ! -z "${P4EST_DIR}" ]; then cecho ${INFO} "deal.II: configuration with P4EST" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_P4EST:BOOL=ON \ -D P4EST_DIR=${P4EST_DIR}" fi # hdf5 if [[ ${PACKAGES_OFF} =~ 'hdf5' ]]; then # Disable hdf5 for deal.II, if a special DEAL_CONFOPTS together with # the dealii-prepare loop forces hdf5 to be off if [ ! -z "${HDF5_DIR}" ]; then cecho ${INFO} "deal.II: unset HDF5_DIR due to forced DEAL_II_WITH_HDF5:BOOL=OFF option" unset HDF5_DIR fi fi if [ ! -z "${HDF5_DIR}" ]; then cecho ${INFO} "deal.II: configuration with HDF5" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_HDF5:BOOL=ON \ -D HDF5_DIR=${HDF5_DIR}" fi # trilinos if [[ ${PACKAGES_OFF} =~ 'trilinos' ]]; then # Disable trilinos for deal.II, if a special DEAL_CONFOPTS together with # the dealii-prepare loop forces trilinos to be off if [ ! -z "${TRILINOS_DIR}" ]; then cecho ${INFO} "deal.II: unset TRILINOS_DIR due to forced DEAL_II_WITH_TRILINOS:BOOL=OFF option" unset TRILINOS_DIR fi fi if [ ! -z "${TRILINOS_DIR}" ]; then cecho ${INFO} "deal.II: configuration with TRILINOS" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_TRILINOS:BOOL=ON \ -D TRILINOS_DIR=${TRILINOS_DIR}" fi # petsc if [[ ${PACKAGES_OFF} =~ 'petsc' ]]; then # Disable petsc for deal.II, if a special DEAL_CONFOPTS together with # the dealii-prepare loop forces petsc to be off if [ ! -z "${PETSC_DIR}" ]; then cecho ${INFO} "deal.II: unset PETSC_DIR due to forced DEAL_II_WITH_PETSC:BOOL=OFF option" unset PETSC_DIR fi fi if [ ! -z "${PETSC_DIR}" ]; then cecho ${INFO} "deal.II: configuration with PETSC" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_PETSC:BOOL=ON \ -D PETSC_DIR=${PETSC_DIR}" fi # slepc if [[ ${PACKAGES_OFF} =~ 'slepc' ]]; then # Disable slepc for deal.II, if a special DEAL_CONFOPTS together with # the dealii-prepare loop forces slepc to be off if [ ! -z "${SLEPC_DIR}" ]; then cecho ${INFO} "deal.II: unset SLEPC_DIR due to forced DEAL_II_WITH_SLEPC:BOOL=OFF option" unset SLEPC_DIR fi fi if [ ! -z "${SLEPC_DIR}" ]; then cecho ${INFO} "deal.II: configuration with SLEPC" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_SLEPC:BOOL=ON \ -D SLEPC_DIR=${SLEPC_DIR}" fi # opencascade if [[ ${PACKAGES_OFF} =~ 'opencascade' ]]; then # Disable OPENCASCADE for deal.II, if a special DEAL_CONFOPTS together with # the dealii-prepare loop forces opencascade to be off if [ ! -z "${OPENCASCADE_DIR}" ]; then cecho ${INFO} "deal.II: unset OPENCASCADE_DIR due to forced DEAL_II_WITH_OPENCASCADE:BOOL=OFF option" unset OPENCASCADE_DIR fi fi if [ ! -z "${OPENCASCADE_DIR}" ]; then cecho ${INFO} "deal.II: configuration with OPENCASCADE" CONFOPTS="\ ${CONFOPTS} \ -D DEAL_II_WITH_OPENCASCADE:BOOL=ON" fi ################################################################################ package_specific_conf() { ############################################################################ # Generate modulefile # Prepare modulefile path and config file name if [ -z "${COMPILER}" ]; then COMPILER=default fi if [ -z "${MODULEFILE_PATH}" ]; then MODULEFILE_PATH=${CONFIGURATION_PATH}/modulefiles fi CONFIG_FILE=${MODULEFILE_PATH}/${COMPILER} CURRENT_MODULES=$(echo ${LOADEDMODULES} | sed 's/:/\ /g') # Generate modulefile mkdir -p ${MODULEFILE_PATH} rm -f $CONFIG_FILE echo "#%Module 1.0 # # deal.II module for use with 'environment-modules' package: # module-whatis \"Provides the deal.II toolbox.\" conflict deal.II module load ${CURRENT_MODULES} setenv DEAL_II_DIR ${INSTALL_PATH} " >> $CONFIG_FILE echo echo "${NAME} has now been installed in" echo cecho ${GOOD} " ${INSTALL_PATH}" echo echo "To update your environment variables, use the created modulefile:" echo cecho ${GOOD} " $CONFIG_FILE" echo export DEAL_II_DIR=${INSTALL_PATH} ############################################################################ # Generate configuration file CONFIG_FILE=${CONFIGURATION_PATH}/deal.II-${VERSION} rm -f $CONFIG_FILE echo " export DEAL_II_DIR=${INSTALL_PATH} " >> $CONFIG_FILE echo "If you are not using modules, execute the following command instead:" echo cecho ${GOOD} " source $CONFIG_FILE" echo }