diff options
author | Andreas Sturmlechner <asturm@gentoo.org> | 2022-04-05 17:30:03 +0200 |
---|---|---|
committer | Andreas Sturmlechner <asturm@gentoo.org> | 2022-04-05 18:33:48 +0200 |
commit | f108b95e0cc1025f4c6d8119b14e779ff843230e (patch) | |
tree | d3a647c6adc7a7675751e09ffa8a4b9d3f6b0e92 /media-gfx/zbar | |
parent | dev-qt/qtwebengine: 5.15.3_p20220330 version bump, py3 (diff) | |
download | gentoo-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/Manifest | 1 | ||||
-rw-r--r-- | media-gfx/zbar/files/zbar-0.23.90-fix-gtk-default.patch | 35 | ||||
-rw-r--r-- | media-gfx/zbar/files/zbar-0.23.90-fix-qt5x11extras-detect.patch | 18 | ||||
-rw-r--r-- | media-gfx/zbar/files/zbar-0.23.90-fix-unittest.patch | 78 | ||||
-rw-r--r-- | media-gfx/zbar/zbar-0.23.90.ebuild | 228 |
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 +} |