From 193e619cc2c2dcd669d5ba4c7707d36c6591613f Mon Sep 17 00:00:00 2001 From: BlackNoxis Date: Mon, 5 Jan 2015 22:38:48 +0200 Subject: Adding cnijfilter drivers --- net-print/cnijfilter-drivers/Manifest | 4 + .../cnijfilter-drivers-3.20.ebuild | 166 ++++++++++++++++++++ .../cnijfilter-drivers-3.60.ebuild | 166 ++++++++++++++++++++ .../cnijfilter-drivers-3.70.ebuild | 166 ++++++++++++++++++++ .../cnijfilter-drivers-3.80.ebuild | 167 +++++++++++++++++++++ .../files/cnijfilter-3.70-libexec-backend.patch | 22 +++ .../files/cnijfilter-3.70-libexec-cups.patch | 9 ++ .../files/cnijfilter-3.70-png.patch | 22 +++ .../files/cnijfilter-3.70-ppd.patch | 11 ++ .../files/cnijfilter-3.70-ppd2.patch | 11 ++ .../files/cnijfilter-3.80-cups.patch | 10 ++ net-print/cnijfilter-drivers/files/index.html | 17 +++ .../cnijfilter-drivers/files/index.html?C=D;O=A | 17 +++ .../cnijfilter-drivers/files/index.html?C=D;O=D | 17 +++ .../cnijfilter-drivers/files/index.html?C=M;O=A | 17 +++ .../cnijfilter-drivers/files/index.html?C=M;O=D | 17 +++ .../cnijfilter-drivers/files/index.html?C=N;O=A | 17 +++ .../cnijfilter-drivers/files/index.html?C=N;O=D | 17 +++ .../cnijfilter-drivers/files/index.html?C=S;O=A | 17 +++ .../cnijfilter-drivers/files/index.html?C=S;O=D | 17 +++ 20 files changed, 907 insertions(+) create mode 100644 net-print/cnijfilter-drivers/Manifest create mode 100644 net-print/cnijfilter-drivers/cnijfilter-drivers-3.20.ebuild create mode 100644 net-print/cnijfilter-drivers/cnijfilter-drivers-3.60.ebuild create mode 100644 net-print/cnijfilter-drivers/cnijfilter-drivers-3.70.ebuild create mode 100644 net-print/cnijfilter-drivers/cnijfilter-drivers-3.80.ebuild create mode 100644 net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-backend.patch create mode 100644 net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-cups.patch create mode 100644 net-print/cnijfilter-drivers/files/cnijfilter-3.70-png.patch create mode 100644 net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd.patch create mode 100644 net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd2.patch create mode 100644 net-print/cnijfilter-drivers/files/cnijfilter-3.80-cups.patch create mode 100644 net-print/cnijfilter-drivers/files/index.html create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=D;O=A create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=D;O=D create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=M;O=A create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=M;O=D create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=N;O=A create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=N;O=D create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=S;O=A create mode 100644 net-print/cnijfilter-drivers/files/index.html?C=S;O=D diff --git a/net-print/cnijfilter-drivers/Manifest b/net-print/cnijfilter-drivers/Manifest new file mode 100644 index 00000000..6f5802d3 --- /dev/null +++ b/net-print/cnijfilter-drivers/Manifest @@ -0,0 +1,4 @@ +DIST cnijfilter-source-3.20-1.tar.gz 6494749 SHA256 2fc4dcd79d6644baeb0c8a0ee1b43dc9f59f44d21f773c0d85bfe2660a180b9a SHA512 3e6e5f3ed43e4054938387298a6d116828a0928568b3a165622c5a61abe9e39a30bc6d99a336317be228a794f0a2645b8f5453939695879f209b1a061b7d9164 WHIRLPOOL e368000c2d38ee0714513b9836edf8eaeea48945c8790c202418ae1508b64037edd76436228644177b66b9ccd6f097eb470a67a561385342363f3170490a3319 +DIST cnijfilter-source-3.60-1.tar.gz 9577578 SHA256 7e4f91a0aebfa32d75da046a20bab992bd6032bb2069cf0091e77d8119a489de SHA512 69b5c0f3b6bc886d32937e710d244b1cba1644bda025280703ec231d2243c2e0ff6a321b9bc68f8cc43ae596559619aa0f587a7b6d9b0d3b583b22f6faaac2d7 WHIRLPOOL c1325ff5f0e489d0367d05a0ffb27a56f89249487f8b531cf2adbc311773dd3cadb32cc70b6ac82bb3474be88ea00a092eb2bb89e75d74d0f6bdd8c73599b816 +DIST cnijfilter-source-3.70-1.tar.gz 8479039 SHA256 6bd51f1926bb11afaf42633eaed6f0e8ee6424e452a2ca1f746f3146f7bc10be SHA512 1f9e8979e436fb99a146b27ea56e29961cdfc9f6a8c30c79fbe64a87e1c22f6cef86af48c56ea1bf086f6a0791822f9381ef41b6fa92a9af9cbf989cac80b797 WHIRLPOOL c8e054fec759630c1bb11efa6e86e96425cf169f828c70898f6cad7c1e7841bb4e31c1b883eaed3e17599c84619644382ab91ce9606be6fcd70ae57a13ed5339 +DIST cnijfilter-source-3.80-1.tar.gz 8923054 SHA256 8b6d408f18191f19465ee8fc31aa08455e8bec186fdd3f02ee822f53a9b086a9 SHA512 95a16e3b4fc38ce0b7a12bd74466d97e726bc410b59bf6d1963fa52b16a8cc67f6a993a5ef945107201f860d8ac6734c462bc0bf6d2160d6c85c5f61aff040c1 WHIRLPOOL 2e27afa454ce1fa41700f65ace7ae7469464cc8685499c4927c559aef2fd79613297d1ec1e5cf1dd309da541c5b662a0c4d4d71fabf4b514e186eb2bceb80c5c diff --git a/net-print/cnijfilter-drivers/cnijfilter-drivers-3.20.ebuild b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.20.ebuild new file mode 100644 index 00000000..f8f920e4 --- /dev/null +++ b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.20.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +MY_PN="${PN/-drivers/}" + +inherit eutils autotools flag-o-matic multilib + +DESCRIPTION="Canon InkJet Printer Driver for Linux (Pixus/Pixma-Series)." +HOMEPAGE="http://support-sg.canon-asia.com/contents/SG/EN/0100236704.html" +SRC_URI="http://gdlp01.c-wss.com/gds/7/0100002367/01/${MY_PN}-source-${PV}-1.tar.gz" + +LICENSE="GPL-2 cnijfilter" +SLOT="${PV}" +KEYWORDS="~x86" +PRINTER_USE=( mp250 mp270 mp490 mp550 mp560 ip4700 mp640 ) +PRINTER_ID=( 356 357 358 359 360 361 362 ) +IUSE="${PRINTER_USE[@]} +servicetools" + +RDEPEND=" + net-print/cnijfilter[servicetools?] + >=media-libs/libpng-1.5 + >=media-libs/tiff-3.4 + >=net-print/cups-1.4 + servicetools? ( + >=dev-libs/libxml2-2.7.3-r2 + >=x11-libs/gtk+-2.6:2 + ) +" +DEPEND="${DEPEND} + sys-devel/gettext +" + +REQUIRED_USE="|| ( ${PRINTER_USE[@]} )" + +S="${WORKDIR}/${MY_PN}-source-${PV}-1" + +_dir_build() { + local dirs=$1 + local command=$2 + local d + + [[ $# -ne 2 ]] && die "Call as: _dir_build DIRS COMMAND" + + for d in ${dirs}; do + local suffix="" + echo ">>> Working in: ${d}" + pushd ${d} >/dev/null + # progpath must be set otherwise we go for /usr/local/bin + if [[ ${command} == econf* ]]; then + ${command} --enable-progpath="${EPREFIX}/usr/bin" + else + ${command} + fi + popd > /dev/null + done +} + +_printer_dir_build() { + local command=$1 + local d + + [[ $# -ne 1 ]] && die "Call as: _printer_dir_build COMMAND" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + if use ${name}; then + for d in ${DIRS_PRINTER}; do + echo ">>> Working in: ${name}/${d}" + pushd ${name}/${d} > /dev/null + if [[ ${command} == econf* ]]; then + ${command} \ + --enable-progpath="${EPREFIX}/usr/bin" \ + --program-suffix=${name} + else + ${command} + fi + popd > /dev/null + done + fi + done +} + +pkg_setup() { + [[ -z ${LINGUAS} ]] && LINGUAS="en" + + DIRS_PRINTER="cnijfilter" + # lgmon must be first as it is required by cngpijmon + use servicetools && DIRS_PRINTER+=" lgmon cngpijmon printui" +} + +src_prepare() { + local d i + + # missing macros directory make aclocal fail + mkdir printui/m4 || die + + epatch \ + "${FILESDIR}/${MY_PN}"-3.70-png.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd2.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-cups.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-backend.patch + + _dir_build "${DIRS_PRINTER}" "eautoreconf" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + mkdir -p ${name} || die + ln -s "${S}"/${pid} ${name}/ || die + for d in ${DIRS_PRINTER}; do + cp -a ${d} ${name} || die + done + fi + done +} + +src_configure() { + local d i + + _printer_dir_build "econf" +} + +src_compile() { + _printer_dir_build "emake" +} + +src_install() { + local _libdir="${EPREFIX}/usr/$(get_libdir)" + local _libdir_pkg=libs_bin$(use amd64 && echo 64 || echo 32) + local _ppddir="${EPREFIX}/usr/share/cups/model" + + _printer_dir_build "emake DESTDIR=${D} install" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + dodir ${_libdir} + # no doexe due to symlinks + cp -a "${pid}/${_libdir_pkg}"/* "${D}/${_libdir}" || die + exeinto ${_libdir}/cnijlib + doexe ${pid}/database/* + # create symlink for the cnijlib to bjlib as some formats need it + dosym ${_libdir}/cnijlib ${_libdir}/bjlib + insinto ${_ppddir} + doins ppd/canon${name}.ppd + fi + done +} + +pkg_postinst() { + einfo "" + einfo "For installing a printer:" + einfo " * Restart CUPS: /etc/init.d/cupsd restart" + einfo " * Go to http://127.0.0.1:631/" + einfo " -> Printers -> Add Printer" + einfo "" + einfo "If you experience any problems, please visit:" + einfo " http://forums.gentoo.org/viewtopic-p-3217721.html" + einfo "" +} diff --git a/net-print/cnijfilter-drivers/cnijfilter-drivers-3.60.ebuild b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.60.ebuild new file mode 100644 index 00000000..ca8036f7 --- /dev/null +++ b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.60.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +MY_PN="${PN/-drivers/}" + +inherit eutils autotools flag-o-matic multilib + +DESCRIPTION="Canon InkJet Printer Driver for Linux (Pixus/Pixma-Series)." +HOMEPAGE="http://support-sg.canon-asia.com/contents/SG/EN/0100392802.html" +SRC_URI="http://gdlp01.c-wss.com/gds/8/0100003928/01/${MY_PN}-source-${PV}-1.tar.gz" + +LICENSE="GPL-2 cnijfilter" +SLOT="${PV}" +KEYWORDS="~amd64 ~x86" +PRINTER_USE=( mg2100 mg3100 mg4100 mg5300 mg6200 mg8200 ip4900 e500 ) +PRINTER_ID=( 386 387 388 389 390 391 392 393 ) +IUSE="${PRINTER_USE[@]} +servicetools" + +RDEPEND=" + net-print/cnijfilter[servicetools?] + >=media-libs/libpng-1.5 + >=media-libs/tiff-3.4 + >=net-print/cups-1.4 + servicetools? ( + >=dev-libs/libxml2-2.7.3-r2 + >=x11-libs/gtk+-2.6:2 + ) +" +DEPEND="${DEPEND} + sys-devel/gettext +" + +REQUIRED_USE="|| ( ${PRINTER_USE[@]} )" + +S="${WORKDIR}/${MY_PN}-source-${PV}-1" + +_dir_build() { + local dirs=$1 + local command=$2 + local d + + [[ $# -ne 2 ]] && die "Call as: _dir_build DIRS COMMAND" + + for d in ${dirs}; do + local suffix="" + echo ">>> Working in: ${d}" + pushd ${d} >/dev/null + # progpath must be set otherwise we go for /usr/local/bin + if [[ ${command} == econf* ]]; then + ${command} --enable-progpath="${EPREFIX}/usr/bin" + else + ${command} + fi + popd > /dev/null + done +} + +_printer_dir_build() { + local command=$1 + local d + + [[ $# -ne 1 ]] && die "Call as: _printer_dir_build COMMAND" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + if use ${name}; then + for d in ${DIRS_PRINTER}; do + echo ">>> Working in: ${name}/${d}" + pushd ${name}/${d} > /dev/null + if [[ ${command} == econf* ]]; then + ${command} \ + --enable-progpath="${EPREFIX}/usr/bin" \ + --program-suffix=${name} + else + ${command} + fi + popd > /dev/null + done + fi + done +} + +pkg_setup() { + [[ -z ${LINGUAS} ]] && LINGUAS="en" + + DIRS_PRINTER="cnijfilter" + # lgmon must be first as it is required by cngpijmon + use servicetools && DIRS_PRINTER+=" lgmon cngpijmon printui" +} + +src_prepare() { + local d i + + # missing macros directory make aclocal fail + mkdir printui/m4 || die + + epatch \ + "${FILESDIR}/${MY_PN}"-3.70-png.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd2.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-cups.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-backend.patch + + _dir_build "${DIRS_PRINTER}" "eautoreconf" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + mkdir -p ${name} || die + ln -s "${S}"/${pid} ${name}/ || die + for d in ${DIRS_PRINTER}; do + cp -a ${d} ${name} || die + done + fi + done +} + +src_configure() { + local d i + + _printer_dir_build "econf" +} + +src_compile() { + _printer_dir_build "emake" +} + +src_install() { + local _libdir="${EPREFIX}/usr/$(get_libdir)" + local _libdir_pkg=libs_bin$(use amd64 && echo 64 || echo 32) + local _ppddir="${EPREFIX}/usr/share/cups/model" + + _printer_dir_build "emake DESTDIR=${D} install" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + dodir ${_libdir} + # no doexe due to symlinks + cp -a "${pid}/${_libdir_pkg}"/* "${D}/${_libdir}" || die + exeinto ${_libdir}/cnijlib + doexe ${pid}/database/* + # create symlink for the cnijlib to bjlib as some formats need it + dosym ${_libdir}/cnijlib ${_libdir}/bjlib + insinto ${_ppddir} + doins ppd/canon${name}.ppd + fi + done +} + +pkg_postinst() { + einfo "" + einfo "For installing a printer:" + einfo " * Restart CUPS: /etc/init.d/cupsd restart" + einfo " * Go to http://127.0.0.1:631/" + einfo " -> Printers -> Add Printer" + einfo "" + einfo "If you experience any problems, please visit:" + einfo " http://forums.gentoo.org/viewtopic-p-3217721.html" + einfo "" +} diff --git a/net-print/cnijfilter-drivers/cnijfilter-drivers-3.70.ebuild b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.70.ebuild new file mode 100644 index 00000000..ced74ef1 --- /dev/null +++ b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.70.ebuild @@ -0,0 +1,166 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +MY_PN="${PN/-drivers/}" + +inherit eutils autotools flag-o-matic multilib + +DESCRIPTION="Canon InkJet Printer Driver for Linux (Pixus/Pixma-Series)." +HOMEPAGE="http://support-sg.canon-asia.com/contents/SG/EN/0100411802.html" +SRC_URI="http://gdlp01.c-wss.com/gds/8/0100004118/01/${MY_PN}-source-${PV}-1.tar.gz" + +LICENSE="GPL-2 cnijfilter" +SLOT="${PV}" +KEYWORDS="~amd64 ~x86" +PRINTER_USE=( ip100 mx710 mx890 mx370 mx430 mx510 e600 ) +PRINTER_ID=( 303 394 395 396 397 398 399 ) +IUSE="${PRINTER_USE[@]} +servicetools" + +RDEPEND=" + net-print/cnijfilter[servicetools?] + >=media-libs/libpng-1.5 + >=media-libs/tiff-3.4 + >=net-print/cups-1.4 + servicetools? ( + >=dev-libs/libxml2-2.7.3-r2 + >=x11-libs/gtk+-2.6:2 + ) +" +DEPEND="${DEPEND} + sys-devel/gettext +" + +REQUIRED_USE="|| ( ${PRINTER_USE[@]} )" + +S="${WORKDIR}/${MY_PN}-source-${PV}-1" + +_dir_build() { + local dirs=$1 + local command=$2 + local d + + [[ $# -ne 2 ]] && die "Call as: _dir_build DIRS COMMAND" + + for d in ${dirs}; do + local suffix="" + echo ">>> Working in: ${d}" + pushd ${d} >/dev/null + # progpath must be set otherwise we go for /usr/local/bin + if [[ ${command} == econf* ]]; then + ${command} --enable-progpath="${EPREFIX}/usr/bin" + else + ${command} + fi + popd > /dev/null + done +} + +_printer_dir_build() { + local command=$1 + local d + + [[ $# -ne 1 ]] && die "Call as: _printer_dir_build COMMAND" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + if use ${name}; then + for d in ${DIRS_PRINTER}; do + echo ">>> Working in: ${name}/${d}" + pushd ${name}/${d} > /dev/null + if [[ ${command} == econf* ]]; then + ${command} \ + --enable-progpath="${EPREFIX}/usr/bin" \ + --program-suffix=${name} + else + ${command} + fi + popd > /dev/null + done + fi + done +} + +pkg_setup() { + [[ -z ${LINGUAS} ]] && LINGUAS="en" + + DIRS_PRINTER="cnijfilter" + # lgmon must be first as it is required by cngpijmon + use servicetools && DIRS_PRINTER+=" lgmon cngpijmon printui" +} + +src_prepare() { + local d i + + # missing macros directory make aclocal fail + mkdir printui/m4 || die + + epatch \ + "${FILESDIR}/${MY_PN}"-3.70-png.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd2.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-cups.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-backend.patch + + _dir_build "${DIRS_PRINTER}" "eautoreconf" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + mkdir -p ${name} || die + ln -s "${S}"/${pid} ${name}/ || die + for d in ${DIRS_PRINTER}; do + cp -a ${d} ${name} || die + done + fi + done +} + +src_configure() { + local d i + + _printer_dir_build "econf" +} + +src_compile() { + _printer_dir_build "emake" +} + +src_install() { + local _libdir="${EPREFIX}/usr/$(get_libdir)" + local _libdir_pkg=libs_bin$(use amd64 && echo 64 || echo 32) + local _ppddir="${EPREFIX}/usr/share/cups/model" + + _printer_dir_build "emake DESTDIR=${D} install" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + dodir ${_libdir} + # no doexe due to symlinks + cp -a "${pid}/${_libdir_pkg}"/* "${D}/${_libdir}" || die + exeinto ${_libdir}/cnijlib + doexe ${pid}/database/* + # create symlink for the cnijlib to bjlib as some formats need it + dosym ${_libdir}/cnijlib ${_libdir}/bjlib + insinto ${_ppddir} + doins ppd/canon${name}.ppd + fi + done +} + +pkg_postinst() { + einfo "" + einfo "For installing a printer:" + einfo " * Restart CUPS: /etc/init.d/cupsd restart" + einfo " * Go to http://127.0.0.1:631/" + einfo " -> Printers -> Add Printer" + einfo "" + einfo "If you experience any problems, please visit:" + einfo " http://forums.gentoo.org/viewtopic-p-3217721.html" + einfo "" +} diff --git a/net-print/cnijfilter-drivers/cnijfilter-drivers-3.80.ebuild b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.80.ebuild new file mode 100644 index 00000000..008fd20a --- /dev/null +++ b/net-print/cnijfilter-drivers/cnijfilter-drivers-3.80.ebuild @@ -0,0 +1,167 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=5 + +MY_PN="${PN/-drivers/}" + +inherit eutils autotools flag-o-matic multilib + +DESCRIPTION="Canon InkJet Printer Driver for Linux (Pixus/Pixma-Series)." +HOMEPAGE="http://support-sg.canon-asia.com/contents/SG/EN/0100469302.html" +SRC_URI="http://gdlp01.c-wss.com/gds/3/0100004693/01/${MY_PN}-source-${PV}-1.tar.gz" + +LICENSE="GPL-2 cnijfilter" +SLOT="${PV}" +KEYWORDS="~amd64 ~x86" +PRINTER_USE=( mp230 mg2200 e510 mg3200 mg4200 ip7200 mg5400 mg6300 ) +PRINTER_ID=( 401 402 403 404 405 406 407 408 ) +IUSE="${PRINTER_USE[@]} +servicetools" + +RDEPEND=" + net-print/cnijfilter[servicetools?] + >=media-libs/libpng-1.5 + >=media-libs/tiff-3.4 + >=net-print/cups-1.4 + servicetools? ( + >=dev-libs/libxml2-2.7.3-r2 + >=x11-libs/gtk+-2.6:2 + ) +" +DEPEND="${DEPEND} + sys-devel/gettext +" + +REQUIRED_USE="|| ( ${PRINTER_USE[@]} )" + +S="${WORKDIR}/${MY_PN}-source-${PV}-1" + +_dir_build() { + local dirs=$1 + local command=$2 + local d + + [[ $# -ne 2 ]] && die "Call as: _dir_build DIRS COMMAND" + + for d in ${dirs}; do + local suffix="" + echo ">>> Working in: ${d}" + pushd ${d} >/dev/null + # progpath must be set otherwise we go for /usr/local/bin + if [[ ${command} == econf* ]]; then + ${command} --enable-progpath="${EPREFIX}/usr/bin" + else + ${command} + fi + popd > /dev/null + done +} + +_printer_dir_build() { + local command=$1 + local d + + [[ $# -ne 1 ]] && die "Call as: _printer_dir_build COMMAND" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + if use ${name}; then + for d in ${DIRS_PRINTER}; do + echo ">>> Working in: ${name}/${d}" + pushd ${name}/${d} > /dev/null + if [[ ${command} == econf* ]]; then + ${command} \ + --enable-progpath="${EPREFIX}/usr/bin" \ + --program-suffix=${name} + else + ${command} + fi + popd > /dev/null + done + fi + done +} + +pkg_setup() { + [[ -z ${LINGUAS} ]] && LINGUAS="en" + + DIRS_PRINTER="cnijfilter" + # lgmon must be first as it is required by cngpijmon + use servicetools && DIRS_PRINTER+=" lgmon cngpijmon maintenance" +} + +src_prepare() { + local d i + + # missing macros directory make aclocal fail + mkdir maintenance/m4 || die + + epatch \ + "${FILESDIR}/${MY_PN}"-3.70-png.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd.patch \ + "${FILESDIR}/${MY_PN}"-3.70-ppd2.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-cups.patch \ + "${FILESDIR}/${MY_PN}"-3.70-libexec-backend.patch \ + "${FILESDIR}/${MY_PN}"-3.80-cups.patch + + _dir_build "${DIRS_PRINTER}" "eautoreconf" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + mkdir -p ${name} || die + ln -s "${S}"/${pid} ${name}/ || die + for d in ${DIRS_PRINTER}; do + cp -a ${d} ${name} || die + done + fi + done +} + +src_configure() { + local d i + + _printer_dir_build "econf" +} + +src_compile() { + _printer_dir_build "emake" +} + +src_install() { + local _libdir="${EPREFIX}/usr/$(get_libdir)" + local _libdir_pkg=libs_bin$(use amd64 && echo 64 || echo 32) + local _ppddir="${EPREFIX}/usr/share/cups/model" + + _printer_dir_build "emake DESTDIR=${D} install" + + for (( i=0; i<${#PRINTER_USE[@]}; i++ )); do + local name="${PRINTER_USE[$i]}" + local pid="${PRINTER_ID[$i]}" + if use ${name}; then + dodir ${_libdir} + # no doexe due to symlinks + cp -a "${pid}/${_libdir_pkg}"/* "${D}/${_libdir}" || die + exeinto ${_libdir}/cnijlib + doexe ${pid}/database/* + # create symlink for the cnijlib to bjlib as some formats need it + dosym ${_libdir}/cnijlib ${_libdir}/bjlib + insinto ${_ppddir} + doins ppd/canon${name}.ppd + fi + done +} + +pkg_postinst() { + einfo "" + einfo "For installing a printer:" + einfo " * Restart CUPS: /etc/init.d/cupsd restart" + einfo " * Go to http://127.0.0.1:631/" + einfo " -> Printers -> Add Printer" + einfo "" + einfo "If you experience any problems, please visit:" + einfo " http://forums.gentoo.org/viewtopic-p-3217721.html" + einfo "" +} diff --git a/net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-backend.patch b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-backend.patch new file mode 100644 index 00000000..ca2073a5 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-backend.patch @@ -0,0 +1,22 @@ +diff -urN cnijfilter-source-3.70-1.old/backend/src/Makefile.am cnijfilter-source-3.70-1/backend/src/Makefile.am +--- cnijfilter-source-3.70-1.old/backend/src/Makefile.am 2012-12-22 11:09:21.674631729 +0100 ++++ cnijfilter-source-3.70-1/backend/src/Makefile.am 2012-12-22 14:20:50.879566578 +0100 +@@ -1,6 +1,6 @@ + ## Process this file with automake to produce Makefile.in + +-backend_bindir = /usr/lib/cups/backend ++backend_bindir = /usr/libexec/cups/backend + backend_bin_PROGRAMS = cnijusb + transform = + +diff -urN cnijfilter-source-3.70-1.old/backendnet/backend/Makefile.am cnijfilter-source-3.70-1/backendnet/backend/Makefile.am +--- cnijfilter-source-3.70-1.old/backendnet/backend/Makefile.am 2012-12-22 11:09:21.673631729 +0100 ++++ cnijfilter-source-3.70-1/backendnet/backend/Makefile.am 2012-12-22 14:20:20.176569425 +0100 +@@ -1,6 +1,6 @@ + ## Process this file with automake to produce Makefile.in + +-backendnet_bindir = /usr/lib/cups/backend ++backendnet_bindir = /usr/libexec/cups/backend + backendnet_bin_PROGRAMS = cnijnet + transform = + diff --git a/net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-cups.patch b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-cups.patch new file mode 100644 index 00000000..858343f4 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-libexec-cups.patch @@ -0,0 +1,9 @@ +diff -urN cnijfilter-source-3.70-1.old/pstocanonij/filter/Makefile.am cnijfilter-source-3.70-1/pstocanonij/filter/Makefile.am +--- cnijfilter-source-3.70-1.old/pstocanonij/filter/Makefile.am 2012-12-21 17:27:54.370964561 +0100 ++++ cnijfilter-source-3.70-1/pstocanonij/filter/Makefile.am 2012-12-21 18:22:48.804097963 +0100 +@@ -1,4 +1,4 @@ +-filterdir=$(libdir)/cups/filter ++filterdir=$(libexecdir)/cups/filter + + filter_PROGRAMS= pstocanonij + diff --git a/net-print/cnijfilter-drivers/files/cnijfilter-3.70-png.patch b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-png.patch new file mode 100644 index 00000000..0e32f236 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-png.patch @@ -0,0 +1,22 @@ +--- cnijfilter-3.70/cnijfilter/src/bjfimage.c 2011-09-22 04:33:34.000000000 +0200 ++++ cnijfilter-3.70/cnijfilter/src/bjfimage.c 2012-09-15 16:22:38.000000000 +0200 +@@ -1520,8 +1520,8 @@ + short tmpformat; + short retbyte = 0; + short bpp = 3; +- long width = 0; +- long length = 0; ++ png_uint_32 width = 0; ++ png_uint_32 length = 0; + long rstep = 0; + long RasterLength = 0; + long i; +@@ -1574,7 +1574,7 @@ + goto onErr; + } + +- if (setjmp (png_p->jmpbuf)) ++ if (setjmp (png_jmpbuf(png_p))) + { + png_destroy_read_struct(&png_p, &info_p, (png_infopp)NULL); + goto onErr; diff --git a/net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd.patch b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd.patch new file mode 100644 index 00000000..a1d1ad23 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd.patch @@ -0,0 +1,11 @@ +diff -urN cnijfilter-source-3.70-1.old/cngpijmon/src/bjcupsmon_cups.c cnijfilter-source-3.70-1/cngpijmon/src/bjcupsmon_cups.c +--- cnijfilter-source-3.70-1.old/cngpijmon/src/bjcupsmon_cups.c 2012-12-21 17:27:54.599964570 +0100 ++++ cnijfilter-source-3.70-1/cngpijmon/src/bjcupsmon_cups.c 2012-12-21 17:28:42.076966493 +0100 +@@ -20,6 +20,7 @@ + /*** Includes ***/ + #include + #include ++#include + #include + #include + #include diff --git a/net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd2.patch b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd2.patch new file mode 100644 index 00000000..8b1e6ae3 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/cnijfilter-3.70-ppd2.patch @@ -0,0 +1,11 @@ +diff -urN cnijfilter-source-3.70-1.old/backend/src/cnij_backend_common.c cnijfilter-source-3.70-1/backend/src/cnij_backend_common.c +--- cnijfilter-source-3.70-1.old/backend/src/cnij_backend_common.c 2012-12-22 11:09:21.674631729 +0100 ++++ cnijfilter-source-3.70-1/backend/src/cnij_backend_common.c 2012-12-22 11:11:31.903619656 +0100 +@@ -38,6 +38,7 @@ + // CUPS Header + #include + #include ++#include + + // Header file for CANON + #include "cnij_backend_common.h" diff --git a/net-print/cnijfilter-drivers/files/cnijfilter-3.80-cups.patch b/net-print/cnijfilter-drivers/files/cnijfilter-3.80-cups.patch new file mode 100644 index 00000000..ddaad73e --- /dev/null +++ b/net-print/cnijfilter-drivers/files/cnijfilter-3.80-cups.patch @@ -0,0 +1,10 @@ +--- cnijfilter-source-3.80-1.old/cngpijmon/src/bjcupsmon_cups.c 2014-04-05 23:24:12.193048137 +0200 ++++ cnijfilter-source-3.80-1/cngpijmon/src/bjcupsmon_cups.c 2014-04-05 23:11:35.748504996 +0200 +@@ -18,6 +18,7 @@ + */ + + /*** Includes ***/ ++#define _IPP_PRIVATE_STRUCTURES 1 + #include + #include + #include diff --git a/net-print/cnijfilter-drivers/files/index.html b/net-print/cnijfilter-drivers/files/index.html new file mode 100644 index 00000000..74bda0b4 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=D;O=A b/net-print/cnijfilter-drivers/files/index.html?C=D;O=A new file mode 100644 index 00000000..4bee9046 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=D;O=A @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=D;O=D b/net-print/cnijfilter-drivers/files/index.html?C=D;O=D new file mode 100644 index 00000000..29adaeec --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=D;O=D @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=M;O=A b/net-print/cnijfilter-drivers/files/index.html?C=M;O=A new file mode 100644 index 00000000..f5efbde1 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=M;O=A @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=M;O=D b/net-print/cnijfilter-drivers/files/index.html?C=M;O=D new file mode 100644 index 00000000..29adaeec --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=M;O=D @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=N;O=A b/net-print/cnijfilter-drivers/files/index.html?C=N;O=A new file mode 100644 index 00000000..74bda0b4 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=N;O=A @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=N;O=D b/net-print/cnijfilter-drivers/files/index.html?C=N;O=D new file mode 100644 index 00000000..29adaeec --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=N;O=D @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=S;O=A b/net-print/cnijfilter-drivers/files/index.html?C=S;O=A new file mode 100644 index 00000000..19894533 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=S;O=A @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +
+
Apache Server at data.gpo.zugaina.org Port 80
+ diff --git a/net-print/cnijfilter-drivers/files/index.html?C=S;O=D b/net-print/cnijfilter-drivers/files/index.html?C=S;O=D new file mode 100644 index 00000000..5321e6e9 --- /dev/null +++ b/net-print/cnijfilter-drivers/files/index.html?C=S;O=D @@ -0,0 +1,17 @@ + + + + Index of /sabayon/net-print/cnijfilter-drivers/files + + +

Index of /sabayon/net-print/cnijfilter-drivers/files

+
Icon  Name                    Last modified      Size  Description
[DIR] Parent Directory - +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 1.0K +[   ] cnijfilter-3.70-png...> 19-Dec-2014 20:38 591 +[TXT] cnijfilter-3.70-ppd2..> 19-Dec-2014 20:38 500 +[TXT] cnijfilter-3.70-ppd...> 19-Dec-2014 20:38 498 +[   ] cnijfilter-3.70-libe..> 19-Dec-2014 20:38 442 +[TXT] cnijfilter-3.80-cups..> 19-Dec-2014 20:38 351 +
+
Apache Server at data.gpo.zugaina.org Port 80
+ -- cgit v1.2.3