[1/1] 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. 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>
---
package/zxing-cpp/Config.in | 27 +++++++++++++++++++++++++++
package/zxing-cpp/zxing-cpp.mk | 14 ++++++++++++--
2 files changed, 39 insertions(+), 2 deletions(-)
Comments
Hello,
On Wed, 15 May 2024 18:49:12 +0200
Dario Binacchi <dario.binacchi@amarulasolutions.com> wrote:
> +if BR2_PACKAGE_ZXING_CPP
> +
> +choice
> + prompt "readers/writers support"
> + default BR2_PACKAGE_ZXING_CPP_READERS_AND_WRITERS
> + help
> + Select what you want to enable and then compile
> +
> +config BR2_PACKAGE_ZXING_CPP_READERS
> + bool "readers only"
> + help
> + Build with only readers (decoders) support
> +
> +config BR2_PACKAGE_ZXING_CPP_WRITERS
> + bool "writers only"
> + help
> + Build with only writers (encoders) support
> +
> +config BR2_PACKAGE_ZXING_CPP_READERS_AND_WRITERS
> + bool "readers and writers"
> + help
> + Build with readers and writers support
> +
> +endchoice
I don't think this should be a choice. Instead, it should be like this:
if BR2_PACKAGE_ZXING_CPP
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
Could you rework your patch accordingly?
Thanks a lot!
Thomas
@@ -17,3 +17,30 @@ config BR2_PACKAGE_ZXING_CPP
compiles the C++ port.
https://github.com/zxing-cpp/zxing-cpp
+
+if BR2_PACKAGE_ZXING_CPP
+
+choice
+ prompt "readers/writers support"
+ default BR2_PACKAGE_ZXING_CPP_READERS_AND_WRITERS
+ help
+ Select what you want to enable and then compile
+
+config BR2_PACKAGE_ZXING_CPP_READERS
+ bool "readers only"
+ help
+ Build with only readers (decoders) support
+
+config BR2_PACKAGE_ZXING_CPP_WRITERS
+ bool "writers only"
+ help
+ Build with only writers (encoders) support
+
+config BR2_PACKAGE_ZXING_CPP_READERS_AND_WRITERS
+ bool "readers and writers"
+ help
+ Build with readers and writers support
+
+endchoice
+
+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)$(BR2_PACKAGE_ZXING_CPP_READERS_AND_WRITERS),y)
+ZXING_CPP_CONF_OPTS += -DBUILD_READERS=ON
+else
+ZXING_CPP_CONF_OPTS += -DBUILD_READERS=OFF
+endif
+
+ifeq ($(BR2_PACKAGE_ZXING_CPP_WRITERS)$(BR2_PACKAGE_ZXING_CPP_READERS_AND_WRITERS),y)
+ZXING_CPP_CONF_OPTS += -DBUILD_WRITERS=ON
+else
+ZXING_CPP_CONF_OPTS += -DBUILD_WRITERS=OFF
+endif
+
$(eval $(cmake-package))