diff mbox

[v4,1/2] zbar: new package

Message ID 1446121780-9082-1-git-send-email-sv99@inbox.ru
State Superseded
Headers show

Commit Message

Volkov Viacheslav Oct. 29, 2015, 12:29 p.m. UTC
Signed-off-by: Viacheslav Volkov <sv99@inbox.ru>
Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
---
Changes v3 -> v4:
  - correct zbar.mk, Config.in add hash (suggested by Vincent.Riera@imgtec.com)
  - license -> LGPL (suggested by martin@barkynet.com)

Changes v2 -> v3:
  - intendation in the Config.in (suggested by Yegor Yefremov)
  - add license info

Changes v1 -> v2:
  - many changes
---
 package/Config.in                     |  1 +
 package/zbar/0001-zbar-autoconf.patch | 16 ++++++++++++++++
 package/zbar/0002-zbar-jpeg.patch     | 13 +++++++++++++
 package/zbar/Config.in                | 22 ++++++++++++++++++++++
 package/zbar/zbar.hash                |  3 +++
 package/zbar/zbar.mk                  | 32 ++++++++++++++++++++++++++++++++
 6 files changed, 87 insertions(+)
 create mode 100644 package/zbar/0001-zbar-autoconf.patch
 create mode 100644 package/zbar/0002-zbar-jpeg.patch
 create mode 100644 package/zbar/Config.in
 create mode 100644 package/zbar/zbar.hash
 create mode 100644 package/zbar/zbar.mk

Comments

Vicente Olivert Riera Oct. 29, 2015, 12:59 p.m. UTC | #1
Dear Viacheslav Volkov,

you keep not marking the previous versions of your patches as superseded
in Patchwork. Is there a reason to not do that?

You ignored my comments about adding a description and a SoB to the
patch files.

In the propagated libv4l dependencies, the comment you add at the end of
each line says "lib4l". That's a typo, it should be "libv4l". Also the
line which says "# dependencies from lib4l" is not needed anymore.

Regarding the explanation for the ZBAR_INSTALL_FIXUP, it looks to me
that is a bug in the build system which could be fixed upstream. Have
you thought about reporting it upstream? Or write a patch to fix it and
send it upstream?

And one last thing. When a new version of a patch has significant
changes, you shouldn't keep the Reviewed-by from a previous version.

Regards,

Vincent.

