# SPDX-FileCopyrightText: Copyright © DuMux Project contributors, see AUTHORS.md in root folder # SPDX-License-Identifier: CC0-1.0 GXX_RELEASE_WARNING_OPTS=" \ -Wall \ -Wunused \ -Wmissing-include-dirs \ -Wcast-align \ -Wno-missing-braces \ -Wmissing-field-initializers \ -Wno-sign-compare" GXX_RELEASE_OPTS=" \ -fdiagnostics-color=always \ -fno-strict-aliasing \ -fstrict-overflow \ -fno-finite-math-only \ -DNDEBUG=1 \ -O3 \ -march=x86-64 \ -mtune=generic \ -funroll-loops \ -g0" SPECIFIC_COMPILER="" # if you want to specify a specific compiler, do it by setting (comment the above line) #SPECIFIC_COMPILER=" # -DCMAKE_C_COMPILER=/usr/bin/gcc-8 # -DCMAKE_CXX_COMPILER=/usr/bin/g++-8 #" SPECIFIC_GENERATOR="" # if you want to specify a specific make file generator (e.g. ninja), do it by setting (comment the above line) #SPECIFIC_GENERATOR=" # -DCMAKE_GENERATOR='Ninja' # -DCMAKE_MAKE_PROGRAM='/usr/bin/ninja' #" OPM_FLAGS="" # to build opm it might be necessary to set manually the following variables (comment the above line) #OPM_FLAGS=" #-DUSE_MPI=ON #" # set this to "ON" if you want to be able to have the headercheck target DUMUX_ENABLE_HEADERCHECK=OFF # DuMux Python bindings require shared libraries to be built for DuMux and upstream modules DUMUX_ENABLE_PYTHON_BINDINGS="-DDUNE_ENABLE_PYTHONBINDINGS=ON -DBUILD_SHARED_LIBS=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON" #DUMUX_ENABLE_PYTHON_BINDINGS="" # set multithreading backend, e.g. OpenMP,TBB,Cpp,Kokkos,Serial # if left empty, it is automatically set by cmake DUMUX_MULTITHREADING_BACKEND="" #DUMUX_MULTITHREADING_BACKEND="-DDUMUX_MULTITHREADING_BACKEND=OpenMP" # for debug opts you can set DCMAKE_BUILD_TYPE to "Debug" or "RelWithDebInfo" # you can also do this in any of the CMakeLists.txt in Dumux # just rerun cmake again afterwards (run cmake <path-to-build-dir>) CMAKE_FLAGS="$SPECIFIC_COMPILER $SPECIFIC_GENERATOR $OPM_FLAGS -DCMAKE_CXX_FLAGS_RELEASE='$GXX_RELEASE_OPTS $GXX_RELEASE_WARNING_OPTS' -DCMAKE_CXX_FLAGS_DEBUG='-O0 -g -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-sign-compare' -DCMAKE_CXX_FLAGS_RELWITHDEBINFO='$GXX_RELEASE_OPTS $GXX_RELEASE_WARNING_OPTS -g -ggdb -Wall' -DCMAKE_BUILD_TYPE=Release -DENABLE_HEADERCHECK=$DUMUX_ENABLE_HEADERCHECK $DUMUX_ENABLE_PYTHON_BINDINGS $DUMUX_MULTITHREADING_BACKEND "