commit:     844baccf3fbc3daab07dbabc20ba7322f16884ee
Author:     Volkmar W. Pogatzki <gentoo <AT> pogatzki <DOT> net>
AuthorDate: Wed Nov 19 16:41:14 2025 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Thu Mar 12 02:43:33 2026 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=844baccf

dev-java/commons-logging: add 1.3.6 using log4j-*-2.25.2:0

needed for bumping commons-validator-1.10.1

Signed-off-by: Volkmar W. Pogatzki <gentoo <AT> pogatzki.net>
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 dev-java/commons-logging/Manifest                  |   2 +
 .../commons-logging/commons-logging-1.3.6.ebuild   | 169 +++++++++++++++++++++
 2 files changed, 171 insertions(+)

diff --git a/dev-java/commons-logging/Manifest 
b/dev-java/commons-logging/Manifest
index 8b36c70b78a2..6af31e97dd11 100644
--- a/dev-java/commons-logging/Manifest
+++ b/dev-java/commons-logging/Manifest
@@ -1,2 +1,4 @@
 DIST commons-logging-1.3.5-src.tar.gz 196373 BLAKE2B 
874afc40d0776c9b467be444b2a597e378bb0643119b729eccb5fdec92bad8b9c8efe50f4726a8edbea24b36aef1e44b324ef54379d3d84880824c3765d2aec8
 SHA512 
07463385a3d997413fd7cb996d7266d0325e0829d88ee1d844ee13cdee702da5ec5817ccdd2b4bbccc3c9f6defd0f08f0397e6218bbd658b3e8336e9f146c0c3
 DIST commons-logging-1.3.5-src.tar.gz.asc 488 BLAKE2B 
8608ed88b260c00e1bd2f8c2ef57c842473ccc0a095b40d479a8e5abb83f6bfabb1be814b99cfc399bae1711ca07852a14a2c5ef4a976a7493432590463de690
 SHA512 
3ce7cc776e4aef7c329432b02fd50259e62d55551f1868c9f49222f079ab092bfd35257c91dd62e4760cf4abb0e5144c560ef30cd74e5e0725d34f1d19ac90bd
+DIST commons-logging-1.3.6-src.tar.gz 197037 BLAKE2B 
9ce95121fb34d983d78149ceaf72e568552b0d2e8c6f2fc8cff61c93ce4a5603c5f46c32fd49a9cf11f10ac7cc42aa2f08087fb399614f809ea60fa0635f3660
 SHA512 
66b7be2f24c3e2900372645eb803613425aa8d1b11337cd57a87e52eef63b25a193ac0bcde361fd7cb5521582dc26030288f97f9410777570b8f460ae5cf6393
+DIST commons-logging-1.3.6-src.tar.gz.asc 228 BLAKE2B 
41b5b9a29010026a9e36eacd261f732c9a076faeba4de5b0c0a12105635558a7b09d7b314940b5821cf9b53a94e11752fa54e44167b8ff741849b55b830e9cb5
 SHA512 
45931509c0437987b8f223a75be975f61dc5cee79dd5e729b21d59c4310b790a110c94d7eedd846ff526f0e809262bd40520edac79e011a311834c7c0353d54c

