Commit Graph

560 Commits

Author SHA1 Message Date
Matthieu Gautier 69358afe0b Rebuild libzim release 2024-08-29 10:26:07 +02:00
Emmanuel Engelhart c627f62ee1 Release libzim 9.2.3 2024-08-28 21:04:22 +02:00
Matthieu Gautier e75fc76162 Bump base_deps_meta_version to rebuild docopt, icu and boostregex 2024-08-28 20:10:52 +02:00
Matthieu Gautier 01655d3ce0 Use icu4c pre-compiled using MSVC2022 on Windows 2024-08-28 20:10:52 +02:00
Matthieu Gautier 7009841bcc Make docoptcpp use boost.regex on Windows
std::regex is kind of broken on Windows[1].

[1] https://github.com/docopt/docopt.cpp/issues/49
2024-08-28 20:10:52 +02:00
Matthieu Gautier ef94b2bea5 Add docoptcpp as dependency of kiwix-tools 2024-08-27 15:53:22 +02:00
Matthieu Gautier 147e98f7cb Use our hosted archive for aarch toolschain.
Upstream have removed the archive with its new release.
2024-08-27 15:53:22 +02:00
Matthieu Gautier ec5a36903b Bump base_deps_meta_version to rebuild docopt 2024-08-27 15:39:25 +02:00
Matthieu Gautier 93d3fdd14e Build docoptcpp using Meson 2024-08-27 15:39:25 +02:00
Matthieu Gautier a7f42fcc99 Compile zim-tools dependencies on Windows github CI. 2024-08-27 15:39:25 +02:00
Matthieu Gautier 667deb00c3 Activate testing of libkiwix on Windows
Now we have fixed libkiwix on Windows, we can activate testing it.

See kiwix/libkiwix#1113
2024-08-27 13:19:15 +02:00
Matthieu Gautier d8b4d24d7f Add more dependencies is base dependencies on Windows 2024-08-26 10:40:24 +02:00
Matthieu Gautier ce4d03989b Build only debug or release on Windows.
On Windows we cannot mix debug and release build.
So we have to choose only one.
2024-08-26 10:40:24 +02:00
Matthieu Gautier 1e4b88d2f0 Use nmake instead of make on Windows
Qmake in generating Makefile for nmake on Windows/msvc.
2024-08-26 10:40:24 +02:00
Matthieu Gautier 7fbeb2fc6d Move `-j4` option in `make_options`
This way we can remove it when on Windows.
2024-08-26 10:40:24 +02:00
Matthieu Gautier 3bdce3069a Patch libmicrohttpd's meson to correctly detect size of `timeval.tv_sec` 2024-08-22 15:21:53 +02:00
Matthieu Gautier d87b37fba2 Fix flatpak builder for source with several archives 2024-08-21 15:43:28 +02:00
Matthieu Gautier f00fa4cbd6 Use prebuild aria2c on Windows 2024-08-21 15:11:42 +02:00
Matthieu Gautier 5905de35a1 Bump base_deps_meta_version to rebuild libmicrohttpd and libcurl 2024-08-21 13:33:26 +02:00
Matthieu Gautier 85d1bcff7e Do not build pugixml in release mode.
All project must be either compile in debug or release on Windows.
2024-08-21 13:33:26 +02:00
Matthieu Gautier 6c8a9540bd Build libmicrohttpd with meson 2024-08-21 13:33:26 +02:00
Matthieu Gautier 23a6b93fcc Build libcurl with meson. 2024-08-21 13:33:26 +02:00
Matthieu Gautier 04d0ba6a92 Temporary deactivate test for libkiwix on Windows. 2024-08-21 13:33:26 +02:00
Matthieu Gautier 294c34ca80 Fix extract of meson archive.
Previous commit was removing the meson_archive.

