Commit Graph

261 Commits

Author SHA1 Message Date
ba7028f0a8 Force the source_dir of ctpp2 source.
The `source_dir` is automatically infer from the name of the dependency.
As the ctpp2 source is use in two dependencies (ctpp2 and ctpp2c), if
we use the default source_dir, kiwix-build will use one name and the
other dependency will not find the source directory.

By forcing the `source_dir`, both dependencies will use the same directory.
2017-12-05 09:32:47 +00:00
43937caf6d Make travis create the dist archive.
TODO: Copy the archive at the right place.
2017-12-05 09:32:47 +00:00
a9ce8ee8c1 Add a --make-dist command to kiwix-build.
If specified, kiwix-build will not "make/install" the target but make
the dist archive (source).

It will build dependencies, as the make dist will try to compile and test
the target.
2017-12-05 09:32:47 +00:00
bb5b85da50 Make travisCI publish binaries as release versions when tag is pushed.
This publish the same this that nightly build except that :
- Use the `--make-release` option to force kiwix-build to use tagged
  version of subprojects.
- The archives are named using the tag name.
- The archives are pushed to "releases" directory in download.kiwix.org.
2017-12-05 09:32:47 +00:00
e4f8b6c7a9 Add a option to kiwix-build.py to build release version of subproject.
With `--make-release` option, kiwix-build.py will build the tagged
version of the subproject.
2017-11-28 22:42:16 +00:00
9823f7ae48 Merge pull request #95 from kiwix/ci_zimwriterfr_zimtools
Also compile zim-tools and zimwriterfs in the CI.
2017-11-28 22:41:17 +00:00
603300c154 Allow android build to fails.
Recent changes on android side make the build fails.
While this is not fixed, do not block MR not related to kiwix-android.

This should be reverted as soon as kiwix-android build is fixed.
2017-11-28 21:41:17 +00:00
7c7471e01c Update version of gradle.
`kiwix-android` changes the minimum version of gradle to use
kiwix/kiwix-android#289

Let's adapt.
2017-11-28 15:18:37 +00:00
d7ffc4bd34 Add gumbo dependency.
This is needed by zimwriterfs and the package doesn't exist on
ubuntu trusty (used by travis CI).
2017-11-28 14:30:31 +00:00
19730ed7c3 Compile zim-tools only on native platform.
There is no gcc-5 compiler available for cross-compiling.
2017-11-28 13:13:15 +00:00
53ecc65b9d Zimwriterfs need libmagic-dev.
Install the package `libmagic-dev`.

There is no precompiled libmagic package from cross-compilation and we
are mainly using zimwriterfs only on linux.
2017-11-28 13:11:39 +00:00
7fc557dd44 Use gcc-5 to compile everything.
Zimsplit use ofstream move `operator=()` or `swap()` method.
This has been implemented in gcc-5 only
(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54316)

So install g++-5 and use it in travis CI.
2017-11-28 12:26:08 +00:00
89e6068572 Also compile zim-tools and zimwriterfs in the CI.
Nightly will also be publish alongside with other nightly's.

Fixes #89 and #90
2017-11-28 12:26:01 +00:00
dcef39c28f Merge pull request #86 from kiwix/zim-tools
Add support of `zim-tools` in kiwix-build.
2017-11-14 18:58:21 +01:00
00bc8238f0 Add support of zim-tools in kiwix-build. 2017-11-14 11:46:54 +01:00
a37aae0142 Merge pull request #91 from kiwix/xapian_1.4.5
Move to Xapian 1.4.5
2017-11-07 22:31:48 +01:00
1d1dc3a5f5 Move to Xapian 1.4.5 2017-11-07 21:07:01 +01:00
e9f0ed6a26 Merge pull request #68 from kiwix/easy_cusotm_app
Small perl script to build custom app manually
2017-11-07 21:05:46 +01:00
ba48334e48 Add option --version 2017-11-07 20:09:14 +01:00
76362a6caf Fix VERSION_CODE and CONTENT_VERSION_CODE 2017-11-07 20:08:15 +01:00
fb8d4cea7b Small perl script to build custom app manually 2017-11-07 20:08:15 +01:00
9fdc25a165 Merge pull request #87 from kiwix/android-license
Fix android sdk license change.
2017-10-17 16:24:54 +02:00
d9be1808c7 Fix android sdk license change. 2017-10-17 15:25:18 +02:00
667af63e98 Merge pull request #84 from kiwix/xapian
Use the right patch for xapian.
2017-10-11 00:12:52 +02:00
0898e24145 Use the right patch for xapian.
The previous patch was overly complex and finally wrong.
We should simply use `@XAPIAN_LIBS` as `Libs.private`.

