From 03e9c6f4a62582837fc9f5961ecbccd0a3d1b5d6 Mon Sep 17 00:00:00 2001 From: Mike Krus Date: Tue, 16 Feb 2016 14:29:59 +0000 Subject: Add support for Apple tvOS MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pass -xplatform macx-tvos-clang to configure to build. Builds device and simulator by default. Added ‘uikit’ platform with the common setup. Also added QT_PLATFORM_UIKIT define (undocumented). qmake config defines tvos (but not ios). tvOS is 64bits only (QT_ARCH is arm64) and requires bitcode to be embedded in the binary. A new ‘bitcode’ configuration was added. For ReleaseDevice builds (which get archived and push to the store), bitcode is actually embedded (-fembed-bitcode passed to clang). For all other configurations, only using bitcode markers to keep file size down (-fembed-bitcode-marker). Build disables Widgets in qtbase, and qtscript (unsupported, would require fixes to JavaScriptCore source code). Qpa same as on iOS but disables device orientation, status bar, clipboard, menus, dialogs which are not supported on tvOS. Change-Id: I645804fd933be0befddeeb43095a74d2c178b2ba Reviewed-by: Tor Arne Vestbø --- tests/auto/auto.pro | 2 +- tests/auto/corelib/corelib.pro | 2 +- tests/auto/corelib/io/qlockfile/tst_qlockfile.cpp | 2 +- tests/auto/corelib/kernel/kernel.pro | 2 +- tests/auto/gui/gui.pro | 2 +- tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp | 5 +++-- tests/auto/widgets/styles/styles.pro | 2 +- 7 files changed, 9 insertions(+), 8 deletions(-) (limited to 'tests/auto') diff --git a/tests/auto/auto.pro b/tests/auto/auto.pro index c40e3d1140..8a3c39e9b1 100644 --- a/tests/auto/auto.pro +++ b/tests/auto/auto.pro @@ -19,7 +19,7 @@ SUBDIRS += \ installed_cmake.depends = cmake -ios: SUBDIRS = corelib gui +uikit: SUBDIRS = corelib gui wince: SUBDIRS -= printsupport cross_compile: SUBDIRS -= tools cmake installed_cmake diff --git a/tests/auto/corelib/corelib.pro b/tests/auto/corelib/corelib.pro index 4d88b04828..169579bd6b 100644 --- a/tests/auto/corelib/corelib.pro +++ b/tests/auto/corelib/corelib.pro @@ -3,7 +3,7 @@ TEMPLATE=subdirs SUBDIRS = \ kernel -!ios: SUBDIRS += \ +!uikit: SUBDIRS += \ animation \ codecs \ global \ diff --git a/tests/auto/corelib/io/qlockfile/tst_qlockfile.cpp b/tests/auto/corelib/io/qlockfile/tst_qlockfile.cpp index afa3620b1a..b21701f341 100644 --- a/tests/auto/corelib/io/qlockfile/tst_qlockfile.cpp +++ b/tests/auto/corelib/io/qlockfile/tst_qlockfile.cpp @@ -281,7 +281,7 @@ void tst_QLockFile::staleLockFromCrashedProcessReusedPid() { #if defined(QT_NO_PROCESS) QSKIP("This test requires QProcess support"); -#elif defined(Q_OS_WINRT) || defined(Q_OS_IOS) +#elif defined(Q_OS_WINRT) || defined(QT_PLATFORM_UIKIT) QSKIP("We cannot retrieve information about other processes on this platform."); #else const QString fileName = dir.path() + "/staleLockFromCrashedProcessReusedPid"; diff --git a/tests/auto/corelib/kernel/kernel.pro b/tests/auto/corelib/kernel/kernel.pro index f85c39e9e6..397d281c57 100644 --- a/tests/auto/corelib/kernel/kernel.pro +++ b/tests/auto/corelib/kernel/kernel.pro @@ -38,4 +38,4 @@ SUBDIRS=\ # This test is only applicable on Windows !win32*|winrt: SUBDIRS -= qwineventnotifier -android|ios: SUBDIRS -= qsharedmemory qsystemsemaphore +android|uikit: SUBDIRS -= qsharedmemory qsystemsemaphore diff --git a/tests/auto/gui/gui.pro b/tests/auto/gui/gui.pro index d3393663ed..d6aa5e01ae 100644 --- a/tests/auto/gui/gui.pro +++ b/tests/auto/gui/gui.pro @@ -3,7 +3,7 @@ TEMPLATE=subdirs SUBDIRS = \ kernel -!ios: SUBDIRS += \ +!uikit: SUBDIRS += \ image \ math3d \ painting \ diff --git a/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp b/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp index 200c8a6ced..301ddf441e 100644 --- a/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp +++ b/tests/auto/widgets/kernel/qwidget_window/tst_qwidget_window.cpp @@ -330,8 +330,9 @@ void tst_QWidget_window::tst_showWithoutActivating() QSKIP("Cocoa: This fails. Figure out why."); else if (platformName != QStringLiteral("xcb") && platformName != QStringLiteral("windows") - && platformName != QStringLiteral("ios")) - QSKIP("Qt::WA_ShowWithoutActivating is currently supported only on xcb, windows, and ios platforms."); + && platformName != QStringLiteral("ios") + && platformName != QStringLiteral("tvos")) + QSKIP("Qt::WA_ShowWithoutActivating is currently supported only on xcb, windows, and ios/tvos platforms."); QWidget w1; w1.setAttribute(Qt::WA_ShowWithoutActivating); diff --git a/tests/auto/widgets/styles/styles.pro b/tests/auto/widgets/styles/styles.pro index b679b70537..952a659eaa 100644 --- a/tests/auto/widgets/styles/styles.pro +++ b/tests/auto/widgets/styles/styles.pro @@ -12,5 +12,5 @@ SUBDIRS=\ !mac:SUBDIRS -= \ qmacstyle \ -ios|android|qnx: SUBDIRS -= \ +uikit|android|qnx: SUBDIRS -= \ qstylesheetstyle \ -- cgit v1.2.3