Fix #723
2024-08-21 10:02:33 +02:00
Matthieu Gautier edf1e4ce03 Fix pkg_config template for icu4c on Windows.
We must use `/` separator.
Meson post-process output of pkg-config. If we use `\`,  it miss-interpret it
and libdir is broken.
2024-08-20 18:15:24 +02:00
Matthieu Gautier 00363fdc8c Use prebuilt icu on Windows 2024-08-20 17:07:45 +02:00
Matthieu Gautier f433b25013 Kiwix-build doesn't try to build qt nor qtwebengine
Fix #714
2024-08-19 12:11:38 +02:00
Matthieu Gautier be232d790e Add xapian-core to base dependencies on Windows. 2024-08-15 14:10:17 +02:00
Matthieu Gautier 28d02bfd7a Deactivate xapian fuller compact on libzim.
This flag used on xapian-meson build on Windows ends in a crash in
libzim when compacting the database.

To be fixed at a moment but let's not use this flag for now on Windows
2024-08-15 14:09:15 +02:00
Matthieu Gautier 752bdd18ac Build xapian with classic autotools on other platform than Windows.
The meson build fails on cross compiliation `win32_*` and
on `native_dyn` on Macos (but doesn't fail on `native_static` or
`native_mixed`...)

On top of that, the fact that xapian-meson build system is fluky on
Windows doesn't make me confident.
As I will be out for few months, I prefer keep the autotool build system
on already working configs.
2024-08-15 14:07:24 +02:00
Matthieu Gautier 16654f9563 All native config are compatible with windows. 2024-08-15 14:07:16 +02:00
Matthieu Gautier b026e7e06c Bump base_deps_meta_version to rebuild xapian-core 2024-08-15 14:04:26 +02:00
Matthieu Gautier 942dba4d9c Use git source for xapian.
We have move the meson build system (and various fixes) in a git
repository.
2024-08-15 14:03:59 +02:00
Matthieu Gautier b589496076 Do not use custom data for icu4c on Windows.
Meson build system of ICU seems to not support custom data on Windows.
So let's use the default data on Windows.
2024-08-15 14:03:55 +02:00
Matthieu Gautier f9b890c58d Build xapian using meson build system. 2024-08-15 14:03:49 +02:00
Matthieu Gautier 8648e8bc27 Revert "Do not build libzim with xapian dependency on Windows."
This reverts commit 6bfe9ec8b1.
2024-08-15 14:03:45 +02:00
Matthieu Gautier 907d39ab84 Update flatpak build
Fix https://github.com/flathub/org.kiwix.desktop/issues/10
Fix https://github.com/kiwix/kiwix-desktop/issues/961
2024-08-14 17:12:41 +02:00
Matthieu Gautier 2a1b18066f New version 3.4.2 of zim-tools 2024-07-10 19:12:25 +02:00
Matthieu Gautier c7bd6182e0 Do not hard-code qmake command 2024-07-08 15:25:54 +02:00
Matthieu Gautier d066655a73 Rebuild libkiwix 13.1.0
When releasing libzim and libkiwix, we use config native_mixed with is a
mix of static and dynamic linking:

- Dependencies are build as static libraries.
- Released projects (libzim/libkiwix) are build as dynamic libraries,
  statically linked to dependencies.

This way, we have only one `.so` file which contain all our needed symbols.

However, this logic is "local" to each project.
This mean that libkiwix is linked **statically** to libzim.
So libkiwix.so is containing libzim symbols.

But on "java-libkiwix", we are both linking to libzim.so and libkiwix.so.
If the version of the (dynamically) used libzim.so is not the same that the
version on which we have (statically) linked libkiwix.so, we end with
symbols of two different versions being loaded and conflicting.

So let's rebuild libkiwix with last version of libzim to avoid this conflict.
2024-06-28 09:50:52 +02:00
Emmanuel Engelhart 35ca7068a1
Bump-up version of base_deps_meta_version 2024-06-22 15:00:08 +02:00
Emmanuel Engelhart 4b6c4a2547
Use version 0.6.0 of ZIM testing suite 2024-06-22 14:55:32 +02:00
Emmanuel Engelhart 2b25f3cfc3
Release libzim 9.2.2 2024-06-22 14:24:20 +02:00
Matthieu Gautier e31147c7e5 Revert "WIP Use windows branch on windows CI"
This reverts commit 05fc3b409c.

This was a temporary commit to make the PR compile with a dev branch of libzim.
Now PR on libzim is merged. We must remove this commit.
2024-06-17 10:11:03 +02:00
Matthieu Gautier 05fc3b409c WIP Use windows branch on windows CI 2024-06-07 18:34:30 +02:00
Matthieu Gautier d2d1f686b1 Build libzim on windows with werror=false
MSVC throw a lot of warning because we also must re-export stl symbols
used in our exported class.

See [1] and [2] (and links inside) for more information.

Especially [3] which seems to say that we should have issue at link time if
it compatibility issue occurs (and so easily catchable).

So I just remove the `werror=true` for now.

[1] https://stackoverflow.com/questions/16419318/one-way-of-eliminating-c4251-warning-when-using-stl-classes-in-the-dll-interface
[2] https://stackoverflow.com/questions/2132747/warning-c4251-when-building-a-dll-that-exports-a-class-containing-an-atlcstrin
2024-06-07 18:33:55 +02:00
Matthieu Gautier 46e58b763d Don't depend on lzma. 2024-06-07 15:38:45 +02:00
Matthieu Gautier 6bfe9ec8b1 Do not build libzim with xapian dependency on Windows. 2024-06-07 15:38:05 +02:00
Matthieu Gautier e3656ab3f6 Do not print warning on windows 2024-06-07 15:36:58 +02:00
Matthieu Gautier cd04a895fb Bump base_deps_meta_version 2024-06-07 15:36:58 +02:00