summaryrefslogtreecommitdiff
path: root/dev-libs/libuninum
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-12 19:09:37 -0500
commitb590c8d7572b727d565cc0b8ff660d43569845de (patch)
tree06f7a4102ea4e845df8b66660f252920d52952f9 /dev-libs/libuninum
parent24f9cbfc4c34fdb6a6e03311674414e881ceab47 (diff)
downloadbaldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.gz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.tar.xz
baldeagleos-repo-b590c8d7572b727d565cc0b8ff660d43569845de.zip
Adding metadata
Diffstat (limited to 'dev-libs/libuninum')
-rw-r--r--dev-libs/libuninum/Manifest1
-rw-r--r--dev-libs/libuninum/files/libuninum-2.7-64bit.patch37
-rw-r--r--dev-libs/libuninum/files/libuninum-2.7-c99.patch30
-rw-r--r--dev-libs/libuninum/libuninum-2.7-r3.ebuild46
-rw-r--r--dev-libs/libuninum/metadata.xml15
5 files changed, 129 insertions, 0 deletions
diff --git a/dev-libs/libuninum/Manifest b/dev-libs/libuninum/Manifest
new file mode 100644
index 000000000000..5ce8368c044c
--- /dev/null
+++ b/dev-libs/libuninum/Manifest
@@ -0,0 +1 @@
+DIST libuninum-2.7.tar.bz2 276712 BLAKE2B 0894c632d7e9081f35d543895809bcc04fde6da674d4e6adc7cdc914f4bbb257a3e683b381e6496a08b65790731f73315d8263970265a351f40fe504f210c883 SHA512 4536a90b9f34fbabd3cc0560c1ff385063151bc381de51e6ca0253d2a42c2290b92329795b1a12ade305c3cb5757b02fe9d92817829977f50da2e34852936274
diff --git a/dev-libs/libuninum/files/libuninum-2.7-64bit.patch b/dev-libs/libuninum/files/libuninum-2.7-64bit.patch
new file mode 100644
index 000000000000..65a8b67389ba
--- /dev/null
+++ b/dev-libs/libuninum/files/libuninum-2.7-64bit.patch
@@ -0,0 +1,37 @@
+--- libuninum-2.7.orig/uninum.c
++++ libuninum-2.7/uninum.c
+@@ -35,11 +35,11 @@
+ */
+
+
+-#define ucslen(x) wcslen((signed long *) x)
+-#define ucscpy(x,y) (UTF32 *)wcscpy((signed long *)x,(signed long *)y)
+-#define ucscat(x,y) (UTF32 *)wcscat((signed long *)x,(signed long *)y)
+-#define ucschr(x,y) (UTF32 *)wcschr((signed long *)x,(signed long)y)
+-#define ucsrchr(x,y) (UTF32 *)wcsrchr((signed long *)x,(signed long)y)
++#define ucslen(x) wcslen((wchar_t *) x)
++#define ucscpy(x,y) (UTF32 *)wcscpy((wchar_t *)x,(wchar_t *)y)
++#define ucscat(x,y) (UTF32 *)wcscat((wchar_t *)x,(wchar_t *)y)
++#define ucschr(x,y) (UTF32 *)wcschr((wchar_t *)x,(wchar_t)y)
++#define ucsrchr(x,y) (UTF32 *)wcsrchr((wchar_t *)x,(wchar_t)y)
+
+ #define UNINUM
+
+--- libuninum-2.7.orig/unicode.h
++++ libuninum-2.7/unicode.h
+@@ -1,8 +1,10 @@
+-typedef unsigned long UTF32; /* at least 32 bits */
+-typedef unsigned short UTF16; /* at least 16 bits */
+-typedef unsigned short UCS2; /* at least 16 bits */
+-typedef unsigned char UTF8; /* 8 bits */
+-typedef unsigned char Boolean; /* 0 or 1 */
++#include <stdint.h>
++
++typedef uint32_t UTF32; /* 32 bits */
++typedef uint16_t UTF16; /* 16 bits */
++typedef uint16_t UCS2; /* 16 bits */
++typedef uint8_t UTF8; /* 8 bits */
++typedef uint8_t Boolean; /* 0 or 1 */
+
+ #define UNI_MAX_ASCII (UTF32)0x0000007F
+ #define UNI_MAX_BMP (UTF32)0x0000FFFF
diff --git a/dev-libs/libuninum/files/libuninum-2.7-c99.patch b/dev-libs/libuninum/files/libuninum-2.7-c99.patch
new file mode 100644
index 000000000000..5e68d8bec148
--- /dev/null
+++ b/dev-libs/libuninum/files/libuninum-2.7-c99.patch
@@ -0,0 +1,30 @@
+Avoid an implicit declaration of exit in the configure script. This
+ensures that the package continues to build with future compilers
+which do not support such implicit declarations by default.
+
+diff --git a/configure b/configure
+index 8fd0eed37cb997de..f5ebc89db38d88f4 100755
+--- a/configure
++++ b/configure
+@@ -4323,8 +4323,8 @@ main ()
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+- exit(2);
+- exit (0);
++ return 2;
++ return 0;
+ }
+ _ACEOF
+ rm -f conftest$ac_exeext
+@@ -18747,8 +18747,8 @@ main ()
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+- exit(2);
+- exit (0);
++ return 2;
++ return 0;
+ }
+ _ACEOF
+ rm -f conftest$ac_exeext
diff --git a/dev-libs/libuninum/libuninum-2.7-r3.ebuild b/dev-libs/libuninum/libuninum-2.7-r3.ebuild
new file mode 100644
index 000000000000..1721edb6fe32
--- /dev/null
+++ b/dev-libs/libuninum/libuninum-2.7-r3.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="A library for converting unicode strings to numbers and vice versa"
+HOMEPAGE="https://billposer.org/Software/libuninum.html"
+SRC_URI="https://billposer.org/Software/Downloads/${P}.tar.bz2"
+
+KEYWORDS="amd64 x86"
+LICENSE="GPL-2 GPL-2+ LGPL-2 LGPL-2.1"
+SLOT="0"
+
+RDEPEND="dev-libs/gmp:="
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-2.7-64bit.patch"
+ "${FILESDIR}/${PN}-2.7-c99.patch"
+)
+
+src_prepare() {
+ default
+
+ # LTO does not work.
+ # See https://bugs.gentoo.org/855956
+ filter-lto
+
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ --disable-static
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ default
+
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/libuninum/metadata.xml b/dev-libs/libuninum/metadata.xml
new file mode 100644
index 000000000000..2122836785a3
--- /dev/null
+++ b/dev-libs/libuninum/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://docs.baldeagleos.com/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>conikost@gentoo.org</email>
+ <name>Conrad Kostecki</name>
+ </maintainer>
+ <longdescription>
+ This is a library for converting unicode strings to numbers and numbers to unicode strings.
+ Standard functions like strtoul, strtod, and sprintf do this for numbers written in the
+ usual western number system using the indo-arabic numerals, but they do not handle other number systems.
+ The main functions take as input a UTF-32 unicode string and compute the corresponding unsigned integer.
+ </longdescription>
+ <origin>baldeagleos-repo</origin>
+</pkgmetadata>