On Sun Oct 25, 2026 at 07:43:26AM +0000, Stuart Henderson wrote:
> On 2026/10/24 00:21, Rafael Sadowski wrote:
> > x11/qt6/qtmultimedia: Makefile distinfo
> > x11/qt6/qtmultimedia/patches:
> > patch-src_multimedia_CMakeLists_txt
> >
> > patch-src_plugins_multimedia_ffmpeg_CMakeLists_txt
> > x11/qt6/qtmultimedia/pkg: PLIST
>
> this fails on i386:
>
>
> [155/476] /pobj/qt6-qtmultimedia-6.12.0/bin/c++ -DDR_WAV_NO_STDIO
> -DMultimedia_EXPORTS -DQT_ASCII_CAST_WARNINGS -DQT_BUILDING_QT
> -DQT_BUILD_MULTIMEDIA_LIB -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB
> -DQT_DEPRECATED_WARNINGS
> -DQT_ENABLE_STRICT_MODE_UP_TO="QT_VERSION_CHECK(6,11,0)"
> -DQT_EXPLICIT_QFILE_CONSTRUCTION_FROM_PATH -DQT_GUI_LIB -DQT_LEAN_HEADERS=1
> -DQT_MOC_COMPAT -DQT_NETWORK_LIB -DQT_NO_CAST_FROM_ASCII
> -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_FOREACH
> -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT
> -DQT_NO_QASCONST -DQT_NO_QEXCHANGE -DQT_NO_QPAIR=1 -DQT_NO_QSNPRINTF
> -DQT_NO_SINGLE_ARGUMENT_QHASH_OVERLOAD=1 -DQT_NO_STD_FORMAT_SUPPORT
> -DQT_USE_QSTRINGBUILDER -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE
> -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/src/multimedia/Multimedia_autogen/include
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include/QtMultimedia
> -I/pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/src/multimedia
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include/QtMultimedia/6.12.0
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include/QtMultimedia/6.12.0/QtMultimedia
>
> -I/pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/3rdparty/tlsf
> -isystem
> /pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia/../3rdparty/dr_libs
> -isystem /usr/local/include/pipewire-0.3 -isystem /usr/local/include/spa-0.2
> -isystem /usr/local/include/X11/qt6/QtCore -isystem
> /usr/local/include/X11/qt6 -isystem /usr/local/lib/qt6/mkspecs/openbsd-clang
> -isystem /usr/local/include/X11/qt6/QtGui -isystem /usr/X11R6/include
> -isystem /usr/local/include/X11/qt6/QtCore/6.12.0 -isystem
> /usr/local/include/X11/qt6/QtCore/6.12.0/QtCore -isystem
> /usr/local/include/X11/qt6/QtGui/6.12.0 -isystem
> /usr/local/include/X11/qt6/QtGui/6.12.0/QtGui -isystem
> /usr/local/include/X11/qt6/QtConcurrent -isystem
> /usr/local/include/X11/qt6/QtNetwork -isystem
> /usr/local/include/X11/qt6/QtDBus -O2 -pipe -msse2 -I/usr/local/include
> -DNDEBUG -O2 -std=gnu++17 -fPIC -fvisibility=hidden
> -fvisibility-inlines-hidden -Wall -Wextra -fPIC -pthread
> -ftrivial-auto-var-init=pattern -fstack-protector-strong -fno-exceptions -MD
> -MT
> src/multimedia/CMakeFiles/Multimedia.dir/pipewire/qpipewire_propertydict.cpp.o
> -MF
> src/multimedia/CMakeFiles/Multimedia.dir/pipewire/qpipewire_propertydict.cpp.o.d
> -o
> src/multimedia/CMakeFiles/Multimedia.dir/pipewire/qpipewire_propertydict.cpp.o
> -c
> /pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia/pipewire/qpipewire_propertydict.cpp
> FAILED:
> src/multimedia/CMakeFiles/Multimedia.dir/pipewire/qpipewire_propertydict.cpp.o
>
> /pobj/qt6-qtmultimedia-6.12.0/bin/c++ -DDR_WAV_NO_STDIO -DMultimedia_EXPORTS
> -DQT_ASCII_CAST_WARNINGS -DQT_BUILDING_QT -DQT_BUILD_MULTIMEDIA_LIB
> -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_DEPRECATED_WARNINGS
> -DQT_ENABLE_STRICT_MODE_UP_TO="QT_VERSION_CHECK(6,11,0)"
> -DQT_EXPLICIT_QFILE_CONSTRUCTION_FROM_PATH -DQT_GUI_LIB -DQT_LEAN_HEADERS=1
> -DQT_MOC_COMPAT -DQT_NETWORK_LIB -DQT_NO_CAST_FROM_ASCII
> -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_EXCEPTIONS -DQT_NO_FOREACH
> -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT
> -DQT_NO_QASCONST -DQT_NO_QEXCHANGE -DQT_NO_QPAIR=1 -DQT_NO_QSNPRINTF
> -DQT_NO_SINGLE_ARGUMENT_QHASH_OVERLOAD=1 -DQT_NO_STD_FORMAT_SUPPORT
> -DQT_USE_QSTRINGBUILDER -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE
> -D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_FAST
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/src/multimedia/Multimedia_autogen/include
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include/QtMultimedia
> -I/pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/src/multimedia
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include/QtMultimedia/6.12.0
> -I/pobj/qt6-qtmultimedia-6.12.0/build-i386/include/QtMultimedia/6.12.0/QtMultimedia
>
> -I/pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/3rdparty/tlsf
> -isystem
> /pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia/../3rdparty/dr_libs
> -isystem /usr/local/include/pipewire-0.3 -isystem /usr/local/include/spa-0.2
> -isystem /usr/local/include/X11/qt6/QtCore -isystem
> /usr/local/include/X11/qt6 -isystem /usr/local/lib/qt6/mkspecs/openbsd-clang
> -isystem /usr/local/include/X11/qt6/QtGui -isystem /usr/X11R6/include
> -isystem /usr/local/include/X11/qt6/QtCore/6.12.0 -isystem
> /usr/local/include/X11/qt6/QtCore/6.12.0/QtCore -isystem
> /usr/local/include/X11/qt6/QtGui/6.12.0 -isystem
> /usr/local/include/X11/qt6/QtGui/6.12.0/QtGui -isystem
> /usr/local/include/X11/qt6/QtConcurrent -isystem
> /usr/local/include/X11/qt6/QtNetwork -isystem
> /usr/local/include/X11/qt6/QtDBus -O2 -pipe -msse2 -I/usr/local/include
> -DNDEBUG -O2 -std=gnu++17 -fPIC -fvisibility=hidden
> -fvisibility-inlines-hidden -Wall -Wextra -fPIC -pthread
> -ftrivial-auto-var-init=pattern -fstack-protector-strong -fno-exceptions -MD
> -MT
> src/multimedia/CMakeFiles/Multimedia.dir/pipewire/qpipewire_propertydict.cpp.o
> -MF
> src/multimedia/CMakeFiles/Multimedia.dir/pipewire/qpipewire_propertydict.cpp.o.d
> -o
> src/multimedia/CMakeFiles/Multimedia.dir/pipewire/qpipewire_propertydict.cpp.o
> -c
> /pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia/pipewire/qpipewire_propertydict.cpp
> /pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia/pipewire/qpipewire_propertydict.cpp:34:51:
> error: non-constant-expression cannot be narrowed from type 'uint32_t' (aka
> 'unsigned int') to 'qsizetype' (aka 'int') in initializer list
> [-Wc++11-narrowing]
> 34 | QSpan<const spa_dict_item> items{ dict.items, dict.n_items };
> | ^~~~~~~~~~~~
> /pobj/qt6-qtmultimedia-6.12.0/qtmultimedia-everywhere-src-6.12.0/src/multimedia/pipewire/qpipewire_propertydict.cpp:34:51:
> note: insert an explicit cast to silence this issue
> 34 | QSpan<const spa_dict_item> items{ dict.items, dict.n_items };
> | ^~~~~~~~~~~~
> |
> static_cast<qsizetype>( )
> 1 error generated.
> ninja: build stopped: subcommand failed.
>
> *** Error 1 in x11/qt6/qtmultimedia (/usr/ports/devel/cmake/cmake.port.mk:40
> 'do-build': @cd /pobj/qt6-qtmultimedia-6.12.0/build-i386 && exe...)
> *** Error 2 in x11/qt6/qtmultimedia
> (/usr/ports/infrastructure/mk/bsd.port.mk:3090
> '/pobj/qt6-qtmultimedia-6.12.0/build-i386/.build_done': @...)
> *** Error 2 in x11/qt6/qtmultimedia
> (/usr/ports/infrastructure/mk/bsd.port.mk:2729 'build':
> @lock=qt6-qtmultimedia-6.12.0; export _LOCKS_HE...)
> ===> Exiting x11/qt6/qtmultimedia with an error
> *** Error 1 in /usr/ports (infrastructure/mk/bsd.port.subdir.mk:144 'build':
> @: ${echo_msg:=echo}; : ${target:=build}; for i in ; do eval...)
> >>> Ended at 1792913162.04
> max_stuck=46.30/depends=19.78/show-prepare-results=3.15/extract=1.75/patch=0.35/configure=18.39/build=545.83
> Error: job failed with 512 on i386-2 at 1792913162
spa_dict::n_items is uint32_t and qsizetype is int on i386 and long long
on amd64. I think this cast should fix the issue.
Index: patches/patch-src_multimedia_pipewire_qpipewire_propertydict_cpp
===================================================================
RCS file: patches/patch-src_multimedia_pipewire_qpipewire_propertydict_cpp
diff -N patches/patch-src_multimedia_pipewire_qpipewire_propertydict_cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_multimedia_pipewire_qpipewire_propertydict_cpp 25 Oct
2026 07:52:04 -0000
@@ -0,0 +1,12 @@
+Index: src/multimedia/pipewire/qpipewire_propertydict.cpp
+--- src/multimedia/pipewire/qpipewire_propertydict.cpp.orig
++++ src/multimedia/pipewire/qpipewire_propertydict.cpp
+@@ -31,7 +31,7 @@ PwPropertiesHandle makeProperties(QSpan<const spa_dict
+
+ PwPropertyDict toPropertyDict(const spa_dict &dict)
+ {
+- QSpan<const spa_dict_item> items{ dict.items, dict.n_items };
++ QSpan<const spa_dict_item> items{ dict.items,
static_cast<qsizetype>(dict.n_items) };
+
+ PwPropertyDict map;
+ for (const spa_dict_item &item : items)
Index: patches/patch-src_multimedia_pipewire_qpipewire_support_cpp
===================================================================
RCS file: patches/patch-src_multimedia_pipewire_qpipewire_support_cpp
diff -N patches/patch-src_multimedia_pipewire_qpipewire_support_cpp
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_multimedia_pipewire_qpipewire_support_cpp 25 Oct 2026
07:52:04 -0000
@@ -0,0 +1,12 @@
+Index: src/multimedia/pipewire/qpipewire_support.cpp
+--- src/multimedia/pipewire/qpipewire_support.cpp.orig
++++ src/multimedia/pipewire/qpipewire_support.cpp
+@@ -79,7 +79,7 @@ void PWThreadedEventLoop::signal(bool waitForAccept)
+ // debug support
+ QDebug operator<<(QDebug dbg, const spa_dict &dict)
+ {
+- QSpan<const spa_dict_item> items{ dict.items, dict.n_items };
++ QSpan<const spa_dict_item> items{ dict.items,
static_cast<qsizetype>(dict.n_items) };
+
+ QDebugStateSaver saver(dbg);
+ dbg.nospace();