Bootstrap Maven as non-modular packages

Resolves: rhbz#1951482
This commit is contained in:
Mikolaj Izdebski 2021-06-08 20:17:56 +02:00
parent 0ad2db957c
commit 6160164bc2
3 changed files with 55 additions and 44 deletions

2
.gitignore vendored
View File

@ -21,4 +21,6 @@ slf4j-1.6.1.tar.gz
/slf4j-1.7.21.tar.gz /slf4j-1.7.21.tar.gz
/slf4j-1.7.22.tar.gz /slf4j-1.7.22.tar.gz
/slf4j-1.7.25.tar.gz /slf4j-1.7.25.tar.gz
/slf4j-1.7.26.tar.gz
/slf4j-1.7.28.tar.gz
/v_1.7.30.tar.gz /v_1.7.30.tar.gz

View File

@ -1,3 +1,9 @@
# Workaround for rhbz#1969370: __bootstrap macro is not defined in
# CentOS Stream, See https://bugzilla.redhat.com/1969370
%global __bootstrap ~bootstrap
%bcond_without bootstrap
# Copyright (c) 2000-2009, JPackage Project # Copyright (c) 2000-2009, JPackage Project
# All rights reserved. # All rights reserved.
# #
@ -30,24 +36,25 @@
Name: slf4j Name: slf4j
Version: 1.7.30 Version: 1.7.30
Release: 9%{?dist} Release: 10%{?dist}
Epoch: 0
Summary: Simple Logging Facade for Java Summary: Simple Logging Facade for Java
# the log4j-over-slf4j and jcl-over-slf4j submodules are ASL 2.0, rest is MIT # the log4j-over-slf4j and jcl-over-slf4j submodules are ASL 2.0, rest is MIT
License: MIT and ASL 2.0 License: MIT and ASL 2.0
URL: http://www.slf4j.org/ URL: http://www.slf4j.org/
Source0: https://github.com/qos-ch/%{name}/archive/v_%{version}/v_%{version}.tar.gz
Source1: http://www.apache.org/licenses/LICENSE-2.0.txt
BuildArch: noarch BuildArch: noarch
BuildRequires: maven-local Source0: https://github.com/qos-ch/slf4j/archive/v_%{version}.tar.gz
BuildRequires: mvn(ch.qos.cal10n:cal10n-api) Source1: https://www.apache.org/licenses/LICENSE-2.0.txt
BuildRequires: maven-local-openjdk8
%if %{with bootstrap}
BuildRequires: javapackages-bootstrap
%else
BuildRequires: mvn(commons-logging:commons-logging) BuildRequires: mvn(commons-logging:commons-logging)
BuildRequires: mvn(javassist:javassist)
BuildRequires: mvn(org.apache.commons:commons-lang3)
BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-antrun-plugin)
BuildRequires: mvn(org.apache.maven.plugins:maven-source-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-source-plugin)
BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin)
%endif
# -log4j12 subpackage removed in fedora 34 # -log4j12 subpackage removed in fedora 34
Obsoletes: slf4j-log4j12 < 0:1.7.30-7 Obsoletes: slf4j-log4j12 < 0:1.7.30-7
@ -64,11 +71,7 @@ SLF4J interfaces directly, e.g. NLOG4J or SimpleLogger. Alternatively,
it is possible (and rather easy) to write SLF4J adapters for the given it is possible (and rather easy) to write SLF4J adapters for the given
API implementation, e.g. Log4jLoggerAdapter or JDK14LoggerAdapter.. API implementation, e.g. Log4jLoggerAdapter or JDK14LoggerAdapter..
%package javadoc %{?javadoc_package}
Summary: API documentation for %{name}
%description javadoc
This package provides %{summary}.
%package manual %package manual
Summary: Manual for %{name} Summary: Manual for %{name}
@ -88,24 +91,12 @@ Summary: SLF4J JCL Binding
%description jcl %description jcl
SLF4J JCL Binding. SLF4J JCL Binding.
%package ext
Summary: SLF4J Extensions Module
%description ext
Extensions to the SLF4J API.
%package -n jcl-over-slf4j %package -n jcl-over-slf4j
Summary: JCL 1.1.1 implemented over SLF4J Summary: JCL 1.1.1 implemented over SLF4J
%description -n jcl-over-slf4j %description -n jcl-over-slf4j
JCL 1.1.1 implemented over SLF4J. JCL 1.1.1 implemented over SLF4J.
%package -n log4j-over-slf4j
Summary: Log4j implemented over SLF4J
%description -n log4j-over-slf4j
Log4j implemented over SLF4J.
%package -n jul-to-slf4j %package -n jul-to-slf4j
Summary: JUL to SLF4J bridge Summary: JUL to SLF4J bridge
@ -121,20 +112,23 @@ SLF4J Source JARs.
%prep %prep
%setup -q -n %{name}-v_%{version} %setup -q -n %{name}-v_%{version}
find -name '*.jar' -delete find -name '*.jar' -delete
cp -p %{SOURCE1} APACHE-LICENSE install -p -m 0644 %{SOURCE1} APACHE-LICENSE
%pom_disable_module integration %pom_disable_module integration
%pom_disable_module osgi-over-slf4j %pom_disable_module osgi-over-slf4j
%pom_disable_module log4j-over-slf4j
%pom_disable_module slf4j-android %pom_disable_module slf4j-android
%pom_disable_module slf4j-ext
%pom_disable_module slf4j-log4j12 %pom_disable_module slf4j-log4j12
%pom_disable_module slf4j-migrator %pom_disable_module slf4j-migrator
# Port to maven-antrun-plugin 3.0.0
sed -i s/tasks/target/ slf4j-api/pom.xml
# Because of a non-ASCII comment in slf4j-api/src/main/java/org/slf4j/helpers/MessageFormatter.java # Because of a non-ASCII comment in slf4j-api/src/main/java/org/slf4j/helpers/MessageFormatter.java
%pom_xpath_inject "pom:project/pom:properties" " %pom_xpath_inject "pom:project/pom:properties" "
<project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>" <project.build.sourceEncoding>ISO-8859-1</project.build.sourceEncoding>"
%pom_xpath_set "pom:project/pom:properties/pom:required.jdk.version" "1.6"
# Fix javadoc links # Fix javadoc links
%pom_xpath_remove "pom:links" %pom_xpath_remove "pom:links"
%pom_xpath_inject "pom:plugin[pom:artifactId[text()='maven-javadoc-plugin']]/pom:configuration" " %pom_xpath_inject "pom:plugin[pom:artifactId[text()='maven-javadoc-plugin']]/pom:configuration" "
@ -157,12 +151,6 @@ find -name "*.css" -o -name "*.js" -o -name "*.txt" | \
<phase>skip</phase> <phase>skip</phase>
</execution>" slf4j-api </execution>" slf4j-api
# trivial port to commons-lang3
%pom_change_dep :commons-lang org.apache.commons:commons-lang3:3.8.1 slf4j-ext
sed -i "s/org.apache.commons.lang./org.apache.commons.lang3./g" \
slf4j-ext/src/main/java/org/slf4j/ext/MDCStrLookup.java
# The general pattern is that the API package exports API classes and does # The general pattern is that the API package exports API classes and does
# not require impl classes. slf4j was breaking that causing "A cycle was # not require impl classes. slf4j was breaking that causing "A cycle was
# detected when generating the classpath slf4j.api, slf4j.nop, slf4j.api." # detected when generating the classpath slf4j.api, slf4j.nop, slf4j.api."
@ -182,7 +170,7 @@ sed -i '/Import-Package/s/\}$/};resolution:=optional/' slf4j-api/src/main/resour
%mvn_package :%{name}-nop %mvn_package :%{name}-nop
%build %build
%mvn_build -f -s -- -Dsource=1.6 %mvn_build -f -s -- -Drequired.jdk.version=1.6
%install %install
# Compat symlinks # Compat symlinks
@ -195,29 +183,28 @@ install -d -m 0755 $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-manual
rm -rf target/site/{.htaccess,apidocs} rm -rf target/site/{.htaccess,apidocs}
cp -pr target/site/* $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-manual cp -pr target/site/* $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-manual
%files -f .mfiles %files -n %{?module_prefix}%{name} -f .mfiles
%license LICENSE.txt APACHE-LICENSE %license LICENSE.txt APACHE-LICENSE
%files jdk14 -f .mfiles-%{name}-jdk14 %files jdk14 -f .mfiles-%{name}-jdk14
%files jcl -f .mfiles-%{name}-jcl %files jcl -f .mfiles-%{name}-jcl
%files ext -f .mfiles-%{name}-ext
%files -n jcl-over-slf4j -f .mfiles-jcl-over-slf4j %files -n jcl-over-slf4j -f .mfiles-jcl-over-slf4j
%files -n log4j-over-slf4j -f .mfiles-log4j-over-slf4j
%files -n jul-to-slf4j -f .mfiles-jul-to-slf4j %files -n jul-to-slf4j -f .mfiles-jul-to-slf4j
%files sources -f .mfiles-sources %files sources -f .mfiles-sources
%license LICENSE.txt APACHE-LICENSE %license LICENSE.txt APACHE-LICENSE
%files javadoc -f .mfiles-javadoc
%license LICENSE.txt APACHE-LICENSE
%files manual %files manual
%license LICENSE.txt APACHE-LICENSE %license LICENSE.txt APACHE-LICENSE
%{_defaultdocdir}/%{name}-manual %{_defaultdocdir}/%{name}-manual
%changelog %changelog
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 0:1.7.30-9 * Tue Jun 08 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.7.30-10
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 - Bootstrap Maven for CentOS Stream 9
* Mon May 17 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.7.30-9
- Bootstrap build
- Non-bootstrap build
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.30-8 * Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.30-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
@ -247,12 +234,34 @@ cp -pr target/site/* $RPM_BUILD_ROOT%{_defaultdocdir}/%{name}-manual
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.25-9 * Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.25-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Jan 25 2020 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.7.30-2
- Build with OpenJDK 8
* Thu Jan 23 2020 Marian Koncek <mkoncek@redhat.com> - 1.7.30-1
- Update to upstream version 1.7.30
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.7.28-2
- Mass rebuild for javapackages-tools 201902
* Tue Aug 13 2019 Marian Koncek <mkoncek@redhat.com> - 1.7.28-1
- Update to upstream version 1.7.28
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.25-8 * Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.25-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.7.26-3
- Mass rebuild for javapackages-tools 201901
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.7.26-2
- Disable slf4j-ext module
* Thu May 09 2019 Dinesh Prasanth M K <dmoluguw@redhat.com> - 0:1.7.25-7 * Thu May 09 2019 Dinesh Prasanth M K <dmoluguw@redhat.com> - 0:1.7.25-7
- Rebuilt for Fedora 31 - Rebuilt for Fedora 31
* Wed Feb 27 2019 Marian Koncek <mkoncek@redhat.com> - 0:1.7.26-1
- Update to upstream version 1.7.26
- Fixes: RHBZ #1678877
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.25-6 * Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.7.25-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

View File

@ -1,2 +1,2 @@
SHA512 (LICENSE-2.0.txt) = 98f6b79b778f7b0a15415bd750c3a8a097d650511cb4ec8115188e115c47053fe700f578895c097051c9bc3dfb6197c2b13a15de203273e1a3218884f86e90e8
SHA512 (v_1.7.30.tar.gz) = 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f SHA512 (v_1.7.30.tar.gz) = 4f05c996532560b16f22d78fcd47f8c4ba14691ce218a51ee6d50b283a51f8e40475a3a47f1117c1898a7be922e3f85806c4a7eb526759f0e7ea8426b5c6035f
SHA512 (LICENSE-2.0.txt) = 98f6b79b778f7b0a15415bd750c3a8a097d650511cb4ec8115188e115c47053fe700f578895c097051c9bc3dfb6197c2b13a15de203273e1a3218884f86e90e8