[dev-java/slf4j-jdk14] modernize using java-ebuilder

This commit is contained in:
Robert Förster 2021-04-11 15:09:54 +02:00
parent b999e54f7f
commit 9c9e171ef3
4 changed files with 58 additions and 254 deletions

View File

@ -1 +1 @@
DIST slf4j-1.7.30.tar.gz 2272772 BLAKE2B c6692a20406983fa333bdb27bf8da599140d7d37fe55da6dfa2c2aff1825ee57c9d6b7bf0015e4b41b3c15ac0971559b3dd4bb5244e5393cd209ee26fac5e93d SHA512 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f
DIST slf4j-jdk14-1.7.30-sources.tar.gz 2272772 BLAKE2B c6692a20406983fa333bdb27bf8da599140d7d37fe55da6dfa2c2aff1825ee57c9d6b7bf0015e4b41b3c15ac0971559b3dd4bb5244e5393cd209ee26fac5e93d SHA512 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f

View File

@ -1,223 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="slf4j-jdk14-from-maven" default="package" basedir=".">
<!-- ====================================================================== -->
<!-- Build environment properties -->
<!-- ====================================================================== -->
<property file="${user.home}/.m2/maven.properties"/>
<property file="maven-build.properties"/>
<property name="maven.build.finalName" value="slf4j-jdk14-1.7.30"/>
<property name="maven.build.dir" value="target"/>
<property name="maven.build.outputDir" value="${maven.build.dir}/classes"/>
<property name="maven.build.srcDir.0" value="src/main/java"/>
<property name="maven.build.resourceDir.0" value="src/main/resources"/>
<property name="maven.build.testOutputDir" value="${maven.build.dir}/test-classes"/>
<property name="maven.build.testDir.0" value="src/test/java"/>
<property name="maven.build.testResourceDir.0" value="src/test/resources"/>
<property name="maven.test.reports" value="${maven.build.dir}/test-reports"/>
<property name="maven.reporting.outputDirectory" value="${maven.build.dir}/site"/>
<property name="maven.repo.local" value="${user.home}/.m2/repository"/>
<property name="maven.settings.offline" value="false"/>
<property name="maven.settings.interactiveMode" value="true"/>
<!-- ====================================================================== -->
<!-- Defining classpaths -->
<!-- ====================================================================== -->
<path id="build.classpath">
<pathelement location="${maven.repo.local}/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar"/>
</path>
<path id="build.test.classpath">
<pathelement location="${maven.repo.local}/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30.jar"/>
<pathelement location="${maven.repo.local}/org/slf4j/slf4j-api/1.7.30/slf4j-api-1.7.30-tests.jar"/>
<pathelement location="${maven.repo.local}/junit/junit/4.12/junit-4.12.jar"/>
<pathelement location="${maven.repo.local}/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar"/>
</path>
<!-- ====================================================================== -->
<!-- Cleaning up target -->
<!-- ====================================================================== -->
<target name="clean" description="Clean the output directory">
<delete dir="${maven.build.dir}"/>
</target>
<!-- ====================================================================== -->
<!-- Compilation target -->
<!-- ====================================================================== -->
<target name="compile" description="Compile the code">
<mkdir dir="${maven.build.outputDir}"/>
<javac destdir="${maven.build.outputDir}"
nowarn="false"
debug="true"
optimize="false"
deprecation="true"
target="1.8"
verbose="false"
fork="false"
source="1.8">
<src>
<pathelement location="${maven.build.srcDir.0}"/>
</src>
<classpath refid="build.classpath"/>
</javac>
<copy todir="${maven.build.outputDir}">
<fileset dir="${maven.build.resourceDir.0}"/>
</copy>
</target>
<!-- ====================================================================== -->
<!-- Test-compilation target -->
<!-- ====================================================================== -->
<target name="compile-tests"
depends="compile"
description="Compile the test code"
unless="maven.test.skip">
<mkdir dir="${maven.build.testOutputDir}"/>
<javac destdir="${maven.build.testOutputDir}"
nowarn="false"
debug="true"
optimize="false"
deprecation="true"
target="1.8"
verbose="false"
fork="false"
source="1.8">
<src>
<pathelement location="${maven.build.testDir.0}"/>
</src>
<classpath>
<path refid="build.test.classpath"/>
<pathelement location="${maven.build.outputDir}"/>
</classpath>
</javac>
</target>
<!-- ====================================================================== -->
<!-- Run all tests -->
<!-- ====================================================================== -->
<target name="test"
depends="compile-tests, junit-missing"
unless="junit.skipped"
description="Run the test cases">
<mkdir dir="${maven.test.reports}"/>
<junit printSummary="yes" haltonerror="true" haltonfailure="true" fork="true" dir=".">
<sysproperty key="basedir" value="."/>
<formatter type="xml"/>
<formatter type="plain" usefile="false"/>
<classpath>
<path refid="build.test.classpath"/>
<pathelement location="${maven.build.outputDir}"/>
<pathelement location="${maven.build.testOutputDir}"/>
</classpath>
<batchtest todir="${maven.test.reports}" unless="test">
<fileset dir="${maven.build.testDir.0}">
<include name="**/Test*.java"/>
<include name="**/*Test.java"/>
<include name="**/*TestCase.java"/>
<exclude name="**/AllTest.java"/>
<exclude name="**/PackageTest.java"/>
</fileset>
</batchtest>
<batchtest todir="${maven.test.reports}" if="test">
<fileset dir="${maven.build.testDir.0}">
<include name="**/${test}.java"/>
<exclude name="**/AllTest.java"/>
<exclude name="**/PackageTest.java"/>
</fileset>
</batchtest>
</junit>
</target>
<target name="test-junit-present">
<available classname="junit.framework.Test" property="junit.present" classpathref="build.test.classpath"/>
</target>
<target name="test-junit-status"
depends="test-junit-present">
<condition property="junit.missing">
<and>
<isfalse value="${junit.present}"/>
<isfalse value="${maven.test.skip}"/>
</and>
</condition>
<condition property="junit.skipped">
<or>
<isfalse value="${junit.present}"/>
<istrue value="${maven.test.skip}"/>
</or>
</condition>
</target>
<target name="junit-missing"
depends="test-junit-status"
if="junit.missing">
<echo>=================================== WARNING ===================================</echo>
<echo> JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed.</echo>
<echo>===============================================================================</echo>
</target>
<!-- ====================================================================== -->
<!-- Javadoc target -->
<!-- ====================================================================== -->
<target name="javadoc" description="Generates the Javadoc of the application">
<javadoc sourcepath="${maven.build.srcDir.0}"
packagenames="*"
destdir="${maven.reporting.outputDirectory}/apidocs"
access="protected"
old="false"
verbose="false"
version="true"
use="true"
author="true"
splitindex="false"
nodeprecated="false"
nodeprecatedlist="false"
notree="false"
noindex="false"
nohelp="false"
nonavbar="false"
serialwarn="false"
charset="ISO-8859-1"
linksource="false"
breakiterator="false"/>
</target>
<!-- ====================================================================== -->
<!-- Package target -->
<!-- ====================================================================== -->
<target name="package" depends="compile,test" description="Package the application">
<jar jarfile="${maven.build.dir}/${maven.build.finalName}.jar"
compress="true"
index="false"
manifest="${basedir}/target/classes/META-INF/MANIFEST.MF"
basedir="${maven.build.outputDir}"
excludes="**/package.html"/>
</target>
<!-- ====================================================================== -->
<!-- A dummy target for the package named after the type it creates -->
<!-- ====================================================================== -->
<target name="jar" depends="package" description="Builds the jar for the application"/>
<!-- ====================================================================== -->
<!-- Download dependencies target -->
<!-- ====================================================================== -->
<target name="test-offline">
<condition property="maven.mode.offline">
<equals arg1="${maven.settings.offline}" arg2="true"/>
</condition>
</target>
</project>

