Commit fbb4241
Release 0.2.1: fix Conan cmake_build_modules + namespaced subdir aliases (#91)
* feat(cmake): add namespaced plotjuggler_core:: ALIAS targets
Build-tree ALIASes mirror the install-tree EXPORT_NAMEs (base, datastore,
plugin_sdk, plugin_host) so consumers can write the same
target_link_libraries call against plotjuggler_core::* regardless of
whether they pick up plotjuggler_core via add_subdirectory() or via
find_package(plotjuggler_core CONFIG REQUIRED).
Without these aliases, subdirectory-mode consumers had to use the
non-namespaced pj_base / pj_plugin_sdk / pj_plugin_host names while
find_package consumers got plotjuggler_core::base / ::plugin_sdk /
::plugin_host. Two ways to express the same link forced every consumer
to write a compatibility shim. ALIAS targets are the canonical CMake
idiom for this exact build-tree / install-tree parity case
(see CMake's importing-exporting guide).
Pure addition; no existing target name is removed.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* fix(conan): aggregate cmake_build_modules at package level
Conan 2's CMakeDeps generator only aggregates cmake_build_modules
declared at the package level (self.cpp_info), not at component level.
The previous declaration on the sdk component was silently dropped:
plotjuggler_core_BUILD_MODULES_PATHS_RELEASE ended up empty in the
generated <pkg>-release-<arch>-data.cmake, PjPluginManifest.cmake was
never include()d after find_package() returned, and consumers that
called pj_emit_plugin_manifest() saw "Unknown CMake command".
Move the property to self.cpp_info. Documented behavior, per the Conan
CMakeDeps reference: "This property cannot be set in the components,
only in the root self.cpp_info."
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* chore: bump version to 0.2.1
Updates conanfile.py recipe version and CMakeLists.txt
PJ_PACKAGE_VERSION in lockstep so the Conan-published version
and the installed CMake package version stay coherent.
The Release workflow validates conanfile.py vs the tag before
publishing to cloudsmith and creating the GitHub release.
0.2.1 contents (additive, no breaking changes vs 0.2.0):
- fix(conan): cmake_build_modules now properly aggregated at
package level — PjPluginManifest.cmake auto-include()s after
find_package() so pj_emit_plugin_manifest() works without
consumer-side workarounds.
- feat(cmake): build-tree plotjuggler_core::* ALIAS targets
(base, datastore, plugin_sdk, plugin_host) for subdirectory-
mode / find_package consumer parity.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Davide Faconti <dfaconti@aurynrobotics.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent db4dcf1 commit fbb4241
5 files changed
Lines changed: 20 additions & 7 deletions
File tree
- pj_base
- pj_datastore
- pj_plugins
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
186 | | - | |
| 186 | + | |
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
| 30 | + | |
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| |||
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
134 | 144 | | |
135 | 145 | | |
136 | 146 | | |
| |||
156 | 166 | | |
157 | 167 | | |
158 | 168 | | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | 169 | | |
165 | 170 | | |
166 | 171 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
31 | 36 | | |
32 | 37 | | |
33 | 38 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
32 | 32 | | |
33 | 33 | | |
34 | 34 | | |
| 35 | + | |
35 | 36 | | |
36 | 37 | | |
37 | 38 | | |
| |||
257 | 258 | | |
258 | 259 | | |
259 | 260 | | |
| 261 | + | |
260 | 262 | | |
261 | 263 | | |
262 | 264 | | |
| |||
0 commit comments