On Wed, Sep 27, 2017 at 11:40:38PM +0200, Roland Hieber wrote: > On 27.09.2017 14:22, Roland Hieber wrote: > [...] > > diff --git a/rules/host-cups.make b/rules/host-cups.make > > new file mode 100644 > > index 000000000..5dd88e47b > > --- /dev/null > > +++ b/rules/host-cups.make > > @@ -0,0 +1,114 @@ > > +# -*-makefile-*- > > +# > > +# Copyright (C) 2017 by Roland Hieber <r.hie...@pengutronix.de> > > +# > > +# See CREDITS for details about who has contributed to this project. > > +# > > +# For further information about the PTXdist project and license conditions > > +# see the README file. > > +# > > + > > +# > > +# We provide this package > > +# > > +HOST_PACKAGES-$(PTXCONF_HOST_CUPS) += host-cups > > + > > +# > > ---------------------------------------------------------------------------- > > +# Prepare > > +# > > ---------------------------------------------------------------------------- > > + > > +# > > +# autoconf > > +# > > +# The --with-* options are only used to specify strings, --without-* does > > +# nothing. So we're omitting them here. The only exception is > > +# --with-components=core, which we are setting to only builds libcups* > > (which is > > +# needed by ppdc). > > +# > > +# We have to set --exec-prefix and --libdir, otherwise the libs end up in > > +# ${prefix}/lib64, which is not what we want. > > +# > > +HOST_CUPS_CONF_TOOL := autoconf > > +HOST_CUPS_CONF_OPT := \ > > + $(HOST_AUTOCONF) \ > > + --exec-prefix=/ \ > > + --libdir=/lib/ \ > > + --disable-mallinfo \ > > + --disable-libpaper \ > > + --disable-libusb \ > > + --disable-tcp-wrappers \ > > + --disable-acl \ > > + --disable-dbus \ > > + --disable-libtool-unsupported \ > > + --disable-debug \ > > + --disable-debug-guards \ > > + --disable-debug-printfs \ > > + --disable-unit-tests \ > > + --disable-relro \ > > + --disable-gssapi \ > > + --disable-threads \ > > + --disable-ssl \ > > + --disable-cdsassl \ > > + --disable-gnutls \ > > + --disable-pam \ > > + --disable-largefile \ > > + --disable-avahi \ > > + --disable-dnssd \ > > + --disable-launchd \ > > + --disable-systemd \ > > + --disable-upstart \ > > + --disable-page-logging \ > > + --disable-browsing \ > > + --disable-default-shared \ > > + --disable-raw-printing \ > > + --disable-webif \ > > + --with-components=core > > + > > +# > > ---------------------------------------------------------------------------- > > +# Compile > > +# > > ---------------------------------------------------------------------------- > > + > > +$(STATEDIR)/host-cups.compile: > > + @$(call targetinfo) > > + @$(call world/compile, HOST_CUPS) > > + @# ppdc isn't built by --with-components=core > > + @$(call compile, HOST_CUPS, -C ${HOST_CUPS_DIR}/ppdc) > > + @$(call touch) > > + > > +# > > ---------------------------------------------------------------------------- > > +# Install > > +# > > ---------------------------------------------------------------------------- > > + > > +HOST_CUPS_MAKE_ENV := \ > > + DSTROOT=$(HOST_CUPS_PKGDIR) > > + > > +$(STATEDIR)/host-cups.install: > > + @$(call targetinfo) > > + @$(call world/install, HOST_CUPS) > > + @# ppdc isn't included in --with-components=core > > + @$(call install, HOST_CUPS, ${HOST_CUPS_DIR}/ppdc) > > Strange, this single call seems to delete already installed files. I've > guarded this line with a > > find ${HOST_CUPS_PKGDIR}/share/ > @$(call install, HOST_CUPS, ${HOST_CUPS_DIR}/ppdc) > find ${HOST_CUPS_PKGDIR}/share/ > > and the first call shows files which are all missing in the second call. > But it works like intended if I replace this line with > > @$(call compile, HOST_CUPS, -C ${HOST_CUPS_DIR}/ppdc install) > > (like suggested by mol last month). Any hints what's going on here, so I > can fix this in v3?
world/install and install both delete <PKG>_PKGDIR. This is to make sure that the directory does not contain old files, e.g. after a config change triggered a new prepare/compile/install run. Things like install_tree depend on this. Michael > > + @$(call touch) > > + > > +CROSS_PPDC = $(PTXDIST_SYSROOT_CROSS)/bin/ppdc > > +$(STATEDIR)/host-cups.install.post: > > + @$(call targetinfo) > > + @$(call world/install.post, HOST_CUPS) > > + > > + ( \ > > + echo '#!/bin/sh'; \ > > + echo 'CUPS_DATADIR=$(PTXDIST_SYSROOT_HOST)/share/cups > > $(PTXDIST_SYSROOT_HOST)/bin/ppdc "$$@"'; \ > > + ) > $(CROSS_PPDC) > > + chmod +x $(CROSS_PPDC) > > + > > + @$(call touch) > > + > > +# > > ---------------------------------------------------------------------------- > > +# Clean > > +# > > ---------------------------------------------------------------------------- > > + > > +$(STATEDIR)/host-cups.clean: > > + @$(call targetinfo) > > + @$(call clean_pkg, HOST_CUPS) > > + @rm -vf $(CROSS_PPDC) > > + > > +# vim: ft=make ts=8 tw=80 > > > > > -- > Pengutronix e.K. | Roland Hieber | > Industrial Linux Solutions | http://www.pengutronix.de/ | > Peiner Str. 6-8, 31137 Hildesheim | Phone: +49-5121-206917-5086 | > Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | > > _______________________________________________ > ptxdist mailing list > ptxdist@pengutronix.de -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de