diff --git a/firefox-1.0-nspr-s390.patch b/firefox-1.0-nspr-s390.patch new file mode 100644 index 0000000..3a1aa3b --- /dev/null +++ b/firefox-1.0-nspr-s390.patch @@ -0,0 +1,150 @@ +Index: nsprpub/pr/include/md/_linux.cfg +=================================================================== +RCS file: /cvsroot/mozilla/nsprpub/pr/include/md/_linux.cfg,v +retrieving revision 3.12.4.5 +diff -u -r3.12.4.5 _linux.cfg +--- nsprpub/pr/include/md/_linux.cfg 9 Mar 2004 03:18:20 -0000 3.12.4.5 ++++ nsprpub/pr/include/md/_linux.cfg 19 Nov 2004 01:36:07 -0000 +@@ -505,95 +505,95 @@ + #define PR_BYTES_PER_WORD_LOG2 2 + #define PR_BYTES_PER_DWORD_LOG2 3 + +-#elif defined(__s390__) ++#elif defined(__s390x__) + + #define IS_BIG_ENDIAN 1 + #undef IS_LITTLE_ENDIAN ++#define IS_64 + + #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 4 ++#define PR_BYTES_PER_LONG 8 + #define PR_BYTES_PER_FLOAT 4 + #define PR_BYTES_PER_DOUBLE 8 +-#define PR_BYTES_PER_WORD 4 ++#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 32 ++#define PR_BITS_PER_LONG 64 + #define PR_BITS_PER_FLOAT 32 + #define PR_BITS_PER_DOUBLE 64 +-#define PR_BITS_PER_WORD 32 ++#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 5 ++#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 5 ++#define PR_BITS_PER_WORD_LOG2 6 + + #define PR_ALIGN_OF_SHORT 2 + #define PR_ALIGN_OF_INT 4 +-#define PR_ALIGN_OF_LONG 4 +-#define PR_ALIGN_OF_INT64 4 ++#define PR_ALIGN_OF_LONG 8 ++#define PR_ALIGN_OF_INT64 8 + #define PR_ALIGN_OF_FLOAT 4 +-#define PR_ALIGN_OF_DOUBLE 4 +-#define PR_ALIGN_OF_POINTER 4 +-#define PR_ALIGN_OF_WORD 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 2 ++#define PR_BYTES_PER_WORD_LOG2 3 + #define PR_BYTES_PER_DWORD_LOG2 3 + +-#elif defined(__s390x__) ++#elif defined(__s390__) + + #define IS_BIG_ENDIAN 1 + #undef IS_LITTLE_ENDIAN +-#define IS_64 + + #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_LONG 4 + #define PR_BYTES_PER_FLOAT 4 + #define PR_BYTES_PER_DOUBLE 8 +-#define PR_BYTES_PER_WORD 8 ++#define PR_BYTES_PER_WORD 4 + #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_LONG 32 + #define PR_BITS_PER_FLOAT 32 + #define PR_BITS_PER_DOUBLE 64 +-#define PR_BITS_PER_WORD 64 ++#define PR_BITS_PER_WORD 32 + + #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_LONG_LOG2 5 + #define PR_BITS_PER_FLOAT_LOG2 5 + #define PR_BITS_PER_DOUBLE_LOG2 6 +-#define PR_BITS_PER_WORD_LOG2 6 ++#define PR_BITS_PER_WORD_LOG2 5 + + #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_LONG 4 ++#define PR_ALIGN_OF_INT64 4 + #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_ALIGN_OF_DOUBLE 4 ++#define PR_ALIGN_OF_POINTER 4 ++#define PR_ALIGN_OF_WORD 4 + +-#define PR_BYTES_PER_WORD_LOG2 3 ++#define PR_BYTES_PER_WORD_LOG2 2 + #define PR_BYTES_PER_DWORD_LOG2 3 + + #else +Index: nsprpub/pr/include/md/_linux.h +=================================================================== +RCS file: /cvsroot/mozilla/nsprpub/pr/include/md/_linux.h,v +retrieving revision 3.34.2.8 +diff -u -r3.34.2.8 _linux.h +--- nsprpub/pr/include/md/_linux.h 9 Mar 2004 03:18:20 -0000 3.34.2.8 ++++ nsprpub/pr/include/md/_linux.h 19 Nov 2004 01:36:07 -0000 +@@ -63,10 +63,10 @@ + #define _PR_SI_ARCHITECTURE "arm" + #elif defined(__hppa__) + #define _PR_SI_ARCHITECTURE "hppa" +-#elif defined(__s390__) +-#define _PR_SI_ARCHITECTURE "s390" + #elif defined(__s390x__) + #define _PR_SI_ARCHITECTURE "s390x" ++#elif defined(__s390__) ++#define _PR_SI_ARCHITECTURE "s390" + #else + #error "Unknown CPU architecture" + #endif diff --git a/firefox-1.0-use-system-colors.patch b/firefox-1.0-use-system-colors.patch new file mode 100644 index 0000000..ac33c9b --- /dev/null +++ b/firefox-1.0-use-system-colors.patch @@ -0,0 +1,10 @@ +Index: mozilla/modules/libpref/src/init/all.js +=================================================================== +RCS file: /cvsroot/mozilla/modules/libpref/src/init/all.js,v +retrieving revision 3.515.2.3.2.23 +diff -d -u -p -0 -r3.515.2.3.2.23 all.js +--- mozilla/modules/libpref/src/init/all.js 4 Nov 2004 23:39:57 -0000 3.515.2.3.2.23 ++++ mozilla/modules/libpref/src/init/all.js 4 Dec 2004 07:00:57 -0000 +@@ -70 +70 @@ pref("browser.display.use_document_color +-pref("browser.display.use_system_colors", false); ++pref("browser.display.use_system_colors", true); diff --git a/firefox-1.0-xptcall-s390.patch b/firefox-1.0-xptcall-s390.patch new file mode 100644 index 0000000..2de02ee --- /dev/null +++ b/firefox-1.0-xptcall-s390.patch @@ -0,0 +1,107 @@ +diff -ur mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in mozilla-xx/xpcom/reflect/xptcall/src/md/unix/Makefile.in +--- mozilla/xpcom/reflect/xptcall/src/md/unix/Makefile.in 2004-04-22 22:50:05.000000000 +0200 ++++ mozilla-xx/xpcom/reflect/xptcall/src/md/unix/Makefile.in 2004-12-03 11:19:41.560694658 +0100 +@@ -341,10 +341,12 @@ + # + ifeq ($(OS_ARCH)$(OS_TEST),Linuxs390) + CPPSRCS := xptcinvoke_linux_s390.cpp xptcstubs_linux_s390.cpp ++CXXFLAGS += -fno-strict-aliasing -fno-inline -fomit-frame-pointer -mbackchain + endif + + ifeq ($(OS_ARCH)$(OS_TEST),Linuxs390x) + CPPSRCS := xptcinvoke_linux_s390x.cpp xptcstubs_linux_s390x.cpp ++CXXFLAGS += -fno-strict-aliasing -fno-inline -fomit-frame-pointer -mbackchain + endif + + +diff -ur mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp +--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp 2004-12-03 12:18:27.110694658 +0100 ++++ mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390.cpp 2004-12-03 12:27:05.100694658 +0100 +@@ -184,8 +184,6 @@ + } + } + +-volatile register void* r14 asm("r14"); +- + XPTC_PUBLIC_API(nsresult) + XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex, + PRUint32 paramCount, nsXPTCVariant* params) +@@ -199,8 +197,6 @@ + PRUint32 overflow = invoke_count_words (paramCount, params); + PRUint32 result; + +- volatile void* sav_r14 = r14; +- + __asm__ __volatile__ + ( + "lr 7,15\n\t" +@@ -235,10 +231,8 @@ + "a" (invoke_copy_to_stack), + "a" (that), + "a" (method) +- : "2", "3", "4", "5", "6", "7", "memory" ++ : "2", "3", "4", "5", "6", "7", "14", "cc", "memory", "%f0", "%f2" + ); +- +- r14 = sav_r14; + + return result; + } +diff -ur mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp +--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp 2004-12-03 12:18:27.110694658 +0100 ++++ mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_s390x.cpp 2004-12-03 12:26:44.500694658 +0100 +@@ -178,8 +178,6 @@ + } + } + +-volatile register void* r14 asm("r14"); +- + XPTC_PUBLIC_API(nsresult) + XPTC_InvokeByIndex(nsISupports* that, PRUint32 methodIndex, + PRUint32 paramCount, nsXPTCVariant* params) +@@ -193,8 +191,6 @@ + PRUint64 overflow = invoke_count_words (paramCount, params); + PRUint64 result; + +- volatile void* sav_r14 = r14; +- + __asm__ __volatile__ + ( + "lgr 7,15\n\t" +@@ -231,10 +227,9 @@ + "a" (invoke_copy_to_stack), + "a" (that), + "a" (method) +- : "2", "3", "4", "5", "6", "7", "memory" ++ : "2", "3", "4", "5", "6", "7", "14", "cc", "memory", ++ "%f0", "%f1", "%f2", "%f3", "%f4", "%f5", "%f6", "%f7" + ); +- +- r14 = sav_r14; + + return result; + } +diff -ur mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390.cpp mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390.cpp +--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390.cpp 2004-12-03 12:18:27.110694658 +0100 ++++ mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390.cpp 2004-12-03 11:16:55.400694658 +0100 +@@ -177,7 +177,7 @@ + \ + __asm__ __volatile__ \ + ( \ +- "lr %0,15\n\t" \ ++ "l %0,0(15)\n\t" \ + "ahi %0,96\n\t" \ + "stm 3,6,0(%3)\n\t" \ + "std 0,%1\n\t" \ +diff -ur mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390x.cpp mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390x.cpp +--- mozilla/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390x.cpp 2004-12-03 12:18:27.110694658 +0100 ++++ mozilla-xx/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_s390x.cpp 2004-12-03 11:17:16.360694658 +0100 +@@ -177,7 +177,7 @@ + \ + __asm__ __volatile__ \ + ( \ +- "lgr %0,15\n\t" \ ++ "lg %0,0(15)\n\t" \ + "aghi %0,160\n\t" \ + "stmg 3,6,0(%5)\n\t"\ + "std 0,%1\n\t" \ diff --git a/firefox.desktop b/firefox.desktop index 82a89c1..50e7f5f 100644 --- a/firefox.desktop +++ b/firefox.desktop @@ -8,4 +8,5 @@ Exec=firefox Icon=firefox.png Terminal=false Type=Application +StartupWMClass=Firefox-bin MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml; diff --git a/firefox.spec b/firefox.spec index 3037bb2..2c6cd24 100644 --- a/firefox.spec +++ b/firefox.spec @@ -3,7 +3,7 @@ %define desktop_file_utils_version 0.9 -ExclusiveArch: i386 x86_64 ia64 ppc +ExclusiveArch: i386 x86_64 ia64 ppc s390 s390x Summary: Mozilla Firefox Web browser. Name: firefox @@ -39,9 +39,9 @@ Patch26: firefox-RC1-stock-icons-be.patch Patch27: firefox-RC1-stock-icons-fe.patch Patch28: firefox-RC1-stock-icons-gnomestripe.patch Patch29: firefox-gnomestripe-0.1-livemarks.patch - Patch30: mozilla-1.7.3-pango-render.patch Patch31: firefox-1.0-pango-selection.patch +Patch32: firefox-1.0-use-system-colors.patch # local bugfixes @@ -54,6 +54,8 @@ Patch90: firefox-PR1-gtk-file-chooser-morefixes.patch # official upstream patches Patch101: firefox-PR1-pkgconfig.patch Patch102: mozilla-1.7.3-xptcall-s390.patch +Patch103: firefox-1.0-xptcall-s390.patch +Patch104: firefox-1.0-nspr-s390.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: libpng-devel, libjpeg-devel @@ -102,11 +104,14 @@ compliance, performance and portability. %patch29 -p1 %patch30 -p1 %patch31 -p1 +%patch32 -p1 %patch40 -p1 %patch41 -p0 %patch90 -p0 %patch101 -p0 %patch102 -p0 +%patch103 -p1 +%patch104 -p0 %{__rm} -f .mozconfig %{__cp} %{SOURCE2} .mozconfig @@ -226,6 +231,11 @@ fi #--------------------------------------------------------------------- %changelog +* Fri Dec 3 2004 Christopher Aillon 0:1.0-4 +- Add StartupWMClass patch from Damian Christey (#135830) +- Use system colors by default (#137810) +- Re-add s390(x) + * Sat Nov 20 2004 Christopher Blizzard 0:1.0-3 - Add patch that uses pango for selection.