diff options
author | V3n3RiX <venerix@koprulu.sector> | 2022-07-24 08:52:43 +0100 |
---|---|---|
committer | V3n3RiX <venerix@koprulu.sector> | 2022-07-24 08:52:43 +0100 |
commit | 28267a5e528b273fbd1b0f5f52ecaab4b03016ab (patch) | |
tree | f2c2ddc5cf19fcbc848cc9fe427df5abd8ac0339 /media-gfx/sane-backends | |
parent | e19b21c73e5feac42ade97baf3eeb45c58a2f234 (diff) |
gentoo auto-resync : 24:07:2022 - 08:52:43
Diffstat (limited to 'media-gfx/sane-backends')
-rw-r--r-- | media-gfx/sane-backends/Manifest | 1 | ||||
-rw-r--r-- | media-gfx/sane-backends/sane-backends-1.1.1-r4.ebuild | 366 |
2 files changed, 367 insertions, 0 deletions
diff --git a/media-gfx/sane-backends/Manifest b/media-gfx/sane-backends/Manifest index e6b548e7d17d..9c1304857d00 100644 --- a/media-gfx/sane-backends/Manifest +++ b/media-gfx/sane-backends/Manifest @@ -10,4 +10,5 @@ AUX saned.socket 132 BLAKE2B 5e9f0350a1553fc75aea88ce355fb68b881e3b2194ac0e3c6f3 AUX saned_at.service 434 BLAKE2B 6dad3c809e01c17c0064a52c4103486b19294ed3cf8fc71faad18edaf71b920584366ac988d354f45bc07607ea64a97ea480fe152ac9a1cd896df99ff457cbf7 SHA512 891c751261107676f8159f403e0f4d4254099b709b9ba0ac9f2af97a9ed30f677411ad6bc316c2e6e673c616ba988253479d5e30c9617e3ae279beb79f70e965 DIST sane-backends-1.1.1.tar.gz 7447569 BLAKE2B 02ac1822beabb12f19ce2d7c053f0f727313d13e0f9380325492a2f0048094f78a118f7659b4c6e39b60c4ea319d862a242f8866a67c84e5649d9ae2691d9473 SHA512 25bd9f90d550cfe6a6d01c48e83716a53f4b0e3a294287e455ecb5e5b80c8fe1699f45c6c87f694475cceb85745c70597e18a7b1094669d5091c5fb183dfe94d EBUILD sane-backends-1.1.1-r2.ebuild 9349 BLAKE2B 2e89b8f941354bd632ed5965cd6402b53a2db212e4050e1c618aa5e952c35fda2a9eb6769b26cc85b62dbcc6209ae7da8abf600a49afe2b3839020ad85cb504a SHA512 79605c0a0cb97d4c49c6f864de91a7824eea945ae2cd36346e81e3e61116816ae687525bcfae6a75c67857effa7e866aef3f7edc3fc0eb21f52226c16b4a9400 +EBUILD sane-backends-1.1.1-r4.ebuild 9385 BLAKE2B 24cc82d6a6600f3772bb029758eca2818ac28591a1ee7fb49a087d846099a42e5c21b3a836393310a136cf34ae4ad32efda5c31224c019055b13b7123d7d9390 SHA512 66817e15649743d86268b400ea79bf57202607a8c31bdc28d95d43f25b595297d6986ac57ab7f23bf854315c2b46e7e0e8e7039e134cffe32821f15e1403f2ab MISC metadata.xml 267 BLAKE2B cf3ca2583acfc7c5d4b3e053cef4d72bf240aa58c54e8a0f72b9393ee8587bd587d4a88bad4b041cfd50d4465879ed546afa71b6e4570477b376a92ab47bb415 SHA512 d471748b0a9f7d7d4aca203c6bd1ff222f3faa455e7d1df2f8437a188922a40e3a656a5e20032256caf58d664e0f723e25055871e62d102e0c677264942b6fb1 diff --git a/media-gfx/sane-backends/sane-backends-1.1.1-r4.ebuild b/media-gfx/sane-backends/sane-backends-1.1.1-r4.ebuild new file mode 100644 index 000000000000..6bff44a1f891 --- /dev/null +++ b/media-gfx/sane-backends/sane-backends-1.1.1-r4.ebuild @@ -0,0 +1,366 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{8..10} ) + +# python-any-r1 required for a script in +# backends/pixma/scripts/ +inherit autotools flag-o-matic multilib-minimal optfeature python-any-r1 systemd toolchain-funcs udev + +# gphoto and v4l are handled by their usual USE flags. +# The pint backend was disabled because I could not get it to compile. +IUSE_SANE_BACKENDS=( + abaton + agfafocus + apple + artec + artec_eplus48u + as6e + avision + bh + canon + canon630u + canon_dr + canon_lide70 + canon_pp + cardscan + coolscan + coolscan2 + coolscan3 + dc210 + dc240 + dc25 + dell1600n_net + dmc + epjitsu + epson + epson2 + epsonds + escl + fujitsu + genesys + gt68xx + hp + hp3500 + hp3900 + hp4200 + hp5400 + hp5590 + hpljm1005 + hpsj5s + hs2p + ibm + kodak + kodakaio + kvs1025 + kvs20xx + kvs40xx + leo + lexmark + ma1509 + magicolor + matsushita + microtek + microtek2 + mustek + mustek_pp + mustek_usb + mustek_usb2 + nec + net + niash + p5 + pie + pieusb + pixma + plustek + plustek_pp + pnm + qcam + ricoh + ricoh2 + rts8891 + s9036 + sceptre + sharp + sm3600 + sm3840 + snapscan + sp15c + st400 + stv680 + tamarack + teco1 + teco2 + teco3 + test + u12 + umax + umax1220u + umax_pp + xerox_mfp +) + +IUSE="gphoto2 ipv6 snmp systemd threads usb v4l xinetd +zeroconf" + +for GBACKEND in ${IUSE_SANE_BACKENDS[@]}; do + case ${GBACKEND} in + # Disable backends that require parallel ports as no one has those anymore. + canon_pp|hpsj5s|mustek_pp|\ + pnm|mustek_usb2|kvs40xx) + IUSE+=" sane_backends_${GBACKEND}" + ;; + *) + IUSE+=" +sane_backends_${GBACKEND}" + esac +done + +REQUIRED_USE=" + sane_backends_escl? ( zeroconf ) + sane_backends_kvs40xx? ( threads ) + sane_backends_mustek_usb2? ( threads ) +" + +DESCRIPTION="Scanner Access Now Easy - Backends" +HOMEPAGE="http://www.sane-project.org/" +SRC_URI="https://gitlab.com/sane-project/backends/uploads/7d30fab4e115029d91027b6a58d64b43/${P}.tar.gz" + +LICENSE="GPL-2 public-domain" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" + +# For pixma: see https://gitlab.com/sane-project/backends/-/releases/1.0.28#build +RDEPEND=" + acct-user/saned + gphoto2? ( + >=media-libs/libgphoto2-2.5.3.1:=[${MULTILIB_USEDEP}] + media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] + ) + sane_backends_canon_pp? ( >=sys-libs/libieee1284-0.2.11-r3[${MULTILIB_USEDEP}] ) + sane_backends_dc210? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] ) + sane_backends_dc240? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] ) + sane_backends_dell1600n_net? ( + >=media-libs/tiff-3.9.7-r1:0=[${MULTILIB_USEDEP}] + media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] + ) + sane_backends_escl? ( + app-text/poppler[cairo] + || ( + net-dns/avahi[dbus] + net-dns/avahi[gtk] + ) + net-dns/avahi[${MULTILIB_USEDEP}] + net-misc/curl[${MULTILIB_USEDEP}] + ) + sane_backends_hpsj5s? ( >=sys-libs/libieee1284-0.2.11-r3[${MULTILIB_USEDEP}] ) + sane_backends_mustek_pp? ( >=sys-libs/libieee1284-0.2.11-r3[${MULTILIB_USEDEP}] ) + sane_backends_pixma? ( media-libs/libjpeg-turbo:=[${MULTILIB_USEDEP}] ) + snmp? ( net-analyzer/net-snmp:0= ) + systemd? ( sys-apps/systemd:0= ) + usb? ( >=virtual/libusb-1-r1:1=[${MULTILIB_USEDEP}] ) + v4l? ( >=media-libs/libv4l-0.9.5[${MULTILIB_USEDEP}] ) + xinetd? ( sys-apps/xinetd ) + zeroconf? ( >=net-dns/avahi-0.6.31-r2[${MULTILIB_USEDEP}] ) +" + +DEPEND="${RDEPEND} + dev-libs/libxml2 + v4l? ( sys-kernel/linux-headers ) +" +BDEPEND=" + ${PYTHON_DEPS} + sys-devel/autoconf-archive + sys-devel/gettext + virtual/pkgconfig +" + +PATCHES=( + "${FILESDIR}"/${PN}-1.0.24-saned_pidfile_location.patch + "${FILESDIR}"/${PN}-1.0.27-disable-usb-tests.patch + "${FILESDIR}"/${PN}-1.0.30-add_hpaio_epkowa_dll.conf.patch + # https://gitlab.com/sane-project/backends/-/merge_requests/688 + "${FILESDIR}"/${PN}-1.1.1-genesys-gl845-crash.patch +) + +MULTILIB_CHOST_TOOLS=( + /usr/bin/sane-config +) + +src_prepare() { + default + + # Patch out the git reference so we can run eautoreconf + sed \ + -e "s/m4_esyscmd_s(\[git describe --dirty\])/${PV}/" \ + -e '/^AM_MAINTAINER_MODE/d' \ + -i configure.ac || die + eautoreconf + + # Fix for "make check". Upstream sometimes forgets to update this. + local ver=$(./configure --version | awk '{print $NF; exit 0}') + sed -i \ + -e "/by sane-desc 3.5 from sane-backends/s:sane-backends .*:sane-backends ${ver}:" \ + testsuite/tools/data/html* || die + + # don't bleed user LDFLAGS into pkgconfig files + sed 's|@LDFLAGS@ ||' -i tools/*.pc.in || die + + # Needed for udev rules generation/installation + multilib_copy_sources +} + +src_configure() { + # From Fedora + append-flags -fno-strict-aliasing + multilib-minimal_src_configure +} + +multilib_src_configure() { + # the blank is intended - an empty string would result in building ALL backends. + local lbackends=" " + + use gphoto2 && lbackends="gphoto2" + use v4l && lbackends+=" v4l" + use sane_backends_escl && multilib_is_native_abi && lbackends+=" escl" + local backend + for backend in ${IUSE_SANE_BACKENDS[@]} ; do + if use "sane_backends_${backend}" && [[ "${backend}" != pnm ]] && [[ "${backend}" != escl ]] ; then + lbackends+=" ${backend}" + fi + done + + local myconf=( + $(use_with usb) + $(multilib_native_use_with snmp) + + $(multilib_native_use_with sane_backends_escl poppler-glib) + # you can only enable this backend, not disable it... + $(usex sane_backends_pnm --enable-pnm-backend '') + $(usex sane_backends_mustek_pp --enable-parport-directio '') + ) + + if ! { use sane_backends_canon_pp || use sane_backends_hpsj5s || use sane_backends_mustek_pp ; } ; then + myconf+=( sane_cv_use_libieee1284=no ) + fi + + # relative path must be used for tests to work properly + # All distributions pass --disable-locking because /var/lock/sane/ would be a world-writable directory + # that break in many ways, bug #636202, #668232, #668350 + # People can refer to the "Programmer's Documentation" at http://www.sane-project.org/docs.html + myconf+=( + --disable-locking + $(use_with gphoto2) + $(multilib_native_use_with systemd) + $(use_with v4l) + $(use_enable ipv6) + $(use_enable threads pthread) + $(use_with zeroconf avahi) + ) + ECONF_SOURCE="${S}" \ + SANEI_JPEG="sanei_jpeg.o" SANEI_JPEG_LO="sanei_jpeg.lo" \ + BACKENDS="${lbackends}" \ + econf "${myconf[@]}" +} + +multilib_src_compile() { + emake VARTEXFONTS="${T}/fonts" + + if tc-is-cross-compiler ; then + pushd "${BUILD_DIR}"/tools >/dev/null || die + + # The build system sucks and doesn't handle this properly. + # https://alioth.debian.org/tracker/index.php?func=detail&aid=314236&group_id=30186&atid=410366 + tc-export_build_env BUILD_CC + ${BUILD_CC} ${BUILD_CPPFLAGS} ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \ + -I. -I../include -I"${S}"/include \ + "${S}"/sanei/sanei_config.c "${S}"/sanei/sanei_constrain_value.c \ + "${S}"/sanei/sanei_init_debug.c "${S}"/tools/sane-desc.c -o sane-desc || die + local dirs=( hal hotplug hotplug-ng udev ) + local targets=( + hal/libsane.fdi + hotplug/libsane.usermap + hotplug-ng/libsane.db + udev/libsane.rules + ) + mkdir -p "${dirs[@]}" || die + emake "${targets[@]}" + + popd >/dev/null || die + fi + + if use usb ; then + sed -i -e '/^$/d' \ + tools/hotplug/libsane.usermap || die + fi +} + +multilib_src_install() { + emake INSTALL_LOCKPATH="" DESTDIR="${D}" install \ + docdir="${EPREFIX}"/usr/share/doc/${PF} + + if multilib_is_native_abi ; then + if use usb ; then + insinto /etc/hotplug/usb + doins tools/hotplug/libsane.usermap + fi + + insinto "/usr/share/pkgconfig" + doins tools/sane-backends.pc + + # From Fedora and Arch, prevent permission conflicts + # https://github.com/OpenPrinting/cups/issues/314 + # https://gitlab.com/sane-project/backends/-/issues/546 + # + # Generate udev udev+hwdb, not needing scanner group + install -vdm 755 "${ED}/$(get_udevdir)/rules.d/" || die + tools/sane-desc -m udev+hwdb -s doc/descriptions/ > "${ED}/$(get_udevdir)/rules.d/65-${PN}.rules" || die + tools/sane-desc -m udev+hwdb -s doc/descriptions-external/ >> "${ED}/$(get_udevdir)/rules.d/65-${PN}.rules" || die + # generate udev hwdb + install -vdm 755 "${ED}/$(get_udevdir)/hwdb.d/" || die + tools/sane-desc -m hwdb -s doc/descriptions/ > "${ED}/$(get_udevdir)/hwdb.d/20-${PN}.hwdb" + # NOTE: an empty new line is required between the two .desc collections + printf "\n" >> "${ED}/$(get_udevdir)/hwdb.d/20-${PN}.hwdb" || die + tools/sane-desc -m hwdb -s doc/descriptions-external/ >> "${ED}/$(get_udevdir)/hwdb.d/20-${PN}.hwdb" || die + # udev rule for saned (SANE scanning daemon) to be able to write on usb port + udev_dorules "${FILESDIR}/66-saned.rules" + fi +} + +multilib_src_install_all() { + dodir /etc/env.d + + if use systemd ; then + systemd_newunit "${FILESDIR}"/saned_at.service "saned@.service" + systemd_newunit "${FILESDIR}"/saned.socket saned.socket + fi + + if use usb ; then + exeinto /etc/hotplug/usb + doexe tools/hotplug/libusbscanner + newdoc tools/hotplug/README README.hotplug + fi + + dodoc NEWS AUTHORS PROBLEMS README README.linux + find "${ED}" -name '*.la' -delete || die + + if use xinetd ; then + insinto /etc/xinetd.d + doins "${FILESDIR}"/saned + fi + + newinitd "${FILESDIR}"/saned.initd saned + newconfd "${FILESDIR}"/saned.confd saned +} + +pkg_postinst() { + optfeature "Network scanner backend" media-gfx/sane-airscan + optfeature "Epson-specific backend" media-gfx/iscan + optfeature "HP-specific backend" net-print/hplip + + if use xinetd ; then + elog "If you want remote clients to connect, edit" + elog "/etc/sane.d/saned.conf and /etc/hosts.allow" + fi +} |