Skip to content

Commit 68697bc

Browse files
committed
added nanopb as target under FRIClient::
1 parent 8d5df30 commit 68697bc

File tree

1 file changed

+25
-2
lines changed

1 file changed

+25
-2
lines changed

CMakeLists.txt

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,24 +82,40 @@ file(GLOB_RECURSE FRI_SOURCES RELATIVE ${CMAKE_CURRENT_BINARY_DIR}
8282
${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/src/protobuf_gen/*.pb.c
8383
)
8484

85+
# add FRI library target
8586
add_library(FRIClient SHARED
8687
${FRI_SOURCES}
88+
)
89+
90+
# add nanopb library target under common namespace
91+
add_library(nanopb STATIC
8792
${NANOPB_SOURCES}
8893
)
8994

9095
add_library(FRIClient::FRIClient ALIAS FRIClient) # alias for anyone adding this as a submodule
96+
add_library(FRIClient::nanopb ALIAS nanopb) # alias for anyone adding this as a submodule
9197

9298
target_include_directories(FRIClient
9399
PUBLIC
94100
$<INSTALL_INTERFACE:include>
95101
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/include>
96102
PRIVATE
97103
${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/src/base
98-
${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/src/nanopb-${NANOPB_VERSION}
99104
${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/src/protobuf_gen
100105
${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/src/protobuf
101106
)
102107

108+
target_include_directories(nanopb
109+
PUBLIC
110+
$<INSTALL_INTERFACE:${FRIClient_SDK_NAME}/src/nanopb-${NANOPB_VERSION}>
111+
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/src/nanopb-${NANOPB_VERSION}>
112+
)
113+
114+
target_link_libraries(FRIClient
115+
PRIVATE
116+
nanopb
117+
)
118+
103119
if(MSVC)
104120
target_compile_options(FRIClient
105121
PRIVATE
@@ -136,7 +152,7 @@ write_basic_package_version_file(
136152
COMPATIBILITY SameMajorVersion
137153
)
138154

139-
install(TARGETS FRIClient
155+
install(TARGETS FRIClient nanopb
140156
EXPORT FRIClientTargets
141157
LIBRARY DESTINATION lib
142158
INCLUDES DESTINATION include
@@ -147,6 +163,13 @@ install(
147163
DESTINATION include
148164
)
149165

166+
install(
167+
DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${FRIClient_SDK_NAME}/src/nanopb-${NANOPB_VERSION}/
168+
DESTINATION include
169+
FILES_MATCHING
170+
PATTERN *.h
171+
)
172+
150173
install(EXPORT FRIClientTargets
151174
FILE FRIClientConfig.cmake
152175
NAMESPACE FRIClient::

0 commit comments

Comments
 (0)