blob: 485039a0cccf0ead723a3d1acfe7037af734de9e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="commons-net:commons-net:${PV}"
JAVA_TESTING_FRAMEWORKS="junit-jupiter"
inherit java-pkg-2 java-pkg-simple junit5 verify-sig
DESCRIPTION="Client-oriented Java library to implement many Internet protocols"
HOMEPAGE="https://commons.apache.org/proper/commons-net/"
FSV="1.2.1" # apache-ftpserver isn't yet packaged
MCV="2.2.4"
SRC_URI="mirror://apache/commons/net/source/${P}-src.tar.gz
test? (
https://repo1.maven.org/maven2/org/apache/ftpserver/ftpserver-core/${FSV}/ftpserver-core-${FSV}.jar
https://repo1.maven.org/maven2/org/apache/ftpserver/ftplet-api/${FSV}/ftplet-api-${FSV}.jar
https://repo1.maven.org/maven2/org/apache/mina/mina-core/${MCV}/mina-core-${MCV}.jar
)
verify-sig? ( https://downloads.apache.org/commons/net/source/${P}-src.tar.gz.asc )"
S="${WORKDIR}/${P}-src"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 arm64 ppc64 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris"
BDEPEND="verify-sig? ( sec-keys/openpgp-keys-ggregory )"
DEPEND="
>=dev-java/commons-io-2.20.0:0
>=virtual/jdk-11:*
test? (
>=dev-java/commons-collections-4.5.0:4
>=dev-java/commons-lang-3.18.0:0
dev-java/junit:4
dev-java/opentest4j:0
dev-java/slf4j-api:0
)
"
RDEPEND=">=virtual/jre-1.8:*"
DOCS=( CONTRIBUTING.md {NOTICE,RELEASE-NOTES}.txt )
PATCHES=( "${FILESDIR}/commons-net-3.12.0-skipFailingTests.patch" )
JAVA_CLASSPATH_EXTRA="commons-io"
JAVA_GENTOO_CLASSPATH_EXTRA=:"${DISTDIR}/ftplet-api-${FSV}.jar"
JAVA_GENTOO_CLASSPATH_EXTRA+=:"${DISTDIR}/ftpserver-core-${FSV}.jar"
JAVA_GENTOO_CLASSPATH_EXTRA+=:"${DISTDIR}/mina-core-${MCV}.jar"
JAVA_INTERMEDIATE_JAR_NAME="org.apache.${PN/-/.}"
JAVA_MODULE_INFO_OUT="src/main"
JAVA_RESOURCE_DIRS="src/main/resources"
JAVA_SRC_DIR="src/main/java"
JAVA_TEST_GENTOO_CLASSPATH="commons-collections-4 commons-lang junit-4 junit-5 opentest4j slf4j-api"
JAVA_TEST_RESOURCE_DIRS="src/test/resources"
JAVA_TEST_SRC_DIR="src/test/java"
VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/ggregory.asc"
src_unpack() {
use verify-sig && verify-sig_verify_detached "${DISTDIR}"/${P}-src.tar.gz{,.asc}
default
}
src_prepare() {
default #780585
java-pkg-2_src_prepare
# pom.xml lines 179-188 (do not put it in the main jar)
mkdir -p src/examples/java/org/apache/commons/net/ || die
mv src/{main,examples}/java/org/apache/commons/net/examples || die "mv java"
mkdir -p target/examples || die
mv {src/main/resources,target/examples}/org || die "mv resources"
}
src_test() {
# Some examples are needed only for compiling tests but won't be packaged.
mkdir -p target/examples || die
local examples_sources
find src/examples/java -type f -name '*.java' \
> examples_sources || die "sources"
ejavac -d target/examples @examples_sources \
-classpath "$(java-pkg_getjars --build-only commons-io)":commons-net.jar
JAVA_GENTOO_CLASSPATH_EXTRA+=":target/examples"
# src/test/java/org/apache/commons/net/util/SubnetUtilsTest.java:39: error: cannot find symbol
# import org.junit.jupiter.params.provider.FieldSource;
rm src/test/java/org/apache/commons/net/util/SubnetUtilsTest.java || die "rm SubnetUtilsTest.java"
# pom.xml lines 208-209
find src/test/java -type f -name '*FunctionalTest.java' -delete || die
find src/test/java -type f -name 'POP3*Test.java' -delete || die
JAVA_TEST_EXCLUDES=(
# caught: java.net.UnknownHostException:
# jdk.internal.util.Exceptions$NonSocketInfo@32f61a31tux: Name or service not known
org.apache.commons.net.tftp.TFTPAckPacketTest
org.apache.commons.net.tftp.TFTPDataPacketTest
org.apache.commons.net.tftp.TFTPErrorPacketTest
org.apache.commons.net.tftp.TFTPReadRequestPacketTest
org.apache.commons.net.tftp.TFTPRequestPacketTest
org.apache.commons.net.tftp.TFTPWriteRequestPacketTest
)
junit5_src_test
}
|