Page MenuHomeFreeBSD

D48397.diff
No OneTemporary

D48397.diff

diff --git a/devel/libkiwix/Makefile b/devel/libkiwix/Makefile
--- a/devel/libkiwix/Makefile
+++ b/devel/libkiwix/Makefile
@@ -1,5 +1,5 @@
PORTNAME= libkiwix
-DISTVERSION= 13.1.0
+DISTVERSION= 14.0.0
CATEGORIES= devel
MAINTAINER= olce.freebsd.ports@certner.fr
diff --git a/devel/libkiwix/distinfo b/devel/libkiwix/distinfo
--- a/devel/libkiwix/distinfo
+++ b/devel/libkiwix/distinfo
@@ -1,5 +1,5 @@
-TIMESTAMP = 1716196790
-SHA256 (kiwix-libkiwix-13.1.0_GH0.tar.gz) = 04d93f66b939f937df2c941af517966128d4c9872b707f9ed192177fe51364d3
-SIZE (kiwix-libkiwix-13.1.0_GH0.tar.gz) = 1136812
+TIMESTAMP = 1736502491
+SHA256 (kiwix-libkiwix-14.0.0_GH0.tar.gz) = dae329ebc08ff510daa50b42de71366bf063813e29bf1c09cc49335d90f32094
+SIZE (kiwix-libkiwix-14.0.0_GH0.tar.gz) = 1149884
SHA256 (kainjow-Mustache-v4.1_GH0.tar.gz) = acd66359feb4318b421f9574cfc5a511133a77d916d0b13c7caa3783c0bfe167
SIZE (kainjow-Mustache-v4.1_GH0.tar.gz) = 98905
diff --git a/devel/libkiwix/files/patch-meson.build b/devel/libkiwix/files/patch-meson.build
--- a/devel/libkiwix/files/patch-meson.build
+++ b/devel/libkiwix/files/patch-meson.build
@@ -1,16 +1,52 @@
---- meson.build.orig 2023-09-09 03:15:43 UTC
+Has been upstreamed via https://github.com/kiwix/libkiwix/pull/1173 and will be
+included in next release (14.1.0), so remove this patch at next update.
+
+--- meson.build.orig 2024-10-09 17:18:52 UTC
+++ meson.build
-@@ -7,12 +7,7 @@ compiler = meson.get_compiler('cpp')
+@@ -4,14 +4,40 @@ compiler = meson.get_compiler('cpp')
+ default_options : ['c_std=c11', 'cpp_std=c++17', 'werror=true'])
+ compiler = meson.get_compiler('cpp')
+-
static_deps = get_option('static-linkage') or get_option('default_library') == 'static'
++extra_libs = []
-# See https://github.com/kiwix/libkiwix/issues/371
-if ['arm', 'mips', 'm68k', 'ppc', 'sh4'].contains(host_machine.cpu_family())
- extra_libs = ['-latomic']
-else
- extra_libs = []
--endif
-+extra_libs = []
++# Atomics as compiled by GCC or clang can lead to external references to
++# functions depending on the type size and the platform. LLVM provides them in
++# 'libcompiler_rt', which clang normally automatically links in, while GNU
++# provides them in 'libatomic', which GCC *does not* link in automatically (but
++# this is probably going to change, see
++# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81358). Regardless of the setup
++# of the compiler driver itself (GCC or clang), we can thus assume that if some
++# atomic references can't be resolved, then 'libatomic' is missing.
++atomics_program = '''
++#include <atomic>
++#include <cstdint>
++
++using namespace std;
++
++int main() {
++ volatile atomic_bool a_b = true;
++ volatile atomic_ullong a_ull = -1;
++ // Next two lines are to cover atomic<socket_t> from 'httplib.h'.
++ volatile atomic<uint32_t> a_u32 = -1;
++ volatile atomic<uint64_t> a_u64 = -1;
++
++ return atomic_load(&a_b) == false && atomic_load(&a_ull) == 0 &&
++ atomic_load(&a_u32) == 0 && atomic_load(&a_u64) == 0;
++}
++'''
++if not compiler.links(atomics_program,
++ name: 'compiler driver readily supports atomics')
++ libatomic = compiler.find_library('atomic')
++ compiler.links(atomics_program, name: 'atomics work with libatomic',
++ dependencies: libatomic, required: true)
++ extra_libs += ['-latomic']
+ endif
if (compiler.get_id() == 'gcc' and build_machine.system() == 'linux') or host_machine.system() == 'freebsd'
- # C++ std::thread is implemented using pthread on linux by gcc
diff --git a/devel/libkiwix/files/patch-src_tools_networkTools.cpp b/devel/libkiwix/files/patch-src_tools_networkTools.cpp
new file mode 100644
--- /dev/null
+++ b/devel/libkiwix/files/patch-src_tools_networkTools.cpp
@@ -0,0 +1,13 @@
+Has been upstreamed via https://github.com/kiwix/libkiwix/pull/1173 and will be
+included in next release (14.1.0), so remove this patch at next update.
+
+--- src/tools/networkTools.cpp.orig 2024-10-09 17:18:52 UTC
++++ src/tools/networkTools.cpp
+@@ -42,6 +42,7 @@
+ #include <arpa/inet.h>
+ #include <ifaddrs.h>
+ #include <sys/socket.h>
++#include <netinet/in.h>
+ #include <net/if.h>
+ #include <netdb.h>
+ #endif
diff --git a/devel/libkiwix/pkg-plist b/devel/libkiwix/pkg-plist
--- a/devel/libkiwix/pkg-plist
+++ b/devel/libkiwix/pkg-plist
@@ -4,6 +4,7 @@
include/kiwix/bookmark.h
include/kiwix/common.h
include/kiwix/downloader.h
+include/kiwix/i18n.h
include/kiwix/kiwix_config.h
include/kiwix/kiwixserve.h
include/kiwix/library.h
@@ -16,6 +17,6 @@
lib/libkiwix.so
lib/libkiwix.so.%%PORTMAJ%%
lib/libkiwix.so.%%PORTVERSION%%
-libdata/pkgconfig/kiwix.pc
+libdata/pkgconfig/libkiwix.pc
share/man/man1/kiwix-compile-i18n.1.gz
share/man/man1/kiwix-compile-resources.1.gz

File Metadata

Mime Type
text/plain
Expires
Thu, Jun 25, 1:34 AM (2 h, 37 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34299187
Default Alt Text
D48397.diff (4 KB)

Event Timeline