View File

@ -1,8 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<maintainer type="project">
<email>java@gentoo.org</email>
<name>Java</name>
</maintainer>
<upstream>
<doc>http://www.slf4j.org/docs.html</doc>
<bugs-to>http://www.slf4j.org/bug-reporting.html</bugs-to>
</upstream>
</pkgmetadata>

View File

@ -1,41 +1,64 @@
# Copyright 1999-2020 Gentoo Authors
# Copyright 1999-2021 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# Skeleton command:
# java-ebuilder --generate-ebuild --workdir . --pom slf4j-v_1.7.30/slf4j-jdk14/pom.xml --download-uri https://github.com/qos-ch/slf4j/archive/refs/tags/v_1.7.30.tar.gz --slot 0 --keywords "~amd64 ~arm64 ~ppc64 ~x86" --ebuild slf4j-jdk14-1.7.30.ebuild
EAPI=7
JAVA_PKG_IUSE="doc source"
inherit java-pkg-2 java-ant-2
JAVA_PKG_IUSE="doc source test"
MAVEN_ID="org.slf4j:slf4j-jdk14:1.7.30"
JAVA_TESTING_FRAMEWORKS="junit-4"
DESCRIPTION="Simple Logging Facade for Java"
HOMEPAGE="http://www.slf4j.org/"
SRC_URI="https://github.com/qos-ch/slf4j/archive/v_${PV}.tar.gz -> ${P/-jdk14/}.tar.gz"
inherit java-pkg-2 java-pkg-simple
DESCRIPTION="SLF4J JDK14 Binding"
HOMEPAGE="http://www.slf4j.org"
SRC_URI="https://github.com/qos-ch/slf4j/archive/refs/tags/v_${PV}.tar.gz -> ${P}-sources.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~ppc64 ~x86"
IUSE=""
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
RDEPEND=">=virtual/jre-1.8
dev-java/slf4j-api:0"
DEPEND=">=virtual/jdk-1.8
app-arch/unzip
dev-java/slf4j-api:0"
# Common dependencies
# POM: slf4j-v_${PV}/${PN}/pom.xml
# org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
S="${WORKDIR}/${PN/-jdk14/}-v_${PV}/${PN}"
CDEPEND="
>=dev-java/slf4j-api-1.7.30:0
"
RESTRICT="test"
# Compile dependencies
# POM: slf4j-v_${PV}/${PN}/pom.xml
# test? junit:junit:4.12 -> >=dev-java/junit-4.12:4
# test? org.slf4j:slf4j-api:1.7.30 -> >=dev-java/slf4j-api-1.7.30:0
JAVA_ANT_REWRITE_CLASSPATH="yes"
EANT_GENTOO_CLASSPATH="slf4j-api"
EANT_EXTRA_ARGS="-Dmaven.build.finalName=${PN}"
DEPEND="
>=virtual/jdk-1.8:*
${CDEPEND}
test? (
>=dev-java/slf4j-api-1.7.30:0
)
"
RDEPEND="
>=virtual/jre-1.8:*
${CDEPEND}"
S="${WORKDIR}"
JAVA_GENTOO_CLASSPATH="slf4j-api"
JAVA_SRC_DIR="slf4j-v_${PV}/${PN}/src/main/java"
JAVA_RESOURCE_DIRS=(
"slf4j-v_${PV}/${PN}/src/main/resources"
)
JAVA_TEST_GENTOO_CLASSPATH="junit-4,slf4j-api"
JAVA_TEST_SRC_DIR="slf4j-v_${PV}/${PN}/src/test/java"
JAVA_TEST_RESOURCE_DIRS=(
"slf4j-v_${PV}/${PN}/src/test/resources"
)
src_prepare() {
cp -v "${FILESDIR}"/${PV}-build.xml build.xml || die
java-pkg-2_src_prepare
}
src_install() {
java-pkg_dojar "${S}"/target/${PN}.jar
use doc && java-pkg_dojavadoc "${S}"/target/site/apidocs
use source && java-pkg_dosrc "${S}"/src/main/java/org
default
java-pkg_clean
}