Commit Graph

20 Commits

Author SHA1 Message Date
Matthieu Gautier b8f913ce69 Backport icu4c patch to not include `xlocale.h`
Last version of glibc 2.26 has removed the `xlocal.h` file.
(https://sourceware.org/glibc/wiki/Release/2.26#Removal_of_.27xlocale.h.27)

We cannot use last version of icu4c (60.1) because it used a feature not
yet exported in mingw32 releases.

So we need to backport a patch for this.

Fix #110
2018-01-29 11:15:50 +01:00
kelson42 1d1dc3a5f5 Move to Xapian 1.4.5 2017-11-07 21:07:01 +01:00
Matthieu Gautier 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
Matthieu Gautier 5972b0b2b0 [CTPP2] CMake should not install ctpp2c.
As we are compiling `ctpp2c` in static native and install it with a simple
`cp`, the default compilation of ctpp2 library should not install ctpp2c.

Else we would have a wrong `ctpp2c` in the path and later compilation will
fail.
2017-07-17 10:34:17 +02:00
Matthieu Gautier 1fda646708 Always build ctpp2c for the host and static.
We are using `ctpp2c` when building kiwix-lib to compile embedded resources.

As `ctpp2c` will be used in the host machine, it always need to be
compiled for the host (native).
But we still want tho ctpp2 library compiled for the target platform.
As we don't want handle the conflict between two dynamic lib with the same
name but for two different platforms, we build ctpp2c statically.
2017-07-12 14:31:37 +02:00
Matthieu Gautier fbb84e9d27 Patch ICU to remove unwanted data.
We don't need all the ICU data and we need to reduce binaries' size
(Especially for android where we have a limit of 50Mo per APK).

By removing unwanted ICU data, we reduce a lot the data size and so
the final binaries' size.

There is also some "problems" to compile the `ja.txt` collfiles,
the "resource compiler" crashes.
As we don't need it, we also remove it.
2017-05-09 14:02:37 +02:00
Matthieu Gautier 2e14765a38 Update ctpp2 patches to handle mingw32 compilation with meson 0.40.0
It seems that last meson version (0.40.0) do not pass cross compilation
extra_args to compiler when checking for headers.
Thus, the kiwix-lib check for ctpp2 headers fails because the WIN32
define is not present. So kiwix-lib is compiled without CTPP2 but
kiwix-tool compile as if kiwix-lib where compile with CTPP2 and fails.

By making CTPP2 headers check for `__WINGW32__` we workaround this problem.

I don't know if this is a bug in meson, ctpp2 or kiwix-lib but this small
fix allow to compile correctly with last meson version.
2017-04-24 11:12:17 +02: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 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
Matthieu Gautier 640750e1ab zlib patch to use std name for lib.
Use a standard name libz.(so|a) if we are using mingw (as we do on linux).

This patch somehow deprecate the previous commit (patch) but both patches
are the right thing to do.
We need this one especially for others dependencies using pkg-config.
The generated .pc always use the '-lz' option and so, we need the correct
names for the lib.
2017-02-07 12:06:41 +01:00
Matthieu Gautier 5259568a89 xapian patch to not use hardcoded '-lz' option.
zlib may be installed under the libzlibstatic.a or libzlib.dll.so names.
xapian correctly detect those name but use '-lz' option for xapian_inspec
binary.
2017-02-07 12:02:44 +01:00
Matthieu Gautier b9c93257a6 Add CTPP2 patch to correctly handle ICONV_SUPPORT variable.
If there is no ICONV_SUPPORT, we must not try to compile stuff relative
to iconv.
2017-02-07 10:47:51 +01:00
Matthieu Gautier 912bd34637 Patch icu : Do not use a specific name for static libs. 2017-01-30 18:09:35 +01:00
Matthieu Gautier a9343f23b4 Update xapian_pkgconfig patch. 2017-01-30 18:09:35 +01:00
Matthieu Gautier ca53171bdc Add patches to cross-compile ctpp2 correctly. 2017-01-30 18:09:35 +01:00
Matthieu Gautier 576a368b21 Fix the install name of the static lib for ctpp2.
Patch came unchanged from the debian packaging of ctpp2.
2017-01-24 11:47:54 +01:00
Matthieu Gautier fc8b059473 Patch CTPP2 do not modify the source dir. 2017-01-09 13:57:10 +01:00
Matthieu Gautier 59ad736645 Add installation of missing hpp when compiling/installing pugixml. 2016-12-22 13:49:56 +01:00
Matthieu Gautier eb06ca840b Add a script to build all projects and dependencies for kiwix-tools.
This script download and compile all depedencies and subproject for
kiwix-tools.

Ideally it should be as simple as run the script with the install dir as
argument.

This script compile a dynamic or a static build of kiwix-tools (kiwix-serve)

This as been tested on Fedora.
2016-12-22 13:49:56 +01:00