Commit Graph

582 Commits

Author SHA1 Message Date
Matthieu Gautier ae4dcac4e5 Update base_deps_meta_version 2023-05-22 19:03:57 +02:00
Matthieu Gautier 897e7f292c Switch (again) to new arm cross-compilation toolchain.
This introduce a difference between armv6 and armv8.
2023-05-22 19:03:57 +02:00
Emmanuel Engelhart 7db62390f1
We should build using macos11 2023-05-20 16:15:24 +02:00
Emmanuel Engelhart 5057444acd
Disable decompression feature in libmagic 2023-05-20 13:23:25 +02:00
Emmanuel Engelhart e0d4eea050
Bump-up libmagic to version 5.44 2023-05-19 15:28:34 +02:00
Matthieu Gautier 647304c253 New releaes of libzim, zim-tools and kiwix-tools. 2023-04-28 11:39:29 +02:00
Matthieu Gautier fd85b80b2c Move back to gcc 6.3.0 when compiling to aarch64. 2023-04-26 16:54:35 +02:00
Matthieu Gautier 5ef7e2a017 New version of xapian 1.4.22
Fix #599
2023-04-25 16:54:40 +02:00
Matthieu Gautier 2b6e305911 Install things in `lib/aarch64-linux-gnu` 2023-04-19 11:36:08 +02:00
Matthieu Gautier c9e9c5c070 Move all our CI to focal instead of bionic
Bionic is EOL.
2023-04-12 16:53:32 +02:00
Matthieu Gautier 7b7afc36e7 Mixed platform are not static. 2023-03-31 10:51:11 +02:00
Matthieu Gautier 260b93a51d Correctly set the include dirs for mixed_target.
Until now, mixed targets was only about native build and so we were not
using a meson cross_config file and env var was enough.

But now we also to correctly set it in the cross_config file.
2023-03-30 16:40:20 +02:00
Matthieu Gautier b218875d49 Rename `macOS_arm64` to `macOS_arm64_static`.
Publication code in `.github/scripts` expected that `foo_mixed` target
is tied to a `foo_static` target.
2023-03-30 14:18:53 +02:00
Matthieu Gautier de25a1e63b Add `macOS_arm64_mixed` platform. 2023-03-30 14:18:53 +02:00
Matthieu Gautier 7ae3afd805 Introduce mixed target for armhf and aarch64. 2023-03-28 17:48:08 +02:00
Matthieu Gautier ab2cbdbe5b Introduce aarch64 target.
In opposition to 32 bits, it is adapted to all PI (as long as they are
in 64 bits).
2023-03-28 17:47:48 +02:00
Matthieu Gautier 4e88c6eb10 Correctly set the armhf toolchain to a 32 bits arch.
cross-gcc-10.3.0-pi_64.tar.gz for 64 bits architecture and armhf
is about 32 bits.

However, we know use a pi 2 and 3 and Stretch only[*] toolchains

[*] To be tested. Maybe the only is for the target compilation but binary
run elsewhere too.
2023-03-28 17:46:31 +02:00
Matthieu Gautier 31771fa35c Introduce MixedMixin
We will need to create "mixed linkage" library for other arch than native.
It is better to move associated code in a separate part.
2023-03-28 17:40:12 +02:00
Matthieu Gautier b6f49efcda Update meta version to not used cached library. 2023-03-28 16:16:22 +02:00
Matthieu Gautier b8cd12a360 Update armhf toolschain. 2023-03-28 16:16:22 +02:00
Matthieu Gautier 556f02cf48 Set back the version of libzim to 8.1.0
The version of libzim (and other project too) is used to know what we
need to package in the published archive (nightly and releasee).

So the version must correspond to what is build.
For nightlies, we build the `main` branch and the main branch of libzim
is still on 8.1.0 so we must have the same version.

Fix openzim/libzim#772
2023-03-28 11:47:56 +02:00
Matthieu Gautier 61fb624f66 Correctly set the release version of libzim.
As we have change the version of libzim, release build must be 0.
2023-03-22 14:04:36 +01:00
Matthieu Gautier efff7abbfc New release of libzim 8.1.1
As this is just a ABI fix and we recompile everything when we do
a release of our projects, we don't need to recompile our projects.
Building with libzim 8.1.0 was enough, no need to trigger a update in all
the users of prebuild binary.
2023-03-22 13:29:52 +01:00
Matthieu Gautier 7a23bb5b8b Fix creation of base dependencies archive.
The `INSTALL_DIR` was added twice. It was not a issue as we then transform
the list into a set to remove duplicated.

But with `filter_install_dir` call only on one "add", the (textual)
entries are not duplicated and so, not removed. So the files where add
twice.

