[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#774129: should dpkg-buildpackage set the cross build profile automatically?



Package: dpkg-dev
Version: 1.17.23
Severity: wishlist
User: helmutg@debian.org
Usertags: rebootstrap

Some packages need extra Build-Depends when they are cross compiled.
Here are some examples:

 * src:guile-2.0 needs guile-2.0 to cross-build
 * src:glib2.0 needs libglib2.0-dev:any to cross-build
 * src:autogen needs autogen to cross-build
 * src:flex runs help2man and an easy way to do that is to use the build
   arch flex
 * src:bison also runs help2man and can benefit from build arch bison

A way to address this need is to use the "cross" build profile[1]. Now I
am wondering whether dpkg-buildpackage should set the cross build
profile automatically. The logic for doing so is as simple as: if the
host architecture differs from the build architecture, enable that
profile.

Johannes Schauer pointed out that since there currently is no way to
disable automatically enabled profiles, this can hamper debugging.

A side effect of this change is that cross built packages would be
reliably recognizable by looking at their Built-For-Profiles header.
Arguably, adding a new header to record the build architecture would be
a better facility.

Also apt (and every other tool that installs Build-Depends) would need
to set this profile automatically.

If dpkg is not the place to add this facility, the place that invokes
dpkg-buildpackage needs to enable this profile explicitly. That probably
means that sbuild needs to do this.

Thoughts?

Helmut

[1] https://wiki.debian.org/BuildProfileSpec


Reply to: