| Version | EAPI | Keywords | Slot |
|---|---|---|---|
| 1.7.32-r2 | 8 | ~amd64 ~arm64 ~ppc64 ~x86 | 0 |
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="org.slf4j:${PN}:${PV}"
JAVA_TESTING_FRAMEWORKS="junit-4"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="SLF4J Log4j 1.2 binding"
HOMEPAGE="https://www.slf4j.org"
SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> slf4j-${PV}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
CP_DEPEND="
dev-java/log4j-12-api:2
>=dev-java/slf4j-api-${PV}:1
"
DEPEND="
>=virtual/jdk-1.8:*
${CP_DEPEND}
"
RDEPEND="
>=virtual/jre-1.8:*
${CP_DEPEND}
"
S="${WORKDIR}/slf4j-v_${PV}/${PN}"
JAVA_SRC_DIR="src/main/java"
JAVA_RESOURCE_DIRS=( "src/main/resources" )
JAVA_TEST_GENTOO_CLASSPATH="junit-4"
JAVA_TEST_SRC_DIR="src/test/java"
JAVA_TEST_RESOURCE_DIRS=( "src/test/resources" )
JAVA_TEST_EXCLUDES=(
# Failing tests
org.slf4j.impl.Log4j12MultithreadedInitializationTest
)
src_prepare() {
if use test; then
local test_root="${JAVA_TEST_SRC_DIR}/org/slf4j"
cp "../slf4j-api/${test_root}/LoggerAccessingThread.java" \
"${test_root}" || die "Failed to copy additional test sources"
local helpers="${test_root}/helpers"
mkdir -p "${helpers}" || die "Failed to create test helpers directory"
cp "../slf4j-api/${helpers}/MultithreadedInitializationTest.java" \
"${helpers}" || die "Failed to copy test helpers"
JAVA_TEST_EXCLUDES+=(
org.slf4j.helpers.MultithreadedInitializationTest
)
fi
eapply -p2 "${FILESDIR}/${P}-migrate-to-log4j-12-api.patch"
java-pkg-2_src_prepare
# The tests in this file add and use an Appender to verify whether
# messages have been successfully logged, which no longer works with
# the log4j-12-api bridge because the methods for adding an Appender
# in the bridge "are largely no-ops":
# https://logging.apache.org/log4j/log4j-2.2/log4j-1.2-api/index.html
rm "${JAVA_TEST_SRC_DIR}/org/slf4j/InvocationTest.java" ||
die "Failed to remove tests that are incompatible with log4j-12-api"
}
>=virtual/jdk-1.8:* dev-java/log4j-12-api:2 >=dev-java/slf4j-api-1.7.32-r2:1
>=virtual/jre-1.8:* dev-java/log4j-12-api:2 >=dev-java/slf4j-api-1.7.32-r2:1