On 10/29/2015 12:29 PM, Viacheslav Volkov wrote:
> Signed-off-by: Viacheslav Volkov <sv99@inbox.ru>
> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
> ---
> Changes v3 -> v4:
>   - correct zbar.mk, Config.in add hash (suggested by Vincent.Riera@imgtec.com)
>   - license -> LGPL (suggested by martin@barkynet.com)
> 
> Changes v2 -> v3:
>   - intendation in the Config.in (suggested by Yegor Yefremov)
>   - add license info
> 
> Changes v1 -> v2:
>   - many changes
> ---
>  package/Config.in                     |  1 +
>  package/zbar/0001-zbar-autoconf.patch | 16 ++++++++++++++++
>  package/zbar/0002-zbar-jpeg.patch     | 13 +++++++++++++
>  package/zbar/Config.in                | 22 ++++++++++++++++++++++
>  package/zbar/zbar.hash                |  3 +++
>  package/zbar/zbar.mk                  | 32 ++++++++++++++++++++++++++++++++
>  6 files changed, 87 insertions(+)
>  create mode 100644 package/zbar/0001-zbar-autoconf.patch
>  create mode 100644 package/zbar/0002-zbar-jpeg.patch
>  create mode 100644 package/zbar/Config.in
>  create mode 100644 package/zbar/zbar.hash
>  create mode 100644 package/zbar/zbar.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 10ff94e..778b1e1 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -854,6 +854,7 @@ menu "Graphics"
>  	source "package/webkit/Config.in"
>  	source "package/webkitgtk24/Config.in"
>  	source "package/webp/Config.in"
> +	source "package/zbar/Config.in"
>  	source "package/zxing-cpp/Config.in"
>  endmenu
>  
> diff --git a/package/zbar/0001-zbar-autoconf.patch b/package/zbar/0001-zbar-autoconf.patch
> new file mode 100644
> index 0000000..159f75e
> --- /dev/null
> +++ b/package/zbar/0001-zbar-autoconf.patch
> @@ -0,0 +1,16 @@
> +diff --git a/configure.ac b/configure.ac
> +index 256aedb..5aa5689 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -3,10 +3,11 @@ AC_PREREQ([2.61])
> + AC_INIT([zbar], [0.10], [spadix@users.sourceforge.net])
> + AC_CONFIG_AUX_DIR(config)
> + AC_CONFIG_MACRO_DIR(config)
> +-AM_INIT_AUTOMAKE([1.10 -Wall -Werror foreign subdir-objects std-options dist-bzip2])
> ++AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-portability foreign subdir-objects std-options dist-bzip2])
> + AC_CONFIG_HEADERS([include/config.h])
> + AC_CONFIG_SRCDIR(zbar/scanner.c)
> + LT_PREREQ([2.2])
> ++m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
> + LT_INIT([dlopen win32-dll])
> + LT_LANG([Windows Resource])
> diff --git a/package/zbar/0002-zbar-jpeg.patch b/package/zbar/0002-zbar-jpeg.patch
> new file mode 100644
> index 0000000..1d93a94
> --- /dev/null
> +++ b/package/zbar/0002-zbar-jpeg.patch
> @@ -0,0 +1,13 @@
> +diff --git a/zbar/jpeg.c b/zbar/jpeg.c
> +index 972bfea..fdd1619 100644
> +--- a/zbar/jpeg.c
> ++++ b/zbar/jpeg.c
> +@@ -68,7 +68,7 @@ void init_source (j_decompress_ptr cinfo)
> +     cinfo->src->bytes_in_buffer = img->datalen;
> + }
> + 
> +-int fill_input_buffer (j_decompress_ptr cinfo)
> ++boolean fill_input_buffer (j_decompress_ptr cinfo)
> + {
> +     /* buffer underrun error case */
> +     cinfo->src->next_input_byte = fake_eoi;
> diff --git a/package/zbar/Config.in b/package/zbar/Config.in
> new file mode 100644
> index 0000000..a5acaa3
> --- /dev/null
> +++ b/package/zbar/Config.in
> @@ -0,0 +1,22 @@
> +config BR2_PACKAGE_ZBAR
> +	bool "zbar"
> +	# dependencies from lib4l
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # lib4l
> +	depends on BR2_USE_MMU # lib4l
> +	depends on !BR2_STATIC_LIBS # lib4l
> +	depends on BR2_INSTALL_LIBSTDCPP # lib4l
> +	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # lib4l
> +	depends on BR2_TOOLCHAIN_USES_GLIBC || \
> +		BR2_TOOLCHAIN_USES_UCLIBC # lib4l
> +	select BR2_PACKAGE_JPEG
> +	select BR2_PACKAGE_LIBV4L
> +	help
> +	  QR and barcode scanner
> +
> +	  http://zbar.sourceforge.net/
> +
> +comment "zbar needs an uClibc or (e)glibc toolchain w/ threads, dynamic library, C++ and headers >= 3.0"
> +	depends on BR2_USE_MMU
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
> +		|| !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \
> +		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
> diff --git a/package/zbar/zbar.hash b/package/zbar/zbar.hash
> new file mode 100644
> index 0000000..5c04d9b
> --- /dev/null
> +++ b/package/zbar/zbar.hash
> @@ -0,0 +1,3 @@
> +# Locally computed:
> +sha256 38f8535a3c4c526ecaa968a992efcbf7392623e68db45dc2f181d4c9d3002d69 zbar-854a5d97059e395807091ac4d80c53f7968abb8f.tar.gz
> +
> diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk
> new file mode 100644
> index 0000000..bd3c197
> --- /dev/null
> +++ b/package/zbar/zbar.mk
> @@ -0,0 +1,32 @@
> +################################################################################
> +#
> +# zbar
> +#
> +################################################################################
> +
> +# github have some additional commits for compilling with recent kernel
> +ZBAR_VERSION = 854a5d97059e395807091ac4d80c53f7968abb8f
> +ZBAR_SITE = $(call github,ZBar,Zbar,$(ZBAR_VERSION))
> +ZBAR_LICENSE = LGPLv2.1
> +ZBAR_LICENSE_FILES = LICENSE
> +ZBAR_INSTALL_STAGING = YES
> +ZBAR_AUTORECONF = YES
> +ZBAR_DEPENDENCIES = libv4l libjpeg
> +ZBAR_CONF_OPTS = \
> +	--without-imagemagick \
> +	--without-qt \
> +	--without-gtk \
> +	--without-python \
> +	--without-x \
> +	--enable-shared=yes
> +
> +# fix /usr/bin/install: cannot stat ‘./doc/man/zbarcam.1’: No such file or
> +#   directory
> +# make[5]: *** [install-man1] Error 1
> +define ZBAR_INSTALL_FIXUP
> +	touch $(@D)/doc/man/zbarcam.1
> +endef
> +
> +ZBAR_POST_BUILD_HOOKS += ZBAR_INSTALL_FIXUP
> +
> +$(eval $(autotools-package))
>
Vicente Olivert Riera Oct. 29, 2015, 1:52 p.m. UTC | #2
Dear Viacheslav Volkov,

one more thing. I have tested your patch removing the ZBAR_INSTALL_FIXUP
and it installs fine for me. Under what circumstances are you
experiencing that failure in Buildroot? Could you share a minimal
defconfig to reproduce the problem?

Regards,

Vincent.

On 10/29/2015 12:29 PM, Viacheslav Volkov wrote:
> Signed-off-by: Viacheslav Volkov <sv99@inbox.ru>
> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
> ---
> Changes v3 -> v4:
>   - correct zbar.mk, Config.in add hash (suggested by Vincent.Riera@imgtec.com)
>   - license -> LGPL (suggested by martin@barkynet.com)
> 
> Changes v2 -> v3:
>   - intendation in the Config.in (suggested by Yegor Yefremov)
>   - add license info
> 
> Changes v1 -> v2:
>   - many changes
> ---
>  package/Config.in                     |  1 +
>  package/zbar/0001-zbar-autoconf.patch | 16 ++++++++++++++++
>  package/zbar/0002-zbar-jpeg.patch     | 13 +++++++++++++
>  package/zbar/Config.in                | 22 ++++++++++++++++++++++
>  package/zbar/zbar.hash                |  3 +++
>  package/zbar/zbar.mk                  | 32 ++++++++++++++++++++++++++++++++
>  6 files changed, 87 insertions(+)
>  create mode 100644 package/zbar/0001-zbar-autoconf.patch
>  create mode 100644 package/zbar/0002-zbar-jpeg.patch
>  create mode 100644 package/zbar/Config.in
>  create mode 100644 package/zbar/zbar.hash
>  create mode 100644 package/zbar/zbar.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 10ff94e..778b1e1 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -854,6 +854,7 @@ menu "Graphics"
>  	source "package/webkit/Config.in"
>  	source "package/webkitgtk24/Config.in"
>  	source "package/webp/Config.in"
> +	source "package/zbar/Config.in"
>  	source "package/zxing-cpp/Config.in"
>  endmenu
>  
> diff --git a/package/zbar/0001-zbar-autoconf.patch b/package/zbar/0001-zbar-autoconf.patch
> new file mode 100644
> index 0000000..159f75e
> --- /dev/null
> +++ b/package/zbar/0001-zbar-autoconf.patch
> @@ -0,0 +1,16 @@
> +diff --git a/configure.ac b/configure.ac
> +index 256aedb..5aa5689 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -3,10 +3,11 @@ AC_PREREQ([2.61])
> + AC_INIT([zbar], [0.10], [spadix@users.sourceforge.net])
> + AC_CONFIG_AUX_DIR(config)
> + AC_CONFIG_MACRO_DIR(config)
> +-AM_INIT_AUTOMAKE([1.10 -Wall -Werror foreign subdir-objects std-options dist-bzip2])
> ++AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-portability foreign subdir-objects std-options dist-bzip2])
> + AC_CONFIG_HEADERS([include/config.h])
> + AC_CONFIG_SRCDIR(zbar/scanner.c)
> + LT_PREREQ([2.2])
> ++m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
> + LT_INIT([dlopen win32-dll])
> + LT_LANG([Windows Resource])
> diff --git a/package/zbar/0002-zbar-jpeg.patch b/package/zbar/0002-zbar-jpeg.patch
> new file mode 100644
> index 0000000..1d93a94
> --- /dev/null
> +++ b/package/zbar/0002-zbar-jpeg.patch
> @@ -0,0 +1,13 @@
> +diff --git a/zbar/jpeg.c b/zbar/jpeg.c
> +index 972bfea..fdd1619 100644
> +--- a/zbar/jpeg.c
> ++++ b/zbar/jpeg.c
> +@@ -68,7 +68,7 @@ void init_source (j_decompress_ptr cinfo)
> +     cinfo->src->bytes_in_buffer = img->datalen;
> + }
> + 
> +-int fill_input_buffer (j_decompress_ptr cinfo)
> ++boolean fill_input_buffer (j_decompress_ptr cinfo)
> + {
> +     /* buffer underrun error case */
> +     cinfo->src->next_input_byte = fake_eoi;
> diff --git a/package/zbar/Config.in b/package/zbar/Config.in
> new file mode 100644
> index 0000000..a5acaa3
> --- /dev/null
> +++ b/package/zbar/Config.in
> @@ -0,0 +1,22 @@
> +config BR2_PACKAGE_ZBAR
> +	bool "zbar"
> +	# dependencies from lib4l
> +	depends on BR2_TOOLCHAIN_HAS_THREADS # lib4l
> +	depends on BR2_USE_MMU # lib4l
> +	depends on !BR2_STATIC_LIBS # lib4l
> +	depends on BR2_INSTALL_LIBSTDCPP # lib4l
> +	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # lib4l
> +	depends on BR2_TOOLCHAIN_USES_GLIBC || \
> +		BR2_TOOLCHAIN_USES_UCLIBC # lib4l
> +	select BR2_PACKAGE_JPEG
> +	select BR2_PACKAGE_LIBV4L
> +	help
> +	  QR and barcode scanner
> +
> +	  http://zbar.sourceforge.net/
> +
> +comment "zbar needs an uClibc or (e)glibc toolchain w/ threads, dynamic library, C++ and headers >= 3.0"
> +	depends on BR2_USE_MMU
> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
> +		|| !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \
> +		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
> diff --git a/package/zbar/zbar.hash b/package/zbar/zbar.hash
> new file mode 100644
> index 0000000..5c04d9b
> --- /dev/null
> +++ b/package/zbar/zbar.hash
> @@ -0,0 +1,3 @@
> +# Locally computed:
> +sha256 38f8535a3c4c526ecaa968a992efcbf7392623e68db45dc2f181d4c9d3002d69 zbar-854a5d97059e395807091ac4d80c53f7968abb8f.tar.gz
> +
> diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk
> new file mode 100644
> index 0000000..bd3c197
> --- /dev/null
> +++ b/package/zbar/zbar.mk
> @@ -0,0 +1,32 @@
> +################################################################################
> +#
> +# zbar
> +#
> +################################################################################
> +
> +# github have some additional commits for compilling with recent kernel
> +ZBAR_VERSION = 854a5d97059e395807091ac4d80c53f7968abb8f
> +ZBAR_SITE = $(call github,ZBar,Zbar,$(ZBAR_VERSION))
> +ZBAR_LICENSE = LGPLv2.1
> +ZBAR_LICENSE_FILES = LICENSE
> +ZBAR_INSTALL_STAGING = YES
> +ZBAR_AUTORECONF = YES
> +ZBAR_DEPENDENCIES = libv4l libjpeg
> +ZBAR_CONF_OPTS = \
> +	--without-imagemagick \
> +	--without-qt \
> +	--without-gtk \
> +	--without-python \
> +	--without-x \
> +	--enable-shared=yes
> +
> +# fix /usr/bin/install: cannot stat ‘./doc/man/zbarcam.1’: No such file or
> +#   directory
> +# make[5]: *** [install-man1] Error 1
> +define ZBAR_INSTALL_FIXUP
> +	touch $(@D)/doc/man/zbarcam.1
> +endef
> +
> +ZBAR_POST_BUILD_HOOKS += ZBAR_INSTALL_FIXUP
> +
> +$(eval $(autotools-package))
>
Volkov Viacheslav Oct. 29, 2015, 2:56 p.m. UTC | #3
My test br2_config for raspberry board:

BR2_arm=y
BR2_arm1176jzf_s=y
BR2_DL_DIR="/vagrant/dl"
BR2_CCACHE=y
BR2_KERNEL_HEADERS_VERSION=y
BR2_DEFAULT_KERNEL_VERSION="4.1.5"
BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_1=y
BR2_TOOLCHAIN_BUILDROOT_WCHAR=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_TARGET_GENERIC_GETTY_PORT="tty1"
BR2_TARGET_TZ_INFO=y
BR2_PACKAGE_GSTREAMER=y
BR2_PACKAGE_GST_PLUGINS_BAD=y
BR2_PACKAGE_RPI_FIRMWARE=y
# BR2_PACKAGE_RPI_FIRMWARE_INSTALL_DTB_OVERLAYS is not set
BR2_PACKAGE_NODEJS=y
BR2_BR2_PACKAGE_NODEJS_0_12_X=y
BR2_PACKAGE_NODEJS_NPM=y
BR2_PACKAGE_NODEJS_MODULES_COFFEESCRIPT=y
BR2_PACKAGE_ZBAR=y

29.10.15 16:52, Vicente Olivert Riera пишет:
> Dear Viacheslav Volkov,
>
> one more thing. I have tested your patch removing the ZBAR_INSTALL_FIXUP
> and it installs fine for me. Under what circumstances are you
> experiencing that failure in Buildroot? Could you share a minimal
> defconfig to reproduce the problem?
>
> Regards,
>
> Vincent.
>
> On 10/29/2015 12:29 PM, Viacheslav Volkov wrote:
>> Signed-off-by: Viacheslav Volkov <sv99@inbox.ru>
>> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com>
>> ---
>> Changes v3 -> v4:
>>   - correct zbar.mk, Config.in add hash (suggested by Vincent.Riera@imgtec.com)
>>   - license -> LGPL (suggested by martin@barkynet.com)
>>
>> Changes v2 -> v3:
>>   - intendation in the Config.in (suggested by Yegor Yefremov)
>>   - add license info
>>
>> Changes v1 -> v2:
>>   - many changes
>> ---
>>  package/Config.in                     |  1 +
>>  package/zbar/0001-zbar-autoconf.patch | 16 ++++++++++++++++
>>  package/zbar/0002-zbar-jpeg.patch     | 13 +++++++++++++
>>  package/zbar/Config.in                | 22 ++++++++++++++++++++++
>>  package/zbar/zbar.hash                |  3 +++
>>  package/zbar/zbar.mk                  | 32 ++++++++++++++++++++++++++++++++
>>  6 files changed, 87 insertions(+)
>>  create mode 100644 package/zbar/0001-zbar-autoconf.patch
>>  create mode 100644 package/zbar/0002-zbar-jpeg.patch
>>  create mode 100644 package/zbar/Config.in
>>  create mode 100644 package/zbar/zbar.hash
>>  create mode 100644 package/zbar/zbar.mk
>>
>> diff --git a/package/Config.in b/package/Config.in
>> index 10ff94e..778b1e1 100644
>> --- a/package/Config.in
>> +++ b/package/Config.in
>> @@ -854,6 +854,7 @@ menu "Graphics"
>>  	source "package/webkit/Config.in"
>>  	source "package/webkitgtk24/Config.in"
>>  	source "package/webp/Config.in"
>> +	source "package/zbar/Config.in"
>>  	source "package/zxing-cpp/Config.in"
>>  endmenu
>>  
>> diff --git a/package/zbar/0001-zbar-autoconf.patch b/package/zbar/0001-zbar-autoconf.patch
>> new file mode 100644
>> index 0000000..159f75e
>> --- /dev/null
>> +++ b/package/zbar/0001-zbar-autoconf.patch
>> @@ -0,0 +1,16 @@
>> +diff --git a/configure.ac b/configure.ac
>> +index 256aedb..5aa5689 100644
>> +--- a/configure.ac
>> ++++ b/configure.ac
>> +@@ -3,10 +3,11 @@ AC_PREREQ([2.61])
>> + AC_INIT([zbar], [0.10], [spadix@users.sourceforge.net])
>> + AC_CONFIG_AUX_DIR(config)
>> + AC_CONFIG_MACRO_DIR(config)
>> +-AM_INIT_AUTOMAKE([1.10 -Wall -Werror foreign subdir-objects std-options dist-bzip2])
>> ++AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-portability foreign subdir-objects std-options dist-bzip2])
>> + AC_CONFIG_HEADERS([include/config.h])
>> + AC_CONFIG_SRCDIR(zbar/scanner.c)
>> + LT_PREREQ([2.2])
>> ++m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
>> + LT_INIT([dlopen win32-dll])
>> + LT_LANG([Windows Resource])
>> diff --git a/package/zbar/0002-zbar-jpeg.patch b/package/zbar/0002-zbar-jpeg.patch
>> new file mode 100644
>> index 0000000..1d93a94
>> --- /dev/null
>> +++ b/package/zbar/0002-zbar-jpeg.patch
>> @@ -0,0 +1,13 @@
>> +diff --git a/zbar/jpeg.c b/zbar/jpeg.c
>> +index 972bfea..fdd1619 100644
>> +--- a/zbar/jpeg.c
>> ++++ b/zbar/jpeg.c
>> +@@ -68,7 +68,7 @@ void init_source (j_decompress_ptr cinfo)
>> +     cinfo->src->bytes_in_buffer = img->datalen;
>> + }
>> + 
>> +-int fill_input_buffer (j_decompress_ptr cinfo)
>> ++boolean fill_input_buffer (j_decompress_ptr cinfo)
>> + {
>> +     /* buffer underrun error case */
>> +     cinfo->src->next_input_byte = fake_eoi;
>> diff --git a/package/zbar/Config.in b/package/zbar/Config.in
>> new file mode 100644
>> index 0000000..a5acaa3
>> --- /dev/null
>> +++ b/package/zbar/Config.in
>> @@ -0,0 +1,22 @@
>> +config BR2_PACKAGE_ZBAR
>> +	bool "zbar"
>> +	# dependencies from lib4l
>> +	depends on BR2_TOOLCHAIN_HAS_THREADS # lib4l
>> +	depends on BR2_USE_MMU # lib4l
>> +	depends on !BR2_STATIC_LIBS # lib4l
>> +	depends on BR2_INSTALL_LIBSTDCPP # lib4l
>> +	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # lib4l
>> +	depends on BR2_TOOLCHAIN_USES_GLIBC || \
>> +		BR2_TOOLCHAIN_USES_UCLIBC # lib4l
>> +	select BR2_PACKAGE_JPEG
>> +	select BR2_PACKAGE_LIBV4L
>> +	help
>> +	  QR and barcode scanner
>> +
>> +	  http://zbar.sourceforge.net/
>> +
>> +comment "zbar needs an uClibc or (e)glibc toolchain w/ threads, dynamic library, C++ and headers >= 3.0"
>> +	depends on BR2_USE_MMU
>> +	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
>> +		|| !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \
>> +		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
>> diff --git a/package/zbar/zbar.hash b/package/zbar/zbar.hash
>> new file mode 100644
>> index 0000000..5c04d9b
>> --- /dev/null
>> +++ b/package/zbar/zbar.hash
>> @@ -0,0 +1,3 @@
>> +# Locally computed:
>> +sha256 38f8535a3c4c526ecaa968a992efcbf7392623e68db45dc2f181d4c9d3002d69 zbar-854a5d97059e395807091ac4d80c53f7968abb8f.tar.gz
>> +
>> diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk
>> new file mode 100644
>> index 0000000..bd3c197
>> --- /dev/null
>> +++ b/package/zbar/zbar.mk
>> @@ -0,0 +1,32 @@
>> +################################################################################
>> +#
>> +# zbar
>> +#
>> +################################################################################
>> +
>> +# github have some additional commits for compilling with recent kernel
>> +ZBAR_VERSION = 854a5d97059e395807091ac4d80c53f7968abb8f
>> +ZBAR_SITE = $(call github,ZBar,Zbar,$(ZBAR_VERSION))
>> +ZBAR_LICENSE = LGPLv2.1
>> +ZBAR_LICENSE_FILES = LICENSE
>> +ZBAR_INSTALL_STAGING = YES
>> +ZBAR_AUTORECONF = YES
>> +ZBAR_DEPENDENCIES = libv4l libjpeg
>> +ZBAR_CONF_OPTS = \
>> +	--without-imagemagick \
>> +	--without-qt \
>> +	--without-gtk \
>> +	--without-python \
>> +	--without-x \
>> +	--enable-shared=yes
>> +
>> +# fix /usr/bin/install: cannot stat ‘./doc/man/zbarcam.1’: No such file or
>> +#   directory
>> +# make[5]: *** [install-man1] Error 1
>> +define ZBAR_INSTALL_FIXUP
>> +	touch $(@D)/doc/man/zbarcam.1
>> +endef
>> +
>> +ZBAR_POST_BUILD_HOOKS += ZBAR_INSTALL_FIXUP
>> +
>> +$(eval $(autotools-package))
>>
diff mbox

Patch

diff --git a/package/Config.in b/package/Config.in
index 10ff94e..778b1e1 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -854,6 +854,7 @@  menu "Graphics"
 	source "package/webkit/Config.in"
 	source "package/webkitgtk24/Config.in"
 	source "package/webp/Config.in"
+	source "package/zbar/Config.in"
 	source "package/zxing-cpp/Config.in"
 endmenu
 
diff --git a/package/zbar/0001-zbar-autoconf.patch b/package/zbar/0001-zbar-autoconf.patch
new file mode 100644
index 0000000..159f75e
--- /dev/null
+++ b/package/zbar/0001-zbar-autoconf.patch
@@ -0,0 +1,16 @@ 
+diff --git a/configure.ac b/configure.ac
+index 256aedb..5aa5689 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -3,10 +3,11 @@ AC_PREREQ([2.61])
+ AC_INIT([zbar], [0.10], [spadix@users.sourceforge.net])
+ AC_CONFIG_AUX_DIR(config)
+ AC_CONFIG_MACRO_DIR(config)
+-AM_INIT_AUTOMAKE([1.10 -Wall -Werror foreign subdir-objects std-options dist-bzip2])
++AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-portability foreign subdir-objects std-options dist-bzip2])
+ AC_CONFIG_HEADERS([include/config.h])
+ AC_CONFIG_SRCDIR(zbar/scanner.c)
+ LT_PREREQ([2.2])
++m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
+ LT_INIT([dlopen win32-dll])
+ LT_LANG([Windows Resource])
diff --git a/package/zbar/0002-zbar-jpeg.patch b/package/zbar/0002-zbar-jpeg.patch
new file mode 100644
index 0000000..1d93a94
--- /dev/null
+++ b/package/zbar/0002-zbar-jpeg.patch
@@ -0,0 +1,13 @@ 
+diff --git a/zbar/jpeg.c b/zbar/jpeg.c
+index 972bfea..fdd1619 100644
+--- a/zbar/jpeg.c
++++ b/zbar/jpeg.c
+@@ -68,7 +68,7 @@ void init_source (j_decompress_ptr cinfo)
+     cinfo->src->bytes_in_buffer = img->datalen;
+ }
+ 
+-int fill_input_buffer (j_decompress_ptr cinfo)
++boolean fill_input_buffer (j_decompress_ptr cinfo)
+ {
+     /* buffer underrun error case */
+     cinfo->src->next_input_byte = fake_eoi;
diff --git a/package/zbar/Config.in b/package/zbar/Config.in
new file mode 100644
index 0000000..a5acaa3
--- /dev/null
+++ b/package/zbar/Config.in
@@ -0,0 +1,22 @@ 
+config BR2_PACKAGE_ZBAR
+	bool "zbar"
+	# dependencies from lib4l
+	depends on BR2_TOOLCHAIN_HAS_THREADS # lib4l
+	depends on BR2_USE_MMU # lib4l
+	depends on !BR2_STATIC_LIBS # lib4l
+	depends on BR2_INSTALL_LIBSTDCPP # lib4l
+	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 # lib4l
+	depends on BR2_TOOLCHAIN_USES_GLIBC || \
+		BR2_TOOLCHAIN_USES_UCLIBC # lib4l
+	select BR2_PACKAGE_JPEG
+	select BR2_PACKAGE_LIBV4L
+	help
+	  QR and barcode scanner
+
+	  http://zbar.sourceforge.net/
+
+comment "zbar needs an uClibc or (e)glibc toolchain w/ threads, dynamic library, C++ and headers >= 3.0"
+	depends on BR2_USE_MMU
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
+		|| !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 \
+		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
diff --git a/package/zbar/zbar.hash b/package/zbar/zbar.hash
new file mode 100644
index 0000000..5c04d9b
--- /dev/null
+++ b/package/zbar/zbar.hash
@@ -0,0 +1,3 @@ 
+# Locally computed:
+sha256 38f8535a3c4c526ecaa968a992efcbf7392623e68db45dc2f181d4c9d3002d69 zbar-854a5d97059e395807091ac4d80c53f7968abb8f.tar.gz
+
diff --git a/package/zbar/zbar.mk b/package/zbar/zbar.mk
new file mode 100644
index 0000000..bd3c197
--- /dev/null
+++ b/package/zbar/zbar.mk
@@ -0,0 +1,32 @@ 
+################################################################################
+#
+# zbar
+#
+################################################################################
+
+# github have some additional commits for compilling with recent kernel
+ZBAR_VERSION = 854a5d97059e395807091ac4d80c53f7968abb8f
+ZBAR_SITE = $(call github,ZBar,Zbar,$(ZBAR_VERSION))
+ZBAR_LICENSE = LGPLv2.1
+ZBAR_LICENSE_FILES = LICENSE
+ZBAR_INSTALL_STAGING = YES
+ZBAR_AUTORECONF = YES
+ZBAR_DEPENDENCIES = libv4l libjpeg
+ZBAR_CONF_OPTS = \
+	--without-imagemagick \
+	--without-qt \
+	--without-gtk \
+	--without-python \
+	--without-x \
+	--enable-shared=yes
+
+# fix /usr/bin/install: cannot stat ‘./doc/man/zbarcam.1’: No such file or
+#   directory
+# make[5]: *** [install-man1] Error 1
+define ZBAR_INSTALL_FIXUP
+	touch $(@D)/doc/man/zbarcam.1
+endef
+
+ZBAR_POST_BUILD_HOOKS += ZBAR_INSTALL_FIXUP
+
+$(eval $(autotools-package))