kiwix-build/kiwixbuild/platforms
renaud gaudin a063b91349
Build CoreKiwix.xcframework
CoreKiwix.xcframework is the packaging format required by Kiwix apple (macOS/iOS) reader for libkiwix.
Naming will hopefully be revisited later (libkiwix.xcframework?)

This folder is a combination of all static archive (*.a): dependencies and libkiwix itself
for all apple-supported platforms: macOS x86_64, macOS arm64, iOS arm64 and iOS x86_64.
It also includes the headers.
Note: while iOS archs are separated in the framework, the macOS archs are bundled as a fat binary.

This thus adds:

- A new `apple_all_static` target that lists mentioned sub-platforms.
- A new `AppleXCFramework` virtual dependency and builder
  -  requires `libkiwix`
  - merges the archives into one per target
  - creates the fat binary for macOS
  - creates the xcframework
- `libkiwix_xcframework-VERSION.tar.gz` because platformname is xcframework
  - it only contains the xcframework but in libkiwix_xcframework-VERSION/lib folder
    Because with this virtual target, there are no other files
  - requires a new `xcframework` platform_name in builddef
- subplatforms deps and macOS/iOS _ok files to make_deps_archive

---

https://developer.apple.com/documentation/xcode/creating-a-multi-platform-binary-framework-bundle
2023-11-15 08:50:00 +00:00
..
__init__.py Rename `arm_musl.py` to `musl.py`. 2023-10-23 10:19:12 +02:00
android.py Correctly set the include dirs for mixed_target. 2023-03-30 16:40:20 +02:00
armhf.py Move all toolchain installation in TOOLCHAIN directory. 2023-10-24 10:53:31 +02:00
base.py Mixed platform are not static. 2023-03-31 10:51:11 +02:00
flatpak.py Correctly install io.qt.qtwebengine.BaseApp for flatpak build. 2021-06-29 16:06:53 +02:00
i586.py Correctly set the include dirs for mixed_target. 2023-03-30 16:40:20 +02:00
ios.py Build CoreKiwix.xcframework 2023-11-15 08:50:00 +00:00
musl.py Move all toolchain installation in TOOLCHAIN directory. 2023-10-24 10:53:31 +02:00
native.py fixed typo in native (using min-macos-version) 2023-11-10 11:26:44 +00:00
neutral.py Merge toolchain and dependencies. 2018-05-31 11:30:25 +02:00
wasm.py Install wasm libraries in `INSTALL/lib` directory. 2023-03-01 14:16:36 +01:00
win32.py Correctly set the include dirs for mixed_target. 2023-03-30 16:40:20 +02:00
win64.py Make the dependency responsible to set the compilation env. 2020-02-21 16:29:23 +01:00