Build firefox results in Python exceptions like this one: Traceback (most recent call last): File "/builddir/build/BUILD/firefox-90.0/./mach", line 153, in <module> main(sys.argv[1:]) File "/builddir/build/BUILD/firefox-90.0/./mach", line 145, in main mach = check_and_get_mach(os.path.dirname(os.path.realpath(__file__))) File "/builddir/build/BUILD/firefox-90.0/./mach", line 132, in check_and_get_mach return load_mach(dir_path, mach_path) File "/builddir/build/BUILD/firefox-90.0/./mach", line 120, in load_mach return mach_bootstrap.bootstrap(dir_path) File "/builddir/build/BUILD/firefox-90.0/build/mach_bootstrap.py", line 228, in bootstrap import mach.main File "/builddir/build/BUILD/firefox-90.0/python/mach/mach/main.py", line 19, in <module> from collections import Iterable ImportError: cannot import name 'Iterable' from 'collections' (/usr/lib64/python3.10/collections/__init__.py) It is related to to the collections → collections.abc move that was completed in Python 3.10: https://docs.python.org/3.10/whatsnew/3.10.html#removed This blocks the fix of bug 1976892 in rawhide, which in turn blocks further glibc updates in rawhide (including the upgrade to glibc 2.34). I'm testing a patch.
I'm using this patch [1] for IceCat (firefox-78.12.0ESR), but the build is still failing: 13:35.16 /builddir/build/BUILD/icecat-78.12.0/security/sandbox/linux/launch/SandboxLaunch.cpp: In function ‘pid_t mozilla::{anonymous}::DoClone(int, __jmp_buf_tag (*)[1])’: 13:35.16 /builddir/build/BUILD/icecat-78.12.0/security/sandbox/linux/launch/SandboxLaunch.cpp:496:28: error: no matching function for call to ‘ArrayEnd(uint8_t [<anonymous>])’ I don't know if it related to the changes for Python-3.10 [1] https://src.fedoraproject.org/rpms/icecat/blob/rawhide/f/icecat-porting_to_python310.patch
There's a new rawhide-specific build failure due to glibc's dynamic stack sizes: 34:54.59 /builddir/build/BUILD/firefox-90.0/js/xpconnect/src/XPCJSContext.cpp:94:5: error: call to non-‘constexpr’ function ‘long int __sysconf(int)’ 34:54.59 94 | PTHREAD_STACK_MIN < 32 * 1024 ? 32 * 1024 : PTHREAD_STACK_MIN;
Created attachment 1803365 [details] Failed patch attempt I tried my own patch to fix this, but it failed: https://koji.fedoraproject.org/koji/taskinfo?taskID=72187459 I will try the Mozilla patch next (probably tomorrow).
(In reply to Antonio T. sagitter from comment #1) > I'm using this patch [1] for IceCat (firefox-78.12.0ESR), but the build is > still failing: > > 13:35.16 > /builddir/build/BUILD/icecat-78.12.0/security/sandbox/linux/launch/ > SandboxLaunch.cpp: In function ‘pid_t mozilla::{anonymous}::DoClone(int, > __jmp_buf_tag (*)[1])’: > 13:35.16 > /builddir/build/BUILD/icecat-78.12.0/security/sandbox/linux/launch/ > SandboxLaunch.cpp:496:28: error: no matching function for call to > ‘ArrayEnd(uint8_t [<anonymous>])’ > > I don't know if it related to the changes for Python-3.10 > > [1] > https://src.fedoraproject.org/rpms/icecat/blob/rawhide/f/icecat- > porting_to_python310.patch This is another dynamic stack size problem, like my problem in comment 2. I have filed bug 1983696 to track those.
Created attachment 1803524 [details] collections.abc and dynamic stack sizes patch
(In reply to Florian Weimer from comment #5) > Created attachment 1803524 [details] > collections.abc and dynamic stack sizes patch I'm quite happy to report that this patch results in a firefox build that works with glibc-2.33.9000-45.fc35.x86_64.
(In reply to Florian Weimer from comment #4) > (In reply to Antonio T. sagitter from comment #1) > > I'm using this patch [1] for IceCat (firefox-78.12.0ESR), but the build is > > still failing: > > > > 13:35.16 > > /builddir/build/BUILD/icecat-78.12.0/security/sandbox/linux/launch/ > > SandboxLaunch.cpp: In function ‘pid_t mozilla::{anonymous}::DoClone(int, > > __jmp_buf_tag (*)[1])’: > > 13:35.16 > > /builddir/build/BUILD/icecat-78.12.0/security/sandbox/linux/launch/ > > SandboxLaunch.cpp:496:28: error: no matching function for call to > > ‘ArrayEnd(uint8_t [<anonymous>])’ > > > > I don't know if it related to the changes for Python-3.10 > > > > [1] > > https://src.fedoraproject.org/rpms/icecat/blob/rawhide/f/icecat- > > porting_to_python310.patch > > This is another dynamic stack size problem, like my problem in comment 2. I > have filed bug 1983696 to track those. Is this fixed?
The patch in attachment 1803524 [details] contains fixes for this bug and bug 1983696. It brings firefox back to a buildable state for me.