-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathtarget.cmake
60 lines (53 loc) · 1.49 KB
/
target.cmake
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
set(TARGET_SRCS
src/target/target.cpp
src/target/source.cpp
src/target/include_dir.cpp
src/target/lib.cpp
src/target/build.cpp
src/target/flags.cpp
src/target/recheck_states.cpp
src/target/tasks.cpp
src/fbs/fbs_loader.cpp
src/fbs/fbs_storer.cpp
src/util/util.cpp
include/target/target.h
include/target/fbs_loader.h
include/target/path.h
include/target/util.h
)
if(${BUILDCC_BUILD_AS_SINGLE_LIB})
target_sources(buildcc PRIVATE
${TARGET_SRCS}
)
target_include_directories(buildcc PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:${BUILDCC_INSTALL_HEADER_PREFIX}>
)
target_include_directories(buildcc PRIVATE
${SCHEMA_BUILD_DIR}
)
add_dependencies(buildcc fbs_to_header)
endif()
if(${BUILDCC_BUILD_AS_INTERFACE})
m_clangtidy("target")
add_library(target
${TARGET_SRCS}
)
target_include_directories(target PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
$<INSTALL_INTERFACE:${BUILDCC_INSTALL_HEADER_PREFIX}>
)
target_link_libraries(target PUBLIC
env
command
toolchain
flatbuffers_header_only
Taskflow
)
target_include_directories(target PRIVATE
${SCHEMA_BUILD_DIR}
)
target_compile_options(target PRIVATE ${BUILD_COMPILE_FLAGS})
target_link_options(target PRIVATE ${BUILD_LINK_FLAGS})
add_dependencies(target fbs_to_header)
endif()