blob: f437e687ab6c7d655cb6529d45a2c9395168d397 (
plain)
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
|
file(GLOB_RECURSE SOURCES "src/*.cpp")
file(GLOB_RECURSE TESTS "src/*.test.cpp")
list(REMOVE_ITEM SOURCES ${TESTS})
###
### enco_core is built as a shared library to support "interactive debugging".
###
### interactive debugging helpers are stripped during linking when enco_core is
### built as a static library
###
add_library(enco_core SHARED ${SOURCES})
target_include_directories(enco_core PRIVATE src)
target_include_directories(enco_core PUBLIC include)
target_link_libraries(enco_core PUBLIC enco_intf_cmdline)
target_link_libraries(enco_core PUBLIC coco_core)
target_link_libraries(enco_core PUBLIC coco_generic)
# These libraries are linked for internal use, and thus does not appear in public headers.
target_link_libraries(enco_core PRIVATE pp)
target_link_libraries(enco_core PRIVATE morph)
target_link_libraries(enco_core PRIVATE stdex)
# Let's use nncc project-wide build options
target_link_libraries(enco_core PRIVATE nncc_common)
nnas_find_package(GTest QUIET)
if(NOT GTest_FOUND)
return()
endif(NOT GTest_FOUND)
add_executable(enco_core_test ${TESTS})
target_include_directories(enco_core_test PRIVATE src)
target_link_libraries(enco_core_test gtest_main)
target_link_libraries(enco_core_test enco_core)
target_link_libraries(enco_core_test morph)
add_test(enco_core_test enco_core_test)
|