Commit Graph

1588 Commits

Author SHA1 Message Date
Matthieu Gautier 98b5f3e84f
Merge pull request #654 from kiwix/no_shell
Run command without using shell.
2023-12-04 14:11:15 +01:00
Matthieu Gautier ab273f7d12 Run apple command as list. 2023-12-01 11:12:32 +01:00
Matthieu Gautier b7c4854d83 Build only libzim dependencies on bionic.
We compile only libzim on bionic, for compatibility with old libc.
No need to compile all other dependencies (and fight with some of them not
compiling)
2023-12-01 11:12:32 +01:00
Matthieu Gautier a0978a6ab4 Remove SvnClone.
We don't use it since a long time.
2023-12-01 11:12:32 +01:00
Matthieu Gautier c753e62913 Change base deps_meta version. 2023-12-01 11:12:24 +01:00
Matthieu Gautier 985643089a Detect the command instead of hardcoding them. 2023-12-01 11:11:26 +01:00
Matthieu Gautier c99a9bd91f Run the command without using shell=True.
It mainly allow to run command in directory containing space.
(Hello, `C:\Program Files\...`)
It would also allow to work on directory containning spaces
(`C:\Users\John Doe`) but xapian configure (at least) expressly doesn't
support it :/

- Run the command without shell=True
- The command must be a list instead of a string.
- All options must also be a list (or an iterable).
2023-12-01 11:11:24 +01:00
Matthieu Gautier e87835c61d Correctly set the environment.
When running command without `shell=True`, python's subproccess will look
for variable `"PATH"` and `b"PATH"` and will complain if both are set.
So the defaultdict should not return something for `b"PATH"`.

