Package: mozilla-thunderbird
Version: 1.0.6-3
Severity: wishlist
Tags: patch

When building 'mozilla-thunderbird' on ppc64/unstable,
I get the following error:

c++  -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Wcast-align 
-Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor 
-Wno-long-long -pedantic -fshort-wchar -pthread -pipe  -DNDEBUG -DTRIMMED -O2 
-fPIC -shared -Wl,-h -Wl,libgklayout.so -o libgklayout.so  nsLayoutModule.o 
nsContentHTTPStartup.o nsContentDLF.o       -Wl,--whole-archive 
../../dist/lib/libgkhtmlbase_s.a ../../dist/lib/libgkhtmldoc_s.a 
../../dist/lib/libgkhtmlforms_s.a ../../dist/lib/libgkhtmlstyle_s.a 
../../dist/lib/libgkhtmltable_s.a ../../dist/lib/libgkxulbase_s.a 
../../dist/lib/libgkbase_s.a ../../dist/lib/libgkconbase_s.a 
../../dist/lib/libgkconevents_s.a ../../dist/lib/libgkconhtmlcon_s.a 
../../dist/lib/libgkconhtmldoc_s.a ../../dist/lib/libgkconhtmlstyle_s.a 
../../dist/lib/libgkconxmlcon_s.a ../../dist/lib/libgkconxmldoc_s.a 
../../dist/lib/libgkconxbl_s.a ../../dist/lib/libgkconxuldoc_s.a 
../../dist/lib/libgkconshared_s.a ../../dist/lib/libgkview_s.a 
../../dist/lib/libjsdombase_s.a ../../dist/lib/libjsdomevents_s.a 
../../dist/lib/libjsurl_s.a  ../../dist/lib/libgkxultree_s.a 
../../dist/lib/libgkxulgrid_s.a ../../dist/lib/libgkconxulcon_s.a 
../../dist/lib/libgkconxultmpl_s.a  -Wl,--no-whole-archive -L../../dist/bin 
-L../../dist/lib -lgkgfx ../../dist/lib/libunicharutil_s.a -L../../dist/bin 
-lxpcom  -L../../dist/bin 
-L/mozilla-thunderbird-1.0.6/build-dir/mozilla/dist/lib -lplds4 -lplc4 -lnspr4 
-lpthread -ldl  -L../../dist/bin -lmozjs  -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 
-lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpangoft2-1.0 -lpango-1.0 
-lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0    -Wl,--version-script 
-Wl,../../build/unix/gnu-ld-scripts/components-version-script -Wl,-Bsymbolic 
-ldl -lm    
/usr/bin/ld: ../../dist/lib/libgkxulbase_s.a(nsListBoxLayout.o)(.text+0x164): 
sibling call optimization to `nsGridRowGroupLayout::GetMaxSize(nsIBox*, 
nsBoxLayoutState&, nsSize&)' does not allow automatic multiple TOCs; recompile 
with -mminimal-toc or -fno-optimize-sibling-calls, or make 
`nsGridRowGroupLayout::GetMaxSize(nsIBox*, nsBoxLayoutState&, nsSize&)' extern
/usr/bin/ld: ../../dist/lib/libgkxulbase_s.a(nsListBoxLayout.o)(.text+0x8fc): 
sibling call optimization to `nsGridRowGroupLayout::GetMinSize(nsIBox*, 
nsBoxLayoutState&, nsSize&)' does not allow automatic multiple TOCs; recompile 
with -mminimal-toc or -fno-optimize-sibling-calls, or make 
`nsGridRowGroupLayout::GetMinSize(nsIBox*, nsBoxLayoutState&, nsSize&)' extern
/usr/bin/ld: ../../dist/lib/libgkxulbase_s.a(nsListBoxLayout.o)(.text+0xabc): 
sibling call optimization to `nsGridRowGroupLayout::GetPrefSize(nsIBox*, 
nsBoxLayoutState&, nsSize&)' does not allow automatic multiple TOCs; recompile 
with -mminimal-toc or -fno-optimize-sibling-calls, or make 
`nsGridRowGroupLayout::GetPrefSize(nsIBox*, nsBoxLayoutState&, nsSize&)' extern
/usr/bin/ld: final link failed: Bad value
collect2: ld returned 1 exit status
make[4]: *** [libgklayout.so] Error 1
make[4]: Leaving directory 
`/mozilla-thunderbird-1.0.6/build-dir/mozilla/layout/build'

With the attached patch 'mozilla-thunderbird' can be compiled on ppc64.

Regards
Andreas Jochens

diff -urN ../tmp-orig/mozilla-thunderbird-1.0.6/debian/patches/00list 
./debian/patches/00list
--- ../tmp-orig/mozilla-thunderbird-1.0.6/debian/patches/00list 2005-08-11 
06:30:20.000000000 +0000
+++ ./debian/patches/00list     2005-08-11 06:29:50.000000000 +0000
@@ -32,3 +32,4 @@
 90_mail_components_miration_src_nsSeamonkeyProfileMigrator_cpp
 90_gcc4_fix
 gdk_property_get
+90_ppc64-build-fix
diff -urN 
../tmp-orig/mozilla-thunderbird-1.0.6/debian/patches/90_ppc64-build-fix.dpatch 
./debian/patches/90_ppc64-build-fix.dpatch
--- 
../tmp-orig/mozilla-thunderbird-1.0.6/debian/patches/90_ppc64-build-fix.dpatch  
    1970-01-01 00:00:00.000000000 +0000
+++ ./debian/patches/90_ppc64-build-fix.dpatch  2005-08-10 21:26:05.000000000 
+0000
@@ -0,0 +1,104 @@
+#!/bin/sh -e
+## 50_ppc64-build-fix.dpatch
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: No description.
+
+if [ $# -ne 1 ]; then
+    echo >&2 "`basename $0`: script expects -patch|-unpatch as argument"
+    exit 1
+fi
+
+[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
+patch_opts="${patch_opts:--f --no-backup-if-mismatch}"
+
+case "$1" in
+       -patch) patch $patch_opts -p1 < $0;;
+       -unpatch) patch $patch_opts -p1 -R < $0;;
+        *)
+                echo >&2 "`basename $0`: script expects -patch|-unpatch as 
argument"
+                exit 1;;
+esac
+
+exit 0
+
[EMAIL PROTECTED]@
+diff -urN mozilla.orig/nsprpub/pr/include/md/_linux.cfg 
mozilla/nsprpub/pr/include/md/_linux.cfg
+--- mozilla.orig/nsprpub/pr/include/md/_linux.cfg      2005-08-10 
12:13:21.000000000 +0000
++++ mozilla/nsprpub/pr/include/md/_linux.cfg   2005-08-10 17:59:56.000000000 
+0000
+@@ -45,7 +45,52 @@
+ 
+ #define PR_AF_INET6 10  /* same as AF_INET6 */
+ 
+-#ifdef __powerpc__
++#ifdef __powerpc64__
++
++#undef  IS_LITTLE_ENDIAN
++#define IS_BIG_ENDIAN    1
++
++#define PR_BYTES_PER_BYTE   1
++#define PR_BYTES_PER_SHORT  2
++#define PR_BYTES_PER_INT    4
++#define PR_BYTES_PER_INT64  8
++#define PR_BYTES_PER_LONG   8
++#define PR_BYTES_PER_FLOAT  4
++#define PR_BYTES_PER_DOUBLE 8
++#define PR_BYTES_PER_WORD   8
++#define PR_BYTES_PER_DWORD  8
++
++#define PR_BITS_PER_BYTE    8
++#define PR_BITS_PER_SHORT   16
++#define PR_BITS_PER_INT     32
++#define PR_BITS_PER_INT64   64
++#define PR_BITS_PER_LONG    64
++#define PR_BITS_PER_FLOAT   32
++#define PR_BITS_PER_DOUBLE  64
++#define PR_BITS_PER_WORD    64
++
++#define PR_BITS_PER_BYTE_LOG2   3
++#define PR_BITS_PER_SHORT_LOG2  4
++#define PR_BITS_PER_INT_LOG2    5
++#define PR_BITS_PER_INT64_LOG2  6
++#define PR_BITS_PER_LONG_LOG2   6
++#define PR_BITS_PER_FLOAT_LOG2  5
++#define PR_BITS_PER_DOUBLE_LOG2 6
++#define PR_BITS_PER_WORD_LOG2   6
++
++#define PR_ALIGN_OF_SHORT   2
++#define PR_ALIGN_OF_INT     4
++#define PR_ALIGN_OF_LONG    8
++#define PR_ALIGN_OF_INT64   8
++#define PR_ALIGN_OF_FLOAT   4
++#define PR_ALIGN_OF_DOUBLE  8
++#define PR_ALIGN_OF_POINTER 8
++#define PR_ALIGN_OF_WORD    8
++
++#define PR_BYTES_PER_WORD_LOG2   3
++#define PR_BYTES_PER_DWORD_LOG2  3
++
++#elif define(__powerpc__)
+ 
+ #undef  IS_LITTLE_ENDIAN
+ #define IS_BIG_ENDIAN    1
+diff -urN mozilla.orig/security/coreconf/Linux.mk 
mozilla/security/coreconf/Linux.mk
+--- mozilla.orig/security/coreconf/Linux.mk    2005-08-10 12:13:21.000000000 
+0000
++++ mozilla/security/coreconf/Linux.mk 2005-08-10 18:01:20.000000000 +0000
+@@ -54,6 +54,10 @@
+       OS_REL_CFLAGS   = -DLINUX1_2 -D_XOPEN_SOURCE
+       CPU_ARCH        = m68k
+ else          
++ifeq ($(OS_TEST),ppc64)
++      OS_REL_CFLAGS   = -DLINUX1_2 -D_XOPEN_SOURCE
++      CPU_ARCH        = ppc64
++else
+ ifeq ($(OS_TEST),ppc)
+       OS_REL_CFLAGS   = -DLINUX1_2 -D_XOPEN_SOURCE
+       CPU_ARCH        = ppc
+@@ -122,6 +126,7 @@
+ endif
+ endif
+ endif
++endif
+ 
+ 
+ LIBC_TAG              = _glibc
diff -urN ../tmp-orig/mozilla-thunderbird-1.0.6/debian/rules ./debian/rules
--- ../tmp-orig/mozilla-thunderbird-1.0.6/debian/rules  2005-08-11 
06:30:20.000000000 +0000
+++ ./debian/rules      2005-08-10 21:26:22.000000000 +0000
@@ -34,6 +34,10 @@
 #export CXX=g++-3.2
 #endif
 
+ifeq ($(DEB_BUILD_ARCH),ppc64)
+OPTFLAGS += -mminimal-toc
+endif
+
 NULL =
 CONFIGURE_OPTIONS = \
        --program-prefix=mozilla- \


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to