Use Xcode for iOS builds (#267)

This commit is contained in:
Alexander Batalov 2023-04-26 13:48:01 +03:00
parent df3ac30de6
commit a0652e2646
3 changed files with 10 additions and 14 deletions

View File

@ -78,7 +78,7 @@ jobs:
ios: ios:
name: iOS name: iOS
runs-on: macos-11 runs-on: macos-12
steps: steps:
- name: Clone - name: Clone
@ -88,30 +88,31 @@ jobs:
uses: actions/cache@v3 uses: actions/cache@v3
with: with:
path: build path: build
key: ios-cmake-v1 key: ios-cmake-v2
- name: Configure - name: Configure
run: | run: |
cmake \ cmake \
-B build \ -B build \
-D CMAKE_BUILD_TYPE=RelWithDebInfo \
-D CMAKE_TOOLCHAIN_FILE=cmake/toolchain/ios.toolchain.cmake \ -D CMAKE_TOOLCHAIN_FILE=cmake/toolchain/ios.toolchain.cmake \
-D ENABLE_BITCODE=0 \ -D ENABLE_BITCODE=0 \
-D PLATFORM=OS64 \ -D PLATFORM=OS64 \
-G Xcode \
-D CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY='' \
# EOL # EOL
- name: Build - name: Build
run: | run: |
cmake \ cmake \
--build build \ --build build \
--config RelWithDebInfo \
-j $(sysctl -n hw.physicalcpu) \ -j $(sysctl -n hw.physicalcpu) \
--target package \
# EOL # EOL
# TODO: Should be a part of packaging. - name: Pack
- name: Prepare for uploading
run: | run: |
cp build/fallout2-ce.zip build/fallout2-ce.ipa cd build
cpack -C RelWithDebInfo
- name: Upload - name: Upload
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3

View File

@ -311,6 +311,7 @@ if(APPLE)
set_source_files_properties("os/ios/LaunchScreen.storyboard" PROPERTIES MACOSX_PACKAGE_LOCATION "Resources") set_source_files_properties("os/ios/LaunchScreen.storyboard" PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
set_target_properties(${EXECUTABLE_NAME} PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_SOURCE_DIR}/os/ios/Info.plist") set_target_properties(${EXECUTABLE_NAME} PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_SOURCE_DIR}/os/ios/Info.plist")
set_target_properties(${EXECUTABLE_NAME} PROPERTIES XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY "1,2") set_target_properties(${EXECUTABLE_NAME} PROPERTIES XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY "1,2")
set_target_properties(${EXECUTABLE_NAME} PROPERTIES XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.alexbatalov.fallout2-ce")
else() else()
set_target_properties(${EXECUTABLE_NAME} PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_SOURCE_DIR}/os/macos/Info.plist") set_target_properties(${EXECUTABLE_NAME} PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_SOURCE_DIR}/os/macos/Info.plist")
endif() endif()
@ -348,6 +349,7 @@ if(APPLE)
set(CPACK_GENERATOR "ZIP") set(CPACK_GENERATOR "ZIP")
set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY OFF) set(CPACK_INCLUDE_TOPLEVEL_DIRECTORY OFF)
set(CPACK_PACKAGE_FILE_NAME "fallout2-ce") set(CPACK_PACKAGE_FILE_NAME "fallout2-ce")
set(CPACK_ARCHIVE_FILE_EXTENSION "ipa")
else() else()
install(TARGETS ${EXECUTABLE_NAME} DESTINATION .) install(TARGETS ${EXECUTABLE_NAME} DESTINATION .)
install(CODE " install(CODE "

View File

@ -22,8 +22,6 @@
<string>${MACOSX_BUNDLE_SHORT_VERSION_STRING}</string> <string>${MACOSX_BUNDLE_SHORT_VERSION_STRING}</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>${MACOSX_BUNDLE_BUNDLE_VERSION}</string> <string>${MACOSX_BUNDLE_BUNDLE_VERSION}</string>
<key>LSApplicationCategoryType</key>
<string>public.app-category.role-playing-games</string>
<key>LSMinimumSystemVersion</key> <key>LSMinimumSystemVersion</key>
<string>11.0</string> <string>11.0</string>
<key>LSRequiresIPhoneOS</key> <key>LSRequiresIPhoneOS</key>
@ -32,11 +30,6 @@
<string>True</string> <string>True</string>
<key>UIApplicationSupportsIndirectInputEvents</key> <key>UIApplicationSupportsIndirectInputEvents</key>
<true/> <true/>
<key>UIDeviceFamily</key>
<array>
<integer>1</integer>
<integer>2</integer>
</array>
<key>UIFileSharingEnabled</key> <key>UIFileSharingEnabled</key>
<true/> <true/>
<key>UILaunchStoryboardName</key> <key>UILaunchStoryboardName</key>