Now we correctly filter initial `INSTALL_DIR` and we remove the second add.
2023-03-14 17:17:30 +01:00
Matthieu Gautier 674c29c351 Bump the base_deps_meta_version.
As we install base library in a different directory, we have to
regenereate the base_deps archives.
2023-03-01 14:17:48 +01:00
Matthieu Gautier 6181d7bb08 Install wasm libraries in `INSTALL/lib` directory.
The default detected libdir is based on the build architecture.
On ubuntu, it is `lib/x86_64-linux-gnu` which is obviously not the right
directory.

Let's simply use `lib`.

Fix #556
2023-03-01 14:16:36 +01:00
Emmanuel Engelhart 7e88bf14a2
Bumpup libmicrohttpd to 0.9.76 2023-03-01 10:10:15 +01:00
Matthieu Gautier f6a7f43ece Fix the iOsMacABI target in the CI
It seems that on last version of CI envirronement, ios' clang doesnt
recognize ios13.0.

Moving to ios 14.0
2023-02-07 09:52:37 +01:00
Matthieu Gautier 1f8ccde487 "main" is now our default branch for all our projects. 2023-01-03 10:19:52 +01:00
Matthieu Gautier 344b9328c3 libzim and zim-tools are now using "main" for the default branch. 2022-12-22 14:32:13 +01:00
Matthieu Gautier d76819390e Do not always fallback to master. 2022-12-22 14:31:20 +01:00
Matthieu Gautier bcbcbb525f Trigger a new build of libzim.
With the wasm arch fixed, we need to do a new build release.
2022-12-09 10:55:14 +01:00
Matthieu Gautier f6cd94366a Fix wasm compilation.
On wasm, we cannot do mmap. We have to do plain read.

Fix openzim/libzim#751
2022-12-06 19:01:38 +01:00
Matthieu Gautier fb095d91e6 Retrigger a build for wasm.
Other platforms will fail at upload because archives are read only but
the wasm build should be ok.
2022-12-01 22:09:51 +01:00
Matthieu Gautier 3be9eca1a9 New version of all projects
- libzim 8.1.0
- libkiwix 12.0.0
- zim-tools 3.1.3
- kiwix-tools 3.4.0
- kiwix-desktop 2.3.1
2022-11-30 18:16:21 +01:00
Matthieu Gautier ab2458c1c4 Add "static" include dir when compiling native_mixed. 2022-11-30 14:22:13 +01:00
Matthieu Gautier cd0c2da542 Correctly compile libkiwix on native_mixed 2022-11-30 12:20:40 +01:00
Matthieu Gautier 9695737ca1 Update meta_version to trigger a build on the CI 2022-11-16 16:37:05 +01:00
Matthieu Gautier fd8044ba76 Reduce base dependencies to ony what needed on wasm. 2022-11-16 16:37:05 +01:00
Matthieu Gautier 6f8b82ad7d Fallback to lzma-5.2.6
Version 5.2.7 include this commit
https://git.tukaani.org/?p=xz.git;a=commit;h=31d80c6b261b24220776dfaeb8a04f80f80e0a24

With this change, compiling libzim mixed (libzim dynamic and dependencies,
so lzma, statically) fails at libzim linking with a
`src/libzim.so.8.0.1: version node not found for symbol lzma_get_progress@XZ_5.2.2`
error message.

This can be "workaround" by passing `--disable-symbol-versions` to
configure script but then, it is the compilation of kiwix-desktop in
native_dyn which falling with

