aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2024-04-24 11:24:56 +0200
committerNatanael Copa <ncopa@alpinelinux.org>2024-04-24 11:25:58 +0200
commitcdfcf37cebbc317619162b4bf165217eea286538 (patch)
tree8c6b90e1ec00ee5a6b9c431f400689b659098f3a
parentc2a418bfd0da50f1fd9849bdc0ecee1e35062398 (diff)
community/libmarisa: fix wordsize detectionHEADmaster
Fixes detection of word size on riscv64 and loongarch64. ref: https://github.com/s-yata/marisa-trie/issues/57
-rw-r--r--community/libmarisa/0001-Fix-detection-of-MARISA_WORD_SIZE.patch51
-rw-r--r--community/libmarisa/APKBUILD4
2 files changed, 54 insertions, 1 deletions
diff --git a/community/libmarisa/0001-Fix-detection-of-MARISA_WORD_SIZE.patch b/community/libmarisa/0001-Fix-detection-of-MARISA_WORD_SIZE.patch
new file mode 100644
index 00000000000..344d9146710
--- /dev/null
+++ b/community/libmarisa/0001-Fix-detection-of-MARISA_WORD_SIZE.patch
@@ -0,0 +1,51 @@
+From 1e167755c04c4816b7c19a985301df81a5b511ca Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Wed, 24 Apr 2024 11:17:09 +0200
+Subject: [PATCH] Fix detection of MARISA_WORD_SIZE
+
+Detect the MARISA_WORD_SIZE independent of architecture.
+
+Fixes: https://github.com/s-yata/marisa-trie/issues/40
+Fixes: https://github.com/s-yata/marisa-trie/issues/57
+Fixes: https://github.com/s-yata/marisa-trie/pull/44
+Fixes: https://github.com/s-yata/marisa-trie/pull/46
+Fixes: https://github.com/s-yata/marisa-trie/pull/56
+---
+ include/marisa/base.h | 12 ++++++------
+ 1 file changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/include/marisa/base.h b/include/marisa/base.h
+index ffcdc5b..f8c0e1c 100644
+--- a/include/marisa/base.h
++++ b/include/marisa/base.h
+@@ -1,6 +1,7 @@
+ #ifndef MARISA_BASE_H_
+ #define MARISA_BASE_H_
+
++#include <limits.h>
+ // Old Visual C++ does not provide stdint.h.
+ #ifndef _MSC_VER
+ #include <stdint.h>
+@@ -28,14 +29,13 @@ typedef uint32_t marisa_uint32;
+ typedef uint64_t marisa_uint64;
+ #endif // _MSC_VER
+
+-#if defined(_WIN64) || defined(__amd64__) || defined(__x86_64__) || \
+- defined(__ia64__) || defined(__ppc64__) || defined(__powerpc64__) || \
+- defined(__sparc64__) || defined(__mips64__) || defined(__aarch64__) || \
+- defined(__s390x__)
++#if (ULONG_MAX == 0xffffffffffffffff)
+ #define MARISA_WORD_SIZE 64
+-#else // defined(_WIN64), etc.
++#elif (ULONG_MAX == 0xffffffff)
+ #define MARISA_WORD_SIZE 32
+-#endif // defined(_WIN64), etc.
++#else
++ #error Failed to detect MARISA_WORD_SIZE
++#endif
+
+ //#define MARISA_WORD_SIZE (sizeof(void *) * 8)
+
+--
+2.44.0
+
diff --git a/community/libmarisa/APKBUILD b/community/libmarisa/APKBUILD
index b557b4151a8..d3363d359b0 100644
--- a/community/libmarisa/APKBUILD
+++ b/community/libmarisa/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Eric Tian <thxdaemon+gitlab.alpine@gmail.com>
pkgname=libmarisa
pkgver=0.2.6
-pkgrel=6
+pkgrel=7
pkgdesc="MARISA: Matching Algorithm with Recursively Implemented StorAge"
url="https://github.com/s-yata/marisa-trie"
arch="all"
@@ -11,6 +11,7 @@ makedepends="autoconf automake libtool python3-dev swig py3-setuptools"
subpackages="$pkgname-dev py3-marisa-pyc py3-marisa:py"
source="$pkgname-$pkgver.tar.gz::https://github.com/s-yata/marisa-trie/archive/v$pkgver.tar.gz
format-sec.patch
+ 0001-Fix-detection-of-MARISA_WORD_SIZE.patch
"
builddir="$srcdir/marisa-trie-$pkgver"
@@ -61,4 +62,5 @@ py() {
sha512sums="
c094e4b22e1457efdd20f2b978ee421b53e36ed94e4fdbd8944136c0ba23da4f6ba9fe3a2c64729c1426aee4dbe8098bfa5eebb943ae7fdaa4eec760485c564d libmarisa-0.2.6.tar.gz
778486421fcda6fbbfb4c61b48ed64f1166ab937361098b405a798b88ce27ad2169c7a5be9d2e66de042bf5a65b5a332183a32a42fd31fbeecb679671c4ab929 format-sec.patch
+0a65d6a9ee906be9cc8cefc160e7908280388490c66468e048e3d60f261b8787718a36f95d0d543731236c5c64b3985119cc4ba6e9deab28f0cf1492a3549d70 0001-Fix-detection-of-MARISA_WORD_SIZE.patch
"