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 Binary files /dev/null and b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon1024x1024.png 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 Binary files /dev/null and b/tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon167x167.png 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 similarity index 100% rename from tests/manual/ios_assets/appicon/AppIcon60x60@2x.png rename to tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon60x60@2x.png 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 similarity index 100% rename from tests/manual/ios_assets/appicon/AppIcon76x76@2x~ipad.png rename to tests/manual/ios_assets/AssetsXcode13.0.xcassets/AppIcon.appiconset/AppIcon76x76@2x~ipad.png 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 similarity index 90% rename from tests/manual/ios_assets/Assets.xcassets/AppIcon.appiconset/Contents.json rename to 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 similarity index 100% rename from tests/manual/ios_assets/Assets.xcassets/Contents.json rename to 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 similarity index 100% rename from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Contents.json rename to 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 similarity index 100% rename from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-16.png rename to tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-16.png 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 similarity index 100% rename from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-32.png rename to tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-32.png 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 similarity index 100% rename from tests/manual/ios_assets/Assets.xcassets/Face.imageset/Face-48.png rename to tests/manual/ios_assets/AssetsXcode13.0.xcassets/Face.imageset/Face-48.png 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 Binary files /dev/null and b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/AppIcon.appiconset/AppIcon1024x1024.png 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 Binary files /dev/null and b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-16.png 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 Binary files /dev/null and b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-32.png 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 Binary files /dev/null and b/tests/manual/ios_assets/AssetsXcode14.3.xcassets/Face.imageset/Face-48.png 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 similarity index 65% rename from tests/manual/ios_assets/Info.ios.cmake.plist rename to tests/manual/ios_assets/Info.ios.cmake.xcode.13.0.plist index d8b64af50d..b83c922e24 100644 --- a/tests/manual/ios_assets/Info.ios.cmake.plist +++ b/tests/manual/ios_assets/Info.ios.cmake.xcode.13.0.plist @@ -57,11 +57,6 @@ CFBundleIconFiles - AppIcon29x29.png - AppIcon29x29@2x.png - AppIcon40x40@2x.png - AppIcon57x57.png - AppIcon57x57@2x.png AppIcon60x60@2x.png CFBundleIconName @@ -74,21 +69,6 @@ CFBundleIconFiles - AppIcon29x29.png - AppIcon29x29@2x.png - AppIcon40x40@2x.png - AppIcon57x57.png - AppIcon57x57@2x.png - AppIcon60x60@2x.png - AppIcon29x29~ipad.png - AppIcon29x29@2x~ipad.png - AppIcon40x40~ipad.png - AppIcon40x40@2x~ipad.png - AppIcon50x50~ipad.png - AppIcon50x50@2x~ipad.png - AppIcon72x72~ipad.png - AppIcon72x72@2x~ipad.png - AppIcon76x76~ipad.png AppIcon76x76@2x~ipad.png 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 @@ + + + + + CFBundleInfoDictionaryVersion + 6.0 + + CFBundlePackageType + APPL + + CFBundleName + $(PRODUCT_NAME) + + CFBundleDisplayName + $(PRODUCT_NAME) + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + + CFBundleExecutable + $(EXECUTABLE_NAME) + + CFBundleVersion + $(CURRENT_PROJECT_VERSION) + + CFBundleShortVersionString + $(MARKETING_VERSION) + + NSHumanReadableCopyright + + + CFBundleIconFile + + + CFBundleDevelopmentRegion + en + CFBundleAllowMixedLocalizations + + + LSRequiresIPhoneOS + + + UILaunchStoryboardName + CustomLaunchScreen + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/tests/manual/ios_assets/Info.ios.qmake.plist b/tests/manual/ios_assets/Info.ios.qmake.xcode.13.0.plist similarity index 65% rename from tests/manual/ios_assets/Info.ios.qmake.plist rename to tests/manual/ios_assets/Info.ios.qmake.xcode.13.0.plist index cacfa49db3..7b1454beeb 100644 --- a/tests/manual/ios_assets/Info.ios.qmake.plist +++ b/tests/manual/ios_assets/Info.ios.qmake.xcode.13.0.plist @@ -40,11 +40,6 @@ CFBundleIconFiles - AppIcon29x29.png - AppIcon29x29@2x.png - AppIcon40x40@2x.png - AppIcon57x57.png - AppIcon57x57@2x.png AppIcon60x60@2x.png CFBundleIconName @@ -57,21 +52,6 @@ CFBundleIconFiles - AppIcon29x29.png - AppIcon29x29@2x.png - AppIcon40x40@2x.png - AppIcon57x57.png - AppIcon57x57@2x.png - AppIcon60x60@2x.png - AppIcon29x29~ipad.png - AppIcon29x29@2x~ipad.png - AppIcon40x40~ipad.png - AppIcon40x40@2x~ipad.png - AppIcon50x50~ipad.png - AppIcon50x50@2x~ipad.png - AppIcon72x72~ipad.png - AppIcon72x72@2x~ipad.png - AppIcon76x76~ipad.png AppIcon76x76@2x~ipad.png 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 @@ + + + + + CFBundleDisplayName + ${PRODUCT_NAME} + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIconFile + ${ASSETCATALOG_COMPILER_APPICON_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleShortVersionString + ${QMAKE_SHORT_VERSION} + CFBundleSignature + ${QMAKE_PKGINFO_TYPEINFO} + CFBundleVersion + ${QMAKE_FULL_VERSION} + LSRequiresIPhoneOS + + MinimumOSVersion + ${IPHONEOS_DEPLOYMENT_TARGET} + UILaunchStoryboardName + CustomLaunchScreen + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon29x29.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon29x29@2x.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon29x29@2x~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon29x29~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon40x40@2x.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon40x40@2x~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon40x40~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon50x50@2x~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon50x50~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon57x57.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon57x57@2x.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon72x72@2x~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon72x72~ipad.png and /dev/null 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 Binary files a/tests/manual/ios_assets/appicon/AppIcon76x76~ipad.png and /dev/null 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 }