From 645e26483f133919c1fa68b118ab2f628ad2c173 Mon Sep 17 00:00:00 2001 From: Leah Rowe Date: Sun, 30 Aug 2026 20:51:18 +0100 Subject: [PATCH 1/1] WIP: 155.0-1 librewolf (NOTE: waiting for PGO data) DO NOT MERGE YET. THIS IS WIP. MERGE NOTE: PGO logic currently commented because as i write this, no 155.0 binaries are available from mozilla. they haven't even tagged it yet, but librewolf did produce a 155.0-1 source tarball. they do this sometimes, as they just use the sources anyway. therefore, i can't currently download PGO data from mozilla. i will submit an amended version of this patch when PGO data is available. MERGE NOTE: when profdata is available, it can just be put inside distinfo like in the firefox port, along with the ID being set in the Makefile. changes in this patch, besides the version update: use firefox PGO data, matched to the corresponding firefox version (154.0.1) matching librewolf 154.0.1-3. NOTE: again, i will update this when 155.0 profdata is available although librewolf doesn't provide PGO data, the two codebases are so similar that using PGO for speed optimisation will work on areas of the code that remain untouched by librewolf, which is most of the code. therefore, using mozilla profdata works fine. i've re-added the rust simd build option, which is fine so long as you keep both librewolf and rustc/cargo up to date in the ports system. i initially removed this option during development of the port, and i was often using older versions of librewolf or its libraries, which includes rust libraries, which sometimes caused build errors that removing this option mitigated. for regular ports maintenance, it is best that this option remains enabled as it enables a nice performance boost for users in certain workloads. MERGE NOTE: DIST_SUBDIR is changed to mozilla, so now librewolf shares the same subdir as firefox. This avoids duplicating identical copies of mozilla PGO data on the openbsd dist server. This way, we avoid any duplication. This means that there will forever by a stale librewolf/ directory on the dist server. I tested it with this change, and it works fine. LibreWolf tarballs now download into mozilla/ on the dist server. I waited until the next release update before doing this, to avoid the 154.0.1-3 release being duplicated on the openbsd dist server. Signed-off-by: Leah Rowe --- www/librewolf/Makefile | 12 +++++++++--- www/librewolf/distinfo | 4 ++-- www/librewolf/patches/patch-mozconfig | 12 ++++-------- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/www/librewolf/Makefile b/www/librewolf/Makefile index ba70810ef68..a0ad70b77b7 100644 --- a/www/librewolf/Makefile +++ b/www/librewolf/Makefile @@ -13,14 +13,21 @@ ONLY_FOR_ARCHS = amd64 aarch64 riscv64 # If upstream adds revision number -x, it will become plx in OpenBSD, e.g. # librewolf-149.0.2-2 (upstream) becomes librewolf-149.0.2pl2 (patch level 2) -MOZILLA_DIST_VERSION = 154.0.1-3 +MOZILLA_DIST_VERSION = 155.0-1 MOZILLA_VERSION = ${MOZILLA_DIST_VERSION:C/-([0-9]+)$/pl\1/} -REVISION = 0 MOZILLA_PROJECT = librewolf MOZILLA_CODENAME = browser MAINTAINER = Leah Rowe +# LibreWolf doesn't provide PGO data, but we use the data +# provided by FireFox releases, re-using the OpenBSD distfile +# NOTE: profdata from 154.0.1, i couldn't find 155.0 yet. will check later. +# MOZILLA_PROFDATA_TASKID = bR-VI2yqTky87DcaKP4BRQ +# FFVERSION = ${MOZILLA_DIST_VERSION:C/-([0-9]+)$//} +# FFDIST = firefox-${FFVERSION}.source +# DISTFILES.profdata = ${FFDIST}-profdata.tar.xz{profdata.tar.xz} + HOMEPAGE = https://librewolf.net/ SO_VERSION = 3.0 # Bump minor ver if shlibs deleted in components dir to avoid pkg_add -r issues @@ -32,7 +39,6 @@ CATEGORIES = www MOZSITE = https://librewolf.dev/api/packages/librewolf/generic SITES = ${MOZSITE}/librewolf-source/${MOZILLA_DIST_VERSION}/ EXTRACT_SUFX = .tar.gz -DIST_SUBDIR = librewolf # mozilla public license PERMIT_PACKAGE= Yes diff --git a/www/librewolf/distinfo b/www/librewolf/distinfo index a9b3cc0a0e6..a5590ce4ec8 100644 --- a/www/librewolf/distinfo +++ b/www/librewolf/distinfo @@ -1,2 +1,2 @@ -SHA256 (librewolf/librewolf-154.0.1-3.source.tar.gz) = /ubKrDD5r/bf2P6GjOhDYCsDwwcmCchv9/xsF8OXpsw= -SIZE (librewolf/librewolf-154.0.1-3.source.tar.gz) = 1175015645 +SHA256 (mozilla/librewolf-155.0-1.source.tar.gz) = XZUdgHHva8xOq4u6FJLiaa9yjINYZDfsKn2xHUa+NvY= +SIZE (mozilla/librewolf-155.0-1.source.tar.gz) = 1175547857 diff --git a/www/librewolf/patches/patch-mozconfig b/www/librewolf/patches/patch-mozconfig index 011bd84fadf..51454968286 100644 --- a/www/librewolf/patches/patch-mozconfig +++ b/www/librewolf/patches/patch-mozconfig @@ -10,7 +10,7 @@ restored on re-builds, matching what was produced by this patch. Index: mozconfig --- mozconfig.orig +++ mozconfig -@@ -1,20 +1,29 @@ +@@ -1,9 +1,16 @@ +# %%VARIABLE%% is replaced with a string set by the +# OpenBSD port Makefile at build time. In addition to +# these changes, the LibreWolf OpenBSD port Makefile @@ -29,12 +29,8 @@ Index: mozconfig ac_add_options --disable-updater ac_add_options --disable-cargo-incremental ac_add_options --enable-hardening - ac_add_options --enable-stl-hardening - ac_add_options --enable-optimize - ac_add_options --enable-release --ac_add_options --enable-rust-simd -+# Rust SIMD option causes build errors on OpenBSD: -+# ac_add_options --enable-rust-simd +@@ -13,8 +20,9 @@ + ac_add_options --enable-rust-simd # allow replacing malloc manually, will not affect regular systems # not compatible with ac_add_options --disable-jemalloc, which only works when preloading custom malloc -ac_add_options --enable-replace-malloc @@ -45,7 +41,7 @@ Index: mozconfig ac_add_options --with-app-name=librewolf ac_add_options --with-branding=browser/branding/librewolf -@@ -33,7 +42,19 @@ +@@ -33,7 +41,19 @@ export CFLAGS="-ftrivial-auto-var-init=zero -fwrapv -Wno-backend-plugin $CFLAGS" export CXXFLAGS="-ftrivial-auto-var-init=zero -fwrapv -Wno-backend-plugin $CXXFLAGS" -- 2.55.0