summaryrefslogtreecommitdiffstats
path: root/tests/manual/ios_assets
diff options
context:
space:
mode:
Diffstat (limited to 'tests/manual/ios_assets')
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon1024x1024.pngbin0 -> 22579 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon167x167.pngbin0 -> 3369 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png (renamed from tests/manual/ios_assets/appicon/AppIcon60x60@2x.png)bin2335 -> 2335 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon76x76@2x~ipad.png (renamed from tests/manual/ios_assets/appicon/AppIcon76x76@2x~ipad.png)bin3060 -> 3060 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/Contents.json (renamed from tests/manual/ios_assets/Assets.xcassets/AppIcon.appiconset/Contents.json)4
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/Contents.json (renamed from tests/manual/ios_assets/Assets.xcassets/Contents.json)0
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Contents.json (renamed from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Contents.json)0
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-16.png (renamed from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-16.png)bin173 -> 173 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-32.png (renamed from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-32.png)bin407 -> 407 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-48.png (renamed from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-48.png)bin750 -> 750 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/AppIcon1024x1024.pngbin0 -> 22579 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/Contents.json104
-rw-r--r--tests/manual/ios_assets/AssetsXcode14.3.xcassets/Contents.json6
-rw-r--r--tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Contents.json23
-rw-r--r--tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-16.pngbin0 -> 173 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-32.pngbin0 -> 407 bytes
-rw-r--r--tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-48.pngbin0 -> 750 bytes
-rw-r--r--tests/manual/ios_assets/CMakeLists.txt44
-rw-r--r--tests/manual/ios_assets/Info.ios.cmake.xcode.13.0.plist (renamed from tests/manual/ios_assets/Info.ios.cmake.plist)28
-rw-r--r--tests/manual/ios_assets/Info.ios.cmake.xcode.14.3.plist54
-rw-r--r--tests/manual/ios_assets/Info.ios.qmake.xcode.13.0.plist (renamed from tests/manual/ios_assets/Info.ios.qmake.plist)22
-rw-r--r--tests/manual/ios_assets/Info.ios.qmake.xcode.14.3.plist37
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon29x29.pngbin340 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon29x29@2x.pngbin992 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon29x29@2x~ipad.pngbin992 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon29x29~ipad.pngbin340 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon40x40@2x.pngbin1444 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon40x40@2x~ipad.pngbin1444 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon40x40~ipad.pngbin585 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon50x50@2x~ipad.pngbin1913 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon50x50~ipad.pngbin794 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon57x57.pngbin967 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon57x57@2x.pngbin2200 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon72x72@2x~ipad.pngbin2897 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon72x72~ipad.pngbin1301 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/appicon/AppIcon76x76~ipad.pngbin1386 -> 0 bytes
-rw-r--r--tests/manual/ios_assets/ios_assets.pro24
-rw-r--r--tests/manual/ios_assets/main.cpp2
-rw-r--r--tests/manual/ios_assets/utils.mm2
39 files changed, 285 insertions, 65 deletions
diff --git a/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon1024x1024.png b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon1024x1024.png
new file mode 100644
index 0000000000..91d71a1b45
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon1024x1024.png
Binary files differ
diff --git a/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon167x167.png b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon167x167.png
new file mode 100644
index 0000000000..c184c7f93d
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon167x167.png
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon60x60@2x.png b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png
index 14eb31e401..14eb31e401 100644
--- a/tests/manual/ios_assets/appicon/AppIcon60x60@2x.png
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon76x76@2x~ipad.png b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon76x76@2x~ipad.png
index ffa1d4729a..ffa1d4729a 100644
--- a/tests/manual/ios_assets/appicon/AppIcon76x76@2x~ipad.png
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon76x76@2x~ipad.png
Binary files differ
diff --git a/tests/manual/ios_assets/Assets.xcassets/AppIcon.appiconset/Contents.json b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/Contents.json
index 9221b9bb1a..c7cc581ac4 100644
--- a/tests/manual/ios_assets/Assets.xcassets/AppIcon.appiconset/Contents.json
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/Contents.json
@@ -31,6 +31,7 @@
"size" : "40x40"
},
{
+ "filename" : "AppIcon60x60@2x.png",
"idiom" : "iphone",
"scale" : "2x",
"size" : "60x60"
@@ -76,16 +77,19 @@
"size" : "76x76"
},
{
+ "filename" : "AppIcon76x76@2x~ipad.png",
"idiom" : "ipad",
"scale" : "2x",
"size" : "76x76"
},
{
+ "filename" : "AppIcon167x167.png",
"idiom" : "ipad",
"scale" : "2x",
"size" : "83.5x83.5"
},
{
+ "filename" : "AppIcon1024x1024.png",
"idiom" : "ios-marketing",
"scale" : "1x",
"size" : "1024x1024"
diff --git a/tests/manual/ios_assets/Assets.xcassets/Contents.json b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Contents.json
index 73c00596a7..73c00596a7 100644
--- a/tests/manual/ios_assets/Assets.xcassets/Contents.json
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Contents.json
diff --git a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Contents.json b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Contents.json
index 2108ce2651..2108ce2651 100644
--- a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Contents.json
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Contents.json
diff --git a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-16.png b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-16.png
index 670beb4fbb..670beb4fbb 100644
--- a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-16.png
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-16.png
Binary files differ
diff --git a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-32.png b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-32.png
index ee159b6061..ee159b6061 100644
--- a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-32.png
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-32.png
Binary files differ
diff --git a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-48.png b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-48.png
index f0783cd533..f0783cd533 100644
--- a/tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-48.png
+++ b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-48.png
Binary files differ
diff --git a/tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/AppIcon1024x1024.png b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/AppIcon1024x1024.png
new file mode 100644
index 0000000000..91d71a1b45
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/AppIcon1024x1024.png
Binary files differ
diff --git a/tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/Contents.json b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/Contents.json
new file mode 100644
index 0000000000..7baa233d94
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/Contents.json
@@ -0,0 +1,104 @@
+{
+ "images" : [
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "3x",
+ "size" : "20x20"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "3x",
+ "size" : "29x29"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "38x38"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "3x",
+ "size" : "38x38"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "3x",
+ "size" : "40x40"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "60x60"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "3x",
+ "size" : "60x60"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "64x64"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "3x",
+ "size" : "64x64"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "68x68"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "76x76"
+ },
+ {
+ "idiom" : "universal",
+ "platform" : "ios",
+ "scale" : "2x",
+ "size" : "83.5x83.5"
+ },
+ {
+ "filename" : "AppIcon1024x1024.png",
+ "idiom" : "universal",
+ "platform" : "ios",
+ "size" : "1024x1024"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Contents.json b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Contents.json
new file mode 100644
index 0000000000..73c00596a7
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Contents.json
@@ -0,0 +1,6 @@
+{
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Contents.json b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Contents.json
new file mode 100644
index 0000000000..2108ce2651
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Contents.json
@@ -0,0 +1,23 @@
+{
+ "images" : [
+ {
+ "filename" : "Face-16.png",
+ "idiom" : "universal",
+ "scale" : "1x"
+ },
+ {
+ "filename" : "Face-32.png",
+ "idiom" : "universal",
+ "scale" : "2x"
+ },
+ {
+ "filename" : "Face-48.png",
+ "idiom" : "universal",
+ "scale" : "3x"
+ }
+ ],
+ "info" : {
+ "author" : "xcode",
+ "version" : 1
+ }
+}
diff --git a/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-16.png b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-16.png
new file mode 100644
index 0000000000..670beb4fbb
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-16.png
Binary files differ
diff --git a/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-32.png b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-32.png
new file mode 100644
index 0000000000..ee159b6061
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-32.png
Binary files differ
diff --git a/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-48.png b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-48.png
new file mode 100644
index 0000000000..f0783cd533
--- /dev/null
+++ b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-48.png
Binary files differ
diff --git a/tests/manual/ios_assets/CMakeLists.txt b/tests/manual/ios_assets/CMakeLists.txt
index a19fe5a2e6..a9abe52b02 100644
--- a/tests/manual/ios_assets/CMakeLists.txt
+++ b/tests/manual/ios_assets/CMakeLists.txt
@@ -22,12 +22,20 @@ target_link_libraries(tst_manual_ios_assets PRIVATE
)
# Custom Info.plist
-set_target_properties(tst_manual_ios_assets
- PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.ios.cmake.plist")
+if(IOS)
+ if(XCODE_VERSION AND XCODE_VERSION VERSION_LESS "14")
+ set(plist_path "${CMAKE_CURRENT_SOURCE_DIR}/Info.ios.cmake.xcode.13.0.plist")
+ else()
+ set(plist_path "${CMAKE_CURRENT_SOURCE_DIR}/Info.ios.cmake.xcode.14.3.plist")
+ endif()
+ set_target_properties(tst_manual_ios_assets
+ PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${plist_path}")
+endif()
# Custom resources
file(GLOB_RECURSE text_files CONFIGURE_DEPENDS "*.txt")
if(text_files)
+ list(FILTER text_files EXCLUDE REGEX CMakeLists.txt)
target_sources(tst_manual_ios_assets PRIVATE ${text_files})
# On iOS the 'Resources' prefix is removed by Xcode because on iOS app bundles are shallow,
# so the final location of the text file will be
@@ -40,22 +48,36 @@ if(text_files)
endif()
# App icons
-file(GLOB_RECURSE app_icons CONFIGURE_DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/appicon/AppIcon*.png")
-if(IOS AND app_icons)
- target_sources(tst_manual_ios_assets PRIVATE ${app_icons})
- set_source_files_properties(
- ${app_icons}
- PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
-endif()
+# https://developer.apple.com/library/archive/qa/qa1686/_index.html
+# https://help.apple.com/xcode/mac/current/#/dev10510b1f7
+# https://web.archive.org/web/20180124234409/https://developer.apple.com/ios/human-interface-guidelines/icons-and-images/app-icon/
+# https://doc.qt.io/qt-6/ios-platform-notes.html#icons
+# No need to copy the icons into the bundle manually when using Xcode 13+.
+# - rely on Xcode 13 to copy the needed icon files that are specified in the asset catalog (all the
+# required ones should be specified manually)
+# - rely on Xcode 14 to generate the needed icon files based on the 1024x1024 sized image in the
+# asset catalog
-# Asset catalog with images
+# Asset catalog with images and icons.
if(IOS)
enable_language(OBJCXX)
- set(asset_catalog_path "${CMAKE_CURRENT_SOURCE_DIR}/Assets.xcassets")
+ if(XCODE_VERSION AND XCODE_VERSION VERSION_LESS "14")
+ set(asset_catalog_path "${CMAKE_CURRENT_SOURCE_DIR}/AssetsXcode13.0.xcassets")
+ else()
+ set(asset_catalog_path "${CMAKE_CURRENT_SOURCE_DIR}/AssetsXcode14.3.xcassets")
+ endif()
target_sources(tst_manual_ios_assets PRIVATE "${asset_catalog_path}")
set_source_files_properties(
${asset_catalog_path}
PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
+
+ # Make sure asset catalog compilation generates the needed app icons image sizes.
+ # This might not be needed in a future Qt version where qt_add_executable might do it
+ # automatically. Unclear how to do it cleanly though, because specifying the option when
+ # the asset catalog doesn't have an AppIcon set will cause a build failure.
+ set_target_properties(tst_manual_ios_assets PROPERTIES
+ XCODE_ATTRIBUTE_ASSETCATALOG_COMPILER_APPICON_NAME AppIcon)
+
target_sources(tst_manual_ios_assets PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/utils.mm")
endif()
diff --git a/tests/manual/ios_assets/Info.ios.cmake.plist b/tests/manual/ios_assets/Info.ios.cmake.xcode.13.0.plist
index ebbb6d93ef..b83c922e24 100644
--- a/tests/manual/ios_assets/Info.ios.cmake.plist
+++ b/tests/manual/ios_assets/Info.ios.cmake.xcode.13.0.plist
@@ -33,13 +33,15 @@
<string></string>
<key>CFBundleDevelopmentRegion</key>
- <string>English</string>
+ <string>en</string>
+ <key>CFBundleAllowMixedLocalizations</key>
+ <true/>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>UILaunchStoryboardName</key>
- <string>CustomLaunchScreen.storyboard</string>
+ <string>CustomLaunchScreen</string>
<key>UISupportedInterfaceOrientations</key>
<array>
@@ -55,13 +57,10 @@
<dict>
<key>CFBundleIconFiles</key>
<array>
- <string>AppIcon29x29.png</string>
- <string>AppIcon29x29@2x.png</string>
- <string>AppIcon40x40@2x.png</string>
- <string>AppIcon57x57.png</string>
- <string>AppIcon57x57@2x.png</string>
<string>AppIcon60x60@2x.png</string>
</array>
+ <key>CFBundleIconName</key>
+ <string>AppIcon</string>
</dict>
</dict>
<key>CFBundleIcons~ipad</key>
@@ -70,21 +69,6 @@
<dict>
<key>CFBundleIconFiles</key>
<array>
- <string>AppIcon29x29.png</string>
- <string>AppIcon29x29@2x.png</string>
- <string>AppIcon40x40@2x.png</string>
- <string>AppIcon57x57.png</string>
- <string>AppIcon57x57@2x.png</string>
- <string>AppIcon60x60@2x.png</string>
- <string>AppIcon29x29~ipad.png</string>
- <string>AppIcon29x29@2x~ipad.png</string>
- <string>AppIcon40x40~ipad.png</string>
- <string>AppIcon40x40@2x~ipad.png</string>
- <string>AppIcon50x50~ipad.png</string>
- <string>AppIcon50x50@2x~ipad.png</string>
- <string>AppIcon72x72~ipad.png</string>
- <string>AppIcon72x72@2x~ipad.png</string>
- <string>AppIcon76x76~ipad.png</string>
<string>AppIcon76x76@2x~ipad.png</string>
</array>
</dict>
diff --git a/tests/manual/ios_assets/Info.ios.cmake.xcode.14.3.plist b/tests/manual/ios_assets/Info.ios.cmake.xcode.14.3.plist
new file mode 100644
index 0000000000..282ad81c94
--- /dev/null
+++ b/tests/manual/ios_assets/Info.ios.cmake.xcode.14.3.plist
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+
+ <key>CFBundleName</key>
+ <string>$(PRODUCT_NAME)</string>
+
+ <key>CFBundleDisplayName</key>
+ <string>$(PRODUCT_NAME)</string>
+
+ <key>CFBundleIdentifier</key>
+ <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
+
+ <key>CFBundleExecutable</key>
+ <string>$(EXECUTABLE_NAME)</string>
+
+ <key>CFBundleVersion</key>
+ <string>$(CURRENT_PROJECT_VERSION)</string>
+
+ <key>CFBundleShortVersionString</key>
+ <string>$(MARKETING_VERSION)</string>
+
+ <key>NSHumanReadableCopyright</key>
+ <string></string>
+
+ <key>CFBundleIconFile</key>
+ <string></string>
+
+ <key>CFBundleDevelopmentRegion</key>
+ <string>en</string>
+ <key>CFBundleAllowMixedLocalizations</key>
+ <true/>
+
+ <key>LSRequiresIPhoneOS</key>
+ <true/>
+
+ <key>UILaunchStoryboardName</key>
+ <string>CustomLaunchScreen</string>
+
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationPortraitUpsideDown</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+</dict>
+</plist>
diff --git a/tests/manual/ios_assets/Info.ios.qmake.plist b/tests/manual/ios_assets/Info.ios.qmake.xcode.13.0.plist
index e97150e47b..7b1454beeb 100644
--- a/tests/manual/ios_assets/Info.ios.qmake.plist
+++ b/tests/manual/ios_assets/Info.ios.qmake.xcode.13.0.plist
@@ -40,13 +40,10 @@
<dict>
<key>CFBundleIconFiles</key>
<array>
- <string>AppIcon29x29.png</string>
- <string>AppIcon29x29@2x.png</string>
- <string>AppIcon40x40@2x.png</string>
- <string>AppIcon57x57.png</string>
- <string>AppIcon57x57@2x.png</string>
<string>AppIcon60x60@2x.png</string>
</array>
+ <key>CFBundleIconName</key>
+ <string>AppIcon</string>
</dict>
</dict>
<key>CFBundleIcons~ipad</key>
@@ -55,21 +52,6 @@
<dict>
<key>CFBundleIconFiles</key>
<array>
- <string>AppIcon29x29.png</string>
- <string>AppIcon29x29@2x.png</string>
- <string>AppIcon40x40@2x.png</string>
- <string>AppIcon57x57.png</string>
- <string>AppIcon57x57@2x.png</string>
- <string>AppIcon60x60@2x.png</string>
- <string>AppIcon29x29~ipad.png</string>
- <string>AppIcon29x29@2x~ipad.png</string>
- <string>AppIcon40x40~ipad.png</string>
- <string>AppIcon40x40@2x~ipad.png</string>
- <string>AppIcon50x50~ipad.png</string>
- <string>AppIcon50x50@2x~ipad.png</string>
- <string>AppIcon72x72~ipad.png</string>
- <string>AppIcon72x72@2x~ipad.png</string>
- <string>AppIcon76x76~ipad.png</string>
<string>AppIcon76x76@2x~ipad.png</string>
</array>
</dict>
diff --git a/tests/manual/ios_assets/Info.ios.qmake.xcode.14.3.plist b/tests/manual/ios_assets/Info.ios.qmake.xcode.14.3.plist
new file mode 100644
index 0000000000..9df52cb2f7
--- /dev/null
+++ b/tests/manual/ios_assets/Info.ios.qmake.xcode.14.3.plist
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDisplayName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIconFile</key>
+ <string>${ASSETCATALOG_COMPILER_APPICON_NAME}</string>
+ <key>CFBundleIdentifier</key>
+ <string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
+ <key>CFBundleName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>${QMAKE_SHORT_VERSION}</string>
+ <key>CFBundleSignature</key>
+ <string>${QMAKE_PKGINFO_TYPEINFO}</string>
+ <key>CFBundleVersion</key>
+ <string>${QMAKE_FULL_VERSION}</string>
+ <key>LSRequiresIPhoneOS</key>
+ <true/>
+ <key>MinimumOSVersion</key>
+ <string>${IPHONEOS_DEPLOYMENT_TARGET}</string>
+ <key>UILaunchStoryboardName</key>
+ <string>CustomLaunchScreen</string>
+ <key>UISupportedInterfaceOrientations</key>
+ <array>
+ <string>UIInterfaceOrientationPortrait</string>
+ <string>UIInterfaceOrientationPortraitUpsideDown</string>
+ <string>UIInterfaceOrientationLandscapeLeft</string>
+ <string>UIInterfaceOrientationLandscapeRight</string>
+ </array>
+</dict>
+</plist>
diff --git a/tests/manual/ios_assets/appicon/AppIcon29x29.png b/tests/manual/ios_assets/appicon/AppIcon29x29.png
deleted file mode 100644
index f220ad51a3..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon29x29.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon29x29@2x.png b/tests/manual/ios_assets/appicon/AppIcon29x29@2x.png
deleted file mode 100644
index 69d8a9a3fb..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon29x29@2x.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon29x29@2x~ipad.png b/tests/manual/ios_assets/appicon/AppIcon29x29@2x~ipad.png
deleted file mode 100644
index 69d8a9a3fb..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon29x29@2x~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon29x29~ipad.png b/tests/manual/ios_assets/appicon/AppIcon29x29~ipad.png
deleted file mode 100644
index f220ad51a3..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon29x29~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon40x40@2x.png b/tests/manual/ios_assets/appicon/AppIcon40x40@2x.png
deleted file mode 100644
index 2966b0d866..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon40x40@2x.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon40x40@2x~ipad.png b/tests/manual/ios_assets/appicon/AppIcon40x40@2x~ipad.png
deleted file mode 100644
index 2966b0d866..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon40x40@2x~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon40x40~ipad.png b/tests/manual/ios_assets/appicon/AppIcon40x40~ipad.png
deleted file mode 100644
index 9956f67ba6..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon40x40~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon50x50@2x~ipad.png b/tests/manual/ios_assets/appicon/AppIcon50x50@2x~ipad.png
deleted file mode 100644
index 570f8c9a50..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon50x50@2x~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon50x50~ipad.png b/tests/manual/ios_assets/appicon/AppIcon50x50~ipad.png
deleted file mode 100644
index 9d7b8edc4f..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon50x50~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon57x57.png b/tests/manual/ios_assets/appicon/AppIcon57x57.png
deleted file mode 100644
index 5d558bbb08..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon57x57.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon57x57@2x.png b/tests/manual/ios_assets/appicon/AppIcon57x57@2x.png
deleted file mode 100644
index ea14c9c0b9..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon57x57@2x.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon72x72@2x~ipad.png b/tests/manual/ios_assets/appicon/AppIcon72x72@2x~ipad.png
deleted file mode 100644
index cb988891ff..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon72x72@2x~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon72x72~ipad.png b/tests/manual/ios_assets/appicon/AppIcon72x72~ipad.png
deleted file mode 100644
index a0072bcfa1..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon72x72~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/appicon/AppIcon76x76~ipad.png b/tests/manual/ios_assets/appicon/AppIcon76x76~ipad.png
deleted file mode 100644
index 15a13665f0..0000000000
--- a/tests/manual/ios_assets/appicon/AppIcon76x76~ipad.png
+++ /dev/null
Binary files differ
diff --git a/tests/manual/ios_assets/ios_assets.pro b/tests/manual/ios_assets/ios_assets.pro
index a6a610dcd8..a2aa348771 100644
--- a/tests/manual/ios_assets/ios_assets.pro
+++ b/tests/manual/ios_assets/ios_assets.pro
@@ -6,7 +6,12 @@ TARGET = tst_manual_ios_assets
# Custom Info.plist
ios {
- QMAKE_INFO_PLIST = Info.ios.qmake.plist
+ versionAtLeast(QMAKE_XCODE_VERSION, 14.0) {
+ plist_path = Info.ios.qmake.xcode.14.3.plist
+ } else {
+ plist_path = Info.ios.qmake.xcode.13.0.plist
+ }
+ QMAKE_INFO_PLIST = $$plist_path
}
# Custom resources
@@ -23,19 +28,18 @@ ios {
macos {
textFiles.path = Contents/Resources/textFiles
}
+textFiles.files -= CMakeLists.txt
QMAKE_BUNDLE_DATA += textFiles
-# App icons
+# Asset catalog with images and app icons
ios {
- ios_icon.files = $$files($$PWD/appicon/AppIcon*.png)
- QMAKE_BUNDLE_DATA += ios_icon
-}
-
-# Asset catalog with images
-ios {
- # The asset catalog needs to have an empty AppIcon.appiconset, otherwise Xcode refuses
+ # The asset catalog needs to have at least an empty AppIcon.appiconset, otherwise Xcode refuses
# to compile the asset catalog.
- QMAKE_ASSET_CATALOGS += Assets.xcassets
+ versionAtLeast(QMAKE_XCODE_VERSION, 14.0) {
+ QMAKE_ASSET_CATALOGS += AssetsXcode14.3.xcassets
+ } else {
+ QMAKE_ASSET_CATALOGS += AssetsXcode13.0.xcassets
+ }
SOURCES += utils.mm
LIBS += -framework UIKit
}
diff --git a/tests/manual/ios_assets/main.cpp b/tests/manual/ios_assets/main.cpp
index 020f3f940b..bbad425b62 100644
--- a/tests/manual/ios_assets/main.cpp
+++ b/tests/manual/ios_assets/main.cpp
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QStandardPaths>
#include <QtCore/QDir>
diff --git a/tests/manual/ios_assets/utils.mm b/tests/manual/ios_assets/utils.mm
index c3b657084e..44a333f673 100644
--- a/tests/manual/ios_assets/utils.mm
+++ b/tests/manual/ios_assets/utils.mm
@@ -1,5 +1,5 @@
// Copyright (C) 2022 The Qt Company Ltd.
-// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause
+// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include <QtCore/QString>