Revision cf5923cc Protocol/CMakeLists.txt
Protocol/CMakeLists.txt | ||
---|---|---|
16 | 16 |
# so that the generated files are found |
17 | 17 |
include_directories("${PROJECT_BINARY_DIR}") |
18 | 18 |
|
19 |
#SET(CMAKE_INSTALL_PREFIX "../../" CACHE PATH "Install path prefix" FORCE INTERNAL ) |
|
20 |
|
|
19 | 21 |
# add the Google protobuf parts |
20 | 22 |
find_package(Protobuf REQUIRED) |
21 | 23 |
include_directories(${PROTOBUF_INCLUDE_DIRS}) |
... | ... | |
23 | 25 |
set (PROTOBUF_IMPORT_DIRS specification) |
24 | 26 |
PROTOBUF_GENERATE_CPP(PROTO_SRCS PROTO_HDRS specification/basic_types.proto specification/eye_data.proto specification/gaze2d_data.proto specification/gaze3d_data.proto specification/messages.proto) |
25 | 27 |
|
28 |
#this dummy list will make all header files appear if you use qtcreator to open the cmake project |
|
29 |
#file(GLOB HEADER_LIST RELATIVE ${CMAKE_CURRENT_BINARY_DIR}/ *.h ) |
|
30 |
|
|
26 | 31 |
# add the library |
27 | 32 |
add_library(GazeTkProtocol STATIC src_cpp/protocol.cc ${PROTO_SRCS} ${PROTO_HDRS}) |
28 | 33 |
target_link_libraries(GazeTkProtocol ${PROTOBUF_LIBRARIES}) |
34 |
|
|
35 |
install(TARGETS GazeTkProtocol |
|
36 |
RUNTIME DESTINATION bin COMPONENT libraries |
|
37 |
LIBRARY DESTINATION lib COMPONENT libraries |
|
38 |
PUBLIC_HEADER DESTINATION include COMPONENT libraries |
|
39 |
ARCHIVE DESTINATION lib/static COMPONENT libraries) |
|
40 |
|
|
41 |
install(DIRECTORY src_cpp/ DESTINATION include/GazeTkProtocol |
|
42 |
FILES_MATCHING PATTERN "*.h") |
|
43 |
|
|
44 |
# |
|
45 |
# Installing the header files. |
|
46 |
# Looks a little bit complicated, the headers are generated, so we have to search |
|
47 |
# for them. However, if we do so, the install command creates empty subdirs according |
|
48 |
# to initial structure. By excluding them, this is prohibited. Nicer solutions welcome! |
|
49 |
# |
|
50 |
install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/ DESTINATION include/GazeTkProtocol |
|
51 |
FILES_MATCHING PATTERN "*.h" |
|
52 |
PATTERN "Win32" EXCLUDE |
|
53 |
PATTERN "GazeTkProtocol.dir" EXCLUDE |
|
54 |
PATTERN "Debug" EXCLUDE |
|
55 |
PATTERN "Release" EXCLUDE |
|
56 |
PATTERN "CMakeFiles" EXCLUDE |
|
57 |
) |
|
58 |
|
Also available in: Unified diff