]> https://gitweb.dealii.org/ - candi.git/commitdiff
SuperLU_dist: v5.1.2 with simpler cmake and shared-lib interface; trilinos: superlu... 10/head
authorUwe Köcher <koecher@hsu-hamburg.de>
Tue, 20 Dec 2016 15:41:42 +0000 (16:41 +0100)
committerUwe Köcher <koecher@hsu-hamburg.de>
Tue, 20 Dec 2016 15:41:42 +0000 (16:41 +0100)
deal.II-toolchain/packages/superlu_dist.package
deal.II-toolchain/packages/trilinos.package

index 68834a785ddfd0846b4c23b076fad05a80a0c44b..0155940733dc5168f87ddde054219b463110ec9d 100644 (file)
@@ -1,88 +1,18 @@
-VERSION=4.1
+VERSION=5.1.2
 NAME=superlu_dist_${VERSION}
 EXTRACTSTO=SuperLU_DIST_${VERSION}
 SOURCE=http://crd-legacy.lbl.gov/~xiaoye/SuperLU/
 PACKING=.tar.gz
-CHECKSUM=4edee38cc29f687bd0c8eb361096a455
-BUILDCHAIN=custom
+CHECKSUM=0a99bbb5f6c26a9c1d7ab17ea35d4e6f
 
+BUILDCHAIN=cmake
 INSTALL_PATH=${INSTALL_PATH}/${NAME}
 
-package_specific_build() {
-    cp -rf ${UNPACK_PATH}/${EXTRACTSTO}/* .
-
-    patch -p1 --forward < ${ORIG_DIR}/${PROJECT}/patches/SuperLU_DIST_4.1.patch || true
-
-    mv make.inc make.inc.bak
-    #create make.inc
-echo "#  The machine (platform) identifier to append to the library names
-#
-PLAT            = _x86_64
-
-#
-#  The name of the libraries to be created/linked to
-#
-DSuperLUroot    = ${INSTALL_PATH}
-DSUPERLULIBNAME = libsuperlu_dist
-DSUPERLULIBDIR  = \$(DSuperLUroot)/lib
-DSUPERLULIB     = \$(DSUPERLULIBDIR)/\$(DSUPERLULIBNAME)
-
-#
-BLASDEF         = -DUSE_VENDOR_BLAS
-BLASLIB         = -lblas
-
-## parmetis 4.x.x
-METISLIB        = -L${PARMETIS_DIR}/lib -lmetis
-PARMETISLIB     = -L${PARMETIS_DIR}/lib -lparmetis
-I_PARMETIS      = -I${PARMETIS_DIR}/include
-
-# Define the required Fortran libraries, if you use C compiler to link
-#FLIBS          = -lpgf90 -lpgf90_rpm1
-
-# Define all the libraries
-LIBS            = \$(DSUPERLULIB) \$(BLASLIB) \$(PARMETISLIB) \$(METISLIB) \$(FLIBS)
-
-#
-#  The archiver and the flag(s) to use when building archive (library)
-#  If your system has no ranlib, set RANLIB = echo.
-#
-ARCH            = ar
-ARCHFLAGS      = cr
-RANLIB          = ranlib
-
-############################################################################
-# C compiler setup
-# CFLAGS should be set to be the C flags that include optimization
-CFLAGS          = -fPIC -std=c99 \$(I_PARMETIS) -DDEBUGlevel=0 -DPRNTlevel=1 -DPROFlevel=0
-#
-# NOOPTS should be set to be the C flags that turn off any optimization
-NOOPTS          = -fPIC -std=c99 -O0
-############################################################################
-# FORTRAN compiler setup
-FORTRAN         = \$(FC)
-#F90FLAGS      = -fast -Mipa=fast,safe
-############################################################################
-LOADER          = \$(CC)
-#LOADOPTS      = -fast
-############################################################################
-#  C preprocessor defs for compilation (-DNoChange, -DAdd_, or -DUpCase)
-#
-#  Need follow the convention of how C calls a Fortran routine.
-#
-CDEFS        = -DAdd_
-" >> make.inc
-
-    # prepare install dirs
-    mkdir -p ${INSTALL_PATH}
-    mkdir -p ${INSTALL_PATH}/lib
-    
-    # now compile superlu_dist
-    make superlulib
-    quit_if_fail "superlu_dist make superlulib failed"
-    
-    mkdir -p ${INSTALL_PATH}/include/superlu
-    cp SRC/*.h ${INSTALL_PATH}/include/superlu
-}
+CONFOPTS=" \
+    -D TPL_PARMETIS_INCLUDE_DIRS:PATH=${PARMETIS_DIR}/include \
+    -D TPL_PARMETIS_LIBRARIES:FILEPATH=${PARMETIS_DIR}/lib/libparmetis.so \
+    -D CMAKE_C_FLAGS:STRING=\"-std=c99 -fPIC\" \
+    -D BUILD_SHARED_LIBS:BOOL=ON"
 
 package_specific_register () {
     export SUPERLU_DIR=${INSTALL_PATH}
index 76a8e136c8c864dbd9755922d860d395fc6be312..22b3517524e5c4761d4a79a1d8906b0a40561f93 100644 (file)
@@ -121,10 +121,11 @@ if [ ! -z "${SUPERLU_DIR}" ]; then
     CONFOPTS="\
         ${CONFOPTS} \
           -D TPL_ENABLE_SuperLUDist:BOOL=ON \
-         -D Teuchos_ENABLE_COMPLEX:BOOL=OFF \
+          -D Teuchos_ENABLE_COMPLEX:BOOL=OFF \
           -D TPL_SuperLUDist_LIBRARIES:FILEPATH=${SUPERLU_DIR}/lib/libsuperlu_dist.so \
-          -D SuperLUDist_INCLUDE_DIRS:PATH=${SUPERLU_DIR}/include/superlu \
-          -D HAVE_SUPERLUDIST_LUSTRUCTINIT_2ARG:BOOL=ON"
+          -D SuperLUDist_INCLUDE_DIRS:PATH=${SUPERLU_DIR}/include \
+          -D HAVE_SUPERLUDIST_LUSTRUCTINIT_2ARG:BOOL=ON \
+          -D HAVE_SUPERLUDIST_ENUM_NAMESPACE:BOOL=ON"
 fi
 
 #########################################################################
@@ -135,15 +136,15 @@ CONFOPTS="${TRILINOS_CONFOPTS} \
           -D TPL_ENABLE_MPI:BOOL=ON \
           -D Trilinos_ENABLE_OpenMP:BOOL=OFF \
           -D TPL_ENABLE_TBB:BOOL=OFF \
-          -D Trilinos_ENABLE_Didasko:BOOL=ON \
+          -D Trilinos_VERBOSE_CONFIGURE:BOOL=FALSE \
           -D Trilinos_ENABLE_Sacado:BOOL=ON \
           -D Trilinos_ENABLE_Stratimikos:BOOL=ON \
           -D Trilinos_ENABLE_Belos:BOOL=ON \
           -D Trilinos_ENABLE_MueLu:BOOL=ON \
           -D Trilinos_ENABLE_Amesos2:BOOL=ON \
+          -D Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=ON \
           -D CMAKE_BUILD_TYPE:STRING=RELEASE \
           -D CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE \
-          -D Trilinos_VERBOSE_CONFIGURE:BOOL=FALSE \
           -D BUILD_SHARED_LIBS:BOOL=ON"
 
 package_specific_register () {

In the beginning the Universe was created. This has made a lot of people very angry and has been widely regarded as a bad move.

Douglas Adams


Typeset in Trocchi and Trocchi Bold Sans Serif.