systemd / cross-building / failure in dpkg-gencontrol
Johannes Schauer
josch at debian.org
Mon Aug 24 11:49:58 BST 2015
Hi,
Quoting Michael Biebl (2015-08-24 09:56:02)
> Am 24.08.2015 um 08:21 schrieb Johannes Schauer:
> > Quoting Helmut Grohne (2015-08-24 07:32:16)
> >> It is not clear how to implement :native for mk-build-deps, because it does
> >> not differentiate between build architecture and host architecture. Maybe the
> >> simplest fix would be to s/:native// in mk-build-deps and declare cross
> >> support unfixably broken. Dima Kogan already observed that it does not work
> >> at all in #794538.
> >
> > This is fixable. It has to be because building a binary package to satisfy
> > dependencies already works in other situations while still being cross-aware,
> > most notably in sbuild.
> >
> > Namely, what mk-build-deps should do is to copy the sbuild behaviour:
> >
> > - use libdpkg-perl to parse and process the Build-{Depends,Conflicts}* fields
> > and filter architecture and profile restrictions correctly
> > - change the meaning of its --arch option (this currently does some magic
> > depending on whether the source package has architecture specific build
> > dependencies or not):
> > - this option should specify the HOST architecture
> > - the generated binary package should be of this architecture (this is
> > already the case)
> > - foo:native dependencies should be converted to foo:$build
> > - the dependency on build-essential should be build-essential:$build
> > - if host != build, then an additional build dependency on
> > crossbuild-essential-$host:$build should be added
> > - change the created binary package name to have "cross" or a similar
> > identifier in its name so that it can be installed at the same time
> > with a package for a native build for the same source package
> >
> > Doing all this is not very hard and the code even already exists in perl in the
> > function setup_apt_archive() in the sbuild source code at
> > lib/Sbuild/ResolverBase.pm:
> >
> > http://sources.debian.net/src/sbuild/0.65.2-1.1/lib/Sbuild/ResolverBase.pm/#L692
> > [...]
> [...]
> It would be great if one of you can follow up on #794538 (or file a new bug
> report against devscripts), since you obviously are in a much better position
> to explain any details to the maintainer of mk-build-deps.
the attached patch addresses all the issues listed above and should now follow
closer the working behaviour of sbuild. I CC-ed the bug report you mentioned.
Thanks for bringing this up!
cheers, josch
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-scripts-mk-build-deps.pl-support-crossbuild-dependen.patch
Type: text/x-diff
Size: 4227 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-systemd-maintainers/attachments/20150824/30ab6d50/attachment-0002.patch>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-systemd-maintainers/attachments/20150824/30ab6d50/attachment-0002.sig>
More information about the Pkg-systemd-maintainers
mailing list