forked from flow123d/flow123d
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathconfig.cmake.template
More file actions
134 lines (105 loc) · 4.52 KB
/
config.cmake.template
File metadata and controls
134 lines (105 loc) · 4.52 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
### PETSC library ###################################################################
# The Flow123 requires PETSC library (3.4.x), you have to set
# the location of PETSC and used PETSC architecture unless you
# would to use system wide settings.
# e.g.
#set(PETSC_DIR "$ENV{HOME}/local/petsc")
#set(PETSC_ARCH "linux-gcc-dbg")
# If PETSC are found but do not compile, it is probably due to some undefined references (usually nonstandard compiler libraries)
# see file: BUILD_DIR/CMakeFiles/CMakeError.log
# and set following variable to add missing libraries using -L and -l parameters.
#
# e.g. Some PETSC installations have missing pthread library. So we use (assuming libpthread.a placed in /usr/lib):
# set( PETSC_ADDITIONAL_LIBS "-lpthread")
# If PETSC are not found we try to install them automatically.
# Options for PETSC installer:
#
# PETSC_INSTALL_MPI_DIR - pass MPI to PETSC configure
# PETSC_INSTALL_LAPACK_DIR - pass Lapack to PETSC configure
#
# PETSC_INSTALL_CONFIG - possible values:
# mini - only petsc + necessary MPI, BLAS, LAPACK
# flow123d_mini - mini + metis + parmetis
# bddcml - flow123d_mini + mumps + scalapack + blacs
# full - bddcml + hypre + blopex + umfpack + sundials
#
# PETSC_INSTALL_OPTIONS - additional options used as parameters to configure.py,
#
# example:
# set(PETSC_INSTALL_CONFIG "bddcml")
# set(PETSC_INSTALL_OPTIONS "--download-hypre=yes")
### BDDCML library #############################################################
# BDDCML_ROOT - root directory of BDDCML library
# tested with version 2.2
# If BDDCML_ROOT is set and BDDCML library is not found it is installed automatically.
# If the variable is unset, BDDCML is not used.
# Note: For automatic installation you need MUMPS and ScaLapack, this can be automatically installed with PETSC
# if you set PETSC_CONFIG=bddcml.
#
# example:
# set(BDDCML_ROOT "$ENV{HOME}/local/BDDCML/bddcml-2.2")
### Python setting ###############################################################
# USE_PYTHON - only use python if this is set to "yes"
# We add python library only on explicit request since it leads to tons of errors when debugging with valgrind.
#
# set(USE_PYTHON "yes")
# PYTHON_COPY - make copy of python files, necessary for release builds
# set(PYTHON_COPY "yes")
### Boost ######################
# Boost_FORCE_REBUILD - if set, force to build Boost even if there are some in the system
#
#set(Boost_FORCE_REBUILD "yes")
### Install Prefix ########################
#
# Root directory of Flow123d installation. Default is ${HOME}/local/Flow123d for Linux and
# C:\Program Files\Flow123d for Windows.
#
# set(CMAKE_INSTALL_PREFIX "${HOME}/flow123d"
### Build setting ####################################################################
### verbose mode ####
# option to produce more verbose compiling
# for the same result you can call make with VERBOSE=1
# e.g.
# make VERBOSE=1 all
#set(CMAKE_VERBOSE_MAKEFILE true)
### set compiler ###
# g++ is automatically detected and used
#
# Clang can not be used without some modifications in Armadillo.
# It is worth to try.
# set( CMAKE_CXX_COMPILER "clang++")
### USING CCACHE ###
# If you have installed 'ccache' package, you can enjoy faster builds by setting
# variable CCACHE_CXX_COMPILER to "ccache __your_favourite_c++_compiler__".
# The helper script is created in the build directory.
#
# ccache works even if you use "make clean-all" command (that's the main advantage).
# Just the first time build with ccache is slower.
# To clean the ccache files, use command:
# $ ccache -C
# More info and download at: http://ccache.samba.org/
#
# set (CCACHE_CXX_COMPILER "ccache /usr/bin/c++")
### Compiler flags ####
# There are two predefined configurations: "debug" and "release"
# "debug" set flags: "-g -DFlow123d_DEBUG"
# "release" set flags: "-O3 -DDEBUG_PROFILER -DARMA_NO_DEBUG "
#
set(FLOW_BUILD_TYPE debug)
# you can override these settings through variable FLOW_CC_FLAGS
#
# Flow recognize following definitions:
# Flow123d_NODEBUG - all debug options off
# Flow123d_DEBUG - all debug options on
# DEBUG_MESSAGES
# DEBUG_ASSERTS
# DEBUG_PROFILER
# HAVE_CXX11 - support for requested C++11 features (constexpr)
#
# example:
#set(FLOW_CC_FLAGS "-O3 -DFlow123d_NODEBUG -pg")
### External Projects directory ##########################################################
#
# The directory where possible external projects should be stored and built.
# The default location is ${PROJECT_SOURCE_DIR}/external_projects.
#set(EXTERNAL_PROJECT_DIR "")