Merge updates from master

This commit is contained in:
Repository mirror & CI
2025-04-13 22:05:35 +00:00
17 changed files with 348 additions and 4899 deletions

View File

@@ -6,3 +6,4 @@ DIST gn-0.2165.tar.xz 748624 BLAKE2B 6c966fa5791c069bfd790926db7c986a8831f29819e
DIST gn-0.2200.tar.xz 753048 BLAKE2B 9c57e21a5cab2a5df92aee78baacb8260de0793689a3ac743428d16e5b48cdd48de0a81fa137947ed1be0b54e1751748777488d2ca68377baa1a0d02f27e9819 SHA512 bef69e706078617a4ec45cba978a4ba01a2a9b6ddc0bd91697fca2712529f030febf2d12dbb26a432c6ec43af249b708ec0800d01e059bc6ebc26069e0ef8a56
DIST gn-0.2207.tar.xz 753460 BLAKE2B 2c3cbaf9fb80c1bef15601d7ef0470446e7343b3037bd43a1ae205fe99183664a5ea45585b3591d5fb16f42ba85b922219da1949cc5663f1862341833d6b4216 SHA512 fc45508f6f6a50f21951b107177b284859dccc846a57bb40a54da0039ca2698dc30bf3d36d8d6de57755c3e38d970a8acbefef8c09dd118d1172d62feb1d3673
DIST gn-0.2217.tar.xz 754264 BLAKE2B 671cbe6d3767bf108604cd13fa1363339f1688ed9b2b59a8470225e077762bcc77d491636ba22e73e00ebeaf5054260cbce4e01f4db8cf30b7bf06ecbcb41151 SHA512 9f9872f35c1e8d7b33996377413c81c1cc9d9873fd0e889155089ceb609e6382eae3d776bb3c0cb83fe7c285997f1eca63c2d1807ff895a716cdb52dfc905366
DIST gn-0.2227.tar.xz 755232 BLAKE2B f7430d4175a91d2f2d3991c346477ee06b450e81fd1424019d3b9316da5def5637db312c2ed68eb392e71f3e0279d894f25f7c44e91b6f1e3e919d2bfaef5e19 SHA512 807bb74f5c9bb16a3f1d871bb1f31ee5415dd3e1ed16acbd0105438f1d8b562d77d44192bc968dbf5486b26de7a103ccf3c9aad4ad84c596509d1c5495af27b4

View File

@@ -0,0 +1,66 @@
# Copyright 2018-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
PYTHON_COMPAT=( python3_{10..13} )
inherit edo ninja-utils python-any-r1 toolchain-funcs
DESCRIPTION="GN is a meta-build system that generates build files for Ninja"
HOMEPAGE="https://gn.googlesource.com/"
if [[ ${PV} == 9999 ]]; then
inherit git-r3
EGIT_REPO_URI="https://gn.googlesource.com/gn"
else
# The version number is derived from `git describe HEAD --abbrev=12`
SRC_URI="https://deps.gentoo.zip/dev-build/gn/${P}.tar.xz"
KEYWORDS="~amd64 ~arm64 ~loong ~ppc64 ~riscv ~x86"
fi
LICENSE="BSD"
SLOT="0"
BDEPEND="
${PYTHON_DEPS}
app-alternatives/ninja
"
PATCHES=(
"${FILESDIR}"/gn-gen-r7.patch
)
pkg_setup() {
:
}
src_configure() {
python_setup
tc-export AR CC CXX
unset CFLAGS
set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip --no-static-libstdc++ --allow-warnings
edo "$@"
cat >out/last_commit_position.h <<-EOF || die
#ifndef OUT_LAST_COMMIT_POSITION_H_
#define OUT_LAST_COMMIT_POSITION_H_
#define LAST_COMMIT_POSITION_NUM ${PV##0.}
#define LAST_COMMIT_POSITION "${PV}"
#endif // OUT_LAST_COMMIT_POSITION_H_
EOF
}
src_compile() {
eninja -C out gn
}
src_test() {
eninja -C out gn_unittests
out/gn_unittests || die
}
src_install() {
dobin out/gn
einstalldocs
insinto /usr/share/vim/vimfiles
doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax}
}

View File

@@ -3,3 +3,4 @@ DIST ffmpeg-chromium-133.tar.xz 10592716 BLAKE2B 81aac47dfb694c605242e762e6ced29
DIST ffmpeg-chromium-134.tar.xz 10687424 BLAKE2B c33487885bb6c75f9bc93abf7b11b52266930dde95411d7e702a2039d94de79d0fa9a4d5f82af12fb7db9e3b3e2be24147a446c6498c60c17841aa5738ec403e SHA512 369aae6bd3b065db3e3b9cac004209e596e9bbeada1a03bb8e20df4b026810fc12489ce52fb95a4320eeec31c09460d18e5c598f36fab1205024f0540be1c639
DIST ffmpeg-chromium-135.tar.xz 10688848 BLAKE2B 6421b2d7ef39bc30941e99bcf94bb53e8f4dc896c15aebb6863050b9da31215fb2fa77e710eabe79fe342d5cd1836e353272bf75193b82ddae282f21c92b9ef2 SHA512 9597736a6707c4b5fdcdf185962a3de8a8155855593813d85adfbe64b492d44e0ce66621e94f2c8de00a3ec2aca7c9f1c6850cbe3fb7de35ed6b9bddf3076288
DIST ffmpeg-chromium-136.tar.xz 10727884 BLAKE2B 4c3fc2bfc961c6a7c6c93268b55c2af45028d416316f7703db6b9c94a920a326a9d20b48f79743051087782b1e542f516536d796d436154d5c28dc14b6d32671 SHA512 7a88958b49b6c7fea525ec69faf7049336f80b037576dd08345c0feac901a8d21a7272db7300aed858508331cb837cbc0e07e14a4bead79f112d93caa2b26dfc
DIST ffmpeg-chromium-137.tar.xz 10732288 BLAKE2B 2daae320c46e6a22f686af8e831ce7b30284fc93bf5727a24df863d87f0eee41061d40cb827c826938c1d6980ba4c8f09b81e1ca256cc444c846b772fb67743b SHA512 920c8526622855ffd649c3366c9416d2983b28aa565db15f6236557d46d7016e638d49a26c22cf4ee84bdc3cd4e64c6f637d6f6bce8078327281e6b9041f0760

