> I'll have a go at a bulk build with 3.12 on i386, using the attached > diff. qtwebengine has been updated not all that long ago so maybe it > changed. (i386 can't build qtwebengine 6, but 5 is working with 3.11).
qt5/qtwebengine builds with the diff below which I extracted from sed incantations here: https://www.linuxfromscratch.org/~ken/fontconfig-systemd/x/qtwebengine.html unfortunately it breaks the build with 3.11 Index: Makefile =================================================================== RCS file: /cvs/ports/x11/qt5/qtwebengine/Makefile,v diff -u -p -r1.63 Makefile --- Makefile 1 Dec 2024 14:51:17 -0000 1.63 +++ Makefile 14 Dec 2024 06:04:32 -0000 @@ -135,6 +135,7 @@ pre-build: ${SUBST_CMD} ${CHROMESRC}/build/gn_run_binary.py \ ${CHROMESRC}/v8/tools/run.py \ ${CHROMESRC}/tools/protoc_wrapper/protoc_wrapper.py + rm -r ${CHROMESRC}/tools/grit/third_party/six pre-fake: # Fix version mismatches for CMake Index: patches/patch-src_3rdparty_chromium_components_resources_protobufs_binary_proto_generator_py =================================================================== RCS file: patches/patch-src_3rdparty_chromium_components_resources_protobufs_binary_proto_generator_py diff -N patches/patch-src_3rdparty_chromium_components_resources_protobufs_binary_proto_generator_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_3rdparty_chromium_components_resources_protobufs_binary_proto_generator_py 14 Dec 2024 04:38:08 -0000 @@ -0,0 +1,27 @@ +Fix build with Python 3.12 +https://www.linuxfromscratch.org/~ken/fontconfig-systemd/x/qtwebengine.html + +Index: src/3rdparty/chromium/components/resources/protobufs/binary_proto_generator.py +--- src/3rdparty/chromium/components/resources/protobufs/binary_proto_generator.py.orig ++++ src/3rdparty/chromium/components/resources/protobufs/binary_proto_generator.py +@@ -21,7 +21,7 @@ PY34 = sys.version_info[0:2] >= (3, 4) + if PY34: + from importlib import util as imp_util + else: +- import imp ++ import importlib.util + + class GoogleProtobufModuleImporter: + """A custom module importer for importing google.protobuf. +@@ -79,7 +79,10 @@ class GoogleProtobufModuleImporter: + spec.loader.exec_module(loaded) + + else: +- return imp.load_source(fullname, filepath) ++ spec = importlib.util.spec_from_file_location(fullname, filepath) ++ mod = importlib.util.module_from_spec(spec) ++ spec.loader.exec_module(mod) ++ return mod + + return loaded + Index: patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_fileutil_py =================================================================== RCS file: patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_fileutil_py diff -N patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_fileutil_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_fileutil_py 14 Dec 2024 04:38:11 -0000 @@ -0,0 +1,14 @@ +Fix build with Python 3.12 +https://www.linuxfromscratch.org/~ken/fontconfig-systemd/x/qtwebengine.html + +Index: src/3rdparty/chromium/mojo/public/tools/mojom/mojom/fileutil.py +--- src/3rdparty/chromium/mojo/public/tools/mojom/mojom/fileutil.py.orig ++++ src/3rdparty/chromium/mojo/public/tools/mojom/mojom/fileutil.py +@@ -3,7 +3,6 @@ + # found in the LICENSE file. + + import errno +-import imp + import os.path + import sys + Index: patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_parse_lexer_py =================================================================== RCS file: patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_parse_lexer_py diff -N patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_parse_lexer_py --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_3rdparty_chromium_mojo_public_tools_mojom_mojom_parse_lexer_py 14 Dec 2024 04:38:04 -0000 @@ -0,0 +1,14 @@ +Fix build with Python 3.12 +https://www.linuxfromscratch.org/~ken/fontconfig-systemd/x/qtwebengine.html + +Index: src/3rdparty/chromium/mojo/public/tools/mojom/mojom/parse/lexer.py +--- src/3rdparty/chromium/mojo/public/tools/mojom/mojom/parse/lexer.py.orig ++++ src/3rdparty/chromium/mojo/public/tools/mojom/mojom/parse/lexer.py +@@ -2,7 +2,6 @@ + # Use of this source code is governed by a BSD-style license that can be + # found in the LICENSE file. + +-import imp + import os.path + import sys +