Commit Graph

556 Commits

Author SHA1 Message Date
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
ef94b2bea5 Add docoptcpp as dependency of kiwix-tools 2024-08-27 15:53:22 +02:00
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
ec5a36903b Bump base_deps_meta_version to rebuild docopt 2024-08-27 15:39:25 +02:00
93d3fdd14e Build docoptcpp using Meson 2024-08-27 15:39:25 +02:00
a7f42fcc99 Compile zim-tools dependencies on Windows github CI. 2024-08-27 15:39:25 +02:00
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
d8b4d24d7f Add more dependencies is base dependencies on Windows 2024-08-26 10:40:24 +02:00
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
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
7fbeb2fc6d Move -j4 option in make_options
This way we can remove it when on Windows.
2024-08-26 10:40:24 +02:00
3bdce3069a Patch libmicrohttpd's meson to correctly detect size of timeval.tv_sec 2024-08-22 15:21:53 +02:00
d87b37fba2 Fix flatpak builder for source with several archives 2024-08-21 15:43:28 +02:00
f00fa4cbd6 Use prebuild aria2c on Windows 2024-08-21 15:11:42 +02:00
5905de35a1 Bump base_deps_meta_version to rebuild libmicrohttpd and libcurl 2024-08-21 13:33:26 +02:00
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
6c8a9540bd Build libmicrohttpd with meson 2024-08-21 13:33:26 +02:00
23a6b93fcc Build libcurl with meson. 2024-08-21 13:33:26 +02:00
04d0ba6a92 Temporary deactivate test for libkiwix on Windows. 2024-08-21 13:33:26 +02:00
294c34ca80 Fix extract of meson archive.
Previous commit was removing the meson_archive.

Fix #723
2024-08-21 10:02:33 +02:00
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
00363fdc8c Use prebuilt icu on Windows 2024-08-20 17:07:45 +02:00
f433b25013 Kiwix-build doesn't try to build qt nor qtwebengine
Fix #714
2024-08-19 12:11:38 +02:00
be232d790e Add xapian-core to base dependencies on Windows. 2024-08-15 14:10:17 +02:00
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
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
16654f9563 All native config are compatible with windows. 2024-08-15 14:07:16 +02:00
b026e7e06c Bump base_deps_meta_version to rebuild xapian-core 2024-08-15 14:04:26 +02:00
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
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
f9b890c58d Build xapian using meson build system. 2024-08-15 14:03:49 +02:00
8648e8bc27 Revert "Do not build libzim with xapian dependency on Windows."
This reverts commit 6bfe9ec8b1.
2024-08-15 14:03:45 +02:00
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
2a1b18066f New version 3.4.2 of zim-tools 2024-07-10 19:12:25 +02:00
c7bd6182e0 Do not hard-code qmake command 2024-07-08 15:25:54 +02:00
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
35ca7068a1 Bump-up version of base_deps_meta_version 2024-06-22 15:00:08 +02:00
4b6c4a2547 Use version 0.6.0 of ZIM testing suite 2024-06-22 14:55:32 +02:00
2b25f3cfc3 Release libzim 9.2.2 2024-06-22 14:24:20 +02:00
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
05fc3b409c WIP Use windows branch on windows CI 2024-06-07 18:34:30 +02:00
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
46e58b763d Don't depend on lzma. 2024-06-07 15:38:45 +02:00
6bfe9ec8b1 Do not build libzim with xapian dependency on Windows. 2024-06-07 15:38:05 +02:00
e3656ab3f6 Do not print warning on windows 2024-06-07 15:36:58 +02:00
cd04a895fb Bump base_deps_meta_version 2024-06-07 15:36:58 +02:00
0e0ac010bb Build icu4c using meson on Windows. 2024-06-07 15:36:58 +02:00
93a8c89996 Do not set permission to 0 for extracted file. 2024-06-07 15:36:58 +02:00
ca3d90d793 Use the correct path separator on Windows 2024-06-07 15:36:58 +02:00
baa4470ebb Use setup command in meson. 2024-06-07 15:36:58 +02:00