We also escape space ` ` in the environment variables to not break
everything with directory containing space.
2023-12-01 11:10:34 +01:00
Matthieu Gautier 738bfa6744
Merge pull request #665 from kiwix/ios_deps_publish 2023-11-20 17:21:31 +01:00
Matthieu Gautier 1a48bb509b Publish CI libkiwix's dependencies for iOS cross-compilation
See kiwix/libkiwix#1018
2023-11-20 14:17:50 +01:00
Matthieu Gautier e121d04dbf
Merge pull request #664 from kiwix/android_debug 2023-11-20 14:17:42 +01:00
Matthieu Gautier 88cc75475c Build libzim and libkiwix in debug mode on android.
Fix #623
2023-11-20 11:10:24 +01:00
Kelson 2467771891
Merge pull request #663 from kiwix/release-kiwix-tools-3.6.0
Release kiwix-tools 3.6.0
2023-11-19 14:52:28 +01:00
Emmanuel Engelhart 78225e865e
Relase kiwix-tools 3.6.0 2023-11-19 14:22:29 +01:00
Kelson 2130ec1255
Merge pull request #662 from kiwix/osname
Add OS_NAME to docker trigger job
2023-11-17 16:03:37 +01:00
renaud gaudin d59902f460
Add OS_NAME to docker trigger job 2023-11-17 15:01:32 +00:00
Kelson b97e5d20b8
Merge pull request #661 from kiwix/release-libkiwix-13.0.0
Release libkiwix 13.0.0
2023-11-17 15:49:45 +01:00
Emmanuel Engelhart 5da02d9ccc
Release libkiwix 13.0.0 2023-11-17 15:15:24 +01:00
Matthieu Gautier 2b6e02853d
Merge pull request #658 from kiwix/docker-trigger 2023-11-17 13:23:28 +01:00
Kelson 84193ab80c
Merge pull request #637 from kiwix/emsdk
Update emsdk version.
2023-11-17 12:49:52 +01:00
Matthieu Gautier 861682ecaa Update emsdk version. 2023-11-17 12:28:14 +01:00
Kelson 9ef684747f
Merge pull request #657 from kiwix/aria2-1.37.0
Bump-up aria2 to 1.37.0
2023-11-17 12:23:25 +01:00
Emmanuel Engelhart 6a9093642c Bump-up aria2 to 1.37.0 2023-11-17 12:21:39 +01:00
Kelson 8a47b3e4d4
Merge pull request #659 from kiwix/zim-tools-3.3.0
Release zim-tools 3.3.0
2023-11-17 12:18:54 +01:00
Emmanuel Engelhart f76ce0069b
Release zim-tools 3.3.0 2023-11-17 10:58:35 +01:00
renaud gaudin aa29f5029a
Fixed docker workflow trigger
There is no such thing as a `LINUX_DOCKER_TRIGGER` platform target nor expected OS_NAME.
BuildDefinition expects the docker publish trigger to happen for native_static
2023-11-16 10:54:27 +00:00
renaud gaudin 1d70d1a0c4
Fixed incorrect py3 exception raising 2023-11-16 10:53:15 +00:00
rgaudin 1b81500c0b
Merge pull request #653 from kiwix/xcframework
Build CoreKiwix.xcframework
2023-11-15 09:39:51 +00:00
renaud gaudin ac22caca6d
Don't set context.no_skip on meson builder
no_skip is thus computed automatically depending on project being our or not.
We dont want to skip configure on our own projetcs (limited impact, simplifies deps mgmt)
2023-11-15 08:50:38 +00:00
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
renaud gaudin 6cfbd0c297
Use TMP_DIR (standard) instead of hard-coded /tmp
Allows overriding it
2023-11-15 08:40:22 +00:00
Kelson 5a8f8c90ff
Merge pull request #655 from kiwix/build-libzim-release-9.0.0
Release libzim 9.0.0
2023-11-13 21:26:34 +01:00
Emmanuel Engelhart adf3ed801a
Release libzim 9.0.0 2023-11-12 12:38:25 +01:00
Matthieu Gautier 9b2b8c98c8
Merge pull request #649 from kiwix/tools_on_macos_m1
Build zim-tools and kiwix-tools on macos-arm64
2023-11-10 18:50:00 +01:00
Kelson eeb22c1cb4
Merge pull request #650 from kiwix/apple-xcf
Apple Platforms updates
2023-11-10 16:01:02 +01:00
renaud gaudin 12b176bf85
fixed typo in native (using min-macos-version) 2023-11-10 11:26:44 +00:00
Matthieu Gautier 1000bfecbe
Set `min_macos_version` also on native platform.
`-min_macos_version` define our minimum targeted macos version.
We need to set it even if we build native on macos.
2023-11-10 11:26:37 +00:00
Matthieu Gautier 5b22821e61 Build zim-tools and kiwix-tools on macos-arm64 2023-11-09 11:52:08 +01:00
renaud gaudin 670bbb0417
removed iOSMacABI target as useless 2023-11-09 08:14:52 +00:00
renaud gaudin 7be0b3b586
generalized min macOS/iOS target versions. bumped to iOS15 and macOS12 2023-11-09 08:14:52 +00:00
renaud gaudin 09dacaa25e
disabled bitcode support, as deprecated since xcode14
See https://stackoverflow.com/questions/72543728/xcode-14-deprecates-bitcode-but-why
2023-11-09 08:14:52 +00:00
renaud gaudin fbc1ca11f2
removed -stdlib=libc++ flag to clang as required by xcode 15 2023-11-09 08:14:52 +00:00
renaud gaudin a79b08f4c5
build on macos-13 with xcode 15.0.1 2023-11-09 08:14:52 +00:00
Matthieu Gautier 2f6663a84c
Merge pull request #651 from kiwix/no_publish_of_pr_deps
Publish projects deps in branch-named folder when outside of main
2023-11-08 13:14:09 +01:00
Matthieu Gautier 0a02353f28 Do not publish projects deps if we are in a branch.
Still publish the deps in the dep_previews directory in case we
would like to test it project's CI.
2023-11-08 10:43:27 +01:00
Matthieu Gautier 42a0658729
Merge pull request #648 from kiwix/fix_musl_archive_name
Fix naming of musl archive for x86_64.
2023-11-07 16:34:55 +01:00
Matthieu Gautier cf5dde88e2 Fix naming of musl archive for x86_64.
Fix openzim/libzim#820
2023-11-06 14:00:37 +01:00
Matthieu Gautier 0ce0f20870
Merge pull request #642 from kiwix/update_icu
Update icu4c to version 71.1
2023-11-03 09:50:45 +01:00
Matthieu Gautier fb6d6b8e25 Package ICU data with libzim/libkiwix. 2023-11-02 17:34:24 +01:00
Matthieu Gautier 2a5a5c3a42 Correctly build ICU data when building for wasm.
When we use `--disable-tools` (ie, when we are cross-compiling), ICU
will build the data only if it detects we are cross-compiling.

This make sens until we cross-compiling for wasm.
Wasm output is a script file with the interpreter in the sdk we have
installed. So ICU's configure can run the test binary and so doesn't detect
we are cross-compiling.

So we have to patch ICU Makefile to make it build the ICU data anyway.
2023-11-02 17:33:51 +01:00