@@ -82,24 +82,40 @@ file(GLOB_RECURSE FRI_SOURCES RELATIVE ${CMAKE_CURRENT_BINARY_DIR}
82
82
${CMAKE_CURRENT_BINARY_DIR} /${FRIClient_SDK_NAME} /src/protobuf_gen/*.pb.c
83
83
)
84
84
85
+ # add FRI library target
85
86
add_library (FRIClient SHARED
86
87
${FRI_SOURCES}
88
+ )
89
+
90
+ # add nanopb library target under common namespace
91
+ add_library (nanopb STATIC
87
92
${NANOPB_SOURCES}
88
93
)
89
94
90
95
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
91
97
92
98
target_include_directories (FRIClient
93
99
PUBLIC
94
100
$<INSTALL_INTERFACE:include >
95
101
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR} /${FRIClient_SDK_NAME} /include >
96
102
PRIVATE
97
103
${CMAKE_CURRENT_BINARY_DIR} /${FRIClient_SDK_NAME} /src/base
98
- ${CMAKE_CURRENT_BINARY_DIR} /${FRIClient_SDK_NAME} /src/nanopb-${NANOPB_VERSION}
99
104
${CMAKE_CURRENT_BINARY_DIR} /${FRIClient_SDK_NAME} /src/protobuf_gen
100
105
${CMAKE_CURRENT_BINARY_DIR} /${FRIClient_SDK_NAME} /src/protobuf
101
106
)
102
107
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
+
103
119
if (MSVC )
104
120
target_compile_options (FRIClient
105
121
PRIVATE
@@ -136,7 +152,7 @@ write_basic_package_version_file(
136
152
COMPATIBILITY SameMajorVersion
137
153
)
138
154
139
- install (TARGETS FRIClient
155
+ install (TARGETS FRIClient nanopb
140
156
EXPORT FRIClientTargets
141
157
LIBRARY DESTINATION lib
142
158
INCLUDES DESTINATION include
@@ -147,6 +163,13 @@ install(
147
163
DESTINATION include
148
164
)
149
165
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
+
150
173
install (EXPORT FRIClientTargets
151
174
FILE FRIClientConfig.cmake
152
175
NAMESPACE FRIClient::
0 commit comments