```
/usr/bin/ld: /usr/lib64/libsystemd.so.0: undefined reference to `lzma_code@XZ_5.0'
/usr/bin/ld: /usr/lib64/libsystemd.so.0: undefined reference to `lzma_end@XZ_5.0'
/usr/bin/ld: /usr/lib64/libsystemd.so.0: undefined reference to `lzma_stream_decoder@XZ_5.0'
/usr/bin/ld: /usr/lib64/libxml2.so.2: undefined reference to `lzma_auto_decoder@XZ_5.0'
/usr/bin/ld: /usr/lib64/libxml2.so.2: undefined reference to `lzma_properties_decode@XZ_5.0'
```

Probably because some native dependencies (Qt ?) use versionned symbols.

This have to be fixed somehow but until then, let's go back to 5.2.6
2022-11-16 16:37:05 +01:00
Matthieu Gautier 180fb249f6 Add a support to compile libzim for wasm.
`icu4c_wasm.patch` is build by :
 - Copying config.sub from liblzma source as new version of config.sub there
   knows about wasm architecture.
 - Copying `mh-linux` on `mh-unknown` as specified in (origin) `mh-unknown`.
   This is because icu4c configure doesn't detect `emscripten` platform and
   "fallback" to `mh-unknown`.
2022-11-16 16:37:05 +01:00
Matthieu Gautier b8c120b179 Pass the path of the patch in the command line instead of as stdin.
This way, we can see the applied patch in the log.
2022-11-16 10:46:06 +01:00
Matthieu Gautier a7809b33fc Update lzma version to 5.2.7
On top of using a more recent version (which is good it itself),
version 5.2.7 use a autotools version which knows about wasm.
2022-11-16 10:46:06 +01:00
Matthieu Gautier ce82860b85 Introduce configure and make wrapper.
This way, we can use small wrapper tools from sdk to run configure and
make.
2022-11-16 10:45:57 +01:00
Matthieu Gautier 3847844c54 Update android_ndk to version r21e
To do this, we need to update the android api to 24.
We lost all users using a android under api 24.
2022-09-29 09:45:15 +02:00
Matthieu Gautier e21cb8971a Add an option to set the build directory of kiwix-build. 2022-09-21 16:15:14 +02:00
Matthieu Gautier 6d4aa756b5 New versions of zim-tools (3.1.2) and kiwix-desktop (2.3.0) 2022-09-07 18:53:14 +02:00
Matthieu Gautier 27bdda0bcf New version 8.0.1 of libzim.
This is the minor fix for debian packaging.
No need to rebuild other projects.
2022-09-07 18:53:14 +02:00
Matthieu Gautier 3ebf005cbb New version 8.0.0 of libzim 2022-08-11 17:28:02 +02:00
Matthieu Gautier bcbb164d49 Build libzim dynamically on android. 2022-06-28 12:23:35 +02:00
Matthieu Gautier 3764fde97e We don't need jdk anymore to build on android 2022-06-28 12:23:04 +02:00
Matthieu Gautier 5939865e7c New version 2.2.2 of kiwix-desktop 2022-06-22 16:08:55 +02:00
Matthieu Gautier a04b989ed5 Update kde and qtwebengine to last Platform version. 2022-06-21 16:47:07 +02:00
Matthieu Gautier 72023a9a09 New version of libkiwix and kiwix-tools
Do not rebuild kiwix-desktop has current version is not compatible
with new version of libkiwix. We will do a release of kiwix-desktop soon.
2022-06-15 14:29:36 +02:00
Matthieu Gautier dba45ced36 Build android lib in the correct directory 2022-06-14 17:48:51 +02:00
Matthieu Gautier bd1064cb3a Fix url of downloaded dependencies.
We now store the dependencies in kiwix-build subfolder
2022-06-14 17:48:26 +02:00
Matthieu Gautier aa4250dd41 Build libkiwix with the right new option on android 2022-06-09 10:30:37 +02:00
Matthieu Gautier 72c271a74c Remove LibkiwixApp
The project was used to assemble all android compilation in one
multiplatform java archive.

This allow use to remove android_sdk and Gradle builder
2022-06-09 10:28:59 +02:00
Matthieu Gautier 9c4f359170 New version of libzim 7.2.2 2022-05-18 08:59:38 +02:00
Matthieu Gautier 32a6e5b588 New version of libzim 7.2.1 and zim-tools 3.1.1 2022-05-06 14:51:16 +02:00
Matthieu Gautier c5662d4d7b New version of libkiwix 10.1.1
As the base dependencies changed, we also need to rebuild all our projects.
2022-04-12 11:04:49 +02:00
Matthieu Gautier b7a3187b45 Update version of zstd.
No need to update base_deps_meta_version as it is already updated in
this same PR.
2022-04-11 18:08:08 +02:00
Emmanuel Engelhart 500d3bec86 Use zlib 1.2.12 2022-04-11 17:47:56 +02:00
Matthieu Gautier 4158d75d7a Rebuild kiwix-tools release
As we've fixed the github workflow triggering, we need to redo the
release process for kiwix-tools.
2022-03-28 11:10:02 +02:00
Matthieu Gautier 845ee43e47 New version of libkiwix 10.1.0 2022-03-24 19:01:34 +01:00
Matthieu Gautier 6273177210 New version of kiwix-desktop 2.2.1 2022-03-11 17:19:00 +01:00
Matthieu Gautier 8b9b74d577 Better flatpak command options.
This mainly add the option `--nointeractive` when installing the sdk.
2022-03-10 16:21:14 +01:00
Matthieu Gautier 4f458e5954 New version of kiwix-desktop 2.2.0 2022-03-04 17:31:25 +01:00
Matthieu Gautier 93f8e83274 New version of libkiwix 10.0.1
Rebuild kiwix-desktop and kiwix-tools.
2022-02-02 16:11:12 +01:00
Matthieu Gautier bc8829ef0d Build new release of all our projects.
- libzim 7.2.0
- libkiwix 10.0.0
- kiwix-tools 3.2.0
- zim-tools 3.1.0
- kiwix-desktop 2.1.0
2022-01-19 15:39:17 +01:00
Matthieu Gautier fe74ad7aff Do not compile libkiwix on android with werror
The java wrapper is using deprecated methods,
so we cannot compile with `werror`.
2022-01-18 11:42:16 +01:00
Matthieu Gautier d1941aa5af Update version of libzim.
We can rebuild only zim-tools.
Other tools depend of libkiwix we cannot release now.
2022-01-03 11:16:43 +01:00
Matthieu Gautier 462538f4a5 Do not try to cross compile aria2.
Aria2 is a special case. We actually don't really need to compile it.
kiwix-desktop through libkiwix use the aria2c binary but we always
use (package) the system binary or a prebuild release.

And we don't cross compile kiwix-desktop to windows, so we don't need
aria2c neither.
2021-12-24 13:08:29 +01:00
Matthieu Gautier ea7fa1f207 Remove unnecessary aria2 patch
This patch was to compile libaria2 on android.
But we don't compile it for android since a long time.
As it doesn't apply anymore, let's remove it.
2021-12-23 18:50:50 +01:00
Emmanuel Engelhart 71b1c2799a Update aria2c to 1.36.0 2021-12-23 18:50:50 +01:00
Matthieu Gautier 276343c6af Add missing dependency `aria2` to "all" dependencies.
`AllBaseDependencies` is used as a dummy target to build all base
dependencies in the CI.
2021-12-23 18:50:50 +01:00
Matthieu Gautier 4ee28541cd Remove unnecessary zstd patch. 2021-12-23 18:50:48 +01:00
Emmanuel Engelhart 1a3df6fa3b Use recent zstdlib 1.5.1 2021-12-22 16:04:27 +01:00
ChrisLi 82569620f2 Add MacOs arch
On top of the native platform (which may still use to compile for macos on macos)
we add a specific MacOs arch.
2021-12-22 15:24:45 +01:00
renaud gaudin a3f662a3de Fixed #501: disable extra libcurl dependencies 2021-10-26 18:13:15 +02:00
Matthieu Gautier c1205fc87d New release of libzim and zim-tools.
We don't rebuild other project as they are not ready for last version
of libzim.
2021-10-07 18:19:19 +02:00
Veloman Yunkan 41a411c667 Language data is packaged into ICU
With language data not put into icu, `icu::Locale::getDisplayLanguage()`
doesn't work correctly.
2021-07-27 16:45:04 +02:00
Matthieu Gautier 274aec60d2 Copy the right directory on libkiwix android.
The sub-directory `android-kiwix-lib-publisher` has not been renamed.
We plan to move this code in another repository anyway.
It is better for now to use the existing name instead of change the
directory.
2021-07-02 11:19:18 +02:00
Matthieu Gautier 11fc5a0a9c Use correct name for the qtwebengine class.
Wrong copy/paste.
This is not important as we reference dependencies by their name
attribute, not by the class name.
But it is better to have a correct name.
2021-07-02 11:16:02 +02:00
Matthieu Gautier c7ea2a31cb Correctly detect qmake command.
qmake may be named qmake-qt5 on some distribution.
2021-07-02 11:14:13 +02:00
Matthieu Gautier 0e6ed1384c Introduce a intermediate method to detect binaries. 2021-07-02 11:14:13 +02:00
Matthieu Gautier b995976c8a Fix packages name on fedora. 2021-07-02 11:14:13 +02:00
Matthieu Gautier c244e5b779 Link with ssp on win32.
Recent version of mingw need projects using `-D_FORTIFY_SOURCE` to link
with `ssp`.

See https://github.com/msys2/MINGW-packages/issues/5868#issuecomment-544107564
2021-07-02 11:14:13 +02:00
Matthieu Gautier aa349a18e7 Rename kiwix-lib to libkiwix.
The new name of kiwix-lib is libkiwix. Let kiwix-build adopt the name.
2021-06-30 16:45:54 +02:00
Matthieu Gautier b8160de652 Correctly install io.qt.qtwebengine.BaseApp for flatpak build. 2021-06-29 16:06:53 +02:00
Matthieu Gautier afd17b2986 Make kiwix-desktop flatpak use last version of Qt (5.15).
Adapt flatpack_builder to generate the same manifest than PR
flathub/org.kiwix.desktop#6
2021-06-23 17:59:25 +02:00
Matthieu Gautier f1dfa32a8d Use the correct archive for zim-testing-suite 0.3 2021-06-23 14:57:24 +02:00
Matthieu Gautier 96d4f3b93f Move to zim-testing-suite 0.3 2021-06-23 14:22:09 +02:00
Matthieu Gautier 7dcf57e32b Do not download zim-testing-suite when building in flatpak. 2021-05-05 15:07:29 +02:00
Matthieu Gautier 1cafcbf412 Get the "source" `zim-testing-suite` step.
The source step (install source) always exists.
The `plaformInfo.name` step may not exists
(On mixed target, we build all deps static and the last project dyn)
So the `native_dyn` doesn't exists for `zim-testing-suite`.
2021-05-05 15:06:35 +02:00
Matthieu Gautier 9d90568204 Make libzim use the test data dire downloaded with zim-testing-tool. 2021-04-28 16:26:43 +02:00
Matthieu Gautier 2d3c5ed4c7 Add zim-testing-suite dependency. 2021-04-28 16:26:43 +02:00
Matthieu Gautier 11a7ec4020 Use the full_name as for the skip file marker.
This way we are sure to download the last archive all the time.
2021-04-28 16:26:43 +02:00
Matthieu Gautier dca64eb5d5 Allow builder to set a build environment for projects using it. 2021-04-12 18:14:23 +02:00
Matthieu Gautier b286be1207 Introduce new method `get_env` to create the env. 2021-04-12 18:11:05 +02:00
Matthieu Gautier 76aa746f84 Add the `dont_skip` attribute on dependency.
Instead of explicitly add the target associated to the toolchain
if we use `build_nodeps` option let add an attribute base ourself on it
to know if we need to add it or not.

This way, we may have other dependency we must not skip.
2021-04-12 18:09:52 +02:00
Veloman Yunkan 4498eb2885 Added xapian as a dependency of kiwix-lib 2021-03-10 18:01:21 +04:00
Emmanuel Engelhart 3d8578ce8e Remove outdated Xapian remote patch 2021-03-07 15:00:58 +01:00
Emmanuel Engelhart 3e1446f2dd Upstream includes <cerrno>, not necessary anymore 2021-03-07 14:55:45 +01:00
Emmanuel Engelhart 54b47fea9e Remove xapian_sys_types.patch applied upstream 2021-03-07 14:50:56 +01:00
Emmanuel Engelhart aad2243c81 Bump-up Xapian to version 1.4.18 2021-03-07 14:41:33 +01:00
Veloman Yunkan d0db3efdce Enable inmemory backend in xapian 2021-03-07 13:14:11 +04:00
Emmanuel Engelhart f6074a7408 zim-tools needs newly Mustache 2021-02-10 14:49:16 +01:00
Matthieu Gautier b635daae68 Change version of libzim.
Libzim changes its version.
But we are not ready for release now.
2021-02-09 14:13:46 +01:00
ChrisLi 41071d7c9b
use brew list --formula (#468) 2021-01-15 10:07:00 +01:00
Kelson 9597662be8
Bump-up libmicrohttpd to 0.9.72 (#464) 2020-12-30 10:44:48 +01:00
Matthieu Gautier 0d6b143122 Download archives on mirrors of `download.kiwix.org`. 2020-12-15 15:33:10 +01:00
Matthieu Gautier 31816879ca New release of libzim, kiwix-lib, zim-tools and kiwix-desktop. 2020-11-17 16:54:18 +01:00
Matthieu Gautier 2ef8e14509 Update dependency of kiwix-desktop.
Now that kiwix-desktop use kiwix-lib to start the server, we don't need
kiwix-tools dependency.
2020-11-17 16:49:26 +01:00
Matthieu Gautier 7162b6ff2b Update dependency of libzim. 2020-11-17 16:43:27 +01:00
Matthieu Gautier a64cd9f790 New release of libzim 6.2.2 2020-09-02 18:25:00 +02:00
Matthieu Gautier b23cf13caa New release of libzim 6.2.1.
This is just a fix for windows compilation.
We don't need to trigger build for others projects,
only for kiwix-desktop because it is build on windows.
2020-09-01 09:55:43 +02:00
Chris Li 149ed01f12 Add Mac catalyst as a new target 2020-08-28 14:16:25 -04:00
Matthieu Gautier ea78ba37df New release of kiwix-lib 9.4.0 2020-08-28 16:59:59 +02:00
Matthieu Gautier bbb81438b6 New version of libzim 6.2.0 2020-08-27 17:53:19 +02:00
Matthieu Gautier 97554c04f4 Rebuild kiwix-tools with the release fix. 2020-07-23 14:34:06 +02:00
Matthieu Gautier b9245b4b86 New release of libzim, kiwix-lib, zim-tools and kiwix-desktop 2020-07-15 16:51:38 +02:00
Matthieu Gautier e81a2e7006 Merge tag 'r_10' 2020-07-15 16:20:16 +02:00
Matthieu Gautier 39a93b07b3 Fix dependency detection for zim-tools. 2020-07-15 15:51:09 +02:00
Alexander Sashnov da31dd428e remove 'zimwriterfs' project from build and CI configuration
'zimwriterfs' is now a part of zim-tools (openzim/zim-tools/#92)
2020-07-08 16:54:14 +02:00
Kelson 3de886f805 Upgrade libmicrohttpd to 0.9.71 2020-07-08 14:57:38 +02:00
Matthieu Gautier 206ed166e0 New release of kiwix-tools. 2020-07-02 15:38:52 +02:00
Matthieu Gautier 7f39755ea0 New release kiwix-lib and kiwix-tools. 2020-07-02 15:22:58 +02:00
Matthieu Gautier 2ec9f10687 New release of kiwix-lib 9.2.3
The fix is only about compilation, no need to recompile other dependencies.
2020-07-01 11:36:54 +02:00
Matthieu Gautier ef7843633e Set the Qt version to use on fedora.
The default Qt version on fedora is Qt 4. We must force the use of Qt 5.
2020-07-01 11:32:43 +02:00
Matthieu Gautier 0419cf5f4d New release of kiwix-desktop. 2020-06-30 17:47:15 +02:00
Matthieu Gautier 66bf0d2a0e New release of libzim 6.1.7 2020-06-30 17:35:25 +02:00
Matthieu Gautier ab6ea66e31 New release of libzim 2020-06-24 15:36:54 +02:00
Miguel Rocha 728caca741
Force compilation of docoptcpp (#449)
- Docopt commit id was updated and therefore we need to force a new build in order to get the latest change (docoptcpp.pc) into the deps2 archive (needed by zim-tools)
2020-06-17 16:03:27 +02:00
renaud gaudin 8478d65c90 enable compilation of native_mixed on macos
Issue #349 requires a native_mixed for macOS.
native_mixed is working for libzim so we whitelist it.

On the release CI, we fix the macos dylib rpath so it doesn't include the
full build-install step path which is probematic for a distributed file.

We build native_mixed for OSX in both CI and release mode
2020-06-17 09:04:10 +00:00
Matthieu Gautier 39ca099248 New version of libzim.
No need to rebuild other project as there is code change.
2020-06-03 15:49:47 +02:00
Matthieu Gautier 15a23fcf23 New version of kiwix-lib 2020-06-03 10:49:22 +02:00
Matthieu Gautier f384cd23e7 New version of kiwix-lib 2020-06-02 10:20:43 +02:00
Matthieu Gautier ae8a9febb9 New release of libzim.
Rebuild only projects depending of the writing part.
2020-05-25 12:21:10 +02:00
MiguelRocha e72589a850 Added a flag to force kiwix build to not do fast_clone
- Docopt cannot do fast_clone cause it is getting a
    specific commit id. This will be changed when a new
    release is available.
2020-05-25 10:57:22 +02:00
MiguelRocha 69c33da0bc Now kiwix-build retrives docopt from a commit that has pkgconfig support. 2020-05-25 10:57:04 +02:00
Matthieu Gautier e27fd7b83d Use distro module to detect the distribution name.
`platform.linux_distribution` is deprecated.

This is a recommit of 0fe69e3 now that we moved every thing on github
actions.
2020-05-21 19:55:40 +02:00
Matthieu Gautier 763fe1432d New release of zim-tools.
Also build kiwix-tools.
2020-05-18 15:54:23 +02:00
Matthieu Gautier 59b0318193 New version of libzim, zim-tools, kiwix-lib, kiwix-tools. 2020-05-18 15:25:45 +02:00
Matthieu Gautier b68236526d Revert "Use distro module to detect the distribution name."
This reverts commit 0fe69e3991.

This break installation of kiwix-build in travis' docker image.
2020-05-18 13:46:19 +02:00
Matthieu Gautier 0fe69e3991 Use distro module to detect the distribution name.
`platform.linux_distribution` is deprecated.

Fix #415
2020-05-17 17:57:24 +02:00
Matthieu Gautier 46bcb17761 New version of libzim and zimwriterfs.
Only rebuild zim-tools and not all other project as the libzim release
is only about writer issues.
2020-05-11 16:38:48 +02:00
Matthieu Gautier 77b57761dc
Merge pull request #441 from kiwix/iOS_remove_32bit_builds 2020-05-11 12:02:41 +02:00
Chris Li 23a682c52d remove platform info 2020-05-09 09:11:20 -04:00
MiguelRocha 3e2df9a8e8 Added docopt cpp dependency to zimtools. It will be needed to the new version of zimdump
Do not build docopt on android and iOS.
2020-04-27 13:39:40 +02:00
Chris Li edc606aed0 remove platform options 2020-04-24 22:20:37 -04:00
Chris Li ddc73181db higher iOS and macOS compatibility version 2020-04-24 22:20:37 -04:00
Kelson 7f6a8856b7 Remove deprecated Mustache patch 2020-04-21 09:31:21 +02:00
Kelson 5d1f5bda1f Update to Mustache v4.1 2020-04-21 09:31:21 +02:00
Matthieu Gautier 6888794ec8 New version of kiwix-lib.
Rebuild kiwix-tools and kiwix-desktop.
2020-04-20 15:43:37 +02:00
Matthieu Gautier 99226e0c6a Build zstd in flatpak.
Revert 10c767e8ce
2020-04-20 15:14:31 +02:00
Matthieu Gautier 4b080dd975 New version of kiwix-desktop. 2020-04-20 10:10:45 +02:00
Matthieu Gautier 60e3e755e1 New build of libzim, kiwix-lib and zim-tools.
Do not build kiwix-desktop yet as we will do a new release just after.
2020-04-17 17:46:28 +02:00
Matthieu Gautier ffdee634f4 Do not force a reconfigure of meson projects.
If meson.build changes, the ninja command will rebuild it.
And its avoid us to delete the build directory.
2020-04-10 00:38:47 +02:00
Matthieu Gautier 3d08278a85 New version of kiwix-desktop. 2020-04-08 20:42:11 +02:00
Matthieu Gautier bd546fe33e New version of libzim, zim-tools, zimwriterfs, kiwix-lib and kiwix-tools. 2020-04-08 18:12:01 +02:00
Matthieu Gautier 10c767e8ce Do not compile zstd on flatpak.
The meson.build file of meson is not in the main directory.
We have to update kiwix-build to handle this.

For now, compile flatpak without zstd.
We will need to do a new build on flatpak with zstd soon.
2020-04-08 18:09:39 +02:00
Veloman Yunkan 25d9e18e3d Temporary fix for facebook/zstd#2073 2020-04-07 14:12:17 +04:00
Veloman Yunkan ece4df3721 Added zstd dependency 2020-04-06 20:17:09 +02:00
Kelson 9be35a4dc0
Fix qt-everywhere-src-5.10.1.tar.xz URL (#431) 2020-04-06 20:16:01 +02:00
Matthieu Gautier fb07b58812 Fix recompilation of the CI of meson project.
We were assuming that meson project correspond to our projects and so we
were always building them, even if they were already compiled.
(This way, a simple `kiwix-build` is enough to recompile the WIP code of
our project).

However, on the CI, we do not archive the source code/build directory in
the base deps archive. So when we try to compile, the compile step of
meson projects fails because the source are not here.
We have a small workaround for pugixml but as zstd is also meson, it is
time to do something correct.

By default, all projects now try to skip if a build is already present.
Our projects are marked as `force_build` and so, they do not try to skip.
2020-04-06 19:15:40 +02:00
Matthieu Gautier 4fa5f34125 Build all make based dependency using -O3 option.
This will build all Make, CMake, QMake dependency being build with -O3.
So all our dependencies will be build with -O3.

Our project (meson) are already build in release when needed.
kiwix-desktop should be build optimized in case of release but we need
to handle it correctly. At least not build in O3 per default as it may
break debug.
2020-03-24 16:50:38 +01:00
Matthieu Gautier b910803fbe Use correct base version 2020-03-18 21:47:09 +01:00
Matthieu Gautier 71c46d984a Build lzma with assembler optimization. 2020-03-18 21:03:48 +01:00
Kelson d8707d8ad1 Release kiwix-tools 3.0.3 2020-03-01 15:52:50 +01:00
Matthieu Gautier 8cecb1c759 Rebuild kiwix-lib (for android) 2020-02-26 18:32:00 +01:00
Matthieu Gautier bf405d105c Revert 82617f6b94 2020-02-26 18:30:24 +01:00
Matthieu Gautier 6093c011ab Always write the cross_file using the same name.
Even if we use different template for different platform, we must
always use the same cross_file name.
2020-02-25 16:36:56 +01:00
Matthieu Gautier 40b5013279 Add some colors in the terminal. 2020-02-25 15:48:20 +01:00
Matthieu Gautier f504cf54e1 Do not reset the source directory if there is modification.
We simply do a `git merge --ff-only` instead of a `git reset`. This way:

- No change on the local repository
    => update to `remote/master`
- If you switch branch and local branch is behind `remote/master`
    => fast forward to `remote/master`
- If you switch branch and branches diverge
    => No update of the directory
- On branch master (or a branch behind `origin/master`) with compatible
  change in the working tree.
    =>  update of the directory
- On branch master (or a branch behind `origin/master`) but incompatible
  change in the working tree.
    =>  No update.

This way, sources are keep up-to-date as far as possible.
2020-02-25 15:46:09 +01:00
Matthieu Gautier 94c98261c7 Fix compilation on different platform in the same time.
If we modify the dependency's configure_env, we may change
the dictionary with value of the first platform. Then, when
we use it for the second platform, the previous values are used.

Do not modify the dep_conf_env dictionary and then we are good.
2020-02-24 18:24:07 +01:00
Matthieu Gautier 32e3b5b5c4 Fix compilation of kiwix-lib-app.
- We should not try to set the cross compilation flags when we use
  gradle.
- Fix anyway the setting of tho cross compilation flags for android sdk
  platform (the default implementation use the `static` attributes that
  doesn't exist for android)
2020-02-24 15:30:31 +01:00
Matthieu Gautier 661eb95df0 Use a specific cross_file on iOS cross compilation.
We need to set the property `needs_exe_wrapper` to true for
x86_64 cross compilation.

Else, meson will try to detect if we could run the cross
compiled executable, and because it is the same arch, it will
assume we can. So it will try to sanity check and execute the
cross compiled binary. Then fails.
2020-02-21 16:29:23 +01:00
Matthieu Gautier 7b6c79482a Make the dependency responsible to set the compilation env.
Instead of having the run_command function setting the
env from the buildEnv, this is the dependency that create the
env and then pass it to the run_command function.

This way, each dependency will be able to set a specific env.
2020-02-21 16:29:23 +01:00
Matthieu Gautier e27ede80cc Use correct arch_full name. 2020-02-21 15:12:17 +01:00
Matthieu Gautier 36366b2dd3 Better define of value in ios platform.
No real change, just better code to define it.
2020-02-21 15:12:17 +01:00
Matthieu Gautier 7d742f807f Fix setting of environment using env from dependency.
If `self.configure_env` is a (computed) property, the previous code
never format the value of the env.
2020-02-21 15:12:17 +01:00
Matthieu Gautier c4295b1644 Do not set a specific compiler for ios 2020-02-21 15:12:17 +01:00
Matthieu Gautier 79bb23504b Update version of kiwix-lib to 9.0.1
Do not rebuild dependencies as the change is only about the android
wrapper.
2020-02-21 15:00:26 +01:00
Matthieu Gautier 14d6aae4b1 Update version of kiwix-tools. 2020-02-13 11:46:20 +01:00
Matthieu Gautier 5d9730423a Update version of kiwix-lib.
Do not make a new build of kiwix-tools right now as we will do a
new release of it once kiwix-lib release is published.
2020-02-12 15:27:27 +01:00
renaud gaudin 3569c277a9 switch to older version of libmicrohttpd
libmicrohttpd 0.9.69 is not working properly on macOS (catalina)
2020-02-12 11:09:46 +01:00
renaud gaudin 5af0a8bfe7 fixed crash in xapian-core configure
use a copy of configure_env to prevent edits on what's being iterated
2020-02-11 13:10:21 +00:00
Kelson 29956ee6be Release zimwriterfs 1.3.8 2020-02-10 14:36:11 +01:00
Matthieu Gautier 0a37c8a573 Change args given to kiwix-lib meson for android. 2020-01-28 15:49:52 +01:00
Matthieu Gautier 2774967e6d Set the pkg-config for cross-compiling.
This is needed for win32 on fedora.
It is better to use a specific pkg-config than setting a PKG_CONFIG_LIBDIR.
This avoid other CI (libzim/...) to set a env var specific to win32 build.
2020-01-20 22:55:50 +01:00
Matthieu Gautier 82617f6b94 Do not set `march` for android build.
We already build to the right architecture by using the arch_full triplet
gcc/g++/...
We don't need to set march when building android.
2020-01-20 22:55:21 +01:00
Kelson b92a111fcc
Upgrade libmicrohttpd to 0.9.69 (#394) 2019-12-16 16:57:59 +01:00
Kelson 2d7b96c997
Add Ubuntu 2020-04 focal to the CI (#393) 2019-12-16 13:24:32 +01:00
Kelson 40dc15057c Fix small typo 2019-12-14 15:21:16 +01:00
Kelson 8420dcb474 Bump-up Xapian to 1.4.14 (#382) 2019-12-09 01:12:48 +01:00
Kelson 1a6b9b00ec Release kiwix-lib 8.2.2 2019-12-08 12:17:48 +01:00
Matthieu Gautier 95138d207b Remove an unwanted print. 2019-12-05 12:32:13 +01:00
Matthieu Gautier a82d6430dc Remove support of kiwix-android and kiwix-custom-app. 2019-12-05 12:30:10 +01:00
Matthieu Gautier b6bbf9b098 Do not install gradle. Use gradlew script. 2019-12-05 12:30:10 +01:00