Debian Bug report logs - #577674
gcc-4.4/cross: broken bi-arch architectures

version graph

Package: gcc-4.4; Maintainer for gcc-4.4 is Debian GCC Maintainers <debian-gcc@lists.debian.org>; Source for gcc-4.4 is src:gcc-4.4.

Reported by: Hector Oron <zumbi@debian.org>

Date: Tue, 13 Apr 2010 14:27:01 UTC

Severity: wishlist

Tags: help, moreinfo, patch

Merged with 553045, 553047, 604774

Found in versions gcc-4.4/4.4.1-6, gcc-4.4/4.4.3-7, gcc-4.4/4.4.4-7, gcc-4.4/4.4.5-6

Done: Matthias Klose <doko@debian.org>

Bug is archived. No further changes may be made.

Toggle useless messages

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#577674; Package gcc-4.4. (Tue, 13 Apr 2010 14:27:04 GMT) Full text and rfc822 format available.

Acknowledgement sent to Hector Oron <zumbi@debian.org>:
New Bug report received and forwarded. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. (Tue, 13 Apr 2010 14:27:04 GMT) Full text and rfc822 format available.

Message #5 received at submit@bugs.debian.org (full text, mbox):

From: Hector Oron <zumbi@debian.org>
To: Debian Bug Tracking System <submit@bugs.debian.org>
Subject: gcc-4.4/cross: broken bi-arch architectures
Date: Tue, 13 Apr 2010 16:24:01 +0200
Package: gcc-4.4
Version: 4.4.3-7
Severity: wishlist


Hello,

  When building cross compilers (only seen on biarch architectures):

Builds are done with:
GCC_TARGET=powerpc DEB_CROSS=yes fakeroot debian/rules control
DEB_CROSS_NO_BIARCH=yes DH_VERBOSE=1 GCC_TARGET=powerpc DEB_CROSS=yes dpkg-buildpackage -us -uc -rfakeroot

dh_makeshlibs -plib64gomp1-powerpc-cross
        rm -f debian/lib64gomp1-powerpc-cross/DEBIAN/shlibs
