On Fri, Sep 22, 2017 at 02:06:58PM +0200, Juergen Borleis wrote: > Hi Roland, > > On Thursday 24 August 2017 00:39:10 Roland Hieber wrote: > > [...] > > +# > > +# 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=/usr/ \ > > + --libdir=/usr/lib/ \ > > It seems "$(HOST_AUTOCONF)" and "--libdir=/lib" is enough. And installing to > "$(PTXDIST_SYSROOT_HOST)/bin" and "$(PTXDIST_SYSROOT_HOST)/lib" is handled > by PTXdist automatically (library search path handling and so on). > > > [...] > > + > > +CROSS_PPDC = $(PTXDIST_SYSROOT_CROSS)/bin/ppdc > > +$(STATEDIR)/host-cups.install.post: > > + @$(call targetinfo) > > + @$(call world/install.post, HOST_CUPS) > > + > > + ( \ > > + echo '#!/bin/sh'; \ > > + echo 'LD_LIBRARY_PATH=$(PTXDIST_SYSROOT_HOST)/usr/lib > > $(PTXDIST_SYSROOT_HOST)/usr/bin/ppdc -I $(SYSROOT)/usr/share/cups/ppdc > > "$$@"'; \ > > + ) > $(CROSS_PPDC) > > You should not mix "$(PTXDIST_SYSROOT_HOST)" and "$(SYSROOT)" here, because > then the "HOST-CUPS" package has a dependency to "CUPS"! > > When you install to "$(PTXDIST_SYSROOT_HOST)/bin" and > "$(PTXDIST_SYSROOT_HOST)/lib" the cross-ppdc variant can be reduced to: > > ( \ > echo '#!/bin/sh'; \ > echo $(PTXDIST_SYSROOT_HOST)/bin/ppdc -I > $(PTXDIST_SYSROOT_HOST)/share/cups/ppdc "$$@"'; \ > ) > $(CROSS_PPDC)
This realy depends on what '-I' means and the difference between the content of $(SYSROOT)/usr/share/cups/ppdc and $(PTXDIST_SYSROOT_HOST)/share/cups/ppdc. ppdc is used at build-time by packages that create extra cups filters, right? If there are differences, then the original command-line is correct. In that case host-cups must depend on cup and the package using ppdc must depend on host-cups. Or, if such packages depend on cups anyways (maybe link to something?) you could create an options CUPS_PPDC that trigger a dependency on host-cups and create the cross ppdc wrapper in cups.make. Michael -- 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