xref: /OK3568_Linux_fs/yocto/meta-openembedded/meta-oe/recipes-printing/gutenprint/gutenprint_git.bb (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1# Recipe for building gutenprint
2#
3# Uses the gutenprint-native extracted strings and disable local build stuff
4#
5# Copyright (c) Ambu A/S - All rights reserved
6# SPDX-License-Identifier: MIT
7#
8# Author(s)
9#   clst@ambu.com (Claus Stovgaard)
10#
11
12require gutenprint.inc
13
14inherit autotools-brokensep pkgconfig
15
16DEPENDS += "cups gutenprint-native"
17
18# cups-genppdupdate depend on perl
19# We also set the path to PERL as else the version in hosttools would be used
20# with full path
21RDEPENDS:${PN} = "perl "
22
23EXTRA_OECONF = "--without-doc --disable-test --disable-nls PERL=/usr/bin/perl"
24
25# gutenprint does not have a configure file in its root folder.
26# Rather it has a autogen.sh in its root folder. We just use it
27# together with adapting for cross compilation
28do_configure() {
29    # Disable the xmli18n-tmp.h rule
30    # It depend on the local build extract-strings, we are not able to run this
31    # So we are using the xmli18n-tmp.h created by gutenprint-native
32    sed -i 's/all-local: xmli18n-tmp.h xml-stamp/all-local: xml-stamp/'  ${S}/src/xml/Makefile.am
33    sed -i 's/dist-hook: xmli18n-tmp.h xml-stamp/dist-hook: xml-stamp/'  ${S}/src/xml/Makefile.am
34    cp ${RECIPE_SYSROOT_NATIVE}${datadir}/gutenprint/xmli18n-tmp.h ${S}/src/xml/
35
36    ${S}/autogen.sh || bbnote "${PN} failed to autogen.sh"
37    oe_runconf
38}
39
40# gutenprint install the calibrate.ppm and net.sf.gimp-print.usb-quirks in
41# /usr/share/cups
42FILES:${PN} += "${datadir}/cups/*"
43
44# Install in /etc/cups when RPM needs DIRFILES to not conflict
45# https://stackoverflow.com/questions/44762430/why-do-i-get-etc-cups-conflicts-between-attempted-installs-in-yocto
46DIRFILES = "1"