View File

@@ -0,0 +1,239 @@
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
COMMIT=fbce2a76c00cd2e5aeffe3c2e71d44c284ec52d6
DESCRIPTION="FFmpeg built specifically for codec support in Chromium-based browsers"
HOMEPAGE="https://ffmpeg.org/"
SRC_URI="https://deps.gentoo.zip/media-video/${P}.tar.xz"
LICENSE="
!gpl? ( LGPL-2.1 )
gpl? ( GPL-2 )
"
SLOT="${PV}"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64"
# Options to use as use_enable in the foo[:bar] form.
# This will feed configure with $(use_enable foo bar)
# or $(use_enable foo foo) if no :bar is set.
# foo is added to IUSE.
FFMPEG_FLAG_MAP=(
cpudetection:runtime-cpudetect debug
+gpl
vaapi vdpau vulkan
nvenc:ffnvcodec
# Threads; we only support pthread for now but ffmpeg supports more
+threads:pthreads
)
IUSE="
${FFMPEG_FLAG_MAP[@]%:*}
"
# Strings for CPU features in the useflag[:configure_option] form
# if :configure_option isn't set, it will use 'useflag' as configure option
ARM_CPU_FEATURES=(
cpu_flags_arm_thumb:armv5te
cpu_flags_arm_v6:armv6
cpu_flags_arm_thumb2:armv6t2
cpu_flags_arm_neon:neon
cpu_flags_arm_vfp:vfp
cpu_flags_arm_vfpv3:vfpv3
cpu_flags_arm_v8:armv8
cpu_flags_arm_asimddp:dotprod
cpu_flags_arm_i8mm:i8mm
)
ARM_CPU_REQUIRED_USE="
arm64? ( cpu_flags_arm_v8 )
cpu_flags_arm_v8? ( cpu_flags_arm_vfpv3 cpu_flags_arm_neon )
cpu_flags_arm_neon? (
cpu_flags_arm_vfp
arm? ( cpu_flags_arm_thumb2 )
)
cpu_flags_arm_vfpv3? ( cpu_flags_arm_vfp )
cpu_flags_arm_thumb2? ( cpu_flags_arm_v6 )
cpu_flags_arm_v6? (
arm? ( cpu_flags_arm_thumb )
)
"
X86_CPU_FEATURES_RAW=( 3dnow:amd3dnow 3dnowext:amd3dnowext aes:aesni avx:avx avx2:avx2 fma3:fma3 fma4:fma4 mmx:mmx
mmxext:mmxext sse:sse sse2:sse2 sse3:sse3 ssse3:ssse3 sse4_1:sse4 sse4_2:sse42 xop:xop )
X86_CPU_FEATURES=( ${X86_CPU_FEATURES_RAW[@]/#/cpu_flags_x86_} )
X86_CPU_REQUIRED_USE="
cpu_flags_x86_avx2? ( cpu_flags_x86_avx )
cpu_flags_x86_fma4? ( cpu_flags_x86_avx )
cpu_flags_x86_fma3? ( cpu_flags_x86_avx )
cpu_flags_x86_xop? ( cpu_flags_x86_avx )
cpu_flags_x86_avx? ( cpu_flags_x86_sse4_2 )
cpu_flags_x86_aes? ( cpu_flags_x86_sse4_2 )
cpu_flags_x86_sse4_2? ( cpu_flags_x86_sse4_1 )
cpu_flags_x86_sse4_1? ( cpu_flags_x86_ssse3 )
cpu_flags_x86_ssse3? ( cpu_flags_x86_sse3 )
cpu_flags_x86_sse3? ( cpu_flags_x86_sse2 )
cpu_flags_x86_sse2? ( cpu_flags_x86_sse )
cpu_flags_x86_sse? ( cpu_flags_x86_mmxext )
cpu_flags_x86_mmxext? ( cpu_flags_x86_mmx )
cpu_flags_x86_3dnowext? ( cpu_flags_x86_3dnow )
cpu_flags_x86_3dnow? ( cpu_flags_x86_mmx )
"
CPU_FEATURES_MAP=(
${ARM_CPU_FEATURES[@]}
${X86_CPU_FEATURES[@]}
)
IUSE="${IUSE}
${CPU_FEATURES_MAP[@]%:*}"
CPU_REQUIRED_USE="
${ARM_CPU_REQUIRED_USE}
${X86_CPU_REQUIRED_USE}
"
RDEPEND="
>=media-libs/opus-1.0.2-r2
vaapi? ( >=media-libs/libva-1.2.1-r1:0= )
nvenc? ( >=media-libs/nv-codec-headers-11.1.5.3 )
vdpau? ( >=x11-libs/libvdpau-0.7 )
vulkan? ( >=media-libs/vulkan-loader-1.3.277:= )
"
DEPEND="${RDEPEND}
vulkan? ( >=dev-util/vulkan-headers-1.3.277 )
"
BDEPEND="
>=dev-build/make-3.81
virtual/pkgconfig
cpu_flags_x86_mmx? ( >=dev-lang/nasm-2.13 )
"
REQUIRED_USE="
vulkan? ( threads )
${CPU_REQUIRED_USE}"
RESTRICT="
test
"
PATCHES=(
"${FILESDIR}"/${PN}-120.patch
"${FILESDIR}"/chromium.patch
)
src_prepare() {
export revision=git-N-g${COMMIT:0:10}
default
# -fdiagnostics-color=auto gets appended after user flags which
# will ignore user's preference.
sed -i -e '/check_cflags -fdiagnostics-color=auto/d' configure || die
echo 'include $(SRC_PATH)/ffbuild/libffmpeg.mak' >> Makefile || die
}
src_configure() {
local myconf=( )
# Bug #918997. Will probably be fixed upstream in the next release.
use vulkan && append-ldflags -Wl,-z,muldefs
local ffuse=( "${FFMPEG_FLAG_MAP[@]}" )
for i in "${ffuse[@]#+}" ; do
myconf+=( $(use_enable ${i%:*} ${i#*:}) )
done
# CPU features
for i in "${CPU_FEATURES_MAP[@]}" ; do
use ${i%:*} || myconf+=( --disable-${i#*:} )
done
# Try to get cpu type based on CFLAGS.
# Bug #172723
# We need to do this so that features of that CPU will be better used
# If they contain an unknown CPU it will not hurt since ffmpeg's configure
# will just ignore it.
for i in $(get-flag mcpu) $(get-flag march) ; do
[[ ${i} = native ]] && i="host" # bug #273421
myconf+=( --cpu=${i} )
break
done
# LTO support, bug #566282, bug #754654, bug #772854
if [[ ${ABI} != x86 ]] && tc-is-lto; then
# Respect -flto value, e.g -flto=thin
local v="$(get-flag flto)"
[[ -n ${v} ]] && myconf+=( "--enable-lto=${v}" ) || myconf+=( "--enable-lto" )
fi
filter-lto
# Mandatory configuration
myconf=(
--disable-stripping
# This is only for hardcoded cflags; those are used in configure checks that may
# interfere with proper detections, bug #671746 and bug #645778
# We use optflags, so that overrides them anyway.
--disable-optimizations
--disable-libcelt # bug #664158
"${myconf[@]}"
)
# cross compile support
if tc-is-cross-compiler ; then
myconf+=( --enable-cross-compile --arch=$(tc-arch-kernel) --cross-prefix=${CHOST}- --host-cc="$(tc-getBUILD_CC)" )
case ${CHOST} in
*mingw32*)
myconf+=( --target-os=mingw32 )
;;
*linux*)
myconf+=( --target-os=linux )
;;
esac
fi
# Use --extra-libs if needed for LIBS
set -- "${S}/configure" \
--prefix="${EPREFIX}/usr" \
--libdir="${EPREFIX}/usr/$(get_libdir)" \
--shlibdir="${EPREFIX}/usr/$(get_libdir)" \
--cc="$(tc-getCC)" \
--cxx="$(tc-getCXX)" \
--ar="$(tc-getAR)" \
--nm="$(tc-getNM)" \
--strip="$(tc-getSTRIP)" \
--ranlib="$(tc-getRANLIB)" \
--pkg-config="$(tc-getPKG_CONFIG)" \
--optflags="${CFLAGS}" \
--disable-all \
--disable-autodetect \
--disable-error-resilience \
--disable-everything \
--disable-faan \
--disable-iconv \
--disable-network \
--enable-avcodec \
--enable-avformat \
--enable-avutil \
--enable-libopus \
--enable-decoder=aac,flac,h264,libopus,mp3,pcm_alaw,pcm_f32le,pcm_mulaw,pcm_s16be,pcm_s16le,pcm_s24be,pcm_s24le,pcm_s32le,pcm_u8,theora,vorbis,vp8 \
--enable-demuxer=aac,flac,matroska,mov,mp3,ogg,wav \
--enable-parser=aac,flac,h264,mpegaudio,opus,vorbis,vp3,vp8,vp9 \
--enable-pic \
--enable-static \
"${myconf[@]}" \
${EXTRA_FFMPEG_CONF}
echo "${@}"
"${@}" || die
}
src_compile() {
emake V=1 libffmpeg
}
src_install() {
emake V=1 DESTDIR="${D}" install-libffmpeg
}

View File

@@ -9,4 +9,4 @@ inherit perl-module
DESCRIPTION="Common Scalar and List utility subroutines"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"

View File

@@ -13,7 +13,7 @@ detect_arch
DESCRIPTION="Full sources including the Gentoo patchset for the ${KV_MAJOR}.${KV_MINOR} kernel tree"
HOMEPAGE="https://dev.gentoo.org/~mpagano/genpatches"
SRC_URI="${KERNEL_URI} ${GENPATCHES_URI} ${ARCH_URI}"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
IUSE="experimental"
pkg_pretend() {

View File

@@ -5,7 +5,7 @@ EAPI=8
DESCRIPTION="Virtual for Scalar::Util and List::Util, also distributed as Scalar::List::Utils"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
~perl-core/${PN#perl-}-${PV}

View File

@@ -1,22 +1,15 @@
DIST chromium-134.0.6998.117-linux-testdata.tar.xz 653772892 BLAKE2B 145c4352deab97fcfe9c560646389cf596faaaae7d13c17f06a349c076048da2dfbbc88aba85a4335702a7f25136570a7e780c9e08fb21587242d0284acafcf3 SHA512 6445ab8a2e7efae2862a050cef12a0169d0e9f1d1b0853dccaffb438be20d6d442b11f83752e63baba4dae210097f51285493ccb5aba14350df05abc2a5c7fe4
DIST chromium-134.0.6998.117-linux.tar.xz 1466183312 BLAKE2B 717948a59f5c7f11a76055f3a9b5a54c9836c5d6ff1a25804701dfe8bfd725187507f0d9485bfddbc574acc122170341c1e88110eba30e67b289a726da47d1bc SHA512 edfc60d1af58117ba5f0276051cf545800f1d4338189757c3ce76007a2ac425fedcef0c8fd14059e2a3c51b047186dc7ed6fb57291f2ab61b7d28907245bbbbd
DIST chromium-135.0.7049.41-linux-testdata.tar.xz 646342784 BLAKE2B b7261f26984871ea840ebad4aadebdc938a11a4d78697eaacb318477a5ad16dbb79e5dc70367ebe30f2203fc59c9e6ce99ab9ee2904a9241a968d8444ba24c47 SHA512 548cd5f3b48033ec8b207052f8c61e0cf20cd220a7309813b2893a8f4ff8fe659296bc8e9f573d2935a5cc9e5699e4e0d852f969642901b6747c038ce1ffc4a7
DIST chromium-135.0.7049.41-linux.tar.xz 1439668336 BLAKE2B 28239d1fb2047370ba6bacaac9fee4acc2d73f477e700e1ecde100b53cc409ba5bb74a575ee30a969f68faf92b000d8836fb985c4f2db3dcd0f08a6ad66426c7 SHA512 b99eaa191b5c57bd3c1a3749025b6c341c2ea7f4e94d0dee665f910919d920303ad0b223720df0c5b4fbfe3180266e71957231c80428250e09075e3740bdb8a7
DIST chromium-135.0.7049.52-linux-testdata.tar.xz 646356936 BLAKE2B 0caacf3b9723c967abf1a254fd16673ebf37c959994e9136437ba4c3f2ca3961f9bd23c31113a0dca1293d017e3a33ec905ffdd3b38d72bf6ecb6c15ad7ccf0a SHA512 5eb4aba73a2bddf325217f7e4ae89aab46511777e2e4d327bdff9fb1f995e6319f912abfdaf3fefa870cd8f938fd9c33b81d627619bae835ebc8f4f9300180fa
DIST chromium-135.0.7049.52-linux.tar.xz 1439720440 BLAKE2B d67c80a17e648b5a65a5e30a7cd3c534dbc780bd0b829a824316ae43e5b71d819383193474c84d57395045f6e4e4c77c7142b3865e7cce8ba696bbbbe5316b29 SHA512 43bd59b3c29c987503b395e975c42883fc9bae680a0ed9bbba385d74c87e686ed7c538282cdba8ac6b64e867a68c6aadfefc1eea120ae8ed76a1e3a21640c916
DIST chromium-135.0.7049.84-linux-testdata.tar.xz 646330872 BLAKE2B 9b0f837891e08ab628dcdd607c736d68d8f5b9966f2fc52fe6860ac8753dfca52b76ca673a0b3fc7bb4b9fd3be2e035fa5c5b9bc4d8aaa511e48efb30cc73a62 SHA512 0909954ef204cb032bf447526c7ca0f8d6f32580f54ca192c1ebae82891f44381c8a825e1c975d9f386143eb365a624b8b85d6e18f8938f58a453adbd2899ea5
DIST chromium-135.0.7049.84-linux.tar.xz 1439815008 BLAKE2B 74142b8fcd56cab1d5fd8b2e176985985b4abf3c5ab19d841dae1b79bf247c8e4807cd670dc2a930864b698ae212d2c188c425e5f6dbdfe181901b580c2241a8 SHA512 8f6bf8d41b12bdaad67608083eac5a5ca69d879dd0206c221a3a6bb23fe50561936f176f68f34ff6f96985b4c98caa4d3248dabf4c8d378ea5ddc7b9314695f0
DIST chromium-136.0.7081.2-linux-testdata.tar.xz 651692500 BLAKE2B dcb8fcfa1060e2ebeaf44cbbe7dbf05318d398ee61f70ee30296dddc11ad8e73e7e6069c548e1897c8521a15548833b8bb23ed48be55ad1df9a034903b69ed84 SHA512 a44900d654d42df2626d4912797ef2090d1840c5c025f5e0be88229c6e3c2b70a8405ae936c280ebc8166067f0577270881e9eb7ab78f50031efa64cd7127ee5
DIST chromium-136.0.7081.2-linux.tar.xz 1540597124 BLAKE2B e46d1a707cfbbd39c1f7fee4330405b03e87e94f7e300ee6095ac22db5be8a88ad29299d82f8af470d4e5664e2b124b88a395c2aed07ad5d45bcdc753a1036e3 SHA512 949383bfc9641281b359dcc7d70bcfe159a1e758266f6ef2ab5c8254dedd047d12a9912aa804170fc7cbe36d3d72790411ba4ab24f4b3115543012b9366ff13a
DIST chromium-136.0.7103.17-linux-testdata.tar.xz 651341644 BLAKE2B 9f0d70ca08bd28244b7650cfcedf1b8daf11c594afffab3035f5b17bb854396def75e18995e182455744f081505f2aec36a265c095af0bfb80c35bea235f7c94 SHA512 f76bf823885de08ce2496f8cc8fca2db8ac6f20256d1e46b314f36afde049756475e9569da656a66639af04263b6986d7c627db84c685cd3f5998c480ddf14c2
DIST chromium-136.0.7103.17-linux.tar.xz 1561925604 BLAKE2B 9d9e9132b12c65cc626c2d0ef4cf0a5cf00e6356cfa87e234cb936ab4490ed9881d80f8a6408f19c6eb4764ce2e64f2bd1ac62136f5478ed517561cc90886ea7 SHA512 b5691028e3b386eab8b7d105c495999b341296a88eb55ff9affedbc4833c16ac048dd55954d77e4de4a3c1c9dd396c6172f5d07b5ca4b40f57ee85cbdef2536a
DIST chromium-136.0.7103.25-linux-testdata.tar.xz 651326576 BLAKE2B 3b13fff8bbfe52876eab27eb85e0dac4c1b2a7c5cfdf36ab8ddd96f279379af7fd78b6266df9e9b9850a7a3bdbc31347bc8fd71049526de65803043f5e7eb2ad SHA512 b924b060c67e9142e869540cfc017fd27180348bc930fb078a6ce78dcfb58f35a7f363878f42f598c26c7aa1271eeafa947aac700d8f624c3682c9055b0c66b1
DIST chromium-136.0.7103.25-linux.tar.xz 1562062252 BLAKE2B ff5794bd055a9f10227778d4bb6ec706d227b044c1c2162c4afa39f50964484bdd4b9b45d7edd4cc1b2ed071b3fcec9bb78acab3bd8bb4bd63239ce4da7b0c8c SHA512 b357351fa07bba6b846814f225e4defe0219b2c17a1e048763cb988efc32ea08260d7fd94bafc56095511fdbe3e0e04d50df04b94fde45cb39fb08e2c5867d24
DIST chromium-clang-llvmorg-20-init-17108-g29ed6000-3.tar.xz 54170388 BLAKE2B 1383726ef2977ddb6ca9cef7eb7f5730e9635c570c1e20c3103922242e012579b87cf7ada668a6dedec375fa821115e5c79c32b12ab486a9e427f2e00344cfdc SHA512 a2aee165ee5581f442af222b23182370349a3b0b5412d05600c2d2258f31449e986bb7e88601b26049b4a926b15938238bfe8abd01ff6eaf2df84a64812007a1
DIST chromium-clang-llvmorg-21-init-5118-g52cd27e6-4.tar.xz 54532476 BLAKE2B 743acca818593744d106d407c35ce14a3c9751a07a4e14f166abb3c2119750768b955ebce3ad0e461b67ea085d385ae8f962f9bfe9d5492131ec68801d22b072 SHA512 d5e0d3f99d0141e705a069e7556f1f819c5a687c69c09f31cdf28228ec25fff0177bcea4567ad36e9b6bd0a64f3ee9e103a5d9903a324213a262a49c03741fbf
DIST chromium-clang-llvmorg-21-init-5118-g52cd27e6-5.tar.xz 54517328 BLAKE2B 8fdc17f49f17348d648fc55aa3c603ac857bf76d3e7e0ca73d616a1458c80b8e15421e47271958d50db83f5a5d43673c10235938ecd2d3bba6072c414b20b1f0 SHA512 3397eb7157c805df82ca8f33b61b906ab2b9dd111390b78a0d4b3e79bdbdfd6896adf1106e10741b67845d081654fdde3b763abb12aa7b5e94e6ccbdde072b94
DIST chromium-openpower-7d1ac28278.tar.bz2 390422 BLAKE2B b2e135ca43a0605ef5aa1bc46a2794a1bb8fb0e74dec6172d022453dc680ecec4d2cf6b23035634bfa0891b19e3dfdb980da73205c0c6d2e92179d154014feeb SHA512 c684bab2fe1857164d007a5e3e7b3892cab2c94214ff4395149d327bdb85f1d5196a91b8b4bd0da04c5ba32a86dfad42674c6cca743f4e02a6b7213d7514c1b3
DIST chromium-openpower-a85b64f07b.tar.bz2 387899 BLAKE2B b01fda2d64ce73068d1536a10cc0896f07a4b714cdb25698b1df8b3252baa0c21c4209b307cf1cb554854f6d0bfe3cd35e06aaa8d02ac5d409a119335084c324 SHA512 05eee81677e8766808441c939bee68e2e6c58ec91f471d88a40181d2eda78614a0a6d27d92ff8f9dda564d12f3451bace4ff2727594748c5c238a3533038019b
DIST chromium-patches-134-1.tar.bz2 10440 BLAKE2B 5755ed6a20b141d33015a3959b273ca0df079f891513e4d83f356a882d51702dbba697c950b3fd9c68e37500240d18abfa99d0246b1b847a8d8109dbe7d4dd05 SHA512 294276f13c1f3e46a552ea856237fa028568bef1e72d1600ba63a3d17365385f6a6073367a7d4fde99202272d906894a2208390682576392fe40a3489d58851b
DIST chromium-patches-135.tar.bz2 10424 BLAKE2B 89d265be9e099000dd75b2073e5f175002632c1e41625cb93d80045235c631e39765a9952e1252652f8ff7dd878ed5f5b99a6b3f4a2796957d5f28bcc8daa531 SHA512 6aa2ae6b39eecff535356623bded267fa257f3e5390a9d59d65aab7f34e5b812e50e5fa9f20cb2dcbea51856f86dd1f5cd19e0e144691ef96aee28525c9abd3b
DIST chromium-patches-136-1.tar.bz2 10507 BLAKE2B 38422bf8bfeab977c5ae4217e90dac85772323002e49932602b018b2e979e8bb7a7897249977cd7580cabc14a9cb6b694645dd1121589de6906cddc16cdc94a9 SHA512 d2bc2f7eea79fd21392f0d34c1eb63873085cd8f5ba9cc7a447a32cc3d477834362b21be15871aaab0a82820e50d67ba1a272755b4c37d3d15bb7d658ee3ff39
DIST chromium-patches-136-2.tar.bz2 10500 BLAKE2B d943a397059d4d55871bc4f2191e40b55d92aeab8c954c24604a558149d0df3cc8590c147a685d2e21253728918d47fdf46c24363085be364bf35ab4f3938349 SHA512 f9ff50891ef23c2d129170389c56fa3cd629e8a473dc220008dcc7cdbe86284b3f522f507d1276f0adc1c457e95b33c614a54abdea13cb23cbc7a8c0f777a291
DIST chromium-profiler-0.2.tar 259952640 BLAKE2B 5e82389fce00b267280d633b26551231c558b80f0c92cd7d60271095a3503365ab673e7a46dc5f74f8a82db1f21262cb24dcc0531d954bab5fb3b175dab3394d SHA512 9fa89a5ab728419683e7495ae676567480987d68a2d589f2aa97bfcbcf123f3c8f97f8bca5f65e5e3f6e41475535add473ded83b9c7a33bb4746a9d05b298a6c
DIST chromium-rust-toolchain-ad211ced81-1-llvmorg-20-init-17108-g29ed6000.tar.xz 124591376 BLAKE2B c062e7283994ef15055a37f66a1c01dfcbcf03d16b7de48e7d017cec479f306999112dcd0f016157cfd0334349b55ae29512be3063dc6c3de90311520e90a5c1 SHA512 09be07ff0adfcc2928b28f5763a7e18bb7ef1f0cbf4a2475e3e6ae19a0a310a4a8f323375b947a48247853412119781bc9fa1422e24b96423c071f68337d6766

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -416,6 +416,7 @@ src_prepare() {
"${FILESDIR}/chromium-135-oauth2-client-switches.patch"
"${FILESDIR}/chromium-135-map_droppable-glibc.patch"
"${FILESDIR}/chromium-135-webrtc-pipewire.patch"
"${FILESDIR}/chromium-135-gperf.patch"
)
if use bundled-toolchain; then

File diff suppressed because it is too large Load Diff

View File

@@ -25,7 +25,7 @@ EAPI=8
GN_MIN_VER=0.2217
# chromium-tools/get-chromium-toolchain-strings.py
TEST_FONT=f26f29c9d3bfae588207bbc9762de8d142e58935c62a86f67332819b15203b35
BUNDLED_CLANG_VER=llvmorg-21-init-5118-g52cd27e6-4
BUNDLED_CLANG_VER=llvmorg-21-init-5118-g52cd27e6-5
BUNDLED_RUST_VER=f7b43542838f0a4a6cfdb17fbeadf45002042a77-1
RUST_SHORT_HASH=${BUNDLED_RUST_VER:0:10}-${BUNDLED_RUST_VER##*-}
NODE_VER=22.11.0
@@ -50,7 +50,7 @@ DESCRIPTION="Open-source version of Google Chrome web browser"
HOMEPAGE="https://www.chromium.org/"
PPC64_HASH="a85b64f07b489b8c6fdb13ecf79c16c56c560fc6"
PATCH_V="${PV%%\.*}-2"
SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
SRC_URI="https://github.com/chromium-linux-tarballs/chromium-tarballs/releases/download/${PV}/chromium-${PV}-linux.tar.xz
!bundled-toolchain? (
https://gitlab.com/Matt.Jolly/chromium-patches/-/archive/${PATCH_V}/chromium-patches-${PATCH_V}.tar.bz2
)
@@ -61,7 +61,7 @@ SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
-> chromium-rust-toolchain-${RUST_SHORT_HASH}-${BUNDLED_CLANG_VER%-*}.tar.xz
)
test? (
https://chromium-tarballs.distfiles.gentoo.org/${P}-linux-testdata.tar.xz
https://github.com/chromium-linux-tarballs/chromium-tarballs/releases/download/${PV}/chromium-${PV}-linux-testdata.tar.xz
https://chromium-fonts.storage.googleapis.com/${TEST_FONT} -> chromium-testfonts-${TEST_FONT:0:10}.tar.gz
)
ppc64? (
@@ -70,7 +70,7 @@ SRC_URI="https://chromium-tarballs.distfiles.gentoo.org/${P}-linux.tar.xz
pgo? ( https://github.com/elkablo/chromium-profiler/releases/download/v0.2/chromium-profiler-0.2.tar )"
LICENSE="BSD"
SLOT="0/dev"
SLOT="0/beta"
# Dev exists mostly to give devs some breathing room for beta/stable releases;
# it shouldn't be keyworded but adventurous users can select it.
if [[ ${SLOT} != "0/dev" ]]; then
@@ -211,7 +211,7 @@ BDEPEND="
>=dev-build/gn-${GN_MIN_VER}
app-alternatives/ninja
dev-lang/perl
>=dev-util/gperf-3.0.3
>=dev-util/gperf-3.2
dev-vcs/git
>=net-libs/nodejs-${NODE_VER}:0/${NODE_VER%%.*}[inspector]
>=sys-devel/bison-2.4.3
@@ -416,6 +416,7 @@ src_prepare() {
"${FILESDIR}/chromium-135-oauth2-client-switches.patch"
"${FILESDIR}/chromium-135-map_droppable-glibc.patch"
"${FILESDIR}/chromium-136-drop-nodejs-ver-check.patch"
"${FILESDIR}/chromium-135-gperf.patch"
)
if use bundled-toolchain; then

View File

@@ -1,39 +0,0 @@
From 54951636d20fa798e148228118863b89a4580479 Mon Sep 17 00:00:00 2001
From: Matt Jolly <kangie@gentoo.org>
Date: Sat, 12 Oct 2024 12:40:16 +1000
Subject: [PATCH] www-client/chromium: work around dead oauth2 credentials -
131 update
131 moved a ton of things around; this is now in api_key_cache.cc
Google doesn't let us bake in OAuth2 credentials, and for some time,
Google sign-in has been broken. Arch dealt with this in March, and so
did we to some degree, but in the last few months, our sign-in
credentials have been broken. It appears that we actually did remove API
credentials in March around Chrome 89, but they got added back, perhaps
when rotating newer versions to replace older versions. Work around this
by following Arch's lead: we remove the predefined credentials, as
before, but also we patch Chromium so that people can use their own
easily, using Arch's patch for that.
--- a/google_apis/api_key_cache.cc
+++ b/google_apis/api_key_cache.cc
@@ -214,14 +214,14 @@ ApiKeyCache::ApiKeyCache(const DefaultApiKeys& default_api_keys) {
std::string default_client_id = CalculateKeyValue(
default_api_keys.google_default_client_id,
- STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(), nullptr,
+ STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_ID), std::string(), ::switches::kOAuth2ClientID,
std::string(), environment.get(), command_line, gaia_config,
default_api_keys.allow_override_via_environment,
default_api_keys.allow_unset_values);
std::string default_client_secret = CalculateKeyValue(
default_api_keys.google_default_client_secret,
STRINGIZE_NO_EXPANSION(GOOGLE_DEFAULT_CLIENT_SECRET), std::string(),
- nullptr, std::string(), environment.get(), command_line, gaia_config,
+ ::switches::kOAuth2ClientSecret, std::string(), environment.get(), command_line, gaia_config,
default_api_keys.allow_override_via_environment,
default_api_keys.allow_unset_values);
--
2.46.2

View File

@@ -1,104 +0,0 @@
From 84b3b8335f7efbb8ed5ab9c9a260ea4f5d77192b Mon Sep 17 00:00:00 2001
From: Matt Jolly <kangie@gentoo.org>
Date: Mon, 11 Nov 2024 20:52:48 +1000
Subject: [PATCH] Make bindgen wrapper work with unbundled toolchain
The `run_bindgen.py` wrapper takes a --libclang-path option
and uses it to set the appropriate environment variable.
This is currently hardcoded to use libclang shipped alongside
bindgen (in our rust toolchain), but distributions may want to
override this and use a system path.
Additionally enable distros to feed in appropriate library paths.
--- a/build/config/rust.gni
+++ b/build/config/rust.gni
@@ -60,6 +60,17 @@ declare_args() {
# the bindgen exectuable).
rust_bindgen_root = "//third_party/rust-toolchain"
+ # Directory under which to find one of `libclang.{dll,so}` (a `lib[64]` or
+ # `bin` directory containing the libclang shared library).
+ # We don't need to worry about multlib, but specify the full path here
+ # in case a distribution does.
+ if (host_os == "win") {
+ bindgen_libclang_path = "//third_party/rust-toolchain/bin"
+ } else {
+ bindgen_libclang_path = "//third_party/rust-toolchain/lib"
+ }
+
+
# If you're using a Rust toolchain as specified by rust_sysroot_absolute,
# set this to the output of `rustc -V`. Changing this string will cause all
# Rust targets to be rebuilt, which allows you to update your toolchain and
--- a/build/rust/rust_bindgen.gni
+++ b/build/rust/rust_bindgen.gni
@@ -17,13 +17,13 @@ if (host_os == "win") {
_bindgen_path = "${_bindgen_path}.exe"
}
-# On Windows, the libclang.dll is beside the bindgen.exe, otherwise it is in
-# ../lib.
-_libclang_path = rust_bindgen_root
-if (host_os == "win") {
- _libclang_path += "/bin"
+if (clang_base_path != default_clang_base_path && custom_toolchain == "//build/toolchain/linux/unbundle:default") {
+ # Assume that the user has set this up properly, including handling multilib
+ _clang_libpath = clang_base_path + "/include"
+ _clang_ld_libpath = bindgen_libclang_path
} else {
- _libclang_path += "/lib"
+ _clang_libpath = clang_base_path + "/lib/clang/" + clang_version
+ _clang_ld_libpath = clang_base_path + "/lib"
}
# Template to build Rust/C bindings with bindgen.
--- a/build/rust/rust_bindgen_generator.gni
+++ b/build/rust/rust_bindgen_generator.gni
@@ -151,7 +151,7 @@ template("rust_bindgen_generator") {
"--output",
rebase_path(output_file, root_build_dir),
"--libclang-path",
- rebase_path(_libclang_path, root_build_dir),
+ rebase_path(bindgen_libclang_path, root_build_dir),
]
if (_wrap_static_fns) {
@@ -172,7 +172,7 @@ template("rust_bindgen_generator") {
# point to.
args += [
"--ld-library-path",
- rebase_path(clang_base_path + "/lib", root_build_dir),
+ rebase_path(bindgen_libclang_path, root_build_dir),
]
}
@@ -215,9 +215,7 @@ template("rust_bindgen_generator") {
# says the wrong thing. We point it to our clang's resource dir which will
# make it behave consistently with our other command line flags and allows
# system headers to be found.
- clang_resource_dir =
- rebase_path(clang_base_path + "/lib/clang/" + clang_version,
- root_build_dir)
+ clang_resource_dir = rebase_path(clang_base_path + "/include", root_build_dir)
args += [
"-resource-dir",
clang_resource_dir,
@@ -238,6 +236,15 @@ template("rust_bindgen_generator") {
}
}
+ if (custom_toolchain == "//build/toolchain/linux/unbundle:default") {
+ # We need to pass the path to the libstdc++ headers to bindgen so that it
+ # can find them when parsing C++ headers.
+ args += [
+ "-I",
+ rebase_path(clang_base_path + "/include/", root_build_dir),
+ ]
+ }
+
if (is_win) {
# On Windows we fall back to using system headers from a sysroot from
# depot_tools. This is negotiated by python scripts and the result is
--
2.47.0

View File

@@ -1,133 +0,0 @@
https://chromium.googlesource.com/chromium/src/+/0d8d0e0943489b59e452b4d0214959821880ad7f
From: Matt Jolly <kangie@gentoo.org>
Date: Tue, 28 Jan 2025 12:00:57 -0800
Subject: [PATCH] UI: make QT5 optional
To build with `use_qt6`, QT5 (`use_qt`) is also required.
This is undesirable for downstreams who are actively working
to drop support for QT5 (e.g. Gentoo).
To resolve this:
- Add `use_qt5`
- Replace most `use_qt` conditionals with this option;
these appear to be from before QT6 support was added.
- Use `use_qt5` to gate some previously unconditional QT5-related
items in chrome/installer/linux
- Remove `use_qt` as an argument, instead set to `use_qt5 || use_qt6`.
This change should not impact the current behaviour; if no options
are selected QT5 and QT6 support will be enabled, using existing logic
unless one is explicitly disabled with `use_qt{x}=false`.
See-also: https://bugs.gentoo.org/926166, https://bugs.gentoo.org/948836
Signed-off-by: Matt Jolly <kangie@gentoo.org>
Fixed: 328182252
Change-Id: I22ec7a068356412d3f9fce68a19aee4f8c89892c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6205488
Reviewed-by: Thomas Anderson <thomasanderson@chromium.org>
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1412471}
--- a/chrome/installer/linux/BUILD.gn
+++ b/chrome/installer/linux/BUILD.gn
@@ -77,10 +77,10 @@ if (enable_swiftshader) {
packaging_files += [ "$root_out_dir/vk_swiftshader_icd.json" ]
}
-if (use_qt) {
- # Even though this is a shared library, add it to `packaging_files` instead of
- # `packaging_files_shlibs` to skip the dependency check. This is intentional
- # to prevent a hard dependency on QT for the package.
+# Even though this is a shared library, add it to `packaging_files` instead of
+# `packaging_files_shlibs` to skip the dependency check. This is intentional
+# to prevent a hard dependency on QT for the package.
+if (use_qt5) {
packaging_files += [ "$root_out_dir/libqt5_shim.so" ]
}
if (use_qt6) {
@@ -206,7 +206,7 @@ if (build_with_internal_optimization_guide) {
}
}
-if (use_qt) {
+if (use_qt5) {
strip_binary("strip_qt5_shim") {
binary_input = "$root_out_dir/libqt5_shim.so"
deps = [ "//ui/qt:qt5_shim" ]
@@ -399,7 +399,7 @@ group("installer_deps") {
"//components/optimization_guide/internal:optimization_guide_internal",
]
}
- if (use_qt) {
+ if (use_qt5) {
public_deps += [
":strip_qt5_shim",
"//ui/qt:qt5_shim",
--- a/ui/qt/BUILD.gn
+++ b/ui/qt/BUILD.gn
@@ -101,10 +101,12 @@ template("qt_shim") {
}
}
}
-qt_shim("qt5_shim") {
- qt_version = "5"
- if (!use_sysroot) {
- moc_qt_path = "$moc_qt5_path"
+if (use_qt5) {
+ qt_shim("qt5_shim") {
+ qt_version = "5"
+ if (!use_sysroot) {
+ moc_qt_path = "$moc_qt5_path"
+ }
}
}
if (use_qt6) {
@@ -122,7 +124,10 @@ component("qt") {
defines = [ "IS_QT_IMPL" ]
# qt_shim is in data_deps since we want to load it manually.
- data_deps = [ ":qt5_shim" ]
+ data_deps = []
+ if (use_qt5) {
+ data_deps += [ ":qt5_shim" ]
+ }
if (use_qt6) {
data_deps += [ ":qt6_shim" ]
}
--- a/ui/qt/qt.gni
+++ b/ui/qt/qt.gni
@@ -6,27 +6,20 @@ import("//build/config/cast.gni")
import("//build/config/sanitizers/sanitizers.gni")
import("//build/config/sysroot.gni")
+# TODO(crbug.com/40260415): Allow QT in MSAN builds once QT is
+# added to the instrumented libraries.
declare_args() {
- # TODO(crbug.com/40260415): Allow QT in MSAN builds once QT is
- # added to the instrumented libraries.
- use_qt = is_linux && !is_castos && !is_msan
+ use_qt5 = use_sysroot && is_linux && !is_castos && !is_msan
+ use_qt6 = use_sysroot && is_linux && !is_castos && !is_msan
}
declare_args() {
- if (!use_sysroot && use_qt) {
+ if (!use_sysroot && use_qt5) {
moc_qt5_path = ""
}
-}
-
-declare_args() {
- use_qt6 = use_qt && use_sysroot
-}
-
-declare_args() {
if (!use_sysroot && use_qt6) {
moc_qt6_path = ""
}
}
-# use_qt6 => use_qt
-assert(!use_qt6 || use_qt)
+use_qt = use_qt5 || use_qt6

View File

@@ -0,0 +1,28 @@
https://bugs.gentoo.org/953436#c5
--- a/third_party/blink/renderer/build/scripts/gperf.py
+++ b/third_party/blink/renderer/build/scripts/gperf.py
@@ -28,24 +28,6 @@
stdout=subprocess.PIPE,
universal_newlines=True)
gperf_output = gperf.communicate(gperf_input)[0]
- # Massage gperf output to be more palatable for modern compilers.
- # TODO(thakis): Upstream these to gperf so we don't need massaging.
- # `register` is deprecated in C++11 and removed in C++17, so remove
- # it from gperf's output.
- # https://savannah.gnu.org/bugs/index.php?53028
- gperf_output = re.sub(r'\bregister ', '', gperf_output)
- # -Wimplicit-fallthrough needs an explicit fallthrough statement,
- # so replace gperf's /*FALLTHROUGH*/ comment with the statement.
- # https://savannah.gnu.org/bugs/index.php?53029
- gperf_output = gperf_output.replace('/*FALLTHROUGH*/',
- ' [[fallthrough]];')
- # -Wpointer-to-int-cast warns about casting pointers to smaller ints
- # Replace {(int)(long)&(foo), bar} with
- # {static_cast<int>(reinterpret_cast<uintptr_t>(&(foo)), bar}
- gperf_output = re.sub(
- r'\(int\)\(long\)(.*?),',
- r'static_cast<int>(reinterpret_cast<uintptr_t>(\1)),',
- gperf_output)
script = 'third_party/blink/renderer/build/scripts/gperf.py'
return '// Generated by %s\n' % script + gperf_output
except OSError: