CMakeLists.txt 3.58 KB
Newer Older
1
#install headers
2
3

dune_add_library("duneamdis" NO_EXPORT
4
    AdaptBase.cpp
5
    AdaptInfo.cpp
6
7
    AdaptInstationary.cpp
    AdaptStationary.cpp
8
9
    AMDiS.cpp
    Initfile.cpp
10
    ProblemInstatBase.cpp
11
    # ProblemInstat.cpp
12
    ProblemStat.cpp
13
    StandardProblemIteration.cpp
14
15
    #linear_algebra/istl/SystemMatrix.cpp
    #linear_algebra/istl/SystemVector.cpp
16
17
    linear_algebra/mtl/SystemMatrix.cpp
    linear_algebra/mtl/SystemVector.cpp
18
    utility/Filesystem.cpp
19
20
    )
add_dune_alberta_flags("duneamdis" OBJECT USE_GENERIC)
21
target_compile_definitions("duneamdis" PUBLIC AMDIS_BACKEND_MTL=1)
22
target_compile_options("duneamdis" PUBLIC -ftemplate-backtrace-limit=0 -Wall -pedantic -Wno-unused-parameter)
23

Praetorius, Simon's avatar
Praetorius, Simon committed
24
find_package(MTL REQUIRED
25
             PATHS /usr/local/lib/mtl4)
26
27
28
29
30
31
32
33
34
if (MTL_FOUND)
  target_include_directories("duneamdis" PUBLIC ${MTL_INCLUDE_DIRS})
#   target_link_libraries("duneamdis" PUBLIC ${MTL_LIBRARIES})
#   target_compile_options("duneamdis" PUBLIC ${MTL_CXX_DEFINITIONS})

  set (CXX_ELEVEN_FEATURE_LIST "MOVE" "AUTO" "RANGEDFOR" "INITLIST" "STATICASSERT" "DEFAULTIMPL")
  foreach (feature ${CXX_ELEVEN_FEATURE_LIST})
      target_compile_definitions("duneamdis" PUBLIC MTL_WITH_${feature})
  endforeach ()
35

36
37
  if (HAVE_UMFPACK OR ENABLE_SUITESPARSE OR SuiteSparse_FOUND)
      target_compile_definitions("duneamdis" PUBLIC MTL_HAS_UMFPACK)
38
  endif ()
39
40
41
endif (MTL_FOUND)


42
install(FILES
43
    AdaptBase.hpp
44
    AdaptInfo.hpp
45
46
    AdaptInstationary.hpp
    AdaptStationary.hpp
47
    AMDiS.hpp
48
49
    CreatorInterface.hpp
    CreatorMap.hpp
50
51
    DirichletBC.hpp
    DirichletBC.inc.hpp
52
    FileWriter.hpp
53
54
    Flag.hpp
    Initfile.hpp
55
    LinearAlgebra.hpp
56
57
    Log.hpp
    Math.hpp
58
59
    Mesh.hpp
    OperatorEvaluation.hpp
60
61
    Operator.hpp
    Operator.inc.hpp
62
    OperatorTermBase.hpp
63
    OperatorTerm.hpp
64
65
66
67
    ProblemInstatBase.hpp
    ProblemInstat.hpp
    ProblemInstat.inc.hpp
    ProblemInterationInterface.hpp
68
    ProblemStatBase.hpp
69
70
    ProblemStat.hpp
    ProblemStat.inc.hpp
71
72
    ProblemTimeInterface.hpp
    StandardProblemIteration.hpp
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
    TermGenerator.hpp
    common/ConceptsBase.hpp
    common/ClonablePtr.hpp
    common/IndexSeq.hpp
    common/Literals.hpp
    common/Loops.hpp
    common/Mpl.hpp
    common/ScalarTypes.hpp
    common/Timer.hpp
    common/Traits.hpp
    common/TupleUtility.hpp
    common/Utility.hpp
    common/ValueCategory.hpp
    linear_algebra/LinearAlgebraBse.hpp
    linear_algebra/LinearSolverInterface.hpp
    linear_algebra/PreconditionerInterface.hpp
    linear_algebra/RunnerInterface.hpp
    linear_algebra/SolverInfo.hpp
91
92
    linear_algebra/istl/DOFMatrix.hpp
    linear_algebra/istl/DOFVector.hpp
93
94
95
    linear_algebra/istl/ISTL_Preconditioner.hpp
    linear_algebra/istl/ISTLRunner.hpp
    linear_algebra/istl/ISTL_Solver.hpp
96
97
98
99
    linear_algebra/istl/LinearSolver.hpp
    linear_algebra/istl/Preconditioner.hpp
    linear_algebra/istl/SystemMatrix.hpp
    linear_algebra/istl/SystemVector.hpp
100
101
102
103
104
    linear_algebra/mtl/BITL_Preconditioner.hpp
    linear_algebra/mtl/BITL_Solver.hpp
    linear_algebra/mtl/BlockMTLMatrix.hpp
    linear_algebra/mtl/BlockMTLVector.hpp
    linear_algebra/mtl/Copy.hpp
105
106
    linear_algebra/mtl/DOFMatrix.hpp
    linear_algebra/mtl/DOFVector.hpp
107
108
109
    linear_algebra/mtl/ITL_Preconditioner.hpp
    linear_algebra/mtl/ITL_Solver.hpp
    linear_algebra/mtl/KrylovRunner.hpp
110
    linear_algebra/mtl/LinearSolver.hpp
111
112
113
    linear_algebra/mtl/Mapper.hpp
    linear_algebra/mtl/MTLDenseVector.hpp
    linear_algebra/mtl/Preconditioner.hpp
114
115
    linear_algebra/mtl/SystemMatrix.hpp
    linear_algebra/mtl/SystemVector.hpp
116
    linear_algebra/mtl/UmfpackRunner.hpp
117
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/dune/amdis)