summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2022-04-05 17:30:03 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2022-04-05 18:33:48 +0200
commitf108b95e0cc1025f4c6d8119b14e779ff843230e (patch)
treed3a647c6adc7a7675751e09ffa8a4b9d3f6b0e92 /media-gfx/zbar
parentdev-qt/qtwebengine: 5.15.3_p20220330 version bump, py3 (diff)
downloadgentoo-f108b95e0cc1025f4c6d8119b14e779ff843230e.tar.gz
gentoo-f108b95e0cc1025f4c6d8119b14e779ff843230e.tar.bz2
gentoo-f108b95e0cc1025f4c6d8119b14e779ff843230e.zip
media-gfx/zbar: 0.23.90 version bump, EAPI-8 bump
Fix build without dev-qt/qtchooser's unversioned Qt5 binaries in PATH. Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
Diffstat (limited to 'media-gfx/zbar')
-rw-r--r--media-gfx/zbar/Manifest1
-rw-r--r--media-gfx/zbar/files/zbar-0.23.90-fix-gtk-default.patch35
-rw-r--r--media-gfx/zbar/files/zbar-0.23.90-fix-qt5x11extras-detect.patch18
-rw-r--r--media-gfx/zbar/files/zbar-0.23.90-fix-unittest.patch78
-rw-r--r--media-gfx/zbar/zbar-0.23.90.ebuild228
5 files changed, 360 insertions, 0 deletions
diff --git a/media-gfx/zbar/Manifest b/media-gfx/zbar/Manifest
index a72b685b4bf3..60c7d029a61a 100644
--- a/media-gfx/zbar/Manifest
+++ b/media-gfx/zbar/Manifest
@@ -1 +1,2 @@
DIST zbar-0.23.1.tar.gz 1019268 BLAKE2B 5aa8725a0945b6f50eb78bb7b8a61e5b46356b18f07e8af778a63d46b94c894d9e827ed71bd89060898ecbdaebc5b4bb6e638939d7bc0dede390f7137770049f SHA512 ae7741cf750a10cf53dc11abcd482c3885507153ee37f6e3364ed5ed72184ebb009560b8c40d8090603a551fb681700a962838a59ce77d005d080ee49fbfa54b
+DIST zbar-0.23.90.tar.gz 1005314 BLAKE2B 5d0c193509602dfb55741b421e1d28f1424ecec50aa3be584912544a587922c053284c41cf14ff0b4824095d0d376381ed055e7faf9ff394bd8d44fd9ed2971d SHA512 d73d71873bec68ee021997512a9edbd223f5f5fe43c66c4dd3502224ba6009be2e5e1714766cb8e1056244673e87e0939ed0319116f61d7371b5ab79fb5e04eb
diff --git a/media-gfx/zbar/files/zbar-0.23.90-fix-gtk-default.patch b/media-gfx/zbar/files/zbar-0.23.90-fix-gtk-default.patch
new file mode 100644
index 000000000000..b1316243dd24
--- /dev/null
+++ b/media-gfx/zbar/files/zbar-0.23.90-fix-gtk-default.patch
@@ -0,0 +1,35 @@
+From 468f6bda627d683b3f40dbaf242c158409666f7e Mon Sep 17 00:00:00 2001
+From: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
+Date: Sat, 13 Mar 2021 18:04:57 +0100
+Subject: [PATCH] configure.ac: fix some issues with gtk parameter
+
+By default, it uses Gtk3. Also, the with_gtk set to "no"
+is wrong.
+
+Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
+---
+ configure.ac | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index b6f87531..30a59f72 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -492,7 +492,7 @@ AS_IF([test "x$with_npapi" != "xno"],
+ AM_CONDITIONAL([HAVE_NPAPI], [test "x$with_npapi" = "xyes"])
+
+ dnl GTK
+-dnl For now, defaults to GTK version 2
++dnl For now, defaults to GTK version 3
+
+ AC_ARG_WITH([gtk],
+ [AS_HELP_STRING([--with-gtk],
+@@ -500,7 +500,7 @@ AC_ARG_WITH([gtk],
+ [AS_IF([test "x$with_gtk" != "xno" && test "x$with_gtk" != "xauto" &&
+ test "x$with_gtk" != "xgtk2" && test "x$with_gtk" != "xgtk3"],
+ [echo "Invalid value for --with-gtk. Falling back to 'no'"
+- with_gtk="xno"])],
++ with_gtk="no"])],
+ [with_gtk="auto"])
+
+ AC_ARG_VAR([GLIB_GENMARSHAL], [full path to glib-genmarshal])
diff --git a/media-gfx/zbar/files/zbar-0.23.90-fix-qt5x11extras-detect.patch b/media-gfx/zbar/files/zbar-0.23.90-fix-qt5x11extras-detect.patch
new file mode 100644
index 000000000000..e8f6357eb486
--- /dev/null
+++ b/media-gfx/zbar/files/zbar-0.23.90-fix-qt5x11extras-detect.patch
@@ -0,0 +1,18 @@
+diff -ur a/configure.ac b/configure.ac
+--- a/configure.ac 2019-05-23 23:37:12.000000000 +0300
++++ b/configure.ac 2020-01-22 12:27:14.190755156 +0300
+@@ -638,13 +638,9 @@
+
+ AC_ARG_VAR([MOC], [full path to Qt moc program])
+
+-AS_IF([test "x$have_x" = "xyes"],
+- [qt_extra="Qt5X11Extras >= 5.0"],
+- [qt_extra=""])
+-
+ AS_IF([test "x$with_qt" != "xno"],
+ [PKG_CHECK_MODULES([QT],
+- [Qt5Core >= 5 Qt5Gui >= 5 Qt5Widgets >= 5.0 $qt_extra],,
++ [Qt5Core >= 5 Qt5Gui >= 5 Qt5Widgets >= 5.0 Qt5X11Extras >= 5.0],,
+ [with_qt5="no"
+ PKG_CHECK_MODULES([QT],
+ [QtCore >= 4 QtGui >= 4],,
diff --git a/media-gfx/zbar/files/zbar-0.23.90-fix-unittest.patch b/media-gfx/zbar/files/zbar-0.23.90-fix-unittest.patch
new file mode 100644
index 000000000000..589ebd4e287c
--- /dev/null
+++ b/media-gfx/zbar/files/zbar-0.23.90-fix-unittest.patch
@@ -0,0 +1,78 @@
+diff -ur a/configure.ac b/configure.ac
+--- a/configure.ac 2020-04-21 00:09:21.000000000 +0300
++++ b/configure.ac 2020-04-23 16:53:06.654339488 +0300
+@@ -336,6 +336,14 @@
+ AC_SUBST(DBUS_CONFDIR)
+ ])
+
++dnl zbarimg tests
++AC_ARG_WITH([zbarimg_tests],
++ [AS_HELP_STRING([--without-zbarimg-tests],
++ [disable tests for zbarimg])],
++ [],
++ [with_zbarimg_tests="yes"])
++AM_CONDITIONAL([HAVE_ZBARIMG_TESTS], [test "x$with_zbarimg_tests" = "xyes"])
++
+ dnl libjpeg
+ AC_ARG_WITH([jpeg],
+ [AS_HELP_STRING([--without-jpeg],
+@@ -724,25 +732,12 @@
+
+ AC_ARG_VAR([CLASSPATH], [Java class path (include JUnit to run java tests)])
+ AS_IF([test "x$CLASSPATH" = "x"], [CLASSPATH="."])
++AC_SUBST(CLASSPATH)
+
+-dnl Search for Java unit test library
+-AS_IF([test -z "$JUNIT_HOME"],
+- [JUNIT_HOME="/usr/share/java"])
+-
+-AS_IF([test -f "$JUNIT_HOME/junit4.jar"],
+- [JUNIT="$JUNIT_HOME/junit4.jar"],
+- [AS_IF([test -f "$JUNIT_HOME/junit.jar"],
+- [JUNIT="$JUNIT_HOME/junit.jar"])])
+-
+-AS_IF([test "x$JUNIT" != "x"],
+- [AS_IF([test -f "/usr/share/java/hamcrest/all.jar"],
+- [CLASSPATH="$JUNIT:/usr/share/java/hamcrest/all.jar:$CLASSPATH"
+- AC_SUBST(CLASSPATH)
+- with_java_unit="yes"])],
+- [AS_IF([test -f "/usr/share/java/hamcrest-all.jar"],
+- [CLASSPATH="$JUNIT:/usr/share/java/hamcrest-all.jar:$CLASSPATH"
+- AC_SUBST(CLASSPATH)
+- with_java_unit="yes"])])
++AC_ARG_WITH([java_unit],
++ [AS_HELP_STRING([--without-java-unit],
++ [Enable java unittest])],
++ [with_java_unit="yes"])
+
+ AM_CONDITIONAL([HAVE_JAVA_UNIT], [test "x$with_java_unit" = "xyes"])
+
+@@ -905,6 +900,8 @@
+ [echo " => the Java interface will *NOT* be built"])
+ AS_IF([test "x$with_java_unit" != "xyes"],
+ [echo " => the Java unit test will *NOT* be enabled"])
++AS_IF([test "x$with_zbarimg_tests" != "xyes"],
++ [echo " => zbarimg tests will *NOT* be enabled"])
+ dnl echo "NPAPI Plugin --with-npapi=$with_npapi"
+ dnl AS_IF([test "x$with_mozilla" != "xyes"],
+ dnl [echo " => the Mozilla/Firefox/OpenOffice plugin will *NOT* be built"])
+diff -ur a/test/Makefile.am.inc b/test/Makefile.am.inc
+--- a/test/Makefile.am.inc 2020-04-21 00:09:21.000000000 +0300
++++ b/test/Makefile.am.inc 2020-04-23 17:03:07.819999370 +0300
+@@ -91,11 +91,16 @@
+ regress-decoder: test/test_decode
+ @abs_top_builddir@/test/test_decode -q -n 100000
+
++if HAVE_ZBARIMG_TESTS
+ check-images-py: zbarimg/zbarimg
+ @PYTHON@ @abs_top_srcdir@/test/barcodetest.py
+
+ check-images: zbarimg/zbarimg
+ @abs_top_builddir@/test/test_examples.sh
++else
++check-images-py:
++check-images:
++endif
+
+ check-convert: test/test_convert
+ @abs_top_srcdir@/test/test_convert
diff --git a/media-gfx/zbar/zbar-0.23.90.ebuild b/media-gfx/zbar/zbar-0.23.90.ebuild
new file mode 100644
index 000000000000..91cdcabb9f33
--- /dev/null
+++ b/media-gfx/zbar/zbar-0.23.90.ebuild
@@ -0,0 +1,228 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit autotools flag-o-matic java-pkg-opt-2 multilib-minimal python-single-r1 qmake-utils virtualx
+
+DESCRIPTION="Library and tools for reading barcodes from images or video"
+HOMEPAGE="https://github.com/mchehab/zbar"
+SRC_URI="https://github.com/mchehab/zbar/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+IUSE="dbus graphicsmagick gtk +imagemagick introspection java jpeg nls python qt5 static-libs test +threads v4l X xv"
+
+REQUIRED_USE="
+ introspection? ( gtk )
+ python? ( ${PYTHON_REQUIRED_USE} )
+ test? (
+ ${PYTHON_REQUIRED_USE}
+ X? ( imagemagick )
+ )
+ xv? ( X )"
+
+RESTRICT="!test? ( test )"
+
+COMMON_DEPEND="
+ dbus? ( sys-apps/dbus[${MULTILIB_USEDEP}] )
+ gtk? (
+ dev-libs/glib:2[${MULTILIB_USEDEP}]
+ x11-libs/gtk+:3[${MULTILIB_USEDEP}]
+ introspection? ( dev-libs/gobject-introspection )
+ )
+ imagemagick? (
+ !graphicsmagick? ( media-gfx/imagemagick:=[png,jpeg?] )
+ graphicsmagick? ( media-gfx/graphicsmagick:=[png,jpeg?] )
+ )
+ jpeg? ( virtual/jpeg:0[${MULTILIB_USEDEP}] )
+ python? ( ${PYTHON_DEPS} )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtwidgets:5
+ dev-qt/qtx11extras:5
+ )
+ v4l? ( media-libs/libv4l:0=[${MULTILIB_USEDEP}] )
+ X? (
+ x11-libs/libX11[${MULTILIB_USEDEP}]
+ x11-libs/libXext[${MULTILIB_USEDEP}]
+ xv? ( x11-libs/libXv[${MULTILIB_USEDEP}] )
+ )"
+
+RDEPEND="${COMMON_DEPEND}
+ java? ( >=virtual/jre-1.8 )"
+
+DEPEND="${COMMON_DEPEND}
+ java? (
+ >=virtual/jdk-1.8
+ test? (
+ dev-java/hamcrest-core:1.3
+ dev-java/junit:4
+ )
+ )
+ test? (
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/pillow[${PYTHON_USEDEP}]
+ ')
+ )"
+
+BDEPEND="
+ app-text/xmlto
+ virtual/pkgconfig
+ gtk? ( dev-util/glib-utils )
+ nls? (
+ sys-devel/gettext
+ virtual/libiconv
+ )"
+
+DOCS=( README.md NEWS.md TODO.md HACKING.md TODO.md ChangeLog )
+
+PATCHES=(
+ # git master
+ "${FILESDIR}/${P}-fix-gtk-default.patch"
+ # TODO: upstream?
+ "${FILESDIR}/${PN}-0.23_fix_python_detect.patch"
+ "${FILESDIR}/${P}-fix-unittest.patch"
+ "${FILESDIR}/${P}-fix-qt5x11extras-detect.patch"
+)
+
+pkg_setup() {
+ if use python || use test; then
+ python-single-r1_pkg_setup
+ fi
+ use java && java-pkg-opt-2_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ if use python || use test; then
+ if use test; then
+ # make tests happy
+ # because one of the test requires loadable py module from the current ${BUILD_DIR}
+ sed -e "s|PYTHONPATH=@abs_top_srcdir@|PYTHONPATH=@builddir@|g" \
+ -i test/Makefile.am.inc || die
+ fi
+
+ python_fix_shebang \
+ examples/*.py \
+ test/{test_python,barcodetest}.py # test_pygtk.py — py2 only
+ fi
+
+ if use java; then
+ java-pkg-opt-2_src_prepare
+ sed -e "s|javadir = \$(pkgdatadir)|javadir = /usr/$(get_libdir)/zbar|" \
+ -i java/Makefile.am || die
+ fi
+
+ # do not install {LICENSE,INSTALL,etc} doc files with 'make install' (use DOCS=() instead)
+ sed -e "s|^dist_doc_DATA =\(.*\)|dist_doc_DATA =|" -i Makefile.am || die
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ append-cppflags -DNDEBUG
+
+ local myeconfargs=(
+ $(use_with dbus)
+ $(use_with gtk gtk gtk3) # avoid 'auto'
+ $(use_with jpeg)
+ $(multilib_native_use_with introspection gir)
+ $(multilib_native_use_with java)
+ $(multilib_native_use_with python python auto)
+ $(use_enable nls)
+ $(use_enable static-libs static)
+ $(use_enable threads pthread)
+ $(use_enable v4l video)
+ $(use_with X x)
+ $(use_with X xshm)
+ $(use_with xv xv)
+ )
+
+ if multilib_is_native_abi; then
+ # both must be enabled to use GraphicsMagick
+ if use graphicsmagick; then
+ myeconfargs+=(
+ --with-graphicsmagick
+ --without-imagemagick
+ )
+ elif use imagemagick; then
+ myeconfargs+=(
+ --with-imagemagick
+ --without-graphicsmagick
+ )
+ else
+ myeconfargs+=(
+ --without-imagemagick
+ --without-graphicsmagick
+ )
+ fi
+
+ if use java; then
+ export JAVACFLAGS="$(java-pkg_javac-args)"
+ append-cflags "$(java-pkg_get-jni-cflags)"
+ if use test; then # bug 629078
+ myeconfargs+=( --with-java-unit )
+ java-pkg_append_ CLASSPATH .
+ java-pkg_append_ CLASSPATH $(java-pkg_getjar --build-only junit-4 junit.jar)
+ java-pkg_append_ CLASSPATH $(java-pkg_getjar --build-only hamcrest-core-1.3 hamcrest-core.jar)
+ fi
+ fi
+
+ if use qt5; then
+ myeconfargs+=(
+ --with-qt
+ --with-qt5
+ )
+ else
+ myeconfargs+=( --without-qt )
+ fi
+ else
+ myeconfargs+=(
+ --without-graphicsmagick
+ --without-imagemagick
+ --without-qt
+ )
+
+ # zbarimg tests with native abi only
+ # (this option from the patch above, stay up to date)
+ use test && myeconfargs+=( --without-zbarimg-tests )
+ fi
+
+ # use bash (bug 721370)
+ CONFIG_SHELL='/bin/bash' \
+ ECONF_SOURCE="${S}" \
+ MOC="$(qt5_get_bindir)"/moc \
+ econf "${myeconfargs[@]}"
+
+ # work around out-of-source build issues for multilib systems (bug 672184)
+ mkdir qt zbarcam || die
+}
+
+src_test() {
+ virtx multilib-minimal_src_test
+}
+
+src_install() {
+ if use qt5; then
+ local MULTILIB_WRAPPED_HEADERS=(
+ /usr/include/zbar/QZBar.h
+ /usr/include/zbar/QZBarImage.h
+ )
+ fi
+ multilib-minimal_src_install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_preinst() {
+ use java && java-pkg-opt-2_pkg_preinst
+}