1#!/bin/bash
2
3rm -f CMakeCache.txt;
4rm -rf CMakeFiles
5echo ""
6echo "WARNING: In order to get modules correctly loaded source this files, don't just execute it."
7echo ""
8EXTRA_ARGS=$@
9
10# Trilinos Path:
11#TRILINOS_PATH=${HOME}/Trilinos
12
13# Top Level Configuration Options
14TESTS=${JENKINS_DO_TESTS}
15EXAMPLES=${JENKINS_DO_EXAMPLES}
16
17CUDA=${JENKINS_DO_CUDA}
18OPENMP=${JENKINS_DO_OPENMP}
19PTHREAD=${JENKINS_DO_PTHREAD}
20SERIAL=${JENKINS_DO_SERIAL}
21
22COMPLEX=${JENKINS_DO_COMPLEX}
23
24
25#--------------------------------------------------
26#--------------------------------------------------
27
28
29# CMAKE Command structured
30#
31# Basic Options for backends (Enable OpenMP etc.)
32# \
33# Build control (flags, debug, ETI)
34# \
35# Generic CMake options
36# \
37# TPL Setup
38# \
39# Packages (on/off, tests, examples)
40
41cmake \
42-D Trilinos_ENABLE_OpenMP=${OPENMP} \
43-D Kokkos_ENABLE_Pthread=${PTHREAD} \
44-D TPL_ENABLE_CUDA=${CUDA} \
45  -D Kokkos_ENABLE_Cuda_UVM:BOOL=ON \
46-D Teuchos_ENABLE_COMPLEX=${COMPLEX} \
47\
48-D CMAKE_CXX_FLAGS="${JENKINS_EXTRA_CXX_FLAGS} -g" \
49-D KOKKOS_ARCH="${JENKINS_ARCH}" \
50-D CMAKE_C_FLAGS="${JENKINS_ARCH_C_FLAG} -g" \
51-D CMAKE_Fortran_FLAGS="${JENKINS_ARCH_C_FLAG} -g" \
52-D CMAKE_EXE_LINKER_FLAGS="${JENKINS_ARCH_C_FLAG}" \
53-D CMAKE_Fortran_COMPILER="mpif77" \
54-D HAVE_CXX_PRAGMA_WEAK:BOOL=OFF \
55-D CMAKE_AR:FILEPATH=/usr/bin/ar \
56-D CMAKE_STRIP:FILEPATH=/usr/bin/strip \
57-D CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib \
58-D Trilinos_ENABLE_EXPLICIT_INSTANTIATION:BOOL=ON \
59-D Trilinos_ENABLE_DEBUG:BOOL=${JENKINS_DO_DEBUG} \
60\
61-D CMAKE_INSTALL_PREFIX:PATH="$PWD/../install/" \
62-D Trilinos_ENABLE_INSTALL_CMAKE_CONFIG_FILES:BOOL=ON \
63-D CMAKE_BUILD_TYPE:STRING=RELEASE \
64-D CMAKE_VERBOSE_MAKEFILE:BOOL=OFF \
65-D CMAKE_SKIP_RULE_DEPENDENCY=ON \
66-D Trilinos_ENABLE_CHECKED_STL:BOOL=OFF \
67-D Trilinos_ENABLE_ALL_PACKAGES:BOOL=OFF \
68-D Trilinos_ENABLE_ALL_OPTIONAL_PACKAGES:BOOL=OFF \
69-D BUILD_SHARED_LIBS:BOOL=OFF \
70-D DART_TESTING_TIMEOUT:STRING=200 \
71-D Trilinos_WARNINGS_AS_ERRORS_FLAGS:STRING="" \
72-D Trilinos_ENABLE_CXX11=ON \
73  -D Trilinos_CXX11_FLAGS:STRING="--std=c++11" \
74\
75-D TPL_ENABLE_MPI=ON \
76  -D MPI_EXEC_POST_NUMPROCS_FLAGS:STRING="-bind-to;socket;-map-by;socket" \
77-D TPL_ENABLE_BinUtils=OFF \
78-D TPL_ENABLE_SuperLU=OFF \
79  -D TPL_SuperLU_LIBRARIES:STRING="${SUPERLU_ROOT}/lib/libsuperlu.a" \
80  -D TPL_SuperLU_INCLUDE_DIRS:STRING="${SUPERLU_ROOT}/include" \
81-D TPL_ENABLE_BLAS=ON \
82   -D TPL_BLAS_LIBRARIES:PATH="${BLAS_LIBRARIES}" \
83-D TPL_ENABLE_LAPACK=ON \
84   -D TPL_LAPACK_LIBRARIES:PATH="${LAPACK_LIBRARIES}" \
85-D TPL_ENABLE_Boost=ON \
86   -D Boost_INCLUDE_DIRS:PATH="${BOOST_ROOT}/include" \
87   -D Boost_LIBRARY_DIRS:PATH="${BOOST_ROOT}/lib" \
88-D TPL_ENABLE_BoostLib=ON \
89   -D BoostLib_INCLUDE_DIRS:PATH="${BOOST_ROOT}/include" \
90   -D BoostLib_LIBRARY_DIRS:PATH="${BOOST_ROOT}/lib" \
91-D TPL_ENABLE_Netcdf=ON \
92  -D Netcdf_INCLUDE_DIRS:PATH="${NETCDF_ROOT}/include" \
93  -D Netcdf_LIBRARY_DIRS:PATH="${NETCDF_ROOT}/lib" \
94  -D TPL_Netcdf_LIBRARIES:PATH="${NETCDF_ROOT}/lib/libnetcdf.a;${HDF5_ROOT}/lib/libhdf5_hl.a;${HDF5_ROOT}/lib/libhdf5.a;${ZLIB_ROOT}/lib/libz.a;${PNETCDF_ROOT}/lib/libpnetcdf.a" \
95  -D TPL_Netcdf_PARALLEL:BOOL=ON \
96-D TPL_ENABLE_HDF5=ON \
97  -D HDF5_INCLUDE_DIRS:PATH="${HDF5_ROOT}/include" \
98  -D TPL_HDF5_LIBRARIES:PATH="${HDF5_ROOT}/lib/libhdf5_hl.a;${HDF5_ROOT}/lib/libhdf5.a;${ZLIB_ROOT}/lib/libz.a" \
99-D TPL_ENABLE_Zlib=ON \
100  -D Zlib_INCLUDE_DIRS:PATH="${ZLIB_ROOT}/include" \
101  -D TPL_Zlib_LIBRARIES:PATH="${ZLIB_ROOT}/lib/libz.a" \
102-D TPL_ENABLE_DLlib=ON \
103\
104\
105-D Trilinos_ENABLE_Tpetra=ON \
106  -D Tpetra_INST_SERIAL:BOOL=${SERIAL} \
107  -D Tpetra_INST_OPENMP:BOOL=${OPENMP} \
108  -D Tpetra_INST_PTHREAD:BOOL=${PTHREAD} \
109  -D Tpetra_INST_CUDA:BOOL=${CUDA} \
110  -D Tpetra_INST_COMPLEX_DOUBLE:BOOL=${COMPLEX} \
111  -D Tpetra_ENABLE_TESTS:BOOL=${TESTS} \
112  -D Tpetra_ENABLE_EXAMPLES:BOOL=${EXAMPLES} \
113\
114\
115$EXTRA_ARGS \
116${TRILINOS_PATH}
117
118