Bug#804190: please support cross compiler builds without relying on binutils-multiarch
Control: reassign -1 src:gcc-8
Control: tags -1 + patch
Hi Matthias,
I've updated the patch now. It has become fairly trivial.
We added support for "X-DH-Build-For-Type: target" a while ago. That
flag alone makes dh_strip choose the right tooling.
So whenever debhelper is recent enough, we can just skip the
binutils-multiarch dependency.
On Fri, Nov 13, 2015 at 12:20:14AM +0100, Matthias Klose wrote:
> - please update the patch to apply to the current VCS
Please tell me where to find the current VCS. I've attached a patch
against the version in unstable anyhow.
> - the patch is incomplete. It still calls the binutils tools
> for the host unprefixed.
This is solved by X-DH-Build-For-Type.
> - maybe make it clear which tools are used (target_strip, host_strip
> instead of cross_strip).
No cross_strip is needed at all anymore as X-DH-Build-For-Type has taken
care of this.
> I think that the rather simplistic view of dh_strip should be addressed in
> this context too, always using the non-prefixed binutils tools. In GCC you
> don't have binary packages anymore with both host and target objects within
> the same binary package, however this is not guaranteed for other binary
> packages. So you need to find a way to strip host and target objects in the
> same binary package.
I didn't encounter a single binary package that ships both host and
target objects. Whenever they do, we can simply split the packages.
debhelper and dh_strip now support selecting host vs. target per binary
package and we're actively using that support since gcc-7.
Helmut
--- a/debian/rules.conf
+++ b/debian/rules.conf
@@ -221,7 +221,7 @@
endif
endif
ifeq ($(DEB_CROSS),yes)
- BINUTILS_BUILD_DEP = binutils$(TS)$(NT) (>= $(BINUTILSBDV)), binutils-multiarch$(NT) (>= $(BINUTILSBDV))
+ BINUTILS_BUILD_DEP = binutils$(TS)$(NT) (>= $(BINUTILSBDV)), debhelper (>= 10.10.6~) | binutils-multiarch$(NT) (>= $(BINUTILSBDV))
BINUTILSV := $(shell dpkg -l binutils$(TS) \
| awk '/^ii/{print $$3;exit}' | sed 's/-.*//')
else
Reply to: