dev-java/freenet-ext: add 29-r2 using log4j-12-api-2.25.2:0

also, re-include onionnetworks-fec

Bug: https://bugs.gentoo.org/936539
Signed-off-by: Volkmar W. Pogatzki <gentoo@pogatzki.net>
Part-of: https://github.com/gentoo/gentoo/pull/45569
Signed-off-by: Sam James <sam@gentoo.org>
This commit is contained in:
Volkmar W. Pogatzki
2026-02-04 18:39:32 +00:00
committed by Sam James
parent 17449cd622
commit 806cbe3741
2 changed files with 250 additions and 0 deletions
@@ -0,0 +1,132 @@
Adopt patches from dev-java/fec which had sources in a dev-space hosted tarball
--- a/fec/src/csrc/Makefile
+++ b/fec/src/csrc/Makefile
@@ -21,32 +21,28 @@ fec: libfec8.so libfec16.so test.c
$(CC) $(CFLAGS) -DGF_BITS=8 -o fec fec8.o test.c
libfec8.so: fec8.o fec8-jinterf.o
- $(CC) $(LDFLAGS) -shared fec8-jinterf.o fec8.o -o libfec8.so
+ $(CC) $(LDFLAGS) -shared fec8-jinterf.o fec8.o -o libfec8.so \
+ -Wl,-soname=libfec8.so
fec8-jinterf.o: fec-jinterf.c
$(CC) $(CFLAGS) -DGF_BITS=8 -c \
-I$(JAVA_HOME)/include/linux fec-jinterf.c \
-o fec8-jinterf.o
-fec8.o: fec.h fec8.S
- $(CC) $(CFLAGS) -DGF_BITS=8 -c -o fec8.o fec8.S
-
-fec8.S: fec.c Makefile
- $(CC) $(CFLAGS) -DGF_BITS=8 -S -o fec8.S fec.c
+fec8.o: fec.h fec.c
+ $(CC) $(CFLAGS) -DGF_BITS=8 -c -o fec8.o fec.c
libfec16.so: fec16.o fec16-jinterf.o
- $(CC) $(LDFLAGS) -shared fec16-jinterf.o fec16.o -o libfec16.so
+ $(CC) $(LDFLAGS) -shared fec16-jinterf.o fec16.o -o libfec16.so \
+ -Wl,-soname=libfec16.so
fec16-jinterf.o: fec-jinterf.c
$(CC) $(CFLAGS) -DGF_BITS=16 -c \
-I$(JAVA_HOME)/include/linux fec-jinterf.c \
-o fec16-jinterf.o
-fec16.o: fec.h fec16.S
- $(CC) $(CFLAGS) -DGF_BITS=16 -c -o fec16.o fec16.S
-
-fec16.S: fec.c Makefile
- $(CC) $(CFLAGS) -DGF_BITS=16 -S -o fec16.S fec.c
+fec16.o: fec.h fec.c
+ $(CC) $(CFLAGS) -DGF_BITS=16 -c -o fec16.o fec.c
clean:
- rm -f *.o *.S fec *.so
--- a/fec/src/csrc/Makefile.nmake
+++ b/fec/src/csrc/Makefile.nmake
@@ -1,42 +1,42 @@
-MAKE=nmake -f Makefile.nmake
-
-CPP=cl.exe
-
-CPP_OPTS=/nologo /I $(JAVA_HOME)/include /I $(JAVA_HOME)/include/win32 \
- /D WIN32 /D _WINDOWS /D _MBCS /D _USRDLL /D FEC_EXPORTS /D GF_BITS=$(BITS) \
- /D inline=__inline
-
-CPP_OPTS=/MT /W3 /Ot /D NDEBUG $(CPP_OPTS)
-
-LIBS=kernel32.lib user32.lib
-
-LDFLAGS=$(LIBS) /nologo /dll /incremental:no \
- /out:fec$(BITS).dll /implib:fec$(BITS).lib \
- /OPT:REF /MAP /DEF:fec$(BITS).def
-
-LD=link.exe
-
-LDOBJS= fec$(BITS).obj fec$(BITS)-jinterf.obj
-
-all: release-all
-
-feclib: fec$(BITS).dll
-
-release-all:
- $(MAKE) BITS=8 MODE=Release feclib
- $(MAKE) BITS=16 MODE=Release feclib
-
-clean:
- del *.dll *.obj *.lib *.pdb *.exp *.map
-
-fec$(BITS).dll : $(DEF_FILE) $(LDOBJS)
- $(LD) $(LDFLAGS) $(LDOBJS)
-
-fec$(BITS).obj : fec.c
- $(CPP) $(CPP_OPTS) /Fo"fec$(BITS).obj" /c fec.c
-
-fec$(BITS)-jinterf.obj : fec-jinterf.c
- $(CPP) $(CPP_OPTS) /Fo"fec$(BITS)-jinterf.obj" /c fec-jinterf.c
-
-.c.obj::
- $(CPP) $(CPP_OPTS) /c $<
+MAKE=nmake -f Makefile.nmake
+
+CPP=cl.exe
+
+CPP_OPTS=/nologo /I $(JAVA_HOME)/include /I $(JAVA_HOME)/include/win32 \
+ /D WIN32 /D _WINDOWS /D _MBCS /D _USRDLL /D FEC_EXPORTS /D GF_BITS=$(BITS) \
+ /D inline=__inline
+
+CPP_OPTS=/MT /W3 /Ot /D NDEBUG $(CPP_OPTS)
+
+LIBS=kernel32.lib user32.lib
+
+LDFLAGS=$(LIBS) /nologo /dll /incremental:no \
+ /out:fec$(BITS).dll /implib:fec$(BITS).lib \
+ /OPT:REF /MAP /DEF:fec$(BITS).def
+
+LD=link.exe
+
+LDOBJS= fec$(BITS).obj fec$(BITS)-jinterf.obj
+
+all: release-all
+
+feclib: fec$(BITS).dll
+
+release-all:
+ $(MAKE) BITS=8 MODE=Release feclib
+ $(MAKE) BITS=16 MODE=Release feclib
+
+clean:
+ del *.dll *.obj *.lib *.pdb *.exp *.map
+
+fec$(BITS).dll : $(DEF_FILE) $(LDOBJS)
+ $(LD) $(LDFLAGS) $(LDOBJS)
+
+fec$(BITS).obj : fec.c
+ $(CPP) $(CPP_OPTS) /Fo"fec$(BITS).obj" /c fec.c
+
+fec$(BITS)-jinterf.obj : fec-jinterf.c
+ $(CPP) $(CPP_OPTS) /Fo"fec$(BITS)-jinterf.obj" /c fec-jinterf.c
+
+.c.obj::
+ $(CPP) $(CPP_OPTS) /c $<
@@ -0,0 +1,118 @@
# Copyright 2023-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source test"
JAVA_TESTING_FRAMEWORKS="junit"
inherit flag-o-matic java-pkg-2 java-pkg-simple toolchain-funcs
DESCRIPTION="Freenet REference Daemon"
HOMEPAGE="https://github.com/hyphanet/contrib/"
SRC_URI="https://github.com/hyphanet/contrib/archive/v${PV}.tar.gz -> freenet-ext-${PV}.tar.gz"
S="${WORKDIR}/contrib-${PV}"
LICENSE="public-domain"
SLOT="29"
KEYWORDS="~amd64 ~arm64"
DEPEND="
dev-libs/gmp:0=
>=dev-java/log4j-12-api-2.25.2:0
>=virtual/jdk-1.8:*
"
RDEPEND="
!dev-java/fec:0
!<net-p2p/freenet-0.7.5_p1503-r2:0
dev-libs/gmp
>=virtual/jre-1.8:*
"
PATCHES=(
"${FILESDIR}/freenet-ext-29-convert-jcpuid.patch"
"${FILESDIR}/freenet-ext-29-csrc.patch"
)
JAVA_CLASSPATH_EXTRA="log4j-12-api"
JAVA_RESOURCE_DIRS="res"
JAVA_SRC_DIR=(
fec/{src,common/{src,tools}}
freenet_ext
java/{freenet,net/i2p}
)
JAVA_TEST_GENTOO_CLASSPATH="junit"
JAVA_TEST_SRC_DIR="fec/common/test/src"
src_prepare() {
default # bug #780585
java-pkg-2_src_prepare
mkdir -p res/lib || die
mv {fec/lib,res/lib}/fec.properties || die
}
src_compile() {
java-pkg-simple_src_compile
local compile_lib
compile_lib() {
local name="${1}"
local file="${2}"
shift 2
"$(tc-getCC)" "${@}" ${CFLAGS} $(java-pkg_get-jni-cflags) \
${LDFLAGS} -shared -fPIC "-Wl,-soname,lib${name}.so" \
"${file}" -o "lib${name}.so"
}
cd "${S}/NativeBigInteger/jbigi" || die "unable to cd to jbigi"
compile_lib jbigi src/jbigi.c -Iinclude -lgmp ||
die "unable to build jbigi"
if use amd64 || use x86; then
cd "${S}/jcpuid" || die "unable to cd to jcpuid"
compile_lib jcpuid src/jcpuid.c -Iinclude ||
die "unable to build jcpuid"
fi
cd "${S}"/fec/src/csrc || die
append-flags -fPIC
emake CC=$(tc-getCC) CFLAGS="${CFLAGS} $(java-pkg_get-jni-cflags)"
}
src_test () {
# fec/common/test/src/com/onionnetworks/util/BlockDigestInputStreamTest.java:47: error: ')' expected
# assert("Equal Hashes",Util.arraysEqual(buf.b,buf.off,
# ^
# fec/common/test/src/com/onionnetworks/util/BlockDigestInputStreamTest.java:48: error: ';' expected
# md.digest(),0,buf.len));
# ^
# fec/common/test/src/com/onionnetworks/util/BzeroTest.java:24: error: ')' expected
# assert("Empty: off="+off+",len="+len,checkArray(b2,b,off,len));
# ^
# fec/common/test/src/com/onionnetworks/util/BzeroTest.java:24: error: ';' expected
# assert("Empty: off="+off+",len="+len,checkArray(b2,b,off,len));
# ^
# fec/common/test/src/com/onionnetworks/util/BzeroTest.java:37: error: ')' expected
# assert("Filled : off="+off+",len="+len,checkArray(b2,b,off,len));
# ^
# fec/common/test/src/com/onionnetworks/util/BzeroTest.java:37: error: ';' expected
# assert("Filled : off="+off+",len="+len,checkArray(b2,b,off,len));
# ^
# 6 errors
rm fec/common/test/src/com/onionnetworks/util/BlockDigestInputStreamTest.java || die
rm fec/common/test/src/com/onionnetworks/util/BzeroTest.java || die
# only 3 tests are run while " grep -nr 'public void test' " gives 38 matches
java-pkg-simple_src_test
}
src_install() {
java-pkg-simple_src_install
java-pkg_doso NativeBigInteger/jbigi/libjbigi.so
java-pkg_doso fec/src/csrc/libfec{8,16}.so
if use amd64 || use x86; then
java-pkg_doso jcpuid/libjcpuid.so
fi
}