Jean-Baptiste Kempf pushed to branch master at VideoLAN / VLC
Commits:
df1dfd16 by Alexandre Janniaux at 2026-01-22T00:56:48+01:00
qt: Makefile.am: disable vlc-qt-check on iOS/tvOS/xrOS
- - - - -
a07e6deb by Alexandre Janniaux at 2026-01-22T00:56:48+01:00
qt: disable vlc-qt-check on iOS/tvOS/visionOS
Process spawning via posix_spawn is not allowed on iOS platforms.
The vlc-qt-check helper spawns a separate process to verify Qt
functionality, which fails on iOS/tvOS/visionOS.
The Qt interface will initialize directly without the pre-check on
these platforms.
- - - - -
f8614fb6 by Alexandre Janniaux at 2026-01-22T00:56:48+01:00
qt: Makefile.am: restrict Cocoa to macos
HAVE_DARWIN applies to all Apple platforms (macOS, iOS, tvOS, watchOS,
visionOS), while HAVE_OSX is macOS-specific. The Cocoa framework
(AppKit) is only available on macOS.
- - - - -
342bd9d2 by Alexandre Janniaux at 2026-01-22T00:56:48+01:00
qt: qt6.pro: add qios platform for ios target
- - - - -
49237614 by Alexandre Janniaux at 2026-01-22T00:56:48+01:00
qt: link against the Qt iOS platform
- - - - -
7a7342f0 by Alexandre Janniaux at 2026-01-22T00:56:48+01:00
qt: compositor_platform: enable the compositor for iOS
- - - - -
cb4b7b93 by Alexandre Janniaux at 2026-01-22T00:56:48+01:00
qt: enable UI when detecting iOS platform
Add 'ios' to the Cocoa platform check for proper Qt platform integration.
- - - - -
5 changed files:
- modules/gui/qt/Makefile.am
- modules/gui/qt/maininterface/compositor_platform.cpp
- modules/gui/qt/plugins.hpp
- modules/gui/qt/qt.cpp
- modules/gui/qt/qt6.pro
Changes:
=====================================
modules/gui/qt/Makefile.am
=====================================
@@ -56,7 +56,7 @@ libqt_plugin_la_CXXFLAGS += -DQT_HAS_LIBATOMIC
libqt_plugin_la_LIBADD += -latomic
endif
libqt_plugin_la_LDFLAGS = $(AM_LDFLAGS) $(QT_LDFLAGS)
-if HAVE_DARWIN
+if HAVE_OSX
libqt_plugin_la_LDFLAGS += -Wl,-framework,Cocoa
endif
@@ -1587,6 +1587,8 @@ gui_LTLIBRARIES += libqt_plugin.la
BUILT_SOURCES += $(nodist_libqt_plugin_la_SOURCES)
if !HAVE_WIN32
if !HAVE_OS2
+if !HAVE_IOS_OR_TVOS
+if !HAVE_XROS
pkglibexec_PROGRAMS = vlc-qt-check
all-local: $(builddir)/../../vlc-qt-check
@@ -1594,6 +1596,8 @@ $(builddir)/../../vlc-qt-check: vlc-qt-check
$(AM_V_GEN)cd ../../ && $(LN_S) -f gui/qt/vlc-qt-check . && chmod +x
vlc-qt-check
endif
endif
+endif
+endif
base_model_test_SOURCES = tests/test_base_model.cpp \
util/base_model.cpp util/base_model.hpp util/base_model_p.hpp
=====================================
modules/gui/qt/maininterface/compositor_platform.cpp
=====================================
@@ -55,7 +55,7 @@ bool CompositorPlatform::init()
#endif
#ifdef __APPLE__
- if (platformName == QLatin1String("cocoa"))
+ if (platformName == QLatin1String("cocoa") || platformName ==
QLatin1String("ios"))
return true;
#endif
=====================================
modules/gui/qt/plugins.hpp
=====================================
@@ -80,5 +80,7 @@
Q_IMPORT_PLUGIN(QXdgDesktopPortalThemePlugin)
#elif defined(__EMSCRIPTEN__)
Q_IMPORT_PLUGIN(QWasmIntegrationPlugin)
+#elif defined(Q_OS_IOS)
+ Q_IMPORT_PLUGIN(QIOSIntegrationPlugin)
#endif
#endif
=====================================
modules/gui/qt/qt.cpp
=====================================
@@ -557,8 +557,9 @@ static int OpenInternal( qt_intf_t *p_intf )
return VLC_EGENERIC;
#endif
-#if (_POSIX_SPAWN >= 0)
+#if (_POSIX_SPAWN >= 0) && !defined(TARGET_OS_IPHONE)
/* Check if QApplication works */
+ /* Note: Disabled on iOS/tvOS/visionOS as process spawning is not allowed
*/
char *path = config_GetSysPath(VLC_PKG_LIBEXEC_DIR, "vlc-qt-check");
if (unlikely(path == NULL))
return VLC_ENOMEM;
@@ -1112,7 +1113,7 @@ static void *Thread( void *obj )
app.installEventFilter(new DismissPopupEventFilter(&app));
}
else if( platform == QLatin1String("windows") || platform ==
QLatin1String("direct2d") ) { }
- else if( platform == QLatin1String("cocoa") ) { }
+ else if( platform == QLatin1String("cocoa") || platform ==
QLatin1String("ios") ) { }
else
{
msg_Err( p_intf, "unknown Qt platform: %s", qtu(platform) );
=====================================
modules/gui/qt/qt6.pro
=====================================
@@ -25,6 +25,11 @@ macx {
QTPLUGIN += qcocoa qmacstyle
}
+ios {
+QTPLUGIN += qios
+CONFIG += no_framework
+}
+
emscripten {
QTPLUGIN += qwasm
}
View it on GitLab:
https://code.videolan.org/videolan/vlc/-/compare/05d60dfed9df09cd4931d117cae535809243c6ce...cb4b7b93d8ed54546247d1ad9b466faa3d1795a2
--
View it on GitLab:
https://code.videolan.org/videolan/vlc/-/compare/05d60dfed9df09cd4931d117cae535809243c6ce...cb4b7b93d8ed54546247d1ad9b466faa3d1795a2
You're receiving this email because of your account on code.videolan.org.
VideoLAN code repository instance_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits