From: Claudio Jeker Subject: Re: fix python 3.13 for ports-gcc archs To: Theo Buehler , ports@openbsd.org Date: Sat, 22 Nov 2025 22:39:43 +0100 On Sat, Nov 22, 2025 at 07:55:30PM +0000, Stuart Henderson wrote: > for qt5 you have COMPILER_LANGS = c c++, but for qt6 it's COMPILER_LANGS > ?= c c++. it needs to use either += or ?= otherwise you lose an existing > setting (e.g. COMPILER_LANGS = fortran). Right that should be a ?= like for COMPILER. I feel there is something hiding in devel/kf6 as well. A few ports fail there using base g++ instead of ports-gcc which is not good. I feel this is one of those where MODULES order is not quite right and so lang/python sets COMPILER_LANGS before x11/qt6. Again these ports should be easy to fix. > otherwise lgtm. > > i can start a bulk on i386 with this tomorrow > > > On 2025/11/22 19:38, Theo Buehler wrote: > > On Sat, Nov 22, 2025 at 05:34:59PM +0100, Claudio Jeker wrote: > > > This is what I used to work around the python 3.13 problem on ports-gcc > > > archs (or actually archs using gcc4 in base that lacks atomic > > > instructions). > > > > > > py-gobject3 needs to set COMPILER and LANGS early because of all the > > > module loading. qt5 and qt6 have to set COMPILER_LANGS since code includes > > > lang/python as module and that would then downgrade the c++ compiler to > > > base-gcc :( > > > > > > I did not dig through all failures yet, maybe there are a few more but > > > even then I think this is the right step for now. > > > > I think this is the right way to do it. Maybe this warrants a bulk build > > on a fast arch. sthen, what do you think? > > > > I can't one that myself since my builder is churning through something > > else. > > > > ok tb > > > > > -- > > > :wq Claudio > > > > > > Index: devel/py-gobject3/Makefile > > > =================================================================== > > > RCS file: /cvs/ports/devel/py-gobject3/Makefile,v > > > diff -u -p -r1.99 Makefile > > > --- devel/py-gobject3/Makefile 10 Nov 2025 05:28:43 -0000 1.99 > > > +++ devel/py-gobject3/Makefile 20 Nov 2025 14:32:27 -0000 > > > @@ -17,6 +17,9 @@ PERMIT_PACKAGE= Yes > > > > > > WANTLIB += cairo cairo-gobject ffi girepository-2.0 glib-2.0 gobject-2.0 > > > > > > +COMPILER= base-clang ports-gcc > > > +COMPILER_LANGS= c > > > + > > > MODULES= devel/meson \ > > > lang/python \ > > > x11/gnome > > > Index: lang/python/3/python.port.mk > > > =================================================================== > > > RCS file: /cvs/ports/lang/python/3/python.port.mk,v > > > diff -u -p -r1.11 python.port.mk > > > --- lang/python/3/python.port.mk 14 Nov 2025 08:20:58 -0000 1.11 > > > +++ lang/python/3/python.port.mk 20 Nov 2025 13:56:01 -0000 > > > @@ -9,6 +9,9 @@ CATEGORIES += lang/python > > > # must be REVISION-bumped. > > > # - Keep xenocara/share/mk/bsd.xorg.mk PYTHON_VERSION in sync. > > > > > > +COMPILER ?= base-clang ports-gcc > > > +COMPILER_LANGS ?= c > > > + > > > MODPY_WANTLIB = python${MODPY_VERSION} > > > MODPY_RUN_DEPENDS = lang/python/3 > > > MODPY_LIB_DEPENDS = lang/python/3 > > > Index: x11/qt5/qt5.port.mk > > > =================================================================== > > > RCS file: /cvs/ports/x11/qt5/qt5.port.mk,v > > > diff -u -p -r1.33 qt5.port.mk > > > --- x11/qt5/qt5.port.mk 23 Mar 2024 06:54:27 -0000 1.33 > > > +++ x11/qt5/qt5.port.mk 20 Nov 2025 22:05:45 -0000 > > > @@ -174,6 +174,7 @@ MAKE_FLAGS += ${_MODQT5_SETUP} > > > MODQT5_USE_CXX11 ?= Yes > > > .if ${MODQT5_USE_CXX11:L} == "yes" > > > COMPILER ?= base-clang ports-gcc > > > +COMPILER_LANGS = c c++ > > > ONLY_FOR_ARCHS ?= ${CXX11_ARCHS} > > > # useful? > > > _MODQT5_SETUP += CC=${CC} CXX=${CXX} > > > Index: x11/qt6/qt6.port.mk > > > =================================================================== > > > RCS file: /cvs/ports/x11/qt6/qt6.port.mk,v > > > diff -u -p -r1.13 qt6.port.mk > > > --- x11/qt6/qt6.port.mk 10 Aug 2025 05:30:00 -0000 1.13 > > > +++ x11/qt6/qt6.port.mk 20 Nov 2025 22:01:59 -0000 > > > @@ -58,6 +58,7 @@ MODQT6_USE_CXX17 ?= Yes > > > > > > .if ${MODQT6_USE_CXX17:L} == "yes" > > > COMPILER ?= base-clang ports-gcc > > > +COMPILER_LANGS ?= c c++ > > > ONLY_FOR_ARCHS ?= ${CXX11_ARCHS} > > > .endif > > > > > > > > -- :wq Claudio