Newer
Older

Christian Godenschwager
committed
###############################################################################
## ##
## Build templates ##
## ##
###############################################################################
.build_template: &build_definition
script:
- export NUM_CORES=$(nproc --all)
- export MAX_BUILD_CORES=$(( $(awk '( $1 == "MemTotal:" ) { print $2 }' /proc/meminfo) / ( 4 * 1024 * 1024 ) ))
- "[[ $MAX_BUILD_CORES -lt $NUM_CORES ]] && export NUM_BUILD_CORES=$MAX_BUILD_CORES || export NUM_BUILD_CORES=$NUM_CORES"
- export
- $CXX --version
- cmake --version
- ccache --version
- mpirun --version
- export CCACHE_BASEDIR=$CI_PROJECT_DIR
- mkdir $CI_PROJECT_DIR/build
- cd $CI_PROJECT_DIR/build
- if dpkg --compare-versions `ompi_info | head -2 | tail -1 | sed 's/[^0-9.]*\([0-9.]*\).*/\1/'` ge 1.10; then export MPIEXEC_PREFLAGS="--allow-run-as-root" ; fi
- cmake .. -DWALBERLA_BUFFER_DEBUG=$WALBERLA_BUFFER_DEBUG -DWALBERLA_BUILD_TESTS=ON -DWALBERLA_BUILD_BENCHMARKS=ON -DWALBERLA_BUILD_TUTORIALS=ON -DWALBERLA_BUILD_WITH_MPI=$WALBERLA_BUILD_WITH_MPI -DWALBERLA_BUILD_WITH_CUDA=$WALBERLA_BUILD_WITH_CUDA -DWALBERLA_BUILD_WITH_PYTHON=$WALBERLA_BUILD_WITH_PYTHON -DWALBERLA_BUILD_WITH_OPENMP=$WALBERLA_BUILD_WITH_OPENMP -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -DMPIEXEC_PREFLAGS=$MPIEXEC_PREFLAGS -DWALBERLA_DOUBLE_ACCURACY=$WALBERLA_DOUBLE_ACCURACY -DWARNING_ERROR=ON

Christian Godenschwager
committed
- cmake . -LAH
- make -j $NUM_BUILD_CORES -l $NUM_CORES
- ctest -LE $CTEST_EXCLUDE_LABELS -C $CMAKE_BUILD_TYPE --output-on-failure -j $NUM_CORES
tags:
- docker

Christian Godenschwager
committed
.build_serial_template: &build_serial_definition
<<: *build_definition
variables:
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "OFF"
WALBERLA_BUILD_WITH_OPENMP: "OFF"
CMAKE_BUILD_TYPE: "Release"
WALBERLA_BUFFER_DEBUG: "OFF"
WALBERLA_DOUBLE_ACCURACY: "ON"

Christian Godenschwager
committed
.build_mpionly_template: &build_mpionly_definition
<<: *build_definition
variables:
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "ON"
WALBERLA_BUILD_WITH_OPENMP: "OFF"
CMAKE_BUILD_TYPE: "Release"
WALBERLA_BUFFER_DEBUG: "OFF"
WALBERLA_DOUBLE_ACCURACY: "ON"

Christian Godenschwager
committed
.build_hybrid_template: &build_hybrid_definition
<<: *build_definition
variables:
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "ON"
WALBERLA_BUILD_WITH_OPENMP: "ON"
OMP_NUM_THREADS: "4"
OMP_WAIT_POLICY: "PASSIVE"
CMAKE_BUILD_TYPE: "Release"
WALBERLA_BUFFER_DEBUG: "OFF"
WALBERLA_DOUBLE_ACCURACY: "ON"

Christian Godenschwager
committed
.build_serial_dbg_template: &build_serial_dbg_definition
<<: *build_definition
variables:
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "OFF"
WALBERLA_BUILD_WITH_OPENMP: "OFF"
CMAKE_BUILD_TYPE: "DebugOptimized"
WALBERLA_BUFFER_DEBUG: "OFF"
WALBERLA_DOUBLE_ACCURACY: "ON"

Christian Godenschwager
committed
.build_mpionly_dbg_template: &build_mpionly_dbg_definition
<<: *build_definition
variables:
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "ON"
WALBERLA_BUILD_WITH_OPENMP: "OFF"
CMAKE_BUILD_TYPE: "DebugOptimized"
WALBERLA_BUFFER_DEBUG: "OFF"
WALBERLA_DOUBLE_ACCURACY: "ON"

Christian Godenschwager
committed
.build_hybrid_dbg_template: &build_hybrid_dbg_definition
<<: *build_definition
variables:
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "ON"
WALBERLA_BUILD_WITH_OPENMP: "ON"
OMP_NUM_THREADS: "4"
OMP_WAIT_POLICY: "PASSIVE"
CMAKE_BUILD_TYPE: "DebugOptimized"
WALBERLA_BUFFER_DEBUG: "OFF"
WALBERLA_DOUBLE_ACCURACY: "ON"

