Accepting request 292717 from home:k0da:branches:mozilla:Factory

- Fix builds with skia on Power
  mozilla-skia-be-le.patch (patch from #bmo1136958)
  mozilla-bmo1108834.patch
  mozilla-bmo1005535.patch

OBS-URL: https://build.opensuse.org/request/show/292717
OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=431
This commit is contained in:
Wolfgang Rosenauer 2015-03-28 09:50:17 +00:00 committed by Git OBS Bridge
parent 94f9237755
commit 04d84121d1
5 changed files with 197 additions and 0 deletions

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Tue Mar 24 15:35:24 UTC 2015 - dvaleev@suse.com
- Fix builds with skia on Power
mozilla-skia-be-le.patch (patch from #bmo1136958)
mozilla-bmo1108834.patch
mozilla-bmo1005535.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Sat Mar 21 09:03:12 UTC 2015 - wr@rosenauer.org Sat Mar 21 09:03:12 UTC 2015 - wr@rosenauer.org

View File

@ -146,6 +146,9 @@ Patch11: mozilla-arm-disable-edsp.patch
Patch12: mozilla-bmo1088588.patch Patch12: mozilla-bmo1088588.patch
Patch13: mozilla-openaes-decl.patch Patch13: mozilla-openaes-decl.patch
Patch14: mozilla-skia-bmo1136958.patch Patch14: mozilla-skia-bmo1136958.patch
Patch15: mozilla-skia-be-le.patch
Patch16: mozilla-bmo1108834.patch
Patch17: mozilla-bmo1005535.patch
# Firefox/browser # Firefox/browser
Patch101: firefox-kde.patch Patch101: firefox-kde.patch
Patch102: firefox-no-default-ualocale.patch Patch102: firefox-no-default-ualocale.patch
@ -260,6 +263,9 @@ cd $RPM_BUILD_DIR/mozilla
%patch12 -p1 %patch12 -p1
%patch13 -p1 %patch13 -p1
%patch14 -p1 %patch14 -p1
%patch15 -p1
%patch16 -p1
%patch17 -p1
# Firefox # Firefox
%patch101 -p1 %patch101 -p1
%patch102 -p1 %patch102 -p1

141
mozilla-bmo1005535.patch Normal file
View File

@ -0,0 +1,141 @@
# HG changeset patch
# Parent b7eb1ce0237d6125b75bc8ff1cb3afc328d6e78c
# User Steve Singer <steve@ssinger.info>
Bug 1005535 - Get skia GPU building on big endian.
diff --git a/configure.in b/configure.in
--- a/configure.in
+++ b/configure.in
@@ -8239,11 +8239,11 @@ if test "${MOZ_WIDGET_TOOLKIT}" = "andro
AC_DEFINE(SK_BUILD_FOR_ANDROID_NDK)
fi
-if test "${CPU_ARCH}" != "ppc" -a "${CPU_ARCH}" != "ppc64" -a "${CPU_ARCH}" != "sparc" -a -z "$MOZ_DISABLE_SKIA_GPU" ; then
+# if test "${CPU_ARCH}" != "ppc" -a "${CPU_ARCH}" != "ppc64" -a "${CPU_ARCH}" != "sparc" -a -z "$MOZ_DISABLE_SKIA_GPU" ; then
MOZ_ENABLE_SKIA_GPU=1
AC_DEFINE(USE_SKIA_GPU)
AC_SUBST(MOZ_ENABLE_SKIA_GPU)
-fi
+# fi
dnl ========================================================
dnl Check for nss-shared-helper
diff --git a/gfx/skia/trunk/include/config/SkUserConfig.h b/gfx/skia/trunk/include/config/SkUserConfig.h
--- a/gfx/skia/trunk/include/config/SkUserConfig.h
+++ b/gfx/skia/trunk/include/config/SkUserConfig.h
@@ -192,16 +192,17 @@
#if defined(SK_CPU_ARM32) || defined(SK_CPU_ARM64)
# define SK_BARRIERS_PLATFORM_H "skia/SkBarriers_arm.h"
#else
# define SK_BARRIERS_PLATFORM_H "skia/SkBarriers_x86.h"
#endif
// On all platforms we have this byte order
+
#define SK_A32_SHIFT 24
#define SK_R32_SHIFT 16
#define SK_G32_SHIFT 8
#define SK_B32_SHIFT 0
#define SK_ALLOW_STATIC_GLOBAL_INITIALIZERS 0
#define SK_SUPPORT_LEGACY_GETDEVICE
diff --git a/gfx/skia/trunk/include/core/SkColorPriv.h b/gfx/skia/trunk/include/core/SkColorPriv.h
--- a/gfx/skia/trunk/include/core/SkColorPriv.h
+++ b/gfx/skia/trunk/include/core/SkColorPriv.h
@@ -27,37 +27,27 @@
* For easier compatibility with Skia's GPU backend, we further restrict these
* to either (in memory-byte-order) RGBA or BGRA. Note that this "order" does
* not directly correspond to the same shift-order, since we have to take endianess
* into account.
*
* Here we enforce this constraint.
*/
-#ifdef SK_CPU_BENDIAN
- #define SK_RGBA_R32_SHIFT 24
- #define SK_RGBA_G32_SHIFT 16
- #define SK_RGBA_B32_SHIFT 8
- #define SK_RGBA_A32_SHIFT 0
- #define SK_BGRA_B32_SHIFT 24
- #define SK_BGRA_G32_SHIFT 16
- #define SK_BGRA_R32_SHIFT 8
- #define SK_BGRA_A32_SHIFT 0
-#else
#define SK_RGBA_R32_SHIFT 0
#define SK_RGBA_G32_SHIFT 8
#define SK_RGBA_B32_SHIFT 16
#define SK_RGBA_A32_SHIFT 24
#define SK_BGRA_B32_SHIFT 0
#define SK_BGRA_G32_SHIFT 8
#define SK_BGRA_R32_SHIFT 16
#define SK_BGRA_A32_SHIFT 24
-#endif
+
#if defined(SK_PMCOLOR_IS_RGBA) && defined(SK_PMCOLOR_IS_BGRA)
#error "can't define PMCOLOR to be RGBA and BGRA"
#endif
#define LOCAL_PMCOLOR_SHIFTS_EQUIVALENT_TO_RGBA \
(SK_A32_SHIFT == SK_RGBA_A32_SHIFT && \
SK_R32_SHIFT == SK_RGBA_R32_SHIFT && \
diff --git a/gfx/skia/trunk/include/core/SkImageInfo.h b/gfx/skia/trunk/include/core/SkImageInfo.h
--- a/gfx/skia/trunk/include/core/SkImageInfo.h
+++ b/gfx/skia/trunk/include/core/SkImageInfo.h
@@ -83,19 +83,20 @@ enum SkColorType {
kLastEnum_SkColorType = kIndex_8_SkColorType,
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
kN32_SkColorType = kBGRA_8888_SkColorType,
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
kN32_SkColorType = kRGBA_8888_SkColorType,
#else
-#error "SK_*32_SHFIT values must correspond to BGRA or RGBA byte order"
+ kN32_SkColorType = kBGRA_8888_SkColorType
#endif
+
#ifdef SK_SUPPORT_LEGACY_N32_NAME
kPMColor_SkColorType = kN32_SkColorType
#endif
};
static int SkColorTypeBytesPerPixel(SkColorType ct) {
static const uint8_t gSize[] = {
0, // Unknown
diff --git a/gfx/skia/trunk/include/gpu/GrTypes.h b/gfx/skia/trunk/include/gpu/GrTypes.h
--- a/gfx/skia/trunk/include/gpu/GrTypes.h
+++ b/gfx/skia/trunk/include/gpu/GrTypes.h
@@ -304,25 +304,23 @@ enum GrPixelConfig {
* Byte order is r, g, b, a. This color format is 32 bits per channel
*/
kRGBA_float_GrPixelConfig,
kLast_GrPixelConfig = kRGBA_float_GrPixelConfig
};
static const int kGrPixelConfigCnt = kLast_GrPixelConfig + 1;
// Aliases for pixel configs that match skia's byte order.
-#ifndef SK_CPU_LENDIAN
- #error "Skia gpu currently assumes little endian"
-#endif
+
#if SK_PMCOLOR_BYTE_ORDER(B,G,R,A)
static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
#elif SK_PMCOLOR_BYTE_ORDER(R,G,B,A)
static const GrPixelConfig kSkia8888_GrPixelConfig = kRGBA_8888_GrPixelConfig;
#else
- #error "SK_*32_SHIFT values must correspond to GL_BGRA or GL_RGBA format."
+ static const GrPixelConfig kSkia8888_GrPixelConfig = kBGRA_8888_GrPixelConfig;
#endif
// Returns true if the pixel config is a GPU-specific compressed format
// representation.
static inline bool GrPixelConfigIsCompressed(GrPixelConfig config) {
switch (config) {
case kETC1_GrPixelConfig:
case kLATC_GrPixelConfig:

11
mozilla-bmo1108834.patch Normal file
View File

@ -0,0 +1,11 @@
diff -up mozilla/js/src/jit/none/Lowering-none.h.old firefox-36.0/mozilla-release/js/src/jit/none/Lowering-none.h
--- mozilla/js/src/jit/none/Lowering-none.h.old 2015-02-20 03:01:48.000000000 +0100
+++ mozilla/js/src/jit/none/Lowering-none.h 2015-03-06 12:00:43.486675228 +0100
@@ -89,6 +89,7 @@ class LIRGeneratorNone : public LIRGener
bool visitSimdTernaryBitwise(MSimdTernaryBitwise *ins) { MOZ_CRASH(); }
bool visitSimdSplatX4(MSimdSplatX4 *ins) { MOZ_CRASH(); }
bool visitSimdValueX4(MSimdValueX4 *lir) { MOZ_CRASH(); }
+ bool visitSubstr(MSubstr *) { MOZ_CRASH(); }
};
typedef LIRGeneratorNone LIRGeneratorSpecific;

31
mozilla-skia-be-le.patch Normal file
View File

@ -0,0 +1,31 @@
Index: mozilla/gfx/skia/trunk/include/core/SkPreConfig.h
===================================================================
--- mozilla.orig/gfx/skia/trunk/include/core/SkPreConfig.h
+++ mozilla/gfx/skia/trunk/include/core/SkPreConfig.h
@@ -92,6 +92,14 @@
//////////////////////////////////////////////////////////////////////
#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
+ #if defined(__BIG_ENDIAN__)
+ #define SK_CPU_BENDIAN
+ #elif defined(__LITTLE_ENDIAN__)
+ #define SK_CPU_LENDIAN
+ #endif
+#endif
+
+#if !defined(SK_CPU_BENDIAN) && !defined(SK_CPU_LENDIAN)
#if defined(__sparc) || defined(__sparc__) || \
defined(_POWER) || defined(__powerpc__) || \
defined(__ppc__) || defined(__hppa) || \
Index: mozilla/js/src/jsdtoa.cpp
===================================================================
--- mozilla.orig/js/src/jsdtoa.cpp
+++ mozilla/js/src/jsdtoa.cpp
@@ -52,6 +52,7 @@ static inline void dtoa_free(void* p) {
#define MALLOC dtoa_malloc
#define FREE dtoa_free
#include "dtoa.c"
+#undef CONST
/* Mapping of JSDToStrMode -> js_dtoa mode */
static const uint8_t dtoaModes[] = {