- Add a python script (generate-android-i18n-strings.py)
that generates the translated android strings.xml as per:
https://developer.android.com/guide/topics/resources/providing-resources#AlternativeResources
It considers the dists/android/res/values/strings.xml file as
a base template to generate those translated strings.xml files.
- The python script also generates a fake cpp with strings from
dists/android/res/values/strings.xml. These strings will be picked
up by gettext to make it translatable. If there is any change in the
original strings.xml file, we won't have to worry about the changes
in cpp file.
- Add documentation for the generate-android-i18n-strings.py script
Apple never required bitcode to be enabled and with Xcode 14
bitcode is deprecated.
Set bitcode to disabled for iOS and tvOS projects. Else it will
be default on and give a build error due to the libraries in
scummvm-ios7-libs-v3 doesn't include bitcode.
The introduction of Apple M1 processor, which is based on the arm64
architecture, makes it impossible to use fat static libraries for iOS
and tvOS since building libraries for the simulators targeting the
arm64 architecture conflicts with the iOS and tvOS native arm64
libraries. It's not possible to have two arm64 libraries targeting
different platforms in the same fat library.
Apple resolves this problem with XCFrameworks. Each XCFramework
contain an Info.plist specifying which platforms and architectures it
targets.
The new iOS and tvOS library package, scummvm-ios7-libs-v3, utilize
the XCFramework format and includes pre-compiled libraries for both
iOS and tvOS with corresponding simulator.
Add the option to use XCFramework in create_project by passing the
switch '--use-xcframework'
Implement support to use XCFrameworks for iOS, tvOS and macOS. If not
passing '--use-xcframework' to create_project, legacy behaviour is
applied.
This commit also add support for mikmod for tvOS.