Next release of xapian will integrate this
(https://trac.xapian.org/ticket/751), but for now, we still a patch
on our side.
2017-10-10 22:57:11 +02:00
41f6c9b3aa Merge pull request #85 from kiwix/meson_android_file
Avoid rename the meson cross compilation file.
2017-10-10 12:14:32 +02:00
dc00fcd297 Avoid rename the meson cross compilation file.
This file is exported in CI archive for other projects.
If we change its name, it will not be exported and other projects will
break.
2017-10-10 11:19:14 +02:00
47b5b55ed4 Merge pull request #83 from kiwix/google_test
Run meson test when possible.
2017-10-02 17:35:08 +02:00
4997017be2 Run meson test when possible.
To run unit-test (meson) on cross-compilation, we need a wrapper to run
the binary (wine, qemu, ...), but:

- We have no emulator for android (we have one for the system, but we can't
  simply run a binary)
- With dynamic compilation, it seems pretty complex to configure them
  correctly.
- For mingw32 compilation, `wine` need to be correctly configured to
  find dll from the system mingw32 installation.
2017-10-02 16:05:06 +02:00
9ab444521c Merge pull request #82 from kiwix/fix_travis_build
Fix installation of meson and pillow (pip3) in travis.
2017-09-11 15:15:37 +02:00
e76ca14d63 Keep the symlinks.
It seems that shutil.copytree on travis fails to copy symlinks to
directory. It is probably due to last travis changes.

Let's keep the symlinks as they are.
2017-09-11 13:24:29 +02:00
e43e502cb7 Fix installation of meson and pillow (pip3) in travis.
I don't know why, but the travis build doesn't work since few days.
It seems that pip3 cannot install in `/usr/local` anymore.
Probably related to last travis change* as a lot of people seems to have
problem with this update and python (even if this is not the same problems)

Anyway, we should not install a dependencies in global environment without
a sudo. Let's install the pip3 dependencies for the user only.

[*] https://docs.travis-ci.com/user/build-environment-updates/2017-09-06/
2017-09-11 11:13:45 +02:00
f3a3fa754a Merge pull request #76 from kiwix/travis_android
Travis android
2017-09-04 14:23:09 +02:00
a0c29d19df Enable build cache for gradle.
This should reduce build time.
2017-09-04 10:49:37 +02:00
4b1a4928b5 Do not (travis) fail if android build is longer that 10 minutes. 2017-09-04 10:48:49 +02:00
e2bb3ad2f6 Merge pull request #73 from kiwix/no_uuid_darwin
Do not compile uuid on macos or ios
2017-08-15 13:54:14 -04:00
a1f45321be Do not compile uuid on macos or ios
We don't need it as it is available is "standard" sdk.
2017-08-15 11:10:37 -04:00
fa4c9d464a Merge pull request #70 from kiwix/no_ctpp2
Do not try to compile ctpp2 and ctpp2c on Darwin.
2017-08-15 11:08:48 -04:00
39fcdcca8f Do not try to compile ctpp2 and ctpp2c on Darwin.
kiwix-lid doesn't need them on Darwin (as on Android).
2017-08-14 16:32:50 -04:00
3fba9441c5 Merge pull request #69 from kiwix/update_gitignore
Add a lot of common things to ignore to .gitignore
2017-08-14 11:19:16 -04:00
60dc0111d9 Add a lot of common things to ignore to .gitignore 2017-08-14 09:57:00 -04:00
2493f7e42f Merge pull request #66 from kiwix/fix_custom_app
Fix custom app
2017-07-19 18:26:07 +02:00
d04af4661a [CUSTOM_APP] Small fixes of help of options. 2017-07-18 15:57:13 +02:00
f16c909090 [CUSTOM_APP] Correctly set the version_name.
The version_name need to be set a compilation time.
By default the version_name is taken from json info file.
But a user may want to change it.
2017-07-18 15:57:12 +02:00
39501fe724 Copy icu data at the right place.
`kiwix-android` now use all files in "icu" assets directory.
Not anymore directly the `icudt.dat` file.
2017-07-18 15:56:28 +02:00
78dd2626ca [CUSTOM_APP] Add a zim_path option to build_custom_app.py
If the user what to make a custom_app locally, he will need to download
the zim file before. As he has already the zim, it is better to give
the zim_path instead of give the zim_url and have `build_custom_app.py`
download a second time the zim.
2017-07-18 15:56:26 +02:00
ac5dc39955 Merge pull request #62 from kiwix/apple_platforms
Adding a few changes for Apple platforms
2017-07-17 15:00:16 +02:00
a9eaa71357 Check that target platform is compatible with current host.
Not all target platform can be compiled on all platform.
For instance, all `static` target or `win32`, `armhf` and `android` targets
cannot be compiled on macOS.

Simply check that the current host is supported by TargetInfo and exit
nicely if needed.
2017-07-17 14:13:31 +02:00
c40cce4f82 Add a patch for iOS cross-platform static 2017-07-17 14:13:31 +02:00
3e835d0c74 Add a patch for macOS native dyn 2017-07-17 14:13:31 +02:00