diff --git a/0001-Fix-build-with-OpenJDK-11.patch b/0001-Fix-build-with-OpenJDK-11.patch new file mode 100644 index 0000000..4e882e2 --- /dev/null +++ b/0001-Fix-build-with-OpenJDK-11.patch @@ -0,0 +1,131 @@ +From d33031924faa557bb43ba0471f74d942ddfeae50 Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Tue, 5 Nov 2019 14:50:23 +0100 +Subject: [PATCH] Fix build with OpenJDK 11 + +--- + .../src/main/java/org/hamcrest/collection/ArrayMatching.java | 3 ++- + .../org/hamcrest/collection/IsArrayContainingInAnyOrder.java | 2 +- + .../org/hamcrest/collection/IsArrayContainingInOrder.java | 2 +- + .../hamcrest/collection/IsIterableContainingInAnyOrder.java | 2 +- + .../collection/IsIterableContainingInRelativeOrder.java | 2 +- + hamcrest/src/main/java/org/hamcrest/core/AllOf.java | 2 +- + hamcrest/src/main/java/org/hamcrest/core/AnyOf.java | 2 +- + .../src/main/java/org/hamcrest/core/CombinableMatcher.java | 4 ++-- + 8 files changed, 10 insertions(+), 9 deletions(-) + +diff --git a/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java b/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java +index fc968e0..baab775 100644 +--- a/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java ++++ b/hamcrest/src/main/java/org/hamcrest/collection/ArrayMatching.java +@@ -67,7 +67,8 @@ public class ArrayMatching { + */ + @SafeVarargs + public static Matcher arrayContainingInAnyOrder(Matcher... itemMatchers) { +- return arrayContainingInAnyOrder(asList(itemMatchers)); ++ Collection> itemMatchersList = asList(itemMatchers); ++ return new ArrayAsIterableMatcher<>(new IsIterableContainingInAnyOrder<>(itemMatchersList), itemMatchersList, "in any order"); + } + + /** +diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java +index 7e72a62..c0c7efc 100644 +--- a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java ++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInAnyOrder.java +@@ -59,7 +59,7 @@ public class IsArrayContainingInAnyOrder extends TypeSafeMatcher { + * a list of matchers, each of which must be satisfied by an entry in an examined array + */ + public static Matcher arrayContainingInAnyOrder(Matcher... itemMatchers) { +- return arrayContainingInAnyOrder(Arrays.asList(itemMatchers)); ++ return new IsArrayContainingInAnyOrder(Arrays.asList(itemMatchers)); + } + + /** +diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java +index c046914..2022f1a 100644 +--- a/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java ++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsArrayContainingInOrder.java +@@ -73,7 +73,7 @@ public class IsArrayContainingInOrder extends TypeSafeMatcher { + * the matchers that must be satisfied by the items in the examined array + */ + public static Matcher arrayContaining(Matcher... itemMatchers) { +- return arrayContaining(asList(itemMatchers)); ++ return new IsArrayContainingInOrder(asList(itemMatchers)); + } + + /** +diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java +index d6a9a33..9a7e6c0 100644 +--- a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java ++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInAnyOrder.java +@@ -98,7 +98,7 @@ public class IsIterableContainingInAnyOrder extends TypeSafeDiagnosingMatcher + */ + @SafeVarargs + public static Matcher> containsInAnyOrder(Matcher... itemMatchers) { +- return containsInAnyOrder(Arrays.asList(itemMatchers)); ++ return new IsIterableContainingInAnyOrder(Arrays.asList(itemMatchers)); + } + + /** +diff --git a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java +index 0657768..06d6a57 100644 +--- a/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java ++++ b/hamcrest/src/main/java/org/hamcrest/collection/IsIterableContainingInRelativeOrder.java +@@ -99,7 +99,7 @@ public class IsIterableContainingInRelativeOrder extends TypeSafeDiagnosingMa + */ + @SafeVarargs + public static Matcher> containsInRelativeOrder(Matcher... itemMatchers) { +- return containsInRelativeOrder(asList(itemMatchers)); ++ return new IsIterableContainingInRelativeOrder(asList(itemMatchers)); + } + + /** +diff --git a/hamcrest/src/main/java/org/hamcrest/core/AllOf.java b/hamcrest/src/main/java/org/hamcrest/core/AllOf.java +index b8c3faa..f8951bd 100644 +--- a/hamcrest/src/main/java/org/hamcrest/core/AllOf.java ++++ b/hamcrest/src/main/java/org/hamcrest/core/AllOf.java +@@ -56,6 +56,6 @@ public class AllOf extends DiagnosingMatcher { + */ + @SafeVarargs + public static Matcher allOf(Matcher... matchers) { +- return allOf(Arrays.asList(matchers)); ++ return new AllOf(Arrays.asList(matchers)); + } + } +diff --git a/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java b/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java +index 7a22c22..5a63574 100644 +--- a/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java ++++ b/hamcrest/src/main/java/org/hamcrest/core/AnyOf.java +@@ -46,6 +46,6 @@ public class AnyOf extends ShortcutCombination { + */ + @SafeVarargs + public static AnyOf anyOf(Matcher... matchers) { +- return anyOf(Arrays.asList(matchers)); ++ return new AnyOf(Arrays.asList(matchers)); + } + } +diff --git a/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java b/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java +index e37efce..6b44884 100644 +--- a/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java ++++ b/hamcrest/src/main/java/org/hamcrest/core/CombinableMatcher.java +@@ -57,7 +57,7 @@ public class CombinableMatcher extends TypeSafeDiagnosingMatcher { + this.first = matcher; + } + public CombinableMatcher and(Matcher other) { +- return new CombinableMatcher<>(first).and(other); ++ return new CombinableMatcher<>(first).and((Matcher)other); + } + } + +@@ -76,7 +76,7 @@ public class CombinableMatcher extends TypeSafeDiagnosingMatcher { + this.first = matcher; + } + public CombinableMatcher or(Matcher other) { +- return new CombinableMatcher<>(first).or(other); ++ return new CombinableMatcher<>(first).or((Matcher)other); + } + } + } +-- +2.21.0 + diff --git a/getMethods-sort.patch b/getMethods-sort.patch deleted file mode 100644 index 85707f7..0000000 --- a/getMethods-sort.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 72d003605170af32c20b72caff4ab35f3a40b254 Mon Sep 17 00:00:00 2001 -From: fanmenggang -Date: Wed, 8 May 2019 16:15:56 +0000 -Subject: [PATCH] hamcrest: eliminate class file differences - -reason: eliminate class file differences - -diff --git a/hamcrest-generator/src/main/java/org/hamcrest/generator/ReflectiveFactoryReader.java b/hamcrest-generator/src/main/java/org/hamcrest/generator/ReflectiveFactoryReader.java -index f51e659..5fa1c8f 100644 ---- a/hamcrest-generator/src/main/java/org/hamcrest/generator/ReflectiveFactoryReader.java -+++ b/hamcrest-generator/src/main/java/org/hamcrest/generator/ReflectiveFactoryReader.java -@@ -42,8 +42,8 @@ public class ReflectiveFactoryReader implements Iterable { - return new Iterator() { - - private int currentMethod = -1; -- private Method[] allMethods = cls.getMethods(); -- -+ private Method[] tmpMethods = cls.getMethods(); -+ private Method[] allMethods = sort(tmpMethods,0,tmpMethods.length - 1); - @Override - public boolean hasNext() { - while (true) { -@@ -72,6 +72,43 @@ public class ReflectiveFactoryReader implements Iterable { - private boolean outsideArrayBounds() { - return currentMethod < 0 || allMethods.length <= currentMethod; - } -+ -+ private Method[] sort(Method[] method, int low, int high) { -+ int start = low; -+ int end = high; -+ String key = method[low].toString(); -+ -+ while(end > start) { -+ while(end > start && method[end].toString().compareTo(key) >= 0) { -+ end--; -+ } -+ -+ if(end > start) { -+ Method temp = method[end]; -+ method[end] = method[start]; -+ method[start] = temp; -+ start++; -+ } -+ -+ while(start < end && method[start].toString().compareTo(key) <= 0) { -+ start++; -+ } -+ -+ if(start < end ) { -+ Method temp = method[end]; -+ method[end] = method[start]; -+ method[start] = temp; -+ end--; -+ } -+ } -+ if(start > low) { -+ sort(method,low, start - 1); -+ } -+ if(end < high) { -+ sort(method,start + 1, high); -+ } -+ return method; -+ } - }; - } - -@@ -171,4 +208,4 @@ public class ReflectiveFactoryReader implements Iterable { - return name.replace('$', '.'); - } - --} -\ No newline at end of file -+} diff --git a/hamcrest-1.3-build.patch b/hamcrest-1.3-build.patch deleted file mode 100644 index 877e51e..0000000 --- a/hamcrest-1.3-build.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff --git a/build.xml b/build.xml -index 1cfd4fb..5a7c740 100644 ---- a/build.xml -+++ b/build.xml -@@ -14,13 +14,13 @@ - - -+ classpath="lib/generator/qdox.jar"/> - - -- -+ - - -- -+ - - - -@@ -152,7 +152,8 @@ - - -+ windowtitle="Hamcrest" source="1.6" failonerror="yes"> -+ - - - -@@ -313,6 +314,7 @@ - -+ - - - diff --git a/hamcrest-1.3-fork-javac.patch b/hamcrest-1.3-fork-javac.patch deleted file mode 100644 index f5a86fe..0000000 --- a/hamcrest-1.3-fork-javac.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 54b7ccdd1e16f1d6dd07359eae0fcac8f1883373 Mon Sep 17 00:00:00 2001 -From: Michael Simacek -Date: Mon, 2 Jan 2017 10:31:56 +0100 -Subject: [PATCH] Fork javac - ---- - build.xml | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/build.xml b/build.xml -index 1cfd4fb..69acfe8 100644 ---- a/build.xml -+++ b/build.xml -@@ -284,7 +284,7 @@ - - - -- -+ - - - --- -2.9.3 - diff --git a/hamcrest-1.3-javadoc.patch b/hamcrest-1.3-javadoc.patch deleted file mode 100644 index adaae0d..0000000 --- a/hamcrest-1.3-javadoc.patch +++ /dev/null @@ -1,17 +0,0 @@ -diff --git a/build.xml b/build.xml -index ed57763..a4550cb 100644 ---- a/build.xml -+++ b/build.xml -@@ -135,11 +135,10 @@ - - - -- -+ - - - -- - - - -- -- -- -- -- -- -- -- -- - - - diff --git a/hamcrest-1.3-qdox-2.0.patch b/hamcrest-1.3-qdox-2.0.patch deleted file mode 100644 index a65f977..0000000 --- a/hamcrest-1.3-qdox-2.0.patch +++ /dev/null @@ -1,105 +0,0 @@ -From 6d7da5456a7458a249bed9c4c1e768cc7cc2fe40 Mon Sep 17 00:00:00 2001 -From: Michael Simacek -Date: Wed, 1 Feb 2017 12:57:14 +0100 -Subject: [PATCH] Port to qdox 2.0 - ---- - .../src/main/java/org/hamcrest/generator/QDox.java | 4 ++-- - .../org/hamcrest/generator/QDoxFactoryReader.java | 26 ++++++++++++---------- - 2 files changed, 16 insertions(+), 14 deletions(-) - -diff --git a/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java b/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java -index efaf615..338178d 100644 ---- a/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java -+++ b/hamcrest-generator/src/main/java/org/hamcrest/generator/QDox.java -@@ -1,6 +1,6 @@ - package org.hamcrest.generator; - --import com.thoughtworks.qdox.JavaDocBuilder; -+import com.thoughtworks.qdox.JavaProjectBuilder; - import com.thoughtworks.qdox.model.JavaClass; - - import java.io.File; -@@ -16,7 +16,7 @@ import java.io.Reader; - */ - public class QDox { - -- private final JavaDocBuilder javaDocBuilder = new JavaDocBuilder(); -+ private final JavaProjectBuilder javaDocBuilder = new JavaProjectBuilder(); - - public void addSourceTree(File sourceDir) { - javaDocBuilder.addSourceTree(sourceDir); -diff --git a/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java b/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java -index 5108140..97fce01 100644 ---- a/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java -+++ b/hamcrest-generator/src/main/java/org/hamcrest/generator/QDoxFactoryReader.java -@@ -4,8 +4,10 @@ import com.thoughtworks.qdox.model.DocletTag; - import com.thoughtworks.qdox.model.JavaClass; - import com.thoughtworks.qdox.model.JavaMethod; - import com.thoughtworks.qdox.model.JavaParameter; --import com.thoughtworks.qdox.model.Type; -+import com.thoughtworks.qdox.model.JavaType; -+import com.thoughtworks.qdox.model.impl.DefaultJavaClass; - -+import java.util.ArrayList; - import java.util.Iterator; - import java.util.List; - import java.util.regex.Pattern; -@@ -56,15 +58,15 @@ public class QDoxFactoryReader implements Iterable { - JavaMethod methodSource = findMethodInSource(factoryMethod); - if (methodSource != null) { - factoryMethod.setJavaDoc(createJavaDocComment(methodSource)); -- JavaParameter[] parametersFromSource -+ List parametersFromSource - = methodSource.getParameters(); - List parametersFromReflection - = factoryMethod.getParameters(); - -- if (parametersFromReflection.size() == parametersFromSource.length) { -- for (int i = 0; i < parametersFromSource.length; i++) { -+ if (parametersFromReflection.size() == parametersFromSource.size()) { -+ for (int i = 0; i < parametersFromSource.size(); i++) { - parametersFromReflection.get(i).setName( -- parametersFromSource[i].getName()); -+ parametersFromSource.get(i).getName()); - } - } - } -@@ -79,18 +81,18 @@ public class QDoxFactoryReader implements Iterable { - // Note, this doesn't always work - it struggles with some kinds of generics. - // This seems to cover most cases though. - List params = factoryMethod.getParameters(); -- Type[] types = new Type[params.size()]; -+ List types = new ArrayList(params.size()); - boolean varArgs = false; -- for (int i = 0; i < types.length; i++) { -+ for (int i = 0; i < params.size(); i++) { - String type = params.get(i).getType(); - varArgs = VARARGS_REGEX.matcher(type).find(); - // QDox ignores varargs and generics, so we strip them out to help QDox. - type = GENERIC_REGEX.matcher(type).replaceAll(""); - type = VARARGS_REGEX.matcher(type).replaceAll(""); -- types[i] = new Type(type); -+ types.add(new DefaultJavaClass(type)); - } -- JavaMethod[] methods = classSource.getMethodsBySignature(factoryMethod.getName(), types, false, varArgs); -- return methods.length == 1 ? methods[0] : null; -+ List methods = classSource.getMethodsBySignature(factoryMethod.getName(), types, false, varArgs); -+ return methods.size() == 1 ? methods.get(0) : null; - } - - /** -@@ -98,8 +100,8 @@ public class QDoxFactoryReader implements Iterable { - */ - private static String createJavaDocComment(JavaMethod methodSource) { - String comment = methodSource.getComment(); -- DocletTag[] tags = methodSource.getTags(); -- if ((comment == null || comment.trim().length() == 0) && tags.length == 0) { -+ List tags = methodSource.getTags(); -+ if ((comment == null || comment.trim().length() == 0) && tags.size() == 0) { - return null; - } - StringBuilder result = new StringBuilder(); --- -2.9.3 - diff --git a/hamcrest-2.2.pom b/hamcrest-2.2.pom new file mode 100644 index 0000000..89489bc --- /dev/null +++ b/hamcrest-2.2.pom @@ -0,0 +1,35 @@ + + + 4.0.0 + org.hamcrest + hamcrest + 2.2 + Hamcrest + Core API and libraries of hamcrest matcher framework. + http://hamcrest.org/JavaHamcrest/ + + + BSD License 3 + http://opensource.org/licenses/BSD-3-Clause + + + + + joewalnes + Joe Walnes + + + npryce + Nat Pryce + + + sf105 + Steve Freeman + + + + git@github.com:hamcrest/JavaHamcrest.git + https://github.com/hamcrest/JavaHamcrest + + diff --git a/hamcrest-build.xml b/hamcrest-build.xml new file mode 100644 index 0000000..74681b8 --- /dev/null +++ b/hamcrest-build.xml @@ -0,0 +1,210 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + =================================== WARNING =================================== + JUnit is not present in the test classpath or your $ANT_HOME/lib directory. Tests not executed. + =============================================================================== + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/hamcrest-core-MANIFEST.MF b/hamcrest-core-MANIFEST.MF deleted file mode 100644 index 754d5d9..0000000 --- a/hamcrest-core-MANIFEST.MF +++ /dev/null @@ -1,14 +0,0 @@ -Manifest-Version: 1.0 -Bundle-Vendor: Fedoraproject.org -Bundle-ActivationPolicy: lazy -Bundle-Localization: plugin -Bundle-RequiredExecutionEnvironment: J2SE-1.5 -Bundle-Name: Hamcrest Core -Bundle-SymbolicName: org.hamcrest.core -Eclipse-SourceReferences: scm:cvs:pserver:dev.eclipse.org:/cvsroot/too - ls:org.eclipse.orbit/org.hamcrest.core;tag=v201303031735 -Export-Package: org.hamcrest;version="1.3.0";core=split;mandatory:=cor - e,org.hamcrest.core;version="1.3.0",org.hamcrest.internal;version="1. - 3.0";x-internal:=true -Bundle-Version: 1.3.0.v201303031735 -Bundle-ManifestVersion: 2 diff --git a/hamcrest-generator-MANIFEST.MF b/hamcrest-generator-MANIFEST.MF deleted file mode 100644 index f99c220..0000000 --- a/hamcrest-generator-MANIFEST.MF +++ /dev/null @@ -1,18 +0,0 @@ -Manifest-Version: 1.0 -Bundle-Vendor: %providerName -Bundle-ActivationPolicy: lazy -Bundle-Localization: plugin -Bundle-RequiredExecutionEnvironment: J2SE-1.5 -Bundle-Name: %pluginName -Bundle-SymbolicName: org.hamcrest.generator -Bundle-Version: 1.3.0.v20090501071000 -Export-Package: org.hamcrest.generator;version="1.3.0",org.hamcrest.ge - nerator.config;version="1.3.0" -Bundle-ManifestVersion: 2 -Import-Package: com.thoughtworks.qdox;version="1.6.3",com.thoughtworks - .qdox.ant;version="1.6.3",com.thoughtworks.qdox.directorywalker;versi - on="1.6.3",com.thoughtworks.qdox.junit;version="1.6.3",com.thoughtwor - ks.qdox.model;version="1.6.3",com.thoughtworks.qdox.model.util;versio - n="1.6.3",com.thoughtworks.qdox.parser;version="1.6.3",com.thoughtwor - ks.qdox.parser.impl;version="1.6.3",com.thoughtworks.qdox.parser.stru - cts;version="1.6.3",com.thoughtworks.qdox.tools;version="1.6.3" diff --git a/hamcrest-integration-MANIFEST.MF b/hamcrest-integration-MANIFEST.MF deleted file mode 100644 index ab68061..0000000 --- a/hamcrest-integration-MANIFEST.MF +++ /dev/null @@ -1,14 +0,0 @@ -Manifest-Version: 1.0 -Bundle-Vendor: %providerName -Bundle-ActivationPolicy: lazy -Bundle-Localization: plugin -Bundle-RequiredExecutionEnvironment: J2SE-1.5 -Bundle-Name: %pluginName -Bundle-SymbolicName: org.hamcrest.integration -Require-Bundle: org.hamcrest.core;bundle-version="1.3.0" -Bundle-Version: 1.3.0.v20090501071000 -Export-Package: org.hamcrest;integration=split;mandatory:=integration; - version="1.3.0",org.hamcrest.integration;version="1.3.0" -Bundle-ManifestVersion: 2 -Import-Package: org.easymock;version="2.4.0";resolution:=optional,org. - jmock.core;version="1.10";resolution:=optional diff --git a/hamcrest-java-1.3.tar.gz b/hamcrest-java-1.3.tar.gz deleted file mode 100644 index ebd21cc..0000000 Binary files a/hamcrest-java-1.3.tar.gz and /dev/null differ diff --git a/hamcrest-java-2.2.tar.gz b/hamcrest-java-2.2.tar.gz new file mode 100644 index 0000000..c9e5799 Binary files /dev/null and b/hamcrest-java-2.2.tar.gz differ diff --git a/hamcrest-library-MANIFEST.MF b/hamcrest-library-MANIFEST.MF deleted file mode 100644 index 5fc8676..0000000 --- a/hamcrest-library-MANIFEST.MF +++ /dev/null @@ -1,15 +0,0 @@ -Manifest-Version: 1.0 -Bundle-Vendor: %providerName -Bundle-ActivationPolicy: lazy -Bundle-Localization: plugin -Bundle-RequiredExecutionEnvironment: J2SE-1.5 -Bundle-Name: %pluginName -Bundle-SymbolicName: org.hamcrest.library -Require-Bundle: org.hamcrest.core;bundle-version="1.3.0" -Bundle-Version: 1.3.0.v20090501071000 -Export-Package: org.hamcrest;version="1.3.0";library=split;mandatory:= - library,org.hamcrest.beans;version="1.3.0",org.hamcrest.collection;ve - rsion="1.3.0",org.hamcrest.number;version="1.3.0",org.hamcrest.object - ;version="1.3.0",org.hamcrest.text;version="1.3.0",org.hamcrest.xml;v - ersion="1.3.0" -Bundle-ManifestVersion: 2 diff --git a/hamcrest.spec b/hamcrest.spec index 5efb8ee..c74d85f 100644 --- a/hamcrest.spec +++ b/hamcrest.spec @@ -1,32 +1,29 @@ +%bcond_with tests Name: hamcrest -Version: 1.3 -Release: 25 +Version: 2.2 +Release: 1 Epoch: 0 Summary: Library of matcher objects for building test expressions -License: BSD +License: BSD-3-Clause URL: https://github.com/hamcrest/JavaHamcrest Source0: https://github.com/hamcrest/JavaHamcrest/archive/hamcrest-java-%{version}.tar.gz -Source1: hamcrest-core-MANIFEST.MF -Source2: hamcrest-library-MANIFEST.MF -Source3: hamcrest-integration-MANIFEST.MF -Source4: hamcrest-generator-MANIFEST.MF - -Patch0001: hamcrest-1.3-build.patch -Patch0002: hamcrest-1.3-no-jarjar.patch -Patch0003: hamcrest-1.3-javadoc.patch -Patch0004: hamcrest-1.3-qdox-2.0.patch -Patch0005: hamcrest-1.3-fork-javac.patch - -# pacth for openEuler -Patch9000: getMethods-sort.patch +Source1: %{name}-build.xml +Source2: https://repo1.maven.org/maven2/org/hamcrest/hamcrest/%{version}/hamcrest-%{version}.pom +Patch0001: 0001-Fix-build-with-OpenJDK-11.patch BuildArch: noarch -BuildRequires: javapackages-local ant ant-junit easymock junit qdox testng -Requires: qdox easymock >= 3.0 +BuildRequires: ant +BuildRequires: fdupes +BuildRequires: java-devel >= 1.8 +BuildRequires: javapackages-local +%if %{with tests} +BuildRequires: ant-junit +%endif Provides: %{name}-core = %{epoch}:%{version}-%{release} Obsoletes: %{name}-core < %{epoch}:%{version}-%{release} +Obsoletes: %{name}-demo < %{epoch}:%{version}-%{release} %description Provides a library of matcher objects (also known as constraints or @@ -42,67 +39,56 @@ Obsoletes: %{name}-javadoc < %{epoch}:%{version}-%{release} %description help Javadoc for hamcrest package. -%package demo -Summary: Demos for hamcrest package -Requires: junit testng %{name} = %{epoch}:%{version}-%{release} - -%description demo -Demo files for hamcrest package. - %prep -%autosetup -n JavaHamcrest-%{name}-java-%{version} -p1 - -find . -type f -name "*.jar" -delete -rm -rf hamcrest-integration/src/main/java/org/hamcrest/integration/JMock1Adapter.java -rm -rf hamcrest-integration/src/main/java/org/hamcrest/JMock1Matchers.java -rm -rf hamcrest-unit-test/src/main/java/org/hamcrest/integration/JMock1AdapterTest.java - - -ln -sf $(build-classpath qdox) lib/generator/ -ln -sf $(build-classpath easymock3) lib/integration/ -ln -sf $(build-classpath jmock) lib/integration/ -ln -sf $(build-classpath testng-jdk15) lib/integration/ +%autosetup -n JavaHamcrest-%{version} -p1 +# Only build hamcrest +mkdir ../bak +cp -r hamcrest/* ../bak +cp LICENSE.txt ../bak +cp README.md ../bak +rm -rf * +cp -r ../bak/* . +rm -rf ../bak +cp %{SOURCE1} build.xml +cp %{SOURCE2} . %build -export CLASSPATH=$(build-classpath qdox) -export OPT_JAR_LIST="junit ant/ant-junit" -ant -Dant.build.javac.source=1.5 -Dversion=%{version} -Dbuild.sysclasspath=last clean core generator library bigjar javadoc - -jar ufm build/hamcrest-core-%{version}.jar %{SOURCE1} -jar ufm build/hamcrest-library-%{version}.jar %{SOURCE2} -jar ufm build/hamcrest-integration-%{version}.jar %{SOURCE3} -jar ufm build/hamcrest-generator-%{version}.jar %{SOURCE4} +%ant \ +%if %{without tests} + -Dtest.skip=true \ +%endif + jar javadoc %install -sed -i 's/@VERSION@/%{version}/g' pom/*.pom +# jars +install -dm 0755 %{buildroot}%{_javadir}/%{name} +install -pm 0644 target/%{name}-%{version}.jar %{buildroot}%{_javadir}/%{name}/%{name}.jar +ln -sf %{name}.jar %{buildroot}%{_javadir}/%{name}/all.jar +ln -sf %{name}.jar %{buildroot}%{_javadir}/%{name}/core.jar +ln -sf %{name}.jar %{buildroot}%{_javadir}/%{name}/library.jar -%mvn_artifact pom/hamcrest-parent.pom -%mvn_artifact pom/hamcrest-all.pom build/hamcrest-all-%{version}.jar -%mvn_artifact pom/hamcrest-core.pom build/hamcrest-core-%{version}.jar -%mvn_artifact pom/hamcrest-generator.pom build/hamcrest-generator-%{version}.jar -%mvn_artifact pom/hamcrest-library.pom build/hamcrest-library-%{version}.jar -%mvn_artifact pom/hamcrest-integration.pom build/hamcrest-integration-%{version}.jar +# poms +install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name} +install -pm 0644 %{SOURCE2} %{buildroot}%{_mavenpomdir}/%{name}/%{name}.pom +%add_maven_depmap %{name}/%{name}.pom %{name}/%{name}.jar -a "org.hamcrest:hamcrest-all,org.hamcrest:hamcrest-core,org.hamcrest:hamcrest-library" -%mvn_package :hamcrest-parent core -%mvn_package :hamcrest-core core +# javadoc +install -dm 0755 %{buildroot}%{_javadocdir}/%{name} +cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name} +%fdupes -s %{buildroot}%{_javadocdir} -%mvn_file ':hamcrest-{*}' %{name}/@1 - -install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/hamcrest -cp -rp hamcrest-examples $RPM_BUILD_ROOT%{_datadir}/hamcrest/ - -%mvn_install -J build/temp/hamcrest-all-1.3-javadoc.jar.contents/ - - -%files -f .mfiles -f .mfiles-core +%files -f .mfiles +%{_javadir}/%{name} %license LICENSE.txt +%doc README.md -%files help -f .mfiles-javadoc - -%files demo -%{_datadir}/hamcrest +%files help +%{_javadocdir}/%{name} %changelog +* Mon Sep 25 2023 wangkai <13474090681@163.com> - 0:2.2-1 +- Update to 2.2 + * Tue Dec 03 2019 daiqianwen - 0:1.3-25 - Package init diff --git a/hamcrest.yaml b/hamcrest.yaml new file mode 100644 index 0000000..e9f9382 --- /dev/null +++ b/hamcrest.yaml @@ -0,0 +1,4 @@ +version_control: github +src_repo: hamcrest/JavaHamcrest +tag_prefix: "^v" +separator: "."