MozillaFirefox/MozillaFirefox.spec
branchfirefox116
changeset 1192 7612b8d8c46f
parent 1191 37e065158be7
child 1193 16de98d33e97
--- a/MozillaFirefox/MozillaFirefox.spec	Fri Aug 04 12:30:24 2023 +0200
+++ b/MozillaFirefox/MozillaFirefox.spec	Sun Aug 27 10:23:20 2023 +0200
@@ -29,8 +29,8 @@
 # major 69
 # mainver %%major.99
 %define major          116
-%define mainver        %major.0
-%define orig_version   116.0
+%define mainver        %major.0.3
+%define orig_version   116.0.3
 %define orig_suffix    %{nil}
 %define update_channel release
 %define branding       1
@@ -61,7 +61,7 @@
 %{expand:%%global optflags %(echo "%optflags"|sed -e s/i586/i686/) -march=i686 -mtune=generic -msse2}
 %endif
 %endif
-#%%{expand:%%global optflags %(echo "%optflags"|sed -e s/-flto=auto//) }
+%{expand:%%global optflags %(echo "%optflags"|sed -e s/-flto=auto//) }
 
 # general build definitions
 %define progname firefox
@@ -97,7 +97,7 @@
 BuildRequires:  dejavu-fonts
 BuildRequires:  fdupes
 BuildRequires:  memory-constraints
-%if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150500
+%if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150600
 BuildRequires:  gcc12
 BuildRequires:  gcc12-c++
 %else
@@ -114,7 +114,7 @@
 BuildRequires:  libproxy-devel
 BuildRequires:  makeinfo
 BuildRequires:  mozilla-nspr-devel >= 4.35
-BuildRequires:  mozilla-nss-devel >= 3.90
+BuildRequires:  mozilla-nss-devel >= 3.91
 BuildRequires:  nasm >= 2.14
 BuildRequires:  nodejs >= 12.22.12
 %if 0%{?sle_version} >= 120000 && 0%{?sle_version} < 150000
@@ -124,7 +124,7 @@
 BuildRequires:  python39-curses
 BuildRequires:  python39-devel
 %else
-%if 0%{?sle_version} >= 150000 && 0%{?sle_version} <= 150500
+%if 0%{?sle_version} >= 150000 && 0%{?sle_version} <= 150600
 BuildRequires:  python39
 BuildRequires:  python39-curses
 BuildRequires:  python39-devel
@@ -219,7 +219,6 @@
 Patch10:        mozilla-bmo1504834-part1.patch
 Patch11:        mozilla-bmo1504834-part3.patch
 Patch12:        mozilla-bmo1512162.patch
-#Patch13:        mozilla-fix-top-level-asm.patch
 Patch14:        mozilla-bmo849632.patch
 Patch15:        mozilla-bmo998749.patch
 Patch17:        mozilla-libavcodec58_91.patch
@@ -228,8 +227,7 @@
 Patch20:        one_swizzle_to_rule_them_all.patch
 Patch21:        svg-rendering.patch
 Patch22:        mozilla-partial-revert-1768632.patch
-Patch23:        mozilla-bmo1775202.patch
-Patch24:        mozilla-rust-disable-future-incompat.patch
+Patch23:        mozilla-rust-disable-future-incompat.patch
 # Firefox/browser
 Patch101:       firefox-kde.patch
 Patch102:       firefox-branded-icons.patch
@@ -248,7 +246,7 @@
 %if 0%{?devpkg} == 0
 Obsoletes:      %{name}-devel < %{version}
 %endif
-ExcludeArch:    armv6l armv6hl ppc ppc64 ppc64le
+ExcludeArch:    armv6l armv6hl ppc ppc64
 
 %description
 Mozilla Firefox is a standalone web browser, designed for standards
@@ -375,29 +373,26 @@
 export MOZ_TELEMETRY_REPORTING=1
 export MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=system
 export CFLAGS="%{optflags}"
-%if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150500
+%if 0%{?suse_version} < 1550 && 0%{?sle_version} <= 150600
 export CC=gcc-12
 export CXX=g++-12
 %else
 %if 0%{?clang_build} == 0
 export CC=gcc
 export CXX=g++
-%if 0%{?gcc_version:%{gcc_version}} >= 12
-export CFLAGS="\$CFLAGS -fimplicit-constexpr"
-%endif
 %endif
 %endif
 %ifarch %arm %ix86
+### NOTE: these sections are not required anymore. Alson --no-keep-memory + -Wl,-z,pack-relative-relocs causes
+### ld to go OOM (https://sourceware.org/bugzilla/show_bug.cgi?id=30756)
 # Limit RAM usage during link
-export LDFLAGS="\$LDFLAGS -Wl,--no-keep-memory -Wl,--reduce-memory-overheads"
+# export LDFLAGS="\$LDFLAGS -Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,--no-map-whole-files -Wl,--hash-size=31"
+#
 # A lie to prevent -Wl,--gc-sections being set which requires more memory than 32bit can offer
-export GC_SECTIONS_BREAKS_DEBUG_RANGES=yes
+#export GC_SECTIONS_BREAKS_DEBUG_RANGES=yes
 %endif
 export LDFLAGS="\$LDFLAGS -fPIC -Wl,-z,relro,-z,now"
 %ifarch ppc64 ppc64le
-%if 0%{?clang_build} == 0
-#export CFLAGS="\$CFLAGS -mminimal-toc"
-%endif
 %endif
 %ifarch %ix86
 # Not enough memory on 32-bit systems, reduce debug info.
@@ -434,15 +429,13 @@
 %ifarch %ix86 %arm
 ac_add_options --disable-debug-symbols
 %else
-ac_add_options --enable-debug-symbols=-g1
+ac_add_options --enable-debug-symbols=-g0
 %endif
 ac_add_options --disable-install-strip
-# building with elf-hack started to fail everywhere with FF73
-#%%if 0%%{?suse_version} > 1549
-%ifarch %arm %ix86 x86_64
-ac_add_options --disable-elf-hack
+%ifarch %ix86 %arm
+# OOM on 32-bit when ld passed -Wl,-z,pack-relative-relocs
+# ac_add_options --enable-elf-hack
 %endif
-#%%endif
 ac_add_options --with-system-nspr
 ac_add_options --with-system-nss
 %if 0%{useccache} != 0
@@ -537,11 +530,7 @@
 %endif
 EOF
 
-%ifarch %ix86
-%define njobs 1
-%else
 %define njobs 0%{?jobs:%jobs}
-%endif
 mkdir -p $RPM_BUILD_DIR/langpacks_artifacts/
 sed -r '/^(ja-JP-mac|ga-IE|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \
     | xargs -n 1 %{?njobs:-P %njobs} -I {} /bin/sh -c '
@@ -727,8 +716,13 @@
 %{progdir}/*.so
 %{progdir}/glxtest
 %if 0%{wayland_supported}
+%ifarch %{arm} aarch64 %{ix86} x86_64
 %{progdir}/vaapitest
 %endif
+%endif
+%ifarch aarch64 riscv64 %arm
+%{progdir}/v4l2test
+%endif
 %{progdir}/omni.ja
 %{progdir}/fonts/
 %{progdir}/pingsender