New package: zxing

[Peter: build using make instead of scons, fixup whitespace, target install]
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
This commit is contained in:
Frank Hunleth 2012-03-25 14:15:40 +00:00 committed by Peter Korsgaard
parent 5016aa02fb
commit 47aa58a4dd
4 changed files with 84 additions and 0 deletions

View file

@ -361,6 +361,7 @@ source "package/pango/Config.in"
source "package/pixman/Config.in"
source "package/tiff/Config.in"
source "package/webkit/Config.in"
source "package/zxing/Config.in"
endmenu
menu "Hardware handling"

14
package/zxing/Config.in Normal file
View file

@ -0,0 +1,14 @@
comment "zxing requires a toolchain with C++ support"
depends on !BR2_INSTALL_LIBSTDCPP
config BR2_PACKAGE_ZXING
bool "zxing"
depends on BR2_INSTALL_LIBSTDCPP
select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
help
ZXing (pronounced "zebra crossing") is an open-source,
multi-format 1D/2D barcode image processing library
implemented in Java, with ports to other languages. This
compiles the C++ port.
http://code.google.com/p/zxing/

View file

@ -0,0 +1,30 @@
[PATCH] add Makefile
The scons based build system doesn't handle cross compilation, special
compiler flags or (un)installation, so add a simple makefile instead
which does.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
---
cpp/core/src/Makefile | 14 ++++++++++++++
1 file changed, 14 insertions(+)
Index: zxing-2.0/cpp/core/src/Makefile
===================================================================
--- /dev/null
+++ zxing-2.0/cpp/core/src/Makefile
@@ -0,0 +1,14 @@
+override CXXFLAGS += -I.
+SRCS := $(shell find -name '*.cpp')
+
+libzxing.a: $(SRCS:.cpp=.o)
+ $(AR) $(ARFLAGS) $@ $^
+
+install: libzxing.a
+ install -D -m 0644 $^ $(DESTDIR)/usr/lib/$^
+ find -name '*.h' -exec install -m 0644 -D "{}" \
+ "$(DESTDIR)/usr/include/{}" ";"
+
+uninstall:
+ rm -f $(DESTDIR)/usr/lib/libzxing.a
+ rm -rf $(DESTDIR)/usr/include/zxing

39
package/zxing/zxing.mk Normal file
View file

@ -0,0 +1,39 @@
#############################################################
#
# zxing
#
#############################################################
ZXING_VERSION = 2.0
ZXING_SITE = http://zxing.googlecode.com/files
ZXING_SOURCE = ZXing-$(ZXING_VERSION).zip
ZXING_INSTALL_STAGING = YES
ifneq ($(BR2_ENABLE_LOCALE),y)
ZXING_DEPENDENCIES += libiconv
endif
define ZXING_EXTRACT_CMDS
unzip -d $(BUILD_DIR) $(DL_DIR)/$(ZXING_SOURCE)
endef
define ZXING_BUILD_CMDS
$(MAKE) -C $(@D)/cpp/core/src $(TARGET_CONFIGURE_OPTS)
endef
define ZXING_INSTALL_STAGING_CMDS
$(MAKE) -C $(@D)/cpp/core/src DESTDIR=$(STAGING_DIR) install
endef
define ZXING_UNINSTALL_STAGING_CMDS
$(MAKE) -C $(@D)/cpp/core/src DESTDIR=$(STAGING_DIR) uninstall
endef
define ZXING_INSTALL_TARGET_CMDS
$(MAKE) -C $(@D)/cpp/core/src DESTDIR=$(TARGET_DIR) install
endef
define ZXING_UNINSTALL_TARGET_CMDS
$(MAKE) -C $(@D)/cpp/core/src DESTDIR=$(TARGET_DIR) uninstall
endef
$(eval $(call GENTARGETS))