diff --git a/www/iridium/Makefile b/www/iridium/Makefile index 830675b7d917..72df93a08cfb 100644 --- a/www/iridium/Makefile +++ b/www/iridium/Makefile @@ -1,349 +1,349 @@ PORTNAME= iridium -PORTVERSION= 2024.01.120 -PORTREVISION= 1 +PORTVERSION= 2024.06.126.2 +PULSEMV= 16 +PULSEV= ${PULSEMV}.1 CATEGORIES= www wayland -MASTER_SITES= https://downloads.iridiumbrowser.de/source/ +MASTER_SITES= https://downloads.iridiumbrowser.de/source/ \ + https://freedesktop.org/software/pulseaudio/releases/:pulseaudio PKGNAMESUFFIX= -browser + DISTNAME= ${PORTNAME}${PKGNAMESUFFIX}-${PORTVERSION} +DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \ + pulseaudio-${PULSEV}.tar.gz:pulseaudio MAINTAINER= chromium@FreeBSD.org COMMENT= Iridium browser WWW= https://iridiumbrowser.de/ LICENSE= BSD3CLAUSE LGPL21 MPL11 LICENSE_COMB= multi ONLY_FOR_ARCHS= aarch64 amd64 i386 -PATCH_SITES= https://nerd.hu/distfiles/ -PATCHFILES+= disable-privacy-sandbox-13fc15e4ec454e3397f11bdc1bf2627c121a37e8.patch:-p1 - BUILD_DEPENDS= bash:shells/bash \ ${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \ gperf:devel/gperf \ flock:sysutils/flock \ node:www/node \ + rustc:lang/rust \ xcb-proto>0:x11/xcb-proto \ ${LOCALBASE}/include/linux/videodev2.h:multimedia/v4l_compat \ ${LOCALBASE}/share/usbids/usb.ids:misc/usbids \ ${PYTHON_PKGNAMEPREFIX}html5lib>0:www/py-html5lib@${PY_FLAVOR} \ ${LOCALBASE}/include/va/va.h:multimedia/libva \ ${LOCALBASE}/libdata/pkgconfig/dri.pc:graphics/mesa-dri \ ${LOCALBASE}/libdata/pkgconfig/Qt5Core.pc:devel/qt5-core \ ${LOCALBASE}/libdata/pkgconfig/Qt5Widgets.pc:x11-toolkits/qt5-widgets LIB_DEPENDS= libatk-bridge-2.0.so:accessibility/at-spi2-core \ libatspi.so:accessibility/at-spi2-core \ libspeechd.so:accessibility/speech-dispatcher \ + libasound.so:audio/alsa-lib \ libFLAC.so:audio/flac \ libopus.so:audio/opus \ + libsndio.so:audio/sndio \ libspeex.so:audio/speex \ libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libepoll-shim.so:devel/libepoll-shim \ libevent.so:devel/libevent \ libffi.so:devel/libffi \ libicuuc.so:devel/icu \ libjsoncpp.so:devel/jsoncpp \ libpci.so:devel/libpci \ libnspr4.so:devel/nspr \ libre2.so:devel/re2 \ libcairo.so:graphics/cairo \ libdrm.so:graphics/libdrm \ libexif.so:graphics/libexif \ libpng.so:graphics/png \ libwebp.so:graphics/webp \ libdav1d.so:multimedia/dav1d \ libopenh264.so:multimedia/openh264 \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz \ libharfbuzz-icu.so:print/harfbuzz-icu \ libgcrypt.so:security/libgcrypt \ libsecret-1.so:security/libsecret \ libnss3.so:security/nss \ libexpat.so:textproc/expat2 \ libfontconfig.so:x11-fonts/fontconfig \ libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon \ libxshmfence.so:x11/libxshmfence RUN_DEPENDS= xdg-open:devel/xdg-utils \ noto-basic>0:x11-fonts/noto-basic USES= bison compiler:c++17-lang cpe desktop-file-utils gl gmake gnome \ iconv:wchar_t jpeg localbase:ldflags ninja perl5 pkgconfig \ python:build qt:5 shebangfix tar:xz xorg CPE_VENDOR= google CPE_PRODUCT= chrome USE_GL= gbm gl USE_GNOME= atk dconf gdkpixbuf2 glib20 gtk30 libxml2 libxslt USE_LDCONFIG= ${DATADIR} USE_PERL5= build USE_XORG= x11 xcb xcomposite xcursor xext xdamage xfixes xi \ xorgproto xrandr xrender xscrnsaver xtst USE_QT= buildtools:build SHEBANG_FILES= chrome/tools/build/linux/chrome-wrapper buildtools/linux64/clang-format MAKE_ARGS= -C out/${BUILDTYPE} ALL_TARGET= chrome BINARY_ALIAS= python3=${PYTHON_CMD} \ moc=${PREFIX}/bin/moc-qt5 # TODO bz@ : install libwidevinecdm.so (see third_party/widevine/cdm/BUILD.gn) # # Run "./out/${BUILDTYPE}/gn args out/${BUILDTYPE} --list" for all variables. # Some parts don't have use_system_* flag, and can be turned on/off by using # replace_gn_files.py script, some parts just turned on/off for target host # OS "target_os == is_bsd", like libusb, libpci. GN_ARGS+= clang_use_chrome_plugins=false \ chrome_pgo_phase=0 \ enable_backup_ref_ptr_support=false \ enable_hangout_services_extension=true \ + enable_log_error_not_reached=true \ enable_nacl=false \ enable_remoting=false \ - enable_rust=false \ fatal_linker_warnings=false \ icu_use_data_file=false \ is_clang=true \ optimize_webui=true \ toolkit_views=true \ treat_warnings_as_errors=false \ use_allocator_shim=false \ use_aura=true \ - use_custom_libcxx=false \ + use_custom_libcxx=true \ + use_custom_libunwind=true \ use_lld=true \ use_partition_alloc=true \ use_partition_alloc_as_malloc=false \ use_sysroot=false \ use_system_freetype=false \ use_system_harfbuzz=true \ + use_system_libffi=true \ use_system_libjpeg=true \ use_udev=false \ - extra_cxxflags="${CXXFLAGS}" \ + extra_cxxflags="${CXXFLAGS} -I${WRKDIR}/pulseaudio-${PULSEV}/src -DPA_MAJOR=${PULSEMV}" \ extra_ldflags="${LDFLAGS}" \ ffmpeg_branding="${FFMPEG_BRAND}" +# Audio backends +GN_ARGS+= use_alsa=true \ + use_pulseaudio=true \ + use_sndio=true + # TODO: investigate building with these options: # use_system_minigbm GN_BOOTSTRAP_FLAGS= --no-clean --no-rebuild --skip-generate-buildfiles SUB_FILES= iridium-browser.desktop iridium SUB_LIST+= COMMENT="${COMMENT}" OPTIONS_DEFINE= CODECS CUPS DEBUG KERBEROS LTO PIPEWIRE OPTIONS_DEFAULT= CODECS CUPS KERBEROS PIPEWIRE SNDIO OPTIONS_EXCLUDE_aarch64=LTO -OPTIONS_GROUP= AUDIO -OPTIONS_GROUP_AUDIO= ALSA PULSEAUDIO SNDIO OPTIONS_RADIO= KERBEROS OPTIONS_RADIO_KERBEROS= HEIMDAL HEIMDAL_BASE MIT OPTIONS_SUB= yes CODECS_DESC= Compile and enable patented codecs like H.264 HEIMDAL_BASE_DESC= Heimdal Kerberos (base) HEIMDAL_DESC= Heimdal Kerberos (security/heimdal) MIT_DESC= MIT Kerberos (security/krb5) -ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib -ALSA_RUN_DEPENDS= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \ - alsa-lib>=1.1.1_1:audio/alsa-lib -ALSA_VARS= GN_ARGS+=use_alsa=true -ALSA_VARS_OFF= GN_ARGS+=use_alsa=false - CODECS_VARS= GN_ARGS+=proprietary_codecs=true \ FFMPEG_BRAND="Chrome" CODECS_VARS_OFF= GN_ARGS+=proprietary_codecs=false \ FFMPEG_BRAND="Chromium" CUPS_LIB_DEPENDS= libcups.so:print/cups CUPS_VARS= GN_ARGS+=use_cups=true CUPS_VARS_OFF= GN_ARGS+=use_cups=false DEBUG_VARS= BUILDTYPE=Debug \ GN_ARGS+=is_debug=true \ GN_ARGS+=is_component_build=false \ GN_ARGS+=symbol_level=1 \ GN_BOOTSTRAP_FLAGS+=--debug \ WANTSPACE="21 GB" DEBUG_VARS_OFF= BUILDTYPE=Release \ GN_ARGS+=blink_symbol_level=0 \ GN_ARGS+=is_debug=false \ GN_ARGS+=is_official_build=true \ GN_ARGS+=symbol_level=0 \ WANTSPACE="14 GB" HEIMDAL_LIB_DEPENDS= libkrb.so.26:security/heimdal KERBEROS_VARS= GN_ARGS+=use_kerberos=true KERBEROS_VARS_OFF= GN_ARGS+=use_kerberos=false LTO_VARS= GN_ARGS+=use_thin_lto=true \ GN_ARGS+=thin_lto_enable_optimizations=true \ WANTSPACE="14 GB" LTO_VARS_OFF= GN_ARGS+=use_thin_lto=false MIT_LIB_DEPENDS= libkrb.so.3:security/krb5 PIPEWIRE_DESC= Screen capture via PipeWire PIPEWIRE_LIB_DEPENDS= libpipewire-0.3.so:multimedia/pipewire PIPEWIRE_VARS= GN_ARGS+=rtc_use_pipewire=true \ GN_ARGS+=rtc_link_pipewire=true PIPEWIRE_VARS_OFF= GN_ARGS+=rtc_use_pipewire=false \ GN_ARGS+=rtc_link_pipewire=false -PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio -PULSEAUDIO_VARS= GN_ARGS+=use_pulseaudio=true -PULSEAUDIO_VARS_OFF= GN_ARGS+=use_pulseaudio=false - -# With SNDIO=on we exclude audio_manager_linux from the build (see -# media/audio/BUILD.gn) and use audio_manager_openbsd which does not -# support falling back to ALSA or PulseAudio. -SNDIO_PREVENTS= ALSA PULSEAUDIO -SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio -SNDIO_VARS= GN_ARGS+=use_sndio=true -SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false - .include .include # for COMPILER_VERSION .if ${PORT_OPTIONS:MHEIMDAL_BASE} && !exists(/usr/lib/libkrb5.so) IGNORE= you have selected HEIMDAL_BASE but do not have Heimdal installed in base .endif -.if ${COMPILER_VERSION} != 160 -LLVM_DEFAULT= 16 +.if ${COMPILER_VERSION} < 180 +LLVM_DEFAULT= 18 BUILD_DEPENDS+= clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} BINARY_ALIAS+= cpp=${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} \ cc=${LOCALBASE}/bin/clang${LLVM_DEFAULT} \ c++=${LOCALBASE}/bin/clang++${LLVM_DEFAULT} \ ar=${LOCALBASE}/bin/llvm-ar${LLVM_DEFAULT} \ nm=${LOCALBASE}/bin/llvm-nm${LLVM_DEFAULT} \ ld=${LOCALBASE}/bin/ld.lld${LLVM_DEFAULT} .else BINARY_ALIAS+= ar=/usr/bin/llvm-ar \ nm=/usr/bin/llvm-nm .endif # - swiftshader/lib/{libEGL.so,libGLESv2.so} is x86 only # - map ffmpeg target to ${ARCH} .if ${ARCH} == aarch64 PLIST_SUB+= NOT_AARCH64="@comment " FFMPEG_TARGET= arm64 .elif ${ARCH} == amd64 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= x64 .elif ${ARCH} == i386 BUILD_DEPENDS+= nasm:devel/nasm PLIST_SUB+= NOT_AARCH64="" FFMPEG_TARGET= ia32 .endif -FFMPEG_BDIR= ${WRKSRC}/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} +FFMPEG_BDIR= ${WRKSRC}/third_party/ffmpeg/build.${FFMPEG_TARGET}.freebsd/${FFMPEG_BRAND} FFMPEG_CDIR= ${WRKSRC}/third_party/ffmpeg/chromium/config/${FFMPEG_BRAND}/freebsd/${FFMPEG_TARGET} # Allow relocations against read-only segments (override lld default) LDFLAGS_i386= -Wl,-znotext # TODO: -isystem, would be just as ugly as this approach, but more reliably # build would fail without C_INCLUDE_PATH/CPLUS_INCLUDE_PATH env var set. MAKE_ENV+= C_INCLUDE_PATH=${LOCALBASE}/include \ CPLUS_INCLUDE_PATH=${LOCALBASE}/include +# rust +RUSTC_VERSION!= rustc -V 2>/dev/null || true +MAKE_ENV+= RUSTC_BOOTSTRAP=1 +GN_ARGS+= enable_rust=true \ + rust_sysroot_absolute="${LOCALBASE}" \ + rustc_version="${RUSTC_VERSION}" + pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "To build Iridium, you should have around 2GB of memory" @${ECHO_MSG} "and around ${WANTSPACE} of free disk space." @${ECHO_MSG} pre-configure: # We used to remove bundled libraries to be sure that chromium uses # system libraries and not shipped ones. # cd ${WRKSRC} && ${PYTHON_CMD} \ #./build/linux/unbundle/remove_bundled_libraries.py [list of preserved] cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ${PYTHON_CMD} \ ./build/linux/unbundle/replace_gn_files.py --system-libraries \ dav1d flac fontconfig freetype harfbuzz-ng icu libdrm libevent libpng \ - libwebp libxml libxslt openh264 opus || ${FALSE} + libusb libwebp libxml libxslt openh264 opus || ${FALSE} # Iridium uses an unreleased version of FFmpeg, so configure it - cd ${WRKSRC}/third_party/ffmpeg && \ - ${PYTHON_CMD} chromium/scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ + cd ${WRKSRC}/media/ffmpeg && \ + ${PYTHON_CMD} scripts/build_ffmpeg.py freebsd ${FFMPEG_TARGET} \ --config-only --branding=${FFMPEG_BRAND} cd ${FFMPEG_BDIR} && ${GMAKE} ffversion.h ${MKDIR} ${FFMPEG_CDIR} .for _e in config.h config.asm config_components.h libavcodec libavformat libavutil -${CP} -pR ${FFMPEG_BDIR}/${_e} ${FFMPEG_CDIR} .endfor + touch ${WRKDIR}/pulseaudio-${PULSEV}/src/pulse/version.h do-configure: # GN generator bootstrapping and generating ninja files cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} CC=${CC} CXX=${CXX} LD=${CXX} \ READELF=${READELF} AR=${AR} NM=${NM} ${PYTHON_CMD} \ ./tools/gn/bootstrap/bootstrap.py ${GN_BOOTSTRAP_FLAGS} cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./out/${BUILDTYPE}/gn \ gen --args='${GN_ARGS}' out/${BUILDTYPE} # Setup nodejs dependency @${MKDIR} ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin ${LN} -sf ${LOCALBASE}/bin/node ${WRKSRC}/third_party/node/freebsd/node-freebsd/bin/node # Setup buildtools/freebsd @${MKDIR} ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/buildtools/linux64/clang-format ${WRKSRC}/buildtools/freebsd ${LN} -sf ${WRKSRC}/out/${BUILDTYPE}/gn ${WRKSRC}/buildtools/freebsd ${LN} -sf /usr/bin/strip ${WRKSRC}/buildtools/freebsd/strip do-install: @${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_MAN} ${WRKSRC}/chrome/app/resources/manpage.1.in \ ${STAGEDIR}${PREFIX}/share/man/man1/iridium.1 @${SED} -i "" -e 's,\@\@PACKAGE\@\@,chromium,g;s,\@\@MENUNAME\@\@,Iridium Web Browser,g' \ ${STAGEDIR}${PREFIX}/share/man/man1/iridium.1 ${CP} ${WRKSRC}/chrome/app/theme/chromium/product_logo_22_mono.png ${WRKSRC}/chrome/app/theme/chromium/product_logo_22.png .for s in 22 24 48 64 128 256 @${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps ${INSTALL_DATA} ${WRKSRC}/chrome/app/theme/chromium/product_logo_${s}.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/${s}x${s}/apps/iridium.png .endfor ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.png ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/*.pak ${STAGEDIR}${DATADIR} .for d in protoc mksnapshot ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor .for d in snapshot_blob.bin v8_context_snapshot.bin ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/${d} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/chrome \ ${STAGEDIR}${DATADIR}/iridium cd ${WRKSRC}/out/${BUILDTYPE} && \ ${COPYTREE_SHARE} "locales resources" ${STAGEDIR}${DATADIR} @${MKDIR} ${STAGEDIR}${DESKTOPDIR} ${INSTALL_DATA} ${WRKDIR}/iridium-browser.desktop \ ${STAGEDIR}${DESKTOPDIR} ${INSTALL_SCRIPT} ${WRKDIR}/iridium ${STAGEDIR}${PREFIX}/bin # ANGLE, EGL, Vk .for f in libEGL.so libGLESv2.so libVkICD_mock_icd.so ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/${f} ${STAGEDIR}${DATADIR} .endfor ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvulkan.so.1 \ ${STAGEDIR}${DATADIR}/libvulkan.so .if ${BUILDTYPE} == Debug ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libVkLayer_khronos_validation.so ${STAGEDIR}${DATADIR} .endif # SwiftShader .if ${ARCH} != aarch64 @${MKDIR} ${STAGEDIR}${DATADIR}/swiftshader ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/libvk_swiftshader.so ${STAGEDIR}${DATADIR} ${INSTALL_DATA} ${WRKSRC}/out/${BUILDTYPE}/vk_swiftshader_icd.json ${STAGEDIR}${DATADIR} .endif post-install-DEBUG-on: ${INSTALL_LIB} ${WRKSRC}/out/${BUILDTYPE}/*.so \ ${STAGEDIR}${DATADIR} ${INSTALL_PROGRAM} ${WRKSRC}/out/${BUILDTYPE}/character_data_generator \ ${STAGEDIR}${DATADIR} .include diff --git a/www/iridium/distinfo b/www/iridium/distinfo index 3055999ba7d9..6afeb3116f56 100644 --- a/www/iridium/distinfo +++ b/www/iridium/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1707058354 -SHA256 (iridium-browser-2024.01.120.tar.xz) = 5a6e4f771ab4402ba590bfe5a213664a40d10bc7a1a72670837c755a0ec6e7ef -SIZE (iridium-browser-2024.01.120.tar.xz) = 1755770488 -SHA256 (disable-privacy-sandbox-13fc15e4ec454e3397f11bdc1bf2627c121a37e8.patch) = 0565deb50e1206c2fa6d0476474ec9504893fc86b3589467ee2406ad10c915fc -SIZE (disable-privacy-sandbox-13fc15e4ec454e3397f11bdc1bf2627c121a37e8.patch) = 3437 +TIMESTAMP = 1719317993 +SHA256 (iridium-browser-2024.06.126.2.tar.xz) = 30ec50b4bf7b64f5f1ebeb3b724bc0ee81ed4e9101fd1f9788210da4145c9d38 +SIZE (iridium-browser-2024.06.126.2.tar.xz) = 2296084036 +SHA256 (pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 +SIZE (pulseaudio-16.1.tar.gz) = 2763111 diff --git a/www/iridium/files/patch-BUILD.gn b/www/iridium/files/patch-BUILD.gn index bcaa979b4bfb..49428a52b18e 100644 --- a/www/iridium/files/patch-BUILD.gn +++ b/www/iridium/files/patch-BUILD.gn @@ -1,89 +1,89 @@ ---- BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ BUILD.gn -@@ -61,7 +61,7 @@ declare_args() { +@@ -65,7 +65,7 @@ declare_args() { root_extra_deps = [] } -if (is_official_build) { +if (is_official_build && !is_bsd) { # An official (maximally optimized!) component (optimized for build times) # build doesn't make sense and usually doesn't work. assert(!is_component_build) -@@ -95,7 +95,6 @@ group("gn_all") { +@@ -97,7 +97,6 @@ group("gn_all") { "//codelabs", "//components:components_unittests", "//components/gwp_asan:gwp_asan_unittests", - "//infra/orchestrator:orchestrator_all", "//net:net_unittests", "//sandbox:sandbox_unittests", "//services:services_unittests", -@@ -415,7 +414,7 @@ group("gn_all") { +@@ -428,7 +427,7 @@ group("gn_all") { } } - if (is_linux || is_chromeos || is_android) { + if ((is_linux && !is_bsd) || is_chromeos || is_android) { deps += [ "//third_party/breakpad:breakpad_unittests", "//third_party/breakpad:core-2-minidump", -@@ -615,6 +614,15 @@ group("gn_all") { +@@ -624,6 +623,15 @@ group("gn_all") { } } + if (is_bsd) { + deps -= [ + "//third_party/breakpad:dump_syms($host_toolchain)", + "//third_party/breakpad:microdump_stackwalk($host_toolchain)", + "//third_party/breakpad:minidump_dump($host_toolchain)", + "//third_party/breakpad:minidump_stackwalk($host_toolchain)", + ] + } + if (is_mac) { deps += [ "//third_party/breakpad:dump_syms", -@@ -664,7 +672,7 @@ group("gn_all") { +@@ -670,7 +678,7 @@ group("gn_all") { host_os == "win") { deps += [ "//chrome/test/mini_installer:mini_installer_tests" ] } - } else if (!is_android && !is_ios && !is_fuchsia) { + } else if (!is_android && !is_ios && !is_fuchsia && !is_bsd) { deps += [ "//third_party/breakpad:symupload($host_toolchain)" ] } -@@ -1085,7 +1093,7 @@ if (use_blink && !is_cronet_build) { +@@ -1090,7 +1098,7 @@ if (use_blink && !is_cronet_build) { ] } - if (!is_chromeos_ash && !is_ios && !is_fuchsia && !is_android && !is_castos) { + if (!is_chromeos_ash && !is_ios && !is_fuchsia && !is_android && !is_castos && !is_bsd) { script_test("chrome_wpt_tests") { script = "//third_party/blink/tools/run_wpt_tests.py" args = [ -@@ -1158,7 +1166,7 @@ if (use_blink && !is_cronet_build) { +@@ -1185,7 +1193,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//content/web_test:web_test_common_mojom_js_data_deps" ] } - if (!is_win && !is_android) { + if (!is_win && !is_android && !is_bsd) { data_deps += [ "//third_party/breakpad:minidump_stackwalk($host_toolchain)" ] } -@@ -1167,7 +1175,7 @@ if (use_blink && !is_cronet_build) { +@@ -1194,7 +1202,7 @@ if (use_blink && !is_cronet_build) { data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ] } - if (is_linux || is_chromeos) { + if ((is_linux && !is_bsd) || is_chromeos) { data_deps += [ "//third_party/breakpad:dump_syms($host_toolchain)" ] } -@@ -1632,7 +1640,7 @@ group("chromium_builder_perf") { +@@ -1654,7 +1662,7 @@ group("chromium_builder_perf") { data_deps += [ "//chrome/test:performance_browser_tests" ] } - if (!is_win) { + if (!is_win && !is_bsd) { data_deps += [ "//third_party/breakpad:minidump_stackwalk($host_toolchain)" ] } diff --git a/www/iridium/files/patch-apps_ui_views_app__window__frame__view.cc b/www/iridium/files/patch-apps_ui_views_app__window__frame__view.cc index 7250ded06794..6db0437dda9f 100644 --- a/www/iridium/files/patch-apps_ui_views_app__window__frame__view.cc +++ b/www/iridium/files/patch-apps_ui_views_app__window__frame__view.cc @@ -1,11 +1,11 @@ ---- apps/ui/views/app_window_frame_view.cc.orig 2024-02-04 14:46:08 UTC +--- apps/ui/views/app_window_frame_view.cc.orig 2024-06-25 12:08:48 UTC +++ apps/ui/views/app_window_frame_view.cc -@@ -149,7 +149,7 @@ gfx::Rect AppWindowFrameView::GetWindowBoundsForClient +@@ -148,7 +148,7 @@ gfx::Rect AppWindowFrameView::GetWindowBoundsForClient gfx::Rect window_bounds = client_bounds; - // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // TODO(crbug.com/40118868): Revisit once build flag switch of lacros-chrome is // complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) // Get the difference between the widget's client area bounds and window // bounds, and grow |window_bounds| by that amount. gfx::Insets native_frame_insets = diff --git a/www/iridium/files/patch-base_BUILD.gn b/www/iridium/files/patch-base_BUILD.gn index 792f67a6822b..46352632be22 100644 --- a/www/iridium/files/patch-base_BUILD.gn +++ b/www/iridium/files/patch-base_BUILD.gn @@ -1,143 +1,156 @@ ---- base/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- base/BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ base/BUILD.gn -@@ -186,7 +186,7 @@ buildflag_header("ios_cronet_buildflags") { +@@ -200,7 +200,7 @@ buildflag_header("ios_cronet_buildflags") { flags = [ "CRONET_BUILD=$is_cronet_build" ] } -enable_message_pump_epoll = is_linux || is_chromeos || is_android +enable_message_pump_epoll = (is_linux || is_chromeos || is_android) && !is_bsd buildflag_header("message_pump_buildflags") { header = "message_pump_buildflags.h" header_dir = "base/message_loop" -@@ -1105,11 +1105,23 @@ component("base") { +@@ -1142,11 +1142,23 @@ component("base") { # Needed for if using newer C++ library than sysroot, except if # building inside the cros_sdk environment - use host_toolchain as a # more robust check for this. - if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos)) && + if (!use_sysroot && (is_android || is_chromeos || (is_linux && !is_castos && !is_bsd)) && host_toolchain != "//build/toolchain/cros:host") { libs += [ "atomic" ] } + # *BSD needs libkvm + if (is_bsd) { + libs += [ "kvm" ] + } + + if (is_freebsd) { + libs += [ + "execinfo", + "util", + ] + } + if (use_allocator_shim) { if (is_apple) { sources += [ "allocator/early_zone_registration_apple.h" ] -@@ -1129,7 +1141,7 @@ component("base") { +@@ -1166,7 +1178,7 @@ component("base") { # Allow more direct string conversions on platforms with native utf8 # strings - if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia) { + if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia || is_bsd) { defines += [ "SYSTEM_NATIVE_UTF8" ] } -@@ -2088,6 +2100,22 @@ component("base") { +@@ -2126,6 +2138,22 @@ component("base") { ] } + if (is_openbsd) { + sources += [ + "process/process_handle_openbsd.cc", + "process/process_iterator_openbsd.cc", + "process/process_metrics_openbsd.cc", + "system/sys_info_openbsd.cc", + ] + } else if (is_freebsd) { + sources += [ + "process/process_handle_freebsd.cc", + "process/process_iterator_freebsd.cc", + "process/process_metrics_freebsd.cc", + "system/sys_info_freebsd.cc", + ] + } + # iOS if (is_ios) { sources += [ -@@ -2220,6 +2248,29 @@ component("base") { +@@ -2271,6 +2299,33 @@ component("base") { } } + if (is_bsd) { + sources -= [ + "files/file_path_watcher_inotify.cc", + "files/scoped_file_linux.cc", ++ "process/set_process_title_linux.cc", ++ "process/set_process_title_linux.h", + "system/sys_info_linux.cc", + "process/process_iterator_linux.cc", + "process/process_linux.cc", + "process/process_metrics_linux.cc", + "process/process_handle_linux.cc", + "profiler/stack_copier_signal.cc", + "profiler/stack_copier_signal.h", + "profiler/thread_delegate_posix.cc", + "profiler/thread_delegate_posix.h", + "threading/platform_thread_linux.cc", ++ "stack_canary_linux.cc", ++ "stack_canary_linux.h", + ] + sources += [ + "files/file_path_watcher_kqueue.cc", + "files/file_path_watcher_kqueue.h", + "files/file_path_watcher_bsd.cc", + "threading/platform_thread_bsd.cc", + ] + } + if (use_blink) { sources += [ "files/file_path_watcher.cc", -@@ -2230,7 +2281,7 @@ component("base") { +@@ -2281,7 +2336,7 @@ component("base") { } if (dep_libevent) { - deps += [ "//third_party/libevent" ] + public_deps += [ "//third_party/libevent" ] } if (use_libevent) { -@@ -3619,7 +3670,7 @@ test("base_unittests") { +@@ -3094,7 +3149,7 @@ if (is_apple) { + } + } + +-if (!is_nacl && (is_linux || is_chromeos)) { ++if (!is_nacl && !is_bsd && (is_linux || is_chromeos)) { + # This test must compile with -fstack-protector-all + source_set("stack_canary_linux_unittests") { + testonly = true +@@ -3743,7 +3798,7 @@ test("base_unittests") { ] } - if (is_linux || is_chromeos) { -+ if ((is_linux || is_chromeos) && !is_bsd) { ++ if (!is_bsd && (is_linux || is_chromeos)) { sources += [ "debug/proc_maps_linux_unittest.cc", "files/scoped_file_linux_unittest.cc", -@@ -3640,7 +3691,7 @@ test("base_unittests") { +@@ -3770,7 +3825,7 @@ test("base_unittests") { "posix/file_descriptor_shuffle_unittest.cc", "posix/unix_domain_socket_unittest.cc", ] - if (!is_nacl && !is_apple) { + if (!is_nacl && !is_apple && !is_bsd) { sources += [ "profiler/stack_base_address_posix_unittest.cc", "profiler/stack_copier_signal_unittest.cc", -@@ -3651,7 +3702,7 @@ test("base_unittests") { +@@ -3781,7 +3836,7 @@ test("base_unittests") { # Allow more direct string conversions on platforms with native utf8 # strings - if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia) { + if (is_apple || is_chromeos || is_castos || is_cast_android || is_fuchsia || is_bsd) { defines += [ "SYSTEM_NATIVE_UTF8" ] } -@@ -3913,7 +3964,7 @@ test("base_unittests") { +@@ -4049,7 +4104,7 @@ test("base_unittests") { } } - if (is_fuchsia || is_linux || is_chromeos) { + if ((is_fuchsia || is_linux || is_chromeos) && !is_bsd) { sources += [ "debug/elf_reader_unittest.cc", "debug/test_elf_image_builder.cc", diff --git a/www/iridium/files/patch-base_allocator_dispatcher_tls.h b/www/iridium/files/patch-base_allocator_dispatcher_tls.h index 639bf65b9f20..ad6f0fbaaae1 100644 --- a/www/iridium/files/patch-base_allocator_dispatcher_tls.h +++ b/www/iridium/files/patch-base_allocator_dispatcher_tls.h @@ -1,11 +1,11 @@ ---- base/allocator/dispatcher/tls.h.orig 2023-11-22 14:00:11 UTC +--- base/allocator/dispatcher/tls.h.orig 2024-06-25 12:08:48 UTC +++ base/allocator/dispatcher/tls.h -@@ -74,7 +74,7 @@ struct BASE_EXPORT MMapAllocator { - partition_alloc::PartitionPageSize(); - #elif BUILDFLAG(IS_APPLE) +@@ -77,7 +77,7 @@ struct BASE_EXPORT MMapAllocator { + constexpr static size_t AllocationChunkSize = 16384; + #elif BUILDFLAG(IS_ANDROID) && defined(ARCH_CPU_64_BITS) constexpr static size_t AllocationChunkSize = 16384; -#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) +#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) constexpr static size_t AllocationChunkSize = 16384; #else constexpr static size_t AllocationChunkSize = 4096; diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni b/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni index 9f74a77c14d5..dc8b7e617b87 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni +++ b/www/iridium/files/patch-base_allocator_partition__allocator_partition__alloc.gni @@ -1,11 +1,20 @@ ---- base/allocator/partition_allocator/partition_alloc.gni.orig 2023-11-22 14:00:11 UTC +--- base/allocator/partition_allocator/partition_alloc.gni.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/partition_alloc.gni -@@ -319,7 +319,7 @@ declare_args() { - # pkeys support is explicitly disabled in all Cronet builds, as some test +@@ -33,7 +33,7 @@ if (is_nacl) { + use_large_empty_slot_span_ring = is_mac + + has_memory_tagging = +- current_cpu == "arm64" && is_clang && !is_asan && (is_linux || is_android) ++ current_cpu == "arm64" && is_clang && !is_asan && !is_bsd && (is_linux || is_android) + + declare_args() { + # Causes all the allocations to be routed via allocator_shim.cc. Usually, +@@ -373,7 +373,7 @@ declare_args() { # dependencies that use partition_allocator are compiled in AOSP against a # version of glibc that does not include pkeys syscall numbers. -- enable_pkeys = is_linux && target_cpu == "x64" && !is_cronet_build -+ enable_pkeys = (is_linux && !is_bsd) && target_cpu == "x64" && !is_cronet_build + enable_pkeys = +- (is_linux || is_chromeos) && target_cpu == "x64" && !is_cronet_build ++ !is_bsd && (is_linux || is_chromeos) && target_cpu == "x64" && !is_cronet_build } - assert(!enable_pkeys || (is_linux && target_cpu == "x64"), - "Pkeys are only supported on x64 linux") + assert(!enable_pkeys || ((is_linux || is_chromeos) && target_cpu == "x64"), + "Pkeys are only supported on x64 linux and ChromeOS") diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn index 4377b0bdc43c..db1eb5bf0dd6 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_BUILD.gn @@ -1,11 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/BUILD.gn -@@ -582,7 +582,7 @@ source_set("allocator_shim") { - ] - configs += [ ":mac_no_default_new_delete_symbols" ] +@@ -884,7 +884,7 @@ if (is_clang_or_gcc) { + configs -= [ "//build/config/compiler:enable_arc" ] + } } - if (is_chromeos || is_linux) { + if ((is_chromeos || is_linux) && !is_bsd) { - sources += [ + shim_headers += [ "shim/allocator_shim_override_cpp_symbols.h", "shim/allocator_shim_override_glibc_weak_symbols.h", diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h index e77af8f404bc..52427b418c26 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_address__space__randomization.h @@ -1,20 +1,20 @@ ---- base/allocator/partition_allocator/src/partition_alloc/address_space_randomization.h.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/address_space_randomization.h.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/address_space_randomization.h @@ -38,7 +38,7 @@ AslrMask(uintptr_t bits) { #if defined(ARCH_CPU_64_BITS) - #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) + #if defined(MEMORY_TOOL_REPLACES_ALLOCATOR) && !BUILDFLAG(IS_BSD) // We shouldn't allocate system pages at all for sanitizer builds. However, // we do, and if random hint addresses interfere with address ranges -@@ -124,7 +124,7 @@ AslrMask(uintptr_t bits) { +@@ -125,7 +125,7 @@ AslrMask(uintptr_t bits) { return AslrAddress(0x20000000ULL); } - -- #elif BUILDFLAG(IS_LINUX) -+ #elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #elif defined(ARCH_CPU_ARM64) +- #if BUILDFLAG(IS_LINUX) ++ #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux on arm64 can use 39, 42, 48, or 52-bit user space, depending on // page size and number of levels of translation pages used. We use diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h index dea3ce62bacd..efd3c2440ee3 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator.h @@ -1,11 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/page_allocator.h.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/page_allocator.h.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/page_allocator.h -@@ -258,7 +258,7 @@ void DecommitAndZeroSystemPages(void* address, +@@ -259,7 +259,7 @@ bool DecommitAndZeroSystemPages(void* address, // recommitted. Do not assume that this will not change over time. constexpr PA_COMPONENT_EXPORT( PARTITION_ALLOC) bool DecommittedMemoryIsAlwaysZeroed() { -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) return false; #else return true; diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__constants.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__constants.h index d63e414a5d58..d0ca9bf1c7a2 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__constants.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__constants.h @@ -1,38 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/page_allocator_constants.h.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/page_allocator_constants.h.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/page_allocator_constants.h -@@ -25,7 +25,7 @@ - // elimination. +@@ -26,7 +26,7 @@ #define PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR __attribute__((const)) --#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) -+#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) + #elif (BUILDFLAG(IS_ANDROID) && defined(ARCH_CPU_64_BITS)) || \ +- (BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64)) ++ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64)) // This should work for all POSIX (if needed), but currently all other // supported OS/architecture combinations use either hard-coded values // (such as x86) or have means to determine these values without needing -@@ -92,7 +92,7 @@ PageAllocationGranularityShift() { - return 14; // 16kB - #elif BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_64_BITS) - return static_cast(vm_page_shift); --#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) -+#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) - // arm64 supports 4kb (shift = 12), 16kb (shift = 14), and 64kb (shift = 16) - // page sizes. Retrieve from or initialize cache. - size_t shift = page_characteristics.shift.load(std::memory_order_relaxed); -@@ -113,7 +113,7 @@ PageAllocationGranularity() { - // This is literally equivalent to |1 << PageAllocationGranularityShift()| - // below, but was separated out for IS_APPLE to avoid << on a non-constexpr. - return vm_page_size; --#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) -+#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) - // arm64 supports 4kb, 16kb, and 64kb page sizes. Retrieve from or - // initialize cache. - size_t size = page_characteristics.size.load(std::memory_order_relaxed); -@@ -152,7 +152,7 @@ SystemPageShift() { - PA_ALWAYS_INLINE PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR size_t - SystemPageSize() { - #if (BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_64_BITS)) || \ -- (BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64)) -+ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64)) - // This is literally equivalent to |1 << SystemPageShift()| below, but was - // separated out for 64-bit IS_APPLE and arm64 on Linux to avoid << on a - // non-constexpr. diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.h index 459d88e12cee..e72ac14bf138 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_page__allocator__internals__posix.h @@ -1,16 +1,16 @@ ---- base/allocator/partition_allocator/src/partition_alloc/page_allocator_internals_posix.h.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/page_allocator_internals_posix.h.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/page_allocator_internals_posix.h -@@ -403,8 +403,12 @@ bool TryRecommitSystemPagesInternal( +@@ -411,8 +411,12 @@ bool TryRecommitSystemPagesInternal( void DiscardSystemPagesInternal(uintptr_t address, size_t length) { void* ptr = reinterpret_cast(address); -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) +#if BUILDFLAG(IS_BSD) + int ret = madvise(ptr, length, MADV_FREE); +#else int ret = madvise(ptr, length, MADV_FREE_REUSABLE); +#endif if (ret) { // MADV_FREE_REUSABLE sometimes fails, so fall back to MADV_DONTNEED. ret = madvise(ptr, length, MADV_DONTNEED); diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__address__space.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__address__space.cc deleted file mode 100644 index 85c3f6efdcb7..000000000000 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__address__space.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_address_space.cc.orig 2024-02-04 14:46:08 UTC -+++ base/allocator/partition_allocator/src/partition_alloc/partition_address_space.cc -@@ -420,7 +420,7 @@ void PartitionAddressSpace::UninitThreadIsolatedPoolFo - } - #endif - --#if BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) -+#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) - - PageCharacteristics page_characteristics; - diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_compiler__specific.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_compiler__specific.h deleted file mode 100644 index 6eb53d8937fa..000000000000 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_compiler__specific.h +++ /dev/null @@ -1,32 +0,0 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/compiler_specific.h.orig 2024-02-04 14:46:08 UTC -+++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/compiler_specific.h -@@ -24,9 +24,9 @@ - // Annotate a function indicating it should not be inlined. - // Use like: - // NOINLINE void DoStuff() { ... } --#if defined(__clang__) && PA_HAS_ATTRIBUTE(noinline) -+#if defined(__clang__) && (__clang_major__ >= 15) && PA_HAS_ATTRIBUTE(noinline) - #define PA_NOINLINE [[clang::noinline]] --#elif defined(COMPILER_GCC) && PA_HAS_ATTRIBUTE(noinline) -+#elif (defined(COMPILER_GCC) || defined(__clang__)) && PA_HAS_ATTRIBUTE(noinline) - #define PA_NOINLINE __attribute__((noinline)) - #elif defined(COMPILER_MSVC) - #define PA_NOINLINE __declspec(noinline) -@@ -34,7 +34,7 @@ - #define PA_NOINLINE - #endif - --#if defined(__clang__) && defined(NDEBUG) && PA_HAS_ATTRIBUTE(always_inline) -+#if defined(__clang__) && (__clang_major__ >= 15) && defined(NDEBUG) && PA_HAS_ATTRIBUTE(always_inline) - #define PA_ALWAYS_INLINE [[clang::always_inline]] inline - #elif defined(COMPILER_GCC) && defined(NDEBUG) && \ - PA_HAS_ATTRIBUTE(always_inline) -@@ -53,7 +53,7 @@ - // prevent code folding, see NO_CODE_FOLDING() in base/debug/alias.h. - // Use like: - // void NOT_TAIL_CALLED FooBar(); --#if defined(__clang__) && PA_HAS_ATTRIBUTE(not_tail_called) -+#if defined(__clang__) && (__clang_major__ >= 15) && PA_HAS_ATTRIBUTE(not_tail_called) - #define PA_NOT_TAIL_CALLED [[clang::not_tail_called]] - #else - #define PA_NOT_TAIL_CALLED diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_debug_stack__trace__posix.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_debug_stack__trace__posix.cc index 39664c066954..66f3bc86b67a 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_debug_stack__trace__posix.cc +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_debug_stack__trace__posix.cc @@ -1,34 +1,34 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/debug/stack_trace_posix.cc.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/debug/stack_trace_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/debug/stack_trace_posix.cc -@@ -12,11 +12,11 @@ - #include - #include +@@ -13,11 +13,11 @@ + #include "partition_alloc/partition_alloc_base/posix/eintr_wrapper.h" + #include "partition_alloc/partition_alloc_base/strings/safe_sprintf.h" -#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) #include // For ElfW() macro. #endif -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) - #define HAVE_DLADDR #include #endif + @@ -25,7 +25,7 @@ namespace partition_alloc::internal::base::debug { namespace { -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) - constexpr size_t kBufferSize = 4096u; - -@@ -359,7 +359,7 @@ void PrintStackTraceInternal(const void** trace, size_ + // On Android the 'open' function has two versions: + // int open(const char *pathname, int flags); +@@ -369,7 +369,7 @@ void PrintStackTraceInternal(const void** trace, size_ } #endif // !BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) // Since /proc/self/maps is not available, use dladdr() to obtain module // names and offsets inside the modules from the given addresses. void PrintStackTraceInternal(const void* const* trace, size_t size) { diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_rand__util__posix.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_rand__util__posix.cc index 5756b2a79d89..d198a4fc79d0 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_rand__util__posix.cc +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_rand__util__posix.cc @@ -1,13 +1,13 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/rand_util_posix.cc.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/rand_util_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/rand_util_posix.cc -@@ -90,6 +90,10 @@ void RandBytes(void* output, size_t output_length) { +@@ -102,6 +102,10 @@ void RandBytes(void* output, size_t output_length) { if (getentropy(output, output_length) == 0) { return; } +#elif BUILDFLAG(IS_BSD) + if (getentropy(output, output_length) == 0) { + return; + } #endif // If getrandom(2) above returned with an error and the /dev/urandom fallback // took place on Linux/ChromeOS bots, they would fail with a CHECK in diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_strings_safe__sprintf.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_strings_safe__sprintf.h deleted file mode 100644 index 9338d4724793..000000000000 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_strings_safe__sprintf.h +++ /dev/null @@ -1,11 +0,0 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/strings/safe_sprintf.h.orig 2024-02-04 14:46:08 UTC -+++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/strings/safe_sprintf.h -@@ -184,7 +184,7 @@ struct Arg { - // - // Warning: don't just do Arg(NULL) here because in some libcs, NULL is an - // alias for nullptr! -- Arg(std::nullptr_t p) : type(INT) { -+ Arg(nullptr_t p) : type(INT) { - integer.i = 0; - // Internally, SafeSprintf expects to represent nulls as integers whose - // width is equal to sizeof(NULL), which is not necessarily equal to diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_threading_platform__thread.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_threading_platform__thread.h new file mode 100644 index 000000000000..65eca6297fa2 --- /dev/null +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_threading_platform__thread.h @@ -0,0 +1,11 @@ +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/threading/platform_thread.h.orig 2024-06-25 12:08:48 UTC ++++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/threading/platform_thread.h +@@ -37,6 +37,8 @@ typedef DWORD PlatformThreadId; + typedef zx_handle_t PlatformThreadId; + #elif BUILDFLAG(IS_APPLE) + typedef mach_port_t PlatformThreadId; ++#elif BUILDFLAG(IS_BSD) ++typedef uint64_t PlatformThreadId; + #elif BUILDFLAG(IS_POSIX) + typedef pid_t PlatformThreadId; + #endif diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_threading_platform__thread__posix.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_threading_platform__thread__posix.cc index e51ca1c37435..d527f0375aaf 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_threading_platform__thread__posix.cc +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__base_threading_platform__thread__posix.cc @@ -1,11 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/threading/platform_thread_posix.cc.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/threading/platform_thread_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/threading/platform_thread_posix.cc -@@ -17,7 +17,7 @@ - #include "base/allocator/partition_allocator/src/partition_alloc/partition_alloc_base/threading/platform_thread_internal_posix.h" - #include "build/build_config.h" +@@ -18,7 +18,7 @@ + #include "partition_alloc/partition_alloc_base/logging.h" + #include "partition_alloc/partition_alloc_base/threading/platform_thread_internal_posix.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #include #endif diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__config.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__config.h index cc23a442d192..a373974693a8 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__config.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__config.h @@ -1,29 +1,20 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_config.h -@@ -94,7 +94,7 @@ static_assert(sizeof(void*) != 8, ""); - // POSIX is not only UNIX, e.g. macOS and other OSes. We do use Linux-specific - // features such as futex(2). - #define PA_CONFIG_HAS_LINUX_KERNEL() \ -- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID)) -+ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD)) - - // On some platforms, we implement locking by spinning in userspace, then going - // into the kernel only if there is contention. This requires platform support, -@@ -241,7 +241,7 @@ constexpr bool kUseLazyCommit = false; +@@ -232,7 +232,7 @@ constexpr bool kUseLazyCommit = false; // On these platforms, lock all the partitions before fork(), and unlock after. // This may be required on more platforms in the future. #define PA_CONFIG_HAS_ATFORK_HANDLER() \ - (BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) + (BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) // PartitionAlloc uses PartitionRootEnumerator to acquire all // PartitionRoots at BeforeFork and to release at AfterFork. -@@ -288,7 +288,7 @@ constexpr bool kUseLazyCommit = false; - // Also enabled on ARM64 macOS, as the 16kiB pages on this platform lead to - // larger slot spans. - #define PA_CONFIG_PREFER_SMALLER_SLOT_SPANS() \ -- (BUILDFLAG(IS_LINUX) || (BUILDFLAG(IS_MAC) && defined(ARCH_CPU_ARM64))) -+ (BUILDFLAG(IS_LINUX) || (BUILDFLAG(IS_MAC) && defined(ARCH_CPU_ARM64)) || BUILDFLAG(IS_BSD)) - - // Enable shadow metadata. +@@ -279,7 +279,7 @@ constexpr bool kUseLazyCommit = false; // + // Also enabled on ARM64 macOS and iOS, as the 16kiB pages on this platform lead + // to larger slot spans. +-#if BUILDFLAG(IS_LINUX) || (BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_ARM64)) ++#if BUILDFLAG(IS_LINUX) || (BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_ARM64)) || BUILDFLAG(IS_BSD) + #define PA_CONFIG_PREFER_SMALLER_SLOT_SPANS() 1 + #else + #define PA_CONFIG_PREFER_SMALLER_SLOT_SPANS() 0 diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h index 7b766860fa2d..2d11cdfe5ef4 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__alloc__constants.h @@ -1,21 +1,11 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_constants.h.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_alloc_constants.h.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_alloc_constants.h -@@ -107,7 +107,7 @@ PartitionPageShift() { - return 18; // 256 KiB - } - #elif (BUILDFLAG(IS_APPLE) && defined(ARCH_CPU_64_BITS)) || \ -- (BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64)) -+ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64)) - PA_ALWAYS_INLINE PAGE_ALLOCATOR_CONSTANTS_DECLARE_CONSTEXPR size_t - PartitionPageShift() { - return PageAllocationGranularityShift() + 2; -@@ -309,7 +309,8 @@ constexpr size_t kNumPools = kMaxPoolHandle - 1; +@@ -316,7 +316,7 @@ constexpr size_t kNumPools = kMaxPoolHandle - 1; // 8GB for each of the glued pools). - #if BUILDFLAG(HAS_64_BIT_POINTERS) + #if PA_BUILDFLAG(HAS_64_BIT_POINTERS) #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_IOS) || \ -- BUILDFLAG(ENABLE_POINTER_COMPRESSION) -+ BUILDFLAG(ENABLE_POINTER_COMPRESSION) || \ -+ BUILDFLAG(IS_BSD) +- PA_BUILDFLAG(ENABLE_POINTER_COMPRESSION) ++ PA_BUILDFLAG(ENABLE_POINTER_COMPRESSION) || BUILDFLAG(IS_BSD) constexpr size_t kPoolMaxSize = 8 * kGiB; #else constexpr size_t kPoolMaxSize = 16 * kGiB; diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__page__constants.h b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__page__constants.h deleted file mode 100644 index 952a722d70b2..000000000000 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__page__constants.h +++ /dev/null @@ -1,11 +0,0 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h.orig 2024-02-04 14:46:08 UTC -+++ base/allocator/partition_allocator/src/partition_alloc/partition_page_constants.h -@@ -16,7 +16,7 @@ namespace partition_alloc::internal { - // (1 << 12 or 1 << 14), as checked in PartitionRoot::Init(). And - // PartitionPageSize() is 4 times the OS page size. - static constexpr size_t kMaxSlotsPerSlotSpan = 4 * (1 << 14) / kSmallestBucket; --#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) -+#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) - // System page size can be 4, 16, or 64 kiB on Linux on arm64. 64 kiB is - // currently (kMaxSlotsPerSlotSpanBits == 13) not supported by the code, - // so we use the 16 kiB maximum (64 kiB will crash). diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc index 66e677cbcea7..92d280b775cb 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_partition__root.cc @@ -1,38 +1,29 @@ ---- base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/partition_root.cc.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/partition_root.cc -@@ -47,7 +47,7 @@ +@@ -48,7 +48,7 @@ #include "wow64apiset.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #endif -@@ -281,7 +281,7 @@ void PartitionAllocMallocInitOnce() { +@@ -280,7 +280,7 @@ void PartitionAllocMallocInitOnce() { return; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // When fork() is called, only the current thread continues to execute in the // child process. If the lock is held, but *not* by this thread when fork() is // called, we have a deadlock. -@@ -379,7 +379,7 @@ static size_t PartitionPurgeSlotSpan(PartitionRoot* ro - constexpr size_t kMaxSlotCount = - (PartitionPageSize() * kMaxPartitionPagesPerRegularSlotSpan) / - MinPurgeableSlotSize(); --#elif BUILDFLAG(IS_APPLE) || (BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64)) -+#elif BUILDFLAG(IS_APPLE) || ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64)) - // It's better for slot_usage to be stack-allocated and fixed-size, which - // demands that its size be constexpr. On IS_APPLE and Linux on arm64, - // PartitionPageSize() is always SystemPageSize() << 2, so regardless of -@@ -948,7 +948,7 @@ void PartitionRoot::Init(PartitionOptions opts) { +@@ -957,7 +957,7 @@ void PartitionRoot::Init(PartitionOptions opts) { // apple OSes. PA_CHECK((internal::SystemPageSize() == (size_t{1} << 12)) || (internal::SystemPageSize() == (size_t{1} << 14))); -#elif BUILDFLAG(IS_LINUX) && defined(ARCH_CPU_ARM64) +#elif (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && defined(ARCH_CPU_ARM64) // Check runtime pagesize. Though the code is currently the same, it is // not merged with the IS_APPLE case above as a 1 << 16 case needs to be // added here in the future, to allow 64 kiB pagesize. That is only diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_spinning__mutex.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_spinning__mutex.cc index 9a0ed377f89e..4dd34460888a 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_spinning__mutex.cc +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_spinning__mutex.cc @@ -1,53 +1,53 @@ ---- base/allocator/partition_allocator/src/partition_alloc/spinning_mutex.cc.orig 2024-02-04 14:46:08 UTC +--- base/allocator/partition_allocator/src/partition_alloc/spinning_mutex.cc.orig 2024-06-25 12:08:48 UTC +++ base/allocator/partition_allocator/src/partition_alloc/spinning_mutex.cc -@@ -18,7 +18,16 @@ +@@ -17,7 +17,16 @@ + #endif #if PA_CONFIG(HAS_LINUX_KERNEL) - #include +#if defined(OS_OPENBSD) +#include +#include +#elif defined(OS_FREEBSD) +#include +#include +#include +#else #include +#endif #include #include - #endif // PA_CONFIG(HAS_LINUX_KERNEL) -@@ -108,8 +117,16 @@ void SpinningMutex::FutexWait() { + +@@ -109,8 +118,16 @@ void SpinningMutex::FutexWait() { // |kLockedContended| anymore. Note that even without spurious wakeups, the // value of |state_| is not guaranteed when this returns, as another thread // may get the lock before we get to run. +#if defined(OS_FREEBSD) + int err = _umtx_op(&state_, UMTX_OP_WAIT_UINT_PRIVATE, + kLockedContended, nullptr, nullptr); +#elif defined(OS_OPENBSD) + int err = futex(reinterpret_cast(&state_), FUTEX_WAIT | FUTEX_PRIVATE_FLAG, + kLockedContended, nullptr, nullptr); +#else int err = syscall(SYS_futex, &state_, FUTEX_WAIT | FUTEX_PRIVATE_FLAG, kLockedContended, nullptr, nullptr, 0); +#endif if (err) { // These are programming error, check them. -@@ -121,8 +138,16 @@ void SpinningMutex::FutexWait() { +@@ -122,8 +139,16 @@ void SpinningMutex::FutexWait() { void SpinningMutex::FutexWake() { int saved_errno = errno; +#if defined(OS_FREEBSD) + long retval = _umtx_op(&state_, UMTX_OP_WAKE_PRIVATE, + 1 /* wake up a single waiter */, nullptr, nullptr); +#elif defined(OS_OPENBSD) + long retval = futex(reinterpret_cast(&state_), FUTEX_WAKE | FUTEX_PRIVATE_FLAG, + 1 /* wake up a single waiter */, nullptr, nullptr); +#else long retval = syscall(SYS_futex, &state_, FUTEX_WAKE | FUTEX_PRIVATE_FLAG, 1 /* wake up a single waiter */, nullptr, nullptr, 0); +#endif PA_CHECK(retval != -1); errno = saved_errno; } diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_starscan_stack_stack.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_stack_stack.cc similarity index 84% rename from www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_starscan_stack_stack.cc rename to www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_stack_stack.cc index ec53806b3d46..8e2adb53873b 100644 --- a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_starscan_stack_stack.cc +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_stack_stack.cc @@ -1,50 +1,50 @@ ---- base/allocator/partition_allocator/src/partition_alloc/starscan/stack/stack.cc.orig 2024-02-04 14:46:08 UTC -+++ base/allocator/partition_allocator/src/partition_alloc/starscan/stack/stack.cc +--- base/allocator/partition_allocator/src/partition_alloc/stack/stack.cc.orig 2024-06-25 12:08:48 UTC ++++ base/allocator/partition_allocator/src/partition_alloc/stack/stack.cc @@ -18,6 +18,10 @@ #include #endif +#if BUILDFLAG(IS_BSD) +#include +#endif + #if defined(LIBC_GLIBC) extern "C" void* __libc_stack_end; #endif @@ -48,6 +52,36 @@ void* GetStackTop() { void* GetStackTop() { return pthread_get_stackaddr_np(pthread_self()); +} + +#elif defined(OS_OPENBSD) + +void* GetStackTop() { + stack_t ss; + if (pthread_stackseg_np(pthread_self(), &ss) != 0) + return nullptr; + return reinterpret_cast(ss.ss_sp); +} + +#elif defined(OS_FREEBSD) + +void* GetStackTop() { + pthread_attr_t attr; + int error = pthread_attr_init(&attr); + if (error) { + return nullptr; + } + error = pthread_attr_get_np(pthread_self(), &attr); + if (!error) { + void* base; + size_t size; + error = pthread_attr_getstack(&attr, &base, &size); + PA_CHECK(!error); + pthread_attr_destroy(&attr); + return reinterpret_cast(base) + size; + } + pthread_attr_destroy(&attr); + return nullptr; } #elif BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) diff --git a/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_thread__isolation_pkey.cc b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_thread__isolation_pkey.cc new file mode 100644 index 000000000000..c1614ff45bbe --- /dev/null +++ b/www/iridium/files/patch-base_allocator_partition__allocator_src_partition__alloc_thread__isolation_pkey.cc @@ -0,0 +1,11 @@ +--- base/allocator/partition_allocator/src/partition_alloc/thread_isolation/pkey.cc.orig 2024-06-25 12:08:48 UTC ++++ base/allocator/partition_allocator/src/partition_alloc/thread_isolation/pkey.cc +@@ -16,7 +16,7 @@ + #include "partition_alloc/partition_alloc_check.h" + #include "partition_alloc/thread_isolation/thread_isolation.h" + +-#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) ++#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) + #error "This pkey code is currently only supported on Linux and ChromeOS" + #endif + diff --git a/www/iridium/files/patch-base_base__paths__posix.cc b/www/iridium/files/patch-base_base__paths__posix.cc index 342ba8212e95..bea076c47aa0 100644 --- a/www/iridium/files/patch-base_base__paths__posix.cc +++ b/www/iridium/files/patch-base_base__paths__posix.cc @@ -1,108 +1,108 @@ ---- base/base_paths_posix.cc.orig 2023-11-22 14:00:11 UTC +--- base/base_paths_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/base_paths_posix.cc @@ -15,6 +15,7 @@ #include #include +#include "base/command_line.h" #include "base/environment.h" #include "base/files/file_path.h" #include "base/files/file_util.h" @@ -26,9 +27,13 @@ #include "base/process/process_metrics.h" #include "build/build_config.h" -#if BUILDFLAG(IS_FREEBSD) +#if BUILDFLAG(IS_BSD) #include #include +#if BUILDFLAG(IS_OPENBSD) +#include +#define MAXTOKENS 2 +#endif #elif BUILDFLAG(IS_SOLARIS) || BUILDFLAG(IS_AIX) #include #endif -@@ -48,8 +53,7 @@ bool PathProviderPosix(int key, FilePath* result) { +@@ -49,8 +54,7 @@ bool PathProviderPosix(int key, FilePath* result) { *result = bin_dir; return true; #elif BUILDFLAG(IS_FREEBSD) - int name[] = { CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 }; -- absl::optional bin_dir = StringSysctl(name, std::size(name)); -+ absl::optional bin_dir = StringSysctl({ CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 }); +- std::optional bin_dir = StringSysctl(name, std::size(name)); ++ std::optional bin_dir = StringSysctl({ CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1 }); if (!bin_dir.has_value() || bin_dir.value().length() <= 1) { - NOTREACHED() << "Unable to resolve path."; + NOTREACHED_IN_MIGRATION() << "Unable to resolve path."; return false; -@@ -65,13 +69,65 @@ bool PathProviderPosix(int key, FilePath* result) { +@@ -67,13 +71,65 @@ bool PathProviderPosix(int key, FilePath* result) { *result = FilePath(bin_dir); return true; #elif BUILDFLAG(IS_OPENBSD) || BUILDFLAG(IS_AIX) - // There is currently no way to get the executable path on OpenBSD - char* cpath; - if ((cpath = getenv("CHROME_EXE_PATH")) != NULL) - *result = FilePath(cpath); - else - *result = FilePath("/usr/local/chrome/chrome"); - return true; + char *cpath; +#if !BUILDFLAG(IS_AIX) + struct kinfo_file *files; + kvm_t *kd = NULL; + char errbuf[_POSIX2_LINE_MAX]; + static char retval[PATH_MAX]; + int cnt; + struct stat sb; + pid_t cpid = getpid(); + bool ret = false; + + const base::CommandLine* command_line = + base::CommandLine::ForCurrentProcess(); + + VLOG(1) << "PathProviderPosix argv: " << command_line->argv()[0]; + + if (realpath(command_line->argv()[0].c_str(), retval) == NULL) + goto out; + + if (stat(command_line->argv()[0].c_str(), &sb) < 0) + goto out; + + if (!command_line->HasSwitch("no-sandbox")) { + ret = true; + *result = FilePath(retval); + VLOG(1) << "PathProviderPosix (sandbox) result: " << retval; + goto out; + } + -+ if ((kd = kvm_openfiles(NULL, NULL, NULL, KVM_NO_FILES, errbuf)) == NULL) ++ if ((kd = kvm_openfiles(NULL, NULL, NULL, (int)KVM_NO_FILES, errbuf)) == NULL) + goto out; + + if ((files = kvm_getfiles(kd, KERN_FILE_BYPID, cpid, + sizeof(struct kinfo_file), &cnt)) == NULL) + goto out; + + for (int i = 0; i < cnt; i++) { + if (files[i].fd_fd == KERN_FILE_TEXT && + files[i].va_fsid == static_cast(sb.st_dev) && + files[i].va_fileid == sb.st_ino) { + ret = true; + *result = FilePath(retval); + VLOG(1) << "PathProviderPosix result: " << retval; + } + } +out: + if (kd) + kvm_close(kd); + if (!ret) { +#endif + if ((cpath = getenv("IRIDIUM_EXE_PATH")) != NULL) + *result = FilePath(cpath); + else + *result = FilePath("/usr/local/iridium/iridium"); + return true; +#if !BUILDFLAG(IS_AIX) + } + return ret; +#endif #endif } case DIR_SRC_TEST_DATA_ROOT: { diff --git a/www/iridium/files/patch-base_base__switches.cc b/www/iridium/files/patch-base_base__switches.cc deleted file mode 100644 index 445a229c7fca..000000000000 --- a/www/iridium/files/patch-base_base__switches.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- base/base_switches.cc.orig 2023-10-21 11:51:27 UTC -+++ base/base_switches.cc -@@ -180,7 +180,7 @@ const char kPackageVersionName[] = "package-version-na - const char kPackageVersionCode[] = "package-version-code"; - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // TODO(crbug.com/1176772): Remove kEnableCrashpad and IsCrashpadEnabled() when - // Crashpad is fully enabled on Linux. Indicates that Crashpad should be - // enabled. diff --git a/www/iridium/files/patch-base_base__switches.h b/www/iridium/files/patch-base_base__switches.h deleted file mode 100644 index bffd05debcb2..000000000000 --- a/www/iridium/files/patch-base_base__switches.h +++ /dev/null @@ -1,11 +0,0 @@ ---- base/base_switches.h.orig 2023-10-21 11:51:27 UTC -+++ base/base_switches.h -@@ -62,7 +62,7 @@ extern const char kPackageVersionName[]; - extern const char kPackageVersionCode[]; - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - // TODO(crbug.com/1176772): Remove kEnableCrashpad and IsCrashpadEnabled() when - // Crashpad is fully enabled on Linux. - extern const char kEnableCrashpad[]; diff --git a/www/iridium/files/patch-base_compiler__specific.h b/www/iridium/files/patch-base_compiler__specific.h index 68ec17479a8a..e6258c63b357 100644 --- a/www/iridium/files/patch-base_compiler__specific.h +++ b/www/iridium/files/patch-base_compiler__specific.h @@ -1,35 +1,11 @@ ---- base/compiler_specific.h.orig 2023-07-24 14:27:53 UTC +--- base/compiler_specific.h.orig 2024-06-25 12:08:48 UTC +++ base/compiler_specific.h -@@ -41,9 +41,9 @@ - // Annotate a function indicating it should not be inlined. - // Use like: - // NOINLINE void DoStuff() { ... } --#if defined(__clang__) && HAS_ATTRIBUTE(noinline) -+#if defined(__clang__) && (__clang_major__ >= 15) && HAS_ATTRIBUTE(noinline) - #define NOINLINE [[clang::noinline]] --#elif defined(COMPILER_GCC) && HAS_ATTRIBUTE(noinline) -+#elif (defined(COMPILER_GCC) || defined(__clang__)) && HAS_ATTRIBUTE(noinline) - #define NOINLINE __attribute__((noinline)) - #elif defined(COMPILER_MSVC) - #define NOINLINE __declspec(noinline) -@@ -51,9 +51,9 @@ - #define NOINLINE - #endif - --#if defined(__clang__) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) -+#if defined(__clang__) && (__clang_major__ >= 15) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) - #define ALWAYS_INLINE [[clang::always_inline]] inline --#elif defined(COMPILER_GCC) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) -+#elif (defined(COMPILER_GCC) || defined(__clang__)) && defined(NDEBUG) && HAS_ATTRIBUTE(always_inline) - #define ALWAYS_INLINE inline __attribute__((__always_inline__)) - #elif defined(COMPILER_MSVC) && defined(NDEBUG) - #define ALWAYS_INLINE __forceinline -@@ -69,7 +69,7 @@ - // prevent code folding, see NO_CODE_FOLDING() in base/debug/alias.h. - // Use like: - // NOT_TAIL_CALLED void FooBar(); --#if defined(__clang__) && HAS_ATTRIBUTE(not_tail_called) -+#if defined(__clang__) && (__clang_major__ >= 15) && HAS_ATTRIBUTE(not_tail_called) - #define NOT_TAIL_CALLED [[clang::not_tail_called]] +@@ -316,7 +316,7 @@ + // + // In some cases it's desirable to remove this, e.g. on hot functions, or if + // we have purposely changed the reference canary. +-#if defined(COMPILER_GCC) || defined(__clang__) ++#if (defined(COMPILER_GCC) || defined(__clang__)) && !defined(__OpenBSD__) && !defined(__FreeBSD__) + #if HAS_ATTRIBUTE(__no_stack_protector__) + #define NO_STACK_PROTECTOR __attribute__((__no_stack_protector__)) #else - #define NOT_TAIL_CALLED diff --git a/www/iridium/files/patch-base_debug_debugger__posix.cc b/www/iridium/files/patch-base_debug_debugger__posix.cc index 76478dfc3fd1..949b55d02948 100644 --- a/www/iridium/files/patch-base_debug_debugger__posix.cc +++ b/www/iridium/files/patch-base_debug_debugger__posix.cc @@ -1,68 +1,69 @@ ---- base/debug/debugger_posix.cc.orig 2022-10-05 07:34:01 UTC +--- base/debug/debugger_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/debug/debugger_posix.cc -@@ -35,6 +35,10 @@ +@@ -41,6 +41,10 @@ #include #endif +#if BUILDFLAG(IS_OPENBSD) +#include +#endif + #if BUILDFLAG(IS_FREEBSD) #include #endif -@@ -95,32 +99,51 @@ bool BeingDebugged() { +@@ -100,32 +104,51 @@ bool BeingDebugged() { // Caution: struct kinfo_proc is marked __APPLE_API_UNSTABLE. The source and // binary interfaces may change. +#if BUILDFLAG(IS_OPENBSD) + struct kinfo_proc *info; + size_t info_size; +#else struct kinfo_proc info; size_t info_size = sizeof(info); +#endif #if BUILDFLAG(IS_OPENBSD) if (sysctl(mib, std::size(mib), NULL, &info_size, NULL, 0) < 0) return -1; - mib[5] = (info_size / sizeof(struct kinfo_proc)); +- mib[5] = (info_size / sizeof(struct kinfo_proc)); ++ mib[5] = static_cast((info_size / sizeof(struct kinfo_proc))); + if ((info = reinterpret_cast(malloc(info_size))) == NULL) { + is_set = true; + being_debugged = false; + return being_debugged; + } + + int sysctl_result = sysctl(mib, std::size(mib), info, &info_size, NULL, 0); #endif +#if !BUILDFLAG(IS_OPENBSD) int sysctl_result = sysctl(mib, std::size(mib), &info, &info_size, NULL, 0); +#endif DCHECK_EQ(sysctl_result, 0); if (sysctl_result != 0) { is_set = true; being_debugged = false; - return being_debugged; + goto out; } // This process is being debugged if the P_TRACED flag is set. is_set = true; #if BUILDFLAG(IS_FREEBSD) being_debugged = (info.ki_flag & P_TRACED) != 0; -#elif BUILDFLAG(IS_BSD) - being_debugged = (info.p_flag & P_TRACED) != 0; +#elif BUILDFLAG(IS_OPENBSD) + being_debugged = (info->p_psflags & PS_TRACED) != 0; #else being_debugged = (info.kp_proc.p_flag & P_TRACED) != 0; +#endif + +out: +#if BUILDFLAG(IS_OPENBSD) + free(info); #endif return being_debugged; } diff --git a/www/iridium/files/patch-base_debug_elf__reader.cc b/www/iridium/files/patch-base_debug_elf__reader.cc index c741900b1eb1..76c1247af482 100644 --- a/www/iridium/files/patch-base_debug_elf__reader.cc +++ b/www/iridium/files/patch-base_debug_elf__reader.cc @@ -1,18 +1,13 @@ ---- base/debug/elf_reader.cc.orig 2023-10-21 11:51:27 UTC +--- base/debug/elf_reader.cc.orig 2024-06-25 12:08:48 UTC +++ base/debug/elf_reader.cc -@@ -78,6 +78,7 @@ size_t ReadElfBuildId(const void* elf_mapped_base, - bool found = false; - while (current_section < section_end) { - current_note = reinterpret_cast(current_section); -+#if !BUILDFLAG(IS_BSD) - if (current_note->n_type == NT_GNU_BUILD_ID) { - StringPiece note_name(current_section + sizeof(Nhdr), - current_note->n_namesz); -@@ -87,6 +88,7 @@ size_t ReadElfBuildId(const void* elf_mapped_base, - break; - } - } -+#endif +@@ -50,6 +50,10 @@ using Xword = Elf64_Xword; + + constexpr char kGnuNoteName[] = "GNU"; - size_t section_size = bits::AlignUp(current_note->n_namesz, 4u) + - bits::AlignUp(current_note->n_descsz, 4u) + ++#ifndef NT_GNU_BUILD_ID ++#define NT_GNU_BUILD_ID 3 ++#endif ++ + // Returns a pointer to the header of the ELF binary mapped into memory, or a + // null pointer if the header is invalid. Here and below |elf_mapped_base| is a + // pointer to the start of the ELF image. diff --git a/www/iridium/files/patch-base_debug_proc__maps__linux.cc b/www/iridium/files/patch-base_debug_proc__maps__linux.cc index 40031617638c..90fa0fa91c4f 100644 --- a/www/iridium/files/patch-base_debug_proc__maps__linux.cc +++ b/www/iridium/files/patch-base_debug_proc__maps__linux.cc @@ -1,11 +1,11 @@ ---- base/debug/proc_maps_linux.cc.orig 2022-03-28 18:11:04 UTC +--- base/debug/proc_maps_linux.cc.orig 2024-06-25 12:08:48 UTC +++ base/debug/proc_maps_linux.cc -@@ -13,7 +13,7 @@ +@@ -18,7 +18,7 @@ #include "base/strings/string_split.h" #include "build/build_config.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include #endif diff --git a/www/iridium/files/patch-base_debug_stack__trace.cc b/www/iridium/files/patch-base_debug_stack__trace.cc index dadda63f5fda..710c1c51bd9f 100644 --- a/www/iridium/files/patch-base_debug_stack__trace.cc +++ b/www/iridium/files/patch-base_debug_stack__trace.cc @@ -1,21 +1,29 @@ ---- base/debug/stack_trace.cc.orig 2024-02-04 14:46:08 UTC +--- base/debug/stack_trace.cc.orig 2024-06-25 12:08:48 UTC +++ base/debug/stack_trace.cc -@@ -266,7 +266,9 @@ void StackTrace::Print() const { - } - - void StackTrace::OutputToStream(std::ostream* os) const { -+#if !BUILDFLAG(IS_BSD) - OutputToStreamWithPrefix(os, nullptr); -+#endif - } +@@ -254,7 +254,7 @@ bool StackTrace::WillSymbolizeToStreamForTesting() { + // Symbols are not expected to be reliable when gn args specifies + // symbol_level=0. + return false; +-#elif defined(__UCLIBC__) || defined(_AIX) ++#elif defined(__UCLIBC__) || defined(_AIX) || BUILDFLAG(IS_BSD) + // StackTrace::OutputToStream() is not implemented under uclibc, nor AIX. + // See https://crbug.com/706728 + return false; +@@ -316,7 +316,7 @@ std::string StackTrace::ToString() const { - std::string StackTrace::ToString() const { -@@ -274,7 +276,7 @@ std::string StackTrace::ToString() const { - } - std::string StackTrace::ToStringWithPrefix(const char* prefix_string) const { + std::string StackTrace::ToStringWithPrefix(cstring_view prefix_string) const { std::stringstream stream; -#if !defined(__UCLIBC__) && !defined(_AIX) +#if !defined(__UCLIBC__) && !defined(_AIX) && !BUILDFLAG(IS_BSD) OutputToStreamWithPrefix(&stream, prefix_string); #endif return stream.str(); +@@ -340,7 +340,7 @@ bool StackTrace::ShouldSuppressOutput() { + } + + std::ostream& operator<<(std::ostream& os, const StackTrace& s) { +-#if !defined(__UCLIBC__) && !defined(_AIX) ++#if !defined(__UCLIBC__) && !defined(_AIX) && !BUILDFLAG(IS_BSD) + s.OutputToStream(&os); + #else + os << "StackTrace::OutputToStream not implemented."; diff --git a/www/iridium/files/patch-base_debug_stack__trace__posix.cc b/www/iridium/files/patch-base_debug_stack__trace__posix.cc index 74c64bda5671..87fad828a871 100644 --- a/www/iridium/files/patch-base_debug_stack__trace__posix.cc +++ b/www/iridium/files/patch-base_debug_stack__trace__posix.cc @@ -1,101 +1,101 @@ ---- base/debug/stack_trace_posix.cc.orig 2023-11-22 14:00:11 UTC +--- base/debug/stack_trace_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/debug/stack_trace_posix.cc -@@ -41,7 +41,7 @@ +@@ -46,7 +46,7 @@ // execinfo.h and backtrace(3) are really only present in glibc and in macOS // libc. #if BUILDFLAG(IS_APPLE) || \ - (defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(__AIX)) + (defined(__GLIBC__) && !defined(__UCLIBC__) && !defined(__AIX) && !BUILDFLAG(IS_BSD)) #define HAVE_BACKTRACE #include #endif -@@ -59,8 +59,10 @@ +@@ -64,8 +64,10 @@ #include #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +#if !BUILDFLAG(IS_BSD) #include +#endif #include "base/debug/proc_maps_linux.h" #endif -@@ -302,7 +304,7 @@ void PrintToStderr(const char* output) { +@@ -306,7 +308,7 @@ void PrintToStderr(const char* output) { std::ignore = HANDLE_EINTR(write(STDERR_FILENO, output, strlen(output))); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void AlarmSignalHandler(int signal, siginfo_t* info, void* void_context) { // We have seen rare cases on AMD linux where the default signal handler // either does not run or a thread (Probably an AMD driver thread) prevents -@@ -319,7 +321,11 @@ void AlarmSignalHandler(int signal, siginfo_t* info, v +@@ -323,7 +325,11 @@ void AlarmSignalHandler(int signal, siginfo_t* info, v "Warning: Default signal handler failed to terminate process.\n"); PrintToStderr("Calling exit_group() directly to prevent timeout.\n"); // See: https://man7.org/linux/man-pages/man2/exit_group.2.html +#if BUILDFLAG(IS_BSD) + _exit(EXIT_FAILURE); +#else syscall(SYS_exit_group, EXIT_FAILURE); +#endif } #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || // BUILDFLAG(IS_CHROMEOS) -@@ -536,7 +542,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf +@@ -540,7 +546,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf _exit(EXIT_FAILURE); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Set an alarm to trigger in case the default handler does not terminate // the process. See 'AlarmSignalHandler' for more details. struct sigaction action; -@@ -561,6 +567,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf +@@ -565,6 +571,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf // signals that do not re-raise autonomously), such as signals delivered via // kill() and asynchronous hardware faults such as SEGV_MTEAERR, which would // otherwise be lost when re-raising the signal via raise(). +#if !BUILDFLAG(IS_BSD) long retval = syscall(SYS_rt_tgsigqueueinfo, getpid(), syscall(SYS_gettid), info->si_signo, info); if (retval == 0) { -@@ -575,6 +582,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf +@@ -579,6 +586,7 @@ void StackDumpSignalHandler(int signal, siginfo_t* inf if (errno != EPERM) { _exit(EXIT_FAILURE); } +#endif #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || // BUILDFLAG(IS_CHROMEOS) -@@ -764,6 +772,7 @@ class SandboxSymbolizeHelper { +@@ -768,6 +776,7 @@ class SandboxSymbolizeHelper { return -1; } +#if !BUILDFLAG(IS_BSD) // This class is copied from // third_party/crashpad/crashpad/util/linux/scoped_pr_set_dumpable.h. // It aims at ensuring the process is dumpable before opening /proc/self/mem. -@@ -856,11 +865,15 @@ class SandboxSymbolizeHelper { +@@ -860,11 +869,15 @@ class SandboxSymbolizeHelper { r.base = cur_base; } } +#endif // Parses /proc/self/maps in order to compile a list of all object file names // for the modules that are loaded in the current process. // Returns true on success. bool CacheMemoryRegions() { +#if BUILDFLAG(IS_BSD) + return false; +#else // Reads /proc/self/maps. std::string contents; if (!ReadProcMaps(&contents)) { -@@ -878,6 +891,7 @@ class SandboxSymbolizeHelper { +@@ -882,6 +895,7 @@ class SandboxSymbolizeHelper { is_initialized_ = true; return true; +#endif } // Opens all object files and caches their file descriptors. diff --git a/www/iridium/files/patch-base_features.cc b/www/iridium/files/patch-base_features.cc new file mode 100644 index 000000000000..37e9e3972b81 --- /dev/null +++ b/www/iridium/files/patch-base_features.cc @@ -0,0 +1,20 @@ +--- base/features.cc.orig 2024-06-25 12:08:48 UTC ++++ base/features.cc +@@ -9,7 +9,7 @@ + #include "base/threading/platform_thread.h" + #include "build/buildflag.h" + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #include "base/message_loop/message_pump_libevent.h" + #endif + +@@ -98,7 +98,7 @@ void Init(EmitThreadControllerProfilerMetadata + sequence_manager::internal::ThreadController::InitializeFeatures( + emit_thread_controller_profiler_metadata); + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + MessagePumpLibevent::InitializeFeatures(); + #endif + diff --git a/www/iridium/files/patch-base_files_dir__reader__linux.h b/www/iridium/files/patch-base_files_dir__reader__linux.h index e119fcf240de..a31e0f0a4636 100644 --- a/www/iridium/files/patch-base_files_dir__reader__linux.h +++ b/www/iridium/files/patch-base_files_dir__reader__linux.h @@ -1,39 +1,39 @@ ---- base/files/dir_reader_linux.h.orig 2022-10-05 07:34:01 UTC +--- base/files/dir_reader_linux.h.orig 2024-06-25 12:08:48 UTC +++ base/files/dir_reader_linux.h -@@ -16,10 +16,16 @@ +@@ -21,10 +21,16 @@ #include "base/logging.h" #include "base/posix/eintr_wrapper.h" +#include "build/build_config.h" + // See the comments in dir_reader_posix.h about this. namespace base { +#if BUILDFLAG(IS_BSD) +#include +typedef struct dirent linux_dirent; +#else struct linux_dirent { uint64_t d_ino; int64_t d_off; -@@ -27,6 +33,7 @@ struct linux_dirent { +@@ -32,6 +38,7 @@ struct linux_dirent { unsigned char d_type; char d_name[0]; }; +#endif class DirReaderLinux { public: -@@ -61,7 +68,11 @@ class DirReaderLinux { +@@ -66,7 +73,11 @@ class DirReaderLinux { if (offset_ != size_) return true; +#if BUILDFLAG(IS_BSD) + const int r = getdents(fd_, reinterpret_cast(buf_), sizeof(buf_)); +#else const long r = syscall(__NR_getdents64, fd_, buf_, sizeof(buf_)); +#endif if (r == 0) return false; if (r < 0) { diff --git a/www/iridium/files/patch-base_files_file__path__watcher.h b/www/iridium/files/patch-base_files_file__path__watcher.h index bfa4562a7d75..f33f15587d2d 100644 --- a/www/iridium/files/patch-base_files_file__path__watcher.h +++ b/www/iridium/files/patch-base_files_file__path__watcher.h @@ -1,11 +1,11 @@ ---- base/files/file_path_watcher.h.orig 2023-03-13 07:33:08 UTC +--- base/files/file_path_watcher.h.orig 2024-06-25 12:08:48 UTC +++ base/files/file_path_watcher.h -@@ -59,7 +59,7 @@ class BASE_EXPORT FilePathWatcher { +@@ -105,7 +105,7 @@ class BASE_EXPORT FilePathWatcher { Type type = Type::kNonRecursive; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // The callback will return the full path to a changed file instead of // the watched path supplied as |path| when Watch is called. // So the full path can be different from the watched path when a folder is diff --git a/www/iridium/files/patch-base_files_file__path__watcher__unittest.cc b/www/iridium/files/patch-base_files_file__path__watcher__unittest.cc index 0a3b52a794ec..91120d3d5d87 100644 --- a/www/iridium/files/patch-base_files_file__path__watcher__unittest.cc +++ b/www/iridium/files/patch-base_files_file__path__watcher__unittest.cc @@ -1,29 +1,29 @@ ---- base/files/file_path_watcher_unittest.cc.orig 2024-02-04 14:46:08 UTC +--- base/files/file_path_watcher_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/files/file_path_watcher_unittest.cc -@@ -703,7 +703,7 @@ TEST_F(FilePathWatcherTest, WatchDirectory) { +@@ -847,7 +847,7 @@ TEST_F(FilePathWatcherTest, WatchDirectory) { } delegate.RunUntilEventsMatch(event_expecter); -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && BUILDFLAG(IS_BSD) ASSERT_TRUE(WriteFile(file1, "content v2")); // Mac implementation does not detect files modified in a directory. - // TODO(https://crbug.com/1432064): Expect that no events are fired on Mac. -@@ -1639,7 +1639,7 @@ namespace { + // TODO(crbug.com/40263777): Expect that no events are fired on Mac. +@@ -1783,7 +1783,7 @@ namespace { enum Permission { Read, Write, Execute }; -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) bool ChangeFilePermissions(const FilePath& path, Permission perm, bool allow) { struct stat stat_buf; -@@ -1673,7 +1673,7 @@ bool ChangeFilePermissions(const FilePath& path, Permi +@@ -1817,7 +1817,7 @@ bool ChangeFilePermissions(const FilePath& path, Permi } // namespace -#if BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_APPLE) && BUILDFLAG(IS_BSD) // Linux implementation of FilePathWatcher doesn't catch attribute changes. // http://crbug.com/78043 // Windows implementation of FilePathWatcher catches attribute changes that diff --git a/www/iridium/files/patch-base_files_file__util__posix.cc b/www/iridium/files/patch-base_files_file__util__posix.cc index cd7bd14bde7e..49dcfc67de0c 100644 --- a/www/iridium/files/patch-base_files_file__util__posix.cc +++ b/www/iridium/files/patch-base_files_file__util__posix.cc @@ -1,53 +1,53 @@ ---- base/files/file_util_posix.cc.orig 2023-11-22 14:00:11 UTC +--- base/files/file_util_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/files/file_util_posix.cc -@@ -756,33 +756,34 @@ bool CreateDirectoryAndGetError(const FilePath& full_p +@@ -819,33 +819,34 @@ bool CreateDirectoryAndGetError(const FilePath& full_p File::Error* error) { ScopedBlockingCall scoped_blocking_call( FROM_HERE, BlockingType::MAY_BLOCK); // For call to mkdir(). + const FilePath kFileSystemRoot("/"); std::vector subpaths; // Collect a list of all parent directories. FilePath last_path = full_path; - subpaths.push_back(full_path); + if (full_path != kFileSystemRoot) + subpaths.push_back(full_path); for (FilePath path = full_path.DirName(); - path.value() != last_path.value(); path = path.DirName()) { + (path.value() != last_path.value() && + (path != kFileSystemRoot)); path = path.DirName()) { subpaths.push_back(path); last_path = path; } // Iterate through the parents and create the missing ones. for (const FilePath& subpath : base::Reversed(subpaths)) { - if (DirectoryExists(subpath)) - continue; - if (mkdir(subpath.value().c_str(), 0700) == 0) - continue; - // Mkdir failed, but it might have failed with EEXIST, or some other error - // due to the directory appearing out of thin air. This can occur if - // two processes are trying to create the same file system tree at the same - // time. Check to see if it exists and make sure it is a directory. - int saved_errno = errno; - if (!DirectoryExists(subpath)) { - if (error) - *error = File::OSErrorToFileError(saved_errno); - errno = saved_errno; - return false; + if (!PathExists(subpath)) { + if ((mkdir(subpath.value().c_str(), 0700) == -1) && + ((full_path != subpath) ? (errno != ENOENT) : (-1))) { + int saved_errno = errno; + if (error) + *error = File::OSErrorToFileError(saved_errno); + return false; + } + } else if (!DirectoryExists(subpath)) { + if (error) + *error = File::OSErrorToFileError(ENOTDIR); + return false; } } return true; diff --git a/www/iridium/files/patch-base_files_file__util__unittest.cc b/www/iridium/files/patch-base_files_file__util__unittest.cc index 930a3aa748f3..a598dd97aa06 100644 --- a/www/iridium/files/patch-base_files_file__util__unittest.cc +++ b/www/iridium/files/patch-base_files_file__util__unittest.cc @@ -1,20 +1,20 @@ ---- base/files/file_util_unittest.cc.orig 2024-02-04 14:46:08 UTC +--- base/files/file_util_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/files/file_util_unittest.cc -@@ -3878,7 +3878,7 @@ TEST_F(FileUtilTest, ReadFileToStringWithNamedPipe) { +@@ -3835,7 +3835,7 @@ TEST_F(FileUtilTest, ReadFileToStringWithNamedPipe) { } #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) TEST_F(FileUtilTest, ReadFileToStringWithProcFileSystem) { FilePath file_path("/proc/cpuinfo"); std::string data = "temp"; -@@ -4601,7 +4601,7 @@ TEST(FileUtilMultiThreadedTest, MultiThreadedTempFiles +@@ -4568,7 +4568,7 @@ TEST(FileUtilMultiThreadedTest, MultiThreadedTempFiles NULL); #else size_t bytes_written = - ::write(::fileno(output_file.get()), content.c_str(), content.length()); + ::write(fileno(output_file.get()), content.c_str(), content.length()); #endif EXPECT_EQ(content.length(), bytes_written); ::fflush(output_file.get()); diff --git a/www/iridium/files/patch-base_functional_unretained__traits.h b/www/iridium/files/patch-base_functional_unretained__traits.h index b8fd9eb21ddb..b550ad298cd6 100644 --- a/www/iridium/files/patch-base_functional_unretained__traits.h +++ b/www/iridium/files/patch-base_functional_unretained__traits.h @@ -1,11 +1,11 @@ ---- base/functional/unretained_traits.h.orig 2023-03-13 07:33:08 UTC +--- base/functional/unretained_traits.h.orig 2024-06-25 12:08:48 UTC +++ base/functional/unretained_traits.h -@@ -130,7 +130,7 @@ struct TypeSupportsUnretained { +@@ -93,7 +93,7 @@ struct SupportsUnretainedImpl { // official builds, and then in non-test code as well. - #if !defined(UNIT_TEST) && !defined(OFFICIAL_BUILD) - #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ -- defined(FORCE_UNRETAINED_COMPLETENESS_CHECKS_FOR_TESTS) -+ || BUILDFLAGS(IS_BSD) || defined(FORCE_UNRETAINED_COMPLETENESS_CHECKS_FOR_TESTS) - static_assert(IsCompleteTypeV || - IsIncompleteTypeSafeForUnretained>, - "T must be fully defined."); + #if defined(FORCE_UNRETAINED_COMPLETENESS_CHECKS_FOR_TESTS) || \ + (!defined(UNIT_TEST) && !defined(OFFICIAL_BUILD) && \ +- (BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN))) ++ (BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD))) + static_assert(v, + "Argument requires unretained storage, but type is not " + "fully defined. This prevents determining whether " diff --git a/www/iridium/files/patch-base_i18n_icu__util.cc b/www/iridium/files/patch-base_i18n_icu__util.cc index 6d80883d26dd..aa891a646d72 100644 --- a/www/iridium/files/patch-base_i18n_icu__util.cc +++ b/www/iridium/files/patch-base_i18n_icu__util.cc @@ -1,20 +1,20 @@ ---- base/i18n/icu_util.cc.orig 2023-10-21 11:51:27 UTC +--- base/i18n/icu_util.cc.orig 2024-06-25 12:08:48 UTC +++ base/i18n/icu_util.cc -@@ -51,7 +51,7 @@ +@@ -52,7 +52,7 @@ #include "third_party/icu/source/common/unicode/unistr.h" #endif -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || \ +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) || \ BUILDFLAG(IS_CHROMEOS) || (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) #include "third_party/icu/source/i18n/unicode/timezone.h" #endif -@@ -345,7 +345,7 @@ void InitializeIcuTimeZone() { +@@ -328,7 +328,7 @@ void InitializeIcuTimeZone() { FuchsiaIntlProfileWatcher::GetPrimaryTimeZoneIdForIcuInitialization(); icu::TimeZone::adoptDefault( icu::TimeZone::createTimeZone(icu::UnicodeString::fromUTF8(zone_id))); -#elif BUILDFLAG(IS_CHROMEOS) || (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) +#elif BUILDFLAG(IS_CHROMEOS) || (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CASTOS)) || BUILDFLAG(IS_BSD) // To respond to the time zone change properly, the default time zone // cache in ICU has to be populated on starting up. // See TimeZoneMonitorLinux::NotifyClientsFromImpl(). diff --git a/www/iridium/files/patch-base_linux__util.cc b/www/iridium/files/patch-base_linux__util.cc index 632c8d021f97..bab19f9fc248 100644 --- a/www/iridium/files/patch-base_linux__util.cc +++ b/www/iridium/files/patch-base_linux__util.cc @@ -1,25 +1,17 @@ ---- base/linux_util.cc.orig 2024-02-04 14:46:08 UTC +--- base/linux_util.cc.orig 2024-06-25 12:08:48 UTC +++ base/linux_util.cc -@@ -15,6 +15,7 @@ - - #include - #include -+#include - - #include "base/base_export.h" - #include "base/files/dir_reader_posix.h" -@@ -153,10 +154,14 @@ void SetLinuxDistro(const std::string& distro) { +@@ -154,10 +154,14 @@ void SetLinuxDistro(const std::string& distro) { } bool GetThreadsForProcess(pid_t pid, std::vector* tids) { +#if BUILDFLAG(IS_BSD) + return false; +#else // 25 > strlen("/proc//task") + strlen(std::to_string(INT_MAX)) + 1 = 22 char buf[25]; strings::SafeSPrintf(buf, "/proc/%d/task", pid); return GetThreadsFromProcessDir(buf, tids); +#endif } bool GetThreadsForCurrentProcess(std::vector* tids) { diff --git a/www/iridium/files/patch-base_logging__unittest.cc b/www/iridium/files/patch-base_logging__unittest.cc index fd742f644307..5ad82b3e6ba8 100644 --- a/www/iridium/files/patch-base_logging__unittest.cc +++ b/www/iridium/files/patch-base_logging__unittest.cc @@ -1,31 +1,31 @@ ---- base/logging_unittest.cc.orig 2023-03-13 07:33:08 UTC +--- base/logging_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/logging_unittest.cc -@@ -32,7 +32,7 @@ +@@ -41,7 +41,7 @@ #include "base/posix/eintr_wrapper.h" #endif // BUILDFLAG(IS_POSIX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FREEBSD) #include #endif -@@ -575,14 +575,18 @@ void CheckCrashTestSighandler(int, siginfo_t* info, vo +@@ -579,14 +579,18 @@ void CheckCrashTestSighandler(int, siginfo_t* info, vo // need the arch-specific boilerplate below, which is inspired by breakpad. // At the same time, on OSX, ucontext.h is deprecated but si_addr works fine. uintptr_t crash_addr = 0; -#if BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FREEBSD) crash_addr = reinterpret_cast(info->si_addr); #else // OS_* ucontext_t* context = reinterpret_cast(context_ptr); #if defined(ARCH_CPU_X86) crash_addr = static_cast(context->uc_mcontext.gregs[REG_EIP]); #elif defined(ARCH_CPU_X86_64) +#if BUILDFLAG(IS_OPENBSD) + crash_addr = static_cast(context->sc_rip); +#else crash_addr = static_cast(context->uc_mcontext.gregs[REG_RIP]); +#endif #elif defined(ARCH_CPU_ARMEL) crash_addr = static_cast(context->uc_mcontext.arm_pc); #elif defined(ARCH_CPU_ARM64) diff --git a/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc b/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc index a75f4adc4748..edf464acdcc7 100644 --- a/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc +++ b/www/iridium/files/patch-base_memory_madv__free__discardable__memory__posix.cc @@ -1,21 +1,21 @@ ---- base/memory/madv_free_discardable_memory_posix.cc.orig 2023-07-24 14:27:53 UTC +--- base/memory/madv_free_discardable_memory_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/memory/madv_free_discardable_memory_posix.cc -@@ -306,6 +306,10 @@ void MadvFreeDiscardableMemoryPosix::SetKeepMemoryForT +@@ -311,6 +311,10 @@ void MadvFreeDiscardableMemoryPosix::SetKeepMemoryForT bool MadvFreeDiscardableMemoryPosix::IsResident() const { DFAKE_SCOPED_RECURSIVE_LOCK(thread_collision_warner_); +// XXX mincore +#if BUILDFLAG(IS_BSD) + return false; +#else #if BUILDFLAG(IS_APPLE) std::vector vec(allocated_pages_); #else -@@ -321,6 +325,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons +@@ -326,6 +330,7 @@ bool MadvFreeDiscardableMemoryPosix::IsResident() cons return false; } return true; +#endif } bool MadvFreeDiscardableMemoryPosix::IsDiscarded() const { diff --git a/www/iridium/files/patch-base_memory_platform__shared__memory__region.h b/www/iridium/files/patch-base_memory_platform__shared__memory__region.h index 653ffad33990..04371b430d70 100644 --- a/www/iridium/files/patch-base_memory_platform__shared__memory__region.h +++ b/www/iridium/files/patch-base_memory_platform__shared__memory__region.h @@ -1,29 +1,29 @@ ---- base/memory/platform_shared_memory_region.h.orig 2023-07-24 14:27:53 UTC +--- base/memory/platform_shared_memory_region.h.orig 2024-06-25 12:08:48 UTC +++ base/memory/platform_shared_memory_region.h -@@ -16,7 +16,7 @@ - - #include +@@ -17,7 +17,7 @@ + #include "base/unguessable_token.h" + #include "build/build_config.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) namespace content { class SandboxIPCHandler; } -@@ -83,7 +83,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { +@@ -84,7 +84,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { kMaxValue = GET_SHMEM_TEMP_DIR_FAILURE }; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Structure to limit access to executable region creation. struct ExecutableRegion { private: -@@ -215,7 +215,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { +@@ -216,7 +216,7 @@ class BASE_EXPORT PlatformSharedMemoryRegion { CheckPlatformHandlePermissionsCorrespondToMode); static PlatformSharedMemoryRegion Create(Mode mode, size_t size -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) , bool executable = false #endif diff --git a/www/iridium/files/patch-base_native__library__unittest.cc b/www/iridium/files/patch-base_native__library__unittest.cc index 055b7b4f439e..daa7ef40af77 100644 --- a/www/iridium/files/patch-base_native__library__unittest.cc +++ b/www/iridium/files/patch-base_native__library__unittest.cc @@ -1,11 +1,11 @@ ---- base/native_library_unittest.cc.orig 2022-12-01 10:35:46 UTC +--- base/native_library_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/native_library_unittest.cc -@@ -134,7 +134,7 @@ TEST(NativeLibraryTest, LoadLibrary) { +@@ -133,7 +133,7 @@ TEST(NativeLibraryTest, LoadLibrary) { // versions with respect to symbol resolution scope. // TSan and MSan error out on RTLD_DEEPBIND, https://crbug.com/705255 #if !BUILDFLAG(IS_ANDROID) && !defined(THREAD_SANITIZER) && \ - !defined(MEMORY_SANITIZER) + !defined(MEMORY_SANITIZER) && !BUILDFLAG(IS_BSD) // Verifies that the |prefer_own_symbols| option satisfies its guarantee that // a loaded library will always prefer local symbol resolution before diff --git a/www/iridium/files/patch-base_posix_unix__domain__socket.cc b/www/iridium/files/patch-base_posix_unix__domain__socket.cc index 833309243830..0e84bc17992c 100644 --- a/www/iridium/files/patch-base_posix_unix__domain__socket.cc +++ b/www/iridium/files/patch-base_posix_unix__domain__socket.cc @@ -1,39 +1,57 @@ ---- base/posix/unix_domain_socket.cc.orig 2022-10-05 07:34:01 UTC +--- base/posix/unix_domain_socket.cc.orig 2024-06-25 12:08:48 UTC +++ base/posix/unix_domain_socket.cc -@@ -51,7 +51,7 @@ bool CreateSocketPair(ScopedFD* one, ScopedFD* two) { +@@ -56,7 +56,7 @@ bool CreateSocketPair(ScopedFD* one, ScopedFD* two) { // static bool UnixDomainSocket::EnableReceiveProcessId(int fd) { -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) const int enable = 1; return setsockopt(fd, SOL_SOCKET, SO_PASSCRED, &enable, sizeof(enable)) == 0; #else -@@ -149,7 +149,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, +@@ -82,7 +82,7 @@ bool UnixDomainSocket::SendMsg(int fd, + + struct cmsghdr* cmsg; + msg.msg_control = control_buffer; +-#if BUILDFLAG(IS_APPLE) ++#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) + msg.msg_controllen = checked_cast(control_len); + #else + msg.msg_controllen = control_len; +@@ -90,7 +90,7 @@ bool UnixDomainSocket::SendMsg(int fd, + cmsg = CMSG_FIRSTHDR(&msg); + cmsg->cmsg_level = SOL_SOCKET; + cmsg->cmsg_type = SCM_RIGHTS; +-#if BUILDFLAG(IS_APPLE) ++#if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) + cmsg->cmsg_len = checked_cast(CMSG_LEN(sizeof(int) * fds.size())); + #else + cmsg->cmsg_len = CMSG_LEN(sizeof(int) * fds.size()); +@@ -154,7 +154,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, const size_t kControlBufferSize = CMSG_SPACE(sizeof(int) * kMaxFileDescriptors) -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) // macOS does not support ucred. // macOS supports xucred, but this structure is insufficient. + CMSG_SPACE(sizeof(struct ucred)) -@@ -177,7 +177,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, +@@ -182,7 +182,7 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, wire_fds = reinterpret_cast(CMSG_DATA(cmsg)); wire_fds_len = payload_len / sizeof(int); } -#if !BUILDFLAG(IS_APPLE) +#if !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_BSD) // macOS does not support SCM_CREDENTIALS. if (cmsg->cmsg_level == SOL_SOCKET && cmsg->cmsg_type == SCM_CREDENTIALS) { -@@ -211,6 +211,9 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, +@@ -216,6 +216,9 @@ ssize_t UnixDomainSocket::RecvMsgWithFlags(int fd, socklen_t pid_size = sizeof(pid); if (getsockopt(fd, SOL_LOCAL, LOCAL_PEERPID, &pid, &pid_size) != 0) pid = -1; +#elif BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); + pid = -1; #else // |pid| will legitimately be -1 if we read EOF, so only DCHECK if we // actually received a message. Unfortunately, Linux allows sending zero diff --git a/www/iridium/files/patch-base_posix_unix__domain__socket__unittest.cc b/www/iridium/files/patch-base_posix_unix__domain__socket__unittest.cc index 814adc5174de..f50079609b45 100644 --- a/www/iridium/files/patch-base_posix_unix__domain__socket__unittest.cc +++ b/www/iridium/files/patch-base_posix_unix__domain__socket__unittest.cc @@ -1,11 +1,11 @@ ---- base/posix/unix_domain_socket_unittest.cc.orig 2023-03-13 07:33:08 UTC +--- base/posix/unix_domain_socket_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/posix/unix_domain_socket_unittest.cc -@@ -10,6 +10,8 @@ +@@ -15,6 +15,8 @@ #include #include +#include + #include "base/files/file_util.h" #include "base/files/scoped_file.h" #include "base/functional/bind.h" diff --git a/www/iridium/files/patch-base_process_internal__linux.h b/www/iridium/files/patch-base_process_internal__linux.h new file mode 100644 index 000000000000..c6c8df6c62b7 --- /dev/null +++ b/www/iridium/files/patch-base_process_internal__linux.h @@ -0,0 +1,20 @@ +--- base/process/internal_linux.h.orig 2024-06-25 12:08:48 UTC ++++ base/process/internal_linux.h +@@ -140,6 +140,9 @@ TimeDelta ClockTicksToTimeDelta(int64_t clock_ticks); + // arguments to the lambda. + template + void ForEachProcessTask(base::ProcessHandle process, Lambda&& lambda) { ++#if BUILDFLAG(IS_BSD) ++ return; ++#else + // Iterate through the different threads tracked in /proc//task. + FilePath fd_path = GetProcPidDir(process).Append("task"); + +@@ -159,6 +162,7 @@ void ForEachProcessTask(base::ProcessHandle process, L + FilePath task_path = fd_path.Append(tid_str); + lambda(tid, task_path); + } ++#endif + } + + } // namespace internal diff --git a/www/iridium/files/patch-base_process_kill.h b/www/iridium/files/patch-base_process_kill.h index 7f6d5b957acc..7f96c47919dd 100644 --- a/www/iridium/files/patch-base_process_kill.h +++ b/www/iridium/files/patch-base_process_kill.h @@ -1,11 +1,11 @@ ---- base/process/kill.h.orig 2022-10-05 07:34:01 UTC +--- base/process/kill.h.orig 2024-06-25 12:08:48 UTC +++ base/process/kill.h -@@ -113,7 +113,7 @@ BASE_EXPORT TerminationStatus GetTerminationStatus(Pro +@@ -123,7 +123,7 @@ BASE_EXPORT TerminationStatus GetTerminationStatus(Pro BASE_EXPORT TerminationStatus GetKnownDeadTerminationStatus( ProcessHandle handle, int* exit_code); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Spawns a thread to wait asynchronously for the child |process| to exit // and then reaps it. BASE_EXPORT void EnsureProcessGetsReaped(Process process); diff --git a/www/iridium/files/patch-base_process_launch__posix.cc b/www/iridium/files/patch-base_process_launch__posix.cc index 1b5db755ed4d..3428f661d58d 100644 --- a/www/iridium/files/patch-base_process_launch__posix.cc +++ b/www/iridium/files/patch-base_process_launch__posix.cc @@ -1,12 +1,12 @@ ---- base/process/launch_posix.cc.orig 2022-03-28 18:11:04 UTC +--- base/process/launch_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/launch_posix.cc -@@ -64,6 +64,9 @@ +@@ -66,6 +66,9 @@ #error "macOS should use launch_mac.cc" #endif +#if defined(OS_FREEBSD) +#pragma weak environ +#endif extern char** environ; namespace base { diff --git a/www/iridium/files/patch-base_process_memory__linux.cc b/www/iridium/files/patch-base_process_memory__linux.cc index 8e2512241d51..6e765ec4fb8a 100644 --- a/www/iridium/files/patch-base_process_memory__linux.cc +++ b/www/iridium/files/patch-base_process_memory__linux.cc @@ -1,44 +1,44 @@ ---- base/process/memory_linux.cc.orig 2023-03-13 07:33:08 UTC +--- base/process/memory_linux.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/memory_linux.cc -@@ -20,6 +20,7 @@ +@@ -28,6 +28,7 @@ void __libc_free(void*); namespace base { +#if !BUILDFLAG(IS_BSD) namespace { void ReleaseReservationOrTerminate() { -@@ -29,12 +30,14 @@ void ReleaseReservationOrTerminate() { +@@ -37,12 +38,14 @@ void ReleaseReservationOrTerminate() { } } // namespace +#endif void EnableTerminationOnHeapCorruption() { // On Linux, there nothing to do AFAIK. } void EnableTerminationOnOutOfMemory() { +#if !BUILDFLAG(IS_BSD) // Set the new-out of memory handler. std::set_new_handler(&ReleaseReservationOrTerminate); // If we're using glibc's allocator, the above functions will override -@@ -43,8 +46,10 @@ void EnableTerminationOnOutOfMemory() { - #if BUILDFLAG(USE_ALLOCATOR_SHIM) +@@ -51,8 +54,10 @@ void EnableTerminationOnOutOfMemory() { + #if PA_BUILDFLAG(USE_ALLOCATOR_SHIM) allocator_shim::SetCallNewHandlerOnMallocFailure(true); #endif +#endif } +#if !BUILDFLAG(IS_BSD) // ScopedAllowBlocking() has private constructor and it can only be used in // friend classes/functions. Declaring a class is easier in this situation to // avoid adding more dependency to thread_restrictions.h because of the -@@ -104,6 +109,7 @@ bool AdjustOOMScoreHelper::AdjustOOMScore(ProcessId pr +@@ -112,6 +117,7 @@ bool AdjustOOMScoreHelper::AdjustOOMScore(ProcessId pr bool AdjustOOMScore(ProcessId process, int score) { return AdjustOOMScoreHelper::AdjustOOMScore(process, score); } +#endif bool UncheckedMalloc(size_t size, void** result) { - #if BUILDFLAG(USE_ALLOCATOR_SHIM) + #if PA_BUILDFLAG(USE_ALLOCATOR_SHIM) diff --git a/www/iridium/files/patch-base_process_process__handle.h b/www/iridium/files/patch-base_process_process__handle.h index b28dd6d0d109..12fdc4810bf3 100644 --- a/www/iridium/files/patch-base_process_process__handle.h +++ b/www/iridium/files/patch-base_process_process__handle.h @@ -1,11 +1,11 @@ ---- base/process/process_handle.h.orig 2022-03-28 18:11:04 UTC +--- base/process/process_handle.h.orig 2024-06-25 12:08:48 UTC +++ base/process/process_handle.h -@@ -106,7 +106,7 @@ BASE_EXPORT ProcessId GetCurrentProcId(); +@@ -86,7 +86,7 @@ BASE_EXPORT ProcessId GetCurrentProcId(); // processes may be reused. BASE_EXPORT UniqueProcId GetUniqueIdForProcess(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // When a process is started in a different PID namespace from the browser // process, this function must be called with the process's PID in the browser's // PID namespace in order to initialize its unique ID. Not thread safe. diff --git a/www/iridium/files/patch-base_process_process__handle__freebsd.cc b/www/iridium/files/patch-base_process_process__handle__freebsd.cc index dd603706da74..8c2714f8da10 100644 --- a/www/iridium/files/patch-base_process_process__handle__freebsd.cc +++ b/www/iridium/files/patch-base_process_process__handle__freebsd.cc @@ -1,25 +1,25 @@ ---- base/process/process_handle_freebsd.cc.orig 2023-11-22 14:00:11 UTC +--- base/process/process_handle_freebsd.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_handle_freebsd.cc @@ -3,6 +3,7 @@ // found in the LICENSE file. #include "base/process/process_handle.h" +#include "base/files/file_util.h" #include #include -@@ -19,10 +20,13 @@ namespace base { +@@ -20,10 +21,13 @@ namespace base { ProcessId GetParentProcessId(ProcessHandle process) { struct kinfo_proc info; - size_t length; + size_t length = sizeof(struct kinfo_proc); int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process }; if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) + return -1; + + if (length < sizeof(struct kinfo_proc)) return -1; return info.ki_ppid; diff --git a/www/iridium/files/patch-base_process_process__handle__openbsd.cc b/www/iridium/files/patch-base_process_process__handle__openbsd.cc index cfde3ae9716d..6e18bf7dc366 100644 --- a/www/iridium/files/patch-base_process_process__handle__openbsd.cc +++ b/www/iridium/files/patch-base_process_process__handle__openbsd.cc @@ -1,89 +1,133 @@ ---- base/process/process_handle_openbsd.cc.orig 2022-10-05 07:34:01 UTC +--- base/process/process_handle_openbsd.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_handle_openbsd.cc -@@ -3,8 +3,11 @@ +@@ -3,48 +3,112 @@ // found in the LICENSE file. #include "base/process/process_handle.h" +#include "base/files/file_util.h" #include ++#include +#include +#include ++#include #include #include #include -@@ -12,39 +15,59 @@ + ++#include ++ namespace base { ProcessId GetParentProcessId(ProcessHandle process) { - struct kinfo_proc info; + struct kinfo_proc *info; size_t length; + pid_t ppid; int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process, sizeof(struct kinfo_proc), 0 }; if (sysctl(mib, std::size(mib), NULL, &length, NULL, 0) < 0) return -1; +- mib[5] = (length / sizeof(struct kinfo_proc)); + info = (struct kinfo_proc *)malloc(length); -+ - mib[5] = (length / sizeof(struct kinfo_proc)); - if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) - return -1; ++ mib[5] = static_cast((length / sizeof(struct kinfo_proc))); + +- return info.p_ppid; + if (sysctl(mib, std::size(mib), info, &length, NULL, 0) < 0) { + ppid = -1; + goto out; + } - -- return info.p_ppid; ++ + ppid = info->p_ppid; + +out: + free(info); + return ppid; } FilePath GetProcessExecutablePath(ProcessHandle process) { - struct kinfo_proc kp; -- size_t len; -+ struct kinfo_proc *info; -+ size_t length; -+ char *path = NULL; - int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process, - sizeof(struct kinfo_proc), 0 }; ++ struct kinfo_file *files; ++ kvm_t *kd = NULL; ++ char errbuf[_POSIX2_LINE_MAX]; ++ char **retvalargs, *cpath, retval[PATH_MAX]; ++ int cnt; + size_t len; +- int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process, +- sizeof(struct kinfo_proc), 0 }; ++ char *tokens[2]; ++ struct stat sb; ++ FilePath result; - if (sysctl(mib, std::size(mib), NULL, &len, NULL, 0) == -1) -+ if (sysctl(mib, std::size(mib), NULL, &length, NULL, 0) == -1) - return FilePath(); +- return FilePath(); - mib[5] = (len / sizeof(struct kinfo_proc)); - if (sysctl(mib, std::size(mib), &kp, &len, NULL, 0) < 0) - return FilePath(); - if ((kp.p_flag & P_SYSTEM) != 0) - return FilePath(); - if (strcmp(kp.p_comm, "chrome") == 0) - return FilePath(kp.p_comm); ++ int mib[] = { CTL_KERN, KERN_PROC_ARGS, process, KERN_PROC_ARGV }; - return FilePath(); -+ info = (struct kinfo_proc *)malloc(length); ++ if ((cpath = getenv("CHROME_EXE_PATH")) != NULL) ++ result = FilePath(cpath); ++ else ++ result = FilePath("/usr/local/chrome/chrome"); + -+ mib[5] = (length / sizeof(struct kinfo_proc)); ++ if (sysctl(mib, std::size(mib), NULL, &len, NULL, 0) != -1) { ++ retvalargs = static_cast(malloc(len)); ++ if (!retvalargs) ++ return result; + -+ if (sysctl(mib, std::size(mib), info, &length, NULL, 0) < 0) -+ goto out; ++ if (sysctl(mib, std::size(mib), retvalargs, &len, NULL, 0) < 0) { ++ free(retvalargs); ++ return result; ++ } + -+ if ((info->p_flag & P_SYSTEM) != 0) -+ goto out; ++ if ((*tokens = strtok(retvalargs[0], ":")) == NULL) { ++ free(retvalargs); ++ return result; ++ } + -+ if (strcmp(info->p_comm, "chrome") == 0) { -+ path = info->p_comm; -+ goto out; ++ free(retvalargs); ++ ++ if (tokens[0] == NULL) ++ return result; ++ ++ if (realpath(tokens[0], retval) == NULL) ++ return result; ++ ++ if (stat(retval, &sb) < 0) ++ return result; ++ ++ if ((kd = kvm_openfiles(NULL, NULL, NULL, (int)KVM_NO_FILES, ++ errbuf)) == NULL) ++ return result; ++ ++ if ((files = kvm_getfiles(kd, KERN_FILE_BYPID, process, ++ sizeof(struct kinfo_file), &cnt)) == NULL) { ++ kvm_close(kd); ++ return result; ++ } ++ ++ for (int i = 0; i < cnt; i++) { ++ if (files[i].fd_fd == KERN_FILE_TEXT && ++ files[i].va_fsid == static_cast(sb.st_dev) && ++ files[i].va_fileid == sb.st_ino) { ++ kvm_close(kd); ++ result = FilePath(retval); ++ } ++ } + } + -+out: -+ free(info); -+ return FilePath(path); ++ return result; } } // namespace base diff --git a/www/iridium/files/patch-base_process_process__metrics.cc b/www/iridium/files/patch-base_process_process__metrics.cc index e275cb8d7587..627ac996b1a4 100644 --- a/www/iridium/files/patch-base_process_process__metrics.cc +++ b/www/iridium/files/patch-base_process_process__metrics.cc @@ -1,54 +1,49 @@ ---- base/process/process_metrics.cc.orig 2023-07-24 14:27:53 UTC +--- base/process/process_metrics.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_metrics.cc @@ -17,7 +17,7 @@ namespace base { namespace { #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) int CalculateEventsPerSecond(uint64_t event_count, uint64_t* last_event_count, base::TimeTicks* last_calculated) { @@ -54,7 +54,7 @@ SystemMetrics SystemMetrics::Sample() { SystemMetrics system_metrics; system_metrics.committed_memory_ = GetSystemCommitCharge(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) GetSystemMemoryInfo(&system_metrics.memory_info_); GetVmStatInfo(&system_metrics.vmstat_info_); GetSystemDiskInfo(&system_metrics.disk_info_); @@ -73,7 +73,7 @@ Value::Dict SystemMetrics::ToDict() const { Value::Dict res; res.Set("committed_memory", static_cast(committed_memory_)); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) Value::Dict meminfo = memory_info_.ToDict(); meminfo.Merge(vmstat_info_.ToDict()); res.Set("meminfo", std::move(meminfo)); @@ -100,7 +100,6 @@ std::unique_ptr ProcessMetrics::Create #endif // !BUILDFLAG(IS_MAC) } -#if !BUILDFLAG(IS_FREEBSD) || !BUILDFLAG(IS_POSIX) double ProcessMetrics::GetPlatformIndependentCPUUsage( TimeDelta cumulative_cpu) { TimeTicks time = TimeTicks::Now(); -@@ -126,7 +125,6 @@ double ProcessMetrics::GetPlatformIndependentCPUUsage( - double ProcessMetrics::GetPlatformIndependentCPUUsage() { - return GetPlatformIndependentCPUUsage(GetCumulativeCPUUsage()); +@@ -129,10 +128,9 @@ ProcessMetrics::GetPlatformIndependentCPUUsage() { + return GetPlatformIndependentCPUUsage(cpu_usage); + }); } -#endif - #if BUILDFLAG(IS_WIN) - double ProcessMetrics::GetPreciseCPUUsage(TimeDelta cumulative_cpu) { -@@ -157,7 +155,7 @@ double ProcessMetrics::GetPreciseCPUUsage() { - #endif // BUILDFLAG(IS_WIN) - #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) int ProcessMetrics::CalculateIdleWakeupsPerSecond( uint64_t absolute_idle_wakeups) { return CalculateEventsPerSecond(absolute_idle_wakeups, diff --git a/www/iridium/files/patch-base_process_process__metrics.h b/www/iridium/files/patch-base_process_process__metrics.h index 3c8e2959b61b..fe206988269f 100644 --- a/www/iridium/files/patch-base_process_process__metrics.h +++ b/www/iridium/files/patch-base_process_process__metrics.h @@ -1,120 +1,115 @@ ---- base/process/process_metrics.h.orig 2024-02-04 14:46:08 UTC +--- base/process/process_metrics.h.orig 2024-06-25 12:08:48 UTC +++ base/process/process_metrics.h -@@ -37,7 +37,7 @@ +@@ -38,7 +38,7 @@ #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) #include #include #include -@@ -50,7 +50,7 @@ namespace base { - // Full declaration is in process_metrics_iocounters.h. - struct IoCounters; +@@ -48,7 +48,7 @@ + + namespace base { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Minor and major page fault counts since the process creation. // Both counts are process-wide, and exclude child processes. // -@@ -105,7 +105,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -116,7 +116,7 @@ class BASE_EXPORT ProcessMetrics { // convenience wrapper for CreateProcessMetrics(). static std::unique_ptr CreateCurrentProcessMetrics(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Resident Set Size is a Linux/Android specific memory concept. Do not // attempt to extend this to other platforms. BASE_EXPORT size_t GetResidentSetSize() const; -@@ -163,7 +163,7 @@ class BASE_EXPORT ProcessMetrics { - #endif // BUILDFLAG(IS_WIN) +@@ -150,7 +150,7 @@ class BASE_EXPORT ProcessMetrics { + base::expected GetCumulativeCPUUsage(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // Emits the cumulative CPU usage for all currently active threads since they // were started into the output parameter (replacing its current contents). // Threads that have already terminated will not be reported. Thus, the sum of -@@ -219,7 +219,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -195,7 +195,7 @@ class BASE_EXPORT ProcessMetrics { int GetOpenFdSoftLimit() const; #endif // BUILDFLAG(IS_POSIX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Bytes of swap as reported by /proc/[pid]/status. uint64_t GetVmSwapBytes() const; -@@ -240,7 +240,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -216,7 +216,7 @@ class BASE_EXPORT ProcessMetrics { #endif // !BUILDFLAG(IS_MAC) #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) int CalculateIdleWakeupsPerSecond(uint64_t absolute_idle_wakeups); #endif #if BUILDFLAG(IS_APPLE) -@@ -262,9 +262,7 @@ class BASE_EXPORT ProcessMetrics { +@@ -238,12 +238,10 @@ class BASE_EXPORT ProcessMetrics { // Used to store the previous times and CPU usage counts so we can // compute the CPU usage between calls. TimeTicks last_cpu_time_; -#if !BUILDFLAG(IS_FREEBSD) || !BUILDFLAG(IS_POSIX) TimeDelta last_cumulative_cpu_; -#endif - #if BUILDFLAG(IS_WIN) - TimeTicks last_cpu_time_for_precise_cpu_usage_; -@@ -272,7 +270,7 @@ class BASE_EXPORT ProcessMetrics { - #endif - #if BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // Same thing for idle wakeups. TimeTicks last_idle_wakeups_time_; uint64_t last_absolute_idle_wakeups_; -@@ -313,7 +311,7 @@ BASE_EXPORT void IncreaseFdLimitTo(unsigned int max_de +@@ -284,7 +282,7 @@ BASE_EXPORT void IncreaseFdLimitTo(unsigned int max_de #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_LINUX) || \ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_AIX) || \ - BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) // Data about system-wide memory consumption. Values are in KB. Available on // Windows, Mac, Linux, Android and Chrome OS. // -@@ -348,7 +346,7 @@ struct BASE_EXPORT SystemMemoryInfoKB { +@@ -319,7 +317,7 @@ struct BASE_EXPORT SystemMemoryInfoKB { #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // This provides an estimate of available memory as described here: // https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=34e431b0ae398fc54ea69ff85ec700722c9da773 // NOTE: this is ONLY valid in kernels 3.14 and up. Its value will always -@@ -363,7 +361,7 @@ struct BASE_EXPORT SystemMemoryInfoKB { +@@ -334,7 +332,7 @@ struct BASE_EXPORT SystemMemoryInfoKB { #endif #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) int buffers = 0; int cached = 0; int active_anon = 0; -@@ -400,7 +398,7 @@ BASE_EXPORT bool GetSystemMemoryInfo(SystemMemoryInfoK +@@ -371,7 +369,7 @@ BASE_EXPORT bool GetSystemMemoryInfo(SystemMemoryInfoK // BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // Parse the data found in /proc//stat and return the sum of the // CPU-related ticks. Returns -1 on parse error. // Exposed for testing. -@@ -588,7 +586,7 @@ class BASE_EXPORT SystemMetrics { +@@ -566,7 +564,7 @@ class BASE_EXPORT SystemMetrics { FRIEND_TEST_ALL_PREFIXES(SystemMetricsTest, SystemMetrics); size_t committed_memory_; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) SystemMemoryInfoKB memory_info_; VmStatInfo vmstat_info_; SystemDiskInfo disk_info_; diff --git a/www/iridium/files/patch-base_process_process__metrics__freebsd.cc b/www/iridium/files/patch-base_process_process__metrics__freebsd.cc index 60d4fea860d0..8f545ffededa 100644 --- a/www/iridium/files/patch-base_process_process__metrics__freebsd.cc +++ b/www/iridium/files/patch-base_process_process__metrics__freebsd.cc @@ -1,305 +1,307 @@ ---- base/process/process_metrics_freebsd.cc.orig 2023-03-13 07:33:08 UTC +--- base/process/process_metrics_freebsd.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_metrics_freebsd.cc -@@ -3,20 +3,39 @@ +@@ -3,44 +3,58 @@ // found in the LICENSE file. #include "base/process/process_metrics.h" +#include "base/notreached.h" #include +#include #include #include #include +#include /* O_RDONLY */ +#include +#include + #include "base/memory/ptr_util.h" - #include "base/process/process_metrics_iocounters.h" +#include "base/values.h" namespace base { +namespace { +int GetPageShift() { + int pagesize = getpagesize(); + int pageshift = 0; +-ProcessMetrics::ProcessMetrics(ProcessHandle process) +- : process_(process), +- last_cpu_(0) {} + while (pagesize > 1) { + pageshift++; + pagesize >>= 1; + } -+ + + return pageshift; +} +} + - ProcessMetrics::ProcessMetrics(ProcessHandle process) -- : process_(process), -- last_cpu_(0) {} -+ : process_(process) {} - ++ProcessMetrics::ProcessMetrics(ProcessHandle process) : process_(process) {} ++ // static std::unique_ptr ProcessMetrics::CreateProcessMetrics( -@@ -24,22 +43,19 @@ std::unique_ptr ProcessMetrics::Create + ProcessHandle process) { return WrapUnique(new ProcessMetrics(process)); } --double ProcessMetrics::GetPlatformIndependentCPUUsage() { -+TimeDelta ProcessMetrics::GetCumulativeCPUUsage() { +-base::expected +-ProcessMetrics::GetPlatformIndependentCPUUsage() { ++base::expected ++ProcessMetrics::GetCumulativeCPUUsage() { struct kinfo_proc info; - int mib[] = {CTL_KERN, KERN_PROC, KERN_PROC_PID, process_}; - size_t length = sizeof(info); + size_t length = sizeof(struct kinfo_proc); + struct timeval tv; + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_ }; + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) -- return 0; -+ return TimeDelta(); +- return base::unexpected(ProcessCPUUsageError::kSystemError); ++ return base::ok(TimeDelta()); -- return (info.ki_pctcpu / FSCALE) * 100.0; -+ return Microseconds(info.ki_runtime); +- return base::ok(double{info.ki_pctcpu} / FSCALE * 100.0); ++ return base::ok(Microseconds(info.ki_runtime)); } --TimeDelta ProcessMetrics::GetCumulativeCPUUsage() { -- NOTREACHED(); -- return TimeDelta(); +-base::expected +-ProcessMetrics::GetCumulativeCPUUsage() { +- NOTREACHED_IN_MIGRATION(); +- return base::unexpected(ProcessCPUUsageError::kNotImplemented); -} - - bool ProcessMetrics::GetIOCounters(IoCounters* io_counters) const { - return false; - } -@@ -65,6 +81,230 @@ size_t GetSystemCommitCharge() { + size_t GetSystemCommitCharge() { + int mib[2], pagesize; + unsigned long mem_total, mem_free, mem_inactive; +@@ -62,6 +76,230 @@ size_t GetSystemCommitCharge() { pagesize = getpagesize(); return mem_total - (mem_free*pagesize) - (mem_inactive*pagesize); +} + +int64_t GetNumberOfThreads(ProcessHandle process) { + // Taken from FreeBSD top (usr.bin/top/machine.c) + + kvm_t* kd = kvm_open(NULL, "/dev/null", NULL, O_RDONLY, "kvm_open"); + if (kd == NULL) + return 0; + + struct kinfo_proc* pbase; + int nproc; + pbase = kvm_getprocs(kd, KERN_PROC_PID, process, &nproc); + if (pbase == NULL) + return 0; + + if (kvm_close(kd) == -1) + return 0; + + return nproc; +} + +bool GetSystemMemoryInfo(SystemMemoryInfoKB *meminfo) { + unsigned int mem_total, mem_free, swap_total, swap_used; + size_t length; + int pagesizeKB; + + pagesizeKB = getpagesize() / 1024; + + length = sizeof(mem_total); + if (sysctlbyname("vm.stats.vm.v_page_count", &mem_total, + &length, NULL, 0) != 0 || length != sizeof(mem_total)) + return false; + + length = sizeof(mem_free); + if (sysctlbyname("vm.stats.vm.v_free_count", &mem_free, &length, NULL, 0) + != 0 || length != sizeof(mem_free)) + return false; + + length = sizeof(swap_total); + if (sysctlbyname("vm.swap_size", &swap_total, &length, NULL, 0) + != 0 || length != sizeof(swap_total)) + return false; + + length = sizeof(swap_used); + if (sysctlbyname("vm.swap_anon_use", &swap_used, &length, NULL, 0) + != 0 || length != sizeof(swap_used)) + return false; + + meminfo->total = mem_total * pagesizeKB; + meminfo->free = mem_free * pagesizeKB; + meminfo->swap_total = swap_total * pagesizeKB; + meminfo->swap_free = (swap_total - swap_used) * pagesizeKB; + + return true; +} + +int ProcessMetrics::GetOpenFdCount() const { + struct kinfo_file * kif; + int cnt; + + if ((kif = kinfo_getfile(process_, &cnt)) == NULL) + return -1; + + free(kif); + + return cnt; +} + +int ProcessMetrics::GetOpenFdSoftLimit() const { + size_t length; + int total_count = 0; + int mib[] = { CTL_KERN, KERN_MAXFILESPERPROC }; + + length = sizeof(total_count); + + if (sysctl(mib, std::size(mib), &total_count, &length, NULL, 0) < 0) { + total_count = -1; + } + + return total_count; +} + +size_t ProcessMetrics::GetResidentSetSize() const { + kvm_t *kd = kvm_open(nullptr, "/dev/null", nullptr, O_RDONLY, "kvm_open"); + + if (kd == nullptr) + return 0; + + struct kinfo_proc *pp; + int nproc; + + if ((pp = kvm_getprocs(kd, KERN_PROC_PID, process_, &nproc)) == nullptr) { + kvm_close(kd); + return 0; + } -+ ++ + size_t rss; + + if (nproc > 0) { + rss = pp->ki_rssize << GetPageShift(); + } else { + rss = 0; + } + + kvm_close(kd); + return rss; +} + +uint64_t ProcessMetrics::GetVmSwapBytes() const { + kvm_t *kd = kvm_open(nullptr, "/dev/null", nullptr, O_RDONLY, "kvm_open"); + + if (kd == nullptr) + return 0; + + struct kinfo_proc *pp; + int nproc; + + if ((pp = kvm_getprocs(kd, KERN_PROC_PID, process_, &nproc)) == nullptr) { + kvm_close(kd); + return 0; + } -+ ++ + size_t swrss; + + if (nproc > 0) { + swrss = pp->ki_swrss > pp->ki_rssize + ? (pp->ki_swrss - pp->ki_rssize) << GetPageShift() + : 0; + } else { + swrss = 0; + } + + kvm_close(kd); + return swrss; +} + +int ProcessMetrics::GetIdleWakeupsPerSecond() { + NOTIMPLEMENTED(); + return 0; +} + +bool GetSystemDiskInfo(SystemDiskInfo* diskinfo) { + NOTIMPLEMENTED(); + return false; +} + +bool GetVmStatInfo(VmStatInfo* vmstat) { + NOTIMPLEMENTED(); + return false; +} + +SystemDiskInfo::SystemDiskInfo() { + reads = 0; + reads_merged = 0; + sectors_read = 0; + read_time = 0; + writes = 0; + writes_merged = 0; + sectors_written = 0; + write_time = 0; + io = 0; + io_time = 0; + weighted_io_time = 0; +} + +SystemDiskInfo::SystemDiskInfo(const SystemDiskInfo& other) = default; + +SystemDiskInfo& SystemDiskInfo::operator=(const SystemDiskInfo&) = default; + +Value::Dict SystemDiskInfo::ToDict() const { + Value::Dict res; -+ ++ + // Write out uint64_t variables as doubles. + // Note: this may discard some precision, but for JS there's no other option. + res.Set("reads", static_cast(reads)); + res.Set("reads_merged", static_cast(reads_merged)); + res.Set("sectors_read", static_cast(sectors_read)); + res.Set("read_time", static_cast(read_time)); + res.Set("writes", static_cast(writes)); + res.Set("writes_merged", static_cast(writes_merged)); + res.Set("sectors_written", static_cast(sectors_written)); + res.Set("write_time", static_cast(write_time)); + res.Set("io", static_cast(io)); + res.Set("io_time", static_cast(io_time)); + res.Set("weighted_io_time", static_cast(weighted_io_time)); + + NOTIMPLEMENTED(); -+ ++ + return res; +} + +Value::Dict SystemMemoryInfoKB::ToDict() const { + Value::Dict res; + res.Set("total", total); + res.Set("free", free); + res.Set("available", available); + res.Set("buffers", buffers); + res.Set("cached", cached); + res.Set("active_anon", active_anon); + res.Set("inactive_anon", inactive_anon); + res.Set("active_file", active_file); + res.Set("inactive_file", inactive_file); + res.Set("swap_total", swap_total); + res.Set("swap_free", swap_free); + res.Set("swap_used", swap_total - swap_free); + res.Set("dirty", dirty); + res.Set("reclaimable", reclaimable); + + NOTIMPLEMENTED(); + + return res; +} + +Value::Dict VmStatInfo::ToDict() const { + Value::Dict res; + // TODO(crbug.com/1334256): Make base::Value able to hold uint64_t and remove + // casts below. + res.Set("pswpin", static_cast(pswpin)); + res.Set("pswpout", static_cast(pswpout)); + res.Set("pgmajfault", static_cast(pgmajfault)); + + NOTIMPLEMENTED(); + + return res; } } // namespace base diff --git a/www/iridium/files/patch-base_process_process__metrics__openbsd.cc b/www/iridium/files/patch-base_process_process__metrics__openbsd.cc index 292d0cb4f0c0..f6c08ccecb9c 100644 --- a/www/iridium/files/patch-base_process_process__metrics__openbsd.cc +++ b/www/iridium/files/patch-base_process_process__metrics__openbsd.cc @@ -1,219 +1,234 @@ ---- base/process/process_metrics_openbsd.cc.orig 2023-10-21 11:51:27 UTC +--- base/process/process_metrics_openbsd.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_metrics_openbsd.cc -@@ -6,14 +6,23 @@ +@@ -6,75 +6,50 @@ #include #include +#include #include #include +#include +#include + #include "base/memory/ptr_util.h" - #include "base/process/process_metrics_iocounters.h" + #include "base/types/expected.h" +#include "base/values.h" +#include "base/notreached.h" namespace base { -+ProcessMetrics::ProcessMetrics(ProcessHandle process) -+ : process_(process) {} -+ - // static - std::unique_ptr ProcessMetrics::CreateProcessMetrics( - ProcessHandle process) { -@@ -24,49 +33,23 @@ bool ProcessMetrics::GetIOCounters(IoCounters* io_coun - return false; - } +-namespace { ++ProcessMetrics::ProcessMetrics(ProcessHandle process) : process_(process) {} --static int GetProcessCPU(pid_t pid) { -+TimeDelta ProcessMetrics::GetCumulativeCPUUsage() { +-base::expected GetProcessCPU(pid_t pid) { ++base::expected ++ProcessMetrics::GetCumulativeCPUUsage() { struct kinfo_proc info; - size_t length; - int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, pid, - sizeof(struct kinfo_proc), 0 }; + size_t length = sizeof(struct kinfo_proc); + struct timeval tv; -- if (sysctl(mib, std::size(mib), NULL, &length, NULL, 0) < 0) -- return -1; +- if (sysctl(mib, std::size(mib), NULL, &length, NULL, 0) < 0) { +- return base::unexpected(ProcessCPUUsageError::kSystemError); +- } + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, process_, + sizeof(struct kinfo_proc), 1 }; - mib[5] = (length / sizeof(struct kinfo_proc)); - - if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) -- return 0; -+ return TimeDelta(); + if (sysctl(mib, std::size(mib), &info, &length, NULL, 0) < 0) { + return base::unexpected(ProcessCPUUsageError::kSystemError); + } -- return info.p_pctcpu; --} +- return base::ok(info.p_pctcpu); + tv.tv_sec = info.p_rtime_sec; + tv.tv_usec = info.p_rtime_usec; ++ ++ return base::ok(Microseconds(TimeValToMicroseconds(tv))); + } + +-} // namespace +- + // static + std::unique_ptr ProcessMetrics::CreateProcessMetrics( + ProcessHandle process) { + return WrapUnique(new ProcessMetrics(process)); + } --double ProcessMetrics::GetPlatformIndependentCPUUsage() { +-base::expected +-ProcessMetrics::GetPlatformIndependentCPUUsage() { - TimeTicks time = TimeTicks::Now(); - - if (last_cpu_time_.is_zero()) { - // First call, just set the last values. - last_cpu_time_ = time; -- return 0; +- return base::ok(0.0); - } - -- int cpu = GetProcessCPU(process_); +- const base::expected cpu = GetProcessCPU(process_); +- if (!cpu.has_value()) { +- return base::unexpected(cpu.error()); +- } - - last_cpu_time_ = time; -- double percentage = static_cast((cpu * 100.0) / FSCALE); +- return base::ok(double{cpu.value()} / FSCALE * 100.0); +-} - -- return percentage; -+ return Microseconds(TimeValToMicroseconds(tv)); - } - --TimeDelta ProcessMetrics::GetCumulativeCPUUsage() { -- NOTREACHED(); -- return TimeDelta(); +-base::expected +-ProcessMetrics::GetCumulativeCPUUsage() { +- NOTREACHED_IN_MIGRATION(); +- return base::unexpected(ProcessCPUUsageError::kNotImplemented); -} - -ProcessMetrics::ProcessMetrics(ProcessHandle process) - : process_(process), - last_cpu_(0) {} - size_t GetSystemCommitCharge() { int mib[] = { CTL_VM, VM_METER }; - int pagesize; -@@ -84,6 +67,133 @@ size_t GetSystemCommitCharge() { - pagesize = getpagesize(); +- int pagesize; ++ size_t pagesize; + struct vmtotal vmtotal; + unsigned long mem_total, mem_free, mem_inactive; + size_t len = sizeof(vmtotal); +@@ -86,9 +61,136 @@ size_t GetSystemCommitCharge() { + mem_free = vmtotal.t_free; + mem_inactive = vmtotal.t_vm - vmtotal.t_avm; + +- pagesize = getpagesize(); ++ pagesize = checked_cast(getpagesize()); return mem_total - (mem_free*pagesize) - (mem_inactive*pagesize); +} + +int ProcessMetrics::GetOpenFdCount() const { +#if 0 + struct kinfo_file *files; + kvm_t *kd = NULL; + int total_count = 0; + char errbuf[_POSIX2_LINE_MAX]; + + if ((kd = kvm_openfiles(NULL, NULL, NULL, KVM_NO_FILES, errbuf)) == NULL) + goto out; + + if ((files = kvm_getfiles(kd, KERN_FILE_BYPID, process_, + sizeof(struct kinfo_file), &total_count)) == NULL) { + total_count = 0; + goto out; + } + + kvm_close(kd); + +out: + return total_count; +#endif + return getdtablecount(); +} + +int ProcessMetrics::GetOpenFdSoftLimit() const { + return getdtablesize(); +// return GetMaxFds(); +} + +uint64_t ProcessMetrics::GetVmSwapBytes() const { + NOTIMPLEMENTED(); + return 0; +} + +bool GetSystemMemoryInfo(SystemMemoryInfoKB* meminfo) { + NOTIMPLEMENTED_LOG_ONCE(); + return false; +} + +bool GetSystemDiskInfo(SystemDiskInfo* diskinfo) { + NOTIMPLEMENTED(); + return false; +} + +bool GetVmStatInfo(VmStatInfo* vmstat) { + NOTIMPLEMENTED(); + return false; +} + +int ProcessMetrics::GetIdleWakeupsPerSecond() { + NOTIMPLEMENTED(); + return 0; +} + +Value::Dict SystemMemoryInfoKB::ToDict() const { + Value::Dict res; + res.Set("total", total); + res.Set("free", free); + res.Set("available", available); + res.Set("buffers", buffers); + res.Set("cached", cached); + res.Set("active_anon", active_anon); + res.Set("inactive_anon", inactive_anon); + res.Set("active_file", active_file); + res.Set("inactive_file", inactive_file); + res.Set("swap_total", swap_total); + res.Set("swap_free", swap_free); + res.Set("swap_used", swap_total - swap_free); + res.Set("dirty", dirty); + res.Set("reclaimable", reclaimable); + + NOTIMPLEMENTED(); + + return res; +} + +Value::Dict VmStatInfo::ToDict() const { + Value::Dict res; + res.Set("pswpin", static_cast(pswpin)); + res.Set("pswpout", static_cast(pswpout)); + res.Set("pgmajfault", static_cast(pgmajfault)); + + NOTIMPLEMENTED(); + + return res; +} + +SystemDiskInfo::SystemDiskInfo() { + reads = 0; + reads_merged = 0; + sectors_read = 0; + read_time = 0; + writes = 0; + writes_merged = 0; + sectors_written = 0; + write_time = 0; + io = 0; + io_time = 0; + weighted_io_time = 0; +} + +SystemDiskInfo::SystemDiskInfo(const SystemDiskInfo&) = default; + +SystemDiskInfo& SystemDiskInfo::operator=(const SystemDiskInfo&) = default; + +Value::Dict SystemDiskInfo::ToDict() const { + Value::Dict res; + + // Write out uint64_t variables as doubles. + // Note: this may discard some precision, but for JS there's no other option. + res.Set("reads", static_cast(reads)); + res.Set("reads_merged", static_cast(reads_merged)); + res.Set("sectors_read", static_cast(sectors_read)); + res.Set("read_time", static_cast(read_time)); + res.Set("writes", static_cast(writes)); + res.Set("writes_merged", static_cast(writes_merged)); + res.Set("sectors_written", static_cast(sectors_written)); + res.Set("write_time", static_cast(write_time)); + res.Set("io", static_cast(io)); + res.Set("io_time", static_cast(io_time)); + res.Set("weighted_io_time", static_cast(weighted_io_time)); + + NOTIMPLEMENTED(); + + return res; } } // namespace base diff --git a/www/iridium/files/patch-base_process_process__metrics__unittest.cc b/www/iridium/files/patch-base_process_process__metrics__unittest.cc index 37dacc94e7c6..3036e74ca962 100644 --- a/www/iridium/files/patch-base_process_process__metrics__unittest.cc +++ b/www/iridium/files/patch-base_process_process__metrics__unittest.cc @@ -1,18 +1,12 @@ ---- base/process/process_metrics_unittest.cc.orig 2024-02-04 14:46:08 UTC +--- base/process/process_metrics_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_metrics_unittest.cc -@@ -35,13 +35,13 @@ - #include - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - #include "base/process/internal_linux.h" - #endif +@@ -62,7 +62,8 @@ #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_APPLE) -+ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_APPLE) || \ ++ BUILDFLAG(IS_BSD) #define ENABLE_CPU_TESTS 1 #else #define ENABLE_CPU_TESTS 0 diff --git a/www/iridium/files/patch-base_process_process__posix.cc b/www/iridium/files/patch-base_process_process__posix.cc index ae64621914a1..546b12e97a40 100644 --- a/www/iridium/files/patch-base_process_process__posix.cc +++ b/www/iridium/files/patch-base_process_process__posix.cc @@ -1,94 +1,94 @@ ---- base/process/process_posix.cc.orig 2023-10-21 11:51:27 UTC +--- base/process/process_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_posix.cc @@ -23,10 +23,15 @@ #include "base/trace_event/base_tracing.h" #include "build/build_config.h" -#if BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include #endif +#if BUILDFLAG(IS_BSD) +#include +#include +#endif + #if BUILDFLAG(CLANG_PROFILING) #include "base/test/clang_profiling.h" #endif -@@ -93,7 +98,7 @@ bool WaitpidWithTimeout(base::ProcessHandle handle, - return ret_pid > 0; +@@ -99,7 +104,7 @@ bool WaitpidWithTimeout(base::ProcessHandle handle, } + #endif -#if BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // Using kqueue on Mac so that we can wait on non-child processes. // We can't use kqueues on child processes because we need to reap // our own children using wait. -@@ -198,7 +203,7 @@ bool WaitForExitWithTimeoutImpl(base::ProcessHandle ha +@@ -376,7 +381,7 @@ bool Process::WaitForExitWithTimeoutImpl(base::Process const bool exited = (parent_pid < 0); if (!exited && parent_pid != our_pid) { -#if BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // On Mac we can wait on non child processes. return WaitForSingleNonChildProcess(handle, timeout); #else -@@ -387,7 +392,56 @@ void Process::Exited(int exit_code) const { +@@ -413,7 +418,56 @@ void Process::Exited(int exit_code) const { int Process::GetOSPriority() const { DCHECK(IsValid()); +// avoid pledge(2) violation +#if BUILDFLAG(IS_BSD) + return 0; +#else return getpriority(PRIO_PROCESS, static_cast(process_)); +#endif } + +Time Process::CreationTime() const { +// avoid ps pledge in the network process +#if !BUILDFLAG(IS_BSD) + int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, getpid(), + sizeof(struct kinfo_proc), 0 }; + struct kinfo_proc *info = nullptr; + size_t info_size; +#endif + Time ct = Time(); + +#if !BUILDFLAG(IS_BSD) + if (sysctl(mib, std::size(mib), NULL, &info_size, NULL, 0) < 0) + goto out; + + mib[5] = (info_size / sizeof(struct kinfo_proc)); + if ((info = reinterpret_cast(malloc(info_size))) == NULL) + goto out; + + if (sysctl(mib, std::size(mib), info, &info_size, NULL, 0) < 0) + goto out; + + ct = Time::FromTimeT(info->p_ustart_sec); + +out: + if (info) + free(info); +#endif + return ct; +} + +#if BUILDFLAG(IS_BSD) +Process::Priority Process::GetPriority() const { + return Priority::kUserBlocking; +} + +bool Process::SetPriority(Priority priority) { + return false; +} + +bool Process::CanSetPriority() { + return false; +} +#endif } // namespace base diff --git a/www/iridium/files/patch-base_process_process__unittest.cc b/www/iridium/files/patch-base_process_process__unittest.cc index 6df6891400b2..4b4816992a8f 100644 --- a/www/iridium/files/patch-base_process_process__unittest.cc +++ b/www/iridium/files/patch-base_process_process__unittest.cc @@ -1,11 +1,11 @@ ---- base/process/process_unittest.cc.orig 2023-11-22 14:00:11 UTC +--- base/process/process_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/process/process_unittest.cc -@@ -198,7 +198,7 @@ TEST_F(ProcessTest, CreationTimeOtherProcess) { +@@ -199,7 +199,7 @@ TEST_F(ProcessTest, CreationTimeOtherProcess) { // was spawned and a time recorded after it was spawned. However, since the // base::Time and process creation clocks don't match, tolerate some error. constexpr base::TimeDelta kTolerance = -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux, process creation time is relative to boot time which has a // 1-second resolution. Tolerate 1 second for the imprecise boot time and // 100 ms for the imprecise clock. diff --git a/www/iridium/files/patch-base_profiler_module__cache.cc b/www/iridium/files/patch-base_profiler_module__cache.cc index bb52d5114336..a9f2a6d699fe 100644 --- a/www/iridium/files/patch-base_profiler_module__cache.cc +++ b/www/iridium/files/patch-base_profiler_module__cache.cc @@ -1,11 +1,11 @@ ---- base/profiler/module_cache.cc.orig 2024-02-04 14:46:08 UTC +--- base/profiler/module_cache.cc.orig 2024-06-25 12:08:48 UTC +++ base/profiler/module_cache.cc -@@ -37,7 +37,7 @@ std::string TransformModuleIDToSymbolServerFormat(Stri +@@ -38,7 +38,7 @@ std::string TransformModuleIDToSymbolServerFormat(std: // Android and Linux Chrome builds use the "breakpad" format to index their // build id, so we transform the build id for these platforms. All other // platforms keep their symbols indexed by the original build ID. -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Linux ELF module IDs are 160bit integers, which we need to mangle // down to 128bit integers to match the id that Breakpad outputs. // Example on version '66.0.3359.170' x64: diff --git a/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.cc b/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.cc index c76676c27ffe..b47f0799fd02 100644 --- a/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.cc +++ b/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.cc @@ -1,20 +1,20 @@ ---- base/profiler/sampling_profiler_thread_token.cc.orig 2023-03-13 07:33:08 UTC +--- base/profiler/sampling_profiler_thread_token.cc.orig 2024-06-25 12:08:48 UTC +++ base/profiler/sampling_profiler_thread_token.cc @@ -6,7 +6,7 @@ #include "build/build_config.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #include "base/profiler/stack_base_address_posix.h" @@ -18,7 +18,7 @@ SamplingProfilerThreadToken GetSamplingProfilerCurrent PlatformThreadId id = PlatformThread::CurrentId(); #if BUILDFLAG(IS_ANDROID) return {id, pthread_self()}; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - absl::optional maybe_stack_base = + std::optional maybe_stack_base = GetThreadStackBaseAddress(id, pthread_self()); return {id, maybe_stack_base}; diff --git a/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.h b/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.h index b93e56d633b2..be5ebed05b7e 100644 --- a/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.h +++ b/www/iridium/files/patch-base_profiler_sampling__profiler__thread__token.h @@ -1,20 +1,20 @@ ---- base/profiler/sampling_profiler_thread_token.h.orig 2023-03-13 07:33:08 UTC +--- base/profiler/sampling_profiler_thread_token.h.orig 2024-06-25 12:08:48 UTC +++ base/profiler/sampling_profiler_thread_token.h -@@ -12,7 +12,7 @@ +@@ -13,7 +13,7 @@ #if BUILDFLAG(IS_ANDROID) #include -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #endif -@@ -26,7 +26,7 @@ struct SamplingProfilerThreadToken { +@@ -27,7 +27,7 @@ struct SamplingProfilerThreadToken { PlatformThreadId id; #if BUILDFLAG(IS_ANDROID) pthread_t pthread_id; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Due to the sandbox, we can only retrieve the stack base address for the // current thread. We must grab it during // GetSamplingProfilerCurrentThreadToken() and not try to get it later. diff --git a/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc b/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc index cf7ce69b0f38..2907c038f053 100644 --- a/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc +++ b/www/iridium/files/patch-base_profiler_stack__base__address__posix.cc @@ -1,50 +1,59 @@ ---- base/profiler/stack_base_address_posix.cc.orig 2023-03-13 07:33:08 UTC +--- base/profiler/stack_base_address_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/profiler/stack_base_address_posix.cc @@ -17,6 +17,10 @@ #include "base/files/scoped_file.h" #endif +#if BUILDFLAG(IS_BSD) +#include +#endif + #if BUILDFLAG(IS_CHROMEOS) extern "C" void* __libc_stack_end; #endif -@@ -45,7 +49,21 @@ absl::optional GetAndroidMainThreadStackBas +@@ -45,7 +49,21 @@ std::optional GetAndroidMainThreadStackBase #if !BUILDFLAG(IS_LINUX) uintptr_t GetThreadStackBaseAddressImpl(pthread_t pthread_id) { +#if BUILDFLAG(IS_OPENBSD) + stack_t ss; + void *address; + size_t size; + if (pthread_stackseg_np(pthread_id, &ss) != 0) + return 0; + size = ss.ss_size; + address = (void*)((size_t) ss.ss_sp - ss.ss_size); +#else pthread_attr_t attr; +#if BUILDFLAG(IS_FREEBSD) + int result; + pthread_attr_init(&attr); + pthread_attr_get_np(pthread_id, &attr); +#else // pthread_getattr_np will crash on ChromeOS & Linux if we are in the sandbox // and pthread_id refers to a different thread, due to the use of // sched_getaffinity(). @@ -58,12 +76,14 @@ uintptr_t GetThreadStackBaseAddressImpl(pthread_t pthr << logging::SystemErrorCodeToString(result); // See crbug.com/617730 for limitations of this approach on Linux-like // systems. +#endif void* address; size_t size; result = pthread_attr_getstack(&attr, &address, &size); CHECK_EQ(result, 0) << "pthread_attr_getstack returned " << logging::SystemErrorCodeToString(result); pthread_attr_destroy(&attr); +#endif const uintptr_t base_address = reinterpret_cast(address) + size; return base_address; } +@@ -80,7 +100,7 @@ std::optional GetThreadStackBaseAddress(Pla + // trying to work around the problem. + return std::nullopt; + #else +- const bool is_main_thread = id == GetCurrentProcId(); ++ const bool is_main_thread = id == checked_cast(GetCurrentProcId()); + if (is_main_thread) { + #if BUILDFLAG(IS_ANDROID) + // The implementation of pthread_getattr_np() in Bionic reads proc/self/maps diff --git a/www/iridium/files/patch-base_profiler_stack__sampling__profiler__test__util.cc b/www/iridium/files/patch-base_profiler_stack__sampling__profiler__test__util.cc index 569610282815..cc6323c1e7f9 100644 --- a/www/iridium/files/patch-base_profiler_stack__sampling__profiler__test__util.cc +++ b/www/iridium/files/patch-base_profiler_stack__sampling__profiler__test__util.cc @@ -1,11 +1,11 @@ ---- base/profiler/stack_sampling_profiler_test_util.cc.orig 2023-07-24 14:27:53 UTC +--- base/profiler/stack_sampling_profiler_test_util.cc.orig 2024-06-25 12:08:48 UTC +++ base/profiler/stack_sampling_profiler_test_util.cc -@@ -36,7 +36,7 @@ +@@ -42,7 +42,7 @@ // Fortunately, it provides _alloca, which functions identically. #include #define alloca _alloca -#else +#elif !BUILDFLAG(IS_BSD) #include #endif diff --git a/www/iridium/files/patch-base_profiler_stack__sampling__profiler__unittest.cc b/www/iridium/files/patch-base_profiler_stack__sampling__profiler__unittest.cc index 370afbaca7c5..64a1e4c8bd62 100644 --- a/www/iridium/files/patch-base_profiler_stack__sampling__profiler__unittest.cc +++ b/www/iridium/files/patch-base_profiler_stack__sampling__profiler__unittest.cc @@ -1,11 +1,11 @@ ---- base/profiler/stack_sampling_profiler_unittest.cc.orig 2022-03-28 18:11:04 UTC +--- base/profiler/stack_sampling_profiler_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/profiler/stack_sampling_profiler_unittest.cc -@@ -41,7 +41,7 @@ +@@ -43,7 +43,7 @@ + #include #include - #include -#else +#elif !BUILDFLAG(IS_BSD) #include #endif diff --git a/www/iridium/files/patch-base_profiler_thread__delegate__posix.cc b/www/iridium/files/patch-base_profiler_thread__delegate__posix.cc index 8433915218f7..e02ffa7bc97a 100644 --- a/www/iridium/files/patch-base_profiler_thread__delegate__posix.cc +++ b/www/iridium/files/patch-base_profiler_thread__delegate__posix.cc @@ -1,20 +1,20 @@ ---- base/profiler/thread_delegate_posix.cc.orig 2022-12-01 10:35:46 UTC +--- base/profiler/thread_delegate_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/profiler/thread_delegate_posix.cc -@@ -13,7 +13,7 @@ +@@ -19,7 +19,7 @@ + #include "base/process/process_handle.h" #include "build/build_config.h" - #include "third_party/abseil-cpp/absl/types/optional.h" -#if !(BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) +#if !(BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) #include "base/profiler/stack_base_address_posix.h" #endif -@@ -22,7 +22,7 @@ namespace base { +@@ -28,7 +28,7 @@ namespace base { std::unique_ptr ThreadDelegatePosix::Create( SamplingProfilerThreadToken thread_token) { - absl::optional base_address; + std::optional base_address; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base_address = thread_token.stack_base_address; #else base_address = diff --git a/www/iridium/files/patch-base_rand__util.h b/www/iridium/files/patch-base_rand__util.h index f94ebde35b68..864efef0a114 100644 --- a/www/iridium/files/patch-base_rand__util.h +++ b/www/iridium/files/patch-base_rand__util.h @@ -1,11 +1,11 @@ ---- base/rand_util.h.orig 2024-02-04 14:46:08 UTC +--- base/rand_util.h.orig 2024-06-25 12:08:48 UTC +++ base/rand_util.h -@@ -136,7 +136,7 @@ void RandomShuffle(Itr first, Itr last) { +@@ -147,7 +147,7 @@ void RandomShuffle(Itr first, Itr last) { std::shuffle(first, last, RandomBitGenerator()); } -#if BUILDFLAG(IS_POSIX) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_BSD) BASE_EXPORT int GetUrandomFD(); #endif diff --git a/www/iridium/files/patch-base_rand__util__posix.cc b/www/iridium/files/patch-base_rand__util__posix.cc index ba6e34af5213..72dbc30893f4 100644 --- a/www/iridium/files/patch-base_rand__util__posix.cc +++ b/www/iridium/files/patch-base_rand__util__posix.cc @@ -1,62 +1,62 @@ ---- base/rand_util_posix.cc.orig 2023-11-22 14:00:11 UTC +--- base/rand_util_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/rand_util_posix.cc -@@ -22,7 +22,7 @@ +@@ -28,7 +28,7 @@ #include "base/time/time.h" #include "build/build_config.h" -#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_NACL) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) #include "third_party/lss/linux_syscall_support.h" #elif BUILDFLAG(IS_MAC) - // TODO(crbug.com/995996): Waiting for this header to appear in the iOS SDK. -@@ -39,6 +39,7 @@ namespace base { + // TODO(crbug.com/40641285): Waiting for this header to appear in the iOS SDK. +@@ -45,6 +45,7 @@ namespace base { namespace { +#if !BUILDFLAG(IS_BSD) #if BUILDFLAG(IS_AIX) // AIX has no 64-bit support for O_CLOEXEC. static constexpr int kOpenFlags = O_RDONLY; -@@ -63,10 +64,11 @@ class URandomFd { +@@ -69,10 +70,11 @@ class URandomFd { private: const int fd_; }; +#endif #if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ BUILDFLAG(IS_ANDROID)) && \ - !BUILDFLAG(IS_NACL) + !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) // TODO(pasko): Unify reading kernel version numbers in: // mojo/core/channel_linux.cc // chrome/browser/android/seccomp_support_detector.cc -@@ -176,6 +178,7 @@ bool UseBoringSSLForRandBytes() { +@@ -182,6 +184,7 @@ bool UseBoringSSLForRandBytes() { namespace { - void RandBytes(void* output, size_t output_length, bool avoid_allocation) { + void RandBytesInternal(span output, bool avoid_allocation) { +#if !BUILDFLAG(IS_BSD) #if !BUILDFLAG(IS_NACL) // The BoringSSL experiment takes priority over everything else. if (!avoid_allocation && internal::UseBoringSSLForRandBytes()) { -@@ -214,6 +217,9 @@ void RandBytes(void* output, size_t output_length, boo - const bool success = - ReadFromFD(urandom_fd, static_cast(output), output_length); +@@ -220,6 +223,9 @@ void RandBytesInternal(span output, bool avoi + const int urandom_fd = GetUrandomFD(); + const bool success = ReadFromFD(urandom_fd, as_writable_chars(output)); CHECK(success); +#else -+ arc4random_buf(static_cast(output), output_length); ++ arc4random_buf(output.data(), output.size()); +#endif } } // namespace -@@ -233,9 +239,11 @@ void RandBytes(void* output, size_t output_length) { - RandBytes(output, output_length, /*avoid_allocation=*/false); +@@ -239,9 +245,11 @@ void RandBytes(span output) { + RandBytesInternal(output, /*avoid_allocation=*/false); } +#if !BUILDFLAG(IS_BSD) int GetUrandomFD() { static NoDestructor urandom_fd; return urandom_fd->fd(); } +#endif } // namespace base diff --git a/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc b/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc index 6c3b33f1a89d..e9e3ad133bce 100644 --- a/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc +++ b/www/iridium/files/patch-base_strings_safe__sprintf__unittest.cc @@ -1,18 +1,18 @@ ---- base/strings/safe_sprintf_unittest.cc.orig 2023-03-13 07:33:08 UTC +--- base/strings/safe_sprintf_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/strings/safe_sprintf_unittest.cc -@@ -733,6 +733,7 @@ TEST(SafeSPrintfTest, EmbeddedNul) { +@@ -740,6 +740,7 @@ TEST(SafeSPrintfTest, EmbeddedNul) { #endif } +#if !BUILDFLAG(IS_BSD) TEST(SafeSPrintfTest, EmitNULL) { char buf[40]; #if defined(__GNUC__) -@@ -749,6 +750,7 @@ TEST(SafeSPrintfTest, EmitNULL) { +@@ -756,6 +757,7 @@ TEST(SafeSPrintfTest, EmitNULL) { #pragma GCC diagnostic pop #endif } +#endif TEST(SafeSPrintfTest, PointerSize) { // The internal data representation is a 64bit value, independent of the diff --git a/www/iridium/files/patch-base_synchronization_lock__impl.h b/www/iridium/files/patch-base_synchronization_lock__impl.h index 03f3b8aaad99..98aa6f39012a 100644 --- a/www/iridium/files/patch-base_synchronization_lock__impl.h +++ b/www/iridium/files/patch-base_synchronization_lock__impl.h @@ -1,23 +1,23 @@ ---- base/synchronization/lock_impl.h.orig 2023-04-22 17:45:15 UTC +--- base/synchronization/lock_impl.h.orig 2024-06-25 12:08:48 UTC +++ base/synchronization/lock_impl.h -@@ -104,6 +104,10 @@ void LockImpl::Unlock() { +@@ -106,6 +106,10 @@ void LockImpl::Unlock() { } #elif BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) +#if BUILDFLAG(IS_FREEBSD) +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wthread-safety-analysis" +#endif #if DCHECK_IS_ON() BASE_EXPORT void dcheck_trylock_result(int rv); -@@ -124,6 +128,9 @@ void LockImpl::Unlock() { +@@ -126,6 +130,9 @@ void LockImpl::Unlock() { dcheck_unlock_result(rv); #endif } +#if BUILDFLAG(IS_FREEBSD) +#pragma GCC diagnostic pop +#endif #endif // This is an implementation used for AutoLock templated on the lock type. diff --git a/www/iridium/files/patch-base_syslog__logging.cc b/www/iridium/files/patch-base_syslog__logging.cc index 5ce641d444ca..93f9f649cb10 100644 --- a/www/iridium/files/patch-base_syslog__logging.cc +++ b/www/iridium/files/patch-base_syslog__logging.cc @@ -1,20 +1,20 @@ ---- base/syslog_logging.cc.orig 2022-03-28 18:11:04 UTC +--- base/syslog_logging.cc.orig 2024-06-25 12:08:48 UTC +++ base/syslog_logging.cc -@@ -15,7 +15,7 @@ +@@ -17,7 +17,7 @@ #include "base/strings/string_util.h" #include "base/win/scoped_handle.h" #include "base/win/win_util.h" -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // defines LOG_INFO, LOG_WARNING macros that could conflict with // base::LOG_INFO, base::LOG_WARNING. #include -@@ -147,7 +147,7 @@ EventLogMessage::~EventLogMessage() { +@@ -149,7 +149,7 @@ EventLogMessage::~EventLogMessage() { if (user_sid != nullptr) ::LocalFree(user_sid); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kEventSource[] = "chrome"; openlog(kEventSource, LOG_NOWAIT | LOG_PID, LOG_USER); // We can't use the defined names for the logging severity from syslog.h diff --git a/www/iridium/files/patch-base_system_sys__info.h b/www/iridium/files/patch-base_system_sys__info.h index f4852c87786b..960b7e292e1f 100644 --- a/www/iridium/files/patch-base_system_sys__info.h +++ b/www/iridium/files/patch-base_system_sys__info.h @@ -1,20 +1,20 @@ ---- base/system/sys_info.h.orig 2024-02-04 14:46:08 UTC +--- base/system/sys_info.h.orig 2024-06-25 12:08:48 UTC +++ base/system/sys_info.h -@@ -321,6 +321,8 @@ class BASE_EXPORT SysInfo { +@@ -325,6 +325,8 @@ class BASE_EXPORT SysInfo { static void ResetCpuSecurityMitigationsEnabledForTesting(); #endif + static uint64_t MaxSharedMemorySize(); + private: friend class test::ScopedAmountOfPhysicalMemoryOverride; FRIEND_TEST_ALL_PREFIXES(SysInfoTest, AmountOfAvailablePhysicalMemory); -@@ -333,7 +335,7 @@ class BASE_EXPORT SysInfo { +@@ -337,7 +339,7 @@ class BASE_EXPORT SysInfo { static HardwareInfo GetHardwareInfoSync(); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) static uint64_t AmountOfAvailablePhysicalMemory( const SystemMemoryInfoKB& meminfo); #endif diff --git a/www/iridium/files/patch-base_system_sys__info__freebsd.cc b/www/iridium/files/patch-base_system_sys__info__freebsd.cc index d77a0e55a002..3e21aa3f067f 100644 --- a/www/iridium/files/patch-base_system_sys__info__freebsd.cc +++ b/www/iridium/files/patch-base_system_sys__info__freebsd.cc @@ -1,115 +1,115 @@ ---- base/system/sys_info_freebsd.cc.orig 2022-10-05 07:34:01 UTC +--- base/system/sys_info_freebsd.cc.orig 2024-06-25 12:08:48 UTC +++ base/system/sys_info_freebsd.cc @@ -9,30 +9,106 @@ #include #include "base/notreached.h" +#include "base/process/process_metrics.h" +#include "base/strings/string_util.h" namespace base { -int64_t SysInfo::AmountOfPhysicalMemoryImpl() { - int pages, page_size; +int SysInfo::NumberOfProcessors() { + int mib[] = {CTL_HW, HW_NCPU}; + int ncpu; + size_t size = sizeof(ncpu); + if (sysctl(mib, std::size(mib), &ncpu, &size, NULL, 0) < 0) { + NOTREACHED(); + return 1; + } + return ncpu; +} + +uint64_t SysInfo::AmountOfPhysicalMemoryImpl() { + int pages, page_size, r = 0; size_t size = sizeof(pages); - sysctlbyname("vm.stats.vm.v_page_count", &pages, &size, NULL, 0); - sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0); - if (pages == -1 || page_size == -1) { + + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_page_count", &pages, &size, NULL, 0); + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0); + + if (r == -1) { - NOTREACHED(); + NOTREACHED_IN_MIGRATION(); return 0; } - return static_cast(pages) * page_size; + + return static_cast(pages) * page_size; } +uint64_t SysInfo::AmountOfAvailablePhysicalMemoryImpl() { + int page_size, r = 0; + unsigned int pgfree, pginact, pgcache; + size_t size = sizeof(page_size); + size_t szpg = sizeof(pgfree); + + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_page_size", &page_size, &size, NULL, 0); + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_free_count", &pgfree, &szpg, NULL, 0); + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_inactive_count", &pginact, &szpg, NULL, 0); + if (r == 0) + r = sysctlbyname("vm.stats.vm.v_cache_count", &pgcache, &szpg, NULL, 0); + + if (r == -1) { + NOTREACHED(); + return 0; + } + + return static_cast((pgfree + pginact + pgcache) * page_size); +} + // static +uint64_t SysInfo::AmountOfAvailablePhysicalMemory(const SystemMemoryInfoKB& info) { + uint64_t res_kb = info.available != 0 + ? info.available - info.active_file + : info.free + info.reclaimable + info.inactive_file; + return res_kb * 1024; +} + +// static +std::string SysInfo::CPUModelName() { + int mib[] = { CTL_HW, HW_MODEL }; + char name[256]; + size_t size = std::size(name); + + if (sysctl(mib, std::size(mib), &name, &size, NULL, 0) == 0) { + return name; + } + + return std::string(); +} + +// static uint64_t SysInfo::MaxSharedMemorySize() { size_t limit; size_t size = sizeof(limit); + if (sysctlbyname("kern.ipc.shmmax", &limit, &size, NULL, 0) < 0) { - NOTREACHED(); + NOTREACHED_IN_MIGRATION(); return 0; } + return static_cast(limit); +} + +SysInfo::HardwareInfo SysInfo::GetHardwareInfoSync() { + HardwareInfo info; + + info.manufacturer = "FreeBSD"; + info.model = HardwareModelName(); + + DCHECK(IsStringUTF8(info.manufacturer)); + DCHECK(IsStringUTF8(info.model)); + + return info; } } // namespace base diff --git a/www/iridium/files/patch-base_system_sys__info__openbsd.cc b/www/iridium/files/patch-base_system_sys__info__openbsd.cc index e3854185bddd..baa3caf88e90 100644 --- a/www/iridium/files/patch-base_system_sys__info__openbsd.cc +++ b/www/iridium/files/patch-base_system_sys__info__openbsd.cc @@ -1,87 +1,94 @@ ---- base/system/sys_info_openbsd.cc.orig 2023-11-22 14:00:11 UTC +--- base/system/sys_info_openbsd.cc.orig 2024-06-25 12:08:48 UTC +++ base/system/sys_info_openbsd.cc -@@ -12,6 +12,7 @@ +@@ -3,7 +3,6 @@ + // found in the LICENSE file. + + #include "base/system/sys_info.h" +- + #include + #include + #include +@@ -12,6 +11,7 @@ #include "base/notreached.h" #include "base/posix/sysctl.h" +#include "base/strings/string_util.h" namespace { -@@ -27,9 +28,15 @@ uint64_t AmountOfMemory(int pages_name) { +@@ -27,9 +27,14 @@ uint64_t AmountOfMemory(int pages_name) { namespace base { +// pledge(2) -+int64_t aofpmem = 0; -+int64_t aofapmem = 0; -+int64_t shmmax = 0; ++uint64_t aofpmem = 0; ++uint64_t shmmax = 0; +char cpumodel[256]; + // static int SysInfo::NumberOfProcessors() { - int mib[] = {CTL_HW, HW_NCPU}; + int mib[] = {CTL_HW, HW_NCPUONLINE}; int ncpu; size_t size = sizeof(ncpu); if (sysctl(mib, std::size(mib), &ncpu, &size, NULL, 0) < 0) { -@@ -41,10 +48,26 @@ int SysInfo::NumberOfProcessors() { +@@ -41,10 +46,26 @@ int SysInfo::NumberOfProcessors() { // static uint64_t SysInfo::AmountOfPhysicalMemoryImpl() { - return AmountOfMemory(_SC_PHYS_PAGES); + // pledge(2) + if (!aofpmem) + aofpmem = AmountOfMemory(_SC_PHYS_PAGES); + return aofpmem; } // static +std::string SysInfo::CPUModelName() { + int mib[] = {CTL_HW, HW_MODEL}; + size_t len = std::size(cpumodel); + + if (cpumodel[0] == '\0') { + if (sysctl(mib, std::size(mib), cpumodel, &len, NULL, 0) < 0) + return std::string(); + } + + return std::string(cpumodel, len - 1); +} + +// static uint64_t SysInfo::AmountOfAvailablePhysicalMemoryImpl() { // We should add inactive file-backed memory also but there is no such // information from OpenBSD unfortunately. -@@ -56,16 +79,28 @@ uint64_t SysInfo::MaxSharedMemorySize() { +@@ -56,16 +77,28 @@ uint64_t SysInfo::MaxSharedMemorySize() { int mib[] = {CTL_KERN, KERN_SHMINFO, KERN_SHMINFO_SHMMAX}; size_t limit; size_t size = sizeof(limit); + // pledge(2) + if (shmmax) + goto out; if (sysctl(mib, std::size(mib), &limit, &size, NULL, 0) < 0) { - NOTREACHED(); + NOTREACHED_IN_MIGRATION(); return 0; } - return static_cast(limit); + shmmax = static_cast(limit); +out: + return shmmax; } // static -std::string SysInfo::CPUModelName() { - return StringSysctl({CTL_HW, HW_MODEL}).value(); +SysInfo::HardwareInfo SysInfo::GetHardwareInfoSync() { + HardwareInfo info; + // Set the manufacturer to "OpenBSD" and the model to + // an empty string. + info.manufacturer = "OpenBSD"; + info.model = HardwareModelName(); + DCHECK(IsStringUTF8(info.manufacturer)); + DCHECK(IsStringUTF8(info.model)); + return info; } } // namespace base diff --git a/www/iridium/files/patch-base_system_sys__info__posix.cc b/www/iridium/files/patch-base_system_sys__info__posix.cc index 2cd98a42164f..9a1c52ee3931 100644 --- a/www/iridium/files/patch-base_system_sys__info__posix.cc +++ b/www/iridium/files/patch-base_system_sys__info__posix.cc @@ -1,29 +1,29 @@ ---- base/system/sys_info_posix.cc.orig 2024-02-04 14:46:08 UTC +--- base/system/sys_info_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/system/sys_info_posix.cc -@@ -117,7 +117,7 @@ bool GetDiskSpaceInfo(const base::FilePath& path, +@@ -118,7 +118,7 @@ bool GetDiskSpaceInfo(const base::FilePath& path, namespace base { -#if !BUILDFLAG(IS_OPENBSD) +#if !BUILDFLAG(IS_BSD) // static int SysInfo::NumberOfProcessors() { #if BUILDFLAG(IS_MAC) -@@ -174,7 +174,7 @@ int SysInfo::NumberOfProcessors() { +@@ -175,7 +175,7 @@ int SysInfo::NumberOfProcessors() { return cached_num_cpus; } -#endif // !BUILDFLAG(IS_OPENBSD) +#endif // !BUILDFLAG(IS_BSD) // static uint64_t SysInfo::AmountOfVirtualMemory() { -@@ -264,6 +264,8 @@ std::string SysInfo::OperatingSystemArchitecture() { +@@ -265,6 +265,8 @@ std::string SysInfo::OperatingSystemArchitecture() { arch = "x86"; } else if (arch == "amd64") { arch = "x86_64"; + } else if (arch == "arm64") { + arch = "aarch64"; } else if (std::string(info.sysname) == "AIX") { arch = "ppc64"; } diff --git a/www/iridium/files/patch-base_system_sys__info__unittest.cc b/www/iridium/files/patch-base_system_sys__info__unittest.cc index e7f223684ba5..22963781b866 100644 --- a/www/iridium/files/patch-base_system_sys__info__unittest.cc +++ b/www/iridium/files/patch-base_system_sys__info__unittest.cc @@ -1,20 +1,20 @@ ---- base/system/sys_info_unittest.cc.orig 2023-08-28 20:17:35 UTC +--- base/system/sys_info_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/system/sys_info_unittest.cc -@@ -263,12 +263,16 @@ TEST_F(SysInfoTest, GetHardwareInfo) { +@@ -264,12 +264,16 @@ TEST_F(SysInfoTest, GetHardwareInfo) { EXPECT_TRUE(IsStringUTF8(hardware_info->model)); bool empty_result_expected = #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || \ + BUILDFLAG(IS_BSD) false; #else true; #endif EXPECT_EQ(hardware_info->manufacturer.empty(), empty_result_expected); +#if BUILDFLAG(IS_BSD) + empty_result_expected = true; +#endif EXPECT_EQ(hardware_info->model.empty(), empty_result_expected); } diff --git a/www/iridium/files/patch-base_test_launcher_test__launcher.cc b/www/iridium/files/patch-base_test_launcher_test__launcher.cc index 69f98fd9888b..c1e93d8baf8a 100644 --- a/www/iridium/files/patch-base_test_launcher_test__launcher.cc +++ b/www/iridium/files/patch-base_test_launcher_test__launcher.cc @@ -1,10 +1,10 @@ ---- base/test/launcher/test_launcher.cc.orig 2023-11-22 14:00:11 UTC +--- base/test/launcher/test_launcher.cc.orig 2024-06-25 12:08:48 UTC +++ base/test/launcher/test_launcher.cc -@@ -70,6 +70,7 @@ +@@ -74,6 +74,7 @@ #include "testing/gtest/include/gtest/gtest.h" #if BUILDFLAG(IS_POSIX) +#include #include #include "base/files/file_descriptor_watcher_posix.h" diff --git a/www/iridium/files/patch-base_test_test__file__util__posix.cc b/www/iridium/files/patch-base_test_test__file__util__posix.cc index 81349f73433d..3de0bce58e6d 100644 --- a/www/iridium/files/patch-base_test_test__file__util__posix.cc +++ b/www/iridium/files/patch-base_test_test__file__util__posix.cc @@ -1,11 +1,11 @@ ---- base/test/test_file_util_posix.cc.orig 2022-03-28 18:11:04 UTC +--- base/test/test_file_util_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/test/test_file_util_posix.cc -@@ -88,7 +88,7 @@ void SyncPageCacheToDisk() { +@@ -91,7 +91,7 @@ void SyncPageCacheToDisk() { } #if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_APPLE) && \ - !BUILDFLAG(IS_ANDROID) + !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) bool EvictFileFromSystemCache(const FilePath& file) { // There doesn't seem to be a POSIX way to cool the disk cache. NOTIMPLEMENTED(); diff --git a/www/iridium/files/patch-base_threading_hang__watcher.cc b/www/iridium/files/patch-base_threading_hang__watcher.cc index e31a6641480e..814bf46733e8 100644 --- a/www/iridium/files/patch-base_threading_hang__watcher.cc +++ b/www/iridium/files/patch-base_threading_hang__watcher.cc @@ -1,11 +1,11 @@ ---- base/threading/hang_watcher.cc.orig 2023-10-21 11:51:27 UTC +--- base/threading/hang_watcher.cc.orig 2024-06-25 12:08:48 UTC +++ base/threading/hang_watcher.cc -@@ -331,7 +331,7 @@ void HangWatcher::InitializeOnMainThread(ProcessType p +@@ -332,7 +332,7 @@ void HangWatcher::InitializeOnMainThread(ProcessType p bool enable_hang_watcher = base::FeatureList::IsEnabled(kEnableHangWatcher); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) if (is_zygote_child) { enable_hang_watcher = enable_hang_watcher && diff --git a/www/iridium/files/patch-base_threading_platform__thread.h b/www/iridium/files/patch-base_threading_platform__thread.h new file mode 100644 index 000000000000..dd0f5e9a2423 --- /dev/null +++ b/www/iridium/files/patch-base_threading_platform__thread.h @@ -0,0 +1,11 @@ +--- base/threading/platform_thread.h.orig 2024-06-25 12:08:48 UTC ++++ base/threading/platform_thread.h +@@ -49,6 +49,8 @@ typedef DWORD PlatformThreadId; + typedef zx_koid_t PlatformThreadId; + #elif BUILDFLAG(IS_APPLE) + typedef mach_port_t PlatformThreadId; ++#elif BUILDFLAG(IS_BSD) ++typedef uint64_t PlatformThreadId; + #elif BUILDFLAG(IS_POSIX) + typedef pid_t PlatformThreadId; + #endif diff --git a/www/iridium/files/patch-base_threading_platform__thread__bsd.cc b/www/iridium/files/patch-base_threading_platform__thread__bsd.cc index 9c77345f1510..9b36b8224c21 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__bsd.cc +++ b/www/iridium/files/patch-base_threading_platform__thread__bsd.cc @@ -1,34 +1,34 @@ ---- base/threading/platform_thread_bsd.cc.orig 2023-10-21 11:51:27 UTC +--- base/threading/platform_thread_bsd.cc.orig 2024-06-25 12:08:48 UTC +++ base/threading/platform_thread_bsd.cc @@ -0,0 +1,31 @@ +// Copyright 2023 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +// Description: These are stubs for *BSD. + +#include "base/threading/platform_thread.h" + +namespace base { +namespace internal { + +bool CanSetThreadTypeToRealtimeAudio() { + return false; +} + +bool SetCurrentThreadTypeForPlatform(ThreadType thread_type, + MessagePumpType pump_type_hint) { + return false; +} + -+absl::optional ++std::optional +GetCurrentThreadPriorityForPlatformForTest() { -+ return absl::nullopt; ++ return std::nullopt; +} +} // namespace internal + +// static +void PlatformThreadBase::SetName(const std::string& name) { + SetNameCommon(name); +} + +} // namespace base diff --git a/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc b/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc index 8a73cb975cfa..ed397d684cdd 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc +++ b/www/iridium/files/patch-base_threading_platform__thread__internal__posix.cc @@ -1,11 +1,11 @@ ---- base/threading/platform_thread_internal_posix.cc.orig 2023-10-21 11:51:27 UTC +--- base/threading/platform_thread_internal_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/threading/platform_thread_internal_posix.cc -@@ -41,7 +41,7 @@ ThreadPriorityForTest NiceValueToThreadPriorityForTest +@@ -42,7 +42,7 @@ ThreadPriorityForTest NiceValueToThreadPriorityForTest } int GetCurrentThreadNiceValue() { -#if BUILDFLAG(IS_NACL) +#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) NOTIMPLEMENTED(); return 0; #else diff --git a/www/iridium/files/patch-base_threading_platform__thread__posix.cc b/www/iridium/files/patch-base_threading_platform__thread__posix.cc index c80b8494f40b..e017242243d8 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__posix.cc +++ b/www/iridium/files/patch-base_threading_platform__thread__posix.cc @@ -1,45 +1,53 @@ ---- base/threading/platform_thread_posix.cc.orig 2023-10-21 11:51:27 UTC +--- base/threading/platform_thread_posix.cc.orig 2024-06-25 12:08:48 UTC +++ base/threading/platform_thread_posix.cc -@@ -76,12 +76,12 @@ void* ThreadFunc(void* params) { +@@ -77,11 +77,11 @@ void* ThreadFunc(void* params) { if (!thread_params->joinable) base::DisallowSingleton(); --#if BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && BUILDFLAG(USE_STARSCAN) -+#if BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && BUILDFLAG(USE_STARSCAN) && !BUILDFLAG(IS_BSD) - partition_alloc::internal::PCScan::NotifyThreadCreated( - partition_alloc::internal::GetStackPointer()); +-#if PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) ++#if PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && !BUILDFLAG(IS_BSD) + partition_alloc::internal::StackTopRegistry::Get().NotifyThreadCreated(); #endif -#if !BUILDFLAG(IS_NACL) +#if !BUILDFLAG(IS_NACL) && !BUILDFLAG(IS_BSD) #if BUILDFLAG(IS_APPLE) PlatformThread::SetCurrentThreadRealtimePeriodValue( delegate->GetRealtimePeriod()); -@@ -353,7 +353,7 @@ void PlatformThreadBase::Detach(PlatformThreadHandle t +@@ -265,6 +265,8 @@ PlatformThreadId PlatformThreadBase::CurrentId() { + return reinterpret_cast(pthread_self()); + #elif BUILDFLAG(IS_POSIX) && BUILDFLAG(IS_AIX) + return pthread_self(); ++#elif BUILDFLAG(IS_BSD) ++ return reinterpret_cast(pthread_self()); + #elif BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_AIX) + return reinterpret_cast(pthread_self()); + #endif +@@ -355,7 +357,7 @@ void PlatformThreadBase::Detach(PlatformThreadHandle t // static bool PlatformThreadBase::CanChangeThreadType(ThreadType from, ThreadType to) { -#if BUILDFLAG(IS_NACL) +#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) return false; #else if (from >= to) { -@@ -374,6 +374,9 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, +@@ -376,6 +378,9 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, MessagePumpType pump_type_hint) { #if BUILDFLAG(IS_NACL) NOTIMPLEMENTED(); +// avoid pledge(2) violation +#elif BUILDFLAG(IS_BSD) + NOTIMPLEMENTED(); #else if (internal::SetCurrentThreadTypeForPlatform(thread_type, pump_type_hint)) return; -@@ -396,7 +399,7 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, +@@ -398,7 +403,7 @@ void SetCurrentThreadTypeImpl(ThreadType thread_type, // static ThreadPriorityForTest PlatformThreadBase::GetCurrentThreadPriorityForTest() { -#if BUILDFLAG(IS_NACL) +#if BUILDFLAG(IS_NACL) || BUILDFLAG(IS_BSD) NOTIMPLEMENTED(); return ThreadPriorityForTest::kNormal; #else diff --git a/www/iridium/files/patch-base_threading_platform__thread__unittest.cc b/www/iridium/files/patch-base_threading_platform__thread__unittest.cc index 18ac2c8380f9..c625a895569e 100644 --- a/www/iridium/files/patch-base_threading_platform__thread__unittest.cc +++ b/www/iridium/files/patch-base_threading_platform__thread__unittest.cc @@ -1,38 +1,38 @@ ---- base/threading/platform_thread_unittest.cc.orig 2023-11-22 14:00:11 UTC +--- base/threading/platform_thread_unittest.cc.orig 2024-06-25 12:08:48 UTC +++ base/threading/platform_thread_unittest.cc -@@ -32,7 +32,7 @@ +@@ -38,7 +38,7 @@ #include "base/time/time.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include #include #include -@@ -423,7 +423,7 @@ TEST(PlatformThreadTest, +@@ -429,7 +429,7 @@ TEST(PlatformThreadTest, // and hardcodes what we know. Please inform scheduler-dev@chromium.org if this // proprerty changes for a given platform. TEST(PlatformThreadTest, CanChangeThreadType) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Ubuntu, RLIMIT_NICE and RLIMIT_RTPRIO are 0 by default, so we won't be // able to increase priority to any level unless we are root (euid == 0). bool kCanIncreasePriority = false; -@@ -706,12 +706,16 @@ INSTANTIATE_TEST_SUITE_P( +@@ -713,12 +713,16 @@ INSTANTIATE_TEST_SUITE_P( #endif // BUILDFLAG(IS_APPLE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) namespace { bool IsTidCacheCorrect() { +#if BUILDFLAG(IS_BSD) + return PlatformThread::CurrentId() == reinterpret_cast(pthread_self()); +#else return PlatformThread::CurrentId() == syscall(__NR_gettid); +#endif } void* CheckTidCacheCorrectWrapper(void*) { diff --git a/www/iridium/files/patch-base_trace__event_malloc__dump__provider.cc b/www/iridium/files/patch-base_trace__event_malloc__dump__provider.cc index 638675025a86..8ce65ffeea48 100644 --- a/www/iridium/files/patch-base_trace__event_malloc__dump__provider.cc +++ b/www/iridium/files/patch-base_trace__event_malloc__dump__provider.cc @@ -1,30 +1,30 @@ ---- base/trace_event/malloc_dump_provider.cc.orig 2023-10-21 11:51:27 UTC +--- base/trace_event/malloc_dump_provider.cc.orig 2024-06-25 12:08:48 UTC +++ base/trace_event/malloc_dump_provider.cc -@@ -25,6 +25,8 @@ +@@ -29,6 +29,8 @@ #if BUILDFLAG(IS_APPLE) #include +#elif BUILDFLAG(IS_BSD) +#include #else #include #endif -@@ -188,7 +190,7 @@ void ReportAppleAllocStats(size_t* total_virtual_size, +@@ -187,7 +189,7 @@ void ReportAppleAllocStats(size_t* total_virtual_size, - #if (BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && BUILDFLAG(IS_ANDROID)) || \ - (!BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && !BUILDFLAG(IS_WIN) && \ + #if (PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && BUILDFLAG(IS_ANDROID)) || \ + (!PA_BUILDFLAG(USE_PARTITION_ALLOC_AS_MALLOC) && !BUILDFLAG(IS_WIN) && \ - !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_FUCHSIA)) + !BUILDFLAG(IS_APPLE) && !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_BSD)) void ReportMallinfoStats(ProcessMemoryDump* pmd, size_t* total_virtual_size, size_t* resident_size, -@@ -359,6 +361,9 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDump +@@ -391,6 +393,9 @@ bool MallocDumpProvider::OnMemoryDump(const MemoryDump &allocated_objects_count); #elif BUILDFLAG(IS_FUCHSIA) // TODO(fuchsia): Port, see https://crbug.com/706592. +#elif BUILDFLAG(IS_BSD) + total_virtual_size = 0; + allocated_objects_size = 0; #else ReportMallinfoStats(/*pmd=*/nullptr, &total_virtual_size, &resident_size, &allocated_objects_size, &allocated_objects_count); diff --git a/www/iridium/files/patch-base_trace__event_memory__dump__manager.cc b/www/iridium/files/patch-base_trace__event_memory__dump__manager.cc index 71b039fdc759..4b000a79d34e 100644 --- a/www/iridium/files/patch-base_trace__event_memory__dump__manager.cc +++ b/www/iridium/files/patch-base_trace__event_memory__dump__manager.cc @@ -1,11 +1,11 @@ ---- base/trace_event/memory_dump_manager.cc.orig 2022-04-01 07:48:30 UTC +--- base/trace_event/memory_dump_manager.cc.orig 2024-06-25 12:08:48 UTC +++ base/trace_event/memory_dump_manager.cc -@@ -82,7 +82,7 @@ const char* const MemoryDumpManager::kSystemAllocatorP +@@ -87,7 +87,7 @@ const char* const MemoryDumpManager::kSystemAllocatorP #if defined(MALLOC_MEMORY_TRACING_SUPPORTED) MallocDumpProvider::kAllocatedObjects; #else - nullptr; + ""; #endif // static diff --git a/www/iridium/files/patch-base_trace__event_process__memory__dump.cc b/www/iridium/files/patch-base_trace__event_process__memory__dump.cc index 9229adeb5728..eb61179260e0 100644 --- a/www/iridium/files/patch-base_trace__event_process__memory__dump.cc +++ b/www/iridium/files/patch-base_trace__event_process__memory__dump.cc @@ -1,20 +1,20 @@ ---- base/trace_event/process_memory_dump.cc.orig 2022-10-05 07:34:01 UTC +--- base/trace_event/process_memory_dump.cc.orig 2024-06-25 12:08:48 UTC +++ base/trace_event/process_memory_dump.cc -@@ -112,7 +112,7 @@ absl::optional ProcessMemoryDump::CountResiden +@@ -118,7 +118,7 @@ std::optional ProcessMemoryDump::CountResident #if BUILDFLAG(IS_WIN) std::unique_ptr vec( new PSAPI_WORKING_SET_EX_INFORMATION[max_vec_size]); -#elif BUILDFLAG(IS_APPLE) +#elif BUILDFLAG(IS_APPLE) || BUILDFLAG(IS_BSD) std::unique_ptr vec(new char[max_vec_size]); #elif BUILDFLAG(IS_POSIX) || BUILDFLAG(IS_FUCHSIA) std::unique_ptr vec(new unsigned char[max_vec_size]); -@@ -134,7 +134,7 @@ absl::optional ProcessMemoryDump::CountResiden +@@ -140,7 +140,7 @@ std::optional ProcessMemoryDump::CountResident for (size_t i = 0; i < page_count; i++) resident_page_count += vec[i].VirtualAttributes.Valid; -#elif BUILDFLAG(IS_FUCHSIA) +#elif BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - // TODO(crbug.com/851760): Implement counting resident bytes. + // TODO(crbug.com/42050620): Implement counting resident bytes. // For now, log and avoid unused variable warnings. NOTIMPLEMENTED_LOG_ONCE(); diff --git a/www/iridium/files/patch-build_config_BUILDCONFIG.gn b/www/iridium/files/patch-build_config_BUILDCONFIG.gn index 2d36b7b2a607..414a5c35a9ed 100644 --- a/www/iridium/files/patch-build_config_BUILDCONFIG.gn +++ b/www/iridium/files/patch-build_config_BUILDCONFIG.gn @@ -1,45 +1,45 @@ ---- build/config/BUILDCONFIG.gn.orig 2023-01-17 19:19:00 UTC +--- build/config/BUILDCONFIG.gn.orig 2024-06-25 12:08:48 UTC +++ build/config/BUILDCONFIG.gn @@ -136,7 +136,8 @@ declare_args() { is_official_build = false # Set to true when compiling with the Clang compiler. - is_clang = current_os != "linux" || + is_clang = current_os != "linux" || current_os == "openbsd" || + current_os == "freebsd" || (current_cpu != "s390x" && current_cpu != "s390" && current_cpu != "ppc64" && current_cpu != "ppc" && current_cpu != "mips" && current_cpu != "mips64" && -@@ -225,6 +226,10 @@ if (host_toolchain == "") { +@@ -231,6 +232,10 @@ if (host_toolchain == "") { host_toolchain = "//build/toolchain/aix:$host_cpu" } else if (host_os == "zos") { host_toolchain = "//build/toolchain/zos:$host_cpu" + } else if (host_os == "openbsd") { + host_toolchain = "//build/toolchain/openbsd:clang_$host_cpu" + } else if (host_os == "freebsd") { + host_toolchain = "//build/toolchain/freebsd:clang_$host_cpu" } else { assert(false, "Unsupported host_os: $host_os") } -@@ -268,6 +273,8 @@ if (target_os == "android") { +@@ -274,6 +279,8 @@ if (target_os == "android") { _default_toolchain = "//build/toolchain/aix:$target_cpu" } else if (target_os == "zos") { _default_toolchain = "//build/toolchain/zos:$target_cpu" +} else if (target_os == "openbsd" || target_os == "freebsd") { + _default_toolchain = host_toolchain } else { assert(false, "Unsupported target_os: $target_os") } -@@ -302,7 +309,11 @@ is_android = current_os == "android" +@@ -308,7 +315,11 @@ is_android = current_os == "android" is_chromeos = current_os == "chromeos" is_fuchsia = current_os == "fuchsia" is_ios = current_os == "ios" -is_linux = current_os == "linux" +is_linux = current_os == "linux" || current_os == "openbsd" || + current_os == "freebsd" +is_openbsd = current_os == "openbsd" +is_freebsd = current_os == "freebsd" +is_bsd = current_os == "openbsd" || current_os == "freebsd" is_mac = current_os == "mac" is_nacl = current_os == "nacl" is_win = current_os == "win" || current_os == "winuwp" diff --git a/www/iridium/files/patch-build_config_clang_BUILD.gn b/www/iridium/files/patch-build_config_clang_BUILD.gn new file mode 100644 index 000000000000..f1bb599af891 --- /dev/null +++ b/www/iridium/files/patch-build_config_clang_BUILD.gn @@ -0,0 +1,11 @@ +--- build/config/clang/BUILD.gn.orig 2024-06-25 12:08:48 UTC ++++ build/config/clang/BUILD.gn +@@ -214,7 +214,7 @@ template("clang_lib") { + + # Adds a dependency on the Clang runtime library clang_rt.builtins. + clang_lib("compiler_builtins") { +- if (!toolchain_has_rust) { ++ if (!toolchain_has_rust || is_bsd) { + # Since there's no Rust in the toolchain, there's no concern that we'll use + # the Rust stdlib's intrinsics here. + # diff --git a/www/iridium/files/patch-build_config_compiler_BUILD.gn b/www/iridium/files/patch-build_config_compiler_BUILD.gn index 806f4835600e..30fa0c1c9c93 100644 --- a/www/iridium/files/patch-build_config_compiler_BUILD.gn +++ b/www/iridium/files/patch-build_config_compiler_BUILD.gn @@ -1,222 +1,132 @@ ---- build/config/compiler/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- build/config/compiler/BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ build/config/compiler/BUILD.gn -@@ -202,7 +202,7 @@ declare_args() { +@@ -199,7 +199,7 @@ declare_args() { # This greatly reduces the size of debug builds, at the cost of # debugging information which is required by some specialized # debugging tools. - simple_template_names = is_clang && !is_nacl && !is_win && !is_apple + simple_template_names = is_clang && !is_nacl && !is_win && !is_apple && !is_bsd } declare_args() { -@@ -266,13 +266,16 @@ config("default_include_dirs") { +@@ -251,13 +251,16 @@ config("default_include_dirs") { # Compiler instrumentation can introduce dependencies in DSOs to symbols in # the executable they are loaded into, so they are unresolved at link-time. config("no_unresolved_symbols") { - if (!using_sanitizer && + if (!using_sanitizer && !is_bsd && (is_linux || is_chromeos || is_android || is_fuchsia)) { ldflags = [ "-Wl,-z,defs", "-Wl,--as-needed", ] } + if (current_cpu == "x86" && is_openbsd) { -+ ldflags = [ "-Wl,-z,notext" ] ++ ldflags = [ "-Wl,-z,notext", "-Wl,--strip-all" ] + } } # compiler --------------------------------------------------------------------- -@@ -320,7 +323,9 @@ config("compiler") { - - configs += [ - # See the definitions below. -+ ":clang_revision", - ":rustc_revision", -+ ":compiler_cpu_abi", - ":compiler_codegen", - ":compiler_deterministic", - ] -@@ -516,6 +521,10 @@ config("compiler") { +@@ -499,6 +502,10 @@ config("compiler") { } } + if (is_openbsd) { + ldflags += [ "-Wl,-z,wxneeded" ] + } + # Linux-specific compiler flags setup. # ------------------------------------ - if (use_gold) { -@@ -1113,7 +1122,7 @@ config("compiler_cpu_abi") { + if (use_icf && (!is_apple || use_lld)) { +@@ -545,7 +552,7 @@ config("compiler") { + ldflags += [ "-Wl,-z,keep-text-section-prefix" ] + } + +- if (is_clang && !is_nacl && current_os != "zos") { ++ if (is_clang && !is_nacl && current_os != "zos" && !is_bsd) { + cflags += [ "-fcrash-diagnostics-dir=" + clang_diagnostic_dir ] + if (save_reproducers_on_lld_crash && use_lld) { + ldflags += [ +@@ -1173,7 +1180,7 @@ config("compiler_cpu_abi") { ] } } else if (current_cpu == "arm") { - if (is_clang && !is_android && !is_nacl && + if (is_clang && !is_android && !is_nacl && !is_bsd && !(is_chromeos_lacros && is_chromeos_device)) { cflags += [ "--target=arm-linux-gnueabihf" ] ldflags += [ "--target=arm-linux-gnueabihf" ] -@@ -1128,7 +1137,7 @@ config("compiler_cpu_abi") { +@@ -1188,7 +1195,7 @@ config("compiler_cpu_abi") { cflags += [ "-mtune=$arm_tune" ] } } else if (current_cpu == "arm64") { - if (is_clang && !is_android && !is_nacl && !is_fuchsia && + if (is_clang && !is_android && !is_nacl && !is_fuchsia && !is_bsd && !(is_chromeos_lacros && is_chromeos_device)) { cflags += [ "--target=aarch64-linux-gnu" ] ldflags += [ "--target=aarch64-linux-gnu" ] -@@ -1474,6 +1483,27 @@ config("compiler_deterministic") { - } +@@ -1523,7 +1530,7 @@ config("compiler_deterministic") { + # different build directory like "out/feature_a" and "out/feature_b" if + # we build same files with same compile flag. + # Other paths are already given in relative, no need to normalize them. +- if (is_nacl) { ++ if (is_nacl || is_bsd) { + # TODO(https://crbug.com/1231236): Use -ffile-compilation-dir= here. + cflags += [ + "-Xclang", +@@ -1575,7 +1582,7 @@ config("compiler_deterministic") { } -+config("clang_revision") { + config("clang_revision") { +- if (is_clang && clang_base_path == default_clang_base_path) { + if (is_clang && !is_bsd && clang_base_path == default_clang_base_path) { -+ update_args = [ -+ "--print-revision", -+ "--verify-version=$clang_version", -+ ] -+ if (llvm_force_head_revision) { -+ update_args += [ "--llvm-force-head-revision" ] -+ } -+ clang_revision = exec_script("//tools/clang/scripts/update.py", -+ update_args, -+ "trim string") -+ -+ # This is here so that all files get recompiled after a clang roll and -+ # when turning clang on or off. (defines are passed via the command line, -+ # and build system rebuild things when their commandline changes). Nothing -+ # should ever read this define. -+ defines = [ "CR_CLANG_REVISION=\"$clang_revision\"" ] -+ } -+} -+ - config("rustc_revision") { - if (rustc_revision != "") { - # Similar to the above config, this is here so that all files get recompiled -@@ -1739,7 +1769,7 @@ config("default_warnings") { - "-Wno-ignored-pragma-optimize", - ] + update_args = [ + "--print-revision", + "--verify-version=$clang_version", +@@ -1889,9 +1896,6 @@ config("default_warnings") { -- if (!is_nacl) { -+ if (!is_nacl && !is_bsd) { - cflags += [ - # TODO(crbug.com/1343975) Evaluate and possibly enable. - "-Wno-deprecated-builtins", -@@ -1923,7 +1953,7 @@ config("no_chromium_code") { - # third-party libraries. - "-Wno-c++11-narrowing", - ] -- if (!is_nacl) { -+ if (!is_nacl && !is_freebsd) { - cflags += [ - # Disabled for similar reasons as -Wunused-variable. - "-Wno-unused-but-set-variable", -@@ -2226,8 +2256,7 @@ config("default_stack_frames") { - } - - # Default "optimization on" config. --config("optimize") { } --config("xoptimize") { -+config("optimize") { - if (is_win) { - if (chrome_pgo_phase != 2) { - # Favor size over speed, /O1 must be before the common flags. -@@ -2286,8 +2315,7 @@ config("xoptimize") { - } + # TODO(crbug.com/40286317): Evaluate and possibly enable. + "-Wno-vla-extension", +- +- # TODO(crbug.com/40284799): Fix and re-enable. +- "-Wno-thread-safety-reference-return", + ] - # Turn off optimizations. --config("no_optimize") { } --config("xno_optimize") { -+config("no_optimize") { - if (is_win) { - cflags = [ - "/Od", # Disable optimization. -@@ -2327,8 +2355,7 @@ config("xno_optimize") { - # Turns up the optimization level. On Windows, this implies whole program - # optimization and link-time code generation which is very expensive and should - # be used sparingly. --config("optimize_max") { } --config("xoptimize_max") { -+config("optimize_max") { - if (is_nacl && is_nacl_irt) { - # The NaCl IRT is a special case and always wants its own config. - # Various components do: -@@ -2361,8 +2388,7 @@ config("xoptimize_max") { - # - # TODO(crbug.com/621335) - rework how all of these configs are related - # so that we don't need this disclaimer. --config("optimize_speed") { } --config("xoptimize_speed") { -+config("optimize_speed") { - if (is_nacl && is_nacl_irt) { - # The NaCl IRT is a special case and always wants its own config. - # Various components do: -@@ -2388,8 +2414,7 @@ config("xoptimize_speed") { - } - } + cflags_cc += [ +@@ -1899,7 +1903,7 @@ config("default_warnings") { + "-Wenum-compare-conditional", + ] --config("optimize_fuzzing") { } --config("xoptimize_fuzzing") { -+config("optimize_fuzzing") { - cflags = [ "-O1" ] + common_optimize_on_cflags - rustflags = [ "-Copt-level=1" ] - ldflags = common_optimize_on_ldflags -@@ -2457,7 +2482,7 @@ config("afdo_optimize_size") { +- if (!is_nacl) { ++ if (!is_nacl && !is_openbsd) { + cflags_cc += [ + # TODO(crbug.com/41486292): Fix and re-enable. + "-Wno-c++11-narrowing-const-reference", +@@ -2616,7 +2620,7 @@ config("afdo_optimize_size") { # There are some targeted places that AFDO regresses, so we provide a separate # config to allow AFDO to be disabled per-target. config("afdo") { - if (is_clang) { + if (is_clang && !is_bsd) { cflags = [] if (clang_emit_debug_info_for_profiling) { # Add the following flags to generate debug info for profiling. -@@ -2484,7 +2509,7 @@ config("afdo") { +@@ -2643,7 +2647,7 @@ config("afdo") { cflags += [ "-Wno-backend-plugin" ] inputs = [ _clang_sample_profile ] } - } else if (auto_profile_path != "" && is_a_target_toolchain) { + } else if (auto_profile_path != "" && is_a_target_toolchain && !is_bsd) { cflags = [ "-fauto-profile=${auto_profile_path}" ] inputs = [ auto_profile_path ] } -@@ -2522,8 +2547,7 @@ config("win_pdbaltpath") { - } - - # Full symbols. --config("symbols") { } --config("xsymbols") { -+config("symbols") { - rustflags = [] - if (is_win) { - if (is_clang) { -@@ -2649,7 +2673,8 @@ config("xsymbols") { +@@ -2808,7 +2812,8 @@ config("symbols") { configs += [ "//build/config:compress_debug_sections" ] } - if (is_clang && (!is_nacl || is_nacl_saigo) && current_os != "zos") { + if (is_clang && (!is_nacl || is_nacl_saigo) && current_os != "zos" && + !is_bsd) { if (is_apple) { - # TODO(https://crbug.com/1050118): Investigate missing debug info on mac. + # TODO(crbug.com/40117949): Investigate missing debug info on mac. # Make sure we don't use constructor homing on mac. -@@ -2672,8 +2697,7 @@ config("xsymbols") { - # Minimal symbols. - # This config guarantees to hold symbol for stack trace which are shown to user - # when crash happens in unittests running on buildbot. --config("minimal_symbols") { } --config("xminimal_symbols") { -+config("minimal_symbols") { - rustflags = [] - if (is_win) { - # Functions, files, and line tables only. -@@ -2758,8 +2782,7 @@ config("xminimal_symbols") { - # This configuration contains function names only. That is, the compiler is - # told to not generate debug information and the linker then just puts function - # names in the final debug information. --config("no_symbols") { } --config("xno_symbols") { -+config("no_symbols") { - if (is_win) { - ldflags = [ "/DEBUG" ] - diff --git a/www/iridium/files/patch-build_config_compiler_pgo_BUILD.gn b/www/iridium/files/patch-build_config_compiler_pgo_BUILD.gn deleted file mode 100644 index 057d28b9fc28..000000000000 --- a/www/iridium/files/patch-build_config_compiler_pgo_BUILD.gn +++ /dev/null @@ -1,19 +0,0 @@ ---- build/config/compiler/pgo/BUILD.gn.orig 2023-11-22 14:00:11 UTC -+++ build/config/compiler/pgo/BUILD.gn -@@ -139,13 +139,14 @@ config("pgo_optimization_flags") { - - # Enable basic block layout based on the extended TSP problem. This aims to - # improve icache utilization and reduce the binary size. -- if (use_thin_lto) { -+ # __clang_major__ >= 15 -+ if (use_thin_lto && !is_bsd) { - if (is_win) { - ldflags = [ "-mllvm:-enable-ext-tsp-block-placement=1" ] - } else { - ldflags = [ "-Wl,-mllvm,-enable-ext-tsp-block-placement=1" ] - } -- } else { -+ } else if (!is_bsd) { - cflags += [ - "-mllvm", - "-enable-ext-tsp-block-placement=1", diff --git a/www/iridium/files/patch-build_config_rust.gni b/www/iridium/files/patch-build_config_rust.gni new file mode 100644 index 000000000000..f576b928e740 --- /dev/null +++ b/www/iridium/files/patch-build_config_rust.gni @@ -0,0 +1,13 @@ +--- build/config/rust.gni.orig 2024-06-25 12:08:48 UTC ++++ build/config/rust.gni +@@ -272,6 +272,10 @@ if (is_linux || is_chromeos) { + } + } + ++if (is_bsd) { ++ rust_abi_target = string_replace(rust_abi_target, "linux-gnu", current_os) ++} ++ + assert(!toolchain_has_rust || rust_abi_target != "") + + # This variable is passed to the Rust libstd build. diff --git a/www/iridium/files/patch-build_rust_std_BUILD.gn b/www/iridium/files/patch-build_rust_std_BUILD.gn new file mode 100644 index 000000000000..9c1493819840 --- /dev/null +++ b/www/iridium/files/patch-build_rust_std_BUILD.gn @@ -0,0 +1,10 @@ +--- build/rust/std/BUILD.gn.orig 2024-06-25 12:08:48 UTC ++++ build/rust/std/BUILD.gn +@@ -90,7 +90,6 @@ if (toolchain_has_rust) { + # don't need to pass to the C++ linker because they're used for specialized + # purposes. + skip_stdlib_files = [ +- "profiler_builtins", + "rustc_std_workspace_alloc", + "rustc_std_workspace_core", + "rustc_std_workspace_std", diff --git a/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni b/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni index 9ca4cf89033b..7381d7505bc9 100644 --- a/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni +++ b/www/iridium/files/patch-build_toolchain_gcc__toolchain.gni @@ -1,44 +1,44 @@ ---- build/toolchain/gcc_toolchain.gni.orig 2024-02-04 14:46:08 UTC +--- build/toolchain/gcc_toolchain.gni.orig 2024-06-25 12:08:48 UTC +++ build/toolchain/gcc_toolchain.gni -@@ -53,6 +53,13 @@ if (enable_resource_allowlist_generation) { +@@ -57,6 +57,13 @@ if (enable_resource_allowlist_generation) { "enable_resource_allowlist_generation=true does not work for target_os=$target_os") } +declare_args() { + extra_cflags = "" + extra_cppflags = "" + extra_cxxflags = "" + extra_ldflags = "" +} + # This template defines a toolchain for something that works like gcc # (including clang). # @@ -878,22 +885,12 @@ template("gcc_toolchain") { - # use_gold too. + # actually just be doing a native compile. template("clang_toolchain") { gcc_toolchain(target_name) { - _path = "$clang_base_path/bin" - _is_path_absolute = get_path_info(_path, "abspath") == _path - - # Preserve absolute paths for tools like distcc. - if (_is_path_absolute && filter_include([ _path ], [ "//*" ]) == []) { - prefix = _path - } else { - prefix = rebase_path(_path, root_build_dir) - } - - cc = "${prefix}/clang" - cxx = "${prefix}/clang++" + cc = "cc" + cxx = "c++" ld = cxx - readelf = "${prefix}/llvm-readelf" - ar = "${prefix}/llvm-ar" - nm = "${prefix}/llvm-nm" + readelf = "readelf" + ar = "ar" + nm = "nm" forward_variables_from(invoker, "*", [ "toolchain_args" ]) diff --git a/www/iridium/files/patch-build_toolchain_toolchain.gni b/www/iridium/files/patch-build_toolchain_toolchain.gni index b618a315da68..9dfbb8528a00 100644 --- a/www/iridium/files/patch-build_toolchain_toolchain.gni +++ b/www/iridium/files/patch-build_toolchain_toolchain.gni @@ -1,11 +1,11 @@ ---- build/toolchain/toolchain.gni.orig 2023-11-22 14:00:11 UTC +--- build/toolchain/toolchain.gni.orig 2024-06-25 12:08:48 UTC +++ build/toolchain/toolchain.gni -@@ -72,7 +72,7 @@ if (host_os == "mac") { +@@ -68,7 +68,7 @@ if (host_os == "mac") { host_shlib_extension = ".dylib" } else if (host_os == "win") { host_shlib_extension = ".dll" -} else if (host_os == "linux" || host_os == "aix") { +} else if (is_posix) { host_shlib_extension = ".so" } else { assert(false, "Host platform not supported") diff --git a/www/iridium/files/patch-cc_BUILD.gn b/www/iridium/files/patch-cc_BUILD.gn index 11f43789124d..f8d17a2dac3b 100644 --- a/www/iridium/files/patch-cc_BUILD.gn +++ b/www/iridium/files/patch-cc_BUILD.gn @@ -1,19 +1,19 @@ ---- cc/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- cc/BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ cc/BUILD.gn -@@ -676,7 +676,7 @@ cc_test_static_library("test_support") { +@@ -677,7 +677,7 @@ cc_test_static_library("test_support") { if (enable_vulkan) { deps += [ "//gpu/vulkan/init" ] } - if (!is_android) { + if (!is_android && !is_bsd) { data_deps = [ "//third_party/mesa_headers" ] } if (skia_use_dawn) { -@@ -931,7 +931,6 @@ cc_test("cc_unittests") { +@@ -936,7 +936,6 @@ cc_test("cc_unittests") { data = [ "//components/test/data/viz/" ] data_deps = [ "//testing/buildbot/filters:cc_unittests_filters", - "//third_party/mesa_headers", ] if (is_android && enable_chrome_android_internal) { diff --git a/www/iridium/files/patch-cc_base_features.cc b/www/iridium/files/patch-cc_base_features.cc index f8efa7d28188..06c7b117eb44 100644 --- a/www/iridium/files/patch-cc_base_features.cc +++ b/www/iridium/files/patch-cc_base_features.cc @@ -1,11 +1,11 @@ ---- cc/base/features.cc.orig 2023-11-22 14:00:11 UTC +--- cc/base/features.cc.orig 2024-06-25 12:08:48 UTC +++ cc/base/features.cc -@@ -84,7 +84,7 @@ BASE_FEATURE(kNormalPriorityImageDecoding, +@@ -88,7 +88,7 @@ BASE_FEATURE(kNormalPriorityImageDecoding, // be using a separate flag to control the launch on GL. BASE_FEATURE(kUseDMSAAForTiles, "UseDMSAAForTiles", -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT #else base::FEATURE_DISABLED_BY_DEFAULT diff --git a/www/iridium/files/patch-cc_paint_paint__op__writer.h b/www/iridium/files/patch-cc_paint_paint__op__writer.h deleted file mode 100644 index bc925cb3bb78..000000000000 --- a/www/iridium/files/patch-cc_paint_paint__op__writer.h +++ /dev/null @@ -1,41 +0,0 @@ ---- cc/paint/paint_op_writer.h.orig 2024-02-04 14:46:08 UTC -+++ cc/paint/paint_op_writer.h -@@ -122,10 +122,17 @@ class CC_PAINT_EXPORT PaintOpWriter { - // easier to keep serialized size calculation in sync with serialization and - // deserialization, and make it possible to allow dynamic sizing for some - // data types (see the specialized/overloaded functions). -+#if defined(__clang__) && (__clang_major__ >= 15) - template - static constexpr size_t SerializedSize(); - template - static constexpr size_t SerializedSize(const T& data); -+#else -+ template -+ static size_t SerializedSize(); -+ template -+ static size_t SerializedSize(const T& data); -+#endif - static size_t SerializedSize(const PaintImage& image); - static size_t SerializedSize(const PaintRecord& record); - static size_t SerializedSize(const SkHighContrastConfig& config); -@@ -463,12 +470,20 @@ constexpr size_t PaintOpWriter::SerializedSize -+#if defined(__clang__) && (__clang_major__ >= 15) - constexpr size_t PaintOpWriter::SerializedSize() { -+#else -+size_t PaintOpWriter::SerializedSize() { -+#endif - static_assert(std::is_arithmetic_v || std::is_enum_v); - return SerializedSizeSimple(); - } - template -+#if defined(__clang__) && (__clang_major__ >= 15) - constexpr size_t PaintOpWriter::SerializedSize(const T& data) { -+#else -+size_t PaintOpWriter::SerializedSize(const T& data) { -+#endif - return SerializedSizeSimple(); - } - diff --git a/www/iridium/files/patch-chrome_app_app__management__strings.grdp b/www/iridium/files/patch-chrome_app_app__management__strings.grdp deleted file mode 100644 index 7410a3ea3ec1..000000000000 --- a/www/iridium/files/patch-chrome_app_app__management__strings.grdp +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/app/app_management_strings.grdp.orig 2024-02-04 14:46:08 UTC -+++ chrome/app/app_management_strings.grdp -@@ -194,7 +194,7 @@ - You can open and edit supported files with this app from Finder or other apps. To control which files open this app by default, <a href="#">learn how to set default apps on your device</a>. - - -- -+ - - You can open and edit supported files with this app from your file browser or other apps. To control which files open this app by default, <a href="#">learn how to set default apps on your device</a>. - diff --git a/www/iridium/files/patch-chrome_app_chrome__command__ids.h b/www/iridium/files/patch-chrome_app_chrome__command__ids.h index 47baca163351..61d35770d035 100644 --- a/www/iridium/files/patch-chrome_app_chrome__command__ids.h +++ b/www/iridium/files/patch-chrome_app_chrome__command__ids.h @@ -1,17 +1,17 @@ ---- chrome/app/chrome_command_ids.h.orig 2023-10-21 11:51:27 UTC +--- chrome/app/chrome_command_ids.h.orig 2024-06-25 12:08:48 UTC +++ chrome/app/chrome_command_ids.h @@ -68,12 +68,12 @@ #define IDC_TOGGLE_MULTITASK_MENU 34050 #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #define IDC_USE_SYSTEM_TITLE_BAR 34051 #endif - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch of lacros-chrome is complete. + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) #define IDC_RESTORE_WINDOW 34052 #endif diff --git a/www/iridium/files/patch-chrome_app_chrome__main.cc b/www/iridium/files/patch-chrome_app_chrome__main.cc index e2195e983f46..47e16ac27ca3 100644 --- a/www/iridium/files/patch-chrome_app_chrome__main.cc +++ b/www/iridium/files/patch-chrome_app_chrome__main.cc @@ -1,34 +1,43 @@ ---- chrome/app/chrome_main.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/app/chrome_main.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/app/chrome_main.cc -@@ -29,11 +29,11 @@ - #include "chrome/app/notification_metrics.h" +@@ -28,11 +28,11 @@ + #include "chrome/app/chrome_main_mac.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/base_switches.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/app/chrome_main_linux.h" #endif -@@ -138,7 +138,7 @@ int ChromeMain(int argc, const char** argv) { +@@ -80,7 +80,7 @@ int ChromeMain(int argc, const char** argv) { + #error Unknown platform. + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + PossiblyDetermineFallbackChromeChannel(argv[0]); + #endif + +@@ -141,7 +141,7 @@ int ChromeMain(int argc, const char** argv) { SetUpBundleOverrides(); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) AppendExtraArgumentsToCommandLine(command_line); #endif -@@ -167,7 +167,7 @@ int ChromeMain(int argc, const char** argv) { +@@ -170,7 +170,7 @@ int ChromeMain(int argc, const char** argv) { headless_mode_handle = headless::InitHeadlessMode(); } else { #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (headless::IsOldHeadlessMode()) { #if BUILDFLAG(GOOGLE_CHROME_BRANDING) command_line->AppendSwitch(::headless::switches::kEnableCrashReporter); diff --git a/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc b/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc index 2687138dd2bd..891babfce23a 100644 --- a/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc +++ b/www/iridium/files/patch-chrome_app_chrome__main__delegate.cc @@ -1,112 +1,154 @@ ---- chrome/app/chrome_main_delegate.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/app/chrome_main_delegate.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/app/chrome_main_delegate.cc -@@ -145,7 +145,7 @@ +@@ -137,7 +137,7 @@ #include "components/about_ui/credit_utils.h" #endif -#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) +#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && !BUILDFLAG(IS_BSD) #include "components/nacl/common/nacl_paths.h" #include "components/nacl/zygote/nacl_fork_delegate_linux.h" #endif -@@ -189,16 +189,16 @@ +@@ -180,21 +180,21 @@ #include "v8/include/v8.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/environment.h" #endif +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/nix/scoped_xdg_activation_token_injector.h" + #include "ui/linux/display_server_utils.h" + #endif + -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "base/message_loop/message_pump_libevent.h" #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/policy/policy_path_parser.h" #include "components/crash/core/app/crashpad.h" #endif -@@ -337,7 +337,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty +@@ -241,7 +241,7 @@ + #include "base/scoped_add_feature_flags.h" + #include "ui/base/ui_base_features.h" + #include "ui/ozone/public/ozone_platform.h" +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "chrome/browser/chrome_browser_main_extra_parts_linux.h" + #endif + #endif // BUILDFLAG(IS_OZONE) +@@ -341,7 +341,7 @@ void AdjustLinuxOOMScore(const std::string& process_ty // and resources loaded. bool SubprocessNeedsResourceBundle(const std::string& process_type) { return -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // The zygote process opens the resources for the renderers. process_type == switches::kZygoteProcess || #endif -@@ -422,7 +422,7 @@ bool HandleVersionSwitches(const base::CommandLine& co +@@ -426,7 +426,7 @@ bool HandleVersionSwitches(const base::CommandLine& co - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) // Show the man page if --help or -h is on the command line. void HandleHelpSwitches(const base::CommandLine& command_line) { if (command_line.HasSwitch(switches::kHelp) || -@@ -600,7 +600,7 @@ void InitializeUserDataDir(base::CommandLine* command_ +@@ -472,7 +472,7 @@ void SetCrashpadUploadConsentPostLogin() { + } + #endif // BUILDFLAG(IS_CHROMEOS_LACROS) + +-#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) ++#if !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) + void SIGTERMProfilingShutdown(int signal) { + content::Profiling::Stop(); + struct sigaction sigact; +@@ -554,7 +554,7 @@ std::optional AcquireProcessSingleton( + // process can be exited. + ChromeProcessSingleton::CreateInstance(user_data_dir); + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Read the xdg-activation token and set it in the command line for the + // duration of the notification in order to ensure this is propagated to an + // already running browser process if it exists. +@@ -638,7 +638,7 @@ void InitializeUserDataDir(base::CommandLine* command_ std::string process_type = command_line->GetSwitchValueASCII(switches::kProcessType); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux, Chrome does not support running multiple copies under different // DISPLAYs, so the profile directory can be specified in the environment to // support the virtual desktop use-case. -@@ -690,7 +690,7 @@ void RecordMainStartupMetrics(base::TimeTicks applicat +@@ -765,7 +765,7 @@ void RecordMainStartupMetrics(base::TimeTicks applicat #endif #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Record the startup process creation time on supported platforms. On Android // this is recorded in ChromeMainDelegateAndroid. startup_metric_utils::GetCommon().RecordStartupProcessCreationTime( -@@ -1044,7 +1044,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv - base::InitializeCpuReductionExperiment(); - base::sequence_manager::internal::SequenceManagerImpl::InitializeFeatures(); - base::sequence_manager::internal::ThreadController::InitializeFeatures(); --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - base::MessagePumpLibevent::InitializeFeatures(); - #elif BUILDFLAG(IS_MAC) - base::PlatformThread::InitFeaturesPostFieldTrial(); -@@ -1196,7 +1196,7 @@ absl::optional ChromeMainDelegate::BasicStartupCo +@@ -957,7 +957,7 @@ std::optional ChromeMainDelegate::PostEarlyInitia + #if BUILDFLAG(IS_OZONE) + // Initialize Ozone platform and add required feature flags as per platform's + // properties. +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + ui::SetOzonePlatformForLinuxIfNeeded(*base::CommandLine::ForCurrentProcess()); + #endif + ui::OzonePlatform::PreEarlyInitialization(); +@@ -1150,7 +1150,7 @@ void ChromeMainDelegate::CommonEarlyInitialization(Inv + const bool is_canary_dev = IsCanaryDev(); + const bool emit_crashes = + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + is_canary_dev; + #else + false; +@@ -1305,7 +1305,7 @@ std::optional ChromeMainDelegate::BasicStartupCom - // TODO(crbug.com/1052397): Revisit the macro expression once build flag + // TODO(crbug.com/40118868): Revisit the macro expression once build flag // switch of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) // This will directly exit if the user asked for help. HandleHelpSwitches(command_line); #endif -@@ -1226,7 +1226,7 @@ absl::optional ChromeMainDelegate::BasicStartupCo +@@ -1335,7 +1335,7 @@ std::optional ChromeMainDelegate::BasicStartupCom #if BUILDFLAG(IS_CHROMEOS) chromeos::dbus_paths::RegisterPathProvider(); #endif -#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) +#if BUILDFLAG(ENABLE_NACL) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) nacl::RegisterPathProvider(); #endif -@@ -1637,7 +1637,7 @@ void ChromeMainDelegate::PreSandboxStartup() { +@@ -1722,7 +1722,7 @@ void ChromeMainDelegate::PreSandboxStartup() { CHECK(!loaded_locale.empty()) << "Locale could not be found for " << locale; } -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) // Zygote needs to call InitCrashReporter() in RunZygote(). if (process_type != switches::kZygoteProcess) { if (command_line.HasSwitch(switches::kPreCrashpadCrashTest)) { -@@ -1746,7 +1746,7 @@ absl::variant Chrome +@@ -1821,7 +1821,7 @@ absl::variant Chrome // This entry is not needed on Linux, where the NaCl loader // process is launched via nacl_helper instead. -#if BUILDFLAG(ENABLE_NACL) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(ENABLE_NACL) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) {switches::kNaClLoaderProcess, NaClMain}, #else {"", nullptr}, // To avoid constant array of size 0 diff --git a/www/iridium/files/patch-chrome_app_chromium__strings.grd b/www/iridium/files/patch-chrome_app_chromium__strings.grd deleted file mode 100644 index 6f360bb94e0a..000000000000 --- a/www/iridium/files/patch-chrome_app_chromium__strings.grd +++ /dev/null @@ -1,38 +0,0 @@ ---- chrome/app/chromium_strings.grd.orig 2024-02-04 14:46:08 UTC -+++ chrome/app/chromium_strings.grd -@@ -315,7 +315,7 @@ If you update this file, be sure also to update google - Welcome to Iridium; new browser window opened - - -- -+ - - Welcome to Iridium - -@@ -465,7 +465,7 @@ If you update this file, be sure also to update google - To get future browser updates, you'll need Windows 10 or later. This computer is using Windows 8.1. - - -- -+ - - The browser may not function correctly because it is no longer supported on this Linux distribution - -@@ -892,7 +892,7 @@ Permissions you've already given to websites and apps - - - -- -+ - - Not used in Chromium. Placeholder to keep resource maps in sync. - -@@ -1269,7 +1269,7 @@ Permissions you've already given to websites and apps - - - -- -+ - - Not used in Chromium. Placeholder to keep resource maps in sync. - diff --git a/www/iridium/files/patch-chrome_app_generated__resources.grd b/www/iridium/files/patch-chrome_app_generated__resources.grd deleted file mode 100644 index 5772c9d713a1..000000000000 --- a/www/iridium/files/patch-chrome_app_generated__resources.grd +++ /dev/null @@ -1,92 +0,0 @@ ---- chrome/app/generated_resources.grd.orig 2024-02-04 14:46:08 UTC -+++ chrome/app/generated_resources.grd -@@ -2,7 +2,7 @@ - - -@@ -3609,7 +3609,7 @@ are declared in tools/grit/grit_rule.gni. - - - -- -+ - - Device Credentials - -@@ -5494,7 +5494,7 @@ are declared in tools/grit/grit_rule.gni. - Read information about your browser, OS, device, installed software, registry values and files - - -- -+ - - Read information about your browser, OS, device, installed software and files - -@@ -6207,7 +6207,7 @@ Keep your key file in a safe place. You will need it t - Old versions of Chrome Apps won't open on Windows devices after December 2022. Contact your administrator to update to a new version or remove this app. - - -- -+ - - Old versions of Chrome Apps won't open on Linux devices after December 2022. Contact your administrator to update to a new version or remove this app. - -@@ -6253,7 +6253,7 @@ Keep your key file in a safe place. You will need it t - Old versions of Chrome apps won't open on Windows devices after December 2022. You can check if there's a new version available. - - -- -+ - - Old versions of Chrome apps won't open on Linux devices after December 2022. You can check if there's a new version available. - -@@ -10611,7 +10611,7 @@ Check your passwords anytime in - Update - -- -+ - - Finish update - -@@ -10958,7 +10958,7 @@ Check your passwords anytime in -+ - - Use system title bar and borders - -@@ -11956,7 +11956,7 @@ Check your passwords anytime in -+ - - Share information about your device? - -@@ -12364,7 +12364,7 @@ Please help our engineers fix this problem. Tell us wh - Set as default - - -- -+ - - Minimize - -@@ -14571,7 +14571,7 @@ Please help our engineers fix this problem. Tell us wh - Open Anyway - - -- -+ - - System Signals Utilities - diff --git a/www/iridium/files/patch-chrome_app_google__chrome__strings.grd b/www/iridium/files/patch-chrome_app_google__chrome__strings.grd deleted file mode 100644 index 274c06c58980..000000000000 --- a/www/iridium/files/patch-chrome_app_google__chrome__strings.grd +++ /dev/null @@ -1,38 +0,0 @@ ---- chrome/app/google_chrome_strings.grd.orig 2024-02-04 14:46:08 UTC -+++ chrome/app/google_chrome_strings.grd -@@ -301,7 +301,7 @@ chromium_strings.grd. --> - Welcome to Chrome; new browser window opened - - -- -+ - - Welcome to Google Chrome - -@@ -453,7 +453,7 @@ chromium_strings.grd. --> - To get future Google Chrome updates, you'll need Windows 10 or later. This computer is using Windows 8.1. - - -- -+ - - Google Chrome may not function correctly because it is no longer supported on this Linux distribution - -@@ -877,7 +877,7 @@ Permissions you've already given to websites and apps - - - -- -+ - - - Relaunch to Update - Your tabs will reopen -@@ -1302,7 +1302,7 @@ Permissions you've already given to websites and apps - - - -- -+ - - Relaunch to finish Chrome update - diff --git a/www/iridium/files/patch-chrome_app_profiles__strings.grdp b/www/iridium/files/patch-chrome_app_profiles__strings.grdp deleted file mode 100644 index 2ffd554cdf49..000000000000 --- a/www/iridium/files/patch-chrome_app_profiles__strings.grdp +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/app/profiles_strings.grdp.orig 2023-10-21 11:51:27 UTC -+++ chrome/app/profiles_strings.grdp -@@ -54,7 +54,7 @@ - Add Profile... - - -- -+ - - Add profile... - diff --git a/www/iridium/files/patch-chrome_app_settings__strings.grdp b/www/iridium/files/patch-chrome_app_settings__strings.grdp deleted file mode 100644 index 5fc5b158c851..000000000000 --- a/www/iridium/files/patch-chrome_app_settings__strings.grdp +++ /dev/null @@ -1,35 +0,0 @@ ---- chrome/app/settings_strings.grdp.orig 2023-11-22 14:00:11 UTC -+++ chrome/app/settings_strings.grdp -@@ -183,12 +183,12 @@ - Manage accessibility features - - -- -+ - - Swipe between pages - - -- -+ - - Navigate back and forward with a swipe gesture - -@@ -222,7 +222,7 @@ - Theme - - -- -+ - - GTK - -@@ -242,7 +242,7 @@ - Use Classic - - -- -+ - - Reset to default - diff --git a/www/iridium/files/patch-chrome_app_theme_chrome__unscaled__resources.grd b/www/iridium/files/patch-chrome_app_theme_chrome__unscaled__resources.grd deleted file mode 100644 index ac06495ef63c..000000000000 --- a/www/iridium/files/patch-chrome_app_theme_chrome__unscaled__resources.grd +++ /dev/null @@ -1,29 +0,0 @@ ---- chrome/app/theme/chrome_unscaled_resources.grd.orig 2024-02-04 14:46:08 UTC -+++ chrome/app/theme/chrome_unscaled_resources.grd -@@ -16,7 +16,7 @@ - - - -- -+ - - - -@@ -63,7 +63,7 @@ - - - -- -+ - - - -@@ -77,7 +77,7 @@ - - - -- -+ - - - diff --git a/www/iridium/files/patch-chrome_app_theme_theme__resources.grd b/www/iridium/files/patch-chrome_app_theme_theme__resources.grd deleted file mode 100644 index d9a99202061e..000000000000 --- a/www/iridium/files/patch-chrome_app_theme_theme__resources.grd +++ /dev/null @@ -1,59 +0,0 @@ ---- chrome/app/theme/theme_resources.grd.orig 2023-10-21 11:51:27 UTC -+++ chrome/app/theme/theme_resources.grd -@@ -146,14 +146,14 @@ - - - -- -+ - - - - - - -- -+ - - - -@@ -161,7 +161,7 @@ - - - -- -+ - - - -@@ -173,7 +173,7 @@ - - - -- -+ - - - -@@ -182,10 +182,10 @@ - - - -- -+ - - -- -+ - - - -@@ -194,7 +194,7 @@ - - - -- -+ - - - diff --git a/www/iridium/files/patch-chrome_browser_BUILD.gn b/www/iridium/files/patch-chrome_browser_BUILD.gn index 608186430e19..cf8270080bbc 100644 --- a/www/iridium/files/patch-chrome_browser_BUILD.gn +++ b/www/iridium/files/patch-chrome_browser_BUILD.gn @@ -1,16 +1,16 @@ ---- chrome/browser/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/BUILD.gn -@@ -6526,6 +6526,13 @@ static_library("browser") { +@@ -6708,6 +6708,13 @@ static_library("browser") { } } + if (is_bsd) { + sources -= [ + "metrics/bluetooth_metrics_provider.cc", + "metrics/bluetooth_metrics_provider.h", + ] + } + if (is_linux && use_dbus) { sources += [ "dbus_memory_pressure_evaluator_linux.cc", diff --git a/www/iridium/files/patch-chrome_browser_about__flags.cc b/www/iridium/files/patch-chrome_browser_about__flags.cc index 008c67b63265..22ecdeb64a16 100644 --- a/www/iridium/files/patch-chrome_browser_about__flags.cc +++ b/www/iridium/files/patch-chrome_browser_about__flags.cc @@ -1,180 +1,218 @@ ---- chrome/browser/about_flags.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/about_flags.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/about_flags.cc -@@ -231,7 +231,7 @@ +@@ -238,7 +238,7 @@ #include "ui/ui_features.h" #include "url/url_features.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/allocator/buildflags.h" #endif -@@ -330,7 +330,7 @@ +@@ -328,7 +328,7 @@ #include "device/vr/public/cpp/features.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) - #include "ui/ozone/buildflags.h" #include "ui/ozone/public/ozone_switches.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) -@@ -344,7 +344,7 @@ + +@@ -337,7 +337,7 @@ #include "chrome/browser/win/titlebar_config.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/profile_management/profile_management_features.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -@@ -474,7 +474,7 @@ const FeatureEntry::FeatureVariation kDXGIWaitableSwap +@@ -482,7 +482,7 @@ const FeatureEntry::FeatureVariation kDXGIWaitableSwap {"Max 3 Frames", &kDXGIWaitableSwapChain3Frames, 1, nullptr}}; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const FeatureEntry::Choice kOzonePlatformHintRuntimeChoices[] = { {flag_descriptions::kOzonePlatformHintChoiceDefault, "", ""}, {flag_descriptions::kOzonePlatformHintChoiceAuto, -@@ -1463,7 +1463,7 @@ const FeatureEntry::FeatureVariation kChromeRefresh202 - nullptr}}; +@@ -1265,7 +1265,7 @@ const FeatureEntry::FeatureVariation kPageContentAnnot + }; + + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + const FeatureEntry::FeatureParam kHistoryEmbeddingsAtKeywordAcceleration[]{ + {"AtKeywordAcceleration", "true"}, + }; +@@ -1328,7 +1328,7 @@ const FeatureEntry::FeatureVariation + }; #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - const FeatureEntry::FeatureParam kShortcutBoostSearchAndUrl1414[] = { - {"ShortcutBoostSearchScore", "1414"}, - {"ShortcutBoostUrlScore", "1414"}}; -@@ -5295,13 +5295,13 @@ const FeatureEntry kFeatureEntries[] = { +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + const FeatureEntry::FeatureParam kShortcutBoostSingleUrl[] = { + {"ShortcutBoostSearchScore", "0"}, + {"ShortcutBoostNonTopHitThreshold", "0"}, +@@ -3679,7 +3679,7 @@ const flags_ui::FeatureEntry::FeatureVariation + std::size(kParcelTrackingTestDataOutForDelivery), nullptr}, + }; + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + const flags_ui::FeatureEntry::FeatureParam + kDesktopPWAsLinkCapturingDefaultOn[] = {{"on_by_default", "true"}}; + const flags_ui::FeatureEntry::FeatureParam +@@ -4511,7 +4511,7 @@ const FeatureEntry kFeatureEntries[] = { + }, + #endif // BUILDFLAG(IS_ANDROID) + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + { + "fluent-overlay-scrollbars", + flag_descriptions::kFluentOverlayScrollbarsName, +@@ -4947,7 +4947,7 @@ const FeatureEntry kFeatureEntries[] = { + flag_descriptions::kWebAppUniversalInstallDescription, kOsDesktop, + FEATURE_VALUE_TYPE(features::kWebAppUniversalInstall)}, + #endif // !BUILDFLAG(IS_ANDROID) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + {"shortcuts-not-apps", flag_descriptions::kShortcutsNotAppsName, + flag_descriptions::kShortcutsNotAppsDescription, + kOsMac | kOsWin | kOsLinux, +@@ -5074,7 +5074,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(features::kWebShare)}, #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - {"ozone-platform-hint", flag_descriptions::kOzonePlatformHintName, - flag_descriptions::kOzonePlatformHintDescription, kOsLinux, ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || BUILDFLAG(IS_BSD) + {"pulseaudio-loopback-for-cast", + flag_descriptions::kPulseaudioLoopbackForCastName, + flag_descriptions::kPulseaudioLoopbackForCastDescription, kOsLinux, +@@ -5090,7 +5090,7 @@ const FeatureEntry kFeatureEntries[] = { MULTI_VALUE_TYPE(kOzonePlatformHintRuntimeChoices)}, #endif // BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) {"skip-undecryptable-passwords", flag_descriptions::kSkipUndecryptablePasswordsName, flag_descriptions::kSkipUndecryptablePasswordsDescription, -@@ -5612,7 +5612,7 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(feed::kFeedSportsCard)}, - #endif // BUILDFLAG(IS_ANDROID) - #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - {"following-feed-sidepanel", flag_descriptions::kFollowingFeedSidepanelName, - flag_descriptions::kFollowingFeedSidepanelDescription, kOsDesktop, - FEATURE_VALUE_TYPE(feed::kWebUiFeed)}, -@@ -6251,7 +6251,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -6011,7 +6011,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(omnibox::kZeroSuggestInMemoryCaching)}, #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - {"omnibox-actions-ui-simplification", - flag_descriptions::kOmniboxActionsUISimplificationName, - flag_descriptions::kOmniboxActionsUISimplificationDescription, kOsDesktop, -@@ -7087,7 +7087,7 @@ const FeatureEntry kFeatureEntries[] = { - flag_descriptions::kParallelDownloadingDescription, kOsAll, - FEATURE_VALUE_TYPE(download::features::kParallelDownloading)}, +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + {"omnibox-domain-suggestions", + flag_descriptions::kOmniboxDomainSuggestionsName, + flag_descriptions::kOmniboxDomainSuggestionsDescription, kOsDesktop, +@@ -6331,7 +6331,7 @@ const FeatureEntry kFeatureEntries[] = { + "OrganicRepeatableQueries")}, --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - {"enable-async-dns", flag_descriptions::kAsyncDnsName, - flag_descriptions::kAsyncDnsDescription, kOsWin | kOsLinux, - FEATURE_VALUE_TYPE(features::kAsyncDns)}, -@@ -8122,7 +8122,7 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE(supervised_user::kEnableProtoApiForClassifyUrl)}, - #endif // BUILDFLAG(ENABLE_SUPERVISED_USERS) + #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + {"history-embeddings", flag_descriptions::kHistoryEmbeddingsName, + flag_descriptions::kHistoryEmbeddingsDescription, kOsDesktop, + FEATURE_WITH_PARAMS_VALUE_TYPE(history_embeddings::kHistoryEmbeddings, +@@ -7949,7 +7949,7 @@ const FeatureEntry kFeatureEntries[] = { + flag_descriptions::kCooperativeSchedulingDescription, kOsAll, + FEATURE_VALUE_TYPE(features::kCooperativeScheduling)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) {"enable-network-service-sandbox", flag_descriptions::kEnableNetworkServiceSandboxName, flag_descriptions::kEnableNetworkServiceSandboxDescription, -@@ -8147,7 +8147,7 @@ const FeatureEntry kFeatureEntries[] = { - FEATURE_VALUE_TYPE( - supervised_user::kFilterWebsitesForSupervisedUsersOnDesktopAndIOS)}, +@@ -7973,7 +7973,7 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(media::kV4L2FlatStatefulVideoDecoder)}, + #endif -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"enable-family-link-extensions-permissions", flag_descriptions:: kEnableExtensionsPermissionsForSupervisedUsersOnDesktopName, -@@ -8817,7 +8817,7 @@ const FeatureEntry kFeatureEntries[] = { - #endif - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - {"quick-commands", flag_descriptions::kQuickCommandsName, - flag_descriptions::kQuickCommandsDescription, kOsDesktop, - FEATURE_VALUE_TYPE(features::kQuickCommands)}, -@@ -9088,7 +9088,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8810,7 +8810,7 @@ const FeatureEntry kFeatureEntries[] = { FEATURE_VALUE_TYPE(ash::features::kWallpaperPerDesk)}, #endif // BUILDFLAG(IS_CHROMEOS_ASH) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"enable-get-all-screens-media", flag_descriptions::kGetAllScreensMediaName, flag_descriptions::kGetAllScreensMediaDescription, kOsCrOS | kOsLacros | kOsLinux, -@@ -9130,7 +9130,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -8849,7 +8849,7 @@ const FeatureEntry kFeatureEntries[] = { #if BUILDFLAG(IS_WIN) || \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || \ -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) { "ui-debug-tools", flag_descriptions::kUIDebugToolsName, -@@ -9688,7 +9688,7 @@ const FeatureEntry kFeatureEntries[] = { +@@ -9086,7 +9086,7 @@ const FeatureEntry kFeatureEntries[] = { #endif - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) - {"document-picture-in-picture-api", - flag_descriptions::kDocumentPictureInPictureApiName, - flag_descriptions::kDocumentPictureInPictureApiDescription, -@@ -10795,7 +10795,7 @@ const FeatureEntry kFeatureEntries[] = { + {"policy-indication-for-managed-default-search", + flag_descriptions::kPolicyIndicationForManagedDefaultSearchName, + flag_descriptions::kPolicyIndicationForManagedDefaultSearchDescription, +@@ -9393,7 +9393,7 @@ const FeatureEntry kFeatureEntries[] = { + #endif + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + {"media-session-enter-picture-in-picture", + flag_descriptions::kMediaSessionEnterPictureInPictureName, + flag_descriptions::kMediaSessionEnterPictureInPictureDescription, +@@ -10303,7 +10303,7 @@ const FeatureEntry kFeatureEntries[] = { + kOsDesktop | kOsAndroid, FEATURE_VALUE_TYPE(features::kProcessPerSiteUpToMainFrameThreshold)}, - #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) {"camera-mic-effects", flag_descriptions::kCameraMicEffectsName, flag_descriptions::kCameraMicEffectsDescription, - static_cast(kOsMac | kOsWin | kOsLinux | kOsFuchsia), -@@ -10977,7 +10977,7 @@ const FeatureEntry kFeatureEntries[] = { - password_manager::features::kFillingAcrossAffiliatedWebsitesAndroid)}, - #endif + static_cast(kOsMac | kOsWin | kOsLinux), +@@ -10341,7 +10341,7 @@ const FeatureEntry kFeatureEntries[] = { + FEATURE_VALUE_TYPE(features::kSiteInstanceGroupsForDataUrls)}, + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + {"show-featured-enterprise-site-search", + flag_descriptions::kShowFeaturedEnterpriseSiteSearchName, + flag_descriptions::kShowFeaturedEnterpriseSiteSearchDescription, kOsAll, +@@ -10456,7 +10456,7 @@ const FeatureEntry kFeatureEntries[] = { + flag_descriptions::kHideIncognitoMediaMetadataDescription, kOsAll, + FEATURE_VALUE_TYPE(media::kHideIncognitoMediaMetadata)}, -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) {"third-party-profile-management", flag_descriptions::kThirdPartyProfileManagementName, flag_descriptions::kThirdPartyProfileManagementDescription, -@@ -11291,7 +11291,7 @@ const FeatureEntry kFeatureEntries[] = { - kOsDesktop, FEATURE_VALUE_TYPE(blink::features::kPasswordStrongLabel)}, - #endif - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - {"attach-logs-to-autofill-rater-extentsion-report", - flag_descriptions::kAttachLogsToAutofillRaterExtensionReportName, - flag_descriptions::kAttachLogsToAutofillRaterExtensionReportDescription, -@@ -11300,7 +11300,7 @@ const FeatureEntry kFeatureEntries[] = { - kAttachLogsToAutofillRaterExtensionReport)}, +@@ -10805,7 +10805,7 @@ const FeatureEntry kFeatureEntries[] = { + trusted_vault::kTrustedVaultFrequentDegradedRecoverabilityPolling)}, #endif --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - {"fill-multi-line", flag_descriptions::kFillMultiLineName, - flag_descriptions::kFillMultiLineDescription, kOsWin | kOsLinux | kOsMac, - FEATURE_VALUE_TYPE(compose::features::kFillMultiLine)}, +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + {"restart-to-gain-access-to-keychain", + flag_descriptions::kRestartToGainAccessToKeychainName, + flag_descriptions::kRestartToGainAccessToKeychainDescription, +@@ -11086,7 +11086,7 @@ const FeatureEntry kFeatureEntries[] = { + + // Controls the view mode for (history) sync screen. + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || \ +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + {"minor-mode-restrictions-for-history-sync-opt-in", + flag_descriptions::kMinorModeRestrictionsForHistorySyncOptInName, + flag_descriptions::kMinorModeRestrictionsForHistorySyncOptInDescription, diff --git a/www/iridium/files/patch-chrome_browser_after__startup__task__utils.cc b/www/iridium/files/patch-chrome_browser_after__startup__task__utils.cc index 319c2721ae37..bf28e58547c1 100644 --- a/www/iridium/files/patch-chrome_browser_after__startup__task__utils.cc +++ b/www/iridium/files/patch-chrome_browser_after__startup__task__utils.cc @@ -1,11 +1,11 @@ ---- chrome/browser/after_startup_task_utils.cc.orig 2022-10-05 07:34:01 UTC +--- chrome/browser/after_startup_task_utils.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/after_startup_task_utils.cc -@@ -107,7 +107,7 @@ void SetBrowserStartupIsComplete() { - TRACE_EVENT0("startup", "SetBrowserStartupIsComplete"); - g_startup_complete_flag.Get().Set(); +@@ -115,7 +115,7 @@ void SetBrowserStartupIsComplete() { + TRACE_EVENT_SCOPE_GLOBAL, "BrowserCount", browser_count); + GetStartupCompleteFlag().Set(); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Process::Current().CreationTime() is not available on all platforms. const base::Time process_creation_time = base::Process::Current().CreationTime(); diff --git a/www/iridium/files/patch-chrome_browser_apps_app__service_publishers_extension__apps.cc b/www/iridium/files/patch-chrome_browser_apps_app__service_publishers_extension__apps.cc index aa80b2a967cd..c080f9e8525a 100644 --- a/www/iridium/files/patch-chrome_browser_apps_app__service_publishers_extension__apps.cc +++ b/www/iridium/files/patch-chrome_browser_apps_app__service_publishers_extension__apps.cc @@ -1,11 +1,11 @@ ---- chrome/browser/apps/app_service/publishers/extension_apps.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/apps/app_service/publishers/extension_apps.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/apps/app_service/publishers/extension_apps.cc -@@ -25,7 +25,7 @@ ExtensionApps::~ExtensionApps() = default; +@@ -23,7 +23,7 @@ ExtensionApps::ExtensionApps(AppServiceProxy* proxy) + ExtensionApps::~ExtensionApps() = default; bool ExtensionApps::Accepts(const extensions::Extension* extension) { - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (extensions::IsExtensionUnsupportedDeprecatedApp(profile(), extension->id())) { return false; diff --git a/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.cc b/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.cc index c76e215b2039..5d53ab58f94e 100644 --- a/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.cc +++ b/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.cc @@ -1,20 +1,65 @@ ---- chrome/browser/apps/platform_apps/platform_app_launch.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/apps/platform_apps/platform_app_launch.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/apps/platform_apps/platform_app_launch.cc -@@ -20,7 +20,7 @@ +@@ -19,7 +19,7 @@ + #include "extensions/common/constants.h" #include "extensions/common/extension.h" - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_navigator.h" #include "chrome/browser/ui/browser_window.h" -@@ -138,7 +138,7 @@ bool OpenExtensionApplicationTab(Profile* profile, con +@@ -86,7 +86,7 @@ bool OpenExtensionApplicationWindow(Profile* profile, + if (launch_container == LaunchContainer::kLaunchContainerTab) + return false; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (OpenDeprecatedApplicationPrompt(profile, app_id)) { + return false; + } +@@ -118,7 +118,7 @@ content::WebContents* OpenExtensionApplicationTab(Prof + if (launch_container != apps::LaunchContainer::kLaunchContainerTab) + return nullptr; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (OpenDeprecatedApplicationPrompt(profile, app_id)) { + return nullptr; + } +@@ -134,7 +134,7 @@ content::WebContents* OpenExtensionApplicationTab(Prof + return app_tab; } - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) bool OpenDeprecatedApplicationPrompt(Profile* profile, const std::string& app_id) { if (!extensions::IsExtensionUnsupportedDeprecatedApp(profile, app_id)) +@@ -170,7 +170,7 @@ bool OpenExtensionApplicationWithReenablePrompt( + if (!GetPlatformApp(profile, app_id)) + return false; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (OpenDeprecatedApplicationPrompt(profile, app_id)) { + return false; + } +@@ -192,7 +192,7 @@ content::WebContents* OpenExtensionAppShortcutWindow(P + ->enabled_extensions() + .GetAppByURL(url); + if (app) { +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (OpenDeprecatedApplicationPrompt(profile, app->id())) { + return nullptr; + } +@@ -215,7 +215,7 @@ void RecordExtensionAppLaunchOnTabRestored(Profile* pr + if (!extension) + return; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (OpenDeprecatedApplicationPrompt(profile, extension->id())) { + return; + } diff --git a/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.h b/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.h index 1690620972dd..5cc69021077e 100644 --- a/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.h +++ b/www/iridium/files/patch-chrome_browser_apps_platform__apps_platform__app__launch.h @@ -1,11 +1,11 @@ ---- chrome/browser/apps/platform_apps/platform_app_launch.h.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/apps/platform_apps/platform_app_launch.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/apps/platform_apps/platform_app_launch.h -@@ -37,7 +37,7 @@ bool OpenExtensionApplicationWindow(Profile* profile, - bool OpenExtensionApplicationTab(Profile* profile, const std::string& app_id); +@@ -38,7 +38,7 @@ bool OpenExtensionApplicationWindow(Profile* profile, + content::WebContents* OpenExtensionApplicationTab(Profile* profile, + const std::string& app_id); - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Opens the deprecated Chrome Apps flow if |app_id| refers to a Chrome App and // Chrome Apps are deprecated on the |profile|. Returns true if that was the // case, or false otherwise. diff --git a/www/iridium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc b/www/iridium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc index 45b4011112d7..877e7133b7bd 100644 --- a/www/iridium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc +++ b/www/iridium/files/patch-chrome_browser_autocomplete_chrome__autocomplete__scheme__classifier.cc @@ -1,11 +1,11 @@ ---- chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc.orig 2023-03-13 07:33:08 UTC +--- chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/autocomplete/chrome_autocomplete_scheme_classifier.cc -@@ -91,7 +91,7 @@ ChromeAutocompleteSchemeClassifier::GetInputTypeForSch +@@ -89,7 +89,7 @@ ChromeAutocompleteSchemeClassifier::GetInputTypeForSch return metrics::OmniboxInputType::QUERY; case ExternalProtocolHandler::UNKNOWN: { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Linux impl of GetApplicationNameForScheme doesn't distinguish // between URL schemes with handers and those without. This will // make the default behaviour be search on Linux. diff --git a/www/iridium/files/patch-chrome_browser_background_background__mode__manager.cc b/www/iridium/files/patch-chrome_browser_background_background__mode__manager.cc index 7edea0e350dc..c655b053a014 100644 --- a/www/iridium/files/patch-chrome_browser_background_background__mode__manager.cc +++ b/www/iridium/files/patch-chrome_browser_background_background__mode__manager.cc @@ -1,11 +1,11 @@ ---- chrome/browser/background/background_mode_manager.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/background/background_mode_manager.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/background/background_mode_manager.cc -@@ -869,7 +869,7 @@ gfx::ImageSkia GetStatusTrayIcon() { +@@ -872,7 +872,7 @@ gfx::ImageSkia GetStatusTrayIcon() { return gfx::ImageSkia(); return family->CreateExact(size).AsImageSkia(); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) return *ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed( IDR_PRODUCT_LOGO_128); #elif BUILDFLAG(IS_MAC) diff --git a/www/iridium/files/patch-chrome_browser_background_background__mode__optimizer.cc b/www/iridium/files/patch-chrome_browser_background_background__mode__optimizer.cc index 6b53b5dad712..55a8f158a9dc 100644 --- a/www/iridium/files/patch-chrome_browser_background_background__mode__optimizer.cc +++ b/www/iridium/files/patch-chrome_browser_background_background__mode__optimizer.cc @@ -1,11 +1,11 @@ ---- chrome/browser/background/background_mode_optimizer.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/background/background_mode_optimizer.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/background/background_mode_optimizer.cc @@ -31,7 +31,7 @@ std::unique_ptr BackgroundMod return nullptr; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(features::kBackgroundModeAllowRestart)) { + // Private ctor. return base::WrapUnique(new BackgroundModeOptimizer()); - } diff --git a/www/iridium/files/patch-chrome_browser_browser__features.cc b/www/iridium/files/patch-chrome_browser_browser__features.cc index f0384d1acdf5..da421daa3655 100644 --- a/www/iridium/files/patch-chrome_browser_browser__features.cc +++ b/www/iridium/files/patch-chrome_browser_browser__features.cc @@ -1,20 +1,20 @@ ---- chrome/browser/browser_features.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/browser_features.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/browser_features.cc -@@ -28,7 +28,7 @@ BASE_FEATURE(kClosedTabCache, +@@ -82,7 +82,7 @@ const base::FeatureParam kSpareRendererWarmupDel BASE_FEATURE(kDestroyProfileOnBrowserClose, "DestroyProfileOnBrowserClose", #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS_LACROS) + BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) base::FEATURE_ENABLED_BY_DEFAULT); #else base::FEATURE_DISABLED_BY_DEFAULT); -@@ -292,7 +292,7 @@ BASE_FEATURE(kOmniboxTriggerForNoStatePrefetch, - "OmniboxTriggerForNoStatePrefetch", - base::FEATURE_DISABLED_BY_DEFAULT); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - BASE_FEATURE(kPayloadTestComponent, - "PayloadTestComponent", +@@ -354,7 +354,7 @@ BASE_FEATURE(kSandboxExternalProtocolBlockedWarning, + BASE_FEATURE(kSupportSearchSuggestionForPrerender2, + "SupportSearchSuggestionForPrerender2", + #if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_CHROMEOS_LACROS) || \ +- BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + base::FEATURE_ENABLED_BY_DEFAULT); + #else base::FEATURE_DISABLED_BY_DEFAULT); diff --git a/www/iridium/files/patch-chrome_browser_browser__features.h b/www/iridium/files/patch-chrome_browser_browser__features.h deleted file mode 100644 index c970fe58f6cf..000000000000 --- a/www/iridium/files/patch-chrome_browser_browser__features.h +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/browser_features.h.orig 2024-02-04 14:46:08 UTC -+++ chrome/browser/browser_features.h -@@ -121,7 +121,7 @@ BASE_DECLARE_FEATURE(kAutocompleteActionPredictorConfi - - BASE_DECLARE_FEATURE(kOmniboxTriggerForNoStatePrefetch); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - BASE_DECLARE_FEATURE(kPayloadTestComponent); - #endif - diff --git a/www/iridium/files/patch-chrome_browser_browser__process__impl.cc b/www/iridium/files/patch-chrome_browser_browser__process__impl.cc index 0323c5a296c7..f2cf5a5ce752 100644 --- a/www/iridium/files/patch-chrome_browser_browser__process__impl.cc +++ b/www/iridium/files/patch-chrome_browser_browser__process__impl.cc @@ -1,29 +1,29 @@ ---- chrome/browser/browser_process_impl.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/browser_process_impl.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/browser_process_impl.cc -@@ -215,7 +215,7 @@ - #include "components/enterprise/browser/controller/chrome_browser_cloud_management_controller.h" +@@ -229,7 +229,7 @@ + #include "chrome/browser/ui/profiles/profile_picker.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/error_reporting/chrome_js_error_report_processor.h" // nogncheck #endif -@@ -1212,7 +1212,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { +@@ -1284,7 +1284,7 @@ void BrowserProcessImpl::PreMainMessageLoopRun() { ApplyMetricsReportingPolicy(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) ChromeJsErrorReportProcessor::Create(); #endif -@@ -1477,7 +1477,7 @@ void BrowserProcessImpl::Unpin() { +@@ -1617,7 +1617,7 @@ void BrowserProcessImpl::Unpin() { // Mac is currently not supported. - // TODO(crbug.com/1052397): Revisit once build flag switch of lacros-chrome is + // TODO(crbug.com/40118868): Revisit once build flag switch of lacros-chrome is // complete. -#if BUILDFLAG(IS_WIN) || (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) +#if BUILDFLAG(IS_WIN) || (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) bool BrowserProcessImpl::IsRunningInBackground() const { // Check if browser is in the background. diff --git a/www/iridium/files/patch-chrome_browser_browser__process__impl.h b/www/iridium/files/patch-chrome_browser_browser__process__impl.h index 3c9a968fb0ae..af98f18c6d4f 100644 --- a/www/iridium/files/patch-chrome_browser_browser__process__impl.h +++ b/www/iridium/files/patch-chrome_browser_browser__process__impl.h @@ -1,11 +1,11 @@ ---- chrome/browser/browser_process_impl.h.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/browser_process_impl.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/browser_process_impl.h -@@ -388,7 +388,7 @@ class BrowserProcessImpl : public BrowserProcess, +@@ -404,7 +404,7 @@ class BrowserProcessImpl : public BrowserProcess, - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_WIN) || (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) +#if BUILDFLAG(IS_WIN) || (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) base::RepeatingTimer autoupdate_timer_; // Gets called by autoupdate timer to see if browser needs restart and can be diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__interface__binders.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__interface__binders.cc index a4ba1687d692..7c3277b541a5 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__interface__binders.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__interface__binders.cc @@ -1,81 +1,71 @@ ---- chrome/browser/chrome_browser_interface_binders.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/chrome_browser_interface_binders.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/chrome_browser_interface_binders.cc -@@ -130,13 +130,13 @@ +@@ -132,12 +132,12 @@ #endif // BUILDFLAG(FULL_SAFE_BROWSING) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/connectors_internals/connectors_internals.mojom.h" #include "chrome/browser/ui/webui/connectors_internals/connectors_internals_ui.h" #endif - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/webui/app_settings/web_app_settings_ui.h" #include "ui/webui/resources/cr_components/app_management/app_management.mojom.h" #endif -@@ -224,7 +224,7 @@ +@@ -228,7 +228,7 @@ #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - #include "chrome/browser/companion/visual_search/visual_search_suggestions_service_factory.h" + #include "chrome/browser/companion/visual_query/visual_query_suggestions_service_factory.h" #include "chrome/browser/ui/web_applications/sub_apps_service_impl.h" #include "chrome/browser/ui/webui/discards/discards.mojom.h" -@@ -863,7 +863,7 @@ void BindScreen2xMainContentExtractor( +@@ -854,7 +854,7 @@ void BindScreen2xMainContentExtractor( #endif #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) void BindVisualSuggestionsModelProvider( content::RenderFrameHost* frame_host, mojo::PendingReceiver< -@@ -1009,7 +1009,7 @@ void PopulateChromeFrameBinders( +@@ -1050,7 +1050,7 @@ void PopulateChromeFrameBinders( #endif // BUILDFLAG(ENABLE_SPEECH_SERVICE) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) - if (!render_frame_host->GetParent()) { - map->Add( - base::BindRepeating(&DraggableRegionsHostImpl::CreateIfAllowed)); -@@ -1017,7 +1017,7 @@ void PopulateChromeFrameBinders( - #endif - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (base::FeatureList::IsEnabled(blink::features::kDesktopPWAsSubApps) && !render_frame_host->GetParentOrOuterDocument()) { // The service binder will reject non-primary main frames, but we still need -@@ -1097,7 +1097,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -1137,7 +1137,7 @@ void PopulateChromeWebUIFrameBinders( commerce::CommerceInternalsUI>(map); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder< connectors_internals::mojom::PageHandler, enterprise_connectors::ConnectorsInternalsUI>(map); -@@ -1118,7 +1118,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -1148,7 +1148,7 @@ void PopulateChromeWebUIFrameBinders( + policy::DlpInternalsUI>(map); #endif - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder< app_management::mojom::PageHandlerFactory, WebAppSettingsUI>(map); #endif -@@ -1651,7 +1651,7 @@ void PopulateChromeWebUIFrameBinders( +@@ -1759,7 +1759,7 @@ void PopulateChromeWebUIFrameBinders( #endif // BUILDFLAG(IS_CHROMEOS_ASH) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) RegisterWebUIControllerInterfaceBinder(map); diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__main.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main.cc index 17feeee4e15a..7462b1ba8955 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__main.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main.cc @@ -1,78 +1,118 @@ ---- chrome/browser/chrome_browser_main.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/chrome_browser_main.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/chrome_browser_main.cc -@@ -246,11 +246,11 @@ +@@ -247,15 +247,15 @@ - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) #include "chrome/browser/first_run/upgrade_util_linux.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/crash/core/app/crashpad.h" #endif -@@ -284,14 +284,14 @@ - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "base/nix/xdg_util.h" + #endif + +@@ -288,14 +288,14 @@ + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS_LACROS) ++ BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) #include "chrome/browser/metrics/desktop_session_duration/desktop_session_duration_tracker.h" #include "chrome/browser/metrics/desktop_session_duration/touch_mode_stats_tracker.h" #include "chrome/browser/profiles/profile_activity_metrics_recorder.h" #include "ui/base/pointer/touch_ui_controller.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/headless/headless_mode_metrics.h" // nogncheck #include "chrome/browser/headless/headless_mode_util.h" // nogncheck #include "components/headless/select_file_dialog/headless_select_file_dialog.h" -@@ -1039,7 +1039,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { +@@ -367,14 +367,14 @@ + #endif // BUILDFLAG(IS_WIN) && BUILDFLAG(USE_BROWSER_SPELLCHECKER) + + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + #include "sql/database.h" + #endif // BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || + // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) + + namespace { + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + constexpr base::FilePath::CharType kMediaHistoryDatabaseName[] = + FILE_PATH_LITERAL("Media History"); + +@@ -539,7 +539,7 @@ void ProcessSingletonNotificationCallbackImpl( + } + #endif + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + // Set the global activation token sent as a command line switch by another + // browser process. This also removes the switch after use to prevent any side + // effects of leaving it in the command line after this point. +@@ -1100,7 +1100,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { browser_creator_->AddFirstRunTabs(master_prefs_->new_tabs); } -#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Create directory for user-level Native Messaging manifest files. This // makes it less likely that the directory will be created by third-party // software with incorrect owner or permission. See crbug.com/725513 . -@@ -1095,7 +1095,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch +@@ -1148,7 +1148,7 @@ int ChromeBrowserMainParts::PreCreateThreadsImpl() { + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS_LACROS) ++ BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) metrics::DesktopSessionDurationTracker::Initialize(); ProfileActivityMetricsRecorder::Initialize(); TouchModeStatsTracker::Initialize( -@@ -1331,7 +1331,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* +@@ -1333,7 +1333,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* + #endif // BUILDFLAG(IS_WIN) + + #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) + // Delete the media history database if it still exists. + // TODO(crbug.com/40177301): Remove this. + base::ThreadPool::PostTask( +@@ -1382,7 +1382,7 @@ void ChromeBrowserMainParts::PostProfileInit(Profile* *UrlLanguageHistogramFactory::GetForBrowserContext(profile)); #endif // BUILDFLAG(IS_CHROMEOS_ASH) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode()) { headless::ReportHeadlessActionMetrics(); } -@@ -1437,7 +1437,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( +@@ -1492,7 +1492,7 @@ int ChromeBrowserMainParts::PreMainMessageLoopRunImpl( // In headless mode provide alternate SelectFileDialog factory overriding // any platform specific SelectFileDialog implementation that may have been // set. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode()) { headless::HeadlessSelectFileDialogFactory::SetUp(); } -@@ -1971,7 +1971,7 @@ bool ChromeBrowserMainParts::ProcessSingletonNotificat +@@ -2045,7 +2045,7 @@ bool ChromeBrowserMainParts::ProcessSingletonNotificat // Drop the request if headless mode is in effect or the request is from // a headless Chrome process. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (headless::IsHeadlessMode() || command_line.HasSwitch(switches::kHeadless)) { return false; diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc index 03f65681e2e1..a845c00419b8 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main__extra__parts__linux.cc @@ -1,11 +1,11 @@ ---- chrome/browser/chrome_browser_main_extra_parts_linux.cc.orig 2022-03-28 18:11:04 UTC +--- chrome/browser/chrome_browser_main_extra_parts_linux.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/chrome_browser_main_extra_parts_linux.cc -@@ -120,7 +120,7 @@ ChromeBrowserMainExtraPartsLinux::ChromeBrowserMainExt - ChromeBrowserMainExtraPartsLinux::~ChromeBrowserMainExtraPartsLinux() = default; +@@ -58,7 +58,7 @@ void ChromeBrowserMainExtraPartsLinux::PostBrowserStar - void ChromeBrowserMainExtraPartsLinux::PreEarlyInitialization() { + // static + void ChromeBrowserMainExtraPartsLinux::InitOzonePlatformHint() { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // On the desktop, we fix the platform name if necessary. - // See https://crbug.com/1246928. auto* const command_line = base::CommandLine::ForCurrentProcess(); + auto env = base::Environment::Create(); + std::string desktop_startup_id; diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__main__extra__parts__ozone.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main__extra__parts__ozone.cc new file mode 100644 index 000000000000..b3101ec94fb3 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main__extra__parts__ozone.cc @@ -0,0 +1,11 @@ +--- chrome/browser/chrome_browser_main_extra_parts_ozone.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/chrome_browser_main_extra_parts_ozone.cc +@@ -27,7 +27,7 @@ void ChromeBrowserMainExtraPartsOzone::PostCreateMainM + } + + void ChromeBrowserMainExtraPartsOzone::PostMainMessageLoopRun() { +-#if !BUILDFLAG(IS_CHROMEOS_LACROS) && !BUILDFLAG(IS_LINUX) ++#if !BUILDFLAG(IS_CHROMEOS_LACROS) && !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) + // Lacros's `PostMainMessageLoopRun` must be called at the very end of + // `PostMainMessageLoopRun` in + // `ChromeBrowserMainPartsLacros::PostMainMessageLoopRun`. diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc index 69b39acf7378..3ab03a848261 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.cc @@ -1,21 +1,39 @@ ---- chrome/browser/chrome_browser_main_linux.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/chrome_browser_main_linux.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/chrome_browser_main_linux.cc -@@ -67,7 +67,9 @@ void ChromeBrowserMainPartsLinux::PostCreateMainMessag +@@ -25,7 +25,7 @@ + #include "device/bluetooth/dbus/bluez_dbus_thread_manager.h" + #include "ui/base/l10n/l10n_util.h" + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include "ui/ozone/public/ozone_platform.h" + #endif + +@@ -72,7 +72,9 @@ void ChromeBrowserMainPartsLinux::PostCreateMainMessag #endif // BUILDFLAG(IS_CHROMEOS) #if !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_BSD) bluez::BluezDBusManager::Initialize(nullptr /* system_bus */); +#endif // Set up crypt config. This needs to be done before anything starts the // network service, as the raw encryption key needs to be shared with the -@@ -124,7 +126,7 @@ void ChromeBrowserMainPartsLinux::PostBrowserStart() { +@@ -98,7 +100,7 @@ void ChromeBrowserMainPartsLinux::PostCreateMainMessag + ChromeBrowserMainPartsPosix::PostCreateMainMessageLoop(); + } + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void ChromeBrowserMainPartsLinux::PostMainMessageLoopRun() { + ChromeBrowserMainPartsPosix::PostMainMessageLoopRun(); + ui::OzonePlatform::GetInstance()->PostMainMessageLoopRun(); +@@ -137,7 +139,7 @@ void ChromeBrowserMainPartsLinux::PostBrowserStart() { #endif // defined(USE_DBUS) && !BUILDFLAG(IS_CHROMEOS) void ChromeBrowserMainPartsLinux::PostDestroyThreads() { -#if BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // No-op; per PostBrowserStart() comment, this is done elsewhere. #else bluez::BluezDBusManager::Shutdown(); diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.h b/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.h new file mode 100644 index 000000000000..85d0cc0f5b1b --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main__linux.h @@ -0,0 +1,11 @@ +--- chrome/browser/chrome_browser_main_linux.h.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/chrome_browser_main_linux.h +@@ -30,7 +30,7 @@ class ChromeBrowserMainPartsLinux : public ChromeBrows + + // ChromeBrowserMainPartsPosix overrides. + void PostCreateMainMessageLoop() override; +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void PostMainMessageLoopRun() override; + #endif + void PreProfileInit() override; diff --git a/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc b/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc index bddab7662524..5a4dc58ccdfa 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__browser__main__posix.cc @@ -1,11 +1,11 @@ ---- chrome/browser/chrome_browser_main_posix.cc.orig 2022-12-06 08:09:13 UTC +--- chrome/browser/chrome_browser_main_posix.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/chrome_browser_main_posix.cc -@@ -73,7 +73,7 @@ void ExitHandler::ExitWhenPossibleOnUIThread(int signa +@@ -79,7 +79,7 @@ void ExitHandler::ExitWhenPossibleOnUIThread(int signa } else { - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) switch (signal) { case SIGINT: case SIGHUP: diff --git a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc index fbf7317150b6..5ea338eead62 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc +++ b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.cc @@ -1,160 +1,161 @@ ---- chrome/browser/chrome_content_browser_client.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/chrome_content_browser_client.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/chrome_content_browser_client.cc -@@ -447,7 +447,7 @@ +@@ -468,7 +468,7 @@ #include "storage/browser/file_system/external_mount_points.h" - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) #include "chrome/browser/chrome_browser_main_linux.h" #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views_linux.h" #elif BUILDFLAG(IS_ANDROID) -@@ -548,12 +548,12 @@ +@@ -578,12 +578,12 @@ - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) #include "chrome/browser/browser_switcher/browser_switcher_navigation_throttle.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/crash/core/app/crash_switches.h" #include "components/crash/core/app/crashpad.h" #endif -@@ -564,14 +564,14 @@ +@@ -594,7 +594,7 @@ #include "chrome/browser/apps/link_capturing/web_app_link_capturing_delegate.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/chrome_browser_main_extra_parts_enterprise.h" + #include "chrome/browser/enterprise/profile_management/oidc_auth_response_capture_navigation_throttle.h" #include "chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.h" - #include "chrome/browser/ui/webui/app_settings/web_app_settings_navigation_throttle.h" +@@ -602,7 +602,7 @@ #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/connectors/device_trust/navigation_throttle.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || // BUILDFLAG(IS_CHROMEOS_ASH) -@@ -587,7 +587,7 @@ - #include "components/lens/lens_features.h" +@@ -617,7 +617,7 @@ + #include "chrome/browser/ui/lens/lens_side_panel_navigation_helper.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/chrome_browser_main_extra_parts_linux.h" #elif BUILDFLAG(IS_OZONE) #include "chrome/browser/chrome_browser_main_extra_parts_ozone.h" -@@ -1591,7 +1591,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePre +@@ -1516,7 +1516,7 @@ void ChromeContentBrowserClient::RegisterLocalStatePre + #if BUILDFLAG(IS_CHROMEOS) registry->RegisterBooleanPref(prefs::kNativeClientForceAllowed, false); - registry->RegisterBooleanPref( - policy::policy_prefs::kPPAPISharedImagesForVideoDecoderAllowed, true); + #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kOutOfProcessSystemDnsResolutionEnabled, true); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) -@@ -1715,7 +1715,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1640,7 +1640,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo #elif BUILDFLAG(IS_CHROMEOS_LACROS) main_parts = std::make_unique( is_integration_test, &startup_data_); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) main_parts = std::make_unique( is_integration_test, &startup_data_); #elif BUILDFLAG(IS_ANDROID) -@@ -1752,7 +1752,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1674,7 +1674,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo std::make_unique()); - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) main_parts->AddParts( std::make_unique()); #else -@@ -1773,7 +1773,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1695,7 +1695,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo main_parts->AddParts(std::make_unique()); #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) main_parts->AddParts(std::make_unique()); #elif BUILDFLAG(IS_OZONE) main_parts->AddParts(std::make_unique()); -@@ -1792,7 +1792,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo +@@ -1714,7 +1714,7 @@ ChromeContentBrowserClient::CreateBrowserMainParts(boo chrome::AddMetricsExtraParts(main_parts.get()); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) main_parts->AddParts( std::make_unique< chrome::enterprise_util::ChromeBrowserMainExtraPartsEnterprise>()); -@@ -2625,6 +2625,8 @@ void ChromeContentBrowserClient::AppendExtraCommandLin +@@ -2551,7 +2551,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin + client_info->client_id); + } #elif BUILDFLAG(IS_POSIX) - #if BUILDFLAG(IS_ANDROID) - bool enable_crash_reporter = true; -+#elif BUILDFLAG(IS_BSD) -+ bool enable_crash_reporter = false; - #elif BUILDFLAG(IS_CHROMEOS) - bool enable_crash_reporter = false; - if (crash_reporter::IsCrashpadEnabled()) { -@@ -2990,7 +2992,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin - ThreadProfilerConfiguration::Get()->AppendCommandLineSwitchForChildProcess( - command_line); +-#if !BUILDFLAG(IS_ANDROID) ++#if !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) + pid_t pid; + if (crash_reporter::GetHandlerSocket(nullptr, &pid)) { + command_line->AppendSwitchASCII( +@@ -2886,7 +2886,7 @@ void ChromeContentBrowserClient::AppendExtraCommandLin + } + } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH)) && !BUILDFLAG(IS_BSD) // Opt into a hardened stack canary mitigation if it hasn't already been // force-disabled. if (!browser_command_line.HasSwitch(switches::kChangeStackGuardOnFork)) { -@@ -4661,7 +4663,7 @@ void ChromeContentBrowserClient::GetAdditionalFileSyst +@@ -4651,7 +4651,7 @@ void ChromeContentBrowserClient::GetAdditionalFileSyst } } -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) void ChromeContentBrowserClient::GetAdditionalMappedFilesForChildProcess( const base::CommandLine& command_line, int child_process_id, -@@ -5221,7 +5223,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigati +@@ -5205,7 +5205,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigati &throttles); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) MaybeAddThrottle( WebAppSettingsNavigationThrottle::MaybeCreateThrottleFor(handle), &throttles); -@@ -5231,7 +5233,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigati +@@ -5219,7 +5219,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigati #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) MaybeAddThrottle(enterprise_connectors::DeviceTrustNavigationThrottle:: MaybeCreateThrottleFor(handle), &throttles); -@@ -5270,7 +5272,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigati +@@ -5258,7 +5258,7 @@ ChromeContentBrowserClient::CreateThrottlesForNavigati handle)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) MaybeAddThrottle(browser_switcher::BrowserSwitcherNavigationThrottle:: MaybeCreateThrottleFor(handle), &throttles); -@@ -7164,7 +7166,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS +@@ -7243,7 +7243,7 @@ bool ChromeContentBrowserClient::ShouldSandboxNetworkS bool ChromeContentBrowserClient::ShouldRunOutOfProcessSystemDnsResolution() { // This enterprise policy is supported on Android, but the feature will not be // launched there. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // This is possibly called before `g_browser_process` is initialized. PrefService* local_state; if (g_browser_process) { diff --git a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h index d9614a66edc6..f986b01f54d3 100644 --- a/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h +++ b/www/iridium/files/patch-chrome_browser_chrome__content__browser__client.h @@ -1,11 +1,11 @@ ---- chrome/browser/chrome_content_browser_client.h.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/chrome_content_browser_client.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/chrome_content_browser_client.h -@@ -484,7 +484,7 @@ class ChromeContentBrowserClient : public content::Con - void OverridePageVisibilityState( - content::RenderFrameHost* render_frame_host, - content::PageVisibilityState* visibility_state) override; +@@ -507,7 +507,7 @@ class ChromeContentBrowserClient : public content::Con + bool IsPluginAllowedToUseDevChannelAPIs( + content::BrowserContext* browser_context, + const GURL& url) override; -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_BSD) void GetAdditionalMappedFilesForChildProcess( const base::CommandLine& command_line, int child_process_id, diff --git a/www/iridium/files/patch-chrome_browser_component__updater_registration.cc b/www/iridium/files/patch-chrome_browser_component__updater_registration.cc deleted file mode 100644 index 8f0f5279a6c5..000000000000 --- a/www/iridium/files/patch-chrome_browser_component__updater_registration.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/component_updater/registration.cc.orig 2024-02-04 14:46:08 UTC -+++ chrome/browser/component_updater/registration.cc -@@ -223,7 +223,7 @@ void RegisterComponentsForUpdate() { - - RegisterTpcdMetadataComponent(cus); - --#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) - // TODO(crbug.com/1490685): Remove this test component once the - // experiment has concluded. - if (base::FeatureList::IsEnabled(features::kPayloadTestComponent)) { diff --git a/www/iridium/files/patch-chrome_browser_component__updater_widevine__cdm__component__installer.cc b/www/iridium/files/patch-chrome_browser_component__updater_widevine__cdm__component__installer.cc index b8e1feb453df..8d96d239eecf 100644 --- a/www/iridium/files/patch-chrome_browser_component__updater_widevine__cdm__component__installer.cc +++ b/www/iridium/files/patch-chrome_browser_component__updater_widevine__cdm__component__installer.cc @@ -1,29 +1,38 @@ ---- chrome/browser/component_updater/widevine_cdm_component_installer.cc.orig 2023-10-21 11:51:27 UTC +--- chrome/browser/component_updater/widevine_cdm_component_installer.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/component_updater/widevine_cdm_component_installer.cc -@@ -40,7 +40,7 @@ +@@ -41,7 +41,7 @@ #include "third_party/widevine/cdm/buildflags.h" #include "third_party/widevine/cdm/widevine_cdm_common.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "base/path_service.h" + #include "chrome/common/chrome_paths.h" #include "chrome/common/media/component_widevine_cdm_hint_file_linux.h" - #endif - -@@ -77,7 +77,7 @@ static_assert(std::size(kWidevineSha2Hash) == crypto:: +@@ -74,7 +74,7 @@ static_assert(std::size(kWidevineSha2Hash) == crypto:: const char ImageLoaderComponentName[] = "WidevineCdm"; #endif -#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) // On Linux and ChromeOS the Widevine CDM is loaded at startup before the // zygote is locked down. As a result there is no need to register the CDM // with Chrome as it can't be used until Chrome is restarted. -@@ -363,7 +363,7 @@ void WidevineCdmComponentInstallerPolicy::UpdateCdmPat +@@ -102,7 +102,7 @@ void RegisterWidevineCdmWithChrome(const base::Version + } + #endif // !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + // On Linux and ChromeOS the Widevine CDM is loaded at startup before the + // zygote is locked down. To locate the Widevine CDM at startup, a hint file + // is used. Update the hint file with the new Widevine CDM path. +@@ -398,7 +398,7 @@ void WidevineCdmComponentInstallerPolicy::UpdateCdmPat return; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) VLOG(1) << "Updating hint file with Widevine CDM " << cdm_version; // This is running on a thread that allows IO, so simply update the hint file. diff --git a/www/iridium/files/patch-chrome_browser_device__identity_device__oauth2__token__service__factory.cc b/www/iridium/files/patch-chrome_browser_device__identity_device__oauth2__token__service__factory.cc index a778bd40ed6c..7b8cbc728957 100644 --- a/www/iridium/files/patch-chrome_browser_device__identity_device__oauth2__token__service__factory.cc +++ b/www/iridium/files/patch-chrome_browser_device__identity_device__oauth2__token__service__factory.cc @@ -1,11 +1,11 @@ ---- chrome/browser/device_identity/device_oauth2_token_service_factory.cc.orig 2022-03-28 18:11:04 UTC +--- chrome/browser/device_identity/device_oauth2_token_service_factory.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/device_identity/device_oauth2_token_service_factory.cc @@ -28,7 +28,7 @@ std::unique_ptr CreatePlatform return std::make_unique( local_state); - #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || \ + #elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) + (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) return std::make_unique(local_state); #else NOTREACHED(); diff --git a/www/iridium/files/patch-chrome_browser_devtools_BUILD.gn b/www/iridium/files/patch-chrome_browser_devtools_BUILD.gn deleted file mode 100644 index dcfd5a407511..000000000000 --- a/www/iridium/files/patch-chrome_browser_devtools_BUILD.gn +++ /dev/null @@ -1,10 +0,0 @@ ---- chrome/browser/devtools/BUILD.gn.orig 2024-01-25 17:18:37 UTC -+++ chrome/browser/devtools/BUILD.gn -@@ -121,6 +121,7 @@ static_library("devtools") { - "//chrome/browser/autofill:autofill", - "//components/autofill/content/browser:browser", - "//components/autofill/core/browser:browser", -+ "//components/enterprise/buildflags", - "//components/paint_preview/buildflags:buildflags", - "//content/public/browser", - "//net", diff --git a/www/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc b/www/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc index 71369a93dd8b..7bc9d117df42 100644 --- a/www/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc +++ b/www/iridium/files/patch-chrome_browser_download_chrome__download__manager__delegate.cc @@ -1,29 +1,29 @@ ---- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/download/chrome_download_manager_delegate.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/download/chrome_download_manager_delegate.cc -@@ -1623,7 +1623,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe - bool ChromeDownloadManagerDelegate::IsOpenInBrowserPreferreredForFile( +@@ -1714,7 +1714,7 @@ void ChromeDownloadManagerDelegate::OnDownloadTargetDe + bool ChromeDownloadManagerDelegate::IsOpenInBrowserPreferredForFile( const base::FilePath& path) { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (path.MatchesExtension(FILE_PATH_LITERAL(".pdf"))) { return !download_prefs_->ShouldOpenPdfInSystemReader(); } -@@ -1742,7 +1742,7 @@ void ChromeDownloadManagerDelegate::CheckDownloadAllow +@@ -1860,7 +1860,7 @@ void ChromeDownloadManagerDelegate::CheckDownloadAllow content::CheckDownloadAllowedCallback check_download_allowed_cb) { DCHECK_CURRENTLY_ON(BrowserThread::UI); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) // Don't download pdf if it is a file URL, as that might cause an infinite // download loop if Chrome is not the system pdf viewer. if (url.SchemeIsFile() && download_prefs_->ShouldOpenPdfInSystemReader()) { -@@ -1788,7 +1788,7 @@ void ChromeDownloadManagerDelegate::CheckSavePackageAl +@@ -1906,7 +1906,7 @@ void ChromeDownloadManagerDelegate::CheckSavePackageAl DCHECK(download_item->IsSavePackageDownload()); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - absl::optional settings = + std::optional settings = safe_browsing::DeepScanningRequest::ShouldUploadBinary(download_item); diff --git a/www/iridium/files/patch-chrome_browser_download_download__commands.cc b/www/iridium/files/patch-chrome_browser_download_download__commands.cc index 53cb0810d98b..bd6d75568945 100644 --- a/www/iridium/files/patch-chrome_browser_download_download__commands.cc +++ b/www/iridium/files/patch-chrome_browser_download_download__commands.cc @@ -1,20 +1,20 @@ ---- chrome/browser/download/download_commands.cc.orig 2023-04-22 17:45:15 UTC +--- chrome/browser/download/download_commands.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/download/download_commands.cc @@ -26,7 +26,7 @@ #include "ui/base/clipboard/scoped_clipboard_writer.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/scoped_tabbed_browser_displayer.h" @@ -167,7 +167,7 @@ void DownloadCommands::ExecuteCommand(Command command) } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) Browser* DownloadCommands::GetBrowser() const { if (!model_) diff --git a/www/iridium/files/patch-chrome_browser_download_download__commands.h b/www/iridium/files/patch-chrome_browser_download_download__commands.h index d5a4394a0e47..578ad4a25fe8 100644 --- a/www/iridium/files/patch-chrome_browser_download_download__commands.h +++ b/www/iridium/files/patch-chrome_browser_download_download__commands.h @@ -1,11 +1,11 @@ ---- chrome/browser/download/download_commands.h.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/download/download_commands.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/download/download_commands.h -@@ -63,7 +63,7 @@ class DownloadCommands { +@@ -66,7 +66,7 @@ class DownloadCommands { void ExecuteCommand(Command command); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) bool IsDownloadPdf() const; bool CanOpenPdfInSystemViewer() const; Browser* GetBrowser() const; diff --git a/www/iridium/files/patch-chrome_browser_download_download__file__picker.cc b/www/iridium/files/patch-chrome_browser_download_download__file__picker.cc index 188ff1b4f1c1..8ce04d0adce2 100644 --- a/www/iridium/files/patch-chrome_browser_download_download__file__picker.cc +++ b/www/iridium/files/patch-chrome_browser_download_download__file__picker.cc @@ -1,20 +1,20 @@ ---- chrome/browser/download/download_file_picker.cc.orig 2023-03-13 07:33:08 UTC +--- chrome/browser/download/download_file_picker.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/download/download_file_picker.cc -@@ -17,7 +17,7 @@ - #include "content/public/browser/download_manager.h" +@@ -18,7 +18,7 @@ #include "content/public/browser/web_contents.h" + #include "ui/shell_dialogs/selected_file_info.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/ui/browser_list.h" #include "chrome/browser/ui/browser_window.h" #include "ui/aura/window.h" -@@ -82,7 +82,7 @@ DownloadFilePicker::DownloadFilePicker(download::Downl +@@ -83,7 +83,7 @@ DownloadFilePicker::DownloadFilePicker(download::Downl // dialog in Linux (See SelectFileImpl() in select_file_dialog_linux_gtk.cc). // and windows.Here we make owning_window host to browser current active // window if it is null. https://crbug.com/1301898 -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) if (!owning_window || !owning_window->GetHost()) { owning_window = BrowserList::GetInstance() ->GetLastActive() diff --git a/www/iridium/files/patch-chrome_browser_download_download__item__model.cc b/www/iridium/files/patch-chrome_browser_download_download__item__model.cc index adeb6505efdb..37d2a9a3d889 100644 --- a/www/iridium/files/patch-chrome_browser_download_download__item__model.cc +++ b/www/iridium/files/patch-chrome_browser_download_download__item__model.cc @@ -1,29 +1,29 @@ ---- chrome/browser/download/download_item_model.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/download/download_item_model.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/download/download_item_model.cc -@@ -755,7 +755,7 @@ bool DownloadItemModel::IsCommandChecked( +@@ -799,7 +799,7 @@ bool DownloadItemModel::IsCommandChecked( download_crx_util::IsExtensionDownload(*download_); case DownloadCommands::ALWAYS_OPEN_TYPE: #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (download_commands->CanOpenPdfInSystemViewer()) { DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext(profile()); return prefs->ShouldOpenPdfInSystemReader(); -@@ -801,7 +801,7 @@ void DownloadItemModel::ExecuteCommand(DownloadCommand +@@ -847,7 +847,7 @@ void DownloadItemModel::ExecuteCommand(DownloadCommand DownloadCommands::ALWAYS_OPEN_TYPE); DownloadPrefs* prefs = DownloadPrefs::FromBrowserContext(profile()); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) if (download_commands->CanOpenPdfInSystemViewer()) { prefs->SetShouldOpenPdfInSystemReader(!is_checked); SetShouldPreferOpeningInBrowser(is_checked); -@@ -1170,7 +1170,7 @@ void DownloadItemModel::DetermineAndSetShouldPreferOpe +@@ -1236,7 +1236,7 @@ void DownloadItemModel::DetermineAndSetShouldPreferOpe return; } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (download_->GetOriginalMimeType() == "application/x-x509-user-cert") { SetShouldPreferOpeningInBrowser(true); return; diff --git a/www/iridium/files/patch-chrome_browser_download_download__prefs.cc b/www/iridium/files/patch-chrome_browser_download_download__prefs.cc index 954ee5ba276f..8ee5b0411525 100644 --- a/www/iridium/files/patch-chrome_browser_download_download__prefs.cc +++ b/www/iridium/files/patch-chrome_browser_download_download__prefs.cc @@ -1,90 +1,90 @@ ---- chrome/browser/download/download_prefs.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/download/download_prefs.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/download/download_prefs.cc @@ -11,6 +11,7 @@ #include #include "base/check.h" +#include "base/command_line.h" #include "base/feature_list.h" #include "base/files/file_util.h" #include "base/functional/bind.h" -@@ -63,6 +64,10 @@ - #include "chrome/browser/download/bubble/download_bubble_prefs.h" +@@ -64,6 +65,10 @@ + #include "chrome/browser/flags/android/chrome_feature_list.h" #endif +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#endif + using content::BrowserContext; using content::BrowserThread; using content::DownloadManager; -@@ -73,7 +78,7 @@ namespace { +@@ -74,7 +79,7 @@ namespace { // Consider downloads 'dangerous' if they go to the home directory on Linux and // to the desktop on any platform. bool DownloadPathIsDangerous(const base::FilePath& download_path) { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::FilePath home_dir = base::GetHomeDir(); if (download_path == home_dir) { return true; -@@ -181,7 +186,7 @@ DownloadPrefs::DownloadPrefs(Profile* profile) : profi +@@ -180,7 +185,7 @@ DownloadPrefs::DownloadPrefs(Profile* profile) : profi #endif // BUILDFLAG(IS_CHROMEOS_ASH) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) should_open_pdf_in_system_reader_ = prefs->GetBoolean(prefs::kOpenPdfDownloadInSystemReader); #endif -@@ -310,7 +315,7 @@ void DownloadPrefs::RegisterProfilePrefs( +@@ -304,7 +309,7 @@ void DownloadPrefs::RegisterProfilePrefs( registry->RegisterFilePathPref(prefs::kSaveFileDefaultDirectory, default_download_path); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kOpenPdfDownloadInSystemReader, false); #endif #if BUILDFLAG(IS_ANDROID) -@@ -474,7 +479,7 @@ void DownloadPrefs::DisableAutoOpenByUserBasedOnExtens +@@ -469,7 +474,7 @@ void DownloadPrefs::DisableAutoOpenByUserBasedOnExtens } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) void DownloadPrefs::SetShouldOpenPdfInSystemReader(bool should_open) { if (should_open_pdf_in_system_reader_ == should_open) return; -@@ -506,7 +511,7 @@ bool DownloadPrefs::ShouldOpenPdfInSystemReader() cons +@@ -501,7 +506,7 @@ bool DownloadPrefs::ShouldOpenPdfInSystemReader() cons void DownloadPrefs::ResetAutoOpenByUser() { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) SetShouldOpenPdfInSystemReader(false); #endif auto_open_by_user_.clear(); -@@ -537,7 +542,7 @@ void DownloadPrefs::SaveAutoOpenState() { +@@ -538,7 +543,7 @@ void DownloadPrefs::SaveAutoOpenState() { bool DownloadPrefs::CanPlatformEnableAutoOpenForPdf() const { #if BUILDFLAG(IS_CHROMEOS) return false; // There is no UI for auto-open on ChromeOS. -#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) return ShouldOpenPdfInSystemReader(); #else return false; -@@ -661,7 +666,14 @@ base::FilePath DownloadPrefs::SanitizeDownloadTargetPa +@@ -690,7 +695,14 @@ base::FilePath DownloadPrefs::SanitizeDownloadTargetPa #else // If the stored download directory is an absolute path, we presume it's // correct; there's not really much more validation we can do here. +#if BUILDFLAG(IS_OPENBSD) + // If unveil(2) is used, force the file dialog directory to something we + // know is available. + auto* sandbox = sandbox::policy::SandboxLinux::GetInstance(); + if (!sandbox->unveil_initialized() && path.IsAbsolute()) +#else if (path.IsAbsolute()) +#endif return path; // When the default download directory is *not* an absolute path, we use the diff --git a/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc b/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc new file mode 100644 index 000000000000..5a0ef268c326 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.cc @@ -0,0 +1,29 @@ +--- chrome/browser/enterprise/browser_management/browser_management_service.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/enterprise/browser_management/browser_management_service.cc +@@ -21,7 +21,7 @@ namespace policy { + + namespace { + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void UpdateEnterpriseLogo( + Profile* profile, + base::OnceCallbackGetPrefs()); + pref_change_registrar_.Add( +@@ -114,7 +114,7 @@ const gfx::Image& BrowserManagementMetadata::GetManage + return management_logo_; + } + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + void BrowserManagementMetadata::UpdateManagementLogo(Profile* profile) { + UpdateEnterpriseLogo( + profile, base::BindOnce(&BrowserManagementMetadata::SetManagementLogo, diff --git a/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.h b/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.h new file mode 100644 index 000000000000..947971df43b7 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_enterprise_browser__management_browser__management__service.h @@ -0,0 +1,11 @@ +--- chrome/browser/enterprise/browser_management/browser_management_service.h.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/enterprise/browser_management/browser_management_service.h +@@ -28,7 +28,7 @@ class BrowserManagementMetadata { + + const gfx::Image& GetManagementLogo() const; + +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + private: + void UpdateManagementLogo(Profile* profile); + void SetManagementLogo( diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc index bd974e91c203..2cfe334ebcc2 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_analysis_analysis__service__settings.cc @@ -1,11 +1,11 @@ ---- chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc.orig 2023-10-21 11:51:27 UTC +--- chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/connectors/analysis/analysis_service_settings.cc -@@ -143,7 +143,7 @@ AnalysisServiceSettings::AnalysisServiceSettings( +@@ -151,7 +151,7 @@ AnalysisServiceSettings::AnalysisServiceSettings( const char* verification_key = kKeyWindowsVerification; #elif BUILDFLAG(IS_MAC) const char* verification_key = kKeyMacVerification; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char* verification_key = kKeyLinuxVerification; #endif diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc index 270e272fc2d0..fad52723657e 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_connectors__service.cc @@ -1,11 +1,11 @@ ---- chrome/browser/enterprise/connectors/connectors_service.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/enterprise/connectors/connectors_service.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/connectors/connectors_service.cc -@@ -560,7 +560,7 @@ bool ConnectorsService::ConnectorsEnabled() const { +@@ -565,7 +565,7 @@ bool ConnectorsService::ConnectorsEnabled() const { Profile* profile = Profile::FromBrowserContext(context_); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // On desktop, the guest profile is actually the primary OTR profile of // the "regular" guest profile. The regular guest profile is never used // directly by users. Also, user are not able to create child OTR profiles diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_device__trust__service__factory.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_device__trust__service__factory.cc index 1a36d5f5ad1c..2ce886203421 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_device__trust__service__factory.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_device__trust__service__factory.cc @@ -1,29 +1,29 @@ ---- chrome/browser/enterprise/connectors/device_trust/device_trust_service_factory.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/enterprise/connectors/device_trust/device_trust_service_factory.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/connectors/device_trust/device_trust_service_factory.cc @@ -23,7 +23,7 @@ #include "components/policy/core/common/management/management_service.h" #include "content/public/browser/browser_context.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_process.h" #include "chrome/browser/enterprise/connectors/device_trust/attestation/browser/browser_attestation_service.h" #include "chrome/browser/enterprise/connectors/device_trust/attestation/browser/device_attester.h" @@ -54,7 +54,7 @@ bool IsProfileManaged(Profile* profile) { return management_service && management_service->IsManaged(); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) policy::CloudPolicyStore* GetUserCloudPolicyStore(Profile* profile) { policy::CloudPolicyManager* user_policy_manager = - profile->GetUserCloudPolicyManager(); -@@ -104,7 +104,7 @@ DeviceTrustServiceFactory::DeviceTrustServiceFactory() + profile->GetCloudPolicyManager(); +@@ -101,7 +101,7 @@ DeviceTrustServiceFactory::DeviceTrustServiceFactory() DependsOn(DeviceTrustConnectorServiceFactory::GetInstance()); DependsOn(policy::ManagementServiceFactory::GetInstance()); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Depends on this service via the SignalsService having a dependency on it. DependsOn(enterprise_signals::SignalsAggregatorFactory::GetInstance()); // Depends on this service via the ProfileAttester having a dependency on it diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_key__management_browser_commands_key__rotation__command__factory.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_key__management_browser_commands_key__rotation__command__factory.cc index 283d0e00e6cf..d9f5008ada46 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_key__management_browser_commands_key__rotation__command__factory.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_device__trust_key__management_browser_commands_key__rotation__command__factory.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/key_rotation_command_factory.cc.orig 2023-08-28 20:17:35 UTC +--- chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/key_rotation_command_factory.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/key_rotation_command_factory.cc -@@ -13,7 +13,7 @@ +@@ -14,7 +14,7 @@ #if BUILDFLAG(IS_WIN) #include "chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/win_key_rotation_command.h" -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/linux_key_rotation_command.h" #elif BUILDFLAG(IS_MAC) #include "chrome/browser/enterprise/connectors/device_trust/key_management/browser/commands/mac_key_rotation_command.h" -@@ -46,7 +46,7 @@ std::unique_ptr KeyRotationCommand +@@ -47,7 +47,7 @@ std::unique_ptr KeyRotationCommand scoped_refptr url_loader_factory) { #if BUILDFLAG(IS_WIN) return std::make_unique(); -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return std::make_unique(url_loader_factory); #elif BUILDFLAG(IS_MAC) return std::make_unique(url_loader_factory); diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_browser__crash__event__router.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_browser__crash__event__router.cc index 0291767e0e0c..cff0d9204236 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_browser__crash__event__router.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_browser__crash__event__router.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/connectors/reporting/browser_crash_event_router.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/enterprise/connectors/reporting/browser_crash_event_router.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/connectors/reporting/browser_crash_event_router.cc @@ -11,7 +11,7 @@ namespace enterprise_connectors { BrowserCrashEventRouter::BrowserCrashEventRouter( content::BrowserContext* context) { --#if !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_CHROMEOS_ASH) -+#if !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_CHROMEOS_ASH) && !BUILDFLAG(IS_BSD) +-#if !BUILDFLAG(IS_CHROMEOS) ++#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) CrashReportingContext* crash_reporting_context = CrashReportingContext::GetInstance(); Profile* profile = Profile::FromBrowserContext(context); @@ -21,7 +21,7 @@ BrowserCrashEventRouter::BrowserCrashEventRouter( } BrowserCrashEventRouter::~BrowserCrashEventRouter() { --#if !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_CHROMEOS_ASH) -+#if !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_CHROMEOS_ASH) && !BUILDFLAG(IS_BSD) +-#if !BUILDFLAG(IS_CHROMEOS) ++#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) CrashReportingContext* crash_reporting_context = CrashReportingContext::GetInstance(); crash_reporting_context->RemoveProfile(this); diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc index d9dd9c5767a2..56e49e5d9ed2 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_crash__reporting__context.cc @@ -1,11 +1,11 @@ ---- chrome/browser/enterprise/connectors/reporting/crash_reporting_context.cc.orig 2023-04-22 17:45:15 UTC +--- chrome/browser/enterprise/connectors/reporting/crash_reporting_context.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/connectors/reporting/crash_reporting_context.cc @@ -18,7 +18,7 @@ namespace enterprise_connectors { --#if !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_CHROMEOS_ASH) -+#if !BUILDFLAG(IS_FUCHSIA) && !BUILDFLAG(IS_CHROMEOS_ASH) && !BUILDFLAG(IS_BSD) +-#if !BUILDFLAG(IS_CHROMEOS) ++#if !BUILDFLAG(IS_CHROMEOS) && !BUILDFLAG(IS_BSD) namespace { diff --git a/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc index bbddafb86969..ac95be35493a 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_connectors_reporting_realtime__reporting__client.cc @@ -1,38 +1,38 @@ ---- chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/connectors/reporting/realtime_reporting_client.cc @@ -58,7 +58,7 @@ #include "base/strings/utf_string_conversions.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/signals/signals_aggregator_factory.h" #include "components/device_signals/core/browser/signals_aggregator.h" #include "components/device_signals/core/common/signals_constants.h" @@ -132,7 +132,7 @@ void UploadSecurityEventReport(base::Value::Dict event std::move(upload_callback)); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void PopulateSignals(base::Value::Dict event, policy::CloudPolicyClient* client, std::string name, -@@ -427,7 +427,7 @@ void RealtimeReportingClient::ReportPastEvent(const st +@@ -420,7 +420,7 @@ void RealtimeReportingClient::ReportPastEvent(const st /*include_profile_user_name=*/false); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void AddCrowdstrikeSignalsToEvent( base::Value::Dict& event, -@@ -486,7 +486,7 @@ void RealtimeReportingClient::ReportEventWithTimestamp +@@ -479,7 +479,7 @@ void RealtimeReportingClient::ReportEventWithTimestamp if (include_profile_user_name) { event.Set(kKeyProfileUserName, GetProfileUserName()); } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) Profile* profile = Profile::FromBrowserContext(context_); device_signals::SignalsAggregator* signals_aggregator = enterprise_signals::SignalsAggregatorFactory::GetForProfile(profile); diff --git a/www/iridium/files/patch-chrome_browser_enterprise_identifiers_profile__id__delegate__impl.cc b/www/iridium/files/patch-chrome_browser_enterprise_identifiers_profile__id__delegate__impl.cc index 25eeed851e20..f3a85684ef03 100644 --- a/www/iridium/files/patch-chrome_browser_enterprise_identifiers_profile__id__delegate__impl.cc +++ b/www/iridium/files/patch-chrome_browser_enterprise_identifiers_profile__id__delegate__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/enterprise/identifiers/profile_id_delegate_impl.cc.orig 2023-01-17 19:19:00 UTC +--- chrome/browser/enterprise/identifiers/profile_id_delegate_impl.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/enterprise/identifiers/profile_id_delegate_impl.cc -@@ -12,7 +12,7 @@ +@@ -13,7 +13,7 @@ #include "components/enterprise/browser/identifiers/identifiers_prefs.h" #include "components/prefs/pref_service.h" #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "components/enterprise/browser/controller/browser_dm_token_storage.h" #if BUILDFLAG(IS_WIN) #include "base/strings/utf_string_conversions.h" -@@ -36,7 +36,7 @@ void CreateProfileGUID(PrefService* prefs) { +@@ -94,7 +94,7 @@ std::string ProfileIdDelegateImpl::GetDeviceId() { } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Gets the device ID from the BrowserDMTokenStorage. - std::string GetId() { + std::string ProfileIdDelegateImpl::GetId() { std::string device_id = diff --git a/www/iridium/files/patch-chrome_browser_enterprise_profile__management_profile__management__navigation__throttle.cc b/www/iridium/files/patch-chrome_browser_enterprise_profile__management_profile__management__navigation__throttle.cc new file mode 100644 index 000000000000..1695fd2433f8 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_enterprise_profile__management_profile__management__navigation__throttle.cc @@ -0,0 +1,13 @@ +--- chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/enterprise/profile_management/profile_management_navigation_throttle.cc +@@ -67,8 +67,8 @@ base::flat_map& Ge + // TODO(crbug.com/40267996): Add actual domains with attribute names. + profile_attributes->insert(std::make_pair( + "supported.test", +- SAMLProfileAttributes("placeholderName", "placeholderDomain", +- "placeholderToken"))); ++ SAMLProfileAttributes(SAMLProfileAttributes{"placeholderName", "placeholderDomain", ++ "placeholderToken"}))); + + // Extract domains and attributes from the command line switch. + const base::CommandLine& command_line = diff --git a/www/iridium/files/patch-chrome_browser_enterprise_watermark_watermark__view.cc b/www/iridium/files/patch-chrome_browser_enterprise_watermark_watermark__view.cc new file mode 100644 index 000000000000..bbd5a1331682 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_enterprise_watermark_watermark__view.cc @@ -0,0 +1,20 @@ +--- chrome/browser/enterprise/watermark/watermark_view.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/enterprise/watermark/watermark_view.cc +@@ -36,7 +36,7 @@ gfx::Font WatermarkFont() { + "Segoe UI", + #elif BUILDFLAG(IS_MAC) + "SF Pro Text", +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + "Ubuntu", + #elif BUILDFLAG(IS_CHROMEOS) + "Google Sans", +@@ -47,7 +47,7 @@ gfx::Font WatermarkFont() { + } + + gfx::Font::Weight WatermarkFontWeight() { +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + return gfx::Font::Weight::SEMIBOLD; + #else + return gfx::Font::Weight::MEDIUM; diff --git a/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn b/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn index 6bc2375c8009..842c2393e1be 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn +++ b/www/iridium/files/patch-chrome_browser_extensions_BUILD.gn @@ -1,13 +1,13 @@ ---- chrome/browser/extensions/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/extensions/BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/BUILD.gn -@@ -1372,6 +1372,10 @@ static_library("extensions") { +@@ -1391,6 +1391,10 @@ static_library("extensions") { deps += [ "//chrome/services/printing/public/mojom" ] } + if (is_bsd) { + sources -= [ "api/image_writer_private/removable_storage_provider_linux.cc" ] + } + if (enable_service_discovery) { sources += [ "api/mdns/mdns_api.cc", diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc b/www/iridium/files/patch-chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc index 44632be3f0fa..06cc0678e9bc 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_api__browser__context__keyed__service__factories.cc @@ -1,20 +1,20 @@ ---- chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/api_browser_context_keyed_service_factories.cc -@@ -43,7 +43,7 @@ - #include "extensions/browser/api/bluetooth_low_energy/bluetooth_low_energy_api.h" - #include "extensions/browser/api/networking_private/networking_private_delegate_factory.h" +@@ -45,7 +45,7 @@ + #include "printing/buildflags/buildflags.h" + #include "services/screen_ai/buildflags/buildflags.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/extensions/api/system_indicator/system_indicator_manager_factory.h" #endif -@@ -119,7 +119,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt +@@ -128,7 +128,7 @@ void EnsureApiBrowserContextKeyedServiceFactoriesBuilt extensions::SettingsPrivateEventRouterFactory::GetInstance(); extensions::SettingsOverridesAPI::GetFactoryInstance(); extensions::SidePanelService::GetFactoryInstance(); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extensions::SystemIndicatorManagerFactory::GetInstance(); #endif extensions::TabGroupsEventRouterFactory::GetInstance(); diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_chrome__desktop__report__request__helper.cc b/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_chrome__desktop__report__request__helper.cc index bb8fb75590cd..97f782b02b5d 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_chrome__desktop__report__request__helper.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_chrome__desktop__report__request__helper.cc @@ -1,29 +1,29 @@ ---- chrome/browser/extensions/api/enterprise_reporting_private/chrome_desktop_report_request_helper.cc.orig 2022-10-05 07:34:01 UTC +--- chrome/browser/extensions/api/enterprise_reporting_private/chrome_desktop_report_request_helper.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/enterprise_reporting_private/chrome_desktop_report_request_helper.cc @@ -24,7 +24,7 @@ #include "base/win/registry.h" #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "base/environment.h" #include "base/nix/xdg_util.h" #endif -@@ -256,7 +256,7 @@ base::FilePath GetEndpointVerificationDir() { +@@ -255,7 +255,7 @@ base::FilePath GetEndpointVerificationDir() { bool got_path = false; #if BUILDFLAG(IS_WIN) got_path = base::PathService::Get(base::DIR_LOCAL_APP_DATA, &path); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) std::unique_ptr env(base::Environment::Create()); path = base::nix::GetXDGDirectory(env.get(), base::nix::kXdgConfigHomeEnvVar, base::nix::kDotConfigDir); -@@ -267,7 +267,7 @@ base::FilePath GetEndpointVerificationDir() { +@@ -266,7 +266,7 @@ base::FilePath GetEndpointVerificationDir() { if (!got_path) return path; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) path = path.AppendASCII("google"); #else path = path.AppendASCII("Google"); diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.h b/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.h index 25d560bc078a..378d71ccb2d8 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.h +++ b/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_conversion__utils.h @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.h.orig 2022-10-05 07:34:01 UTC +--- chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.h @@ -7,7 +7,7 @@ #include "build/build_config.h" -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include #include - diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.cc b/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.cc index de984b876b1c..78ceec680d33 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_enterprise__reporting__private_enterprise__reporting__private__api.cc @@ -1,38 +1,38 @@ ---- chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_api.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_api.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/enterprise_reporting_private/enterprise_reporting_private_api.cc -@@ -32,7 +32,7 @@ +@@ -33,7 +33,7 @@ #include "components/reporting/util/statusor.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + #include + #include "base/strings/string_util.h" - #include "chrome/browser/enterprise/signals/signals_aggregator_factory.h" - #include "chrome/browser/extensions/api/enterprise_reporting_private/conversion_utils.h" -@@ -149,7 +149,7 @@ api::enterprise_reporting_private::ContextInfo ToConte +@@ -150,7 +150,7 @@ api::enterprise_reporting_private::ContextInfo ToConte return info; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) device_signals::SignalsAggregationRequest CreateAggregationRequest( device_signals::SignalName signal_name) { -@@ -210,7 +210,7 @@ EnterpriseReportingPrivateGetDeviceIdFunction:: +@@ -211,7 +211,7 @@ EnterpriseReportingPrivateGetDeviceIdFunction:: // getPersistentSecret -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) EnterpriseReportingPrivateGetPersistentSecretFunction:: EnterpriseReportingPrivateGetPersistentSecretFunction() = default; @@ -637,7 +637,7 @@ void EnterpriseReportingPrivateEnqueueRecordFunction:: } #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // getFileSystemInfo diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_management_chrome__management__api__delegate.cc b/www/iridium/files/patch-chrome_browser_extensions_api_management_chrome__management__api__delegate.cc new file mode 100644 index 000000000000..37759e72a7a2 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_extensions_api_management_chrome__management__api__delegate.cc @@ -0,0 +1,11 @@ +--- chrome/browser/extensions/api/management/chrome_management_api_delegate.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/extensions/api/management/chrome_management_api_delegate.cc +@@ -405,7 +405,7 @@ bool ChromeManagementAPIDelegate::LaunchAppFunctionDel + apps::LaunchContainer launch_container = + GetLaunchContainer(extensions::ExtensionPrefs::Get(context), extension); + Profile* profile = Profile::FromBrowserContext(context); +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (extensions::IsExtensionUnsupportedDeprecatedApp(profile, + extension->id())) { + return false; diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_messaging_native__process__launcher__posix.cc b/www/iridium/files/patch-chrome_browser_extensions_api_messaging_native__process__launcher__posix.cc index 5ea00e63e617..20f169eb51fb 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_messaging_native__process__launcher__posix.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_messaging_native__process__launcher__posix.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/messaging/native_process_launcher_posix.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/extensions/api/messaging/native_process_launcher_posix.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/messaging/native_process_launcher_posix.cc @@ -84,7 +84,7 @@ bool NativeProcessLauncher::LaunchNativeProcess( - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) // Don't use no_new_privs mode, e.g. in case the host needs to use sudo. options.allow_new_privs = true; #endif diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc b/www/iridium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc index 33f1af33bed5..0e78824c7c08 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_passwords__private_passwords__private__delegate__impl.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/passwords_private/passwords_private_delegate_impl.cc -@@ -601,7 +601,7 @@ void PasswordsPrivateDelegateImpl::OnFetchingFamilyMem +@@ -610,7 +610,7 @@ void PasswordsPrivateDelegateImpl::OnFetchingFamilyMem } void PasswordsPrivateDelegateImpl::OsReauthTimeoutCall() { -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) PasswordsPrivateEventRouter* router = PasswordsPrivateEventRouterFactory::GetForProfile(profile_); if (router) { diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc b/www/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc index 6c3da3d68bb3..d39a9cc00206 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_runtime_chrome__runtime__api__delegate.cc @@ -1,13 +1,13 @@ ---- chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/runtime/chrome_runtime_api_delegate.cc -@@ -279,7 +279,9 @@ bool ChromeRuntimeAPIDelegate::GetPlatformInfo(Platfor +@@ -284,7 +284,9 @@ bool ChromeRuntimeAPIDelegate::GetPlatformInfo(Platfor } else if (strcmp(os, "linux") == 0) { info->os = extensions::api::runtime::PlatformOs::kLinux; } else if (strcmp(os, "openbsd") == 0) { - info->os = extensions::api::runtime::PlatformOs::kOpenbsd; + info->os = extensions::api::runtime::PlatformOs::kLinux; + } else if (strcmp(os, "freebsd") == 0) { + info->os = extensions::api::runtime::PlatformOs::kLinux; - } else if (strcmp(os, "fuchsia") == 0) { - info->os = extensions::api::runtime::PlatformOs::kFuchsia; } else { + NOTREACHED() << "Platform not supported: " << os; + return false; diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc b/www/iridium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc index 9f176d32af64..0e5bdd18ab31 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_settings__private_prefs__util.cc @@ -1,20 +1,20 @@ ---- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/browser/extensions/api/settings_private/prefs_util.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/settings_private/prefs_util.cc -@@ -195,7 +195,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist +@@ -197,7 +197,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist (*s_allowlist)[::prefs::kSidePanelHorizontalAlignment] = - settings_api::PrefType::PREF_TYPE_BOOLEAN; + settings_api::PrefType::kBoolean; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) (*s_allowlist)[::prefs::kUseCustomChromeFrame] = - settings_api::PrefType::PREF_TYPE_BOOLEAN; + settings_api::PrefType::kBoolean; #endif -@@ -207,7 +207,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist - settings_api::PrefType::PREF_TYPE_STRING; - (*s_allowlist)[::prefs::kPolicyThemeColor] = - settings_api::PrefType::PREF_TYPE_NUMBER; +@@ -208,7 +208,7 @@ const PrefsUtil::TypedPrefMap& PrefsUtil::GetAllowlist + // Appearance settings. + (*s_allowlist)[::prefs::kCurrentThemeID] = settings_api::PrefType::kString; + (*s_allowlist)[::prefs::kPolicyThemeColor] = settings_api::PrefType::kNumber; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - (*s_allowlist)[::prefs::kSystemTheme] = - settings_api::PrefType::PREF_TYPE_NUMBER; + (*s_allowlist)[::prefs::kSystemTheme] = settings_api::PrefType::kNumber; #endif + (*s_allowlist)[::prefs::kHomePage] = settings_api::PrefType::kUrl; diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc b/www/iridium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc index 03ffd781a982..8a84810dc88c 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_tabs_tabs__api.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/tabs/tabs_api.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/browser/extensions/api/tabs/tabs_api.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/tabs/tabs_api.cc -@@ -861,7 +861,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio - // ui::SHOW_STATE_MINIMIZED above, on Linux the window is not created as +@@ -890,7 +890,7 @@ ExtensionFunction::ResponseAction WindowsCreateFunctio // minimized. - // TODO(crbug.com/1410400): Remove this workaround when linux is fixed. --#if BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // TODO(crbug.com/1410400): Find a fix for wayland as well. - - // Must be defined inside IS_LINUX to compile on windows/mac. + // TODO(crbug.com/40254339): Remove this workaround when linux is fixed. + // TODO(crbug.com/40254339): Find a fix for wayland as well. +-#if BUILDFLAG(IS_LINUX) && BUILDFLAG(IS_OZONE_X11) ++#if (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) && BUILDFLAG(IS_OZONE_X11) + if (new_window->initial_show_state() == ui::SHOW_STATE_MINIMIZED) { + new_window->window()->Minimize(); + } diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc b/www/iridium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc index d75962f3a55c..d1f664350842 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_webrtc__logging__private_webrtc__logging__private__api.cc @@ -1,29 +1,29 @@ ---- chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc.orig 2022-10-05 07:34:01 UTC +--- chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/webrtc_logging_private/webrtc_logging_private_api.cc @@ -29,7 +29,7 @@ #include "extensions/browser/process_manager.h" #include "extensions/common/error_utils.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "extensions/common/permissions/permissions_data.h" #endif @@ -38,7 +38,7 @@ namespace { bool CanEnableAudioDebugRecordingsFromExtension( const extensions::Extension* extension) { bool enabled_by_permissions = false; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) if (extension) { enabled_by_permissions = extension->permissions_data()->active_permissions().HasAPIPermission( -@@ -580,7 +580,7 @@ void WebrtcLoggingPrivateStartEventLoggingFunction::Fi +@@ -576,7 +576,7 @@ void WebrtcLoggingPrivateStartEventLoggingFunction::Fi ExtensionFunction::ResponseAction WebrtcLoggingPrivateGetLogsDirectoryFunction::Run() { -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Unlike other WebrtcLoggingPrivate functions that take a RequestInfo object, // this function shouldn't be called by a component extension on behalf of // some web code. It returns a DirectoryEntry for use directly in the calling diff --git a/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc b/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc index 23fc64ab5af6..ded9f4b88a89 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_api_webstore__private_webstore__private__api.cc @@ -1,11 +1,11 @@ ---- chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/browser/extensions/api/webstore_private/webstore_private_api.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/api/webstore_private/webstore_private_api.cc -@@ -919,7 +919,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: - RequestExtensionApproval(contents); - return; - } +@@ -897,7 +897,7 @@ void WebstorePrivateBeginInstallWithManifest3Function: + #if BUILDFLAG(IS_CHROMEOS) + RequestExtensionApproval(contents); + return; -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) // Shows a parental permission dialog directly bypassing the extension // install dialog view. The parental permission dialog contains a superset // of data from the extension install dialog: requested extension diff --git a/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc b/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc index b4976dcb41ee..33c5c62b11d7 100644 --- a/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc +++ b/www/iridium/files/patch-chrome_browser_extensions_external__provider__impl.cc @@ -1,20 +1,20 @@ ---- chrome/browser/extensions/external_provider_impl.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/extensions/external_provider_impl.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/extensions/external_provider_impl.cc -@@ -830,7 +830,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -831,7 +831,7 @@ void ExternalProviderImpl::CreateExternalProviders( if (!profile->GetPrefs()->GetBoolean(pref_names::kBlockExternalExtensions)) { - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) provider_list->push_back(std::make_unique( service, base::MakeRefCounted( -@@ -858,7 +858,7 @@ void ExternalProviderImpl::CreateExternalProviders( +@@ -859,7 +859,7 @@ void ExternalProviderImpl::CreateExternalProviders( bundled_extension_creation_flags)); // Define a per-user source of external extensions. -#if BUILDFLAG(IS_MAC) || ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ +#if BUILDFLAG(IS_MAC) || ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) && \ BUILDFLAG(CHROMIUM_BRANDING)) provider_list->push_back(std::make_unique( service, diff --git a/www/iridium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc b/www/iridium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc index 67d127038144..d403d641214f 100644 --- a/www/iridium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc +++ b/www/iridium/files/patch-chrome_browser_file__system__access_chrome__file__system__access__permission__context.cc @@ -1,11 +1,11 @@ ---- chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/file_system_access/chrome_file_system_access_permission_context.cc -@@ -322,7 +322,7 @@ const struct { +@@ -315,7 +315,7 @@ const struct { FILE_PATH_LITERAL("Library/Mobile Documents/com~apple~CloudDocs"), kDontBlockChildren}, #endif -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // On Linux also block access to devices via /dev. {kNoBasePathKey, FILE_PATH_LITERAL("/dev"), kBlockAllChildren}, // And security sensitive data in /proc and /sys. diff --git a/www/iridium/files/patch-chrome_browser_first__run_first__run__dialog.h b/www/iridium/files/patch-chrome_browser_first__run_first__run__dialog.h index f17c1c4867fd..0feadeb71304 100644 --- a/www/iridium/files/patch-chrome_browser_first__run_first__run__dialog.h +++ b/www/iridium/files/patch-chrome_browser_first__run_first__run__dialog.h @@ -1,11 +1,11 @@ ---- chrome/browser/first_run/first_run_dialog.h.orig 2022-12-06 08:09:13 UTC +--- chrome/browser/first_run/first_run_dialog.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/first_run/first_run_dialog.h @@ -12,7 +12,7 @@ // Hide this function on platforms where the dialog does not exist. - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) +#if BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) namespace first_run { diff --git a/www/iridium/files/patch-chrome_browser_flag__descriptions.cc b/www/iridium/files/patch-chrome_browser_flag__descriptions.cc index a08d84799c27..73af10456ccd 100644 --- a/www/iridium/files/patch-chrome_browser_flag__descriptions.cc +++ b/www/iridium/files/patch-chrome_browser_flag__descriptions.cc @@ -1,83 +1,91 @@ ---- chrome/browser/flag_descriptions.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/flag_descriptions.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/flag_descriptions.cc -@@ -7251,7 +7251,7 @@ const char kLacrosMergeIcuDataFileDescription[] = +@@ -2923,7 +2923,7 @@ const char kCbdTimeframeRequiredDescription[] = + "value to the list."; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + const char kPolicyIndicationForManagedDefaultSearchName[] = + "Enable policy indication for managed Default Search provider"; + const char kPolicyIndicationForManagedDefaultSearchDescription[] = +@@ -3220,7 +3220,7 @@ const char kShowAutofillTypePredictionsDescription[] = + "text."; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + const char kShowFeaturedEnterpriseSiteSearchName[] = + "Show featured Enterprise site search engines in Omnibox"; + const char kShowFeaturedEnterpriseSiteSearchDescription[] = +@@ -3245,7 +3245,7 @@ const char kSiteInstanceGroupsForDataUrlsDescription[] + "but in the same SiteInstanceGroup, and thus the same process."; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + const char kSiteSearchSettingsPolicyName[] = "Enable SiteSearchSettings policy"; + const char kSiteSearchSettingsPolicyDescription[] = + "Allow site search engines to be defined by the SiteSearchSettings policy."; +@@ -7485,7 +7485,7 @@ const char kLacrosMergeIcuDataFileDescription[] = "Enables sharing common areas of icudtl.dat between Ash and Lacros."; #endif // #if BUILDFLAG(IS_CHROMEOS_LACROS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) const char kGetAllScreensMediaName[] = "GetAllScreensMedia API"; const char kGetAllScreensMediaDescription[] = "When enabled, the getAllScreensMedia API for capturing multiple screens " -@@ -7490,7 +7490,7 @@ const char kSearchWebInSidePanelDescription[] = - // Random platform combinations ----------------------------------------------- +@@ -7753,7 +7753,7 @@ const char kV4L2FlatStatefulVideoDecoderDescription[] - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - const char kQuickCommandsName[] = "Quick Commands"; - const char kQuickCommandsDescription[] = - "Enable a text interface to browser features. Invoke with Ctrl-Space."; -@@ -7499,7 +7499,7 @@ const char kQuickCommandsDescription[] = - // BUILDFLAG(IS_FUCHSIA) + // Linux ----------------------------------------------------------------------- + +-#if BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + const char kOzonePlatformHintChoiceDefault[] = "Default"; + const char kOzonePlatformHintChoiceAuto[] = "Auto"; + const char kOzonePlatformHintChoiceX11[] = "X11"; +@@ -7801,14 +7801,14 @@ const char kZeroCopyVideoCaptureDescription[] = + #endif // BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kFollowingFeedSidepanelName[] = "Following feed in the sidepanel"; const char kFollowingFeedSidepanelDescription[] = "Enables the following feed in the sidepanel."; -@@ -7514,7 +7514,7 @@ const char kEnableProtoApiForClassifyUrlDescription[] - "instead of JSON."; - #endif + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) const char kEnableNetworkServiceSandboxName[] = "Enable the network service sandbox."; const char kEnableNetworkServiceSandboxDescription[] = -@@ -7538,7 +7538,7 @@ const char kWebShareDescription[] = - "platforms."; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) - --#if BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS) -+#if (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS)) || BUILDFLAG(IS_BSD) - const char kOzonePlatformHintChoiceDefault[] = "Default"; - const char kOzonePlatformHintChoiceAuto[] = "Auto"; - const char kOzonePlatformHintChoiceX11[] = "X11"; -@@ -7558,7 +7558,7 @@ const char kWebBluetoothConfirmPairingSupportDescripti +@@ -7840,7 +7840,7 @@ const char kWebBluetoothConfirmPairingSupportDescripti "Bluetooth"; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) const char kSkipUndecryptablePasswordsName[] = "Skip undecryptable passwords to use the available decryptable " "passwords."; -@@ -7572,7 +7572,7 @@ const char kForcePasswordInitialSyncWhenDecryptionFail - "storage and requests initial sync."; - #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kAsyncDnsName[] = "Async DNS resolver"; - const char kAsyncDnsDescription[] = "Enables the built-in DNS resolver."; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -@@ -7671,7 +7671,7 @@ const char kElasticOverscrollDescription[] = +@@ -7980,7 +7980,7 @@ const char kElementCaptureDescription[] = #if BUILDFLAG(IS_WIN) || \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || \ -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) const char kUIDebugToolsName[] = "Debugging tools for UI"; const char kUIDebugToolsDescription[] = "Enables additional keyboard shortcuts to help debugging."; -@@ -7717,7 +7717,7 @@ const char kEnableAudioFocusEnforcementDescription[] = - "any one time. Requires #enable-media-session-service to be enabled too."; - #endif // BUILDFLAG(IS_CHROMEOS_ASH) +@@ -8041,7 +8041,7 @@ const char kComposeNudgeAtCursorDescription[] = + "Shows the Compose proactive nudge at the cursor location"; + #endif // BUILDFLAG(ENABLE_COMPOSE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) const char kThirdPartyProfileManagementName[] = "Third party profile management"; const char kThirdPartyProfileManagementDescription[] = diff --git a/www/iridium/files/patch-chrome_browser_flag__descriptions.h b/www/iridium/files/patch-chrome_browser_flag__descriptions.h index 337e91850bb2..f23aa6b55b2e 100644 --- a/www/iridium/files/patch-chrome_browser_flag__descriptions.h +++ b/www/iridium/files/patch-chrome_browser_flag__descriptions.h @@ -1,89 +1,90 @@ ---- chrome/browser/flag_descriptions.h.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/flag_descriptions.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/flag_descriptions.h -@@ -4169,7 +4169,7 @@ extern const char kLacrosMergeIcuDataFileName[]; +@@ -1702,7 +1702,7 @@ extern const char kCbdTimeframeRequiredName[]; + extern const char kCbdTimeframeRequiredDescription[]; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + extern const char kPolicyIndicationForManagedDefaultSearchName[]; + extern const char kPolicyIndicationForManagedDefaultSearchDescription[]; + #endif +@@ -1873,7 +1873,7 @@ extern const char kShowAutofillTypePredictionsName[]; + extern const char kShowAutofillTypePredictionsDescription[]; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + extern const char kShowFeaturedEnterpriseSiteSearchName[]; + extern const char kShowFeaturedEnterpriseSiteSearchDescription[]; + #endif +@@ -1888,7 +1888,7 @@ extern const char kSiteInstanceGroupsForDataUrlsName[] + extern const char kSiteInstanceGroupsForDataUrlsDescription[]; + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + extern const char kSiteSearchSettingsPolicyName[]; + extern const char kSiteSearchSettingsPolicyDescription[]; + #endif +@@ -4347,7 +4347,7 @@ extern const char kLacrosMergeIcuDataFileName[]; extern const char kLacrosMergeIcuDataFileDescription[]; #endif // #if BUILDFLAG(IS_CHROMEOS_LACROS) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kGetAllScreensMediaName[]; extern const char kGetAllScreensMediaDescription[]; #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -@@ -4309,14 +4309,14 @@ extern const char kSearchWebInSidePanelDescription[]; - // Random platform combinations ----------------------------------------------- - - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) - extern const char kQuickCommandsName[]; - extern const char kQuickCommandsDescription[]; +@@ -4502,7 +4502,7 @@ extern const char kV4L2FlatStatefulVideoDecoderDescrip - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - // defined (OS_FUCHSIA) - --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) - extern const char kWebShareName[]; - extern const char kWebShareDescription[]; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) -@@ -4326,7 +4326,7 @@ extern const char kWebBluetoothConfirmPairingSupportNa - extern const char kWebBluetoothConfirmPairingSupportDescription[]; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) + // Linux --------------------------------------------------------------------- -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) extern const char kOzonePlatformHintChoiceDefault[]; extern const char kOzonePlatformHintChoiceAuto[]; extern const char kOzonePlatformHintChoiceX11[]; -@@ -4336,7 +4336,7 @@ extern const char kOzonePlatformHintName[]; - extern const char kOzonePlatformHintDescription[]; - #endif // BUILDFLAG(IS_LINUX) +@@ -4544,7 +4544,7 @@ extern const char kWebBluetoothConfirmPairingSupportNa + extern const char kWebBluetoothConfirmPairingSupportDescription[]; + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) extern const char kSkipUndecryptablePasswordsName[]; extern const char kSkipUndecryptablePasswordsDescription[]; -@@ -4344,13 +4344,13 @@ extern const char kForcePasswordInitialSyncWhenDecrypt - extern const char kForcePasswordInitialSyncWhenDecryptionFailsDescription[]; +@@ -4556,13 +4556,13 @@ extern const char kRestartToGainAccessToKeychainDescri #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - extern const char kAsyncDnsName[]; - extern const char kAsyncDnsDescription[]; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_CHROMEOS) -+ BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kFollowingFeedSidepanelName[]; extern const char kFollowingFeedSidepanelDescription[]; #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -@@ -4361,7 +4361,7 @@ extern const char kEnableProtoApiForClassifyUrlName[]; - extern const char kEnableProtoApiForClassifyUrlDescription[]; - #endif // BUILDFLAG(ENABLE_SUPERVISED_USERS) + // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) extern const char kEnableNetworkServiceSandboxName[]; extern const char kEnableNetworkServiceSandboxDescription[]; -@@ -4438,7 +4438,7 @@ extern const char kElasticOverscrollDescription[]; +@@ -4658,7 +4658,7 @@ extern const char kElementCaptureDescription[]; #if BUILDFLAG(IS_WIN) || \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || \ -- BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) extern const char kUIDebugToolsName[]; extern const char kUIDebugToolsDescription[]; -@@ -4468,7 +4468,7 @@ extern const char kEnableAudioFocusEnforcementName[]; - extern const char kEnableAudioFocusEnforcementDescription[]; - #endif // BUILDFLAG(IS_CHROMEOS_ASH) +@@ -4701,7 +4701,7 @@ extern const char kComposeNudgeAtCursorName[]; + extern const char kComposeNudgeAtCursorDescription[]; + #endif // BUILDFLAG(ENABLE_COMPOSE) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) extern const char kThirdPartyProfileManagementName[]; extern const char kThirdPartyProfileManagementDescription[]; diff --git a/www/iridium/files/patch-chrome_browser_headless_headless__mode__util.cc b/www/iridium/files/patch-chrome_browser_headless_headless__mode__util.cc index 94ed143d25ac..4f4a6c0dc156 100644 --- a/www/iridium/files/patch-chrome_browser_headless_headless__mode__util.cc +++ b/www/iridium/files/patch-chrome_browser_headless_headless__mode__util.cc @@ -1,20 +1,20 @@ ---- chrome/browser/headless/headless_mode_util.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/browser/headless/headless_mode_util.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/headless/headless_mode_util.cc -@@ -18,7 +18,7 @@ +@@ -19,7 +19,7 @@ #include "chrome/common/chrome_switches.h" #include "content/public/common/content_switches.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/gl/gl_switches.h" // nogncheck #include "ui/ozone/public/ozone_switches.h" // nogncheck #endif // BUILDFLAG(IS_LINUX) -@@ -81,7 +81,7 @@ class HeadlessModeHandleImpl : public HeadlessModeHand +@@ -87,7 +87,7 @@ class HeadlessModeHandleImpl : public HeadlessModeHand command_line->AppendSwitchPath(switches::kUserDataDir, GetUserDataDir()); } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Headless mode on Linux relies on ozone/headless platform. command_line->AppendSwitchASCII(::switches::kOzonePlatform, switches::kHeadless); diff --git a/www/iridium/files/patch-chrome_browser_intranet__redirect__detector.h b/www/iridium/files/patch-chrome_browser_intranet__redirect__detector.h index 7e289ba8d868..6fe08bc60ad0 100644 --- a/www/iridium/files/patch-chrome_browser_intranet__redirect__detector.h +++ b/www/iridium/files/patch-chrome_browser_intranet__redirect__detector.h @@ -1,11 +1,11 @@ ---- chrome/browser/intranet_redirect_detector.h.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/intranet_redirect_detector.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/intranet_redirect_detector.h @@ -25,7 +25,7 @@ class SimpleURLLoader; class PrefRegistrySimple; #if !(BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA)) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD)) +- BUILDFLAG(IS_CHROMEOS)) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD)) #error "IntranetRedirectDetector should only be built on Desktop platforms." #endif diff --git a/www/iridium/files/patch-chrome_browser_media__galleries_media__file__system__registry.cc b/www/iridium/files/patch-chrome_browser_media__galleries_media__file__system__registry.cc index 8736bdfb1d7d..078080a6c8ff 100644 --- a/www/iridium/files/patch-chrome_browser_media__galleries_media__file__system__registry.cc +++ b/www/iridium/files/patch-chrome_browser_media__galleries_media__file__system__registry.cc @@ -1,16 +1,16 @@ ---- chrome/browser/media_galleries/media_file_system_registry.cc.orig 2023-08-28 20:17:35 UTC +--- chrome/browser/media_galleries/media_file_system_registry.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media_galleries/media_file_system_registry.cc -@@ -586,7 +586,12 @@ class MediaFileSystemRegistry::MediaFileSystemContextI +@@ -584,7 +584,12 @@ class MediaFileSystemRegistry::MediaFileSystemContextI // Constructor in 'private' section because depends on private class definition. MediaFileSystemRegistry::MediaFileSystemRegistry() : file_system_context_(new MediaFileSystemContextImpl) { - StorageMonitor::GetInstance()->AddObserver(this); + /* + * This conditional is needed for shutdown. Destructors + * try to get the media file system registry. + */ + if (StorageMonitor::GetInstance()) + StorageMonitor::GetInstance()->AddObserver(this); } MediaFileSystemRegistry::~MediaFileSystemRegistry() { diff --git a/www/iridium/files/patch-chrome_browser_media_audio__service__util.cc b/www/iridium/files/patch-chrome_browser_media_audio__service__util.cc index ebb76a3598ac..a1478513857d 100644 --- a/www/iridium/files/patch-chrome_browser_media_audio__service__util.cc +++ b/www/iridium/files/patch-chrome_browser_media_audio__service__util.cc @@ -1,20 +1,20 @@ ---- chrome/browser/media/audio_service_util.cc.orig 2023-01-17 19:19:00 UTC +--- chrome/browser/media/audio_service_util.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media/audio_service_util.cc @@ -21,7 +21,7 @@ namespace { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS)) const base::Value* GetPolicy(const char* policy_name) { const policy::PolicyMap& policies = @@ -43,7 +43,7 @@ bool GetPolicyOrFeature(const char* policy_name, const bool IsAudioServiceSandboxEnabled() { - // TODO(crbug.com/1052397): Remove !IS_CHROMEOS_LACROS once lacros starts being + // TODO(crbug.com/40118868): Remove !IS_CHROMEOS_LACROS once lacros starts being // built with OS_CHROMEOS instead of OS_LINUX. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_CHROMEOS_LACROS)) return GetPolicyOrFeature(policy::key::kAudioSandboxEnabled, features::kAudioServiceSandbox); diff --git a/www/iridium/files/patch-chrome_browser_media_router_discovery_BUILD.gn b/www/iridium/files/patch-chrome_browser_media_router_discovery_BUILD.gn index 98c3f060eeb2..c27c15d67edd 100644 --- a/www/iridium/files/patch-chrome_browser_media_router_discovery_BUILD.gn +++ b/www/iridium/files/patch-chrome_browser_media_router_discovery_BUILD.gn @@ -1,11 +1,11 @@ ---- chrome/browser/media/router/discovery/BUILD.gn.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/media/router/discovery/BUILD.gn.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media/router/discovery/BUILD.gn -@@ -81,7 +81,7 @@ static_library("discovery") { +@@ -82,7 +82,7 @@ static_library("discovery") { ] configs += [ "//build/config/compiler:wexit_time_destructors" ] - if (is_linux || is_chromeos) { + if ((is_linux || is_chromeos) && !is_bsd) { sources += [ "discovery_network_list_wifi_linux.cc" ] } diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_capture__policy__utils.cc b/www/iridium/files/patch-chrome_browser_media_webrtc_capture__policy__utils.cc deleted file mode 100644 index 914f57b640a0..000000000000 --- a/www/iridium/files/patch-chrome_browser_media_webrtc_capture__policy__utils.cc +++ /dev/null @@ -1,20 +0,0 @@ ---- chrome/browser/media/webrtc/capture_policy_utils.cc.orig 2024-02-04 14:46:08 UTC -+++ chrome/browser/media/webrtc/capture_policy_utils.cc -@@ -140,7 +140,7 @@ void RegisterProfilePrefs(PrefRegistrySimple* registry - } - - bool IsGetAllScreensMediaAllowedForAnySite(content::BrowserContext* context) { --#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - Profile* profile = Profile::FromBrowserContext(context); - if (!profile) { - return false; -@@ -175,7 +175,7 @@ bool IsGetAllScreensMediaAllowedForAnySite(content::Br - - bool IsGetAllScreensMediaAllowed(content::BrowserContext* context, - const GURL& url) { --#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - Profile* profile = Profile::FromBrowserContext(context); - if (!profile) { - return false; diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc b/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc index b4f7f3f2eb8f..8d4ff99d5f2f 100644 --- a/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc +++ b/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.cc @@ -1,47 +1,47 @@ ---- chrome/browser/media/webrtc/chrome_screen_enumerator.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/browser/media/webrtc/chrome_screen_enumerator.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media/webrtc/chrome_screen_enumerator.cc @@ -21,7 +21,7 @@ #if BUILDFLAG(IS_CHROMEOS_ASH) #include "ash/shell.h" #include "ui/aura/window.h" -#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "base/functional/callback.h" #include "content/public/browser/desktop_capture.h" #endif -@@ -32,7 +32,7 @@ base::LazyInstance>::Destru - root_windows_for_testing_ = LAZY_INSTANCE_INITIALIZER; +@@ -32,7 +32,7 @@ base::LazyInstance>::DestructorAtExit g_desktop_capturer_for_testing = LAZY_INSTANCE_INITIALIZER; -@@ -78,7 +78,7 @@ blink::mojom::StreamDevicesSetPtr EnumerateScreens( +@@ -79,7 +79,7 @@ blink::mojom::StreamDevicesSetPtr EnumerateScreens( return stream_devices_set; } -#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) blink::mojom::StreamDevicesSetPtr EnumerateScreens( blink::mojom::MediaStreamType stream_type) { DCHECK_CURRENTLY_ON(content::BrowserThread::UI); -@@ -129,7 +129,7 @@ void ChromeScreenEnumerator::SetRootWindowsForTesting( +@@ -130,7 +130,7 @@ void ChromeScreenEnumerator::SetRootWindowsForTesting( root_windows_for_testing_.Get() = std::move(root_windows); } -#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) void ChromeScreenEnumerator::SetDesktopCapturerForTesting( std::unique_ptr capturer) { g_desktop_capturer_for_testing.Get() = std::move(capturer); -@@ -142,7 +142,7 @@ void ChromeScreenEnumerator::EnumerateScreens( +@@ -143,7 +143,7 @@ void ChromeScreenEnumerator::EnumerateScreens( ScreensCallback screens_callback) const { DCHECK_CURRENTLY_ON(content::BrowserThread::IO); -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) content::GetUIThreadTaskRunner({})->PostTaskAndReplyWithResult( FROM_HERE, base::BindOnce(::EnumerateScreens, stream_type), base::BindOnce( diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.h b/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.h index 5330b06f10bd..d4f8d8b32cc8 100644 --- a/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.h +++ b/www/iridium/files/patch-chrome_browser_media_webrtc_chrome__screen__enumerator.h @@ -1,20 +1,20 @@ ---- chrome/browser/media/webrtc/chrome_screen_enumerator.h.orig 2023-03-13 07:33:08 UTC +--- chrome/browser/media/webrtc/chrome_screen_enumerator.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media/webrtc/chrome_screen_enumerator.h -@@ -21,7 +21,7 @@ namespace aura { +@@ -20,7 +20,7 @@ namespace aura { class Window; } -#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) namespace webrtc { class DesktopCapturer; } @@ -42,7 +42,7 @@ class ChromeScreenEnumerator : public media::ScreenEnu - #if BUILDFLAG(IS_CHROMEOS_ASH) - static void SetRootWindowsForTesting(std::vector root_windows); + static void SetRootWindowsForTesting( + std::vector> root_windows); -#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) static void SetDesktopCapturerForTesting( std::unique_ptr capturer); #endif diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_desktop__media__picker__controller.cc b/www/iridium/files/patch-chrome_browser_media_webrtc_desktop__media__picker__controller.cc new file mode 100644 index 000000000000..0faeb8843ab3 --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_media_webrtc_desktop__media__picker__controller.cc @@ -0,0 +1,11 @@ +--- chrome/browser/media/webrtc/desktop_media_picker_controller.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/media/webrtc/desktop_media_picker_controller.cc +@@ -89,7 +89,7 @@ bool DesktopMediaPickerController::IsSystemAudioCaptur + #if BUILDFLAG(IS_MAC) + return request_source == Params::RequestSource::kCast || + base::FeatureList::IsEnabled(media::kMacLoopbackAudioForScreenShare); +-#elif BUILDFLAG(IS_LINUX) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (request_source == Params::RequestSource::kCast) { + return base::FeatureList::IsEnabled(media::kPulseaudioLoopbackForCast); + } else { diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__event__log__uploader.cc b/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__event__log__uploader.cc deleted file mode 100644 index 547bd04114df..000000000000 --- a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__event__log__uploader.cc +++ /dev/null @@ -1,11 +0,0 @@ ---- chrome/browser/media/webrtc/webrtc_event_log_uploader.cc.orig 2023-07-24 14:27:53 UTC -+++ chrome/browser/media/webrtc/webrtc_event_log_uploader.cc -@@ -42,7 +42,7 @@ const char kProduct[] = "Chrome"; - const char kProduct[] = "Chrome_Mac"; - #elif BUILDFLAG(IS_CHROMEOS_ASH) - const char kProduct[] = "Chrome_ChromeOS"; --#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) -+#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) - const char kProduct[] = "Chrome_Linux"; - #elif BUILDFLAG(IS_ANDROID) - const char kProduct[] = "Chrome_Android"; diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__log__uploader.cc b/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__log__uploader.cc index a20d112ce168..8b414ec1966a 100644 --- a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__log__uploader.cc +++ b/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__log__uploader.cc @@ -1,13 +1,11 @@ ---- chrome/browser/media/webrtc/webrtc_log_uploader.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/media/webrtc/webrtc_log_uploader.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media/webrtc/webrtc_log_uploader.cc -@@ -374,6 +374,10 @@ void WebRtcLogUploader::SetupMultipart( - const char product[] = "Chrome_ChromeOS"; - #elif BUILDFLAG(IS_FUCHSIA) - const char product[] = "Chrome_Fuchsia"; -+#elif defined(OS_OPENBSD) -+ const char product[] = "Chrome_OpenBSD"; -+#elif defined(OS_FREEBSD) -+ const char product[] = "Chrome_FreeBSD"; +@@ -101,7 +101,7 @@ std::string GetLogUploadProduct() { + const char product[] = "Chrome_Mac"; + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch + // of lacros-chrome is complete. +-#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) ++#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) + #if !defined(ADDRESS_SANITIZER) + const char product[] = "Chrome_Linux"; #else - #error Platform not supported. - #endif diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc b/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc index fba01b2bc6fb..0afde625c6d0 100644 --- a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc +++ b/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.cc @@ -1,33 +1,33 @@ ---- chrome/browser/media/webrtc/webrtc_logging_controller.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/media/webrtc/webrtc_logging_controller.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media/webrtc/webrtc_logging_controller.cc @@ -25,10 +25,10 @@ #include "components/webrtc_logging/browser/text_log_list.h" #include "content/public/browser/render_process_host.h" -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "content/public/browser/child_process_security_policy.h" #include "storage/browser/file_system/isolated_context.h" -#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) using webrtc_event_logging::WebRtcEventLogManager; -@@ -284,7 +284,7 @@ void WebRtcLoggingController::StartEventLogging( +@@ -288,7 +288,7 @@ void WebRtcLoggingController::StartEventLogging( web_app_id, callback); } -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void WebRtcLoggingController::GetLogsDirectory( LogsDirectoryCallback callback, LogsDirectoryErrorCallback error_callback) { -@@ -329,7 +329,7 @@ void WebRtcLoggingController::GrantLogsDirectoryAccess +@@ -334,7 +334,7 @@ void WebRtcLoggingController::GrantLogsDirectoryAccess FROM_HERE, base::BindOnce(std::move(callback), file_system.id(), registered_name)); } -#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) void WebRtcLoggingController::OnRtpPacket( - std::unique_ptr packet_header, + base::HeapArray packet_header, diff --git a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h b/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h index 2227982ab37c..c077614dd449 100644 --- a/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h +++ b/www/iridium/files/patch-chrome_browser_media_webrtc_webrtc__logging__controller.h @@ -1,20 +1,20 @@ ---- chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/media/webrtc/webrtc_logging_controller.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/media/webrtc/webrtc_logging_controller.h -@@ -134,7 +134,7 @@ class WebRtcLoggingController +@@ -133,7 +133,7 @@ class WebRtcLoggingController size_t web_app_id, const StartEventLoggingCallback& callback); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Ensures that the WebRTC Logs directory exists and then grants render // process access to the 'WebRTC Logs' directory, and invokes |callback| with // the ids necessary to create a DirectoryEntry object. -@@ -199,7 +199,7 @@ class WebRtcLoggingController +@@ -197,7 +197,7 @@ class WebRtcLoggingController content::BrowserContext* GetBrowserContext() const; -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) // Grants the render process access to the 'WebRTC Logs' directory, and // invokes |callback| with the ids necessary to create a DirectoryEntry // object. If the |logs_path| couldn't be created or found, |error_callback| diff --git a/www/iridium/files/patch-chrome_browser_memory__details.cc b/www/iridium/files/patch-chrome_browser_memory__details.cc index bb463f460631..4653778fce48 100644 --- a/www/iridium/files/patch-chrome_browser_memory__details.cc +++ b/www/iridium/files/patch-chrome_browser_memory__details.cc @@ -1,20 +1,20 @@ ---- chrome/browser/memory_details.cc.orig 2023-10-21 11:51:27 UTC +--- chrome/browser/memory_details.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/memory_details.cc @@ -38,7 +38,7 @@ #include "services/resource_coordinator/public/cpp/memory_instrumentation/memory_instrumentation.h" #include "ui/base/l10n/l10n_util.h" -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) #include "content/public/browser/zygote_host/zygote_host_linux.h" #endif -@@ -335,7 +335,7 @@ void MemoryDetails::CollectChildInfoOnUIThread() { - std::ref(process))); +@@ -334,7 +334,7 @@ void MemoryDetails::CollectChildInfoOnUIThread() { + }); } -#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) && !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_BSD) if (content::ZygoteHost::GetInstance()->IsZygotePid(process.pid)) { process.process_type = content::PROCESS_TYPE_ZYGOTE; } diff --git a/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc b/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc index a1f60bd1b3d3..be8cad3d5b50 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc +++ b/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.cc @@ -1,55 +1,55 @@ ---- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.cc -@@ -78,8 +78,10 @@ +@@ -81,8 +81,10 @@ - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if defined(__GLIBC__) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) +#if defined(__GLIBC__) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD)) +#if !BUILDFLAG(IS_BSD) #include +#endif #include "base/linux_util.h" #include "base/strings/string_split.h" -@@ -108,7 +110,7 @@ +@@ -106,7 +108,7 @@ #include "chromeos/crosapi/cpp/crosapi_constants.h" #endif // BUILDFLAG(IS_CHROMEOS_LACROS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/metrics/pressure/pressure_metrics_reporter.h" #endif // BUILDFLAG(IS_LINUX) -@@ -117,7 +119,7 @@ +@@ -115,7 +117,7 @@ #include "components/user_manager/user_manager.h" #endif // BUILDFLAG(IS_CHROMEOS_ASH) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "components/power_metrics/system_power_monitor.h" #endif -@@ -917,7 +919,7 @@ void RecordStartupMetrics() { +@@ -862,7 +864,7 @@ void RecordStartupMetrics() { // Record whether Chrome is the default browser or not. // Disabled on Linux due to hanging browser tests, see crbug.com/1216328. -#if !BUILDFLAG(IS_LINUX) +#if !BUILDFLAG(IS_LINUX) && !BUILDFLAG(IS_BSD) shell_integration::DefaultWebClientState default_state = shell_integration::GetDefaultBrowser(); base::UmaHistogramEnumeration("DefaultBrowser.State", default_state, -@@ -1239,11 +1241,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt +@@ -1154,11 +1156,11 @@ void ChromeBrowserMainExtraPartsMetrics::PostBrowserSt } #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) pressure_metrics_reporter_ = std::make_unique(); #endif // BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) base::trace_event::TraceLog::GetInstance()->AddEnabledStateObserver( power_metrics::SystemPowerMonitor::GetInstance()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) diff --git a/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.h b/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.h index 2f8947b9c10f..b7e50d0a9176 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.h +++ b/www/iridium/files/patch-chrome_browser_metrics_chrome__browser__main__extra__parts__metrics.h @@ -1,20 +1,20 @@ ---- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h.orig 2023-09-14 08:08:21 UTC +--- chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/metrics/chrome_browser_main_extra_parts_metrics.h -@@ -33,7 +33,7 @@ class PowerMetricsReporter; +@@ -28,7 +28,7 @@ class PowerMetricsReporter; class ProcessMonitor; #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class PressureMetricsReporter; #endif // BUILDFLAG(IS_LINUX) -@@ -139,7 +139,7 @@ class ChromeBrowserMainExtraPartsMetrics : public Chro +@@ -115,7 +115,7 @@ class ChromeBrowserMainExtraPartsMetrics : public Chro std::unique_ptr battery_discharge_reporter_; #endif // !BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Reports pressure metrics. std::unique_ptr pressure_metrics_reporter_; #endif // BUILDFLAG(IS_LINUX) diff --git a/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc b/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc index 437e543b1aed..c690427963dd 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc +++ b/www/iridium/files/patch-chrome_browser_metrics_chrome__metrics__service__client.cc @@ -1,56 +1,83 @@ ---- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/metrics/chrome_metrics_service_client.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/metrics/chrome_metrics_service_client.cc -@@ -184,7 +184,7 @@ +@@ -195,7 +195,7 @@ #include "chrome/notification_helper/notification_helper_constants.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "components/metrics/motherboard_metrics_provider.h" #endif -@@ -210,7 +210,7 @@ +@@ -212,7 +212,7 @@ + #include "chrome/browser/metrics/power/power_metrics_provider_mac.h" + #endif + +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "chrome/browser/metrics/bluetooth_metrics_provider.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) - #include "chrome/browser/metrics/family_link_user_metrics_provider.h" - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) || - // BUILDFLAG(IS_CHROMEOS_LACROS))||BUILDFLAG(IS_ANDROID)) -@@ -810,7 +810,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic +@@ -534,7 +534,7 @@ void ChromeMetricsServiceClient::RegisterPrefs(PrefReg + #endif // BUILDFLAG(IS_CHROMEOS_ASH) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ +- BUILDFLAG(IS_MAC) ++ BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + metrics::structured::StructuredMetricsService::RegisterPrefs(registry); + + #if !BUILDFLAG(IS_CHROMEOS_ASH) +@@ -706,7 +706,7 @@ void ChromeMetricsServiceClient::Initialize() { + RegisterUKMProviders(); + } + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + metrics::structured::Recorder::GetInstance()->SetUiTaskRunner( + base::SequencedTaskRunner::GetCurrentDefault()); + #endif +@@ -757,7 +757,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic metrics_service_->RegisterMetricsProvider( std::make_unique()); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( std::make_unique()); #endif -@@ -894,7 +894,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic - - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch +@@ -842,7 +842,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) ++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( std::make_unique()); -@@ -1013,7 +1013,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) || +@@ -944,7 +944,7 @@ void ChromeMetricsServiceClient::RegisterMetricsServic std::make_unique()); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) metrics_service_->RegisterMetricsProvider( metrics::CreateDesktopSessionMetricsProvider()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || (BUILDFLAG(IS_LINUX) -@@ -1212,7 +1212,7 @@ bool ChromeMetricsServiceClient::RegisterForProfileEve - #endif - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch +@@ -1131,7 +1131,7 @@ bool ChromeMetricsServiceClient::RegisterForProfileEve + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ - (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +- (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) ++ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) || BUILDFLAG(IS_BSD) // This creates the DesktopProfileSessionDurationsServices if it didn't exist // already. + metrics::DesktopProfileSessionDurationsServiceFactory::GetForBrowserContext( +@@ -1465,7 +1465,7 @@ void ChromeMetricsServiceClient::CreateStructuredMetri + recorder = + std::make_unique( + cros_system_profile_provider_.get()); +-#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) ++#elif BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) + + // Make sure that Structured Metrics recording delegates have been created + // before the service is created. This is handled in other places for ChromeOS diff --git a/www/iridium/files/patch-chrome_browser_metrics_perf_cpu__identity.cc b/www/iridium/files/patch-chrome_browser_metrics_perf_cpu__identity.cc index d4ba6c25ae1c..d6085d75e335 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_perf_cpu__identity.cc +++ b/www/iridium/files/patch-chrome_browser_metrics_perf_cpu__identity.cc @@ -1,11 +1,11 @@ ---- chrome/browser/metrics/perf/cpu_identity.cc.orig 2023-03-13 07:33:08 UTC +--- chrome/browser/metrics/perf/cpu_identity.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/metrics/perf/cpu_identity.cc -@@ -141,7 +141,7 @@ CPUIdentity GetCPUIdentity() { +@@ -142,7 +142,7 @@ CPUIdentity GetCPUIdentity() { result.release = #if BUILDFLAG(IS_CHROMEOS_ASH) base::SysInfo::KernelVersion(); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) base::SysInfo::OperatingSystemVersion(); #else #error "Unsupported configuration" diff --git a/www/iridium/files/patch-chrome_browser_metrics_power_process__metrics__recorder__util.cc b/www/iridium/files/patch-chrome_browser_metrics_power_process__metrics__recorder__util.cc index a2b475fb749f..b053d2dad451 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_power_process__metrics__recorder__util.cc +++ b/www/iridium/files/patch-chrome_browser_metrics_power_process__metrics__recorder__util.cc @@ -1,11 +1,11 @@ ---- chrome/browser/metrics/power/process_metrics_recorder_util.cc.orig 2022-10-05 07:34:01 UTC +--- chrome/browser/metrics/power/process_metrics_recorder_util.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/metrics/power/process_metrics_recorder_util.cc -@@ -59,7 +59,7 @@ void RecordProcessHistograms(const char* histogram_suf +@@ -65,7 +65,7 @@ void RecordProcessHistograms(const char* histogram_suf const ProcessMonitor::Metrics& metrics) { RecordAverageCPUUsage(histogram_suffix, metrics.cpu_usage); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) base::UmaHistogramCounts10000( base::StrCat({"PerformanceMonitor.IdleWakeups2.", histogram_suffix}), metrics.idle_wakeups); diff --git a/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.cc b/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.cc index cbf7c750bf35..371d74da61ae 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.cc +++ b/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.cc @@ -1,29 +1,29 @@ ---- chrome/browser/metrics/power/process_monitor.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/metrics/power/process_monitor.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/metrics/power/process_monitor.cc -@@ -65,7 +65,7 @@ ProcessMonitor::Metrics SampleMetrics(base::ProcessMet - #endif +@@ -64,7 +64,7 @@ ProcessMonitor::Metrics SampleMetrics(base::ProcessMet + process_metrics.GetPlatformIndependentCPUUsage()); #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) metrics.idle_wakeups = process_metrics.GetIdleWakeupsPerSecond(); #endif #if BUILDFLAG(IS_MAC) -@@ -81,7 +81,7 @@ void ScaleMetrics(ProcessMonitor::Metrics* metrics, do - metrics->cpu_usage *= factor; +@@ -82,7 +82,7 @@ void ScaleMetrics(ProcessMonitor::Metrics* metrics, do + } #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) metrics->idle_wakeups *= factor; #endif -@@ -172,7 +172,7 @@ ProcessMonitor::Metrics& operator+=(ProcessMonitor::Me - lhs.cpu_usage += rhs.cpu_usage; +@@ -157,7 +157,7 @@ ProcessMonitor::Metrics& operator+=(ProcessMonitor::Me + } #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) lhs.idle_wakeups += rhs.idle_wakeups; #endif diff --git a/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.h b/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.h index b3b19d7ff967..8ca778a3412d 100644 --- a/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.h +++ b/www/iridium/files/patch-chrome_browser_metrics_power_process__monitor.h @@ -1,11 +1,11 @@ ---- chrome/browser/metrics/power/process_monitor.h.orig 2022-12-06 08:09:13 UTC +--- chrome/browser/metrics/power/process_monitor.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/metrics/power/process_monitor.h -@@ -75,7 +75,7 @@ class ProcessMonitor : public content::BrowserChildPro - double cpu_usage = 0.0; +@@ -76,7 +76,7 @@ class ProcessMonitor : public content::BrowserChildPro + std::optional cpu_usage; #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ - BUILDFLAG(IS_AIX) + BUILDFLAG(IS_AIX) || BUILDFLAG(IS_BSD) // Returns the number of average idle cpu wakeups per second since the last // time the metric was sampled. int idle_wakeups = 0; diff --git a/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc b/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc index 0d3cfab039fd..0e5825e11f36 100644 --- a/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc +++ b/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.cc @@ -1,174 +1,174 @@ ---- chrome/browser/net/system_network_context_manager.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/net/system_network_context_manager.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/net/system_network_context_manager.cc -@@ -92,7 +92,7 @@ +@@ -97,7 +97,7 @@ - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) #include "chrome/common/chrome_paths_internal.h" #include "chrome/grit/branded_strings.h" #include "ui/base/l10n/l10n_util.h" -@@ -136,7 +136,7 @@ SystemNetworkContextManager* g_system_network_context_ +@@ -141,7 +141,7 @@ SystemNetworkContextManager* g_system_network_context_ // received a failed launch for a sandboxed network service. bool g_previously_failed_to_launch_sandboxed_service = false; -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Whether kerberos library loading will work in the network service due to the // sandbox. bool g_network_service_will_allow_gssapi_library_load = false; -@@ -144,7 +144,7 @@ bool g_network_service_will_allow_gssapi_library_load +@@ -149,7 +149,7 @@ bool g_network_service_will_allow_gssapi_library_load const char* kGssapiDesiredPref = #if BUILDFLAG(IS_CHROMEOS) prefs::kKerberosEnabled; -#elif BUILDFLAG(IS_LINUX) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) prefs::kReceivedHttpAuthNegotiateHeader; #endif #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -@@ -190,7 +190,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut +@@ -195,7 +195,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut auth_dynamic_params->basic_over_http_enabled = local_state->GetBoolean(prefs::kBasicAuthOverHttpEnabled); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) auth_dynamic_params->delegate_by_kdc_policy = local_state->GetBoolean(prefs::kAuthNegotiateDelegateByKdcPolicy); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) -@@ -205,7 +205,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut +@@ -210,7 +210,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut local_state->GetString(prefs::kAuthAndroidNegotiateAccountType); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auth_dynamic_params->allow_gssapi_library_load = local_state->GetBoolean(kGssapiDesiredPref); #endif // BUILDFLAG(IS_CHROMEOS) -@@ -215,7 +215,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut +@@ -220,7 +220,7 @@ network::mojom::HttpAuthDynamicParamsPtr CreateHttpAut void OnNewHttpAuthDynamicParams( network::mojom::HttpAuthDynamicParamsPtr& params) { -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The kerberos library is incompatible with the network service sandbox, so // if library loading is now enabled, the network service needs to be // restarted. It will be restarted unsandboxed because is -@@ -257,11 +257,11 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() +@@ -262,11 +262,11 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() if (g_previously_failed_to_launch_sandboxed_service) { return NetworkSandboxState::kDisabledBecauseOfFailedLaunch; } -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) auto* local_state = g_browser_process->local_state(); #endif -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // The network service sandbox and the kerberos library are incompatible. // If kerberos is enabled by policy, disable the network service sandbox. if (g_network_service_will_allow_gssapi_library_load || -@@ -277,7 +277,7 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() +@@ -282,7 +282,7 @@ NetworkSandboxState IsNetworkSandboxEnabledInternal() } #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (local_state && local_state->HasPrefPath(prefs::kNetworkServiceSandboxEnabled)) { return local_state->GetBoolean(prefs::kNetworkServiceSandboxEnabled) -@@ -472,7 +472,7 @@ void SystemNetworkContextManager::DeleteInstance() { +@@ -512,7 +512,7 @@ void SystemNetworkContextManager::DeleteInstance() { g_system_network_context_manager = nullptr; } -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) SystemNetworkContextManager::GssapiLibraryLoadObserver:: GssapiLibraryLoadObserver(SystemNetworkContextManager* owner) : owner_(owner) {} -@@ -530,7 +530,7 @@ SystemNetworkContextManager::SystemNetworkContextManag +@@ -570,7 +570,7 @@ SystemNetworkContextManager::SystemNetworkContextManag pref_change_registrar_.Add(prefs::kAllHttpAuthSchemesAllowedForOrigins, auth_pref_callback); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) pref_change_registrar_.Add(prefs::kAuthNegotiateDelegateByKdcPolicy, auth_pref_callback); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) -@@ -544,7 +544,7 @@ SystemNetworkContextManager::SystemNetworkContextManag +@@ -584,7 +584,7 @@ SystemNetworkContextManager::SystemNetworkContextManag auth_pref_callback); #endif // BUILDFLAG(IS_ANDROID) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) pref_change_registrar_.Add(kGssapiDesiredPref, auth_pref_callback); #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) -@@ -577,7 +577,7 @@ SystemNetworkContextManager::SystemNetworkContextManag - #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) +@@ -610,7 +610,7 @@ SystemNetworkContextManager::SystemNetworkContextManag + #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) pref_change_registrar_.Add( prefs::kEnforceLocalAnchorConstraintsEnabled, base::BindRepeating(&SystemNetworkContextManager:: -@@ -632,7 +632,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe +@@ -665,7 +665,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe registry->RegisterBooleanPref(prefs::kKerberosEnabled, false); #endif // BUILDFLAG(IS_CHROMEOS_LACROS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kAuthNegotiateDelegateByKdcPolicy, false); #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) -@@ -661,7 +661,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe - registry->RegisterBooleanPref(prefs::kChromeRootStoreEnabled, false); - #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) +@@ -689,7 +689,7 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe + registry->RegisterIntegerPref(prefs::kMaxConnectionsPerProxy, -1); + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Note that the default value is not relevant because the pref is only // evaluated when it is managed. registry->RegisterBooleanPref(prefs::kEnforceLocalAnchorConstraintsEnabled, -@@ -670,11 +670,11 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe +@@ -698,11 +698,11 @@ void SystemNetworkContextManager::RegisterPrefs(PrefRe registry->RegisterListPref(prefs::kExplicitlyAllowedNetworkPorts); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kNetworkServiceSandboxEnabled, true); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kReceivedHttpAuthNegotiateHeader, false); #endif // BUILDFLAG(IS_LINUX) -@@ -727,7 +727,7 @@ void SystemNetworkContextManager::OnNetworkServiceCrea +@@ -755,7 +755,7 @@ void SystemNetworkContextManager::OnNetworkServiceCrea OnNewHttpAuthDynamicParams(http_auth_dynamic_params); network_service->ConfigureHttpAuthPrefs(std::move(http_auth_dynamic_params)); -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) gssapi_library_loader_observer_.Install(network_service); #endif // BUILDFLAG(IS_LINUX) -@@ -938,7 +938,7 @@ bool SystemNetworkContextManager::IsNetworkSandboxEnab +@@ -972,7 +972,7 @@ bool SystemNetworkContextManager::IsNetworkSandboxEnab break; } -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) if (!enabled) { g_network_service_will_allow_gssapi_library_load = true; } -@@ -1052,7 +1052,7 @@ void SystemNetworkContextManager::UpdateChromeRootStor - #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) +@@ -1059,7 +1059,7 @@ void SystemNetworkContextManager::UpdateExplicitlyAllo + } #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) void SystemNetworkContextManager::UpdateEnforceLocalAnchorConstraintsEnabled() { const PrefService::Preference* enforce_local_anchor_constraints_enabled_pref = local_state_->FindPreference( diff --git a/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.h b/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.h index b066bb707cb4..b8f5abfa4f18 100644 --- a/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.h +++ b/www/iridium/files/patch-chrome_browser_net_system__network__context__manager.h @@ -1,29 +1,29 @@ ---- chrome/browser/net/system_network_context_manager.h.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/net/system_network_context_manager.h.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/net/system_network_context_manager.h -@@ -185,7 +185,7 @@ class SystemNetworkContextManager { +@@ -197,7 +197,7 @@ class SystemNetworkContextManager { class URLLoaderFactoryForSystem; class NetworkProcessLaunchWatcher; -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) class GssapiLibraryLoadObserver : public network::mojom::GssapiLibraryLoadObserver { public: -@@ -229,7 +229,7 @@ class SystemNetworkContextManager { - #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) +@@ -233,7 +233,7 @@ class SystemNetworkContextManager { + void UpdateExplicitlyAllowedNetworkPorts(); #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) // Applies the current value of the kEnforceLocalAnchorConstraintsEnabled // pref to the enforcement state. void UpdateEnforceLocalAnchorConstraintsEnabled(); -@@ -277,7 +277,7 @@ class SystemNetworkContextManager { - - static absl::optional certificate_transparency_enabled_for_testing_; +@@ -285,7 +285,7 @@ class SystemNetworkContextManager { + std::unique_ptr network_annotation_monitor_; + #endif // BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) GssapiLibraryLoadObserver gssapi_library_loader_observer_{this}; #endif // BUILDFLAG(IS_LINUX) - }; + diff --git a/www/iridium/files/patch-chrome_browser_new__tab__page_modules_drive_drive__service.cc b/www/iridium/files/patch-chrome_browser_new__tab__page_modules_file__suggestion_drive__service.cc similarity index 60% rename from www/iridium/files/patch-chrome_browser_new__tab__page_modules_drive_drive__service.cc rename to www/iridium/files/patch-chrome_browser_new__tab__page_modules_file__suggestion_drive__service.cc index 16b8cff8559e..055e1d1d5528 100644 --- a/www/iridium/files/patch-chrome_browser_new__tab__page_modules_drive_drive__service.cc +++ b/www/iridium/files/patch-chrome_browser_new__tab__page_modules_file__suggestion_drive__service.cc @@ -1,11 +1,11 @@ ---- chrome/browser/new_tab_page/modules/drive/drive_service.cc.orig 2023-10-21 11:51:27 UTC -+++ chrome/browser/new_tab_page/modules/drive/drive_service.cc +--- chrome/browser/new_tab_page/modules/file_suggestion/drive_service.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/new_tab_page/modules/file_suggestion/drive_service.cc @@ -32,7 +32,7 @@ #include "services/network/public/cpp/resource_request.h" namespace { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) constexpr char kPlatform[] = "LINUX"; #elif BUILDFLAG(IS_WIN) constexpr char kPlatform[] = "WINDOWS"; diff --git a/www/iridium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc b/www/iridium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc index 2ba9f63bdfb3..68e686687f69 100644 --- a/www/iridium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc +++ b/www/iridium/files/patch-chrome_browser_new__tab__page_new__tab__page__util.cc @@ -1,20 +1,11 @@ ---- chrome/browser/new_tab_page/new_tab_page_util.cc.orig 2022-12-01 10:35:46 UTC +--- chrome/browser/new_tab_page/new_tab_page_util.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/new_tab_page/new_tab_page_util.cc -@@ -11,7 +11,7 @@ - - namespace { - bool IsOsSupportedForRecipe() { --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - return true; - #else - return false; -@@ -27,7 +27,7 @@ bool IsOsSupportedForCart() { +@@ -20,7 +20,7 @@ bool IsOsSupportedForCart() { } bool IsOsSupportedForDrive() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) return true; #else return false; diff --git a/www/iridium/files/patch-chrome_browser_notifications_notification__display__service__impl.cc b/www/iridium/files/patch-chrome_browser_notifications_notification__display__service__impl.cc index db2fa7fcfd2d..7e8b14545a9c 100644 --- a/www/iridium/files/patch-chrome_browser_notifications_notification__display__service__impl.cc +++ b/www/iridium/files/patch-chrome_browser_notifications_notification__display__service__impl.cc @@ -1,38 +1,38 @@ ---- chrome/browser/notifications/notification_display_service_impl.cc.orig 2022-10-05 07:34:01 UTC +--- chrome/browser/notifications/notification_display_service_impl.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/notifications/notification_display_service_impl.cc @@ -32,7 +32,7 @@ #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ -- BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) -+ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_WIN) ++ BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) #include "chrome/browser/send_tab_to_self/desktop_notification_handler.h" #include "chrome/browser/sharing/sharing_notification_handler.h" #endif @@ -65,7 +65,7 @@ NotificationDisplayServiceImpl* NotificationDisplaySer // static void NotificationDisplayServiceImpl::RegisterProfilePrefs( user_prefs::PrefRegistrySyncable* registry) { -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) registry->RegisterBooleanPref(prefs::kAllowSystemNotifications, true); #endif } @@ -81,7 +81,7 @@ NotificationDisplayServiceImpl::NotificationDisplaySer std::make_unique()); #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) AddNotificationHandler( NotificationHandler::Type::SEND_TAB_TO_SELF, std::make_unique( @@ -89,7 +89,7 @@ NotificationDisplayServiceImpl::NotificationDisplaySer #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_MAC) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) AddNotificationHandler( NotificationHandler::Type::TAILORED_SECURITY, std::make_unique()); diff --git a/www/iridium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc b/www/iridium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc new file mode 100644 index 000000000000..151a0a0f6aee --- /dev/null +++ b/www/iridium/files/patch-chrome_browser_password__manager_chrome__password__manager__client.cc @@ -0,0 +1,20 @@ +--- chrome/browser/password_manager/chrome_password_manager_client.cc.orig 2024-06-25 12:08:48 UTC ++++ chrome/browser/password_manager/chrome_password_manager_client.cc +@@ -488,7 +488,7 @@ bool ChromePasswordManagerClient::ShowKeyboardReplacin + + bool ChromePasswordManagerClient::CanUseBiometricAuthForFilling( + device_reauth::DeviceAuthenticator* authenticator) { +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + if (!GetLocalStatePrefs() || !GetPrefs() || !authenticator) { + return false; + } +@@ -712,7 +712,7 @@ void ChromePasswordManagerClient::NotifyUserCredential + } + + void ChromePasswordManagerClient::NotifyKeychainError() { +-#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) + PasswordsClientUIDelegate* manage_passwords_ui_controller = + PasswordsClientUIDelegateFromWebContents(web_contents()); + manage_passwords_ui_controller->OnKeychainError(); diff --git a/www/iridium/files/patch-chrome_browser_password__manager_password__reuse__manager__factory.cc b/www/iridium/files/patch-chrome_browser_password__manager_password__reuse__manager__factory.cc index 6404c759b1e9..ca39be5ec5bc 100644 --- a/www/iridium/files/patch-chrome_browser_password__manager_password__reuse__manager__factory.cc +++ b/www/iridium/files/patch-chrome_browser_password__manager_password__reuse__manager__factory.cc @@ -1,11 +1,11 @@ ---- chrome/browser/password_manager/password_reuse_manager_factory.cc.orig 2023-10-21 11:51:27 UTC +--- chrome/browser/password_manager/password_reuse_manager_factory.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/password_manager/password_reuse_manager_factory.cc -@@ -115,7 +115,7 @@ PasswordReuseManagerFactory::BuildServiceInstanceForBr - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch +@@ -137,7 +137,7 @@ PasswordReuseManagerFactory::BuildServiceInstanceForBr + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_LACROS) + BUILDFLAG(IS_CHROMEOS_LACROS) || BUILDFLAG(IS_BSD) std::unique_ptr notifier = std::make_unique( IdentityManagerFactory::GetForProfile(profile)); diff --git a/www/iridium/files/patch-chrome_browser_platform__util__linux.cc b/www/iridium/files/patch-chrome_browser_platform__util__linux.cc index a70da98a434d..7342e609e27a 100644 --- a/www/iridium/files/patch-chrome_browser_platform__util__linux.cc +++ b/www/iridium/files/patch-chrome_browser_platform__util__linux.cc @@ -1,12 +1,12 @@ ---- chrome/browser/platform_util_linux.cc.orig 2023-10-21 11:51:27 UTC +--- chrome/browser/platform_util_linux.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/platform_util_linux.cc -@@ -299,7 +299,9 @@ void RunCommand(const std::string& command, - - base::LaunchOptions options; +@@ -300,7 +300,9 @@ void OnLaunchOptionsCreated(const std::string& command + argv.push_back(command); + argv.push_back(arg); options.current_directory = working_directory; +#if !BUILDFLAG(IS_BSD) options.allow_new_privs = true; +#endif // xdg-open can fall back on mailcap which eventually might plumb through // to a command that needs a terminal. Set the environment variable telling // it that we definitely don't have a terminal available and that it should diff --git a/www/iridium/files/patch-chrome_browser_policy_chrome__browser__cloud__management__controller__desktop.cc b/www/iridium/files/patch-chrome_browser_policy_chrome__browser__cloud__management__controller__desktop.cc index 8013c13605d5..9675e9f13446 100644 --- a/www/iridium/files/patch-chrome_browser_policy_chrome__browser__cloud__management__controller__desktop.cc +++ b/www/iridium/files/patch-chrome_browser_policy_chrome__browser__cloud__management__controller__desktop.cc @@ -1,38 +1,38 @@ ---- chrome/browser/policy/chrome_browser_cloud_management_controller_desktop.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/policy/chrome_browser_cloud_management_controller_desktop.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/policy/chrome_browser_cloud_management_controller_desktop.cc -@@ -49,7 +49,7 @@ +@@ -50,7 +50,7 @@ #include "chrome/browser/policy/browser_dm_token_storage_mac.h" #endif // BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) #include "chrome/browser/policy/browser_dm_token_storage_linux.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) -@@ -58,7 +58,7 @@ +@@ -59,7 +59,7 @@ #include "chrome/install_static/install_util.h" #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/connectors/device_trust/key_management/browser/device_trust_key_manager_impl.h" #include "chrome/browser/enterprise/connectors/device_trust/key_management/browser/key_rotation_launcher.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) -@@ -90,7 +90,7 @@ void ChromeBrowserCloudManagementControllerDesktop:: +@@ -87,7 +87,7 @@ void ChromeBrowserCloudManagementControllerDesktop:: #if BUILDFLAG(IS_MAC) storage_delegate = std::make_unique(); -#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) +#elif BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) storage_delegate = std::make_unique(); #elif BUILDFLAG(IS_WIN) storage_delegate = std::make_unique(); -@@ -245,7 +245,7 @@ ChromeBrowserCloudManagementControllerDesktop::CreateC +@@ -255,7 +255,7 @@ ChromeBrowserCloudManagementControllerDesktop::CreateC std::unique_ptr ChromeBrowserCloudManagementControllerDesktop::CreateDeviceTrustKeyManager() { -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) auto* browser_dm_token_storage = BrowserDMTokenStorage::Get(); auto* device_management_service = GetDeviceManagementService(); auto shared_url_loader_factory = GetSharedURLLoaderFactory(); diff --git a/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc b/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc index 23389e1214cd..4123f17cb544 100644 --- a/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc +++ b/www/iridium/files/patch-chrome_browser_policy_configuration__policy__handler__list__factory.cc @@ -1,221 +1,254 @@ ---- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/policy/configuration_policy_handler_list_factory.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/policy/configuration_policy_handler_list_factory.cc -@@ -218,19 +218,20 @@ +@@ -234,19 +234,19 @@ #include "components/spellcheck/browser/pref_names.h" #endif // BUILDFLAG(ENABLE_SPELLCHECK) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/idle/action.h" #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897 #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "components/enterprise/idle/idle_timeout_policy_handler.h" #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_ANDROID) -+ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_ANDROID) || \ -+ BUILDFLAG(IS_BSD) +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/privacy_sandbox/privacy_sandbox_policy_handler.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || - // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || -@@ -827,7 +828,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +@@ -260,13 +260,13 @@ + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + #include "chrome/browser/policy/battery_saver_policy_handler.h" + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS_ASH) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) + #include "components/search_engines/site_search_policy_handler.h" + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS) +@@ -871,7 +871,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kManagedDefaultGeolocationSetting, base::Value::Type::INTEGER }, #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) \ -- || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_MAC) -+ || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) +- || BUILDFLAG(IS_MAC) ++ || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) { key::kRequireOnlineRevocationChecksForLocalAnchors, prefs::kCertRevocationCheckingRequiredLocalAnchors, base::Value::Type::BOOLEAN }, -@@ -837,7 +838,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -880,7 +880,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + base::Value::Type::BOOLEAN }, #endif // #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) - // || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_MAC) - #if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) \ -- || BUILDFLAG(IS_FUCHSIA) -+ || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) + // || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) { key::kFullscreenAllowed, prefs::kFullscreenAllowed, base::Value::Type::BOOLEAN }, -@@ -1569,7 +1570,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = - base::Value::Type::LIST }, +@@ -1664,7 +1664,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_CHROMEOS_ASH) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kGSSAPILibraryName, prefs::kGSSAPILibraryName, base::Value::Type::STRING }, -@@ -1614,7 +1615,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1715,7 +1715,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kNetworkServiceSandboxEnabled, prefs::kNetworkServiceSandboxEnabled, base::Value::Type::BOOLEAN }, -@@ -1640,12 +1641,12 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1741,12 +1741,12 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = prefs::kTotalMemoryLimitMb, base::Value::Type::INTEGER }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kBackgroundModeEnabled, prefs::kBackgroundModeEnabled, base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kUnmanagedDeviceSignalsConsentFlowEnabled, device_signals::prefs::kUnmanagedDeviceSignalsConsentFlowEnabled, base::Value::Type::BOOLEAN }, -@@ -1654,7 +1655,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1754,7 +1754,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + prefs::kProfileSeparationDomainExceptionList, base::Value::Type::LIST }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) \ -- || BUILDFLAG(IS_FUCHSIA) -+ || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +-#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kDefaultBrowserSettingEnabled, prefs::kDefaultBrowserSettingEnabled, base::Value::Type::BOOLEAN }, -@@ -1667,7 +1668,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1766,7 +1766,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - // || BUILDFLAG(IS_FUCHSIA) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) \ -- || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) -+ || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_BSD) +- || BUILDFLAG(IS_CHROMEOS) ++ || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { key::kAutoplayAllowed, prefs::kAutoplayAllowed, base::Value::Type::BOOLEAN }, -@@ -1768,7 +1769,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1867,7 +1867,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::BOOLEAN }, #endif // !BUILDFLAG(IS_ANDROID) && !BUILDFLAG(IS_CHROMEOS) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) { key::kAlternativeBrowserPath, browser_switcher::prefs::kAlternativeBrowserPath, base::Value::Type::STRING }, -@@ -1870,7 +1871,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = - base::Value::Type::BOOLEAN }, - #endif // BUILDFLAG(IS_CHROMEOS) - --#if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - // TODO(crbug.com/1454054): replace the - // kGetDisplayMediaSetSelectAllScreensAllowedForUrls policy by a policy that - // matches the name of the new `getAllScreensMedia` API. -@@ -1879,7 +1880,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -1972,7 +1972,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = base::Value::Type::LIST }, - #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) + #endif // BUILDFLAG(IS_CHROMEOS_ASH) -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) { key::kAuthNegotiateDelegateByKdcPolicy, prefs::kAuthNegotiateDelegateByKdcPolicy, base::Value::Type::BOOLEAN }, -@@ -1910,7 +1911,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = - #endif // BUILDFLAG(CHROME_ROOT_STORE_POLICY_SUPPORTED) +@@ -1997,7 +1997,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + #endif // BUILDFLAG(ENABLE_EXTENSIONS) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) { key::kEnforceLocalAnchorConstraintsEnabled, prefs::kEnforceLocalAnchorConstraintsEnabled, base::Value::Type::BOOLEAN }, -@@ -1986,7 +1987,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = +@@ -2055,7 +2055,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = ash::prefs::kUrlParameterToAutofillSAMLUsername, base::Value::Type::STRING }, #endif // BUILDFLAG(IS_CHROMEOS_ASH) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) - { key::kBatterySaverModeAvailability, - performance_manager::user_tuning::prefs::kBatterySaverModeState, - base::Value::Type::INTEGER }, -@@ -2017,7 +2018,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = - prefs::kCloudApAuthEnabled, - base::Value::Type::INTEGER }, + { key::kTabDiscardingExceptions, + performance_manager::user_tuning::prefs::kManagedTabDiscardingExceptions, + base::Value::Type::LIST }, +@@ -2084,7 +2084,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + prefs::kUiAutomationProviderEnabled, + base::Value::Type::BOOLEAN }, #endif // BUILDFLAG(IS_WIN) -#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kOutOfProcessSystemDnsResolutionEnabled, prefs::kOutOfProcessSystemDnsResolutionEnabled, base::Value::Type::BOOLEAN }, -@@ -2057,7 +2058,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = - prefs::kManagedPrivateNetworkAccessRestrictionsEnabled, - base::Value::Type::BOOLEAN }, +@@ -2118,7 +2118,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + base::Value::Type::INTEGER }, + #endif #if BUILDFLAG(ENABLE_EXTENSIONS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) { key::kExtensionInstallTypeBlocklist, extensions::pref_names::kExtensionInstallTypeBlocklist, base::Value::Type::LIST}, -@@ -2154,7 +2155,7 @@ std::unique_ptr BuildH +@@ -2139,7 +2139,7 @@ const PolicyToPreferenceMapEntry kSimplePolicyMap[] = + optimization_guide::model_execution::prefs::kWallpaperSearchEnterprisePolicyAllowed, + base::Value::Type::INTEGER}, + #endif +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + { key::kChromeForTestingAllowed, + prefs::kChromeForTestingAllowed, + base::Value::Type::BOOLEAN }, +@@ -2267,7 +2267,7 @@ std::unique_ptr BuildH // Policies for all platforms - End #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + handlers->AddHandler(std::make_unique( + key::kMemorySaverModeSavings, + performance_manager::user_tuning::prefs::kMemorySaverModeAggressiveness, +@@ -2283,7 +2283,7 @@ std::unique_ptr BuildH + // BUILDFLAG(IS_CHROMEOS_ASH) + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_BSD) handlers->AddHandler( - std::make_unique()); - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || -@@ -2350,7 +2351,7 @@ std::unique_ptr BuildH + std::make_unique(chrome_schema)); + +@@ -2489,7 +2489,7 @@ std::unique_ptr BuildH #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) handlers->AddHandler( std::make_unique()); handlers->AddHandler( -@@ -2408,7 +2409,7 @@ std::unique_ptr BuildH +@@ -2547,7 +2547,7 @@ std::unique_ptr BuildH key::kBrowsingDataLifetime, browsing_data::prefs::kBrowsingDataLifetime, chrome_schema)); -#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique()); handlers->AddHandler(std::make_unique()); handlers->AddHandler( -@@ -2472,7 +2473,7 @@ std::unique_ptr BuildH +@@ -2661,7 +2661,7 @@ std::unique_ptr BuildH std::vector> signin_legacy_policies; #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_LINUX) + BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) signin_legacy_policies.push_back(std::make_unique( key::kForceBrowserSignin, prefs::kForceBrowserSignin, base::Value::Type::BOOLEAN)); -@@ -2834,7 +2835,7 @@ std::unique_ptr BuildH +@@ -3018,7 +3018,7 @@ std::unique_ptr BuildH #endif #if BUILDFLAG(ENABLE_SPELLCHECK) -#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique()); handlers->AddHandler( std::make_unique( -@@ -2842,7 +2843,7 @@ std::unique_ptr BuildH +@@ -3026,7 +3026,7 @@ std::unique_ptr BuildH #endif // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) #endif // BUILDFLAG(ENABLE_SPELLCHECK) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique( key::kAllowSystemNotifications, prefs::kAllowSystemNotifications, base::Value::Type::BOOLEAN)); -@@ -2859,7 +2860,7 @@ std::unique_ptr BuildH - /*new_policy_handler=*/std::make_unique< +@@ -3044,7 +3044,7 @@ std::unique_ptr BuildH first_party_sets::FirstPartySetsOverridesPolicyHandler>( - policy::key::kRelatedWebsiteSetsOverrides, chrome_schema))); --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) || \ - BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_FUCHSIA) || BUILDFLAG(IS_ANDROID) + key::kRelatedWebsiteSetsOverrides, chrome_schema))); + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) ++ BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) handlers->AddHandler(std::make_unique()); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) +@@ -3067,7 +3067,7 @@ std::unique_ptr BuildH + base::Value::Type::BOOLEAN))); + + #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ +- BUILDFLAG(IS_CHROMEOS_ASH) ++ BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) + handlers->AddHandler(std::make_unique()); + #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || + // BUILDFLAG(IS_CHROMEOS_ASH) diff --git a/www/iridium/files/patch-chrome_browser_policy_device__management__service__configuration.cc b/www/iridium/files/patch-chrome_browser_policy_device__management__service__configuration.cc index 6a5b761ed10c..c07b12283d47 100644 --- a/www/iridium/files/patch-chrome_browser_policy_device__management__service__configuration.cc +++ b/www/iridium/files/patch-chrome_browser_policy_device__management__service__configuration.cc @@ -1,20 +1,20 @@ ---- chrome/browser/policy/device_management_service_configuration.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/policy/device_management_service_configuration.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/policy/device_management_service_configuration.cc -@@ -22,7 +22,7 @@ +@@ -24,7 +24,7 @@ #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ - !BUILDFLAG(IS_ANDROID)) + !BUILDFLAG(IS_ANDROID)) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/connectors/common.h" #include "chrome/browser/enterprise/connectors/connectors_service.h" #endif -@@ -100,7 +100,7 @@ DeviceManagementServiceConfiguration::GetReportingConn +@@ -102,7 +102,7 @@ DeviceManagementServiceConfiguration::GetReportingConn content::BrowserContext* context) const { #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ ((BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS)) && \ - !BUILDFLAG(IS_ANDROID)) + !BUILDFLAG(IS_ANDROID)) || BUILDFLAG(IS_BSD) auto* service = enterprise_connectors::ConnectorsServiceFactory::GetForBrowserContext( context); diff --git a/www/iridium/files/patch-chrome_browser_policy_policy__value__and__status__aggregator.cc b/www/iridium/files/patch-chrome_browser_policy_policy__value__and__status__aggregator.cc index 07b8d403a488..6e1dcf13de3f 100644 --- a/www/iridium/files/patch-chrome_browser_policy_policy__value__and__status__aggregator.cc +++ b/www/iridium/files/patch-chrome_browser_policy_policy__value__and__status__aggregator.cc @@ -1,20 +1,11 @@ ---- chrome/browser/policy/policy_value_and_status_aggregator.cc.orig 2023-10-21 11:51:27 UTC +--- chrome/browser/policy/policy_value_and_status_aggregator.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/policy/policy_value_and_status_aggregator.cc @@ -53,7 +53,7 @@ #include "chrome/browser/policy/value_provider/extension_policies_value_provider.h" #endif // BUILDFLAG(ENABLE_EXTENSIONS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "components/policy/core/common/cloud/profile_cloud_policy_manager.h" #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -@@ -99,7 +99,7 @@ std::unique_ptr GetUserP - #else // BUILDFLAG(IS_CHROMEOS_ASH) - policy::CloudPolicyManager* cloud_policy_manager = - profile->GetUserCloudPolicyManager(); --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - if (!cloud_policy_manager) { - cloud_policy_manager = profile->GetProfileCloudPolicyManager(); - } diff --git a/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc b/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc index 319fb3ce85cd..a7b0443658dd 100644 --- a/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc +++ b/www/iridium/files/patch-chrome_browser_prefs_browser__prefs.cc @@ -1,75 +1,57 @@ ---- chrome/browser/prefs/browser_prefs.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/prefs/browser_prefs.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/prefs/browser_prefs.cc -@@ -485,18 +485,18 @@ +@@ -489,18 +489,18 @@ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) #include "components/device_signals/core/browser/pref_names.h" // nogncheck due to crbug.com/1125897 #endif - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) #include "chrome/browser/browser_switcher/browser_switcher_prefs.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ++#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/signin/enterprise_signin_prefs.h" #endif -@@ -528,7 +528,7 @@ +@@ -535,7 +535,7 @@ #include "chrome/browser/sessions/session_service_log.h" #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "ui/color/system_theme.h" #endif -@@ -652,7 +652,7 @@ const char kPluginsPluginsList[] = "plugins.plugins_li - const char kPluginsShowDetails[] = "plugins.show_details"; - - // Deprecated 02/2023. --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - const char kWebAppsUrlHandlerInfo[] = "web_apps.url_handler_info"; - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - -@@ -982,7 +982,7 @@ void RegisterLocalStatePrefsForMigration(PrefRegistryS - #endif // BUILDFLAG(IS_CHROMEOS_ASH) +@@ -1861,7 +1861,7 @@ void RegisterLocalState(PrefRegistrySimple* registry) + true); + #endif // BUILDFLAG(ENABLE_PDF) - // Deprecated 02/2023. --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - registry->RegisterDictionaryPref(kWebAppsUrlHandlerInfo); - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +-#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + registry->RegisterBooleanPref(prefs::kChromeForTestingAllowed, true); + #endif -@@ -1959,12 +1959,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync +@@ -2213,12 +2213,12 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySync #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) device_signals::RegisterProfilePrefs(registry); #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || // BUILDFLAG(IS_CHROMEOS_ASH) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) browser_switcher::BrowserSwitcherPrefs::RegisterProfilePrefs(registry); enterprise_signin::RegisterProfilePrefs(registry); #endif -@@ -2121,7 +2121,7 @@ void MigrateObsoleteLocalStatePrefs(PrefService* local - #endif // BUILDFLAG(IS_CHROMEOS_ASH) - - // Added 02/2023 --#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) -+#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) - local_state->ClearPref(kWebAppsUrlHandlerInfo); - #endif // BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) - diff --git a/www/iridium/files/patch-chrome_browser_prefs_pref__service__incognito__allowlist.cc b/www/iridium/files/patch-chrome_browser_prefs_pref__service__incognito__allowlist.cc index cc8726779e3f..4895c69366c1 100644 --- a/www/iridium/files/patch-chrome_browser_prefs_pref__service__incognito__allowlist.cc +++ b/www/iridium/files/patch-chrome_browser_prefs_pref__service__incognito__allowlist.cc @@ -1,11 +1,11 @@ ---- chrome/browser/prefs/pref_service_incognito_allowlist.cc.orig 2023-08-28 20:17:35 UTC +--- chrome/browser/prefs/pref_service_incognito_allowlist.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/prefs/pref_service_incognito_allowlist.cc -@@ -168,7 +168,7 @@ const char* const kPersistentPrefNames[] = { +@@ -184,7 +184,7 @@ const char* const kPersistentPrefNames[] = { prefs::kShowFullscreenToolbar, #endif -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // Toggleing custom frames affects all open windows in the profile, hence // should be written to the regular profile when changed in incognito mode. prefs::kUseCustomChromeFrame, diff --git a/www/iridium/files/patch-chrome_browser_printing_print__backend__service__manager.cc b/www/iridium/files/patch-chrome_browser_printing_print__backend__service__manager.cc index 53dd6df2f25f..c7a5aa9140a5 100644 --- a/www/iridium/files/patch-chrome_browser_printing_print__backend__service__manager.cc +++ b/www/iridium/files/patch-chrome_browser_printing_print__backend__service__manager.cc @@ -1,29 +1,29 @@ ---- chrome/browser/printing/print_backend_service_manager.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/printing/print_backend_service_manager.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/printing/print_backend_service_manager.cc -@@ -33,7 +33,7 @@ - #include "printing/buildflags/buildflags.h" +@@ -35,7 +35,7 @@ + #include "printing/printing_context.h" #include "printing/printing_features.h" -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "content/public/common/content_switches.h" #endif -@@ -849,7 +849,7 @@ PrintBackendServiceManager::GetServiceFromBundle( +@@ -862,7 +862,7 @@ PrintBackendServiceManager::GetServiceFromBundle( host.BindNewPipeAndPassReceiver(), content::ServiceProcessHost::Options() .WithDisplayName(IDS_UTILITY_PROCESS_PRINT_BACKEND_SERVICE_NAME) -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) .WithExtraCommandLineSwitches({switches::kMessageLoopTypeUi}) #endif .Pass()); -@@ -1022,7 +1022,7 @@ PrintBackendServiceManager::DetermineIdleTimeoutUpdate +@@ -1039,7 +1039,7 @@ PrintBackendServiceManager::DetermineIdleTimeoutUpdate return kNoClientsRegisteredResetOnIdleTimeout; case ClientType::kQueryWithUi: -#if BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) // No need to update if there were other query with UI clients. if (HasQueryWithUiClientForRemoteId(remote_id)) { - return absl::nullopt; + return std::nullopt; diff --git a/www/iridium/files/patch-chrome_browser_printing_printer__query.cc b/www/iridium/files/patch-chrome_browser_printing_printer__query.cc index b2e055c238a9..fb5fdc74de33 100644 --- a/www/iridium/files/patch-chrome_browser_printing_printer__query.cc +++ b/www/iridium/files/patch-chrome_browser_printing_printer__query.cc @@ -1,11 +1,11 @@ ---- chrome/browser/printing/printer_query.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/printing/printer_query.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/printing/printer_query.cc @@ -341,7 +341,7 @@ void PrinterQuery::UpdatePrintSettings(base::Value::Di crash_key = std::make_unique( - print_backend->GetPrinterDriverInfo(printer_name)); + printer_name, print_backend->GetPrinterDriverInfo(printer_name)); -#if BUILDFLAG(IS_LINUX) && BUILDFLAG(USE_CUPS) +#if (BUILDFLAG(IS_BSD) || BUILDFLAG(IS_LINUX)) && BUILDFLAG(USE_CUPS) PrinterBasicInfo basic_info; if (print_backend->GetPrinterBasicInfo(printer_name, &basic_info) == mojom::ResultCode::kSuccess) { diff --git a/www/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc b/www/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc index 88f35439e38c..edb6136bbbd2 100644 --- a/www/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc +++ b/www/iridium/files/patch-chrome_browser_profiles_chrome__browser__main__extra__parts__profiles.cc @@ -1,96 +1,114 @@ ---- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.cc -@@ -401,18 +401,18 @@ +@@ -329,7 +329,7 @@ + #include "chromeos/constants/chromeos_features.h" + #endif + +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + #include "chrome/browser/policy/messaging_layer/util/manual_test_heartbeat_event_factory.h" + #endif + +@@ -413,18 +413,18 @@ #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/connectors/device_trust/device_trust_connector_service_factory.h" #include "chrome/browser/enterprise/connectors/device_trust/device_trust_service_factory.h" #include "chrome/browser/enterprise/signals/user_permission_service_factory.h" #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) #include "chrome/browser/enterprise/idle/idle_service_factory.h" #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) #include "chrome/browser/browser_switcher/browser_switcher_service_factory.h" - #include "chrome/browser/enterprise/connectors/analysis/local_binary_upload_service_factory.h" - #include "chrome/browser/enterprise/signals/signals_aggregator_factory.h" -@@ -621,7 +621,7 @@ void ChromeBrowserMainExtraPartsProfiles:: - if (breadcrumbs::IsEnabled()) { - BreadcrumbManagerKeyedServiceFactory::GetInstance(); - } + #include "chrome/browser/enterprise/client_certificates/certificate_provisioning_service_factory.h" + #include "chrome/browser/enterprise/client_certificates/certificate_store_factory.h" +@@ -660,7 +660,7 @@ void ChromeBrowserMainExtraPartsProfiles:: + DiceBoundSessionCookieServiceFactory::GetInstance(); + #endif // BUILDFLAG(ENABLE_DICE_SUPPORT) + #endif // BUILDFLAG(ENABLE_BOUND_SESSION_CREDENTIALS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) browser_switcher::BrowserSwitcherServiceFactory::GetInstance(); #endif browser_sync::UserEventServiceFactory::GetInstance(); -@@ -727,29 +727,29 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -785,29 +785,29 @@ void ChromeBrowserMainExtraPartsProfiles:: enterprise_commands::UserRemoteCommandsServiceFactory::GetInstance(); #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) enterprise_connectors::DeviceTrustConnectorServiceFactory::GetInstance(); enterprise_connectors::DeviceTrustServiceFactory::GetInstance(); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) enterprise_connectors::LocalBinaryUploadServiceFactory::GetInstance(); #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_ANDROID) + BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_BSD) enterprise_idle::IdleServiceFactory::GetInstance(); #endif #if !BUILDFLAG(IS_CHROMEOS_ASH) enterprise_reporting::CloudProfileReportingServiceFactory::GetInstance(); #endif enterprise_reporting::LegacyTechServiceFactory::GetInstance(); -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) enterprise_signals::SignalsAggregatorFactory::GetInstance(); #endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || \ - BUILDFLAG(IS_CHROMEOS_ASH) + BUILDFLAG(IS_CHROMEOS_ASH) || BUILDFLAG(IS_BSD) enterprise_signals::UserPermissionServiceFactory::GetInstance(); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) enterprise_signin::EnterpriseSigninServiceFactory::GetInstance(); #endif #if BUILDFLAG(ENABLE_SESSION_SERVICE) -@@ -865,7 +865,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -933,7 +933,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #endif - // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch + // TODO(crbug.com/40118868): Revisit the macro expression once build flag switch // of lacros-chrome is complete. -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || \ +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) || \ (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS)) metrics::DesktopProfileSessionDurationsServiceFactory::GetInstance(); #endif -@@ -963,7 +963,7 @@ void ChromeBrowserMainExtraPartsProfiles:: +@@ -1038,7 +1038,7 @@ void ChromeBrowserMainExtraPartsProfiles:: #if BUILDFLAG(IS_CHROMEOS) policy::PolicyCertServiceFactory::GetInstance(); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) policy::ProfileTokenPolicyWebSigninServiceFactory::GetInstance(); + policy::UserPolicyOidcSigninServiceFactory::GetInstance(); #endif - policy::UserCloudPolicyInvalidatorFactory::GetInstance(); -@@ -1007,7 +1007,7 @@ void ChromeBrowserMainExtraPartsProfiles:: - #if !BUILDFLAG(IS_ANDROID) - ProfileThemeUpdateServiceFactory::GetInstance(); +@@ -1080,7 +1080,7 @@ void ChromeBrowserMainExtraPartsProfiles:: + #if !BUILDFLAG(IS_CHROMEOS_ASH) && !BUILDFLAG(IS_ANDROID) + ProfileStatisticsFactory::GetInstance(); #endif -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ProfileTokenWebSigninInterceptorFactory::GetInstance(); + OidcAuthenticationSigninInterceptorFactory::GetInstance(); + #endif +@@ -1099,7 +1099,7 @@ void ChromeBrowserMainExtraPartsProfiles:: + #endif + ReduceAcceptLanguageFactory::GetInstance(); + RendererUpdaterFactory::GetInstance(); +-#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) ++#if BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) + reporting::ManualTestHeartbeatEventFactory::GetInstance(); #endif - #if !BUILDFLAG(IS_ANDROID) + #if BUILDFLAG(IS_CHROMEOS_LACROS) diff --git a/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc b/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc index 02a49999c30b..0b235d95b52f 100644 --- a/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc +++ b/www/iridium/files/patch-chrome_browser_profiles_profile__impl.cc @@ -1,40 +1,40 @@ ---- chrome/browser/profiles/profile_impl.cc.orig 2024-02-04 14:46:08 UTC +--- chrome/browser/profiles/profile_impl.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/profiles/profile_impl.cc -@@ -260,6 +260,10 @@ +@@ -262,6 +262,10 @@ #include "chrome/browser/spellchecker/spellcheck_service.h" #endif +#if BUILDFLAG(IS_BSD) +#include "sandbox/policy/sandbox.h" +#endif + using bookmarks::BookmarkModel; using content::BrowserThread; using content::DownloadManagerDelegate; -@@ -605,7 +609,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async +@@ -596,7 +600,7 @@ void ProfileImpl::LoadPrefsForNormalStartup(bool async #else { #endif // BUILDFLAG(IS_CHROMEOS_LACROS) -#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) +#if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_MAC) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD) ProfileManager* profile_manager = g_browser_process->profile_manager(); ProfileAttributesEntry* entry = profile_manager->GetProfileAttributesStorage() -@@ -884,7 +888,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) +@@ -890,7 +894,17 @@ void ProfileImpl::DoFinalInit(CreateMode create_mode) } base::FilePath ProfileImpl::last_selected_directory() { +#if BUILDFLAG(IS_OPENBSD) + // If unveil(2) is used, force the file dialog directory to something we + // know is available. + auto* sandbox = sandbox::policy::SandboxLinux::GetInstance(); + if (sandbox->unveil_initialized()) + return GetPrefs()->GetFilePath(prefs::kDownloadDefaultDirectory); + else + return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); +#else return GetPrefs()->GetFilePath(prefs::kSelectFileLastDirectory); +#endif } void ProfileImpl::set_last_selected_directory(const base::FilePath& path) { diff --git a/www/iridium/files/patch-chrome_browser_profiles_profiles__state.cc b/www/iridium/files/patch-chrome_browser_profiles_profiles__state.cc index ab4ea49e183a..b20b616d7e32 100644 --- a/www/iridium/files/patch-chrome_browser_profiles_profiles__state.cc +++ b/www/iridium/files/patch-chrome_browser_profiles_profiles__state.cc @@ -1,11 +1,11 @@ ---- chrome/browser/profiles/profiles_state.cc.orig 2023-07-24 14:27:53 UTC +--- chrome/browser/profiles/profiles_state.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/profiles/profiles_state.cc -@@ -182,7 +182,7 @@ bool IsGuestModeRequested(const base::CommandLine& com +@@ -195,7 +195,7 @@ bool IsGuestModeRequested(const base::CommandLine& com PrefService* local_state, bool show_warning) { #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_WIN) || \ - BUILDFLAG(IS_MAC) + BUILDFLAG(IS_MAC) || BUILDFLAG(IS_BSD) DCHECK(local_state); // Check if guest mode enforcement commandline switch or policy are provided. diff --git a/www/iridium/files/patch-chrome_browser_renderer__preferences__util.cc b/www/iridium/files/patch-chrome_browser_renderer__preferences__util.cc index 4d81865d59d8..937692d3e701 100644 --- a/www/iridium/files/patch-chrome_browser_renderer__preferences__util.cc +++ b/www/iridium/files/patch-chrome_browser_renderer__preferences__util.cc @@ -1,29 +1,29 @@ ---- chrome/browser/renderer_preferences_util.cc.orig 2023-11-22 14:00:11 UTC +--- chrome/browser/renderer_preferences_util.cc.orig 2024-06-25 12:08:48 UTC +++ chrome/browser/renderer_preferences_util.cc -@@ -38,7 +38,7 @@ +@@ -39,7 +39,7 @@ #include "ui/views/controls/textfield/textfield.h" #endif -#if defined(USE_AURA) && BUILDFLAG(IS_LINUX) +#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) #include "chrome/browser/themes/theme_service.h" #include "chrome/browser/themes/theme_service_factory.h" #include "ui/linux/linux_ui.h" -@@ -152,7 +152,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc +@@ -154,7 +154,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc prefs->caret_blink_interval = views::Textfield::GetCaretBlinkInterval(); #endif -#if defined(USE_AURA) && BUILDFLAG(IS_LINUX) +#if defined(USE_AURA) && (BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_BSD)) auto* linux_ui_theme = ui::LinuxUiTheme::GetForProfile(profile); if (linux_ui_theme) { if (ThemeServiceFactory::GetForProfile(profile)->UsingSystemTheme()) { -@@ -175,7 +175,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc +@@ -177,7 +177,7 @@ void UpdateFromSystemSettings(blink::RendererPreferenc #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_BSD) content::UpdateFontRendererPreferencesFromSystemSettings(prefs); #endif diff --git a/www/iridium/files/patch-chrome_browser_resources_sandbox__internals_sandbox__internals.ts b/www/iridium/files/patch-chrome_browser_resources_sandbox__internals_sandbox__internals.ts deleted file mode 100644 index f8a903032dee..000000000000 --- a/www/iridium/files/patch-chrome_browser_resources_sandbox__internals_sandbox__internals.ts +++ /dev/null @@ -1,29 +0,0 @@ ---- chrome/browser/resources/sandbox_internals/sandbox_internals.ts.orig 2023-03-13 07:33:08 UTC -+++ chrome/browser/resources/sandbox_internals/sandbox_internals.ts -@@ -2,7 +2,7 @@ - // Use of this source code is governed by a BSD-style license that can be - // found in the LICENSE file. - --// -+// - import './strings.m.js'; - - import {loadTimeData} from 'chrome://resources/js/load_time_data.js'; -@@ -121,7 +121,7 @@ function androidHandler() { - } - // - --// -+// - - /** - * Adds a status row that reports either Yes or No. -@@ -182,7 +182,7 @@ document.addEventListener('DOMContentLoaded', () => { - // - androidHandler(); - // -- // -+ // - linuxHandler(); - // - }); diff --git a/www/iridium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__browser__proxy.ts b/www/iridium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__browser__proxy.ts deleted file mode 100644 index a4e86da47afb..000000000000 --- a/www/iridium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__browser__proxy.ts +++ /dev/null @@ -1,20 +0,0 @@ ---- chrome/browser/resources/settings/appearance_page/appearance_browser_proxy.ts.orig 2023-08-28 20:17:35 UTC -+++ chrome/browser/resources/settings/appearance_page/appearance_browser_proxy.ts -@@ -18,7 +18,7 @@ export interface AppearanceBrowserProxy { - - useDefaultTheme(): void; - -- // -+ // - useGtkTheme(): void; - useQtTheme(): void; - // -@@ -48,7 +48,7 @@ export class AppearanceBrowserProxyImpl implements App - chrome.send('useDefaultTheme'); - } - -- // -+ // - useGtkTheme() { - chrome.send('useGtkTheme'); - } diff --git a/www/iridium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html b/www/iridium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html deleted file mode 100644 index 61fa406b8c57..000000000000 --- a/www/iridium/files/patch-chrome_browser_resources_settings_appearance__page_appearance__page.html +++ /dev/null @@ -1,29 +0,0 @@ ---- chrome/browser/resources/settings/appearance_page/appearance_page.html.orig 2023-10-21 11:51:27 UTC -+++ chrome/browser/resources/settings/appearance_page/appearance_page.html -@@ -27,7 +27,7 @@ - -- -+ - - -- -+ -