diff --git a/dev-java/commons-logging/commons-logging-1.3.6.ebuild 
b/dev-java/commons-logging/commons-logging-1.3.6.ebuild
new file mode 100644
index 000000000000..2af9c379a5f3
--- /dev/null
+++ b/dev-java/commons-logging/commons-logging-1.3.6.ebuild
@@ -0,0 +1,169 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=9
+
+JAVA_PKG_IUSE="doc source test"
+MAVEN_ID="commons-logging:commons-logging:${PV}"
+JAVA_TESTING_FRAMEWORKS="junit-4"
+
+inherit java-pkg-2 java-pkg-simple verify-sig
+
+DESCRIPTION="Thin adapter allowing configurable bridging to other well known 
logging systems"
+HOMEPAGE="https://commons.apache.org/proper/commons-logging/";
+SRC_URI="mirror://apache/commons/logging/source/${P}-src.tar.gz
+       verify-sig? ( 
https://downloads.apache.org/commons/logging/source/${P}-src.tar.gz.asc )"
+S="${WORKDIR}/${P}-src"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x64-macos ~x64-solaris"
+IUSE="log4j"
+
+# 
src/test/java/org/apache/commons/logging/tccl/logfactory/AdaptersTcclTestCase.java:26:
+# error: cannot find symbol
+# import org.apache.commons.logging.impl.Log4jApiLogFactory;
+#                                       ^
+#   symbol:   class Log4jApiLogFactory
+#   location: package org.apache.commons.logging.impl
+REQUIRED_USE="test? ( log4j )"
+
+VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/openpgp-keys/commons.apache.org.asc"
+
+BDEPEND="verify-sig? ( sec-keys/openpgp-keys-apache-commons )"
+
+COMMON_DEPEND="
+       dev-java/jakarta-servlet-api:4
+       dev-java/slf4j-api:0
+       log4j? (
+               >=dev-java/log4j-12-api-2.25.2:0
+               >=dev-java/log4j-api-2.25.2:0
+               >=dev-java/log4j-core-2.25.2:0
+               >=dev-java/jakarta-activation-api-1.2.2-r1:1
+               >=dev-java/jnacl-1.0-r1:0
+               >=dev-java/log4j-12-api-2.25.2:0
+               >=dev-java/snakeyaml-2.5:0
+       )
+"
+
+DEPEND="
+       ${COMMON_DEPEND}
+       >=virtual/jdk-11:*
+       test? (
+               >=dev-java/commons-io-2.20.0:0
+               dev-java/junit:5
+       )
+"
+
+RDEPEND="
+       ${COMMON_DEPEND}
+       !<dev-java/commons-beanutils-1.11.0-r1:0
+       !<dev-java/commons-digester-2.1-r4:2.1
+       !<dev-java/commons-validator-1.10.1:0
+       !<dev-java/ant-1.10.15-r1:0
+       !<dev-java/fontbox-3.0.6:0
+       !<dev-java/pdfbox-3.0.6:0
+       >=virtual/jre-1.8:*
+"
+
+DOCS=( NOTICE.txt src/changes/changes.xml )
+HTML_DOCS=( PROPOSAL.html )
+
+JAVA_GENTOO_CLASSPATH="
+       jakarta-servlet-api-4
+       slf4j-api
+"
+
+JAVA_INTERMEDIATE_JAR_NAME="org.apache.${PN/-/.}"
+JAVA_MODULE_INFO_OUT="src/main"
+JAVA_SRC_DIR="src/main/java"
+
+src_prepare() {
+       java-pkg-2_src_prepare
+
+       # https://avalon.apache.org/closed.html Apache Avalon has closed.
+       rm 
src/main/java/org/apache/commons/logging/impl/{Avalon,LogKit}Logger.java || die
+       rm 
src/test/java/org/apache/commons/logging/{avalon/AvalonLogger,logkit/Standard}TestCase.java
 || die
+
+       if use !log4j; then
+               rm 
src/main/java/org/apache/commons/logging/impl/Log4JLogger.java || die
+               rm 
src/main/java/org/apache/commons/logging/impl/Log4jApiLogFactory.java || die
+       else
+               JAVA_GENTOO_CLASSPATH_EXTRA="$(java-pkg_getjars --build-only 
--with-dependencies \
+                       jakarta-activation-api-1,jnacl,log4j-12-api,snakeyaml)"
+               JAVA_GENTOO_CLASSPATH+=" log4j-12-api log4j-api"
+       fi
+}
+
+src_compile() {
+       java-pkg-simple_src_compile
+
+       pushd target/classes > /dev/null || die
+
+       # pom.xml, lines 81-103
+       jar -cvf ../../commons-logging-api.jar \
+               $(find . -type f -name '*.class' \
+               ! -name 'Jdk13LumberjackLogger.class' \
+               ! -name 'ServletContextCleaner.class' \
+               ) || die
+
+       # pom.xml, lines 205-124
+       jar -cvf ../../commons-logging-adapters.jar \
+               $(find . -type f -path 
'./org/apache/commons/logging/impl/**.class' \
+               ! -name 'WeakHashtable*.class' \
+               ! -name 'LogFactoryImpl*.class' \
+               ) || die
+
+       popd > /dev/null || die
+}
+
+src_test() {
+       # Do not run Log4j tests because these tests use an Appender to verify
+       # logging correctness.  The log4j-12-api bridge no longer supports 
using an
+       # Appender for verifications since the methods for adding an Appender in
+       # the bridge "are largely no-ops".  This means an Appender's state would
+       # never be changed by log4j-12-api after new messages are logged.  The 
test
+       # cases, however, expect changes to the Appender's state in such an 
event,
+       # so they would fail with log4j-12-api.
+       # https://logging.apache.org/log4j/log4j-2.8/log4j-1.2-api/index.html
+       rm 
src/test/java/org/apache/commons/logging/pathable/ParentFirstTestCase.java || 
die # Log4JLogger
+       rm 
src/test/java/org/apache/commons/logging/pathable/ChildFirstTestCase.java || 
die # Log4JLogger
+       rm -r src/test/java/org/apache/commons/logging/log4j || die
+       rm 
src/test/java/org/apache/commons/logging/log4j2/CallerInformationTestCase.java 
|| die
+       # error: package ch.qos.logback.classic does not exist
+       rm 
src/test/java/org/apache/commons/logging/slf4j/CallerInformationTestCase.java 
|| die
+
+       JAVA_TEST_EXCLUDES=(
+               org.apache.commons.logging.jdk14.TestHandler # No runnable 
methods
+               # junit.framework.AssertionFailedError: Wrong factory retrieved 
through
+               # ServiceLoader: org.apache.commons.logging.impl.Slf4jLogFactory
+               org.apache.commons.logging.serviceloader.ServiceLoaderTestCase
+               # junit.framework.ComparisonFailure: Log class 
expected:<...ommons.logging.impl.[NoOp]Log>
+               # but was:<...ommons.logging.impl.[Slf4jLogFactory$Slf4j]Log>
+               org.apache.commons.logging.noop.NoOpLogTestCase
+               # org.junit.runners.model.InvalidTestClassyyError: Invalid test 
class
+               org.apache.commons.logging.LogSourceTest        # No runnable 
methods
+               # junit.framework.AssertionFailedError: Logging config 
succeeded when context class loader was null!
+               org.apache.commons.logging.LoadTestCase
+               # junit.framework.AssertionFailedError:
+               # 
expected:<org.apache.commons.logging.PathableClassLoader@1edf1c96>
+               # but 
was:<org.apache.commons.logging.PathableClassLoader@15615099>
+               org.apache.commons.logging.tccl.logfactory.AdaptersTcclTestCase
+       )
+       JAVA_TEST_EXTRA_ARGS=(
+               -Dcommons-lang3="$(java-pkg_getjars commons-lang)"
+               -Dlog4j-api="commons-logging-api.jar"
+               -Dservlet-api="$(java-pkg_getjars jakarta-servlet-api-4)"
+               -Dcommons-logging="commons-logging.jar"
+               -Dcommons-logging-api="commons-logging-api.jar"
+               -Dcommons-logging-adapters="commons-logging-adapters.jar"
+               -Dtestclasses="target/test-classes"
+       )
+       if use log4j; then
+               JAVA_TEST_EXTRA_ARGS+=" -Dlog4j12=$(java-pkg_getjars 
log4j-12-api,log4j-core)"
+       fi
+       JAVA_TEST_GENTOO_CLASSPATH="commons-io commons-lang junit-4 junit-5"
+       JAVA_TEST_RESOURCE_DIRS="src/test/resources"
+       JAVA_TEST_SRC_DIR="src/test/java"
+       java-pkg-simple_src_test
+}

Reply via email to