This repository was archived by the owner on Nov 25, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
133 lines (105 loc) · 3.59 KB
/
CMakeLists.txt
File metadata and controls
133 lines (105 loc) · 3.59 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
TRIBITS_PACKAGE(Epetra)
SET(${PACKAGE_NAME}_VERSION "3.7d")
#
# Exception added to deal with fixed form Fortran code on XL
#
TRIBITS_ADD_SHOW_DEPRECATED_WARNINGS_OPTION()
if("${CMAKE_Fortran_COMPILER_ID}" MATCHES "XL|VisualAge")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -qfixed=72 -qxlines")
endif()
#
# Add Debug Option
#
TRIBITS_ADD_DEBUG_OPTION()
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_ABC
HAVE_EPETRA_ARRAY_BOUNDS_CHECK
"Enable array bounds checking on Epetra objects."
${${PROJECT_NAME}_ENABLE_DEBUG} )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_FORMAT_IO
HAVE_FORMAT_IO
"Enable format IO capability."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_WARNING_MESSAGES
HAVE_WARNING_MESSAGES
"Enable building with warning messages."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_FATAL_MESSAGES
HAVE_FATAL_MESSAGES
"Enable printing of fatal error messages."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_THREADS
HAVE_THREADS
"Enable threading support."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_Fortran
HAVE_FORTRAN_SUPPORT
"Enable Fortran support in Epetra."
${${PROJECT_NAME}_ENABLE_Fortran} )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_DISABLE_READY_SEND_IN_DO_POSTS
EPETRA_NO_READY_SEND_IN_DO_POSTS
"Replace (barrier+MPI_Rsend) with MPI_Send in Epetra_MpiDistributor::DoPosts (EXPERIMENTAL)."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(Trilinos_NO_32BIT_GLOBAL_INDICES
EPETRA_NO_32BIT_GLOBAL_INDICES
"If option is enabled, 32 bit global indices are disabled. One must use long long global indices only for maps."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(Trilinos_NO_64BIT_GLOBAL_INDICES
EPETRA_NO_64BIT_GLOBAL_INDICES
"If option is enabled, 64 bit global indices are disabled. One must use int global indices only for maps."
OFF )
IF(TPL_ENABLE_MKL)
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_MKL_SPARSE
Epetra_ENABLE_MKL_SPARSE
"If option is enabled, MKL functions will be used for sparse operations in Epetra."
OFF )
IF(Epetra_ENABLE_MKL_SPARSE)
TRIBITS_INCLUDE_DIRECTORIES(${TPL_MKL_INCLUDE_DIRS})
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_DISABLE_MKL_SPARSE_MM
Epetra_DISABLE_MKL_SPARSE_MM
"If option is turned on, MKL matrix-matrix functions will not be used for sparse operations in Epetra. This does not affect the usage of MKL matrix-vector functions."
OFF )
ENDIF()
ELSE()
IF(Epetra_ENABLE_MKL_SPARSE)
MESSAGE(FATAL_ERROR "Epetra_ENABLE_MKL_SPARSE requires that MKL TPL be enabled. Either enable the TPL or do not enable Epetra_ENABLE_MKL_SPARSE.")
ENDIF()
ENDIF()
ADD_SUBDIRECTORY(src)
TRIBITS_ADD_TEST_DIRECTORIES(test)
TRIBITS_ADD_EXAMPLE_DIRECTORIES(example)
#
# Exclude files for source package.
#
TRIBITS_EXCLUDE_FILES(
doc
example/C_wrappers
example/Fortran
example/ImportExport
example/InverseIteration
example/MapColoring
example/ReducedLinearProblem
example/petra_howle
example/petra_nonlinear
example/petra_transpose
src/Epetra_FastCrsMatrix.cpp
src/Epetra_FastCrsMatrix.h
src/Epetra_InvOperator.cpp
src/Epetra_LinearProblemRedistor.cpp
src/Epetra_LinearProblemRedistor.h
src/stamp-h.in
src/xxemacs
test/BasicPerfTest/runSummary
test/Comm/simple_mpi.cpp
test/Comm/threaded_Makefile
test/Comm/threaded_main.cpp
test/EpetraBenchmarkTest
test/LinearProblemRedistor
test/Makefile.template
test/Map/c_main.c
test/MultiVector/Makefile.purify
test/OSKI
test/VbrMatrix/Suppressions.in
test/Vector/Makefile.purify
test/testAll.*
)
TRIBITS_PACKAGE_POSTPROCESS()