Christian Godenschwager
committed
.build_hybrid_dbg_sp_template: &build_hybrid_dbg_sp_definition
<<: *build_definition
variables:
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "ON"
WALBERLA_BUILD_WITH_OPENMP: "ON"
OMP_NUM_THREADS: "4"
OMP_WAIT_POLICY: "PASSIVE"
CMAKE_BUILD_TYPE: "DebugOptimized"
WALBERLA_BUFFER_DEBUG: "OFF"
WALBERLA_DOUBLE_ACCURACY: "OFF"

Christian Godenschwager
committed
###############################################################################
## ##

Christian Godenschwager
committed
## ##
###############################################################################

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
only:
- triggers

Christian Godenschwager
committed
tags:
intel_15_mpionly:
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
only:
- triggers

Christian Godenschwager
committed
tags:
intel_15_hybrid:
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
only:
- triggers

Christian Godenschwager
committed
tags:
intel_15_serial_dbg:
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
only:
- triggers

Christian Godenschwager
committed
tags:
intel_15_mpionly_dbg:
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
only:
- triggers

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
intel_15_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:15
only:
- triggers
intel_16_serial:
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
only:
- triggers

Christian Godenschwager
committed
tags:
intel_16_mpionly:
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
only:
- triggers

Christian Godenschwager
committed
tags:
intel_16_hybrid:
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
only:
- triggers

Christian Godenschwager
committed
tags:
intel_16_serial_dbg:
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
only:
- triggers

Christian Godenschwager
committed
tags:
intel_16_mpionly_dbg:
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
only:
- triggers

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
only:
- triggers

Christian Godenschwager
committed
tags:
intel_16_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:16
only:
- triggers

Christian Godenschwager
committed
tags:
intel_17_serial:
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
only:
- triggers

Christian Godenschwager
committed
tags:
intel_17_mpionly:
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17
only:
- triggers

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/intel:17

Christian Godenschwager
committed
tags:

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.7

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.7

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.7

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.7

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.7

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.7
tags:
- docker
gcc_4.7_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.7
only:
- triggers
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.8

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.8

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.8

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.8

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.8

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.8

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
gcc_4.8_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.8
only:
- triggers
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.9

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.9

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.9

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.9

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.9

Christian Godenschwager
committed
only:
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.9
only:
- triggers
tags:
- docker
gcc_4.9_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:4.9

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
only:
- triggers

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
tags:
- docker

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
only:
- triggers

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
only:
- triggers

Christian Godenschwager
committed
gcc_5_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:5
only:
- triggers

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:6

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:6

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:6
tags:
- docker
gcc_6_serial_dbg:

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:6
tags:
- docker
gcc_6_mpionly_dbg:

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:6
tags:
- docker
gcc_6_hybrid_dbg:

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:6
tags:
- docker

Christian Godenschwager
committed
gcc_6_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/gcc:6
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.4

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.4
only:
- triggers
tags:
- docker
clang_3.4_serial_dbg:

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.4

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.4
only:
- triggers
tags:
- docker
clang_3.5_serial:

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
only:
- triggers
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.5
only:
- triggers
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
only:
- triggers
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6

Christian Godenschwager
committed
only:
- triggers
clang_3.6_mpionly_dbg:
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.6
only:
- triggers
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.7

Christian Godenschwager
committed
only:
- triggers

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
only:
- triggers

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
only:
- triggers

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
only:
- triggers

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
only:
- triggers

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
only:
- triggers
clang_3.8_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.8
only:
- triggers

Christian Godenschwager
committed
<<: *build_serial_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.9

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.9

Christian Godenschwager
committed
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.9
tags:
- docker

Christian Godenschwager
committed

Christian Godenschwager
committed
<<: *build_serial_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.9
tags:
- docker

Christian Godenschwager
committed
<<: *build_mpionly_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.9
tags:
- docker

Christian Godenschwager
committed
<<: *build_hybrid_dbg_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.9
tags:
- docker
clang_3.9_hybrid_dbg_sp:
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:3.9
only:
- triggers
tags:
- docker
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:4.0
tags:
- docker
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:4.0
tags:
- docker
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:4.0
tags:
- docker
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:4.0
tags:
- docker
clang_4.0_mpionly_dbg:
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:4.0
tags:
- docker
clang_4.0_hybrid_dbg:
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:4.0
tags:
- docker
clang_4.0_hybrid_dbg_sp:

Christian Godenschwager
committed
<<: *build_hybrid_dbg_sp_definition
image: i10git.cs.fau.de:5005/walberla/buildenvs/clang:4.0
tags:
- docker

