diff --git a/srcpkgs/chromium/patches/build-support-musl.patch b/srcpkgs/chromium/patches/build-support-musl.patch index 1e5b0b8afae..635c592b0a3 100644 --- a/srcpkgs/chromium/patches/build-support-musl.patch +++ b/srcpkgs/chromium/patches/build-support-musl.patch @@ -13,66 +13,23 @@ shlib_extension = ".dylib" --- a/build/config/rust.gni +++ b/build/config/rust.gni -@@ -185,11 +185,23 @@ +@@ -196,7 +196,18 @@ + # a cargo project that dumps the `CARGO_CFG_TARGET_ABI` from its build.rs. See + # https://issues.chromium.org/u/1/issues/372512092#comment5 for an example. rust_abi_target = "" - if (is_linux || is_chromeos) { +-if (is_linux || is_chromeos) { ++if (is_musl) { ++ if (current_cpu == "arm64") { ++ rust_abi_target = "aarch64-unknown-linux-musl" ++ cargo_target_abi = "" ++ } else if (current_cpu == "x86") { ++ rust_abi_target = "i686-unknown-linux-musl" ++ cargo_target_abi = "" ++ } else if (current_cpu == "x64") { ++ rust_abi_target = "x86_64-unknown-linux-musl" ++ cargo_target_abi = "" ++ } ++} else if (is_linux || is_chromeos) { if (current_cpu == "arm64") { -- rust_abi_target = "aarch64-unknown-linux-gnu" -+ if (is_musl) { -+ rust_abi_target = "aarch64-unknown-linux-musl" -+ } else { -+ rust_abi_target = "aarch64-unknown-linux-gnu" -+ } - } else if (current_cpu == "x86") { -- rust_abi_target = "i686-unknown-linux-gnu" -+ if (is_musl) { -+ rust_abi_target = "i686-unknown-linux-musl" -+ } else { -+ rust_abi_target = "i686-unknown-linux-gnu" -+ } - } else if (current_cpu == "x64") { -- rust_abi_target = "x86_64-unknown-linux-gnu" -+ if (is_musl) { -+ rust_abi_target = "x86_64-unknown-linux-musl" -+ } else { -+ rust_abi_target = "x86_64-unknown-linux-gnu" -+ } - } else if (current_cpu == "arm") { - if (arm_float_abi == "hard") { - float_suffix = "hf" -@@ -198,15 +210,31 @@ - } - if (arm_arch == "armv7-a" || arm_arch == "armv7") { - # No way to inform Rust about the -a suffix. -- rust_abi_target = "armv7-unknown-linux-gnueabi" + float_suffix -+ if (is_musl) { -+ rust_abi_target = "armv7-unknown-linux-musleabi" + float_suffix -+ } else { -+ rust_abi_target = "armv7-unknown-linux-gnueabi" + float_suffix -+ } - } else { -- rust_abi_target = "arm-unknown-linux-gnueabi" + float_suffix -+ if (is_musl) { -+ rust_abi_target = "arm-unknown-linux-musleabi" + float_suffix -+ } else { -+ rust_abi_target = "arm-unknown-linux-gnueabi" + float_suffix -+ } - } - } else if (current_cpu == "riscv64") { -- rust_abi_target = "riscv64gc-unknown-linux-gnu" -+ if (is_musl) { -+ rust_abi_target = "riscv64gc-unknown-linux-musl" -+ } else { -+ rust_abi_target = "riscv64gc-unknown-linux-gnu" -+ } - } else { - # Best guess for other future platforms. -- rust_abi_target = current_cpu + "-unknown-linux-gnu" -+ if (is_musl) { -+ rust_abi_target = current_cpu + "-unknown-linux-musl" -+ } else { -+ rust_abi_target = current_cpu + "-unknown-linux-gnu" -+ } - } - } else if (is_android) { - import("//build/config/android/abi.gni") + rust_abi_target = "aarch64-unknown-linux-gnu" + cargo_target_abi = "" diff --git a/srcpkgs/chromium/template b/srcpkgs/chromium/template index 9f682324345..2188134ada6 100644 --- a/srcpkgs/chromium/template +++ b/srcpkgs/chromium/template @@ -1,13 +1,14 @@ # Template file for 'chromium' pkgname=chromium # See https://chromiumdash.appspot.com/releases?platform=Linux for the latest version -version=130.0.6723.69 +version=131.0.6778.69 revision=1 archs="i686* x86_64* aarch64* armv7l*" hostmakedepends=" $(vopt_if clang "clang18 lld18 llvm18 compiler-rt") bison git gperf hwids ninja nodejs perl pkg-config python3 - libepoxy-devel libevent-devel libglib-devel rust rust-bindgen" + libepoxy-devel libevent-devel libglib-devel rust rust-bindgen + gn" makedepends=" alsa-lib-devel libdav1d-devel brotli-devel cups-devel elfutils-devel fontconfig-devel freetype-devel gtk+3-devel libXScrnSaver-devel @@ -27,8 +28,9 @@ short_desc="Google's attempt at creating a safer, faster, and more stable browse maintainer="Duncaen " license="BSD-3-Clause" homepage="https://www.chromium.org/" -distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/${pkgname}-${version}.tar.xz" -checksum=b7e4d6a2154c61e558659bbc5b8b05c9f6f317d1420bf8624f5ffac097df565d +# distfiles="https://commondatastorage.googleapis.com/chromium-browser-official/chromium-${version}.tar.xz" +distfiles="https://chromium-tarballs.distfiles.gentoo.org/chromium-${version}.tar.xz" +checksum=56d332bd53b26ad4f9a8f36c4cba37e9f05126a353d57666d12690944769bfaa lib32disabled=yes @@ -139,10 +141,12 @@ _setup_toolchain() { do_configure() { local system=() conf=() - # compile gn early, so it can be used to generate gni stuff - AR="ar" CC=$CC_FOR_BUILD CXX=$CXX_FOR_BUILD LD=$CXX_FOR_BUILD \ - CFLAGS=$CFLAGS_FOR_BUILD CXXFLAGS=$CXXFLAGS_FOR_BUILD LDFLAGS=$LDFLAGS_FOR_BUILD \ - tools/gn/bootstrap/bootstrap.py ${makejobs} --skip-generate-buildfiles + if false; then + # compile gn early, so it can be used to generate gni stuff + AR="ar" CC=$CC_FOR_BUILD CXX=$CXX_FOR_BUILD LD=$CXX_FOR_BUILD \ + CFLAGS=$CFLAGS_FOR_BUILD CXXFLAGS=$CXXFLAGS_FOR_BUILD LDFLAGS=$LDFLAGS_FOR_BUILD \ + tools/gn/bootstrap/bootstrap.py ${makejobs} --skip-generate-buildfiles + fi # Use system-provided libraries. # TODO: use_system_hunspell (upstream changes needed). @@ -299,7 +303,11 @@ do_configure() { esac fi _setup_toolchain - out/Release/gn gen out/Release --args="${conf[*]}" + if false; then + out/Release/gn gen out/Release --args="${conf[*]}" + else + gn gen out/Release --args="${conf[*]}" + fi } do_build() {