[v2] package/zxing-cpp: add options for enabling readers and/or writers
Commit Message
The patch allows you to choose whether to build encoding (BUILD_WRITERS),
decoding (BUILD_READERS) or both. At least one of the two options must
be enabled. This way, it's possible to keep the library size at minimum.
By default, to ensure backward compatibility, both are compiled.
Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com>
---
Changes v1 -> v2:
- Drop BR2_PACKAGE_ZXING_CPP_READERS_AND_WRITERS selection
package/zxing-cpp/Config.in | 17 +++++++++++++++++
package/zxing-cpp/zxing-cpp.mk | 14 ++++++++++++--
2 files changed, 29 insertions(+), 2 deletions(-)
Comments
Hello Dario,
On Sat, 18 May 2024 11:40:06 +0200
Dario Binacchi <dario.binacchi@amarulasolutions.com> wrote:
> +if BR2_PACKAGE_ZXING_CPP
> +comment "At least one of readers/writers must be enabled"
This comment is not really useful, as it doesn't force anything. If
really at least one of readers or writers are needed, then you should
do this in the main BR2_PACKAGE_ZXING option:
select BR2_PACKAGE_ZXING_CPP_READERS if !BR2_PACKAGE_ZXING_CPP_WRITERS
This will ensure that readers are selected if writers are not selected.
But it will still allow to deselect readers if writers are enabled.
Thanks!
Thomas
@@ -17,3 +17,20 @@ config BR2_PACKAGE_ZXING_CPP
compiles the C++ port.
https://github.com/zxing-cpp/zxing-cpp
+
+if BR2_PACKAGE_ZXING_CPP
+comment "At least one of readers/writers must be enabled"
+
+config BR2_PACKAGE_ZXING_CPP_READERS
+ bool "readers support"
+ default y
+ help
+ Build with readers (decoders) support
+
+config BR2_PACKAGE_ZXING_CPP_WRITERS
+ bool "writers support"
+ default y
+ help
+ Build with writers (encoders) support
+
+endif # BR2_PACKAGE_ZXING_CPP
@@ -12,8 +12,6 @@ ZXING_CPP_INSTALL_STAGING = YES
ZXING_CPP_SUPPORTS_IN_SOURCE_BUILD = NO
ZXING_CPP_DEPENDENCIES = host-pkgconf stb
ZXING_CPP_CONF_OPTS = \
- -DBUILD_READERS=ON \
- -DBUILD_WRITERS=ON \
-DBUILD_BLACKBOX_TESTS=OFF \
-DBUILD_UNIT_TESTS=OFF \
-DBUILD_DEPENDENCIES=LOCAL
@@ -28,4 +26,16 @@ else
ZXING_CPP_CONF_OPTS += -DBUILD_PYTHON_MODULE=OFF
endif
+ifeq ($(BR2_PACKAGE_ZXING_CPP_READERS),y)
+ZXING_CPP_CONF_OPTS += -DBUILD_READERS=ON
+else
+ZXING_CPP_CONF_OPTS += -DBUILD_READERS=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_ZXING_CPP_WRITERS),y)
+ZXING_CPP_CONF_OPTS += -DBUILD_WRITERS=ON
+else
+ZXING_CPP_CONF_OPTS += -DBUILD_WRITERS=OFF
+endif
+
$(eval $(cmake-package))