Date: Wednesday, April 5, 2023 @ 01:45:31
  Author: foutrelis
Revision: 472617

archrelease: copy trunk to extra-x86_64

Added:
  chromium/repos/extra-x86_64/PKGBUILD
    (from rev 472616, chromium/trunk/PKGBUILD)
  chromium/repos/extra-x86_64/disable-GlobalMediaControlsCastStartStop.patch
    (from rev 472616, 
chromium/trunk/disable-GlobalMediaControlsCastStartStop.patch)
  chromium/repos/extra-x86_64/fetch-chromium-release
    (from rev 472616, chromium/trunk/fetch-chromium-release)
  
chromium/repos/extra-x86_64/sql-relax-constraints-on-VirtualCursor-layout.patch
    (from rev 472616, 
chromium/trunk/sql-relax-constraints-on-VirtualCursor-layout.patch)
  chromium/repos/extra-x86_64/use-oauth2-client-switches-as-default.patch
    (from rev 472616, 
chromium/trunk/use-oauth2-client-switches-as-default.patch)
Deleted:
  chromium/repos/extra-x86_64/PKGBUILD
  chromium/repos/extra-x86_64/disable-GlobalMediaControlsCastStartStop.patch
  chromium/repos/extra-x86_64/fetch-chromium-release
  
chromium/repos/extra-x86_64/sql-relax-constraints-on-VirtualCursor-layout.patch
  chromium/repos/extra-x86_64/use-oauth2-client-switches-as-default.patch

-----------------------------------------------------+
 PKGBUILD                                            |  549 ++++++++----------
 disable-GlobalMediaControlsCastStartStop.patch      |   26 
 fetch-chromium-release                              |   88 +-
 sql-relax-constraints-on-VirtualCursor-layout.patch |   96 +--
 use-oauth2-client-switches-as-default.patch         |   34 -
 5 files changed, 394 insertions(+), 399 deletions(-)

