Package: sed
Version: 4.2.1-10
Severity: normal
Tags: patch
User: crossbu...@debian.org
Usertags: cross

sed fails to cross-build because it uses the native strip executable,
not the appropriate cross-strip.

(You can get away with this if you have binutils-multiarch installed,
which has been the case with some cross-building efforts in the past,
including some of my own; I've come to feel that this isn't a good idea,
though, since binutils-multiarch can accidentally mask some real
problems.)

  * Use correct strip program when cross-building.

diff -Nru sed-4.2.1/debian/rules sed-4.2.1/debian/rules
--- sed-4.2.1/debian/rules      2011-12-30 17:22:26.000000000 +0000
+++ sed-4.2.1/debian/rules      2012-12-06 23:04:12.000000000 +0000
@@ -21,8 +21,17 @@
 INSTALL_SCRIPT  = $(INSTALL) -p    -o root -g root  -m  755
 INSTALL_DIR     = $(INSTALL) -p -d -o root -g root  -m  755
 
+ifeq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
+STRIP := strip
+else
+STRIP := $(DEB_HOST_GNU_TYPE)-strip
+endif
+
 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
 INSTALL_PROGRAM += -s
+ifneq (strip,$(STRIP))
+INSTALL_PROGRAM += --strip-program=$(STRIP)
+endif
 endif
 
 build: build-arch build-indep
@@ -68,7 +77,7 @@
 # Install sed
        $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install
 ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-       strip --remove-section=.comment --remove-section=.note \
+       $(STRIP) --remove-section=.comment --remove-section=.note \
                --strip-unneeded debian/tmp/bin/sed
 endif
        rm -f $(tmpdir)/usr/share/info/dir*

Thanks,

-- 
Colin Watson                                       [cjwat...@ubuntu.com]


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to