Job `Trigger_Docker` is run in a simple environment not configured.
So tools as `ninja` are not installed. But we don't care as we just want
to trigger a docker build.
But `common` script now start by asking kiwix-build the build dir.
kiwix-build must not fail in this case.
The target_platform option has always be wrongly named.
This is not the platform we are targeted but how we compile.
This was ok at beginning as specifying how we compile somehow define
for what we compile but this is not a one to one mapping.
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.
This is different than `--dont-install-packages` that will try to
compile the dependencies.
`--asumme-packages-installed` will no try to install packages, but will
not try either to compile dependencies.
This commit add a first version code to build a flatpak of kiwix-desktop.
It is mainly based on the PR #254 of @birros (hence he is the author of this commit)
However there is some differences :
- I (@mgautier) create a new builder to run the flatpak build instead of using a new
dependency.
- Use the flatpak platform to install org.kde.Platform and org.kde.Sdk
This code version doesn't correctly work but I wanted to commit the birros' code
without too many modification (even if there is a lot).
By building kiwix-android on the `android` platform, we can now build
`kiwix-lib` on all `android_<arch>` platforms, and so have all
architectures in the same apk.
Fix#108
Introduce also a "NeutralEnv", a build environment independent of the
targeted platform. All `Source` now build using the neutralEnv.
Most of toolchains are also using neutralEnv except android_ndk who is
specific to a platform.
As toolchain are neutral, platform specific environment variables are now
set by the platformInfo directly instead of the toolchain.
Those dependencies are used for bittorent and metalink.
For now, we don't support those features (we should in the future).
However, it seems that if development package are installed on the system,
libaria will try to link with libsqlite3 and libxml3 anyway.
We have to investigate this, but it breaks static build of kiwix-tools.
As we are not using those feature for now, let's just explicitly
compile libaria2 without sqlite3 and libxml2.
Make kiwix-build installable using pip.
Module is now called `kiwixbuild` because `kiwix-build` is not a valid
python identifier.
Also split toolchains in separated directory.