summaryrefslogtreecommitdiff
path: root/dev-libs
diff options
context:
space:
mode:
authormirror@stealer.net <mirror@stealer.net>2025-07-27 08:30:22 +0000
committermirror@stealer.net <mirror@stealer.net>2025-07-27 08:30:22 +0000
commit007e4174cc94367fa9f96f965304ce71424559cd (patch)
treef2a89b74c54ac5db31c9db1f191766300d4a3246 /dev-libs
parentba34615bda3b37a2ca21b3fecec3e59b32274b65 (diff)
2025-07-27 07:58:53+00:00
Diffstat (limited to 'dev-libs')
-rw-r--r--dev-libs/Manifest.gzbin99197 -> 99197 bytes
-rw-r--r--dev-libs/gf-complete/Manifest2
-rw-r--r--dev-libs/gf-complete/gf-complete-2.0.0_p20170410.ebuild34
-rw-r--r--dev-libs/jerasure/Manifest5
-rw-r--r--dev-libs/jerasure/files/jerasure-2.0.0-autoconf.patch10
-rw-r--r--dev-libs/jerasure/files/jerasure-2.0.0-c99.patch327
-rw-r--r--dev-libs/jerasure/jerasure-2.0.0-r3.ebuild38
-rw-r--r--dev-libs/jerasure/jerasure-2.0.0_p20170410.ebuild45
-rw-r--r--dev-libs/liberasurecode/Manifest4
-rw-r--r--dev-libs/liberasurecode/liberasurecode-1.6.5.ebuild56
-rw-r--r--dev-libs/liberasurecode/metadata.xml2
11 files changed, 521 insertions, 2 deletions
diff --git a/dev-libs/Manifest.gz b/dev-libs/Manifest.gz
index 4e7fa515957fa..3f1edd606a092 100644
--- a/dev-libs/Manifest.gz
+++ b/dev-libs/Manifest.gz
Binary files differ
diff --git a/dev-libs/gf-complete/Manifest b/dev-libs/gf-complete/Manifest
index ecaa46e0389a7..52e445faf9b42 100644
--- a/dev-libs/gf-complete/Manifest
+++ b/dev-libs/gf-complete/Manifest
@@ -1,3 +1,5 @@
DIST gf-complete-2.0.0.tar.gz 122566 BLAKE2B 20cfc2dcf437109f5ed703434c5c383bc910d57127583a4eca6ccea860d0f42c82c93558ba992b9b35d6025d745a8bb39c32ed35809ffc063fa83b11a975e0d9 SHA512 3b0693bf374086417f04cee09dceeb694aafaf7fb3c829b89f303b65634ae509406c8a0de10f57c666b4c78b11043f355bb3c81f95eac061cb16de9db2b71b89
+DIST gf-complete-2.0.0_p20170410.tar.gz 342630 BLAKE2B 62d285ffb660c1b2cb88b3d0fbeed87e22287d29a61b9d2d0bad06174d48abdbb78558c1e91bdd2ac90054a083e7038797edf49451051813390aaa25b3a27e2c SHA512 5d0a13e9d8f0d9a7904e43df0ab233f5b1e3c072a87b43e212c20745c75215aef56895e0f27da5504176037827c118dac29dae41c576aa27c1eafcd300cb8093
EBUILD gf-complete-2.0.0-r1.ebuild 686 BLAKE2B 5e231fbf67064695e58c7d8c94fcb7f4e23be4ed56d9069e82089fd6ab8d340307e9b91fc2ec51c8fd141498b7383372b3a014ac066cbab5e2f4fcba6630c79d SHA512 2423a45c8102a2f0734f7de2699f07829a2577bbde373035a48e67eb70c2dcbe945553b83d203ddb8404b1d752200d1e578eb82900771615cea26db345a2e43e
+EBUILD gf-complete-2.0.0_p20170410.ebuild 858 BLAKE2B 6bc55f097d5b3e79b2dffbf22216361410c73ec42d1535b8a2c24e2e9a8d1cc4243b416d7bb5902c641c6743c3556bbfeec1db0511c72bd180238aa93570f94b SHA512 711e394640216bab4c3191055fbaa00db3e1b636c62a167e7f68e5e7283c710dd67a3f6df9c83fa068413ea28415d0ebb3d9f743d3c272c5cc31a4f5d172aaaf
MISC metadata.xml 372 BLAKE2B 4a60b0d8e314c5e71a1845de2f82ed6eee9d62a9f59e92390acefd10069e0f1a5b04707ed71b2f6a85c25e954509e8068219d8592ab0486e760249fe6946cf2f SHA512 f46b7e398b24cd56ec088a8289cb17c386a2616039a87e11398cfe56fe47c9ce23847b0bc14afff8068a367d5498c6f65bbea98b49cfeef7f4d5ace90d9ad8b9
diff --git a/dev-libs/gf-complete/gf-complete-2.0.0_p20170410.ebuild b/dev-libs/gf-complete/gf-complete-2.0.0_p20170410.ebuild
new file mode 100644
index 0000000000000..80869d82a606e
--- /dev/null
+++ b/dev-libs/gf-complete/gf-complete-2.0.0_p20170410.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+GF_COMPLETE_COMMIT="a6862d10c9db467148f20eef2c6445ac9afd94d8"
+DESCRIPTION="Comprehensive Open Source Library for Galois Field Arithmetic"
+HOMEPAGE="http://jerasure.org https://web.eecs.utk.edu/~jplank/plank/www/software.html"
+SRC_URI="https://github.com/ceph/gf-complete/archive/${GF_COMPLETE_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}-${GF_COMPLETE_COMMIT}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+src_prepare() {
+ default
+
+ # Avoid adding '-march=native'-like flags
+ sed -i -e 's/ -O3 $(SIMD_FLAGS)//g' \
+ src/Makefile.am \
+ tools/Makefile.am \
+ test/Makefile.am \
+ examples/Makefile.am || die
+
+ eautoreconf
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/jerasure/Manifest b/dev-libs/jerasure/Manifest
index 8417c9b1a1547..c30f0f4625835 100644
--- a/dev-libs/jerasure/Manifest
+++ b/dev-libs/jerasure/Manifest
@@ -1,3 +1,8 @@
+AUX jerasure-2.0.0-autoconf.patch 236 BLAKE2B f7af3e136fbda3f412e4608977576140877c4a0576f59dee2999e0a5bdcdea686ea0c819dfd61ac11443f9289794197d302b7bfbf8db41170c0442d0989fbf90 SHA512 d62a62ba8f90ab1e02a7169ccb6bf05fab09505270a008e06c2b220264d7e288f2a939f67d8823c247acfcd33f5730ac22e256fe3640774ec74af4539496a402
+AUX jerasure-2.0.0-c99.patch 9427 BLAKE2B 30d6b364ca3adb0b637dfaf1495b8d06bdbefec97a24c6af56d9c8d0aaad8ea6a126ce37b44275ab933f465520d52a3d72aed71fedee38046aafe58ebbdd49f0 SHA512 c0b5959fb278be01165ed708c5eb4a3b8ede3f5a26dd4591f194403607fba7a81689ae751a1fbe3c129385afc87777d39573d911f7015f74c44d7c7f138ee64a
DIST jerasure-2.0.0.tar.gz 806283 BLAKE2B c2513c103aaaeab072978c0711081b0ec89d75881e7ec5a3046fc31f96ce3e2540dd988078aa705768de28c8d495b4c035256d87810d54b6d29ac0b4678c39c6 SHA512 c14b227b4c4ae50d7e1add0f14a888894233228be8aadfc96e8788a14c51ff82fd48d9ca5fbd7d77bf5d17edf0deaef9ff61dffc65100f22f28d7cf32fa32e31
+DIST jerasure-2.0.0_p20170410.tar.gz 506516 BLAKE2B 0624d6794375baa4b233305102e473ba1a21abe6bd51a3b25eb7da70bdc03e2c20ad5ff4c754af4787ca3ff04d130b7972ab2e24af5265602e9d8b0b5b74562b SHA512 264957c7d8a6f6301923e46c74a27bd313c3e520d065600af3e41a8ccd0fd10a6b5ba97bc2ea683928337c9c7be8b2437183cc96cdab685f265396b089fe1cf5
EBUILD jerasure-2.0.0-r2.ebuild 821 BLAKE2B e42a61fedc82470678bba40c56ec38cc4636d61045be628e0dfea6e5ce2edb933614b9e0739b0dd25cddf03b95f95920266f6fe36a6e7c9f2e2b7600787d9bd8 SHA512 9fb1a9d46036de755dd46c37fa883912bc8804a6f629b2a9049dd0d5d3ad7cc3cd177cb20474f5b20e026db6438bdc48ea88b2552f638d01f00fcfe9d06d5924
+EBUILD jerasure-2.0.0-r3.ebuild 856 BLAKE2B 6010b196bc6c124c33249d3b3159a3b581b464b61a849c6a9f5154a5a7bb35e4ee795d7225b74e1f3870cb299db08c90ae57d6909341c7108f63acc383cd2ce6 SHA512 d0853d6872035d0af354d7743fbd03a1c5558e1904008e6e9e72a2f2f76e890ed9f29ecd72c5d1e2492ff05ddbb0b6c8de978d5646caf6047a29972536e2372e
+EBUILD jerasure-2.0.0_p20170410.ebuild 1356 BLAKE2B 4844b6b5476e8114aabe2c1b7f216f2e7871673f3508c70c4564f57e26ceca0c4876a07a68477cf10820e3f58a6ba6e5515aa33f57696d839760c73512b36290 SHA512 e5efda1d87d091370cf7e08987cdc60de42594f9c06fbf19511ab18cc190c2712e3f6cff48c2d8db1fffab54f95624fba6395c9d8471e441f3c1a602ac67aeb2
MISC metadata.xml 372 BLAKE2B 4a60b0d8e314c5e71a1845de2f82ed6eee9d62a9f59e92390acefd10069e0f1a5b04707ed71b2f6a85c25e954509e8068219d8592ab0486e760249fe6946cf2f SHA512 f46b7e398b24cd56ec088a8289cb17c386a2616039a87e11398cfe56fe47c9ce23847b0bc14afff8068a367d5498c6f65bbea98b49cfeef7f4d5ace90d9ad8b9
diff --git a/dev-libs/jerasure/files/jerasure-2.0.0-autoconf.patch b/dev-libs/jerasure/files/jerasure-2.0.0-autoconf.patch
new file mode 100644
index 0000000000000..60b347cf3adc0
--- /dev/null
+++ b/dev-libs/jerasure/files/jerasure-2.0.0-autoconf.patch
@@ -0,0 +1,10 @@
+--- a/m4/ax_ext.m4
++++ b/m4/ax_ext.m4
+@@ -164,6 +164,7 @@ AC_DEFUN([AX_EXT],
+ fi
+ fi
+
++ AC_CHECK_SIZEOF([long])
+ if test "$ac_cv_sizeof_long" -eq 8; then
+ SIMD_FLAGS="$SIMD_FLAGS -DARCH_64"
+ fi
diff --git a/dev-libs/jerasure/files/jerasure-2.0.0-c99.patch b/dev-libs/jerasure/files/jerasure-2.0.0-c99.patch
new file mode 100644
index 0000000000000..173acd1772b00
--- /dev/null
+++ b/dev-libs/jerasure/files/jerasure-2.0.0-c99.patch
@@ -0,0 +1,327 @@
+https://bugs.gentoo.org/871453
+https://bugs.gentoo.org/955579
+--- a/Examples/cauchy_01.c
++++ b/Examples/cauchy_01.c
+@@ -50,10 +50,11 @@
+ #include <string.h>
+ #include "jerasure.h"
+ #include "reed_sol.h"
++#include "cauchy.h"
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: cauchy_01 n w - Converts the value n to a bitmatrix using GF(2^w).\n");
+ fprintf(stderr, " \n");
+--- a/Examples/cauchy_02.c
++++ b/Examples/cauchy_02.c
+@@ -54,7 +54,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: cauchy_02 k m w seed - CRS coding example using Bloemer's original matrix.\n");
+ fprintf(stderr, " \n");
+@@ -84,7 +84,7 @@ usage(char *s)
+ exit(1);
+ }
+
+-static print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
++static void print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
+ {
+ int i, j, x;
+ unsigned char *up;
+--- a/Examples/cauchy_03.c
++++ b/Examples/cauchy_03.c
+@@ -54,7 +54,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: cauchy_03 k m w seed - CRS coding example improving the matrix.\n");
+ fprintf(stderr, " \n");
+@@ -88,7 +88,7 @@ usage(char *s)
+ exit(1);
+ }
+
+-static print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
++static void print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
+ {
+ int i, j, x;
+ unsigned char *up;
+--- a/Examples/cauchy_04.c
++++ b/Examples/cauchy_04.c
+@@ -54,7 +54,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: cauchy_04 k m w seed - CRS coding example improving the matrix.\n");
+ fprintf(stderr, " \n");
+@@ -85,7 +85,7 @@ usage(char *s)
+ exit(1);
+ }
+
+-static print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
++static void print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
+ {
+ int i, j, x;
+ unsigned char *up;
+--- a/Examples/decoder.c
++++ b/Examples/decoder.c
+@@ -65,6 +65,7 @@ same arguments, and encoder.c does error check.
+ #include <sys/time.h>
+ #include <sys/stat.h>
+ #include <signal.h>
++#include <unistd.h>
+ #include "jerasure.h"
+ #include "reed_sol.h"
+ #include "galois.h"
+--- a/Examples/encoder.c
++++ b/Examples/encoder.c
+@@ -63,6 +63,7 @@ is the file name with "_k#" or "_m#" and then the extension.
+ #include <stdlib.h>
+ #include <errno.h>
+ #include <signal.h>
++#include <unistd.h>
+ #include <gf_rand.h>
+ #include "jerasure.h"
+ #include "reed_sol.h"
+--- a/Examples/jerasure_01.c
++++ b/Examples/jerasure_01.c
+@@ -50,7 +50,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_01 r c w - creates and prints out a matrix in GF(2^w).\n\n");
+ fprintf(stderr, " Element i,j is equal to 2^(i*c+j)\n");
+--- a/Examples/jerasure_02.c
++++ b/Examples/jerasure_02.c
+@@ -50,7 +50,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_02 r c w - Converts the matrix of jerasure_01 to a bit matrix.\n");
+ fprintf(stderr, " \n");
+--- a/Examples/jerasure_03.c
++++ b/Examples/jerasure_03.c
+@@ -51,7 +51,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_03 k w - Creates a kxk Cauchy matrix in GF(2^w). \n\n");
+ fprintf(stderr, " k must be < 2^w. Element i,j is 1/(i+(2^w-j-1)). (If that is\n");
+--- a/Examples/jerasure_04.c
++++ b/Examples/jerasure_04.c
+@@ -51,7 +51,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_04 k w - Performs the analogous bit-matrix operations to jerasure_03.\n\n");
+ fprintf(stderr, " It converts the matrix to a kw*kw bit matrix and does the same operations.\n");
+--- a/Examples/jerasure_05.c
++++ b/Examples/jerasure_05.c
+@@ -53,7 +53,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_05 k m w size seed - Does a simple Reed-Solomon coding example in GF(2^w).\n");
+ fprintf(stderr, " \n");
+--- a/Examples/jerasure_06.c
++++ b/Examples/jerasure_06.c
+@@ -53,7 +53,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_06 k m w packetsize seed\n");
+ fprintf(stderr, "Does a simple Cauchy Reed-Solomon coding example in GF(2^w).\n");
+@@ -72,7 +72,7 @@ usage(char *s)
+ exit(1);
+ }
+
+-static print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
++static void print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
+ {
+ int i, j, x;
+ unsigned char *up;
+--- a/Examples/jerasure_07.c
++++ b/Examples/jerasure_07.c
+@@ -53,7 +53,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_07 k m w seed - Scheduled Cauchy Reed-Solomon coding example in GF(2^w).\n");
+ fprintf(stderr, " \n");
+@@ -72,7 +72,7 @@ usage(char *s)
+ exit(1);
+ }
+
+-static print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
++static void print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
+ {
+ int i, j, x;
+ unsigned char *up;
+--- a/Examples/jerasure_08.c
++++ b/Examples/jerasure_08.c
+@@ -53,7 +53,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: jerasure_08 k w seed - Example schedule cache usage with RAID-6\n");
+ fprintf(stderr, " \n");
+@@ -75,7 +75,7 @@ usage(char *s)
+ exit(1);
+ }
+
+-static print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
++static void print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
+ {
+ int i, j, x;
+ unsigned char *up;
+--- a/Examples/liberation_01.c
++++ b/Examples/liberation_01.c
+@@ -54,7 +54,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: liberation_01 k w seed - Liberation RAID-6 coding/decoding example in GF(2^w).\n");
+ fprintf(stderr, " \n");
+@@ -73,7 +73,7 @@ usage(char *s)
+ exit(1);
+ }
+
+-static print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
++static void print_array(char **ptrs, int ndevices, int size, int packetsize, char *label)
+ {
+ int i, j, x;
+ unsigned char *up;
+--- a/Examples/reed_sol_01.c
++++ b/Examples/reed_sol_01.c
+@@ -54,7 +54,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: reed_sol_01 k m w seed - Does a simple Reed-Solomon coding example in GF(2^w).\n");
+ fprintf(stderr, " \n");
+--- a/Examples/reed_sol_02.c
++++ b/Examples/reed_sol_02.c
+@@ -52,7 +52,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: reed_sol_02 k m w - Vandermonde matrices in GF(2^w).\n");
+ fprintf(stderr, " \n");
+--- a/Examples/reed_sol_03.c
++++ b/Examples/reed_sol_03.c
+@@ -53,7 +53,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: reed_sol_03 k w seed - Does a simple RAID-6 coding example in GF(2^w).\n");
+ fprintf(stderr, " \n");
+--- a/Examples/reed_sol_04.c
++++ b/Examples/reed_sol_04.c
+@@ -54,7 +54,7 @@
+
+ #define talloc(type, num) (type *) malloc(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: reed_sol_04 w seed - Shows reed_sol_galois_wXX_region_multby_2\n");
+ fprintf(stderr, " \n");
+--- a/Examples/reed_sol_test_gf.c
++++ b/Examples/reed_sol_test_gf.c
+@@ -49,6 +49,7 @@
+ #include <string.h>
+ #include <gf_complete.h>
+ #include <gf_method.h>
++#include <gf_rand.h>
+ #include <stdint.h>
+ #include "jerasure.h"
+ #include "reed_sol.h"
+@@ -68,7 +69,7 @@ static void free16(void *ptr) {
+
+ #define talloc(type, num) (type *) malloc16(sizeof(type)*(num))
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: reed_sol_test_gf k m w seed (additional GF args) - Tests Reed-Solomon in GF(2^w).\n");
+ fprintf(stderr, " \n");
+--- a/Examples/reed_sol_time_gf.c
++++ b/Examples/reed_sol_time_gf.c
+@@ -51,6 +51,7 @@
+ #include <gf_rand.h>
+ #include <gf_method.h>
+ #include <stdint.h>
++#include <sys/time.h>
+ #include "jerasure.h"
+ #include "reed_sol.h"
+
+@@ -87,7 +88,7 @@ timer_split (const double *t)
+ return (cur_t - *t);
+ }
+
+-usage(char *s)
++void usage(char *s)
+ {
+ fprintf(stderr, "usage: reed_sol_time_gf k m w seed iterations bufsize (additional GF args) - Test and time Reed-Solomon in a particular GF(2^w).\n");
+ fprintf(stderr, " \n");
+--
+2.50.1
+
+--- a/Examples/encoder.c
++++ b/Examples/encoder.c
+@@ -621,6 +621,7 @@ int is_prime(int w) {
+ else { return 0; }
+ }
+ }
++ return 0;
+ }
+
+ /* Handles ctrl-\ event */
diff --git a/dev-libs/jerasure/jerasure-2.0.0-r3.ebuild b/dev-libs/jerasure/jerasure-2.0.0-r3.ebuild
new file mode 100644
index 0000000000000..006dfc51af5b9
--- /dev/null
+++ b/dev-libs/jerasure/jerasure-2.0.0-r3.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+DESCRIPTION="A Library in C Facilitating Erasure Coding for Storage Applications"
+HOMEPAGE="http://jerasure.org"
+SRC_URI="https://dev.gentoo.org/~prometheanfire/dist/${P}.tar.gz"
+S="${WORKDIR}/${PN}.git"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+
+DEPEND="dev-libs/gf-complete"
+RDEPEND="${DEPEND}"
+
+DOCS=( Manual.pdf README README.txt README.nd )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.0.0-c99.patch
+ "${FILESDIR}"/${PN}-2.0.0-autoconf.patch
+)
+
+src_prepare() {
+ default
+ sed -i -e 's/ $(SIMD_FLAGS)//g' src/Makefile.am Examples/Makefile.am || die
+ eautoreconf
+}
+
+src_install() {
+ default
+ einstalldocs
+ doheader include/{cauchy,galois,liberation,reed_sol}.h
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/jerasure/jerasure-2.0.0_p20170410.ebuild b/dev-libs/jerasure/jerasure-2.0.0_p20170410.ebuild
new file mode 100644
index 0000000000000..c62b49c6a355b
--- /dev/null
+++ b/dev-libs/jerasure/jerasure-2.0.0_p20170410.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+JERASURE_COMMIT="de1739cc8483696506829b52e7fda4f6bb195e6a"
+DESCRIPTION="Library in C facilitating Erasure Coding for storage applications"
+HOMEPAGE="http://jerasure.org https://web.eecs.utk.edu/~jplank/plank/www/software.html"
+SRC_URI="https://github.com/ceph/jerasure/archive/${JERASURE_COMMIT}.tar.gz -> ${P}.tar.gz"
+S="${WORKDIR}"/${PN}-${JERASURE_COMMIT}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="dev-libs/gf-complete"
+RDEPEND="${DEPEND}"
+BDEPEND="test? ( dev-libs/gf-complete )"
+
+DOCS=( Manual.pdf README )
+
+src_prepare() {
+ default
+ # Avoid adding '-march=native'-like flags
+ sed -i -e 's/ $(SIMD_FLAGS)//g' src/Makefile.am Examples/Makefile.am || die
+ eautoreconf
+}
+
+src_test() {
+ # encode_decode.sh fails w/ _FORTIFY_SOURCE(=3?) but the test
+ # is new in the snapshot we're taking (there were no tests before),
+ # and upstream development is over, so let's skip the one test unless
+ # someone really wants to investigate it (so we can have unrestricted
+ # tests rather than none running).
+ emake GF_COMPLETE_DIR="${BROOT}"/usr/bin check XFAIL_TESTS="encode_decode.sh"
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-libs/liberasurecode/Manifest b/dev-libs/liberasurecode/Manifest
index 7e8240f2cb0ae..e3ff5199ca116 100644
--- a/dev-libs/liberasurecode/Manifest
+++ b/dev-libs/liberasurecode/Manifest
@@ -1,4 +1,6 @@
AUX 0001-configure-fix-basic-syntax-errors-in-the-shell-scrip.patch 3954 BLAKE2B 7d9cfa31d4c94f78a63961571be417574e01bf0f5734135f5c67dafd07aa97cd735264bad4bba70b5b9aa91ba05afee706ccf6928eb4a5a00824ef699b4e616b SHA512 7ceb503d63dcd4041db3470c2da582736627b7a2feddaa88e16ee56b39e33bcf3a50b80cc5a9427cafd2f05eeae7f50d945e017d2331e891fa41c145bf0031da
DIST liberasurecode-1.6.3.tar.gz 210599 BLAKE2B d0e9ec0a28d99e109d7dd130283bf986d3fb2f2b0960567ca91b1380ce9c2a12eb14dee683cb2f994f5b3b4820b449c65f5b206f123101b4c2ed7f8910a44627 SHA512 d5daa962324ef19fd195cfa842ec375d9dd5e62e3391b4a1cbf49a850b852b18cfc9be929ab18786d6b839139f6260d5cb4c88a0ba440c06b0e54e04ffb1bee1
+DIST liberasurecode-1.6.5.tar.gz 214964 BLAKE2B fb811612645f6736ada0ba0178d30adbf217d00bc4b08e6cab253f33b5f7814595321096160bb6d39357f670eeff81c2800ad755c995ec0907025daf03f39883 SHA512 e28be20e5a3712543bf71e4fbc25b4065d5bf2234b3731ca30bcf9a18c379967d0decc83177759d7901e05cd2e8f4ee6fd20562152dea9ae78eda3bad4103fa6
EBUILD liberasurecode-1.6.3.ebuild 1084 BLAKE2B e17273c074440c74491e231b5c4f8c5b5e43ecb5de7fa0a2f35fa72c72a174ff0e8ef5854675dc2f030263df269a617ecd6ac8861f11320697b56d8c94fa4b05 SHA512 1a01cda42028361d2566e2b451691ae64979558a3524f5c19a9e8136bb7f628b79a35c2f0dc4e532dc97397e69927ce96956c2b6188e610d9204fc4f3e87b0c5
-MISC metadata.xml 465 BLAKE2B 92e3cc53cbbfcbfc2b99df3a02b64e08076fd6c3f435c4617074f628b17b589d33ca76ace9ec47efd05eae9b1cdfe6205048f92aa286a6eccca2307c58c9e079 SHA512 461b346bd7a354bdfbb1ff45dd578e9b2fa7c4121897db9b5308622a9cd058aba8a9a75281e1c81b51f94ac60caaf0f13d78be3241741c017f25f6d6bb0295cb
+EBUILD liberasurecode-1.6.5.ebuild 1182 BLAKE2B d45b8515ccadf3ab595e4a0f88776300893fca15e642f62709920b2c34a47261bf93f572f95891759e49690a3bb693ae5429d8e8a8dbbde5a079498828fce879 SHA512 386f85131533a7a4343e39fd6731038c8fefef5192086db7077a9d4ec852cea014619a2689c47da8e007e7a62368a447533ec90369248c6b6673cec0ed52d094
+MISC metadata.xml 467 BLAKE2B f5ea955031285a004c47ca2804fe013a5f67b9362397400a536dd1b9f1bd178c888c8119d6b9cf6aa9e1d7dc96eaf3d33e4068a609b700f18da0f3e47460fca0 SHA512 9208e24094113bc689b8feb3caaab9899b6ea5a6d73d102727ef8ba8d61e4c6e611f407bcadf27c8ffd116e37cd4d31d77844919c23c5223de0eeff7b6b2a3a6
diff --git a/dev-libs/liberasurecode/liberasurecode-1.6.5.ebuild b/dev-libs/liberasurecode/liberasurecode-1.6.5.ebuild
new file mode 100644
index 0000000000000..445fcb804c6de
--- /dev/null
+++ b/dev-libs/liberasurecode/liberasurecode-1.6.5.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools optfeature
+
+DESCRIPTION="Erasure Code API library written in C with pluggable Erasure Code backends"
+HOMEPAGE="https://opendev.org/openstack/liberasurecode"
+SRC_URI="https://github.com/openstack/liberasurecode/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~x86"
+IUSE="doc test"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+ doc? ( app-text/doxygen )
+ test? (
+ dev-libs/isa-l
+ dev-libs/jerasure
+ )
+"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ # Don't use '-march=native'
+ --disable-mmi
+ --disable-werror
+ $(use_enable doc doxygen)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ # 'check' just builds the tests
+ emake test
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ optfeature_header "Install optional pluggable Erasure Code backeds:"
+ optfeature "Intel Storage Acceleration Library - SIMD accelerated backend" dev-libs/isa-l
+ optfeature "Erasure Coding library that supports Reed-Solomon, Cauchy backends" dev-libs/jerasure
+}
diff --git a/dev-libs/liberasurecode/metadata.xml b/dev-libs/liberasurecode/metadata.xml
index 901c45b08d936..fd7dd42ff0787 100644
--- a/dev-libs/liberasurecode/metadata.xml
+++ b/dev-libs/liberasurecode/metadata.xml
@@ -10,6 +10,6 @@
<name>Openstack</name>
</maintainer>
<upstream>
- <remote-id type="bitbucket">tsg-/liberasurecode</remote-id>
+ <remote-id type="github">openstack/liberasurecode</remote-id>
</upstream>
</pkgmetadata>