[arch-commits] Commit in chromium/repos/extra-x86_64 (22 files)
Evangelos Foutras
foutrelis at archlinux.org
Wed Aug 1 10:22:04 UTC 2018
Date: Wednesday, August 1, 2018 @ 10:22:04
Author: foutrelis
Revision: 330143
archrelease: copy trunk to extra-x86_64
Added:
chromium/repos/extra-x86_64/PKGBUILD
(from rev 330142, chromium/trunk/PKGBUILD)
chromium/repos/extra-x86_64/blink-disable-XML-catalogs-at-runtime.patch
(from rev 330142, chromium/trunk/blink-disable-XML-catalogs-at-runtime.patch)
chromium/repos/extra-x86_64/chromium-cors-string-r0.patch
(from rev 330142, chromium/trunk/chromium-cors-string-r0.patch)
chromium/repos/extra-x86_64/chromium-ffmpeg-r1.patch
(from rev 330142, chromium/trunk/chromium-ffmpeg-r1.patch)
chromium/repos/extra-x86_64/chromium-libjpeg-r0.patch
(from rev 330142, chromium/trunk/chromium-libjpeg-r0.patch)
chromium/repos/extra-x86_64/chromium-libwebp-shim-r0.patch
(from rev 330142, chromium/trunk/chromium-libwebp-shim-r0.patch)
chromium/repos/extra-x86_64/chromium-skia-harmony.patch
(from rev 330142, chromium/trunk/chromium-skia-harmony.patch)
chromium/repos/extra-x86_64/chromium-widevine-r2.patch
(from rev 330142, chromium/trunk/chromium-widevine-r2.patch)
chromium/repos/extra-x86_64/chromium.install
(from rev 330142, chromium/trunk/chromium.install)
chromium/repos/extra-x86_64/fix-cfi-icall-failure-with-use_system_libjpeg-true.patch
(from rev 330142, chromium/trunk/fix-cfi-icall-failure-with-use_system_libjpeg-true.patch)
chromium/repos/extra-x86_64/only-disable-cfi-icall-when-use_system_libjpeg-true.patch
(from rev 330142, chromium/trunk/only-disable-cfi-icall-when-use_system_libjpeg-true.patch)
chromium/repos/extra-x86_64/x11-fix-mixup-between-DIP-pixel-coordinates.patch
(from rev 330142, chromium/trunk/x11-fix-mixup-between-DIP-pixel-coordinates.patch)
Deleted:
chromium/repos/extra-x86_64/PKGBUILD
chromium/repos/extra-x86_64/blink-disable-XML-catalogs-at-runtime.patch
chromium/repos/extra-x86_64/chromium-cors-string-r0.patch
chromium/repos/extra-x86_64/chromium-ffmpeg-r1.patch
chromium/repos/extra-x86_64/chromium-libjpeg-r0.patch
chromium/repos/extra-x86_64/chromium-libwebp-shim-r0.patch
chromium/repos/extra-x86_64/chromium-skia-harmony.patch
chromium/repos/extra-x86_64/chromium-widevine-r2.patch
chromium/repos/extra-x86_64/chromium.install
chromium/repos/extra-x86_64/x11-fix-mixup-between-DIP-pixel-coordinates.patch
-----------------------------------------------------------+
PKGBUILD | 487 ++++++------
blink-disable-XML-catalogs-at-runtime.patch | 94 +-
chromium-cors-string-r0.patch | 102 +-
chromium-ffmpeg-r1.patch | 44 -
chromium-libjpeg-r0.patch | 124 +--
chromium-libwebp-shim-r0.patch | 86 +-
chromium-skia-harmony.patch | 154 +--
chromium-widevine-r2.patch | 78 -
chromium.install | 32
fix-cfi-icall-failure-with-use_system_libjpeg-true.patch | 52 +
only-disable-cfi-icall-when-use_system_libjpeg-true.patch | 34
x11-fix-mixup-between-DIP-pixel-coordinates.patch | 80 -
12 files changed, 730 insertions(+), 637 deletions(-)
Deleted: PKGBUILD
===================================================================
--- PKGBUILD 2018-08-01 10:21:52 UTC (rev 330142)
+++ PKGBUILD 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,240 +0,0 @@
-# $Id$
-# Maintainer: Evangelos Foutras <evangelos at foutrelis.com>
-# Contributor: Pierre Schmitz <pierre at archlinux.de>
-# Contributor: Jan "heftig" Steffens <jan.steffens at gmail.com>
-# Contributor: Daniel J Griffiths <ghost1227 at archlinux.us>
-
-pkgname=chromium
-pkgver=68.0.3440.75
-pkgrel=1
-_launcher_ver=6
-pkgdesc="A web browser built for speed, simplicity, and security"
-arch=('x86_64')
-url="https://www.chromium.org/Home"
-license=('BSD')
-depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
- 'ttf-font' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib'
- 'desktop-file-utils' 'hicolor-icon-theme')
-makedepends=('python' 'python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git'
- 'clang' 'lld')
-optdepends=('pepper-flash: support for Flash content'
- 'kdialog: needed for file dialogs in KDE'
- 'gnome-keyring: for storing passwords in GNOME keyring'
- 'kwallet: for storing passwords in KWallet')
-install=chromium.install
-source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz
- chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz
- x11-fix-mixup-between-DIP-pixel-coordinates.patch
- blink-disable-XML-catalogs-at-runtime.patch
- chromium-cors-string-r0.patch
- chromium-ffmpeg-r1.patch
- chromium-libjpeg-r0.patch
- chromium-libwebp-shim-r0.patch
- chromium-widevine-r2.patch
- chromium-skia-harmony.patch)
-sha256sums=('dc17783267853bdc0fb726363d2b8e30a0bf43b6cc2c768e1f37c92e8eb59541'
- '04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
- 'e2c2754536243a60fa70541bbd4121715eccd83caa8f1fb1873bd994cd81f871'
- '98a5c41cf9687c52ee380d2b683c95387334c76254479c347bdb733646dab815'
- 'f4141e48a25a1403250e9040c18936a16250ab707064dd54103066f40c7db41c'
- 'aa885330bc4180b78d915f9dfdfc3210038a0acab7b16735ea9828ab6a633bde'
- '6b8fc570607631d3558e99a82e92c11eeae9c960ebb0a83c13d46344d4b6adca'
- 'b368f3827ee4c47c942085e3d2cfbea43f8899b101e01500dbf6a7b01b2b29e0'
- '02c69bb3954087db599def7f5b6d65cf8f7cf2ed81dfbdaa4bb7b51863b4df15'
- 'feca54ab09ac0fc9d0626770a6b899a6ac5a12173c7d0c1005bc3964ec83e7b3')
-
-# Possible replacements are listed in build/linux/unbundle/replace_gn_files.py
-# Keys are the names in the above script; values are the dependencies in Arch
-declare -gA _system_libs=(
- [ffmpeg]=ffmpeg
- [flac]=flac
- [fontconfig]=fontconfig
- [freetype]=freetype2
- [harfbuzz-ng]=harfbuzz
- [icu]=icu
- [libdrm]=
- [libjpeg]=libjpeg
- #[libpng]=libpng # https://crbug.com/752403#c10
- #[libvpx]=libvpx # needs unreleased libvpx
- [libwebp]=libwebp
- [libxml]=libxml2
- [libxslt]=libxslt
- [opus]=opus
- [re2]=re2
- [snappy]=snappy
- [yasm]=
- [zlib]=minizip
-)
-_unwanted_bundled_libs=(
- ${!_system_libs[@]}
- ${_system_libs[libjpeg]+libjpeg_turbo}
-)
-depends+=(${_system_libs[@]})
-
-# Google API keys (see https://www.chromium.org/developers/how-tos/api-keys)
-# Note: These are for Arch Linux use ONLY. For your own distribution, please
-# get your own set of keys.
-_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
-_google_default_client_id=413772536636.apps.googleusercontent.com
-_google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4
-
-prepare() {
- cd "$srcdir/$pkgname-$pkgver"
-
- # Allow building against system libraries in official builds
- sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
- tools/generate_shim_headers/generate_shim_headers.py
-
- # https://crbug.com/707721
- patch -Np1 -i ../x11-fix-mixup-between-DIP-pixel-coordinates.patch
-
- # https://crbug.com/736026
- patch -Np1 -i ../blink-disable-XML-catalogs-at-runtime.patch
-
- # https://crbug.com/skia/6663#c10
- patch -Np4 -i ../chromium-skia-harmony.patch
-
- # Fixes from Gentoo
- patch -Np1 -i ../chromium-cors-string-r0.patch
- patch -Np1 -i ../chromium-ffmpeg-r1.patch
- patch -Np1 -i ../chromium-libjpeg-r0.patch
- patch -Np1 -i ../chromium-libwebp-shim-r0.patch
- patch -Np1 -i ../chromium-widevine-r2.patch
-
- # Remove compiler flags not supported by our system clang
- sed -i \
- -e '/"-Wno-ignored-pragma-optimize"/d' \
- build/config/compiler/BUILD.gn
-
- # Force script incompatible with Python 3 to use /usr/bin/python2
- sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py
-
- mkdir -p third_party/node/linux/node-linux-x64/bin
- ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
-
- # Remove bundled libraries for which we will use the system copies; this
- # *should* do what the remove_bundled_libraries.py script does, with the
- # added benefit of not having to list all the remaining libraries
- local _lib
- for _lib in ${_unwanted_bundled_libs[@]}; do
- find "third_party/$_lib" -type f \
- \! -path "third_party/$_lib/chromium/*" \
- \! -path "third_party/$_lib/google/*" \
- \! -path 'third_party/yasm/run_yasm.py' \
- \! -regex '.*\.\(gn\|gni\|isolate\)' \
- -delete
- done
-
- python2 build/linux/unbundle/replace_gn_files.py \
- --system-libraries "${!_system_libs[@]}"
-}
-
-build() {
- make -C chromium-launcher-$_launcher_ver
-
- cd "$srcdir/$pkgname-$pkgver"
-
- if check_buildoption ccache y; then
- # Avoid falling back to preprocessor mode when sources contain time macros
- export CCACHE_SLOPPINESS=time_macros
- fi
-
- export CC=clang
- export CXX=clang++
- export AR=ar
- export NM=nm
-
- local _flags=(
- 'custom_toolchain="//build/toolchain/linux/unbundle:default"'
- 'host_toolchain="//build/toolchain/linux/unbundle:default"'
- 'clang_use_chrome_plugins=false'
- 'is_official_build=true' # implies is_cfi=true on x86_64
- 'use_cfi_icall=false' # https://crbug.com/866290
- 'is_debug=false'
- 'treat_warnings_as_errors=false'
- 'fieldtrial_testing_like_official_build=true'
- 'remove_webcore_debug_symbols=true'
- 'ffmpeg_branding="Chrome"'
- 'proprietary_codecs=true'
- 'link_pulseaudio=true'
- 'use_gnome_keyring=false'
- 'use_sysroot=false'
- 'linux_use_bundled_binutils=false'
- 'use_custom_libcxx=false'
- 'enable_hangout_services_extension=true'
- 'enable_widevine=true'
- 'enable_nacl=false'
- 'enable_swiftshader=false'
- "google_api_key=\"${_google_api_key}\""
- "google_default_client_id=\"${_google_default_client_id}\""
- "google_default_client_secret=\"${_google_default_client_secret}\""
- )
-
- # Facilitate deterministic builds (taken from build/config/compiler/BUILD.gn)
- CFLAGS+=' -Wno-builtin-macro-redefined'
- CXXFLAGS+=' -Wno-builtin-macro-redefined'
- CPPFLAGS+=' -D__DATE__= -D__TIME__= -D__TIMESTAMP__='
-
- if check_option strip y; then
- _flags+=('symbol_level=0')
-
- # Mimic exclude_unwind_tables=true
- CFLAGS+=' -fno-unwind-tables -fno-asynchronous-unwind-tables'
- CXXFLAGS+=' -fno-unwind-tables -fno-asynchronous-unwind-tables'
- CPPFLAGS+=' -DNO_UNWIND_TABLES'
- fi
-
- python2 tools/gn/bootstrap/bootstrap.py -s --no-clean
- out/Release/gn gen out/Release --args="${_flags[*]}" \
- --script-executable=/usr/bin/python2
-
- ninja -C out/Release chrome chrome_sandbox chromedriver
-}
-
-package() {
- cd chromium-launcher-$_launcher_ver
- make PREFIX=/usr DESTDIR="$pkgdir" install
- install -Dm644 LICENSE \
- "$pkgdir/usr/share/licenses/chromium/LICENSE.launcher"
-
- cd "$srcdir/$pkgname-$pkgver"
-
- install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium"
- install -Dm4755 out/Release/chrome_sandbox "$pkgdir/usr/lib/chromium/chrome-sandbox"
- ln -s /usr/lib/chromium/chromedriver "$pkgdir/usr/bin/chromedriver"
-
- install -Dm644 chrome/installer/linux/common/desktop.template \
- "$pkgdir/usr/share/applications/chromium.desktop"
- install -Dm644 chrome/app/resources/manpage.1.in \
- "$pkgdir/usr/share/man/man1/chromium.1"
- sed -i \
- -e "s/@@MENUNAME@@/Chromium/g" \
- -e "s/@@PACKAGE@@/chromium/g" \
- -e "s/@@USR_BIN_SYMLINK_NAME@@/chromium/g" \
- "$pkgdir/usr/share/applications/chromium.desktop" \
- "$pkgdir/usr/share/man/man1/chromium.1"
-
- cp \
- out/Release/{chrome_{100,200}_percent,resources}.pak \
- out/Release/{*.bin,chromedriver} \
- "$pkgdir/usr/lib/chromium/"
- install -Dm644 -t "$pkgdir/usr/lib/chromium/locales" out/Release/locales/*.pak
-
- if [[ -z ${_system_libs[icu]+set} ]]; then
- cp out/Release/icudtl.dat "$pkgdir/usr/lib/chromium/"
- fi
-
- for size in 22 24 48 64 128 256; do
- install -Dm644 "chrome/app/theme/chromium/product_logo_$size.png" \
- "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png"
- done
-
- for size in 16 32; do
- install -Dm644 "chrome/app/theme/default_100_percent/chromium/product_logo_$size.png" \
- "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png"
- done
-
- install -Dm644 LICENSE "$pkgdir/usr/share/licenses/chromium/LICENSE"
-}
-
-# vim:set ts=2 sw=2 et:
Copied: chromium/repos/extra-x86_64/PKGBUILD (from rev 330142, chromium/trunk/PKGBUILD)
===================================================================
--- PKGBUILD (rev 0)
+++ PKGBUILD 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,247 @@
+# $Id$
+# Maintainer: Evangelos Foutras <evangelos at foutrelis.com>
+# Contributor: Pierre Schmitz <pierre at archlinux.de>
+# Contributor: Jan "heftig" Steffens <jan.steffens at gmail.com>
+# Contributor: Daniel J Griffiths <ghost1227 at archlinux.us>
+
+pkgname=chromium
+pkgver=68.0.3440.84
+pkgrel=1
+_launcher_ver=6
+pkgdesc="A web browser built for speed, simplicity, and security"
+arch=('x86_64')
+url="https://www.chromium.org/Home"
+license=('BSD')
+depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
+ 'ttf-font' 'systemd' 'dbus' 'libpulse' 'pciutils' 'json-glib'
+ 'desktop-file-utils' 'hicolor-icon-theme')
+makedepends=('python' 'python2' 'gperf' 'yasm' 'mesa' 'ninja' 'nodejs' 'git'
+ 'clang' 'lld')
+optdepends=('pepper-flash: support for Flash content'
+ 'kdialog: needed for file dialogs in KDE'
+ 'gnome-keyring: for storing passwords in GNOME keyring'
+ 'kwallet: for storing passwords in KWallet')
+install=chromium.install
+source=(https://commondatastorage.googleapis.com/chromium-browser-official/$pkgname-$pkgver.tar.xz
+ chromium-launcher-$_launcher_ver.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver.tar.gz
+ x11-fix-mixup-between-DIP-pixel-coordinates.patch
+ blink-disable-XML-catalogs-at-runtime.patch
+ fix-cfi-icall-failure-with-use_system_libjpeg-true.patch
+ only-disable-cfi-icall-when-use_system_libjpeg-true.patch
+ chromium-cors-string-r0.patch
+ chromium-ffmpeg-r1.patch
+ chromium-libjpeg-r0.patch
+ chromium-libwebp-shim-r0.patch
+ chromium-widevine-r2.patch
+ chromium-skia-harmony.patch)
+sha256sums=('1031d167ae18d8a37f9291ff0e9a3dca2337c0fc1031f2c243d0327b14ecc9d9'
+ '04917e3cd4307d8e31bfb0027a5dce6d086edb10ff8a716024fbb8bb0c7dccf1'
+ 'e2c2754536243a60fa70541bbd4121715eccd83caa8f1fb1873bd994cd81f871'
+ '98a5c41cf9687c52ee380d2b683c95387334c76254479c347bdb733646dab815'
+ '97b421bc60a4abdf37de2d88a51b973e9f68fb44d1eccd464adfb3d9f5d71478'
+ '9cae9ded6497afd15ad72d963897425ab6c7f28941bb3c3948e7996610a0d180'
+ 'f4141e48a25a1403250e9040c18936a16250ab707064dd54103066f40c7db41c'
+ 'aa885330bc4180b78d915f9dfdfc3210038a0acab7b16735ea9828ab6a633bde'
+ '6b8fc570607631d3558e99a82e92c11eeae9c960ebb0a83c13d46344d4b6adca'
+ 'b368f3827ee4c47c942085e3d2cfbea43f8899b101e01500dbf6a7b01b2b29e0'
+ '02c69bb3954087db599def7f5b6d65cf8f7cf2ed81dfbdaa4bb7b51863b4df15'
+ 'feca54ab09ac0fc9d0626770a6b899a6ac5a12173c7d0c1005bc3964ec83e7b3')
+
+# Possible replacements are listed in build/linux/unbundle/replace_gn_files.py
+# Keys are the names in the above script; values are the dependencies in Arch
+declare -gA _system_libs=(
+ [ffmpeg]=ffmpeg
+ [flac]=flac
+ [fontconfig]=fontconfig
+ [freetype]=freetype2
+ [harfbuzz-ng]=harfbuzz
+ [icu]=icu
+ [libdrm]=
+ [libjpeg]=libjpeg
+ #[libpng]=libpng # https://crbug.com/752403#c10
+ #[libvpx]=libvpx # needs unreleased libvpx
+ [libwebp]=libwebp
+ [libxml]=libxml2
+ [libxslt]=libxslt
+ [opus]=opus
+ [re2]=re2
+ [snappy]=snappy
+ [yasm]=
+ [zlib]=minizip
+)
+_unwanted_bundled_libs=(
+ ${!_system_libs[@]}
+ ${_system_libs[libjpeg]+libjpeg_turbo}
+)
+depends+=(${_system_libs[@]})
+
+# Google API keys (see https://www.chromium.org/developers/how-tos/api-keys)
+# Note: These are for Arch Linux use ONLY. For your own distribution, please
+# get your own set of keys.
+_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
+_google_default_client_id=413772536636.apps.googleusercontent.com
+_google_default_client_secret=0ZChLK6AxeA3Isu96MkwqDR4
+
+prepare() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # Allow building against system libraries in official builds
+ sed -i 's/OFFICIAL_BUILD/GOOGLE_CHROME_BUILD/' \
+ tools/generate_shim_headers/generate_shim_headers.py
+
+ # https://crbug.com/707721
+ patch -Np1 -i ../x11-fix-mixup-between-DIP-pixel-coordinates.patch
+
+ # https://crbug.com/736026
+ patch -Np1 -i ../blink-disable-XML-catalogs-at-runtime.patch
+
+ # https://crbug.com/866290
+ patch -Np1 -i ../fix-cfi-icall-failure-with-use_system_libjpeg-true.patch
+ patch -Np1 -i ../only-disable-cfi-icall-when-use_system_libjpeg-true.patch
+
+ # https://crbug.com/skia/6663#c10
+ patch -Np4 -i ../chromium-skia-harmony.patch
+
+ # Fixes from Gentoo
+ patch -Np1 -i ../chromium-cors-string-r0.patch
+ patch -Np1 -i ../chromium-ffmpeg-r1.patch
+ patch -Np1 -i ../chromium-libjpeg-r0.patch
+ patch -Np1 -i ../chromium-libwebp-shim-r0.patch
+ patch -Np1 -i ../chromium-widevine-r2.patch
+
+ # Remove compiler flags not supported by our system clang
+ sed -i \
+ -e '/"-Wno-ignored-pragma-optimize"/d' \
+ build/config/compiler/BUILD.gn
+
+ # Force script incompatible with Python 3 to use /usr/bin/python2
+ sed -i '1s|python$|&2|' third_party/dom_distiller_js/protoc_plugins/*.py
+
+ mkdir -p third_party/node/linux/node-linux-x64/bin
+ ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
+
+ # Remove bundled libraries for which we will use the system copies; this
+ # *should* do what the remove_bundled_libraries.py script does, with the
+ # added benefit of not having to list all the remaining libraries
+ local _lib
+ for _lib in ${_unwanted_bundled_libs[@]}; do
+ find "third_party/$_lib" -type f \
+ \! -path "third_party/$_lib/chromium/*" \
+ \! -path "third_party/$_lib/google/*" \
+ \! -path 'third_party/yasm/run_yasm.py' \
+ \! -regex '.*\.\(gn\|gni\|isolate\)' \
+ -delete
+ done
+
+ python2 build/linux/unbundle/replace_gn_files.py \
+ --system-libraries "${!_system_libs[@]}"
+}
+
+build() {
+ make -C chromium-launcher-$_launcher_ver
+
+ cd "$srcdir/$pkgname-$pkgver"
+
+ if check_buildoption ccache y; then
+ # Avoid falling back to preprocessor mode when sources contain time macros
+ export CCACHE_SLOPPINESS=time_macros
+ fi
+
+ export CC=clang
+ export CXX=clang++
+ export AR=ar
+ export NM=nm
+
+ local _flags=(
+ 'custom_toolchain="//build/toolchain/linux/unbundle:default"'
+ 'host_toolchain="//build/toolchain/linux/unbundle:default"'
+ 'clang_use_chrome_plugins=false'
+ 'is_official_build=true' # implies is_cfi=true on x86_64
+ 'is_debug=false'
+ 'treat_warnings_as_errors=false'
+ 'fieldtrial_testing_like_official_build=true'
+ 'remove_webcore_debug_symbols=true'
+ 'ffmpeg_branding="Chrome"'
+ 'proprietary_codecs=true'
+ 'link_pulseaudio=true'
+ 'use_gnome_keyring=false'
+ 'use_sysroot=false'
+ 'linux_use_bundled_binutils=false'
+ 'use_custom_libcxx=false'
+ 'enable_hangout_services_extension=true'
+ 'enable_widevine=true'
+ 'enable_nacl=false'
+ 'enable_swiftshader=false'
+ "google_api_key=\"${_google_api_key}\""
+ "google_default_client_id=\"${_google_default_client_id}\""
+ "google_default_client_secret=\"${_google_default_client_secret}\""
+ )
+
+ # Facilitate deterministic builds (taken from build/config/compiler/BUILD.gn)
+ CFLAGS+=' -Wno-builtin-macro-redefined'
+ CXXFLAGS+=' -Wno-builtin-macro-redefined'
+ CPPFLAGS+=' -D__DATE__= -D__TIME__= -D__TIMESTAMP__='
+
+ if check_option strip y; then
+ _flags+=('symbol_level=0')
+
+ # Mimic exclude_unwind_tables=true
+ CFLAGS+=' -fno-unwind-tables -fno-asynchronous-unwind-tables'
+ CXXFLAGS+=' -fno-unwind-tables -fno-asynchronous-unwind-tables'
+ CPPFLAGS+=' -DNO_UNWIND_TABLES'
+ fi
+
+ python2 tools/gn/bootstrap/bootstrap.py -s --no-clean
+ out/Release/gn gen out/Release --args="${_flags[*]}" \
+ --script-executable=/usr/bin/python2
+
+ ninja -C out/Release chrome chrome_sandbox chromedriver
+}
+
+package() {
+ cd chromium-launcher-$_launcher_ver
+ make PREFIX=/usr DESTDIR="$pkgdir" install
+ install -Dm644 LICENSE \
+ "$pkgdir/usr/share/licenses/chromium/LICENSE.launcher"
+
+ cd "$srcdir/$pkgname-$pkgver"
+
+ install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium"
+ install -Dm4755 out/Release/chrome_sandbox "$pkgdir/usr/lib/chromium/chrome-sandbox"
+ ln -s /usr/lib/chromium/chromedriver "$pkgdir/usr/bin/chromedriver"
+
+ install -Dm644 chrome/installer/linux/common/desktop.template \
+ "$pkgdir/usr/share/applications/chromium.desktop"
+ install -Dm644 chrome/app/resources/manpage.1.in \
+ "$pkgdir/usr/share/man/man1/chromium.1"
+ sed -i \
+ -e "s/@@MENUNAME@@/Chromium/g" \
+ -e "s/@@PACKAGE@@/chromium/g" \
+ -e "s/@@USR_BIN_SYMLINK_NAME@@/chromium/g" \
+ "$pkgdir/usr/share/applications/chromium.desktop" \
+ "$pkgdir/usr/share/man/man1/chromium.1"
+
+ cp \
+ out/Release/{chrome_{100,200}_percent,resources}.pak \
+ out/Release/{*.bin,chromedriver} \
+ "$pkgdir/usr/lib/chromium/"
+ install -Dm644 -t "$pkgdir/usr/lib/chromium/locales" out/Release/locales/*.pak
+
+ if [[ -z ${_system_libs[icu]+set} ]]; then
+ cp out/Release/icudtl.dat "$pkgdir/usr/lib/chromium/"
+ fi
+
+ for size in 22 24 48 64 128 256; do
+ install -Dm644 "chrome/app/theme/chromium/product_logo_$size.png" \
+ "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png"
+ done
+
+ for size in 16 32; do
+ install -Dm644 "chrome/app/theme/default_100_percent/chromium/product_logo_$size.png" \
+ "$pkgdir/usr/share/icons/hicolor/${size}x${size}/apps/chromium.png"
+ done
+
+ install -Dm644 LICENSE "$pkgdir/usr/share/licenses/chromium/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:
Deleted: blink-disable-XML-catalogs-at-runtime.patch
===================================================================
--- blink-disable-XML-catalogs-at-runtime.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ blink-disable-XML-catalogs-at-runtime.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,47 +0,0 @@
-From 8f0c8c8d9bce12c70ce9acb4a7474cd15c9be65b Mon Sep 17 00:00:00 2001
-From: Mike Gilbert <floppymaster at gmail.com>
-Date: Wed, 20 Jun 2018 20:37:46 +0000
-Subject: [PATCH] blink: disable XML catalogs at runtime
-
-Chromium may optionally be built against libxml installed on the system.
-The system libxml commonly has XML catalog support enabled. Disable it
-by calling xmlCatalogSetDefaults(XML_CATA_ALLOW_NONE).
-
-Bug: https://bugs.gentoo.org/653078
-Change-Id: I069f6dcecf81168f9d31eb0efe2519197ec8e779
-Reviewed-on: https://chromium-review.googlesource.com/1103710
-Reviewed-by: Daniel Cheng <dcheng at chromium.org>
-Commit-Queue: Scott Graham <scottmg at chromium.org>
-Cr-Commit-Position: refs/heads/master@{#568998}
----
- .../blink/renderer/core/xml/parser/xml_document_parser.cc | 7 +++++++
- 1 file changed, 7 insertions(+)
-
-diff --git a/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc b/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc
-index 9744de383d9a..d0539f61e4b5 100644
---- a/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc
-+++ b/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc
-@@ -28,6 +28,10 @@
-
- #include <libxml/parser.h>
- #include <libxml/parserInternals.h>
-+#include <libxml/xmlversion.h>
-+#if defined(LIBXML_CATALOG_ENABLED)
-+#include <libxml/catalog.h>
-+#endif
- #include <libxslt/xslt.h>
-
- #include <memory>
-@@ -648,6 +652,9 @@ static void InitializeLibXMLIfNecessary() {
- if (did_init)
- return;
-
-+#if defined(LIBXML_CATALOG_ENABLED)
-+ xmlCatalogSetDefaults(XML_CATA_ALLOW_NONE);
-+#endif
- xmlInitParser();
- xmlRegisterInputCallbacks(MatchFunc, OpenFunc, ReadFunc, CloseFunc);
- xmlRegisterOutputCallbacks(MatchFunc, OpenFunc, WriteFunc, CloseFunc);
---
-2.17.1
-
Copied: chromium/repos/extra-x86_64/blink-disable-XML-catalogs-at-runtime.patch (from rev 330142, chromium/trunk/blink-disable-XML-catalogs-at-runtime.patch)
===================================================================
--- blink-disable-XML-catalogs-at-runtime.patch (rev 0)
+++ blink-disable-XML-catalogs-at-runtime.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,47 @@
+From 8f0c8c8d9bce12c70ce9acb4a7474cd15c9be65b Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppymaster at gmail.com>
+Date: Wed, 20 Jun 2018 20:37:46 +0000
+Subject: [PATCH] blink: disable XML catalogs at runtime
+
+Chromium may optionally be built against libxml installed on the system.
+The system libxml commonly has XML catalog support enabled. Disable it
+by calling xmlCatalogSetDefaults(XML_CATA_ALLOW_NONE).
+
+Bug: https://bugs.gentoo.org/653078
+Change-Id: I069f6dcecf81168f9d31eb0efe2519197ec8e779
+Reviewed-on: https://chromium-review.googlesource.com/1103710
+Reviewed-by: Daniel Cheng <dcheng at chromium.org>
+Commit-Queue: Scott Graham <scottmg at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#568998}
+---
+ .../blink/renderer/core/xml/parser/xml_document_parser.cc | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc b/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc
+index 9744de383d9a..d0539f61e4b5 100644
+--- a/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc
++++ b/third_party/blink/renderer/core/xml/parser/xml_document_parser.cc
+@@ -28,6 +28,10 @@
+
+ #include <libxml/parser.h>
+ #include <libxml/parserInternals.h>
++#include <libxml/xmlversion.h>
++#if defined(LIBXML_CATALOG_ENABLED)
++#include <libxml/catalog.h>
++#endif
+ #include <libxslt/xslt.h>
+
+ #include <memory>
+@@ -648,6 +652,9 @@ static void InitializeLibXMLIfNecessary() {
+ if (did_init)
+ return;
+
++#if defined(LIBXML_CATALOG_ENABLED)
++ xmlCatalogSetDefaults(XML_CATA_ALLOW_NONE);
++#endif
+ xmlInitParser();
+ xmlRegisterInputCallbacks(MatchFunc, OpenFunc, ReadFunc, CloseFunc);
+ xmlRegisterOutputCallbacks(MatchFunc, OpenFunc, WriteFunc, CloseFunc);
+--
+2.17.1
+
Deleted: chromium-cors-string-r0.patch
===================================================================
--- chromium-cors-string-r0.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ chromium-cors-string-r0.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,51 +0,0 @@
-From 01d891fa0790950549c7bedb34edf869827a372e Mon Sep 17 00:00:00 2001
-From: Jose Dapena Paz <jose.dapena at lge.com>
-Date: Thu, 31 May 2018 17:03:37 +0000
-Subject: [PATCH] CORS legacy: add missing string include
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-The cors_legacy.h file includes declarations using std::string, but
-it is not declared due to missing #include <string>.
-
-Also drop unneeded declarations in .cpp file.
-
-Change-Id: I00df799f84a6c3530c2f12f1e52d24c7d9bd6bfd
-Reviewed-on: https://chromium-review.googlesource.com/1080707
-Reviewed-by: Tom Sepez <tsepez at chromium.org>
-Commit-Queue: José Dapena Paz <jose.dapena at lge.com>
-Cr-Commit-Position: refs/heads/master@{#563282}
----
- services/network/public/cpp/cors/cors_legacy.cc | 2 --
- services/network/public/cpp/cors/cors_legacy.h | 1 +
- 2 files changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/services/network/public/cpp/cors/cors_legacy.cc b/services/network/public/cpp/cors/cors_legacy.cc
-index 8f32ac3be64e..f01af63619b5 100644
---- a/services/network/public/cpp/cors/cors_legacy.cc
-+++ b/services/network/public/cpp/cors/cors_legacy.cc
-@@ -5,8 +5,6 @@
- #include "services/network/public/cpp/cors/cors_legacy.h"
-
- #include <algorithm>
--#include <string>
--#include <vector>
-
- #include "url/gurl.h"
- #include "url/url_util.h"
-diff --git a/services/network/public/cpp/cors/cors_legacy.h b/services/network/public/cpp/cors/cors_legacy.h
-index d2cdf026ca3a..dc9295a92c47 100644
---- a/services/network/public/cpp/cors/cors_legacy.h
-+++ b/services/network/public/cpp/cors/cors_legacy.h
-@@ -5,6 +5,7 @@
- #ifndef SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_
- #define SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_
-
-+#include <string>
- #include <vector>
-
- #include "base/component_export.h"
---
-2.17.1
-
Copied: chromium/repos/extra-x86_64/chromium-cors-string-r0.patch (from rev 330142, chromium/trunk/chromium-cors-string-r0.patch)
===================================================================
--- chromium-cors-string-r0.patch (rev 0)
+++ chromium-cors-string-r0.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,51 @@
+From 01d891fa0790950549c7bedb34edf869827a372e Mon Sep 17 00:00:00 2001
+From: Jose Dapena Paz <jose.dapena at lge.com>
+Date: Thu, 31 May 2018 17:03:37 +0000
+Subject: [PATCH] CORS legacy: add missing string include
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+The cors_legacy.h file includes declarations using std::string, but
+it is not declared due to missing #include <string>.
+
+Also drop unneeded declarations in .cpp file.
+
+Change-Id: I00df799f84a6c3530c2f12f1e52d24c7d9bd6bfd
+Reviewed-on: https://chromium-review.googlesource.com/1080707
+Reviewed-by: Tom Sepez <tsepez at chromium.org>
+Commit-Queue: José Dapena Paz <jose.dapena at lge.com>
+Cr-Commit-Position: refs/heads/master@{#563282}
+---
+ services/network/public/cpp/cors/cors_legacy.cc | 2 --
+ services/network/public/cpp/cors/cors_legacy.h | 1 +
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/services/network/public/cpp/cors/cors_legacy.cc b/services/network/public/cpp/cors/cors_legacy.cc
+index 8f32ac3be64e..f01af63619b5 100644
+--- a/services/network/public/cpp/cors/cors_legacy.cc
++++ b/services/network/public/cpp/cors/cors_legacy.cc
+@@ -5,8 +5,6 @@
+ #include "services/network/public/cpp/cors/cors_legacy.h"
+
+ #include <algorithm>
+-#include <string>
+-#include <vector>
+
+ #include "url/gurl.h"
+ #include "url/url_util.h"
+diff --git a/services/network/public/cpp/cors/cors_legacy.h b/services/network/public/cpp/cors/cors_legacy.h
+index d2cdf026ca3a..dc9295a92c47 100644
+--- a/services/network/public/cpp/cors/cors_legacy.h
++++ b/services/network/public/cpp/cors/cors_legacy.h
+@@ -5,6 +5,7 @@
+ #ifndef SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_
+ #define SERVICES_NETWORK_PUBLIC_CPP_CORS_CORS_LEGACY_H_
+
++#include <string>
+ #include <vector>
+
+ #include "base/component_export.h"
+--
+2.17.1
+
Deleted: chromium-ffmpeg-r1.patch
===================================================================
--- chromium-ffmpeg-r1.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ chromium-ffmpeg-r1.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,22 +0,0 @@
---- a/build/linux/unbundle/ffmpeg.gn
-+++ b/build/linux/unbundle/ffmpeg.gn
-@@ -14,8 +14,8 @@ pkg_config("system_ffmpeg") {
- ]
- }
-
--buildflag_header("ffmpeg_buildflags") {
-- header = "ffmpeg_buildflags.h"
-+buildflag_header("ffmpeg_features") {
-+ header = "ffmpeg_features.h"
- flags = [ "USE_SYSTEM_FFMPEG=true" ]
- }
-
-@@ -30,7 +30,7 @@ shim_headers("ffmpeg_shim") {
-
- source_set("ffmpeg") {
- deps = [
-- ":ffmpeg_buildflags",
-+ ":ffmpeg_features",
- ":ffmpeg_shim",
- ]
- public_configs = [ ":system_ffmpeg" ]
Copied: chromium/repos/extra-x86_64/chromium-ffmpeg-r1.patch (from rev 330142, chromium/trunk/chromium-ffmpeg-r1.patch)
===================================================================
--- chromium-ffmpeg-r1.patch (rev 0)
+++ chromium-ffmpeg-r1.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,22 @@
+--- a/build/linux/unbundle/ffmpeg.gn
++++ b/build/linux/unbundle/ffmpeg.gn
+@@ -14,8 +14,8 @@ pkg_config("system_ffmpeg") {
+ ]
+ }
+
+-buildflag_header("ffmpeg_buildflags") {
+- header = "ffmpeg_buildflags.h"
++buildflag_header("ffmpeg_features") {
++ header = "ffmpeg_features.h"
+ flags = [ "USE_SYSTEM_FFMPEG=true" ]
+ }
+
+@@ -30,7 +30,7 @@ shim_headers("ffmpeg_shim") {
+
+ source_set("ffmpeg") {
+ deps = [
+- ":ffmpeg_buildflags",
++ ":ffmpeg_features",
+ ":ffmpeg_shim",
+ ]
+ public_configs = [ ":system_ffmpeg" ]
Deleted: chromium-libjpeg-r0.patch
===================================================================
--- chromium-libjpeg-r0.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ chromium-libjpeg-r0.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,62 +0,0 @@
-From c6b0194f7a4d9f494b2d51f46d2c332e2e5f4050 Mon Sep 17 00:00:00 2001
-From: Daniel Bratell <bratell at opera.com>
-Date: Mon, 28 May 2018 13:13:01 +0000
-Subject: [PATCH] Use the same libjpeg in all of blink/platform
-
-The normal libjpeg renames some symbols with macros so if its
-headers are included together with libjpeg-turbo's headers
-in the same translation unit, there will be an inconsistent
-renaming of libjpeg symbols. This happened in some extreme
-jumbo configuration and resulted in confising linker errors.
-
-This patch changes an include so that jpeglib.h becomes included
-the same way everywhere.
-
-Change-Id: I7f122d0919d58371bb40dc0097a766b857b9815e
-Reviewed-on: https://chromium-review.googlesource.com/1073423
-Reviewed-by: Kentaro Hara <haraken at chromium.org>
-Commit-Queue: Daniel Bratell <bratell at opera.com>
-Cr-Commit-Position: refs/heads/master@{#562243}
----
- .../renderer/platform/image-encoders/image_encoder.cc | 11 +++++++++++
- .../renderer/platform/image-encoders/image_encoder.h | 2 --
- 2 files changed, 11 insertions(+), 2 deletions(-)
-
-diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
-index 0c7f14c7c0e4..4c450f5d6783 100644
---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
-+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
-@@ -4,6 +4,17 @@
-
- #include "third_party/blink/renderer/platform/image-encoders/image_encoder.h"
-
-+#include "build/build_config.h"
-+
-+#if defined(OS_WIN)
-+#include <basetsd.h> // Included before jpeglib.h because of INT32 clash
-+#endif // OS_WIN
-+#include <stdio.h> // Needed by jpeglib.h
-+
-+#include "jpeglib.h" // for JPEG_MAX_DIMENSION
-+
-+#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION
-+
- namespace blink {
-
- bool ImageEncoder::Encode(Vector<unsigned char>* dst,
-diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.h b/third_party/blink/renderer/platform/image-encoders/image_encoder.h
-index 0d1460f34827..40306097d507 100644
---- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h
-+++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h
-@@ -7,8 +7,6 @@
-
- #include "third_party/blink/renderer/platform/platform_export.h"
- #include "third_party/blink/renderer/platform/wtf/vector.h"
--#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION
--#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION
- #include "third_party/skia/include/core/SkStream.h"
- #include "third_party/skia/include/encode/SkJpegEncoder.h"
- #include "third_party/skia/include/encode/SkPngEncoder.h"
---
-2.17.1
-
Copied: chromium/repos/extra-x86_64/chromium-libjpeg-r0.patch (from rev 330142, chromium/trunk/chromium-libjpeg-r0.patch)
===================================================================
--- chromium-libjpeg-r0.patch (rev 0)
+++ chromium-libjpeg-r0.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,62 @@
+From c6b0194f7a4d9f494b2d51f46d2c332e2e5f4050 Mon Sep 17 00:00:00 2001
+From: Daniel Bratell <bratell at opera.com>
+Date: Mon, 28 May 2018 13:13:01 +0000
+Subject: [PATCH] Use the same libjpeg in all of blink/platform
+
+The normal libjpeg renames some symbols with macros so if its
+headers are included together with libjpeg-turbo's headers
+in the same translation unit, there will be an inconsistent
+renaming of libjpeg symbols. This happened in some extreme
+jumbo configuration and resulted in confising linker errors.
+
+This patch changes an include so that jpeglib.h becomes included
+the same way everywhere.
+
+Change-Id: I7f122d0919d58371bb40dc0097a766b857b9815e
+Reviewed-on: https://chromium-review.googlesource.com/1073423
+Reviewed-by: Kentaro Hara <haraken at chromium.org>
+Commit-Queue: Daniel Bratell <bratell at opera.com>
+Cr-Commit-Position: refs/heads/master@{#562243}
+---
+ .../renderer/platform/image-encoders/image_encoder.cc | 11 +++++++++++
+ .../renderer/platform/image-encoders/image_encoder.h | 2 --
+ 2 files changed, 11 insertions(+), 2 deletions(-)
+
+diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
+index 0c7f14c7c0e4..4c450f5d6783 100644
+--- a/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
++++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.cc
+@@ -4,6 +4,17 @@
+
+ #include "third_party/blink/renderer/platform/image-encoders/image_encoder.h"
+
++#include "build/build_config.h"
++
++#if defined(OS_WIN)
++#include <basetsd.h> // Included before jpeglib.h because of INT32 clash
++#endif // OS_WIN
++#include <stdio.h> // Needed by jpeglib.h
++
++#include "jpeglib.h" // for JPEG_MAX_DIMENSION
++
++#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION
++
+ namespace blink {
+
+ bool ImageEncoder::Encode(Vector<unsigned char>* dst,
+diff --git a/third_party/blink/renderer/platform/image-encoders/image_encoder.h b/third_party/blink/renderer/platform/image-encoders/image_encoder.h
+index 0d1460f34827..40306097d507 100644
+--- a/third_party/blink/renderer/platform/image-encoders/image_encoder.h
++++ b/third_party/blink/renderer/platform/image-encoders/image_encoder.h
+@@ -7,8 +7,6 @@
+
+ #include "third_party/blink/renderer/platform/platform_export.h"
+ #include "third_party/blink/renderer/platform/wtf/vector.h"
+-#include "third_party/libjpeg/jpeglib.h" // for JPEG_MAX_DIMENSION
+-#include "third_party/libwebp/src/webp/encode.h" // for WEBP_MAX_DIMENSION
+ #include "third_party/skia/include/core/SkStream.h"
+ #include "third_party/skia/include/encode/SkJpegEncoder.h"
+ #include "third_party/skia/include/encode/SkPngEncoder.h"
+--
+2.17.1
+
Deleted: chromium-libwebp-shim-r0.patch
===================================================================
--- chromium-libwebp-shim-r0.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ chromium-libwebp-shim-r0.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,43 +0,0 @@
-diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn
-index ab92adecf400..12574d87be58 100644
---- a/build/linux/unbundle/libwebp.gn
-+++ b/build/linux/unbundle/libwebp.gn
-@@ -2,12 +2,34 @@
- # Use of this source code is governed by a BSD-style license that can be
- # found in the LICENSE file.
-
-+import("//build/config/linux/pkg_config.gni")
-+import("//build/shim_headers.gni")
-+
-+pkg_config("system_libwebp") {
-+ packages = [
-+ "libwebp",
-+ "libwebpdemux",
-+ "libwebpmux",
-+ ]
-+}
-+
-+shim_headers("libwebp_shim") {
-+ root_path = "src"
-+ headers = [
-+ "webp/decode.h",
-+ "webp/demux.h",
-+ "webp/encode.h",
-+ "webp/mux.h",
-+ "webp/mux_types.h",
-+ "webp/types.h",
-+ ]
-+}
-+
- source_set("libwebp_webp") {
-- libs = [
-- "webp",
-- "webpdemux",
-- "webpmux",
-+ deps = [
-+ ":libwebp_shim",
- ]
-+ public_configs = [ ":system_libwebp" ]
- }
-
- group("libwebp") {
Copied: chromium/repos/extra-x86_64/chromium-libwebp-shim-r0.patch (from rev 330142, chromium/trunk/chromium-libwebp-shim-r0.patch)
===================================================================
--- chromium-libwebp-shim-r0.patch (rev 0)
+++ chromium-libwebp-shim-r0.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,43 @@
+diff --git a/build/linux/unbundle/libwebp.gn b/build/linux/unbundle/libwebp.gn
+index ab92adecf400..12574d87be58 100644
+--- a/build/linux/unbundle/libwebp.gn
++++ b/build/linux/unbundle/libwebp.gn
+@@ -2,12 +2,34 @@
+ # Use of this source code is governed by a BSD-style license that can be
+ # found in the LICENSE file.
+
++import("//build/config/linux/pkg_config.gni")
++import("//build/shim_headers.gni")
++
++pkg_config("system_libwebp") {
++ packages = [
++ "libwebp",
++ "libwebpdemux",
++ "libwebpmux",
++ ]
++}
++
++shim_headers("libwebp_shim") {
++ root_path = "src"
++ headers = [
++ "webp/decode.h",
++ "webp/demux.h",
++ "webp/encode.h",
++ "webp/mux.h",
++ "webp/mux_types.h",
++ "webp/types.h",
++ ]
++}
++
+ source_set("libwebp_webp") {
+- libs = [
+- "webp",
+- "webpdemux",
+- "webpmux",
++ deps = [
++ ":libwebp_shim",
+ ]
++ public_configs = [ ":system_libwebp" ]
+ }
+
+ group("libwebp") {
Deleted: chromium-skia-harmony.patch
===================================================================
--- chromium-skia-harmony.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ chromium-skia-harmony.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,77 +0,0 @@
---- qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp.orig 2017-10-10 17:42:06.956950985 +0200
-+++ qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-10-10 17:46:05.824187787 +0200
-@@ -99,8 +99,6 @@
- FreeTypeLibrary()
- : fGetVarDesignCoordinates(nullptr)
- , fLibrary(nullptr)
-- , fIsLCDSupported(false)
-- , fLCDExtra(0)
- {
- if (FT_New_Library(&gFTMemory, &fLibrary)) {
- return;
-@@ -147,12 +145,7 @@
- }
- #endif
-
-- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
-- // The default has changed over time, so this doesn't mean the same thing to all users.
-- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
-- fIsLCDSupported = true;
-- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
-- }
-+ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT);
- }
- ~FreeTypeLibrary() {
- if (fLibrary) {
-@@ -161,8 +153,6 @@
- }
-
- FT_Library library() { return fLibrary; }
-- bool isLCDSupported() { return fIsLCDSupported; }
-- int lcdExtra() { return fLCDExtra; }
-
- // FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1.
- // Prior to this there was no way to get the coordinates out of the FT_Face.
-@@ -173,8 +163,6 @@
-
- private:
- FT_Library fLibrary;
-- bool fIsLCDSupported;
-- int fLCDExtra;
-
- // FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0.
- // The following platforms provide FreeType of at least 2.4.0.
-@@ -704,17 +692,6 @@
- rec->fTextSize = SkIntToScalar(1 << 14);
- }
-
-- if (isLCD(*rec)) {
-- // TODO: re-work so that FreeType is set-up and selected by the SkFontMgr.
-- SkAutoMutexAcquire ama(gFTMutex);
-- ref_ft_library();
-- if (!gFTLibrary->isLCDSupported()) {
-- // If the runtime Freetype library doesn't support LCD, disable it here.
-- rec->fMaskFormat = SkMask::kA8_Format;
-- }
-- unref_ft_library();
-- }
--
- SkPaint::Hinting h = rec->getHinting();
- if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) {
- // collapse full->normal hinting if we're not doing LCD
-@@ -1115,11 +1092,11 @@
- void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) {
- if (isLCD(fRec)) {
- if (fLCDIsVert) {
-- glyph->fHeight += gFTLibrary->lcdExtra();
-- glyph->fTop -= gFTLibrary->lcdExtra() >> 1;
-+ glyph->fHeight += 2;
-+ glyph->fTop -= 1;
- } else {
-- glyph->fWidth += gFTLibrary->lcdExtra();
-- glyph->fLeft -= gFTLibrary->lcdExtra() >> 1;
-+ glyph->fWidth += 2;
-+ glyph->fLeft -= 1;
- }
- }
- }
Copied: chromium/repos/extra-x86_64/chromium-skia-harmony.patch (from rev 330142, chromium/trunk/chromium-skia-harmony.patch)
===================================================================
--- chromium-skia-harmony.patch (rev 0)
+++ chromium-skia-harmony.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,77 @@
+--- qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp.orig 2017-10-10 17:42:06.956950985 +0200
++++ qtwebengine-opensource-src-5.9.1/src/3rdparty/chromium/third_party/skia/src/ports/SkFontHost_FreeType.cpp 2017-10-10 17:46:05.824187787 +0200
+@@ -99,8 +99,6 @@
+ FreeTypeLibrary()
+ : fGetVarDesignCoordinates(nullptr)
+ , fLibrary(nullptr)
+- , fIsLCDSupported(false)
+- , fLCDExtra(0)
+ {
+ if (FT_New_Library(&gFTMemory, &fLibrary)) {
+ return;
+@@ -147,12 +145,7 @@
+ }
+ #endif
+
+- // Setup LCD filtering. This reduces color fringes for LCD smoothed glyphs.
+- // The default has changed over time, so this doesn't mean the same thing to all users.
+- if (FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT) == 0) {
+- fIsLCDSupported = true;
+- fLCDExtra = 2; //Using a filter adds one full pixel to each side.
+- }
++ FT_Library_SetLcdFilter(fLibrary, FT_LCD_FILTER_DEFAULT);
+ }
+ ~FreeTypeLibrary() {
+ if (fLibrary) {
+@@ -161,8 +153,6 @@
+ }
+
+ FT_Library library() { return fLibrary; }
+- bool isLCDSupported() { return fIsLCDSupported; }
+- int lcdExtra() { return fLCDExtra; }
+
+ // FT_Get_{MM,Var}_{Blend,Design}_Coordinates were added in FreeType 2.7.1.
+ // Prior to this there was no way to get the coordinates out of the FT_Face.
+@@ -173,8 +163,6 @@
+
+ private:
+ FT_Library fLibrary;
+- bool fIsLCDSupported;
+- int fLCDExtra;
+
+ // FT_Library_SetLcdFilterWeights was introduced in FreeType 2.4.0.
+ // The following platforms provide FreeType of at least 2.4.0.
+@@ -704,17 +692,6 @@
+ rec->fTextSize = SkIntToScalar(1 << 14);
+ }
+
+- if (isLCD(*rec)) {
+- // TODO: re-work so that FreeType is set-up and selected by the SkFontMgr.
+- SkAutoMutexAcquire ama(gFTMutex);
+- ref_ft_library();
+- if (!gFTLibrary->isLCDSupported()) {
+- // If the runtime Freetype library doesn't support LCD, disable it here.
+- rec->fMaskFormat = SkMask::kA8_Format;
+- }
+- unref_ft_library();
+- }
+-
+ SkPaint::Hinting h = rec->getHinting();
+ if (SkPaint::kFull_Hinting == h && !isLCD(*rec)) {
+ // collapse full->normal hinting if we're not doing LCD
+@@ -1115,11 +1092,11 @@
+ void SkScalerContext_FreeType::updateGlyphIfLCD(SkGlyph* glyph) {
+ if (isLCD(fRec)) {
+ if (fLCDIsVert) {
+- glyph->fHeight += gFTLibrary->lcdExtra();
+- glyph->fTop -= gFTLibrary->lcdExtra() >> 1;
++ glyph->fHeight += 2;
++ glyph->fTop -= 1;
+ } else {
+- glyph->fWidth += gFTLibrary->lcdExtra();
+- glyph->fLeft -= gFTLibrary->lcdExtra() >> 1;
++ glyph->fWidth += 2;
++ glyph->fLeft -= 1;
+ }
+ }
+ }
Deleted: chromium-widevine-r2.patch
===================================================================
--- chromium-widevine-r2.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ chromium-widevine-r2.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,39 +0,0 @@
-Minimal patch to get chromium to compile with widevine support.
-
-Exactly the same as -r1, but we now need to patch
-ninja to pretty please not terminate our build.
-
-caveat emptor: it's in no way clear that building chromium this
-way is safer, from a security perspective, than whatever Google
-Chrome does.
-
-Upstream appears to be cooking up a code-signing trust-chain
-which may protect users against malicious cdm blobs; I doubt
-we benefit from these using this kludge. Ideally, someone
-would look into this more carefully than I have ... tbh as
-soon as I got my "stories" back, I pretty much lost interest :)
-
--gmt
-
---
---- a/third_party/widevine/cdm/stub/widevine_cdm_version.h
-+++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h
-@@ -10,6 +10,7 @@
-
- #include "third_party/widevine/cdm/widevine_cdm_common.h"
-
-+#define WIDEVINE_CDM_VERSION_STRING "unknown"
- #define WIDEVINE_CDM_AVAILABLE
-
- #endif // WIDEVINE_CDM_VERSION_H_
---- a/third_party/widevine/cdm/BUILD.gn
-+++ b/third_party/widevine/cdm/BUILD.gn
-@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev
- # Internal Cast builds set enable_widevine=true to bring in Widevine support.
- # TODO(xhwang): Support component updated CDM on other platforms and remove this
- # assert.
--assert(!enable_widevine || is_win || is_mac || is_chromecast,
-+assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux,
- "Component updated CDM only supported on Windows and Mac for now.")
-
- widevine_arch = current_cpu
Copied: chromium/repos/extra-x86_64/chromium-widevine-r2.patch (from rev 330142, chromium/trunk/chromium-widevine-r2.patch)
===================================================================
--- chromium-widevine-r2.patch (rev 0)
+++ chromium-widevine-r2.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,39 @@
+Minimal patch to get chromium to compile with widevine support.
+
+Exactly the same as -r1, but we now need to patch
+ninja to pretty please not terminate our build.
+
+caveat emptor: it's in no way clear that building chromium this
+way is safer, from a security perspective, than whatever Google
+Chrome does.
+
+Upstream appears to be cooking up a code-signing trust-chain
+which may protect users against malicious cdm blobs; I doubt
+we benefit from these using this kludge. Ideally, someone
+would look into this more carefully than I have ... tbh as
+soon as I got my "stories" back, I pretty much lost interest :)
+
+-gmt
+
+--
+--- a/third_party/widevine/cdm/stub/widevine_cdm_version.h
++++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h
+@@ -10,6 +10,7 @@
+
+ #include "third_party/widevine/cdm/widevine_cdm_common.h"
+
++#define WIDEVINE_CDM_VERSION_STRING "unknown"
+ #define WIDEVINE_CDM_AVAILABLE
+
+ #endif // WIDEVINE_CDM_VERSION_H_
+--- a/third_party/widevine/cdm/BUILD.gn
++++ b/third_party/widevine/cdm/BUILD.gn
+@@ -11,7 +11,7 @@ import("//third_party/widevine/cdm/widev
+ # Internal Cast builds set enable_widevine=true to bring in Widevine support.
+ # TODO(xhwang): Support component updated CDM on other platforms and remove this
+ # assert.
+-assert(!enable_widevine || is_win || is_mac || is_chromecast,
++assert(!enable_widevine || is_win || is_mac || is_chromecast || is_linux,
+ "Component updated CDM only supported on Windows and Mac for now.")
+
+ widevine_arch = current_cpu
Deleted: chromium.install
===================================================================
--- chromium.install 2018-08-01 10:21:52 UTC (rev 330142)
+++ chromium.install 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,16 +0,0 @@
-post_upgrade() {
- if (($(vercmp $2 42.0.2311.90-1) < 0)); then
- echo ':: This Chromium package no longer supports custom flags passed via the'
- echo ' /etc/chromium/default file (or any other files under /etc/chromium/).'
- echo
- echo ' The new /usr/bin/chromium launcher script will automatically detect'
- echo ' Pepper Flash (if installed) and pass the correct flags to Chromium.'
- echo
- echo ' If you need to pass extra command-line arguments to Chromium, you'
- echo ' can put them in a "chromium-flags.conf" file under $HOME/.config/'
- echo ' (or $XDG_CONFIG_HOME). Arguments are split on whitespace and shell'
- echo ' quoting rules apply but no further parsing is performed.'
- fi
-}
-
-# vim:set ts=2 sw=2 et:
Copied: chromium/repos/extra-x86_64/chromium.install (from rev 330142, chromium/trunk/chromium.install)
===================================================================
--- chromium.install (rev 0)
+++ chromium.install 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,16 @@
+post_upgrade() {
+ if (($(vercmp $2 42.0.2311.90-1) < 0)); then
+ echo ':: This Chromium package no longer supports custom flags passed via the'
+ echo ' /etc/chromium/default file (or any other files under /etc/chromium/).'
+ echo
+ echo ' The new /usr/bin/chromium launcher script will automatically detect'
+ echo ' Pepper Flash (if installed) and pass the correct flags to Chromium.'
+ echo
+ echo ' If you need to pass extra command-line arguments to Chromium, you'
+ echo ' can put them in a "chromium-flags.conf" file under $HOME/.config/'
+ echo ' (or $XDG_CONFIG_HOME). Arguments are split on whitespace and shell'
+ echo ' quoting rules apply but no further parsing is performed.'
+ fi
+}
+
+# vim:set ts=2 sw=2 et:
Copied: chromium/repos/extra-x86_64/fix-cfi-icall-failure-with-use_system_libjpeg-true.patch (from rev 330142, chromium/trunk/fix-cfi-icall-failure-with-use_system_libjpeg-true.patch)
===================================================================
--- fix-cfi-icall-failure-with-use_system_libjpeg-true.patch (rev 0)
+++ fix-cfi-icall-failure-with-use_system_libjpeg-true.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,52 @@
+From db82db1b609f30d144d45477f55697818bcd363c Mon Sep 17 00:00:00 2001
+From: Vlad Tsyrklevich <vtsyrklevich at chromium.org>
+Date: Tue, 31 Jul 2018 01:03:22 +0000
+Subject: [PATCH] Fix cfi-icall failure with use_system_libjpeg=true
+
+JPEGImageReader::AllocateSampleArray() can call the function pointer
+(*info_.mem->alloc_sarray) which can be set by the systems non-CFI
+enabled libjpeg DSO when chromium is built with use_system_libjpeg=true.
+Disable cfi-icall for that method.
+
+Bug: 866290
+Change-Id: I6d9bbf08c514d6d5f48ad34c3802c63419ed1223
+Reviewed-on: https://chromium-review.googlesource.com/1155927
+Reviewed-by: Kentaro Hara <haraken at chromium.org>
+Commit-Queue: Vlad Tsyrklevich <vtsyrklevich at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#579270}
+---
+ .../renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc | 2 +-
+ third_party/blink/renderer/platform/wtf/compiler.h | 2 ++
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
+index a1e440f6eed5..fd4e72ba053c 100644
+--- a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
++++ b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
+@@ -643,7 +643,7 @@ class JPEGImageReader final {
+ IntSize UvSize() const { return uv_size_; }
+
+ private:
+- JSAMPARRAY AllocateSampleArray() {
++ NO_SANITIZE_CFI_ICALL JSAMPARRAY AllocateSampleArray() {
+ // Some output color spaces don't need the sample array: don't allocate in that
+ // case.
+ #if defined(TURBO_JPEG_RGB_SWIZZLE)
+diff --git a/third_party/blink/renderer/platform/wtf/compiler.h b/third_party/blink/renderer/platform/wtf/compiler.h
+index 51595afdc955..5225a70309d6 100644
+--- a/third_party/blink/renderer/platform/wtf/compiler.h
++++ b/third_party/blink/renderer/platform/wtf/compiler.h
+@@ -57,8 +57,10 @@
+ #if defined(__clang__)
+ #define NO_SANITIZE_UNRELATED_CAST \
+ __attribute__((no_sanitize("cfi-unrelated-cast", "vptr")))
++#define NO_SANITIZE_CFI_ICALL __attribute__((no_sanitize("cfi-icall")))
+ #else
+ #define NO_SANITIZE_UNRELATED_CAST
++#define NO_SANITIZE_CFI_ICALL
+ #endif
+
+ #endif /* WTF_Compiler_h */
+--
+2.18.0
+
Copied: chromium/repos/extra-x86_64/only-disable-cfi-icall-when-use_system_libjpeg-true.patch (from rev 330142, chromium/trunk/only-disable-cfi-icall-when-use_system_libjpeg-true.patch)
===================================================================
--- only-disable-cfi-icall-when-use_system_libjpeg-true.patch (rev 0)
+++ only-disable-cfi-icall-when-use_system_libjpeg-true.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,34 @@
+From 20f81a066ffdf6bd30fb4b696b8b3e101368e2f6 Mon Sep 17 00:00:00 2001
+From: Vlad Tsyrklevich <vtsyrklevich at chromium.org>
+Date: Tue, 31 Jul 2018 23:21:09 +0000
+Subject: [PATCH] Only disable cfi-icall when use_system_libjpeg=true
+
+Bug: 866290
+Change-Id: Ic5d175b3b854665f50781650406d599d09ee9849
+Reviewed-on: https://chromium-review.googlesource.com/1157136
+Reviewed-by: Kentaro Hara <haraken at chromium.org>
+Commit-Queue: Vlad Tsyrklevich <vtsyrklevich at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#579614}
+---
+ .../platform/image-decoders/jpeg/jpeg_image_decoder.cc | 5 ++++-
+ 1 file changed, 4 insertions(+), 1 deletion(-)
+
+diff --git a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
+index fd4e72ba053c..afa90d83efee 100644
+--- a/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
++++ b/third_party/blink/renderer/platform/image-decoders/jpeg/jpeg_image_decoder.cc
+@@ -643,7 +643,10 @@ class JPEGImageReader final {
+ IntSize UvSize() const { return uv_size_; }
+
+ private:
+- NO_SANITIZE_CFI_ICALL JSAMPARRAY AllocateSampleArray() {
++#if defined(USE_SYSTEM_LIBJPEG)
++ NO_SANITIZE_CFI_ICALL
++#endif
++ JSAMPARRAY AllocateSampleArray() {
+ // Some output color spaces don't need the sample array: don't allocate in that
+ // case.
+ #if defined(TURBO_JPEG_RGB_SWIZZLE)
+--
+2.18.0
+
Deleted: x11-fix-mixup-between-DIP-pixel-coordinates.patch
===================================================================
--- x11-fix-mixup-between-DIP-pixel-coordinates.patch 2018-08-01 10:21:52 UTC (rev 330142)
+++ x11-fix-mixup-between-DIP-pixel-coordinates.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -1,40 +0,0 @@
-From 2752a03ba6435130848aa620b7ab4246eec2f77a Mon Sep 17 00:00:00 2001
-From: Tom Anderson <thomasanderson at chromium.org>
-Date: Mon, 4 Jun 2018 22:09:08 +0000
-Subject: [PATCH] X11: Fix mixup between DIP/pixel coordinates
-
-BUG=707721
-R=sky
-
-Change-Id: Ibbbff9c2c815700324f553a3b66e878f76938534
-Reviewed-on: https://chromium-review.googlesource.com/1083692
-Reviewed-by: Scott Violet <sky at chromium.org>
-Commit-Queue: Thomas Anderson <thomasanderson at chromium.org>
-Cr-Commit-Position: refs/heads/master@{#564261}
----
- ui/views/widget/desktop_aura/desktop_screen_x11.cc | 9 +++++++--
- 1 file changed, 7 insertions(+), 2 deletions(-)
-
-diff --git a/ui/views/widget/desktop_aura/desktop_screen_x11.cc b/ui/views/widget/desktop_aura/desktop_screen_x11.cc
-index 8fd5d379d344..e90710c2c39c 100644
---- a/ui/views/widget/desktop_aura/desktop_screen_x11.cc
-+++ b/ui/views/widget/desktop_aura/desktop_screen_x11.cc
-@@ -216,8 +216,13 @@ display::Display DesktopScreenX11::GetDisplayNearestWindow(
- if (host) {
- DesktopWindowTreeHostX11* rwh = DesktopWindowTreeHostX11::GetHostForXID(
- host->GetAcceleratedWidget());
-- if (rwh)
-- return GetDisplayMatching(rwh->GetX11RootWindowBounds());
-+ if (rwh) {
-+ const float scale = 1.0f / GetDeviceScaleFactor();
-+ const gfx::Rect pixel_rect = rwh->GetX11RootWindowBounds();
-+ return GetDisplayMatching(
-+ gfx::Rect(gfx::ScaleToFlooredPoint(pixel_rect.origin(), scale),
-+ gfx::ScaleToCeiledSize(pixel_rect.size(), scale)));
-+ }
- }
-
- return GetPrimaryDisplay();
---
-2.17.1
-
Copied: chromium/repos/extra-x86_64/x11-fix-mixup-between-DIP-pixel-coordinates.patch (from rev 330142, chromium/trunk/x11-fix-mixup-between-DIP-pixel-coordinates.patch)
===================================================================
--- x11-fix-mixup-between-DIP-pixel-coordinates.patch (rev 0)
+++ x11-fix-mixup-between-DIP-pixel-coordinates.patch 2018-08-01 10:22:04 UTC (rev 330143)
@@ -0,0 +1,40 @@
+From 2752a03ba6435130848aa620b7ab4246eec2f77a Mon Sep 17 00:00:00 2001
+From: Tom Anderson <thomasanderson at chromium.org>
+Date: Mon, 4 Jun 2018 22:09:08 +0000
+Subject: [PATCH] X11: Fix mixup between DIP/pixel coordinates
+
+BUG=707721
+R=sky
+
+Change-Id: Ibbbff9c2c815700324f553a3b66e878f76938534
+Reviewed-on: https://chromium-review.googlesource.com/1083692
+Reviewed-by: Scott Violet <sky at chromium.org>
+Commit-Queue: Thomas Anderson <thomasanderson at chromium.org>
+Cr-Commit-Position: refs/heads/master@{#564261}
+---
+ ui/views/widget/desktop_aura/desktop_screen_x11.cc | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/ui/views/widget/desktop_aura/desktop_screen_x11.cc b/ui/views/widget/desktop_aura/desktop_screen_x11.cc
+index 8fd5d379d344..e90710c2c39c 100644
+--- a/ui/views/widget/desktop_aura/desktop_screen_x11.cc
++++ b/ui/views/widget/desktop_aura/desktop_screen_x11.cc
+@@ -216,8 +216,13 @@ display::Display DesktopScreenX11::GetDisplayNearestWindow(
+ if (host) {
+ DesktopWindowTreeHostX11* rwh = DesktopWindowTreeHostX11::GetHostForXID(
+ host->GetAcceleratedWidget());
+- if (rwh)
+- return GetDisplayMatching(rwh->GetX11RootWindowBounds());
++ if (rwh) {
++ const float scale = 1.0f / GetDeviceScaleFactor();
++ const gfx::Rect pixel_rect = rwh->GetX11RootWindowBounds();
++ return GetDisplayMatching(
++ gfx::Rect(gfx::ScaleToFlooredPoint(pixel_rect.origin(), scale),
++ gfx::ScaleToCeiledSize(pixel_rect.size(), scale)));
++ }
+ }
+
+ return GetPrimaryDisplay();
+--
+2.17.1
+
More information about the arch-commits
mailing list