CMakeLists.txt 1.29 KB
Newer Older
Tobias Lasser's avatar
Tobias Lasser committed
1
2
# list all the headers of the module
set(MODULE_HEADERS
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    Residual.h
    LinearResidual.h
    Functional.h
    L0PseudoNorm.h
    L1Norm.h
    L2NormPow2.h
    WeightedL2NormPow2.h
    LInfNorm.h
    Huber.h
    PseudoHuber.h
    Quadric.h
    EmissionLogLikelihood.h
    TransmissionLogLikelihood.h
    Constraint.h
Andi Braimllari's avatar
Andi Braimllari committed
17
    WeightedL1Norm.h
18
)
Tobias Lasser's avatar
Tobias Lasser committed
19
20
21

# list all the code files of the module
set(MODULE_SOURCES
22
23
24
25
26
27
28
29
30
31
32
33
34
35
    Residual.cpp
    LinearResidual.cpp
    Functional.cpp
    L0PseudoNorm.cpp
    L1Norm.cpp
    L2NormPow2.cpp
    WeightedL2NormPow2.cpp
    LInfNorm.cpp
    Huber.cpp
    PseudoHuber.cpp
    Quadric.cpp
    EmissionLogLikelihood.cpp
    TransmissionLogLikelihood.cpp
    Constraint.cpp
Andi Braimllari's avatar
Andi Braimllari committed
36
    WeightedL1Norm.cpp
37
38
39
40
41
)

list(APPEND MODULE_PUBLIC_DEPS elsa_core elsa_logging elsa_operators)
list(APPEND MODULE_PRIVATE_DEPS)

42
ADD_ELSA_MODULE(
43
44
45
46
47
    functionals "${MODULE_HEADERS}" "${MODULE_SOURCES}" INSTALL_DIR PUBLIC_DEPS ${MODULE_PUBLIC_DEPS}
    PRIVATE_DEPS ${MODULE_PRIVATE_DEPS}
)

if(ELSA_BUILD_PYTHON_BINDINGS)
48
    GENERATE_BINDINGS(
49
50
51
        ${ELSA_MODULE_TARGET_NAME} bind_${ELSA_MODULE_NAME}.cpp
        ${PROJECT_SOURCE_DIR}/tools/bindings_generation/hints/${ELSA_MODULE_NAME}_hints.cpp ${MODULE_SOURCES}
    )
Nikola Dinev's avatar
Nikola Dinev committed
52
endif()
David Frank's avatar
David Frank committed
53
 
54
write_module_config(${ELSA_MODULE_NAME} DEPENDENCIES elsa_core elsa_logging elsa_operators)