Source: webkit2gtk
Version: 2.50.4-1
Severity: normal
User: [email protected]
Usertags: m68k hppa powerpc sh4
X-Debbugs-Cc: 
[email protected],[email protected],[email protected],[email protected]

Hi,

on hppa, powerpc and sh4, the build fails due to GCC running out of memory [1]:

FAILED: [code=1] 
Source/WebCore/CMakeFiles/WebCore.dir/__/__/WebCore/DerivedSources/unified-sources/UnifiedSource-3a52ce78-40.cpp.o
 
/usr/bin/c++ -DBUILDING_GTK__=1 -DBUILDING_WEBKIT=1 -DBUILDING_WITH_CMAKE=1 
-DBUILDING_WebCore (...)
-c 
/build/reproducible-path/webkit2gtk-2.50.4/build-soup3/WebCore/DerivedSources/unified-sources/UnifiedSource-3a52ce78-40.cpp
virtual memory exhausted: Cannot allocate memory

After reading through the ReduceBuildMemoryOverhead article [2] on the Debian 
wiki,
I discovered the option "-no-integrated-cpp" which helps work around the OOM 
issue
above. Together with the "--param ggc-min-expand=10" option, the build suceeds:

dpkg-deb: building package 'libjavascriptcoregtk-4.1-0' in 
'../libjavascriptcoregtk-4.1-0_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libjavascriptcoregtk-6.0-1' in 
'../libjavascriptcoregtk-6.0-1_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libjavascriptcoregtk-6.0-dev' in 
'../libjavascriptcoregtk-6.0-dev_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libjavascriptcoregtk-bin' in 
'../libjavascriptcoregtk-bin_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libwebkit2gtk-4.1-0' in 
'../libwebkit2gtk-4.1-0_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libwebkit2gtk-4.1-dev' in 
'../libwebkit2gtk-4.1-dev_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libwebkitgtk-6.0-4' in 
'../libwebkitgtk-6.0-4_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'webkitgtk-webdriver' in 
'../webkitgtk-webdriver_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libjavascriptcoregtk-4.1-dev' in 
'../libjavascriptcoregtk-4.1-dev_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libwebkitgtk-6.0-dev' in 
'../libwebkitgtk-6.0-dev_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'gir1.2-javascriptcoregtk-6.0' in 
'../gir1.2-javascriptcoregtk-6.0_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libjavascriptcoregtk-bin-dbgsym' in 
'../libjavascriptcoregtk-bin-dbgsym_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'gir1.2-javascriptcoregtk-4.1' in 
'../gir1.2-javascriptcoregtk-4.1_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'webkitgtk-webdriver-dbgsym' in 
'../webkitgtk-webdriver-dbgsym_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'gir1.2-webkit-6.0' in 
'../gir1.2-webkit-6.0_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'gir1.2-webkit2-4.1' in 
'../gir1.2-webkit2-4.1_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libjavascriptcoregtk-4.1-0-dbgsym' in 
'../libjavascriptcoregtk-4.1-0-dbgsym_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libjavascriptcoregtk-6.0-1-dbgsym' in 
'../libjavascriptcoregtk-6.0-1-dbgsym_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libwebkitgtk-6.0-4-dbgsym' in 
'../libwebkitgtk-6.0-4-dbgsym_2.50.4-1_powerpc.deb'.
dpkg-deb: building package 'libwebkit2gtk-4.1-0-dbgsym' in 
'../libwebkit2gtk-4.1-0-dbgsym_2.50.4-1_powerpc.deb'.
 dpkg-genbuildinfo --build=any -O../webkit2gtk_2.50.4-1_powerpc.buildinfo
 dpkg-genchanges --build=any -O../webkit2gtk_2.50.4-1_powerpc.changes
dpkg-genchanges: info: binary-only arch-specific upload (source code and 
arch-indep packages not included)
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)
 signfile webkit2gtk_2.50.4-1_powerpc.buildinfo

I used the following change:

--- debian/rules.orig   2026-01-12 11:12:42.015974924 -0800
+++ debian/rules        2026-01-11 03:06:49.033519846 -0800
@@ -63,6 +63,7 @@
 # Sacrifice speed in order to make it more likely resource limits
 # won't be hit.
 ifeq ($(DEB_BUILD_ARCH_BITS),32)
+       CPPFLAGS += -no-integrated-cpp --param ggc-min-expand=10
        LDFLAGS += -Wl,--no-keep-memory
 endif
 
But since armhf and i386 don't run out of memory, I suggest to use the 
workaorund on
hppa, m68k, powerpc and sh4. For sh4, an additional patch is required to 
disable the
musttail attribute.

Thanks,
Adrian

> [1] 
> https://buildd.debian.org/status/fetch.php?pkg=webkit2gtk&arch=powerpc&ver=2.50.4-1&stamp=1768070233&raw=0
> [2] https://wiki.debian.org/ReduceBuildMemoryOverhead

--
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer
`. `'   Physicist
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913

Reply via email to