Bug#472917: gcc-4.3: FTBFS (ppc64): Please add lib32gfortran3.symbols.ppc64, remove "msoft-float"/"nof" in gcc-multilib64dir and disable ppc64-biarch patch
Package: gcc-4.3
Version: 4.3.0-2
Severity: wishlist
Tags: patch
Hello,
the current version of gcc-4.3 FTBFS on ppc64. Some small changes are
necessary to build the gcc-4.3 package on ppc64 (see patch below):
* debian/lib32gfortan3.symbols.ppc64:
new file with ppc64 specific symbols
* debian/patches/gcc-multilib64dir.dpatch:
remove "msoft-float" and "nof" from MULTILIB variables
* debian/rules.defs:
do not apply ppc64-biarch anymore
When these three things are fixed, there is still another issue
with the lib32gomp1 symbols which leads to the following build error:
dh_makeshlibs -plib32gomp1 -V 'lib32gomp1 (>= 4.3)'
dpkg-gensymbols: warning: some new symbols appeared in the symbols file.
dpkg-gensymbols: warning: some symbols disappeared in the symbols file.
dpkg-gensymbols: warning: debian/lib32gomp1/DEBIAN/symbols doesn't match comple$
--- dpkg-gensymbolstynYFy 2008-03-26 15:31:34.000000000 +0000
+++ dpkg-gensymbolsRJxhFu 2008-03-26 15:31:34.000000000 +0000
@@ -1,92 +1,180 @@
libgomp.so.1 lib32gomp1 #MINVER#
- GOMP_1.0@GOMP_1.0 4.2.1-4
- GOMP_atomic_end@GOMP_1.0 4.2.1-4
- GOMP_atomic_start@GOMP_1.0 4.2.1-4
[...]
+ omp_unset_nest_lock@Base 4.3.0-2
+#MISSING: 4.3.0-2# omp_unset_nest_lock@OMP_1.0 4.2.1-4
+ omp_unset_nest_lock_@Base 4.3.0-2
+#MISSING: 4.3.0-2# omp_unset_nest_lock_@OMP_1.0 4.2.1-4
dh_makeshlibs: command returned error code 256
make[1]: *** [stamps/08-binary-stamp-lib32gomp] Error 1
make[1]: Leaving directory `/srv/dbuild/tmp/gcc-4.3-4.3.0'
make: *** [binary] Error 2
dpkg-buildpackage: failure: debian/rules binary gave error exit status 2
I do not know how to fix this correctly.
Regards
Andreas Jochens
ppc64 patch for gcc-4.3 version 4.3.0-2:
diff -urN ../tmp-orig/gcc-4.3-4.3.0~rc2/debian/lib32gfortran3.symbols.ppc64 ./debian/lib32gfortran3.symbols.ppc64
--- ../tmp-orig/gcc-4.3-4.3.0~rc2/debian/lib32gfortran3.symbols.ppc64 1970-01-01 00:00:00.000000000 +0000
+++ ./debian/lib32gfortran3.symbols.ppc64 2008-03-03 07:22:08.000000000 +0000
@@ -0,0 +1,3 @@
+libgfortran.so.3 lib32gfortran3 #MINVER#
+#include "libgfortran3.symbols.common"
+#include "libgfortran3.symbols.16.powerpc"
diff -urN ../tmp-orig/gcc-4.3-4.3.0~rc2/debian/patches/gcc-multilib64dir.dpatch ./debian/patches/gcc-multilib64dir.dpatch
--- ../tmp-orig/gcc-4.3-4.3.0~rc2/debian/patches/gcc-multilib64dir.dpatch 2008-03-04 16:57:33.000000000 +0000
+++ ./debian/patches/gcc-multilib64dir.dpatch 2008-03-03 07:22:08.000000000 +0000
@@ -40,12 +40,23 @@
===================================================================
--- gcc/config/rs6000/t-linux64 (revision 130706)
+++ gcc/config/rs6000/t-linux64 (working copy)
-@@ -19,7 +19,7 @@
+@@ -14,13 +14,13 @@
+ # it doesn't tell anything about the 32bit libraries on those systems. Set
+ # MULTILIB_OSDIRNAMES according to what is found on the target.
+
+-MULTILIB_OPTIONS = m64/m32 msoft-float
+-MULTILIB_DIRNAMES = 64 32 nof
++MULTILIB_OPTIONS = m64/m32
++MULTILIB_DIRNAMES = 64 32
MULTILIB_EXTRA_OPTS = fPIC mstrict-align
- MULTILIB_EXCEPTIONS = m64/msoft-float
- MULTILIB_EXCLUSIONS = m64/!m32/msoft-float
+-MULTILIB_EXCEPTIONS = m64/msoft-float
+-MULTILIB_EXCLUSIONS = m64/!m32/msoft-float
-MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof
-+MULTILIB_OSDIRNAMES = ../lib $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib) nof
- MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT)
+-MULTILIB_MATCHES = $(MULTILIB_MATCHES_FLOAT)
++MULTILIB_EXCEPTIONS =
++MULTILIB_EXCLUSIONS =
++MULTILIB_OSDIRNAMES = ../lib $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
++MULTILIB_MATCHES =
softfp_wrap_start := '\#ifndef __powerpc64__'
+ softfp_wrap_end := '\#endif'
diff -urN ../tmp-orig/gcc-4.3-4.3.0~rc2/debian/rules.patch ./debian/rules.patch
--- ../tmp-orig/gcc-4.3-4.3.0~rc2/debian/rules.patch 2008-03-04 16:57:33.000000000 +0000
+++ ./debian/rules.patch 2008-03-03 07:22:08.000000000 +0000
@@ -182,7 +182,7 @@
ifeq ($(DEB_TARGET_ARCH),ppc64)
# FIXME: needed for 4.1?
- debian_patches += ppc64-biarch ppc64-ada
+ debian_patches += ppc64-ada
endif
endif
Reply to: