Commit Graph

1570 Commits

Author SHA1 Message Date
Matthieu Gautier eac3b79151 Do not install unneeded package in travis/install_extra_deps.sh 2017-03-13 13:18:14 +01:00
Matthieu Gautier c8e2e14b5c Update README.md 2017-03-13 13:18:14 +01:00
Matthieu Gautier 411f861b13 Move log dir in a subdir of BUILD_* 2017-03-13 13:18:14 +01:00
Matthieu Gautier 5ae802b707 Do not pass -Dctpp2-install-prefix to KiwixTools.
We don't need it anymore with last version of KiwixTools.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 0845a5a53b Move to last version of ICU.
There is a bug in 56_1 version when compiling resource.
This is fixed in 58_2.

However the last version 58_2 use _create_local and _free_locale symbols on
Windows and we need to add the right libs to the compilation command.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 6b85f7d012 Update xapian patch for pkg_config.
AC_SEARCH_LIBS try to compile and use a symbol (timer_create) using
a lib (rt).

But, in fact, it also try to use the symbol but without using the lib.
If it's work, it consider that the libs is found and set the ac_res
variable to "none required".

So, we must check the value of ac_res to know if we must add '-lrt' to
the pkg-config file.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 6d7adf0f04 Add a patch for icu4c on android 64 bits.
On recent version of the NDK (r13b), `exec_elf.h` has been removed for
API level >= 20. On 64 bits, we need the API level 21, and then,
a defined (ELF64_ST_INFO) is missing.

We readd it where (and if) we need it.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 600f1b55aa Add the android ndk toolchains and compile android on travis. 2017-03-13 13:18:14 +01:00
Matthieu Gautier e3c0c5db82 Toolchains now can have a builder and a source. 2017-03-13 13:18:14 +01:00
Matthieu Gautier 940cea290d Use a 'extra_libs' key instead of 'properties'.
'properties' is too close of the meson definition and we need to duplicate
the entries for 'c_link_args' and 'cpp_link_args'.

By using 'extra_libs' we have a more functional definition of what we want.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 29bba313bc [API change] Use just one option to specify the build target.
There is no more option for static or share build. This value is
integrated in the build-target.
2017-03-13 13:18:14 +01:00
Matthieu Gautier c31a29488a [API Change] User can specify the target to build.
This is a API change, the working directory is set using the
--working-dir option, not as an argument.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 83d6d00acd Force name of ICU to differentiate icu_native from icu_cross-compile. 2017-03-13 13:18:14 +01:00
Matthieu Gautier cbb0ce83b5 Disable compilation of unused stuff in UUID. 2017-03-13 13:18:14 +01:00
Matthieu Gautier 960f6c9e82 zlib now compile using configure/make instead of cmake.
With cmake it is not possible to install only one kind of library
(static or shared).
2017-03-13 13:18:14 +01:00
Matthieu Gautier dd7a0660c0 Allow the use of pre/post build script in dependencies. 2017-03-13 13:18:14 +01:00
Matthieu Gautier 92c1a5513a Move some variables definition in a property instead of classic calculus. 2017-03-13 13:18:14 +01:00
Matthieu Gautier bd4e7d3550 Move some common options for static/shared libs in the common class. 2017-03-13 13:18:14 +01:00
Matthieu Gautier 6d69f056a4 Rewrite how we set environment. (Simpler way to write the same thing) 2017-03-13 13:18:14 +01:00
Matthieu Gautier f2c841df6d extract_archive can now extract zip format. 2017-03-13 13:18:14 +01:00
Matthieu Gautier 00acba9ee9 Add the notion of toolschain.
- For now, only the win32 is here.
- There no more nativeBuilEnv as the buildEnv can launch command without
  using the toolschain.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 77137e0908 Add lzma dependency. 2017-03-13 13:18:14 +01:00
