diff options
Diffstat (limited to 'dev-java/commons-logging')
-rw-r--r-- | dev-java/commons-logging/Manifest | 3 | ||||
-rw-r--r-- | dev-java/commons-logging/commons-logging-1.3.1.ebuild | 153 |
2 files changed, 156 insertions, 0 deletions
diff --git a/dev-java/commons-logging/Manifest b/dev-java/commons-logging/Manifest index f8d66b902dba..fbec7f593c38 100644 --- a/dev-java/commons-logging/Manifest +++ b/dev-java/commons-logging/Manifest @@ -1,3 +1,6 @@ DIST commons-logging-1.3.0_pre20230319.tar.gz 184984 BLAKE2B 01b46bdb657dfaf3ffb55b3440b416d61a419a3358e4d240cc7e25794f38e0061e14ee77e5578aedf1b50006d6ec65016c9e837bd13c4dab9a2182604fe85c72 SHA512 b586be5dd891572aa55c3066c3fb7d57ba5f31c0bfaa768b80cd8c1c5c659a8c718b4cb42e6c65332b52f073462432c0f81e4aaf1535afb781da9a7884cdc07e +DIST commons-logging-1.3.1-src.tar.gz 189156 BLAKE2B 23308b2bff6ea67620b0f07f49a63ffdbd07833fc0d9a6654386f4c17c9125abef5ad2afb6d8c798dcb98bc3e99bd8d94d35b9deec569c3aec1dde20f69e1a1d SHA512 ffda970d086601df4b476caf8bd01d1bdc22dd7f8846a22287036f7f000ce6cf0a757d16621910f041f8d90aa6066819454b3977dd005ca66817bec59e91e91f +DIST commons-logging-1.3.1-src.tar.gz.asc 488 BLAKE2B 3225a62f6269224f1b52907631be03d97cde65d1c7a76c06b6a23b9e30b1cee08b048eb4fdaa41b0a6b5bcf090b54c9dc54307fb1629b039b786fd426572a4d1 SHA512 6f13f85a5aeab1099ebfca38a6173384050b1f1c2e7eac93d978587c92751ddd24d583e39bc5a949f0caec66ca141d265147e63e9e2afea2094bda4667936a86 EBUILD commons-logging-1.3.0_pre20230319.ebuild 4184 BLAKE2B 3ece0c8ce0d4be3b106d3986bdd935f9e302287993816989965bfe32fe9880eae6770666071917d95d4b9ba4f1b16f5e5ddbaa19ed1e7b98feb74eac53f61f2f SHA512 a96e5f06f4b990f76761a0d6a3e64f58f1ae021a312bbaea0ca66a1a095fb3a808f231bd042636227454ca2692d67fc432d52d49ec962e6a7c803a70ed0e740a +EBUILD commons-logging-1.3.1.ebuild 5395 BLAKE2B bb812ae1c825b4333c6c6f2ffde10fe7551a3a442e0c42d828dda929930aaf260d5af08fe38dd61bc895a774d1b6591e7b3eaf5c91546f1dcc6ede9672f07645 SHA512 a5ec0177149301d45d46c03be6c4066606df02024e6650171d981220c6e20a6528f1632bafdf32428f84d31006738a8eaed424a27a6fb789db53194cfedc7de8 MISC metadata.xml 549 BLAKE2B b20c8451a73329dbdb8aa88120543b948014115d754a84e8a77a8f61b9134277a7849fc10e35323c028a32d69f6e45702200e06af4481bf5238f5d848b3ccc03 SHA512 105c2bdf3eed380f11be1b8987a08fbcf1b6e6cbbb00c0e38e4813875865abd65c9be85267d5b49486913fdb0635b7329b5c4e84a86d9f93f9dcdad74c336ff0 diff --git a/dev-java/commons-logging/commons-logging-1.3.1.ebuild b/dev-java/commons-logging/commons-logging-1.3.1.ebuild new file mode 100644 index 000000000000..1f9180268241 --- /dev/null +++ b/dev-java/commons-logging/commons-logging-1.3.1.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +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 ~arm ~arm64 ~ppc64 ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="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 + dev-java/log4j-api:2 + )" + +DEPEND="${COMMON_DEPEND} + >=virtual/jdk-11:*" + +RDEPEND="${COMMON_DEPEND} + >=virtual/jre-1.8:*" + +DOCS=( NOTICE.txt src/changes/changes.xml ) +HTML_DOCS=( PROPOSAL.html ) + +JAVA_AUTOMATIC_MODULE_NAME="org.apache.commons.logging" +JAVA_ENCODING="iso-8859-1" +JAVA_GENTOO_CLASSPATH=" + jakarta-servlet-api-4 + slf4j-api +" +JAVA_SRC_DIR="src/main/java" + +src_prepare() { + java-pkg-2_src_prepare + + # javax-servlet-api and log4j* do not presently provide module-info + cat > src/main/java/module-info.java <<-EOF || die + module org.apache.commons.logging { + // requires static org.apache.logging.log4j; + requires static org.slf4j; + requires static java.logging; + // requires static log4j; + // requires static servlet.api; + // requires static org.apache.log4j; + requires java.base; + exports org.apache.commons.logging; + exports org.apache.commons.logging.impl; + uses org.apache.commons.logging.LogFactory; + } + EOF + + # 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+=" + log4j-12-api-2 + log4j-api-2 + " + fi +} + +src_compile() { + java-pkg-simple_src_compile + + pushd target/classes > /dev/null || die + + # Need Automatic-Module-Name also for the other JAR files + jar xvf ../../commons-logging.jar META-INF/MANIFEST.MF || die + + # pom.xml, lines 81-103 + jar -cvfm ../../commons-logging-api.jar META-INF/MANIFEST.MF \ + $(find . -type f -name '*.class' \ + ! -name 'Jdk13LumberjackLogger.class' \ + ! -name 'ServletContextCleaner.class' \ + ) || die + + # pom.xml, lines 205-124 + jar -cvfm ../../commons-logging-adapters.jar META-INF/MANIFEST.MF \ + $(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 + ) + JAVA_TEST_EXTRA_ARGS=( + -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-2,log4j-core-2)" + fi + JAVA_TEST_GENTOO_CLASSPATH="junit-4" + JAVA_TEST_RESOURCE_DIRS="src/test/resources" + JAVA_TEST_SRC_DIR="src/test/java" + java-pkg-simple_src_test +} + +src_install() { + java-pkg-simple_src_install + java-pkg_dojar commons-logging-api.jar commons-logging-adapters.jar +} |