Christian Godenschwager
committed
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
###############################################################################
## ##
## Documentation ##
## ##
###############################################################################
doc:
image: walberla/buildenv-ubuntu-basic:16.04
script:
- cmake --version
- doxygen --version
- mkdir $CI_PROJECT_DIR/build
- cd $CI_PROJECT_DIR/build
- cmake ..
- cmake . -LAH
- make doc
tags:
- docker
artifacts:
paths:
- build/doc
expire_in: 1 weeks
###############################################################################
## ##
## Code analysis ##
## ##
###############################################################################
cppcheck:
image: walberla/cppcheck
script:
- cppcheck --version
- cppcheck . --max-configs=10 --enable=warning --enable=style --enable=performance --enable=portability -i src/gui/extern -i src/geometry/structured/extern -i sqlite3.c -i StackWalker.cpp -I src/ -I tests/ -I apps/ -D WALBERLA_BUILD_WITH_MPI -D WALBERLA_BUILD_WITH_METIS -D WALBERLA_BUILD_WITH_BOOST_THREAD -D WALBERLA_BUILD_WITH_PYTHON --xml 2> report.xml
- cppcheck-htmlreport --file=report.xml --report-dir=html_report --source-dir=.
artifacts:
untracked: true
only:
- triggers
tags:
- docker

Christian Godenschwager
committed
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
coverage:
image: walberla/coverage
script:
- export
- $CXX --version
- cmake --version
- gcovr --version
- mkdir build
- cd build
- if dpkg --compare-versions `ompi_info | head -2 | tail -1 | sed 's/[^0-9.]*\([0-9.]*\).*/\1/'` ge 1.10; then export MPIEXEC_PREFLAGS="--allow-run-as-root" ; fi
- cmake .. -DWALBERLA_BUILD_TESTS=ON -DWALBERLA_BUILD_BENCHMARKS=ON -DWALBERLA_BUILD_TUTORIALS=ON -DWALBERLA_BUILD_WITH_MPI=ON -DWALBERLA_BUILD_WITH_OPENMP=OFF -DCMAKE_BUILD_TYPE=Debug -DMPIEXEC_PREFLAGS=$MPIEXEC_PREFLAGS
- cmake . -LAH
- make -j 8
- ctest -LE longrun --output-on-failure -j 8_Hybrid
- cd ..
- mkdir coverage
- cd coverage
- pwd
- gcovr -r $CI_PROJECT_DIR -f ".*\\/src\\/.*" -k
- gcovr -r $CI_PROJECT_DIR -f ".*\\/src\\/.*" --html --html-details -o coverage.html -g
artifacts:
paths:
- coverage/
only:
- triggers
tags:
- docker
variables:
CXXFLAGS: "-fprofile-arcs -ftest-coverage -fPIC -O0"
LDFLAGS: "-fprofile-arcs -ftest-coverage -fPIC -O0"

Christian Godenschwager
committed
###############################################################################
## ##
## Windows Builds ##
## ##
###############################################################################

Christian Godenschwager
committed
.win_build_template: &win_build_definition
tags:
- win
script:
- export PreferredToolArchitecture=x64
- export OMP_NUM_THREADS=4
- export OMP_WAIT_POLICY="PASSIVE"
- export MSMPI_DISABLE_SHM=1
- export
- cmake --version
- mkdir build
- cd build
- cmake -LAH -DWALBERLA_BUILD_TESTS=ON -DWALBERLA_BUILD_BENCHMARKS=ON -DWALBERLA_BUILD_TUTORIALS=ON -DWALBERLA_BUILD_WITH_MPI=$WALBERLA_BUILD_WITH_MPI -DWALBERLA_BUILD_WITH_OPENMP=$WALBERLA_BUILD_WITH_OPENMP -DWALBERLA_DOUBLE_ACCURACY=$WALBERLA_DOUBLE_ACCURACY -DWARNING_ERROR=ON -G "$CMAKE_GENERATOR" ..
- MSBuild.exe walberla.sln /property:Configuration=$BUILD_CONFIGURATION /verbosity:minimal /maxcpucount:4
- ctest -LE $CTEST_EXCLUDE_LABELS -C $BUILD_CONFIGURATION --output-on-failure -j 4

Christian Godenschwager
committed
msvc-12_Hybrid_Dbg:
<<: *win_build_definition
variables:
CMAKE_GENERATOR: "Visual Studio 12 2013 Win64"
BUILD_CONFIGURATION: "DebugOptimized"
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "ON"
WALBERLA_BUILD_WITH_OPENMP: "ON"
WALBERLA_DOUBLE_ACCURACY: "ON"

Christian Godenschwager
committed
msvc-12_Hybrid_SP_Dbg:
<<: *win_build_definition
variables:
CMAKE_GENERATOR: "Visual Studio 12 2013 Win64"
BUILD_CONFIGURATION: "DebugOptimized"
CTEST_EXCLUDE_LABELS: "longrun"
WALBERLA_BUILD_WITH_MPI: "ON"
WALBERLA_BUILD_WITH_OPENMP: "ON"
WALBERLA_DOUBLE_ACCURACY: "OFF"