Chromium: fix skia build on aarch64

Patch imported from Arch Linux ARM
This commit is contained in:
Andrew Childs 2018-03-16 00:51:20 +09:00 committed by Tuomas Tynkkynen
parent bca15c5331
commit 3928fd9081
2 changed files with 26 additions and 1 deletions

View file

@ -176,7 +176,10 @@ let
(githubPatch "ba4141e451f4e0b1b19410b1b503bd32e150df06" "1cjxw1f9fin6z12b0mcxnxf2mdjb0n3chwz7mgvmp9yij8qhqnxj")
(githubPatch "b34ed1e6524479d61ee944ebf6ca7389ea47e563" "1s13zw93nsyr259dzck6gbhg4x46qg5sg14djf4bvrrc6hlkiczw")
(githubPatch "4f2b52281ce1649ea8347489443965ad33262ecc" "1g59izkicn9cpcphamdgrijs306h5b9i7i4pmy134asn1ifiax5z")
] ++ optional enableWideVine ./patches/widevine.patch;
] ++ optional enableWideVine ./patches/widevine.patch
++ optionals (stdenv.isAarch64 && versionRange "65" "66") [
./patches/skia_buildfix.patch
];
postPatch = ''
# We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX

View file

@ -0,0 +1,22 @@
Index: chromium-browser-65.0.3325.73/third_party/skia/src/jumper/SkJumper_stages.cpp
===================================================================
--- chromium-browser-65.0.3325.73.orig/third_party/skia/src/jumper/SkJumper_stages.cpp
+++ chromium-browser-65.0.3325.73/third_party/skia/src/jumper/SkJumper_stages.cpp
@@ -666,7 +666,7 @@ SI F approx_powf(F x, F y) {
}
SI F from_half(U16 h) {
-#if defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
+#if defined(JUMPER_IS_NEON) && defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
return vcvt_f32_f16(h);
#elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_AVX512)
@@ -686,7 +686,7 @@ SI F from_half(U16 h) {
}
SI U16 to_half(F f) {
-#if defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
+#if defined(JUMPER_IS_NEON) && defined(__aarch64__) && !defined(SK_BUILD_FOR_GOOGLE3) // Temporary workaround for some Google3 builds.
return vcvt_f16_f32(f);
#elif defined(JUMPER_IS_HSW) || defined(JUMPER_IS_AVX512)