Compare commits

...

No commits in common. 'c9' and 'c8-stream-rhel8' have entirely different histories.

2
.gitignore vendored

@ -1 +1 @@
SOURCES/hamcrest-2.2.tar.gz
SOURCES/hamcrest-java-1.3.tar.gz

@ -1 +1 @@
0083e68913e577762eeff193eec742dc5ff2a4f3 SOURCES/hamcrest-2.2.tar.gz
0134b5b0f9c7b4173ead77a390ed34f54c482301 SOURCES/hamcrest-java-1.3.tar.gz

@ -1,131 +0,0 @@
From d33031924faa557bb43ba0471f74d942ddfeae50 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
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 <E> Matcher<E[]> arrayContainingInAnyOrder(Matcher<? super E>... itemMatchers) {
- return arrayContainingInAnyOrder(asList(itemMatchers));
+ Collection<Matcher<? super E>> 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<E> extends TypeSafeMatcher<E[]> {
* a list of matchers, each of which must be satisfied by an entry in an examined array
*/
public static <E> Matcher<E[]> arrayContainingInAnyOrder(Matcher<? super E>... itemMatchers) {
- return arrayContainingInAnyOrder(Arrays.asList(itemMatchers));
+ return new IsArrayContainingInAnyOrder<E>(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<E> extends TypeSafeMatcher<E[]> {
* the matchers that must be satisfied by the items in the examined array
*/
public static <E> Matcher<E[]> arrayContaining(Matcher<? super E>... itemMatchers) {
- return arrayContaining(asList(itemMatchers));
+ return new IsArrayContainingInOrder<E>(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<T> extends TypeSafeDiagnosingMatcher
*/
@SafeVarargs
public static <T> Matcher<Iterable<? extends T>> containsInAnyOrder(Matcher<? super T>... itemMatchers) {
- return containsInAnyOrder(Arrays.asList(itemMatchers));
+ return new IsIterableContainingInAnyOrder<T>(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<E> extends TypeSafeDiagnosingMa
*/
@SafeVarargs
public static <E> Matcher<Iterable<? extends E>> containsInRelativeOrder(Matcher<? super E>... itemMatchers) {
- return containsInRelativeOrder(asList(itemMatchers));
+ return new IsIterableContainingInRelativeOrder<E>(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<T> extends DiagnosingMatcher<T> {
*/
@SafeVarargs
public static <T> Matcher<T> allOf(Matcher<? super T>... matchers) {
- return allOf(Arrays.asList(matchers));
+ return new AllOf<T>(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<T> extends ShortcutCombination<T> {
*/
@SafeVarargs
public static <T> AnyOf<T> anyOf(Matcher<? super T>... matchers) {
- return anyOf(Arrays.asList(matchers));
+ return new AnyOf<T>(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<T> extends TypeSafeDiagnosingMatcher<T> {
this.first = matcher;
}
public CombinableMatcher<X> and(Matcher<? super X> other) {
- return new CombinableMatcher<>(first).and(other);
+ return new CombinableMatcher<>(first).and((Matcher)other);
}
}
@@ -76,7 +76,7 @@ public class CombinableMatcher<T> extends TypeSafeDiagnosingMatcher<T> {
this.first = matcher;
}
public CombinableMatcher<X> or(Matcher<? super X> other) {
- return new CombinableMatcher<>(first).or(other);
+ return new CombinableMatcher<>(first).or((Matcher)other);
}
}
}
--
2.21.0

@ -0,0 +1,39 @@
diff --git a/build.xml b/build.xml
index 1cfd4fb..5a7c740 100644
--- a/build.xml
+++ b/build.xml
@@ -14,13 +14,13 @@
<target name="generator" description="Build code generator tool">
<java-to-jar srcdir="hamcrest-generator/src/main/java"
modulename="hamcrest-generator-nodeps"
- classpath="lib/generator/qdox-1.12.jar"/>
+ classpath="lib/generator/qdox.jar"/>
<!-- Bundle QDox classes in hamcrest-generator.jar using JarJar to place classes under a different package -->
- <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpath="lib/generator/jarjar-1.3.jar"/>
+ <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpath="lib/generator/jarjar.jar"/>
<jarjar jarfile="build/hamcrest-generator-${version}.jar">
<zipfileset src="build/hamcrest-generator-nodeps-${version}.jar"/>
- <zipfileset src="lib/generator/qdox-1.12.jar"/>
+ <zipfileset src="lib/generator/qdox.jar"/>
<rule pattern="com.thoughtworks.qdox.**" result="org.hamcrest.generator.qdox.@1"/>
</jarjar>
<copy file="build/hamcrest-generator-nodeps-${version}-sources.jar" tofile="build/hamcrest-generator-${version}-sources.jar"/>
@@ -152,7 +152,8 @@
<javadoc packagenames="org.hamcrest.*" defaultexcludes="yes"
destdir="build/temp/hamcrest-all-${version}-javadoc.jar.contents" author="true" version="true" use="true"
- windowtitle="Hamcrest" source="1.6" failonerror="yes" overview="overview.html">
+ windowtitle="Hamcrest" source="1.6" failonerror="yes">
+ <arg value="-Xdoclint:none"/>
<classpath>
<fileset dir="lib/integration">
<include name="*.jar"/>
@@ -313,6 +314,7 @@
<javadoc packagenames="org.hamcrest.*" sourcepath="build/temp/@{modulename}-${version}-sources.jar.contents" defaultexcludes="yes"
destdir="build/temp/@{modulename}-${version}-javadoc.jar.contents" author="true" version="true" use="true"
windowtitle="Hamcrest" source="1.6" failonerror="yes">
+ <arg value="-Xdoclint:none"/>
<classpath>
<fileset dir="lib/integration">
<include name="*.jar"/>

@ -0,0 +1,25 @@
From 54b7ccdd1e16f1d6dd07359eae0fcac8f1883373 Mon Sep 17 00:00:00 2001
From: Michael Simacek <msimacek@redhat.com>
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 @@
<attribute name="Built-Date" value="${build.timestamp}"/>
</manifest>
<mkdir dir="build/temp/@{modulename}-${version}.jar.contents"/>
- <javac srcdir="@{srcdir}" destdir="build/temp/@{modulename}-${version}.jar.contents" debug="${debug}" target="1.5" includeantruntime="false">
+ <javac srcdir="@{srcdir}" destdir="build/temp/@{modulename}-${version}.jar.contents" debug="${debug}" target="1.5" includeantruntime="false" fork="true">
<classpath>
<fileset dir="lib/integration">
<include name="*.jar"/>
--
2.9.3

@ -0,0 +1,17 @@
diff --git a/build.xml b/build.xml
index ed57763..a4550cb 100644
--- a/build.xml
+++ b/build.xml
@@ -135,11 +135,10 @@
</target>
<target name="javadoc" description="build javadoc jars">
- <java-to-javadoc-jar modulename="hamcrest-generator-nodeps"/>
+ <java-to-javadoc-jar modulename="hamcrest-generator"/>
<java-to-javadoc-jar modulename="hamcrest-core"/>
<java-to-javadoc-jar modulename="hamcrest-library"/>
<java-to-javadoc-jar modulename="hamcrest-integration"/>
- <copy file="build/hamcrest-generator-nodeps-${version}-javadoc.jar" tofile="build/hamcrest-generator-${version}-javadoc.jar"/>
<javadoc packagenames="org.hamcrest.*" defaultexcludes="yes"
destdir="build/temp/hamcrest-all-${version}-javadoc.jar.contents" author="true" version="true" use="true"

@ -0,0 +1,23 @@
diff --git a/build.xml b/build.xml
index 54d43fe..ed57763 100644
--- a/build.xml
+++ b/build.xml
@@ -13,17 +13,8 @@
<target name="generator" description="Build code generator tool">
<java-to-jar srcdir="hamcrest-generator/src/main/java"
- modulename="hamcrest-generator-nodeps"
+ modulename="hamcrest-generator"
classpath="lib/generator/qdox.jar"/>
-
- <!-- Bundle QDox classes in hamcrest-generator.jar using JarJar to place classes under a different package -->
- <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpath="lib/generator/jarjar.jar"/>
- <jarjar jarfile="build/hamcrest-generator-${version}.jar">
- <zipfileset src="build/hamcrest-generator-nodeps-${version}.jar"/>
- <zipfileset src="lib/generator/qdox.jar"/>
- <rule pattern="com.thoughtworks.qdox.**" result="org.hamcrest.generator.qdox.@1"/>
- </jarjar>
- <copy file="build/hamcrest-generator-nodeps-${version}-sources.jar" tofile="build/hamcrest-generator-${version}-sources.jar"/>
</target>
<target name="core" depends="generator" description="Build core Hamcrest library">

@ -0,0 +1,105 @@
From 6d7da5456a7458a249bed9c4c1e768cc7cc2fe40 Mon Sep 17 00:00:00 2001
From: Michael Simacek <msimacek@redhat.com>
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<FactoryMethod> {
JavaMethod methodSource = findMethodInSource(factoryMethod);
if (methodSource != null) {
factoryMethod.setJavaDoc(createJavaDocComment(methodSource));
- JavaParameter[] parametersFromSource
+ List<JavaParameter> parametersFromSource
= methodSource.getParameters();
List<FactoryMethod.Parameter> 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<FactoryMethod> {
// Note, this doesn't always work - it struggles with some kinds of generics.
// This seems to cover most cases though.
List<FactoryMethod.Parameter> params = factoryMethod.getParameters();
- Type[] types = new Type[params.size()];
+ List<JavaType> types = new ArrayList<JavaType>(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<JavaMethod> 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<FactoryMethod> {
*/
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<DocletTag> tags = methodSource.getTags();
+ if ((comment == null || comment.trim().length() == 0) && tags.size() == 0) {
return null;
}
StringBuilder result = new StringBuilder();
--
2.9.3

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest</artifactId>
<version>2.2</version>
<name>Hamcrest</name>
<description>Core API and libraries of hamcrest matcher framework.</description>
<url>http://hamcrest.org/JavaHamcrest/</url>
<licenses>
<license>
<name>BSD License 3</name>
<url>http://opensource.org/licenses/BSD-3-Clause</url>
</license>
</licenses>
<developers>
<developer>
<id>joewalnes</id>
<name>Joe Walnes</name>
</developer>
<developer>
<id>npryce</id>
<name>Nat Pryce</name>
</developer>
<developer>
<id>sf105</id>
<name>Steve Freeman</name>
</developer>
</developers>
<scm>
<connection>git@github.com:hamcrest/JavaHamcrest.git</connection>
<url>https://github.com/hamcrest/JavaHamcrest</url>
</scm>
</project>

@ -0,0 +1,14 @@
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

@ -0,0 +1,18 @@
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"

@ -0,0 +1,14 @@
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

@ -0,0 +1,15 @@
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

@ -1,30 +1,64 @@
%bcond_with bootstrap
%global upstream_version %(echo %{version} | tr '~' '-')
# Copyright (c) 2000-2008, JPackage Project
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the
# distribution.
# 3. Neither the name of the JPackage Project nor the names of its
# contributors may be used to endorse or promote products derived
# from this software without specific prior written permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
Name: hamcrest
Version: 2.2
Release: 9%{?dist}
Version: 1.3
Release: 29%{?dist}
Epoch: 0
Summary: Library of matchers for building test expressions
License: BSD
URL: https://github.com/hamcrest/JavaHamcrest
BuildArch: noarch
Source0: https://github.com/hamcrest/JavaHamcrest/archive/hamcrest-java-%{version}.tar.gz
Source0: https://github.com/hamcrest/JavaHamcrest/archive/v%{upstream_version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: https://repo1.maven.org/maven2/org/hamcrest/hamcrest/%{upstream_version}/hamcrest-%{upstream_version}.pom
Source8: hamcrest-core-MANIFEST.MF
Source9: hamcrest-library-MANIFEST.MF
Source11: hamcrest-integration-MANIFEST.MF
Source12: hamcrest-generator-MANIFEST.MF
Patch0: 0001-Fix-build-with-OpenJDK-11.patch
Patch0: %{name}-%{version}-build.patch
Patch1: %{name}-%{version}-no-jarjar.patch
Patch3: %{name}-%{version}-javadoc.patch
Patch4: %{name}-%{version}-qdox-2.0.patch
Patch5: %{name}-%{version}-fork-javac.patch
BuildRequires: maven-local
%if %{with bootstrap}
BuildRequires: javapackages-bootstrap
%else
BuildRequires: mvn(junit:junit)
%endif
Requires: %{name}-core = %{epoch}:%{version}-%{release}
Provides: hamcrest-core = %{version}-%{release}
Obsoletes: hamcrest-core < 1.3-32
Obsoletes: hamcrest-demo < 1.3-32
BuildRequires: javapackages-local
BuildRequires: ant
BuildRequires: ant-junit
BuildRequires: easymock
BuildRequires: junit
BuildRequires: qdox
BuildRequires: testng
BuildArch: noarch
%description
Provides a library of matcher objects (also known as constraints or predicates)
@ -32,93 +66,103 @@ allowing 'match' rules to be defined declaratively, to be used in other
frameworks. Typical scenarios include testing frameworks, mocking libraries and
UI validation rules.
%package core
Summary: Core API of hamcrest matcher framework.
Obsoletes: %{name} < 0:1.3-10
%description core
The core API of hamcrest matcher framework to be used by third-party framework providers.
This includes the a foundation set of matcher implementations for common operations.
%package javadoc
Summary: Javadoc for %{name}
%description javadoc
Javadoc for %{name}.
%package demo
Summary: Demos for %{name}
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: junit
Requires: testng
%description demo
Demonstrations and samples for %{name}.
%prep
%setup -q -n JavaHamcrest-%{upstream_version}
%patch -P 0 -p1
rm -rf docs
rm -rf *gradle*
rm -rf */*.gradle
mv hamcrest/src .
rm -rf hamcrest
rm -rf hamcrest-core
rm -rf hamcrest-integration
rm -rf hamcrest-library
cp -p %{SOURCE1} pom.xml
%pom_add_dep junit:junit::test
%pom_xpath_inject pom:project '
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>'
%mvn_alias org.hamcrest:hamcrest org.hamcrest:hamcrest-all
%mvn_alias org.hamcrest:hamcrest org.hamcrest:hamcrest-core
%mvn_alias org.hamcrest:hamcrest org.hamcrest:hamcrest-library
%setup -q -n JavaHamcrest-%{name}-java-%{version}
find . -type f -name "*.jar" | xargs -t rm
rm -fr hamcrest-integration/src/main/java/org/hamcrest/integration/JMock1Adapter.java
rm -fr hamcrest-integration/src/main/java/org/hamcrest/JMock1Matchers.java
rm -fr hamcrest-unit-test/src/main/java/org/hamcrest/integration/JMock1AdapterTest.java
# BUILD/hamcrest-1.1/lib/generator/qdox-1.6.1.jar.no
ln -sf $(build-classpath qdox) lib/generator/
# BUILD/hamcrest-1.1/lib/integration/easymock-2.2.jar.no
ln -sf $(build-classpath easymock3) lib/integration/
# BUILD/hamcrest-1.1/lib/integration/jmock-1.10RC1.jar.no
ln -sf $(build-classpath jmock) lib/integration/
# BUILD/hamcrest-1.1/lib/integration/testng-4.6-jdk15.jar.no
ln -sf $(build-classpath testng-jdk15) lib/integration/
%patch0 -p1
%patch1 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
sed -i 's/\r//' LICENSE.txt
# Set target to 1.6 to build with Java 11
sed -i 's/target="1.5"/target="1.6"/' build.xml
# Disable checking of remote javadoc links
sed -i '/link offline/ d' build.xml
%build
%mvn_build
export CLASSPATH=$(build-classpath qdox)
export OPT_JAR_LIST="junit ant/ant-junit"
# The unit-test goal is switched off as some tests fail with JDK 7
# see https://github.com/hamcrest/JavaHamcrest/issues/30
ant -Dant.build.javac.source=1.6 -Dversion=%{version} -Dbuild.sysclasspath=last clean core generator library bigjar javadoc
# inject OSGi manifests
jar ufm build/%{name}-core-%{version}.jar %{SOURCE8}
jar ufm build/%{name}-library-%{version}.jar %{SOURCE9}
jar ufm build/%{name}-integration-%{version}.jar %{SOURCE11}
jar ufm build/%{name}-generator-%{version}.jar %{SOURCE12}
%install
%mvn_install
%files -f .mfiles
%doc README.md
%license LICENSE.txt
sed -i 's/@VERSION@/%{version}/g' pom/*.pom
%files javadoc -f .mfiles-javadoc
%license LICENSE.txt
%mvn_artifact pom/hamcrest-parent.pom
%changelog
* Thu Nov 21 2024 Marián Konček <mkoncek@redhat.com> - 2.2-9
- Fix patch usage
for mod in all core generator library integration; do
%mvn_artifact pom/hamcrest-$mod.pom build/%{name}-$mod-%{version}.jar
done
* Tue Nov 19 2024 Marián Konček <mkoncek@redhat.com> - 2.2-8
- Rebuild with regenerated Requires on Java
%mvn_package :hamcrest-parent core
%mvn_package :hamcrest-core core
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 2.2-7
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
Related: rhbz#1991688
%mvn_file ':hamcrest-{*}' %{name}/@1
* Wed Jun 09 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 2.2-6
- Rebuild to workaround DistroBaker issue
# demo
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}
cp -pr %{name}-examples $RPM_BUILD_ROOT%{_datadir}/%{name}/
* Tue Jun 08 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 2.2-5
- Bootstrap Maven for CentOS Stream 9
%mvn_install -J build/temp/hamcrest-all-1.3-javadoc.jar.contents/
* Tue Jun 01 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 2.2-4
- Obsolete hamcrest-core and -demo
- Resolves: rhbz#1966269
%files -f .mfiles
* Mon May 17 2021 Mikolaj Izdebski <mizdebsk@redhat.com> - 2.2-3
- Bootstrap build
- Non-bootstrap build
%files core -f .mfiles-core
%license LICENSE.txt
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.3-31
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
%files javadoc -f .mfiles-javadoc
%license LICENSE.txt
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.3-30
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
%files demo
%{_datadir}/%{name}
%changelog
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 0:1.3-29
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
@ -129,24 +173,9 @@ sed -i 's/\r//' LICENSE.txt
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.3-27
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Nov 05 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 2.2-2
- Mass rebuild for javapackages-tools 201902
* Thu Oct 17 2019 Marian Koncek <mkoncek@redhat.com> - 2.2-1
- Update to upstream version 2.2
* Wed Sep 18 2019 Marian Koncek <mkoncek@redhat.com> - 2.2~rc1-1
- Update to upstream version 2.2~rc1
* Mon Aug 19 2019 Marian Koncek <mkoncek@redhat.com> - 2.1-1
- Update to upstream version 2.1
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.3-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri May 24 2019 Mikolaj Izdebski <mizdebsk@redhat.com> - 1.3-24
- Mass rebuild for javapackages-tools 201901
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0:1.3-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
@ -371,7 +400,6 @@ sed -i 's/\r//' LICENSE.txt
* Mon Aug 23 2004 Randy Watler <rwatler at finali.com> - 0:3.8.1-4jpp
- Rebuild with ant-1.6.2
* Fri May 09 2003 David Walluck <david@anti-microsoft.org> 0:3.8.1-3jpp
- update for JPackage 1.5

Loading…
Cancel
Save