Deleted: PKGBUILD
===================================================================
--- PKGBUILD    2023-04-05 01:45:23 UTC (rev 472616)
+++ PKGBUILD    2023-04-05 01:45:31 UTC (rev 472617)
@@ -1,277 +0,0 @@
-# Maintainer: Evangelos Foutras <[email protected]>
-# Contributor: Pierre Schmitz <[email protected]>
-# Contributor: Jan "heftig" Steffens <[email protected]>
-# Contributor: Daniel J Griffiths <[email protected]>
-
-pkgname=chromium
-pkgver=111.0.5563.146
-pkgrel=1
-_launcher_ver=8
-_gcc_patchset=2
-_manual_clone=0
-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-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'libva'
-         'libffi' 'desktop-file-utils' 'hicolor-icon-theme')
-makedepends=('python' 'gn' 'ninja' 'clang' 'lld' 'gperf' 'nodejs' 'pipewire'
-             'qt5-base' 'java-runtime-headless' 'git')
-optdepends=('pipewire: WebRTC desktop sharing under Wayland'
-            'kdialog: support for native dialogs in Plasma'
-            'qt5-base: enable Qt5 with --enable-features=AllowQt'
-            'org.freedesktop.secrets: password storage backend on GNOME / Xfce'
-            'kwallet: support for storing passwords in KWallet on Plasma')
-options=('!lto') # Chromium adds its own flags for ThinLTO
-source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver.tar.xz
-        
https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz
-        
https://github.com/stha09/chromium-patches/releases/download/chromium-${pkgver%%.*}-patchset-$_gcc_patchset/chromium-${pkgver%%.*}-patchset-$_gcc_patchset.tar.xz
-        sql-relax-constraints-on-VirtualCursor-layout.patch
-        disable-GlobalMediaControlsCastStartStop.patch
-        use-oauth2-client-switches-as-default.patch)
-sha256sums=('1e701fa31b55fa0633c307af8537b4dbf67e02d8cad1080c57d845ed8c48b5fe'
-            '213e50f48b67feb4441078d50b0fd431df34323be15be97c55302d3fdac4483a'
-            'a016588340f1559198e4ce61c6e91c48cf863600f415cb5c46322de7e1f77909'
-            'e66be069d932fe18811e789c57b96249b7250257ff91a3d82d15e2a7283891b7'
-            '7f3b1b22d6a271431c1f9fc92b6eb49c6d80b8b3f868bdee07a6a1a16630a302'
-            'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711')
-
-if (( _manual_clone )); then
-  source[0]=fetch-chromium-release
-  makedepends+=('python-httplib2' 'python-pyparsing' 'python-six')
-fi
-
-# 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=(
-  [brotli]=brotli
-  [dav1d]=dav1d
-  [ffmpeg]=ffmpeg
-  [flac]=flac
-  [fontconfig]=fontconfig
-  [freetype]=freetype2
-  [harfbuzz-ng]=harfbuzz
-  [icu]=icu
-  [jsoncpp]=jsoncpp
-  [libaom]=aom
-  #[libavif]=libavif # https://github.com/AOMediaCodec/libavif/commit/4d2776a3
-  [libdrm]=
-  [libjpeg]=libjpeg
-  [libpng]=libpng
-  #[libvpx]=libvpx
-  [libwebp]=libwebp
-  [libxml]=libxml2
-  [libxslt]=libxslt
-  [opus]=opus
-  [re2]=re2
-  [snappy]=snappy
-  [woff2]=woff2
-  [zlib]=minizip
-)
-_unwanted_bundled_libs=(
-  $(printf "%s\n" ${!_system_libs[@]} | sed 's/^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.
-#
-# Starting with Chromium 89 (2021-03-02) the OAuth2 credentials have been left
-# out: https://archlinux.org/news/chromium-losing-sync-support-in-early-march/
-_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
-
-prepare() {
-  if (( _manual_clone )); then
-    ./fetch-chromium-release $pkgver
-  fi
-  cd chromium-$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/893950
-  sed -i -e 's/\<xmlMalloc\>/malloc/' -e 's/\<xmlFree\>/free/' \
-    third_party/blink/renderer/core/xml/*.cc \
-    third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
-    third_party/libxml/chromium/*.cc \
-    third_party/maldoca/src/maldoca/ole/oss_utils.h
-
-  # Use the --oauth2-client-id= and --oauth2-client-secret= switches for
-  # setting GOOGLE_DEFAULT_CLIENT_ID and GOOGLE_DEFAULT_CLIENT_SECRET at
-  # runtime -- this allows signing into Chromium without baked-in values
-  patch -Np1 -i ../use-oauth2-client-switches-as-default.patch
-
-  # Upstream fixes
-  patch -Np1 -i ../sql-relax-constraints-on-VirtualCursor-layout.patch
-
-  # Disable kGlobalMediaControlsCastStartStop by default
-  # https://crbug.com/1314342
-  patch -Np1 -i ../disable-GlobalMediaControlsCastStartStop.patch
-
-  # Fixes for building with libstdc++ instead of libc++
-
-  # Link to system tools required by the build
-  mkdir -p third_party/node/linux/node-linux-x64/bin
-  ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
-  ln -s /usr/bin/java third_party/jdk/current/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/harfbuzz-ng/utils/hb_scoped.h" \
-      \! -regex '.*\.\(gn\|gni\|isolate\)' \
-      -delete
-  done
-
-  ./build/linux/unbundle/replace_gn_files.py \
-    --system-libraries "${!_system_libs[@]}"
-}
-
-build() {
-  make -C chromium-launcher-$_launcher_ver
-
-  cd chromium-$pkgver
-
-  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_base_path="/usr"'
-    'clang_use_chrome_plugins=false'
-    'is_official_build=true' # implies is_cfi=true on x86_64
-    'symbol_level=0' # sufficient for backtraces on x86(_64)
-    'chrome_pgo_phase=0' # needs newer clang to read the bundled PGO profile
-    'treat_warnings_as_errors=false'
-    'disable_fieldtrial_testing_config=true'
-    'blink_enable_generated_code_formatting=false'
-    'ffmpeg_branding="Chrome"'
-    'proprietary_codecs=true'
-    'rtc_use_pipewire=true'
-    'link_pulseaudio=true'
-    'use_custom_libcxx=false'
-    'use_gnome_keyring=false'
-    'use_sysroot=false'
-    'use_system_libffi=true'
-    'enable_hangout_services_extension=true'
-    'enable_widevine=true'
-    'enable_nacl=false'
-    "google_api_key=\"$_google_api_key\""
-  )
-
-  if [[ -n ${_system_libs[icu]+set} ]]; then
-    _flags+=('icu_use_data_file=false')
-  fi
-
-  # 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__='
-
-  # Do not warn about unknown warning options
-  CFLAGS+='   -Wno-unknown-warning-option'
-  CXXFLAGS+=' -Wno-unknown-warning-option'
-
-  # Let Chromium set its own symbol level
-  CFLAGS=${CFLAGS/-g }
-  CXXFLAGS=${CXXFLAGS/-g }
-
-  # 
https://github.com/ungoogled-software/ungoogled-chromium-archlinux/issues/123
-  CFLAGS=${CFLAGS/-fexceptions}
-  CFLAGS=${CFLAGS/-fcf-protection}
-  CXXFLAGS=${CXXFLAGS/-fexceptions}
-  CXXFLAGS=${CXXFLAGS/-fcf-protection}
-
-  # This appears to cause random segfaults when combined with ThinLTO
-  # https://bugs.archlinux.org/task/73518
-  CFLAGS=${CFLAGS/-fstack-clash-protection}
-  CXXFLAGS=${CXXFLAGS/-fstack-clash-protection}
-
-  # https://crbug.com/957519#c122
-  CXXFLAGS=${CXXFLAGS/-Wp,-D_GLIBCXX_ASSERTIONS}
-
-  gn gen out/Release --args="${_flags[*]}"
-  ninja -C out/Release chrome chrome_sandbox chromedriver.unstripped
-}
-
-package() {
-  cd chromium-launcher-$_launcher_ver
-  make PREFIX=/usr DESTDIR="$pkgdir" install
-  install -Dm644 LICENSE \
-    "$pkgdir/usr/share/licenses/chromium/LICENSE.launcher"
-
-  cd ../chromium-$pkgver
-
-  install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium"
-  install -D out/Release/chromedriver.unstripped "$pkgdir/usr/bin/chromedriver"
-  install -Dm4755 out/Release/chrome_sandbox 
"$pkgdir/usr/lib/chromium/chrome-sandbox"
-
-  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"
-
-  install -Dm644 
chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml \
-    "$pkgdir/usr/share/metainfo/chromium.appdata.xml"
-  sed -ni \
-    -e 's/chromium-browser\.desktop/chromium.desktop/' \
-    -e '/<update_contact>/d' \
-    -e '/<p>/N;/<p>\n.*\(We invite\|Chromium supports Vorbis\)/,/<\/p>/d' \
-    -e '/^<?xml/,$p' \
-    "$pkgdir/usr/share/metainfo/chromium.appdata.xml"
-
-  local toplevel_files=(
-    chrome_100_percent.pak
-    chrome_200_percent.pak
-    chrome_crashpad_handler
-    libqt5_shim.so
-    resources.pak
-    v8_context_snapshot.bin
-
-    # ANGLE
-    libEGL.so
-    libGLESv2.so
-
-    # SwiftShader ICD
-    libvk_swiftshader.so
-    vk_swiftshader_icd.json
-  )
-
-  if [[ -z ${_system_libs[icu]+set} ]]; then
-    toplevel_files+=(icudtl.dat)
-  fi
-
-  cp "${toplevel_files[@]/#/out/Release/}" "$pkgdir/usr/lib/chromium/"
-  install -Dm644 -t "$pkgdir/usr/lib/chromium/locales" 
out/Release/locales/*.pak
-
-  for size in 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 472616, 
chromium/trunk/PKGBUILD)
===================================================================
--- PKGBUILD                            (rev 0)
+++ PKGBUILD    2023-04-05 01:45:31 UTC (rev 472617)
@@ -0,0 +1,272 @@
+# Maintainer: Evangelos Foutras <[email protected]>
+# Contributor: Pierre Schmitz <[email protected]>
+# Contributor: Jan "heftig" Steffens <[email protected]>
+# Contributor: Daniel J Griffiths <[email protected]>
+
+pkgname=chromium
+pkgver=112.0.5615.49
+pkgrel=1
+_launcher_ver=8
+_manual_clone=0
+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-liberation' 'systemd' 'dbus' 'libpulse' 'pciutils' 'libva'
+         'libffi' 'desktop-file-utils' 'hicolor-icon-theme')
+makedepends=('python' 'gn' 'ninja' 'clang' 'lld' 'gperf' 'nodejs' 'pipewire'
+             'qt5-base' 'java-runtime-headless' 'git')
+optdepends=('pipewire: WebRTC desktop sharing under Wayland'
+            'kdialog: support for native dialogs in Plasma'
+            'qt5-base: enable Qt5 with --enable-features=AllowQt'
+            'org.freedesktop.secrets: password storage backend on GNOME / Xfce'
+            'kwallet: support for storing passwords in KWallet on Plasma')
+options=('!lto') # Chromium adds its own flags for ThinLTO
+source=(https://commondatastorage.googleapis.com/chromium-browser-official/chromium-$pkgver.tar.xz
+        
https://github.com/foutrelis/chromium-launcher/archive/v$_launcher_ver/chromium-launcher-$_launcher_ver.tar.gz
+        sql-relax-constraints-on-VirtualCursor-layout.patch
+        disable-GlobalMediaControlsCastStartStop.patch
+        use-oauth2-client-switches-as-default.patch)
+sha256sums=('ddfd37373c1fa0f433a6ac11f0baa2b1f3fdfb9c7b5867e32a4300f2eb5aff41'
+            '213e50f48b67feb4441078d50b0fd431df34323be15be97c55302d3fdac4483a'
+            'e66be069d932fe18811e789c57b96249b7250257ff91a3d82d15e2a7283891b7'
+            '7f3b1b22d6a271431c1f9fc92b6eb49c6d80b8b3f868bdee07a6a1a16630a302'
+            'e393174d7695d0bafed69e868c5fbfecf07aa6969f3b64596d0bae8b067e1711')
+
+if (( _manual_clone )); then
+  source[0]=fetch-chromium-release
+  makedepends+=('python-httplib2' 'python-pyparsing' 'python-six')
+fi
+
+# 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=(
+  [brotli]=brotli
+  [dav1d]=dav1d
+  [ffmpeg]=ffmpeg
+  [flac]=flac
+  [fontconfig]=fontconfig
+  [freetype]=freetype2
+  [harfbuzz-ng]=harfbuzz
+  [icu]=icu
+  [jsoncpp]=jsoncpp
+  [libaom]=aom
+  #[libavif]=libavif # https://github.com/AOMediaCodec/libavif/commit/4d2776a3
+  [libdrm]=
+  [libjpeg]=libjpeg
+  [libpng]=libpng
+  #[libvpx]=libvpx
+  [libwebp]=libwebp
+  [libxml]=libxml2
+  [libxslt]=libxslt
+  [opus]=opus
+  [re2]=re2
+  [snappy]=snappy
+  [woff2]=woff2
+  [zlib]=minizip
+)
+_unwanted_bundled_libs=(
+  $(printf "%s\n" ${!_system_libs[@]} | sed 's/^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.
+#
+# Starting with Chromium 89 (2021-03-02) the OAuth2 credentials have been left
+# out: https://archlinux.org/news/chromium-losing-sync-support-in-early-march/
+_google_api_key=AIzaSyDwr302FpOSkGRpLlUpPThNTDPbXcIn_FM
+
+prepare() {
+  if (( _manual_clone )); then
+    ./fetch-chromium-release $pkgver
+  fi
+  cd chromium-$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/893950
+  sed -i -e 's/\<xmlMalloc\>/malloc/' -e 's/\<xmlFree\>/free/' \
+    third_party/blink/renderer/core/xml/*.cc \
+    third_party/blink/renderer/core/xml/parser/xml_document_parser.cc \
+    third_party/libxml/chromium/*.cc \
+    third_party/maldoca/src/maldoca/ole/oss_utils.h
+
+  # Use the --oauth2-client-id= and --oauth2-client-secret= switches for
+  # setting GOOGLE_DEFAULT_CLIENT_ID and GOOGLE_DEFAULT_CLIENT_SECRET at
+  # runtime -- this allows signing into Chromium without baked-in values
+  patch -Np1 -i ../use-oauth2-client-switches-as-default.patch
+
+  # Upstream fixes
+  patch -Np1 -i ../sql-relax-constraints-on-VirtualCursor-layout.patch
+
+  # Disable kGlobalMediaControlsCastStartStop by default
+  # https://crbug.com/1314342
+  patch -Np1 -i ../disable-GlobalMediaControlsCastStartStop.patch
+
+  # Link to system tools required by the build
+  mkdir -p third_party/node/linux/node-linux-x64/bin
+  ln -s /usr/bin/node third_party/node/linux/node-linux-x64/bin/
+  ln -s /usr/bin/java third_party/jdk/current/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/harfbuzz-ng/utils/hb_scoped.h" \
+      \! -regex '.*\.\(gn\|gni\|isolate\)' \
+      -delete
+  done
+
+  ./build/linux/unbundle/replace_gn_files.py \
+    --system-libraries "${!_system_libs[@]}"
+}
+
+build() {
+  make -C chromium-launcher-$_launcher_ver
+
+  cd chromium-$pkgver
+
+  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_base_path="/usr"'
+    'clang_use_chrome_plugins=false'
+    'is_official_build=true' # implies is_cfi=true on x86_64
+    'symbol_level=0' # sufficient for backtraces on x86(_64)
+    'chrome_pgo_phase=0' # needs newer clang to read the bundled PGO profile
+    'treat_warnings_as_errors=false'
+    'disable_fieldtrial_testing_config=true'
+    'blink_enable_generated_code_formatting=false'
+    'ffmpeg_branding="Chrome"'
+    'proprietary_codecs=true'
+    'rtc_use_pipewire=true'
+    'link_pulseaudio=true'
+    'use_custom_libcxx=false'
+    'use_gnome_keyring=false'
+    'use_sysroot=false'
+    'use_system_libffi=true'
+    'enable_hangout_services_extension=true'
+    'enable_widevine=true'
+    'enable_nacl=false'
+    "google_api_key=\"$_google_api_key\""
+  )
+
+  if [[ -n ${_system_libs[icu]+set} ]]; then
+    _flags+=('icu_use_data_file=false')
+  fi
+
+  # 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__='
+
+  # Do not warn about unknown warning options
+  CFLAGS+='   -Wno-unknown-warning-option'
+  CXXFLAGS+=' -Wno-unknown-warning-option'
+
+  # Let Chromium set its own symbol level
+  CFLAGS=${CFLAGS/-g }
+  CXXFLAGS=${CXXFLAGS/-g }
+
+  # 
https://github.com/ungoogled-software/ungoogled-chromium-archlinux/issues/123
+  CFLAGS=${CFLAGS/-fexceptions}
+  CFLAGS=${CFLAGS/-fcf-protection}
+  CXXFLAGS=${CXXFLAGS/-fexceptions}
+  CXXFLAGS=${CXXFLAGS/-fcf-protection}
+
+  # This appears to cause random segfaults when combined with ThinLTO
+  # https://bugs.archlinux.org/task/73518
+  CFLAGS=${CFLAGS/-fstack-clash-protection}
+  CXXFLAGS=${CXXFLAGS/-fstack-clash-protection}
+
+  # https://crbug.com/957519#c122
+  CXXFLAGS=${CXXFLAGS/-Wp,-D_GLIBCXX_ASSERTIONS}
+
+  gn gen out/Release --args="${_flags[*]}"
+  ninja -C out/Release chrome chrome_sandbox chromedriver.unstripped
+}
+
+package() {
+  cd chromium-launcher-$_launcher_ver
+  make PREFIX=/usr DESTDIR="$pkgdir" install
+  install -Dm644 LICENSE \
+    "$pkgdir/usr/share/licenses/chromium/LICENSE.launcher"
+
+  cd ../chromium-$pkgver
+
+  install -D out/Release/chrome "$pkgdir/usr/lib/chromium/chromium"
+  install -D out/Release/chromedriver.unstripped "$pkgdir/usr/bin/chromedriver"
+  install -Dm4755 out/Release/chrome_sandbox 
"$pkgdir/usr/lib/chromium/chrome-sandbox"
+
+  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"
+
+  install -Dm644 
chrome/installer/linux/common/chromium-browser/chromium-browser.appdata.xml \
+    "$pkgdir/usr/share/metainfo/chromium.appdata.xml"
+  sed -ni \
+    -e 's/chromium-browser\.desktop/chromium.desktop/' \
+    -e '/<update_contact>/d' \
+    -e '/<p>/N;/<p>\n.*\(We invite\|Chromium supports Vorbis\)/,/<\/p>/d' \
+    -e '/^<?xml/,$p' \
+    "$pkgdir/usr/share/metainfo/chromium.appdata.xml"
+
+  local toplevel_files=(
+    chrome_100_percent.pak
+    chrome_200_percent.pak
+    chrome_crashpad_handler
+    libqt5_shim.so
+    resources.pak
+    v8_context_snapshot.bin
+
+    # ANGLE
+    libEGL.so
+    libGLESv2.so
+
+    # SwiftShader ICD
+    libvk_swiftshader.so
+    vk_swiftshader_icd.json
+  )
+
+  if [[ -z ${_system_libs[icu]+set} ]]; then
+    toplevel_files+=(icudtl.dat)
+  fi
+
+  cp "${toplevel_files[@]/#/out/Release/}" "$pkgdir/usr/lib/chromium/"
+  install -Dm644 -t "$pkgdir/usr/lib/chromium/locales" 
out/Release/locales/*.pak
+
+  for size in 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: disable-GlobalMediaControlsCastStartStop.patch
===================================================================
--- disable-GlobalMediaControlsCastStartStop.patch      2023-04-05 01:45:23 UTC 
(rev 472616)
+++ disable-GlobalMediaControlsCastStartStop.patch      2023-04-05 01:45:31 UTC 
(rev 472617)
@@ -1,13 +0,0 @@
-diff --git a/chrome/browser/media/router/media_router_feature.cc 
b/chrome/browser/media/router/media_router_feature.cc
-index 862329ef314..47c89123876 100644
---- a/chrome/browser/media/router/media_router_feature.cc
-+++ b/chrome/browser/media/router/media_router_feature.cc
-@@ -54,7 +54,7 @@ BASE_FEATURE(kGlobalMediaControlsCastStartStop,
- #else
- BASE_FEATURE(kGlobalMediaControlsCastStartStop,
-              "GlobalMediaControlsCastStartStop",
--             base::FEATURE_ENABLED_BY_DEFAULT);
-+             base::FEATURE_DISABLED_BY_DEFAULT);
- #endif  // BUILDFLAG(IS_CHROMEOS)
- 
- #endif  // !BUILDFLAG(IS_ANDROID)

Copied: 
chromium/repos/extra-x86_64/disable-GlobalMediaControlsCastStartStop.patch 
(from rev 472616, chromium/trunk/disable-GlobalMediaControlsCastStartStop.patch)
===================================================================
--- disable-GlobalMediaControlsCastStartStop.patch                              
(rev 0)
+++ disable-GlobalMediaControlsCastStartStop.patch      2023-04-05 01:45:31 UTC 
(rev 472617)
@@ -0,0 +1,13 @@
+diff --git a/chrome/browser/media/router/media_router_feature.cc 
b/chrome/browser/media/router/media_router_feature.cc
+index 862329ef314..47c89123876 100644
+--- a/chrome/browser/media/router/media_router_feature.cc
++++ b/chrome/browser/media/router/media_router_feature.cc
+@@ -54,7 +54,7 @@ BASE_FEATURE(kGlobalMediaControlsCastStartStop,
+ #else
+ BASE_FEATURE(kGlobalMediaControlsCastStartStop,
+              "GlobalMediaControlsCastStartStop",
+-             base::FEATURE_ENABLED_BY_DEFAULT);
++             base::FEATURE_DISABLED_BY_DEFAULT);
+ #endif  // BUILDFLAG(IS_CHROMEOS)
+ 
+ #endif  // !BUILDFLAG(IS_ANDROID)

Deleted: fetch-chromium-release
===================================================================
--- fetch-chromium-release      2023-04-05 01:45:23 UTC (rev 472616)
+++ fetch-chromium-release      2023-04-05 01:45:31 UTC (rev 472617)
@@ -1,44 +0,0 @@
-#!/bin/bash
-
-set -e
-
-readonly VERSION=$1
-if [[ -z $VERSION ]]; then
-  echo >&2 'No version given as an argument'
-  exit 1
-fi
-
-mkdir chromium-checkout
-cd chromium-checkout
-cat >.gclient <<EOF
-solutions = [
-  {
-    "name": "src",
-    "url": "https://chromium.googlesource.com/chromium/src.git";,
-    "managed": False,
-    "custom_deps": {},
-    "custom_vars": {},
-  },
-]
-EOF
-
-git clone --depth=1 
https://chromium.googlesource.com/chromium/tools/depot_tools
-export PATH+=":$PWD/depot_tools" DEPOT_TOOLS_UPDATE=0
-export VPYTHON_BYPASS='manually managed python not supported by chrome 
operations'
-
-git clone -b $VERSION --depth=2 https://chromium.googlesource.com/chromium/src
-gclient sync --no-history --nohooks
-src/build/util/lastchange.py -o src/build/util/LASTCHANGE
-src/build/util/lastchange.py -m GPU_LISTS_VERSION \
-  --revision-id-only --header src/gpu/config/gpu_lists_version.h
-src/build/util/lastchange.py -m SKIA_COMMIT_HASH \
-  -s src/third_party/skia --header src/skia/ext/skia_commit_hash.h
-src/build/util/lastchange.py \
-  -s src/third_party/dawn --revision src/gpu/webgpu/DAWN_VERSION
-src/tools/update_pgo_profiles.py --target=linux update \
-  --gs-url-base=chromium-optimization-profiles/pgo_profiles
-download_from_google_storage.py --no_resume --extract --no_auth \
-  --bucket chromium-nodejs -s src/third_party/node/node_modules.tar.gz.sha1
-
-find src/third_party/jdk/current -type f -delete
-mv src ../chromium-$VERSION

Copied: chromium/repos/extra-x86_64/fetch-chromium-release (from rev 472616, 
chromium/trunk/fetch-chromium-release)
===================================================================
--- fetch-chromium-release                              (rev 0)
+++ fetch-chromium-release      2023-04-05 01:45:31 UTC (rev 472617)
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+set -e
+
+readonly VERSION=$1
+if [[ -z $VERSION ]]; then
+  echo >&2 'No version given as an argument'
+  exit 1
+fi
+
+mkdir chromium-checkout
+cd chromium-checkout
+cat >.gclient <<EOF
+solutions = [
+  {
+    "name": "src",
+    "url": "https://chromium.googlesource.com/chromium/src.git";,
+    "managed": False,
+    "custom_deps": {},
+    "custom_vars": {},
+  },
+]
+EOF
+
+git clone --depth=1 
https://chromium.googlesource.com/chromium/tools/depot_tools
+export PATH+=":$PWD/depot_tools" DEPOT_TOOLS_UPDATE=0
+export VPYTHON_BYPASS='manually managed python not supported by chrome 
operations'
+
+git clone -b $VERSION --depth=2 https://chromium.googlesource.com/chromium/src
+gclient sync --no-history --nohooks
+src/build/util/lastchange.py -o src/build/util/LASTCHANGE
+src/build/util/lastchange.py -m GPU_LISTS_VERSION \
+  --revision-id-only --header src/gpu/config/gpu_lists_version.h
+src/build/util/lastchange.py -m SKIA_COMMIT_HASH \
+  -s src/third_party/skia --header src/skia/ext/skia_commit_hash.h
+src/build/util/lastchange.py \
+  -s src/third_party/dawn --revision src/gpu/webgpu/DAWN_VERSION
+src/tools/update_pgo_profiles.py --target=linux update \
+  --gs-url-base=chromium-optimization-profiles/pgo_profiles
+download_from_google_storage.py --no_resume --extract --no_auth \
+  --bucket chromium-nodejs -s src/third_party/node/node_modules.tar.gz.sha1
+
+find src/third_party/jdk/current -type f -delete
+mv src ../chromium-$VERSION

Deleted: sql-relax-constraints-on-VirtualCursor-layout.patch
===================================================================
--- sql-relax-constraints-on-VirtualCursor-layout.patch 2023-04-05 01:45:23 UTC 
(rev 472616)
+++ sql-relax-constraints-on-VirtualCursor-layout.patch 2023-04-05 01:45:31 UTC 
(rev 472617)
@@ -1,48 +0,0 @@
-From 7d1394bd639e3bcf68082ac3fc33eeed6a00d2e6 Mon Sep 17 00:00:00 2001
-From: Elly Fong-Jones <[email protected]>
-Date: Thu, 2 Mar 2023 00:15:11 +0000
-Subject: [PATCH] sql: relax constraints on VirtualCursor layout
-
-VirtualCursor::FromSqliteCursor required that VirtualCursor had a
-standard layout, but in fact VirtualCursor shouldn't have a standard
-layout, and the fact that it does with libc++ is a deviation from the
-C++ standard. This change:
-
-1. Relaxes the requirement that VirtualCursor has a standard layout, and
-2. Relaxes the requirement that the sqlite_cursor_ field has to be at
-   offset 0
-
-by use of offsetof() and pointer subtraction. This change both improves
-standards compliance and makes this code build with libstdc++.
-
-Bug: 1380656
-Change-Id: I9c47abd9197b187da0360ca5619ccf7dadab4f33
-Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4292313
-Reviewed-by: Austin Sullivan <[email protected]>
-Commit-Queue: Elly Fong-Jones <[email protected]>
-Cr-Commit-Position: refs/heads/main@{#1111925}
----
- sql/recover_module/cursor.h | 10 ++++------
- 1 file changed, 4 insertions(+), 6 deletions(-)
-
-diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
-index 1970bdca8c6..4cb06557009 100644
---- a/sql/recover_module/cursor.h
-+++ b/sql/recover_module/cursor.h
-@@ -63,12 +63,10 @@ class VirtualCursor {
-   // |sqlite_cursor| must have been returned by VirtualTable::SqliteCursor().
-   static inline VirtualCursor* FromSqliteCursor(
-       sqlite3_vtab_cursor* sqlite_cursor) {
--    static_assert(std::is_standard_layout<VirtualCursor>::value,
--                  "needed for the reinterpret_cast below");
--    static_assert(offsetof(VirtualCursor, sqlite_cursor_) == 0,
--                  "sqlite_cursor_ must be the first member of the class");
--    VirtualCursor* result = reinterpret_cast<VirtualCursor*>(sqlite_cursor);
--    DCHECK_EQ(sqlite_cursor, &result->sqlite_cursor_);
-+    VirtualCursor* result = reinterpret_cast<VirtualCursor*>(
-+        (reinterpret_cast<char*>(sqlite_cursor) -
-+         offsetof(VirtualCursor, sqlite_cursor_)));
-+    CHECK_EQ(sqlite_cursor, &result->sqlite_cursor_);
-     return result;
-   }
- 

Copied: 
chromium/repos/extra-x86_64/sql-relax-constraints-on-VirtualCursor-layout.patch 
(from rev 472616, 
chromium/trunk/sql-relax-constraints-on-VirtualCursor-layout.patch)
===================================================================
--- sql-relax-constraints-on-VirtualCursor-layout.patch                         
(rev 0)
+++ sql-relax-constraints-on-VirtualCursor-layout.patch 2023-04-05 01:45:31 UTC 
(rev 472617)
@@ -0,0 +1,48 @@
+From 7d1394bd639e3bcf68082ac3fc33eeed6a00d2e6 Mon Sep 17 00:00:00 2001
+From: Elly Fong-Jones <[email protected]>
+Date: Thu, 2 Mar 2023 00:15:11 +0000
+Subject: [PATCH] sql: relax constraints on VirtualCursor layout
+
+VirtualCursor::FromSqliteCursor required that VirtualCursor had a
+standard layout, but in fact VirtualCursor shouldn't have a standard
+layout, and the fact that it does with libc++ is a deviation from the
+C++ standard. This change:
+
+1. Relaxes the requirement that VirtualCursor has a standard layout, and
+2. Relaxes the requirement that the sqlite_cursor_ field has to be at
+   offset 0
+
+by use of offsetof() and pointer subtraction. This change both improves
+standards compliance and makes this code build with libstdc++.
+
+Bug: 1380656
+Change-Id: I9c47abd9197b187da0360ca5619ccf7dadab4f33
+Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4292313
+Reviewed-by: Austin Sullivan <[email protected]>
+Commit-Queue: Elly Fong-Jones <[email protected]>
+Cr-Commit-Position: refs/heads/main@{#1111925}
+---
+ sql/recover_module/cursor.h | 10 ++++------
+ 1 file changed, 4 insertions(+), 6 deletions(-)
+
+diff --git a/sql/recover_module/cursor.h b/sql/recover_module/cursor.h
+index 1970bdca8c6..4cb06557009 100644
+--- a/sql/recover_module/cursor.h
++++ b/sql/recover_module/cursor.h
+@@ -63,12 +63,10 @@ class VirtualCursor {
+   // |sqlite_cursor| must have been returned by VirtualTable::SqliteCursor().
+   static inline VirtualCursor* FromSqliteCursor(
+       sqlite3_vtab_cursor* sqlite_cursor) {
+-    static_assert(std::is_standard_layout<VirtualCursor>::value,
+-                  "needed for the reinterpret_cast below");
+-    static_assert(offsetof(VirtualCursor, sqlite_cursor_) == 0,
+-                  "sqlite_cursor_ must be the first member of the class");
+-    VirtualCursor* result = reinterpret_cast<VirtualCursor*>(sqlite_cursor);
+-    DCHECK_EQ(sqlite_cursor, &result->sqlite_cursor_);
++    VirtualCursor* result = reinterpret_cast<VirtualCursor*>(
++        (reinterpret_cast<char*>(sqlite_cursor) -
++         offsetof(VirtualCursor, sqlite_cursor_)));
++    CHECK_EQ(sqlite_cursor, &result->sqlite_cursor_);
+     return result;
+   }
+ 

Deleted: use-oauth2-client-switches-as-default.patch
===================================================================
--- use-oauth2-client-switches-as-default.patch 2023-04-05 01:45:23 UTC (rev 
472616)
+++ use-oauth2-client-switches-as-default.patch 2023-04-05 01:45:31 UTC (rev 
472617)
@@ -1,17 +0,0 @@
-diff -upr chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc 
chromium-89.0.4389.58/google_apis/google_api_keys.cc
---- chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc  2021-02-24 
22:37:18.494007649 +0000
-+++ chromium-89.0.4389.58/google_apis/google_api_keys.cc       2021-02-24 
22:35:00.865777600 +0000
-@@ -154,11 +154,11 @@ class APIKeyCache {
- 
-     std::string default_client_id = CalculateKeyValue(
-         GOOGLE_DEFAULT_CLIENT_ID,
--        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), nullptr,
-+        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), 
::switches::kOAuth2ClientID,
-         std::string(), environment.get(), command_line, gaia_config);
-     std::string default_client_secret = CalculateKeyValue(
-         GOOGLE_DEFAULT_CLIENT_SECRET,
--        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), nullptr,
-+        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), 
::switches::kOAuth2ClientSecret,
-         std::string(), environment.get(), command_line, gaia_config);
- 
-     // We currently only allow overriding the baked-in values for the

Copied: chromium/repos/extra-x86_64/use-oauth2-client-switches-as-default.patch 
(from rev 472616, chromium/trunk/use-oauth2-client-switches-as-default.patch)
===================================================================
--- use-oauth2-client-switches-as-default.patch                         (rev 0)
+++ use-oauth2-client-switches-as-default.patch 2023-04-05 01:45:31 UTC (rev 
472617)
@@ -0,0 +1,17 @@
+diff -upr chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc 
chromium-89.0.4389.58/google_apis/google_api_keys.cc
+--- chromium-89.0.4389.58.orig/google_apis/google_api_keys.cc  2021-02-24 
22:37:18.494007649 +0000
++++ chromium-89.0.4389.58/google_apis/google_api_keys.cc       2021-02-24 
22:35:00.865777600 +0000
+@@ -154,11 +154,11 @@ class APIKeyCache {
+ 
+     std::string default_client_id = CalculateKeyValue(
+         GOOGLE_DEFAULT_CLIENT_ID,
+-        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), nullptr,
++        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), 
::switches::kOAuth2ClientID,
+         std::string(), environment.get(), command_line, gaia_config);
+     std::string default_client_secret = CalculateKeyValue(
+         GOOGLE_DEFAULT_CLIENT_SECRET,
+-        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), nullptr,
++        STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), 
::switches::kOAuth2ClientSecret,
+         std::string(), environment.get(), command_line, gaia_config);
+ 
+     // We currently only allow overriding the baked-in values for the

Reply via email to