Matthieu Gautier 843964e55e Check if packages are installed before trying to install them.
This avoid to ask to user its (sudo) password if all packages are already
installed.
2017-03-13 13:18:14 +01:00
Matthieu Gautier 759812c41d Factorize how we create working directories. 2017-03-13 13:18:14 +01:00
Matthieu Gautier ffee068fd0 Split the too long kiwix-build.py file into several smaller ones. 2017-03-13 13:18:14 +01:00
Matthieu Gautier 38a14d8af6 Merge pull request #8 from kiwix/use_ccache
Use ccache
2017-03-13 13:17:09 +01:00
Matthieu Gautier 04b9973515 [TRAVIS] Tell travis to keep the ccache cache. 2017-03-13 11:50:02 +01:00
Matthieu Gautier 5b60295fb9 Add installation of `ccache` package 2017-03-13 11:50:02 +01:00
Matthieu Gautier cff9642c23 Use ccache if available.
If ccache is availble, use it. It can improve a lot the compilation time.
We do not change the meson_cross_file.txt as, for now, meson doesn't
support ccache when cross-compiling.
2017-03-13 11:50:02 +01:00
Matthieu Gautier 7b293575de Lower case the distname (only on linux distribution)
Cases are (should be) not important here. Let's lower it.
2017-03-13 11:50:02 +01:00
Chris Li 1364704e1e Support flag --no_cert_check (#13)
Support flag --no_cert_check, with batched download and write file to disk
2017-03-07 16:52:02 -05:00
Matthieu Gautier 1841f41589 Merge pull request #18 from kiwix/xapian-version
Update xapian dependency to 1.4.2.
2017-03-07 20:20:28 +01:00
Matthieu Gautier 2b4a7726ea Update xapian dependency to 1.4.2.
The patch `xapian_no_hardcode_lz.patch` is not necessary anymore.

Fix #15.
2017-03-06 18:29:22 +01:00
Emmanuel Engelhart c092c106f5 Save nightlies at the right place #11 2017-02-26 21:39:58 +01:00
Matthieu Gautier bfc08574ce Change the displayed version of e2fsprogs (uuid) also.
Changing the archive to get is nice, it is better to also change the
version.
2017-02-13 17:56:14 +01:00
Matthieu Gautier a7af69de28 Update our e2fsprogs dependency to 1.43.4.
Use the last version is always better.
More over, it should fix compilation on macOS.

Fix #9.
2017-02-13 17:41:29 +01:00
Matthieu Gautier 877ecdd2a8 Deploy archive in a dated sub-directory, not directory in the main dir. 2017-02-13 12:11:54 +01:00
Matthieu Gautier d78bc45be1 Properly fail in travis if sub-script fail.
Make `kiwix-build.py` also fail if sub-command fail instead of just print
an error message and quit.

`kiwix-deploy.py` is far more simple and already fails miserably if a
sub-command fails.
2017-02-13 11:53:40 +01:00
Matthieu Gautier 85db545feb Do not fail if we are running on Darwin platform.
Fixes #7.
2017-02-13 09:55:59 +01:00
Matthieu Gautier f8f9ed5bce We do not use `_targets_env`, remove it. 2017-02-13 09:53:10 +01:00
Matthieu Gautier 5f01937d69 [TRAVIS] Be sure that ssh key has correct file rights. (Bis)
The ssh key right mode must be 600. (644 is for public key...)
2017-02-12 19:09:10 +01:00
Matthieu Gautier 57eadef4a0 [TRAVIS] Be sure that ssh key has correct file rights.
The ssh key right mode must be 644.
2017-02-12 12:56:01 +01:00
Matthieu Gautier 40e05690e4 [TRAVIS] Use travis configuration to add download.kiwix.org to known_host
First, previous commit was broken cause of wrong argument order.
Second, travis has a option to handle this case, let's use it.
2017-02-09 16:15:27 +01:00
Matthieu Gautier d3d6e54d3f [TRAVIS] Do not StrictHostKeyChecking to allow scp script to connect.
By default, at first connection, the user has to accept the server
host_key.
As we are running on travis, there is no user.
Make ssh automatically add new host_key to know_hosts file.
2017-02-08 15:16:33 +01:00
Matthieu Gautier 99c94b552e [TRAVIS] Add a script to deploy archives on download.kiwix.org/nightly 2017-02-08 10:09:42 +01:00
Matthieu Gautier 3ac377b8c0 Add a small script to deploy archive a build binaries. 2017-02-08 10:09:26 +01:00
Matthieu Gautier 49ee44cd5c [TRAVIS] Add a IRC notification to #kiwix. 2017-02-07 17:43:27 +01:00
Matthieu Gautier 7d6b2d2135 Add Travis support.
We now build static/dynamic on ubuntu(native) and win32(cross-compilation).
2017-02-07 14:35:34 +01:00
Matthieu Gautier 5919e28a2f Packages need to be install before we look to binaries installed by them.
In setup_win32, we search where gcc compilers are installed. We need
to have them installed before.
2017-02-07 14:30:53 +01:00
Matthieu Gautier 6d18da1587 Do not setup the 'wine' exe_wrapper in meson.
We cannot install it on travis (for now ?) and we don't use it anyway.

This have somehow to be fixed as the wine tool will be necessary to test
binaries and we want tests.
2017-02-07 14:30:41 +01:00