commit a18ad2e50c3cc63eba3cbabf7eb56d4bd476190d Author: CentOS Sources Date: Tue May 10 03:10:46 2022 -0400 import jctools-3.3.0-3.module+el8.6.0+14329+308e7a94 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2073e90 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/JCTools-3.3.0.tar.gz diff --git a/.jctools.metadata b/.jctools.metadata new file mode 100644 index 0000000..f1bd0cf --- /dev/null +++ b/.jctools.metadata @@ -0,0 +1 @@ +fc2d43993feb32878e0e63cb44b7832a62ff9abc SOURCES/JCTools-3.3.0.tar.gz diff --git a/SPECS/jctools.spec b/SPECS/jctools.spec new file mode 100644 index 0000000..bc246a1 --- /dev/null +++ b/SPECS/jctools.spec @@ -0,0 +1,194 @@ +%global srcname JCTools + +Name: jctools +Version: 3.3.0 +Release: 3%{?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-openjdk8 +BuildRequires: mvn(com.google.guava:guava-testlib) +BuildRequires: mvn(junit:junit) +BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) +BuildRequires: mvn(org.hamcrest:hamcrest-all) + +# unused parent package was removed for fedora 33+ +Obsoletes: %{name}-parent < 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 +currently missing from the JDK: + +° SPSC/MPSC/SPMC/MPMC Bounded lock free queues +° SPSC/MPSC Unbounded lock free queues +° Alternative interfaces for queues +° Offheap concurrent ring buffer for ITC/IPC purposes +° Single Writer Map/Set implementations +° Low contention stats counters +° Executor + + +%package javadoc +Summary: Javadoc for %{name} + +%description javadoc +This package contains javadoc for %{name}. + + +%prep +%setup -q -n %{srcname}-%{version} + +# 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 + +# set correct version in all pom.xml files +%pom_xpath_set pom:project/pom:version %{version} +%pom_xpath_set pom:parent/pom:version %{version} jctools-{build,core,channels,experimental} + +# 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 :maven-source-plugin jctools-core +%pom_remove_plugin :maven-javadoc-plugin jctools-core + +# remove tests with additional kotlin dependencies +%pom_remove_dep org.jetbrains.kotlinx:lincheck jctools-core +rm -r jctools-core/src/test/java/org/jctools/maps/linearizability_test/ + +# disable unused modules with unavailable dependencies +%pom_disable_module jctools-benchmarks +%pom_disable_module jctools-concurrency-test + +# 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 + +%pom_disable_module jctools-build +%pom_remove_plugin :exec-maven-plugin jctools-core + +# do not install internal build tools +%mvn_package :jctools-build __noinstall + +# do not install unused parent POM +%mvn_package :jctools-parent __noinstall + + +%build +# Tests time out in CentOS Stream 9 Koji +%mvn_build -s -f + + +%install +%mvn_install + + +%files -f .mfiles-jctools-core +%doc README.md +%license LICENSE + +%files javadoc -f .mfiles-javadoc +%license LICENSE + + +%changelog +* Wed Feb 23 2022 Mikolaj Izdebski - 3.3.0-3 +- Build with OpenJDK 8 + +* Mon Feb 21 2022 Mikolaj Izdebski - 3.3.0-2 +- Remove dependency on javaparser and exec-maven-plugin +- Disable tests + +* Tue Aug 10 2021 Sérgio Basto - 3.3.0-1 +- Update to 3.3.0 + +* Thu Jul 22 2021 Fedora Release Engineering - 3.2.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Feb 02 2021 Fabio Valentini - 3.2.0-1 +- Update to version 3.2.0. + +* Tue Jan 26 2021 Fedora Release Engineering - 3.1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Fri Sep 04 2020 Mat Booth - 3.1.0-1 +- Update to latest upstream version +- Obsolete sub-packages that cannot be built on JDK 11 + +* Tue Jul 28 2020 Mat Booth - 2.1.2-10 +- Patch for javaparser API changes + +* Tue Jul 28 2020 Fedora Release Engineering - 2.1.2-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Fri Jul 10 2020 Jiri Vanek - 2.1.2-8 +- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11 + +* Fri Jun 26 2020 Roland Grunberg - 2.1.2-7 +- Force Java 8 as we cannot build with Java 11 due to upstream bug. + +* Wed Jan 29 2020 Fedora Release Engineering - 2.1.2-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Dec 19 2019 Mat Booth - 2.1.2-5 +- Skip problematic NonBlockingHashMapTest + +* Mon Sep 09 2019 Fabio Valentini - 2.1.2-4 +- Disable another failure-prone unreliable test. + +* Mon Sep 09 2019 Fabio Valentini - 2.1.2-3 +- Disable failure-prone unreliable test. + +* Thu Jul 25 2019 Fedora Release Engineering - 2.1.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Wed Feb 13 2019 Mat Booth - 2.1.2-1 +- Update to latest upstream release + +* Fri Feb 01 2019 Fedora Release Engineering - 2.0.2-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 13 2018 Fedora Release Engineering - 2.0.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Feb 07 2018 Fedora Release Engineering - 2.0.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sun Sep 17 2017 Mat Booth - 2.0.2-2 +- Drop unneeded dep on guava-testlib + +* Mon Aug 14 2017 Tomas Repik - 2.0.2-1 +- Update to 2.0.2 + +* Wed Jul 26 2017 Fedora Release Engineering - 1.2.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 1.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Wed Sep 28 2016 gil cattaneo 1.2.1-1 +- update to 1.2.1 + +* Thu Feb 04 2016 Fedora Release Engineering - 1.1-0.3.alpha +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 1.1-0.2.alpha +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Tue May 19 2015 gil cattaneo 1.1-0.1.alpha +- initial rpm +