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

Reply via email to