Zepp-Hanzj commented on PR #3524: URL: https://github.com/apache/nuttx-apps/pull/3524#issuecomment-4627508180
You're right, I didn't think this through carefully. Removing all `#ifdef CONFIG_DEBUG_UORB` guards unconditionally will indeed increase the image size with no way to opt out. Here's a revised approach I'd like to propose: **Introduce a new `CONFIG_UORB_FORMAT` option** to control whether format strings are compiled in: 1. Add `config UORB_FORMAT` in `system/uorb/Kconfig` 2. `CONFIG_DEBUG_UORB` will `select UORB_FORMAT` (so debug output still works as before) 3. `CONFIG_UORB_LISTENER` will also `select UORB_FORMAT` (so listener can display data) 4. All `#ifdef CONFIG_DEBUG_UORB` guards around format strings, `o_format` field, `orb_info()`/`orb_fprintf()`/`orb_sscanf()` will be changed to `#ifdef CONFIG_UORB_FORMAT` This way: - **Debug + listener users**: format strings are automatically included (same as before) - **Neither debug nor listener users**: format strings are excluded, no image size increase - **Users can also manually disable `UORB_FORMAT`** even with listener enabled, if they prefer smaller images and don't need formatted output The changes would be ~6 locations in uORB.h, uORB.c, listener.c, Kconfig, plus 43 sensor files (simple `CONFIG_DEBUG_UORB` → `CONFIG_UORB_FORMAT` replacement). Would this approach be acceptable? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
