From 93e01ef3afd9678eed3e09ccc3ad7add50de40cd Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Sep 07 2020 15:22:54 +0000 Subject: merge changes from overlooked PR#2 --- diff --git a/.gitignore b/.gitignore index a44bcfb..312c3e2 100644 --- a/.gitignore +++ b/.gitignore @@ -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 diff --git a/jctools.spec b/jctools.spec index 41761b2..8ed1173 100644 --- a/jctools.spec +++ b/jctools.spec @@ -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} -# Cleanup -find . -name '*.class' -print -delete -find . -name '*.jar' -print -delete +%prep +%setup -q -n %{srcname}-%{version} -# 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 - 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 1.1-0.1.alpha - initial rpm + diff --git a/sources b/sources index 44ff9c1..f6e1d04 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (jctools-3.1.0.tar.gz) = bf69387732dea043e6e5fa44fe60a5f80ef5ae9d32ebb39ac16353e5bd82502b3b6e5564a8bd9f3b8ad073a95ff984ae55133884ebeea9d0b9a777c488af2a74 +SHA512 (JCTools-3.1.0.tar.gz) = bf69387732dea043e6e5fa44fe60a5f80ef5ae9d32ebb39ac16353e5bd82502b3b6e5564a8bd9f3b8ad073a95ff984ae55133884ebeea9d0b9a777c488af2a74