merge changes from overlooked PR#2

This commit is contained in:
Fabio Valentini 2020-09-07 17:22:54 +02:00
parent 2073cb660c
commit 93e01ef3af
No known key found for this signature in database
GPG Key ID: 5AC5F572E5D410AF
3 changed files with 56 additions and 40 deletions

8
.gitignore vendored
View File

@ -1,2 +1,8 @@
/jctools-*.tar.gz
/results_*
/*.src.rpm
/v1.1-alpha.tar.gz
/jctools-1.2.1.tar.gz
/jctools-2.0.2.tar.gz
/jctools-2.1.2.tar.gz
/JCTools-3.1.0.tar.gz

View File

@ -1,10 +1,15 @@
Name: jctools
Version: 3.1.0
Release: 1%{?dist}
Summary: Java Concurrency Tools for the JVM
License: ASL 2.0
URL: http://jctools.github.io/JCTools/
Source0: https://github.com/JCTools/JCTools/archive/v%{version}/%{name}-%{version}.tar.gz
%global srcname JCTools
Name: jctools
Version: 3.1.0
Release: 1%{?dist}
Summary: Java Concurrency Tools for the JVM
License: ASL 2.0
URL: https://github.com/JCTools/JCTools
Source0: %{url}/archive/v%{version}/%{srcname}-%{version}.tar.gz
BuildArch: noarch
BuildRequires: maven-local
BuildRequires: mvn(com.github.javaparser:javaparser-core) >= 3.14.16
@ -14,14 +19,14 @@ BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.codehaus.mojo:exec-maven-plugin)
BuildRequires: mvn(org.hamcrest:hamcrest-all)
BuildArch: noarch
# unused parent package was removed for fedora 33+
Obsoletes: %{name}-parent < 3.1.0-1
# Parent pom package obsoleted in F34
Obsoletes: %{name}-parent < 3.1.0-1
# Can't ship these modules any longer due to usage of Unsafe.defineClass
# not available in JDK 11, see https://github.com/JCTools/JCTools/issues/254
Obsoletes: %{name}-channels < 3.1.0-1
Obsoletes: %{name}-experimental < 3.1.0-1
# unused channels and experimental modules disabled with 3.1.0 for fedora 33+
# Unsafe.defineClass is not available in JDK 11:
# https://github.com/JCTools/JCTools/issues/254
Obsoletes: %{name}-channels < 3.1.0-1
Obsoletes: %{name}-experimental < 3.1.0-1
%description
This project aims to offer some concurrent data structures
@ -35,61 +40,65 @@ currently missing from the JDK:
° Low contention stats counters
° Executor
%package javadoc
Summary: Javadoc for %{name}
Summary: Javadoc for %{name}
%description javadoc
This package contains javadoc for %{name}.
%prep
%setup -q -n JCTools-%{version}
%setup -q -n %{srcname}-%{version}
# Cleanup
find . -name '*.class' -print -delete
find . -name '*.jar' -print -delete
# Remove failure-prone tests (race condition?)
# drop some failure-prone tests (race conditions?)
rm jctools-core/src/test/java/org/jctools/queues/MpqSanityTestMpscCompound.java
rm jctools-core/src/test/java/org/jctools/queues/atomic/AtomicMpqSanityTestMpscCompound.java
rm jctools-core/src/test/java/org/jctools/maps/NonBlockingHashMapTest.java
# Fix up version
# set correct version in all pom.xml files
%pom_xpath_set pom:project/pom:version %{version}
%pom_xpath_set -r pom:parent/pom:version %{version} %{name}-{build,core,channels,experimental}
%pom_xpath_set pom:parent/pom:version %{version} jctools-{build,core,channels,experimental}
# Remove plugins unnecessary for RPM builds
# remove plugins unnecessary for RPM builds
%pom_remove_plugin :coveralls-maven-plugin jctools-core
%pom_remove_plugin :jacoco-maven-plugin jctools-core
%pom_remove_plugin :maven-enforcer-plugin
%pom_remove_plugin :coveralls-maven-plugin %{name}-core
%pom_remove_plugin :jacoco-maven-plugin %{name}-core
%pom_remove_plugin :maven-source-plugin %{name}-core
%pom_remove_plugin :maven-javadoc-plugin %{name}-core
%pom_remove_plugin :maven-source-plugin jctools-core
%pom_remove_plugin :maven-javadoc-plugin jctools-core
# Unavailable deps
%pom_disable_module %{name}-benchmarks
%pom_disable_module %{name}-concurrency-test
# disable unused modules with unavailable dependencies
%pom_disable_module jctools-benchmarks
%pom_disable_module jctools-concurrency-test
# Can't build these modules due to use of Unsafe.defineClass which is not present
# in JDK 11, see https://github.com/JCTools/JCTools/issues/254
%pom_disable_module %{name}-channels
%pom_disable_module %{name}-experimental
# incompatible with Java 11 and unused in fedora:
# https://github.com/JCTools/JCTools/issues/254
%pom_disable_module jctools-channels
%pom_disable_module jctools-experimental
# No need to package internal build tools
%mvn_package :jctools-parent __noinstall
# do not install internal build tools
%mvn_package :jctools-build __noinstall
# do not install unused parent POM
%mvn_package :jctools-parent __noinstall
%build
%mvn_build -s
%install
%mvn_install
%files -f .mfiles-%{name}-core
%files -f .mfiles-jctools-core
%doc README.md
%license LICENSE
%files javadoc -f .mfiles-javadoc
%license LICENSE
%changelog
* Fri Sep 04 2020 Mat Booth <mat.booth@redhat.com> - 3.1.0-1
- Update to latest upstream version
@ -157,3 +166,4 @@ rm jctools-core/src/test/java/org/jctools/maps/NonBlockingHashMapTest.java
* Tue May 19 2015 gil cattaneo <puntogil@libero.it> 1.1-0.1.alpha
- initial rpm

View File

@ -1 +1 @@
SHA512 (jctools-3.1.0.tar.gz) = bf69387732dea043e6e5fa44fe60a5f80ef5ae9d32ebb39ac16353e5bd82502b3b6e5564a8bd9f3b8ad073a95ff984ae55133884ebeea9d0b9a777c488af2a74
SHA512 (JCTools-3.1.0.tar.gz) = bf69387732dea043e6e5fa44fe60a5f80ef5ae9d32ebb39ac16353e5bd82502b3b6e5564a8bd9f3b8ad073a95ff984ae55133884ebeea9d0b9a777c488af2a74