sed s/-powerpc-cross//g < debian/lib64gomp1-powerpc-cross/DEBIAN/shlibs > debian/lib64gomp1-powerpc-cross/DEBIAN/shlibs.fixed
/bin/bash: debian/lib64gomp1-powerpc-cross/DEBIAN/shlibs: No such file or directory
make[1]: *** [stamps/08-binary-stamp-lib64gomp] Error 1
make[1]: Leaving directory `/home/zumbi/buildcross/trunk/test/gcc-4.4-4.4.3'
make: *** [binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

  There are no files under debian/lib64gomp1-powerpc-cross/usr/lib64/, so shlibs file is not created and should not be built on a DEB_NO_BIARCH=yes build.


If you workarround this issue, another issues follow:

  * Also tries to build lib64fortran3

  * Tries to create an existing file and fails:
  mkdir: cannot create directory `debian/libstdc++6-powerpc-cross-deps': File exists

  * Tries to write on a directory owned by root (making fakeroot unusable)
  ln: creating symbolic link `debian/libstdc++6-powerpc-cross-deps/lib/lib': Permission denied

  * And I also believe (not sure) it tries to run the testsuite on cross builds, which should be avoided or done remotely.

Feel free to split this bug if you find this issues should be worked out as separated bugs.

Kind regards,
  Hector Oron

==> powerlog-fortran.txt <==        find debian/lib64gfortran3-powerpc-cross -perm -5 -type f \( -name '*.cmxs' \)  -print0 2>/dev/null | xargs -0r chmod 644
        find debian/lib64gfortran3-powerpc-cross/usr/lib/perl5 debian/lib64gfortran3-powerpc-cross/usr/share/perl5 -type f -perm -5 -name '*.pm'  -print0 2>/dev/null | xargs -0r chmod a-Xdh_makeshlibs -plib64gfortran3-powerpc-cross
        rm -f debian/lib64gfortran3-powerpc-cross/DEBIAN/shlibssed -i s/-powerpc-cross//g debian/lib64gfortran3-powerpc-cross/DEBIAN/shlibs
sed: can't read debian/lib64gfortran3-powerpc-cross/DEBIAN/shlibs: No such file or directory
make[1]: *** [stamps/08-binary-stamp-lib64fortran] Error 2
make[1]: Leaving directory `/home/zumbi/buildcross/trunk/powerpc/gcc-4.4-4.4.3'
make: *** [binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

==> powerlog-libstdc++.txt <==
        chmod 644 debian/libstdc\+\+6-powerpc-cross/DEBIAN/shlibs
        chown 0:0 debian/libstdc\+\+6-powerpc-cross/DEBIAN/shlibs
sed s/-powerpc-cross//g < debian/libstdc++6-powerpc-cross/DEBIAN/shlibs > debian/libstdc++6-powerpc-cross/DEBIAN/shlibs.fixed
mv debian/libstdc++6-powerpc-cross/DEBIAN/shlibs.fixed debian/libstdc++6-powerpc-cross/DEBIAN/shlibs
mkdir debian/libstdc++6-powerpc-cross-deps
mkdir: cannot create directory `debian/libstdc++6-powerpc-cross-deps': File exists
make[1]: *** [stamps/08-binary-stamp-libstdcxx] Error 1
make[1]: Leaving directory `/home/zumbi/buildcross/trunk/powerpc/gcc-4.4-4.4.3'
make: *** [binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2

==> powerlog-libstdc++-2.txt <==
        chown 0:0 debian/libstdc\+\+6-powerpc-cross/DEBIAN/shlibs
sed s/-powerpc-cross//g < debian/libstdc++6-powerpc-cross/DEBIAN/shlibs > debian/libstdc++6-powerpc-cross/DEBIAN/shlibs.fixed
mv debian/libstdc++6-powerpc-cross/DEBIAN/shlibs.fixed debian/libstdc++6-powerpc-cross/DEBIAN/shlibs
test -d debian/libstdc++6-powerpc-cross-deps || mkdir debian/libstdc++6-powerpc-cross-deps
ln -s "`readlink -e /usr/powerpc-linux-gnu/lib`" debian/libstdc++6-powerpc-cross-deps/lib
ln: creating symbolic link `debian/libstdc++6-powerpc-cross-deps/lib/lib': Permission denied
make[1]: *** [stamps/08-binary-stamp-libstdcxx] Error 1
make[1]: Leaving directory `/home/zumbi/buildcross/trunk/powerpc/gcc-4.4-4.4.3'
make: *** [binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2




Information forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#577674; Package gcc-4.4. (Tue, 13 Apr 2010 15:21:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Matthias Klose <doko@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. (Tue, 13 Apr 2010 15:21:03 GMT) Full text and rfc822 format available.

Message #10 received at 577674@bugs.debian.org (full text, mbox):

From: Matthias Klose <doko@debian.org>
To: Hector Oron <zumbi@debian.org>, 577674@bugs.debian.org
Cc: Debian Bug Tracking System <control@bugs.debian.org>
Subject: Re: Bug#577674: gcc-4.4/cross: broken bi-arch architectures
Date: Tue, 13 Apr 2010 17:18:11 +0200
tag 577674 + help
thanks

On 13.04.2010 16:24, Hector Oron wrote:
> Package: gcc-4.4
> Version: 4.4.3-7
> Severity: wishlist
>
>
> Hello,
>
>    When building cross compilers (only seen on biarch architectures):

Hector, it's known to be broken. Are you working on a patch/fix?

  Matthias





Added tag(s) help. Request was from Matthias Klose <doko@debian.org> to control@bugs.debian.org. (Tue, 13 Apr 2010 15:21:05 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#577674; Package gcc-4.4. (Tue, 13 Apr 2010 15:42:08 GMT) Full text and rfc822 format available.

Acknowledgement sent to Hector Oron <hector.oron@gmail.com>:
Extra info received and forwarded to list. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. (Tue, 13 Apr 2010 15:42:08 GMT) Full text and rfc822 format available.

Message #17 received at 577674@bugs.debian.org (full text, mbox):

From: Hector Oron <hector.oron@gmail.com>
To: Matthias Klose <doko@debian.org>
Cc: 577674@bugs.debian.org
Subject: Re: Bug#577674: gcc-4.4/cross: broken bi-arch architectures
Date: Tue, 13 Apr 2010 17:39:56 +0200
Hello Matthias,
> Hector, it's known to be broken. Are you working on a patch/fix?

I am not sure what you are trying to accomplish by those changes, so I
wanted to know that first.
If none is working on a fix I would not mind to work on it, but I am
short on time these days, so do not expect something soon.

I'll work on it if you do not state the contrary. :-)

Kind regards,
-- 
 Héctor Orón

"Our Sun unleashes tremendous flares expelling hot gas into the Solar
System, which one day will disconnect us."




Information forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#577674; Package gcc-4.4. (Tue, 13 Apr 2010 15:51:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Matthias Klose <doko@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. (Tue, 13 Apr 2010 15:51:06 GMT) Full text and rfc822 format available.

Message #22 received at 577674@bugs.debian.org (full text, mbox):

From: Matthias Klose <doko@debian.org>
To: Hector Oron <hector.oron@gmail.com>
Cc: 577674@bugs.debian.org
Subject: Re: Bug#577674: gcc-4.4/cross: broken bi-arch architectures
Date: Tue, 13 Apr 2010 17:49:06 +0200
On 13.04.2010 17:39, Hector Oron wrote:
> Hello Matthias,
>> Hector, it's known to be broken. Are you working on a patch/fix?
>
> I am not sure what you are trying to accomplish by those changes, so I
> wanted to know that first.

building libgomp.

> If none is working on a fix I would not mind to work on it, but I am
> short on time these days, so do not expect something soon.
>
> I'll work on it if you do not state the contrary. :-)

the right fix would be to merge the .cross.mk files into the native ones, but 
not using one big ifdef, starting with one file




Information forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#577674; Package gcc-4.4. (Tue, 13 Apr 2010 15:57:05 GMT) Full text and rfc822 format available.

Acknowledgement sent to Hector Oron <hector.oron@gmail.com>:
Extra info received and forwarded to list. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. (Tue, 13 Apr 2010 15:57:05 GMT) Full text and rfc822 format available.

Message #27 received at 577674@bugs.debian.org (full text, mbox):

From: Hector Oron <hector.oron@gmail.com>
To: Matthias Klose <doko@debian.org>
Cc: 577674@bugs.debian.org
Subject: Re: Bug#577674: gcc-4.4/cross: broken bi-arch architectures
Date: Tue, 13 Apr 2010 17:52:47 +0200
Hello,

2010/4/13 Matthias Klose <doko@debian.org>:
> the right fix would be to merge the .cross.mk files into the native ones,
> but not using one big ifdef, starting with one file

OK, I'll start with libgcc

-- 
 Héctor Orón

"Our Sun unleashes tremendous flares expelling hot gas into the Solar
System, which one day will disconnect us."




Merged 553045 553047 577674. Request was from Hector Oron <zumbi@debian.org> to control@bugs.debian.org. (Tue, 20 Apr 2010 10:06:08 GMT) Full text and rfc822 format available.

Information forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#577674; Package gcc-4.4. (Wed, 21 Apr 2010 16:30:06 GMT) Full text and rfc822 format available.

Acknowledgement sent to Hector Oron <hector.oron@gmail.com>:
Extra info received and forwarded to list. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. (Wed, 21 Apr 2010 16:30:06 GMT) Full text and rfc822 format available.

Message #34 received at 577674@bugs.debian.org (full text, mbox):

From: Hector Oron <hector.oron@gmail.com>
To: Matthias Klose <doko@debian.org>
Cc: 577674@bugs.debian.org
Subject: Re: Bug#577674: gcc-4.4/cross: broken bi-arch architectures
Date: Wed, 21 Apr 2010 18:27:43 +0200
Hello Matthias,

I have started to do some work in this way, it is still WIP, but I
would like you to check if this way is OK with you then prepare
something more mergeable

There are two merge patches below:

From 024f597bbe0aa95fe967cc60abb0edec6f2694b3 Mon Sep 17 00:00:00 2001
From: Hector Oron <hector.oron@gmail.com>
Date: Wed, 21 Apr 2010 00:34:38 +0200
Subject: [PATCH 1/4] Merge rules.d/binary-cpp-cross.mk into binary-cpp.mk

Signed-off-by: Hector Oron <hector.oron@gmail.com>
---
 debian/rules.d/binary-cpp.mk |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)

diff --git a/debian/rules.d/binary-cpp.mk b/debian/rules.d/binary-cpp.mk
index 6e1060f..efaad9e 100644
--- a/debian/rules.d/binary-cpp.mk
+++ b/debian/rules.d/binary-cpp.mk
@@ -8,9 +8,18 @@ dirs_cpp = \
 	$(PF)/share/man/man1 \
 	$(PF)/bin

+ifeq ($(DEB_CROSS),yes)
+dirs_cpp += \
+	$(gcc_lexec_dir)
+files_cpp = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1 \
+	$(gcc_lexec_dir)/cc1
+else
 files_cpp = \
 	$(PF)/bin/cpp$(pkg_ver) \
 	$(gcc_lexec_dir)/cc1
+endif

 ifneq ($(GFDL_INVARIANT_FREE),yes)
   files_cpp += \
@@ -27,6 +36,14 @@ $(binary_stamp)-cpp: $(install_stamp)
 	dh_installdirs -p$(p_cpp) $(dirs_cpp)
 	DH_COMPAT=2 dh_movefiles -p$(p_cpp) $(files_cpp)

+ifeq ($(DEB_CROSS),yes)
+ifeq ($(with_unversioned),yes)
+	ln -sf $(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver) \
+	  $(d_cpp)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp
+	ln -sf $(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1 \
+	  $(d_cpp)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp.1
+endif
+else
 	ln -sf cpp$(pkg_ver) \
 	    $(d_cpp)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver)
 	ln -sf cpp$(pkg_ver) \
@@ -47,6 +64,11 @@ endif
 	dh_shlibdeps -p$(p_cpp)
 	dh_gencontrol -p$(p_cpp) -- -v$(DEB_VERSION) $(common_substvars)
 	dh_installdeb -p$(p_cpp)
+ifeq ($(DEB_CROSS),yes)
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g'
< debian/gcc-cross.postinst > debian/$(p_cpp)/DEBIAN/postinst
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g'
< debian/gcc-cross.prerm > debian/$(p_cpp)/DEBIAN/prerm
+	chmod 755 debian/$(p_cpp)/DEBIAN/{postinst,prerm}
+endif
 	dh_md5sums -p$(p_cpp)
 	dh_builddeb -p$(p_cpp)

-- 
1.7.0

================================================================

From 8b4746e67bc69667477bfbd83176eb36005ca7f5 Mon Sep 17 00:00:00 2001
From: Hector Oron <hector.oron@gmail.com>
Date: Wed, 21 Apr 2010 00:52:47 +0200
Subject: [PATCH 2/4] Merge rules.d/binary-cxx-cross.mk into binary-cxx.mk

Signed-off-by: Hector Oron <hector.oron@gmail.com>
---
 debian/rules.d/binary-cxx.mk |   46 +++++++++++++++++++++++++++++++++++++----
 1 files changed, 41 insertions(+), 5 deletions(-)

diff --git a/debian/rules.d/binary-cxx.mk b/debian/rules.d/binary-cxx.mk
index 08bb327..f26b6bb 100644
--- a/debian/rules.d/binary-cxx.mk
+++ b/debian/rules.d/binary-cxx.mk
@@ -3,6 +3,18 @@ ifneq (,$(filter yes, $(biarch64) $(biarch32) $(biarchn32)))
 endif
 arch_binaries  := $(arch_binaries) cxx

+# XXX This can probably be refactored better
+ifeq($(DEB_CROSS),yes)
+dirs_cxx = \
+	$(docdir) \
+	$(PF)/bin \
+	$(gcc_lib_dir) \
+	$(PF)/share/man/man1
+files_cxx = \
+	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver) \
+	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1 \
+	$(gcc_lib_dir)/cc1plus
+else
 dirs_cxx = \
 	$(docdir)/$(p_base)/C++ \
 	$(PF)/bin \
@@ -12,15 +24,15 @@ dirs_cxx = \
 files_cxx = \
 	$(PF)/bin/g++$(pkg_ver) \
 	$(gcc_lexec_dir)/cc1plus
+p_cxx_m	= g++$(pkg_ver)-multilib
+d_cxx_m	= debian/$(p_cxx_m)
+endif

 ifneq ($(GFDL_INVARIANT_FREE),yes)
   files_cxx += \
 	$(PF)/share/man/man1/g++$(pkg_ver).1
 endif

-p_cxx_m	= g++$(pkg_ver)-multilib
-d_cxx_m	= debian/$(p_cxx_m)
-
 # ----------------------------------------------------------------------
 $(binary_stamp)-cxx: $(install_stamp)
 	dh_testdir
@@ -30,14 +42,27 @@ $(binary_stamp)-cxx: $(install_stamp)
 	rm -rf $(d_cxx)
 	dh_installdirs -p$(p_cxx) $(dirs_cxx)
 	DH_COMPAT=2 dh_movefiles -p$(p_cxx) $(files_cxx)
-
+ifneq ($(DEB_CROSS),yes)
 	ln -sf g++$(pkg_ver) \
 	    $(d_cxx)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver)
 	ln -sf g++$(pkg_ver) \
 	    $(d_cxx)/$(PF)/bin/$(TARGET_ALIAS)-g++$(pkg_ver)
+endif

 ifneq ($(GFDL_INVARIANT_FREE),yes)
 # g++ man page is a .so link
+# XXX HO: Need better integration
+ifneq ($(DEB_CROSS),yes)
+	rm -f $(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1
+	ln -sf $(DEB_TARGET_GNU_TYPE)-gcc$(pkg_ver).1.gz \
+		$(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1.gz
+ifeq ($(with_unversioned),yes)
+	ln -sf $(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver) \
+	  $(d_cxx)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-g++
+	ln -sf $(DEB_TARGET_GNU_TYPE)-g++$(pkg_ver).1 \
+	  $(d_cxx)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-g++.1
+
+else
 	rm -f $(d_cxx)/$(PF)/share/man/man1/g++$(pkg_ver).1
 	ln -sf gcc$(pkg_ver).1.gz \
 		$(d_cxx)/$(PF)/share/man/man1/g++$(pkg_ver).1.gz
@@ -48,11 +73,15 @@ ifneq ($(GFDL_INVARIANT_FREE),yes)
 endif

 	debian/dh_doclink -p$(p_cxx) $(p_base)
+# For cross targets we do not need it
+ifneq($(DEB_CROSS),yes)
 	cp -p debian/README.C++ $(d_cxx)/$(docdir)/$(p_base)/C++/
 	cp -p $(srcdir)/gcc/cp/ChangeLog \
 		$(d_cxx)/$(docdir)/$(p_base)/C++/changelog
+endif
 	debian/dh_rmemptydirs -p$(p_cxx)
-
+# For cross targets we do not need it
+ifneq($(DEB_CROSS),yes)
 	mkdir -p $(d_cxx)/$(docdir)/$(p_base)/test-summaries
 	echo "TEST COMPARE BEGIN"
 ifeq ($(with_check),yes)
@@ -79,6 +108,7 @@ else
 	echo "Nothing to compare (testsuite not run)"
 endif	
 	echo "TEST COMPARE END"
+endif # end DEB_CROSS

 	dh_strip -p$(p_cxx)
 	dh_compress -p$(p_cxx)
@@ -86,12 +116,18 @@ endif
 	dh_shlibdeps -p$(p_cxx)
 	dh_gencontrol -p$(p_cxx) -- -v$(DEB_VERSION) $(common_substvars)
 	dh_installdeb -p$(p_cxx)
+ifeq($(DEB_CROSS),yes)
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/g++/g'
< debian/gcc-cross.postinst > debian/$(p_cxx)/DEBIAN/postinst
+	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/g++/g'
< debian/gcc-cross.prerm > debian/$(p_cxx)/DEBIAN/prerm
+	chmod 755 debian/$(p_cxx)/DEBIAN/{postinst,prerm}
+endif
 	dh_md5sums -p$(p_cxx)
 	dh_builddeb -p$(p_cxx)

 	trap '' 1 2 3 15; touch $@; mv $(install_stamp)-tmp $(install_stamp)

 # ----------------------------------------------------------------------
+# XXX HO: Only for native builds, do we want to implement cross targets here?
 $(binary_stamp)-cxx-multi: $(install_stamp)
 	dh_testdir
 	dh_testroot
-- 
1.7.0

OK to proceed with the rest?

Kind regards,
-- 
 Héctor Orón

"Our Sun unleashes tremendous flares expelling hot gas into the Solar
System, which one day will disconnect us."




Information forwarded to debian-bugs-dist@lists.debian.org, Debian GCC Maintainers <debian-gcc@lists.debian.org>:
Bug#577674; Package gcc-4.4. (Sat, 24 Apr 2010 15:51:03 GMT) Full text and rfc822 format available.

Acknowledgement sent to Matthias Klose <doko@debian.org>:
Extra info received and forwarded to list. Copy sent to Debian GCC Maintainers <debian-gcc@lists.debian.org>. (Sat, 24 Apr 2010 15:51:03 GMT) Full text and rfc822 format available.

Message #39 received at 577674@bugs.debian.org (full text, mbox):

From: Matthias Klose <doko@debian.org>
To: Hector Oron <hector.oron@gmail.com>, 577674@bugs.debian.org
Subject: Re: Bug#577674: gcc-4.4/cross: broken bi-arch architectures
Date: Sat, 24 Apr 2010 17:46:26 +0200
On 21.04.2010 18:27, Hector Oron wrote:
> Hello Matthias,
>
> I have started to do some work in this way, it is still WIP, but I
> would like you to check if this way is OK with you then prepare
> something more mergeable
>
> There are two merge patches below:
>
>> From 024f597bbe0aa95fe967cc60abb0edec6f2694b3 Mon Sep 17 00:00:00 2001
> From: Hector Oron<hector.oron@gmail.com>
> Date: Wed, 21 Apr 2010 00:34:38 +0200
> Subject: [PATCH 1/4] Merge rules.d/binary-cpp-cross.mk into binary-cpp.mk
>
> Signed-off-by: Hector Oron<hector.oron@gmail.com>
> ---
>   debian/rules.d/binary-cpp.mk |   22 ++++++++++++++++++++++
>   1 files changed, 22 insertions(+), 0 deletions(-)
>
> diff --git a/debian/rules.d/binary-cpp.mk b/debian/rules.d/binary-cpp.mk
> index 6e1060f..efaad9e 100644
> --- a/debian/rules.d/binary-cpp.mk
> +++ b/debian/rules.d/binary-cpp.mk
> @@ -8,9 +8,18 @@ dirs_cpp = \
>   	$(PF)/share/man/man1 \
>   	$(PF)/bin
>
> +ifeq ($(DEB_CROSS),yes)
> +dirs_cpp += \
> +	$(gcc_lexec_dir)

not cross specific

> +files_cpp = \
> +	$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver) \
> +	$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1 \

that shouldn't be ifdef'd, but something like cmd_prefix set to 
$(DEB_TARGET_GNU_TYPE)- for the cross case.

> +	$(gcc_lexec_dir)/cc1
> +else
>   files_cpp = \
>   	$(PF)/bin/cpp$(pkg_ver) \
>   	$(gcc_lexec_dir)/cc1
> +endif

and then the whole ifdef is not necessary.

> @@ -27,6 +36,14 @@ $(binary_stamp)-cpp: $(install_stamp)
>   	dh_installdirs -p$(p_cpp) $(dirs_cpp)
>   	DH_COMPAT=2 dh_movefiles -p$(p_cpp) $(files_cpp)
>
> +ifeq ($(DEB_CROSS),yes)
> +ifeq ($(with_unversioned),yes)
> +	ln -sf $(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver) \
> +	  $(d_cpp)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp
> +	ln -sf $(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver).1 \
> +	  $(d_cpp)/$(PF)/share/man/man1/$(DEB_TARGET_GNU_TYPE)-cpp.1
> +endif

there is fixup code in debian/rules2 for the unversioned stuff, maybe better 
extend this, and elimintate the ifdef here.

> +else
>   	ln -sf cpp$(pkg_ver) \
>   	    $(d_cpp)/$(PF)/bin/$(DEB_TARGET_GNU_TYPE)-cpp$(pkg_ver)
>   	ln -sf cpp$(pkg_ver) \
> @@ -47,6 +64,11 @@ endif
>   	dh_shlibdeps -p$(p_cpp)
>   	dh_gencontrol -p$(p_cpp) -- -v$(DEB_VERSION) $(common_substvars)
>   	dh_installdeb -p$(p_cpp)
> +ifeq ($(DEB_CROSS),yes)
> +	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g'
> <  debian/gcc-cross.postinst>  debian/$(p_cpp)/DEBIAN/postinst
> +	sed 's/cross-/$(DEB_TARGET_GNU_TYPE)-/g;s/-ver/$(pkg_ver)/g;s/gcc/cpp/g'
> <  debian/gcc-cross.prerm>  debian/$(p_cpp)/DEBIAN/prerm
> +	chmod 755 debian/$(p_cpp)/DEBIAN/{postinst,prerm}
> +endif

that should be a macro, which expands to nothing for the native build, and to 
the mangling for the cross build, called with no ifdef.

	$(call cross_mangle_scripts, $(p_gcc))

The macro should find out itself which scripts should be mangled.

I would place these macros in rules.defs for now.

The more interesting case is the merging of the library packaging. I would 
recommend starting with some lib which is not libgcc or libstdc++ for the easy 
cases.

  Matthias




Reply sent to Matthias Klose <doko@debian.org>:
You have taken responsibility. (Fri, 25 Jun 2010 14:21:16 GMT) Full text and rfc822 format available.

Notification sent to Hector Oron <zumbi@debian.org>:
Bug acknowledged by developer. (Fri, 25 Jun 2010 14:21:16 GMT) Full text and rfc822 format available.

Message #44 received at 577674-done@bugs.debian.org (full text, mbox):

From: Matthias Klose <doko@debian.org>
To: 577674-done@bugs.debian.org
Subject: Re: Bug#577674: gcc-4.4/cross: broken bi-arch architectures
Date: Fri, 25 Jun 2010 16:19:13 +0200
Version: 4.4.4-6

now merged by Marcin.





Reply sent to Matthias Klose <doko@debian.org>:
You have taken responsibility. (Fri, 25 Jun 2010 14:21:17 GMT) Full text and rfc822 format available.

Notification sent to Hector Oron <hector.oron@gmail.com>:
Bug acknowledged by developer. (Fri, 25 Jun 2010 14:21:17 GMT) Full text and rfc822 format available.

Reply sent to Matthias Klose <doko@debian.org>:
You have taken responsibility. (Fri, 25 Jun 2010 14:21:17 GMT) Full text and rfc822 format available.

Notification sent to Hector Oron <hector.oron@gmail.com>:
Bug acknowledged by developer. (Fri, 25 Jun 2010 14:21:17 GMT) Full text and rfc822 format available.

Bug No longer marked as fixed in versions 4.4.4-6 and reopened. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sun, 25 Jul 2010 22:57:03 GMT) Full text and rfc822 format available.

Bug Marked as found in versions gcc-4.4/4.4.4-7. Request was from Hector Oron <zumbi@debian.org> to control@bugs.debian.org. (Sun, 25 Jul 2010 23:06:03 GMT) Full text and rfc822 format available.

Added tag(s) moreinfo. Request was from Matthias Klose <doko@debian.org> to control@bugs.debian.org. (Sun, 25 Jul 2010 23:33:05 GMT) Full text and rfc822 format available.

Merged 553045 553047 577674 604774. Request was from Hector Oron <zumbi@debian.org> to control@bugs.debian.org. (Mon, 20 Dec 2010 15:09:04 GMT) Full text and rfc822 format available.

Bug archived. Request was from Debbugs Internal Request <owner@bugs.debian.org> to internal_control@bugs.debian.org. (Sat, 17 Dec 2011 07:33:35 GMT) Full text and rfc822 format available.

Send a report that this bug log contains spam.


Debian bug tracking system administrator <owner@bugs.debian.org>. Last modified: Fri Apr 18 04:15:39 2014; Machine Name: buxtehude.debian.org

Debian Bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.