diff --git a/.gitignore b/.gitignore index acad3f5..4ca92dc 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ easymock-1.2-src.tar.gz /easymock-3.2.tar.gz /easymock-3.3.tar.gz /easymock-3.3.1.tar.gz +/easymock-3.4.tar.gz diff --git a/easymock-port-to-maven-jar-plugin-3.patch b/0001-Port-to-maven-jar-plugin-3.0.0.patch similarity index 50% rename from easymock-port-to-maven-jar-plugin-3.patch rename to 0001-Port-to-maven-jar-plugin-3.0.0.patch index 11cedd9..b566044 100644 --- a/easymock-port-to-maven-jar-plugin-3.patch +++ b/0001-Port-to-maven-jar-plugin-3.0.0.patch @@ -1,14 +1,27 @@ ---- pom.xml~ 2015-01-05 15:26:16.000000000 +0100 -+++ pom.xml 2016-05-30 10:43:28.487416122 +0200 -@@ -334,10 +334,10 @@ - - maven-jar-plugin - -- true - - true - false -+ ${project.build.outputDirectory}/META-INF/MANIFEST.MF - - true - true +From 4291ccd3927865d7da94f8e9408cb24d898ba22e Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Mon, 30 May 2016 10:45:16 +0200 +Subject: [PATCH 1/3] Port to maven-jar-plugin 3.0.0 + +--- + pom.xml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pom.xml b/pom.xml +index db33e5b..df2c483 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -339,9 +339,9 @@ + + maven-jar-plugin + +- true + + true ++ ${project.build.outputDirectory}/META-INF/MANIFEST.MF + + true + true +-- +2.5.5 + diff --git a/0002-Disable-android-support.patch b/0002-Disable-android-support.patch new file mode 100644 index 0000000..583e9f0 --- /dev/null +++ b/0002-Disable-android-support.patch @@ -0,0 +1,29 @@ +From f8a748f63a7d54ecaccabf88205968c87b55332c Mon Sep 17 00:00:00 2001 +From: Michael Simacek +Date: Mon, 30 May 2016 14:24:43 +0200 +Subject: [PATCH 2/3] Disable android support + +--- + core/src/main/java/org/easymock/internal/MocksControl.java | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/core/src/main/java/org/easymock/internal/MocksControl.java b/core/src/main/java/org/easymock/internal/MocksControl.java +index 6ae65d1..d5937b0 100644 +--- a/core/src/main/java/org/easymock/internal/MocksControl.java ++++ b/core/src/main/java/org/easymock/internal/MocksControl.java +@@ -141,12 +141,6 @@ public class MocksControl implements IMocksControl, IExpectationSetters, + return cached; + } + +- // ///CLOVER:OFF +- if (AndroidSupport.isAndroid()) { +- return classProxyFactory = new AndroidClassProxyFactory(); +- } +- // ///CLOVER:ON +- + return classProxyFactory = new ClassProxyFactory(); + } + +-- +2.5.5 + diff --git a/0003-Unshade-cglib-and-asm.patch b/0003-Unshade-cglib-and-asm.patch new file mode 100644 index 0000000..c686162 --- /dev/null +++ b/0003-Unshade-cglib-and-asm.patch @@ -0,0 +1,27 @@ +From 16f8ae1d94ec088841f06506ec260695d8b97703 Mon Sep 17 00:00:00 2001 +From: Michael Simacek +Date: Mon, 30 May 2016 15:14:40 +0200 +Subject: [PATCH 3/3] Unshade cglib and asm + +--- + core/pom.xml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/core/pom.xml b/core/pom.xml +index 00e1575..2fa5653 100644 +--- a/core/pom.xml ++++ b/core/pom.xml +@@ -87,8 +87,8 @@ + maven-bundle-plugin + + +- org.easymock.internal.*;poweruser=true;mandatory:=poweruser,org.easymock,org.easymock.cglib.core,org.easymock.cglib.proxy,org.easymock.cglib.reflect,org.easymock.asm +- org.easymock,org.easymock.internal;poweruser=true,org.easymock.cglib.core,org.easymock.cglib.proxy,org.easymock.cglib.reflect,org.easymock.asm,org.objenesis;resolution:=optional ++ org.easymock.internal.*;poweruser=true;mandatory:=poweruser ++ org.easymock,org.easymock.internal;poweruser=true,net.sf.cglib.core,net.sf.cglib.proxy,net.sf.cglib.reflect,org.objectweb.asm,org.objenesis;resolution:=optional + + + +-- +2.5.5 + diff --git a/easymock-remove-android-support.patch b/easymock-remove-android-support.patch deleted file mode 100644 index 6048190..0000000 --- a/easymock-remove-android-support.patch +++ /dev/null @@ -1,67 +0,0 @@ -From badde85d06cd5ccec026b93cc753dc3e93fb4132 Mon Sep 17 00:00:00 2001 -From: Michal Srb -Date: Fri, 9 Aug 2013 12:44:48 +0200 -Subject: [PATCH] Remove android support - ---- - .../java/org/easymock/internal/MocksControl.java | 6 -- - .../easymock/tests2/ClassExtensionHelperTest.java | 12 +-- - 2 files changed, 3 insertions(+), 159 deletions(-) - -diff --git a/easymock/src/main/java/org/easymock/internal/MocksControl.java b/easymock/src/main/java/org/easymock/internal/MocksControl.java -index 131d22c..0782825 100644 ---- a/easymock/src/main/java/org/easymock/internal/MocksControl.java -+++ b/easymock/src/main/java/org/easymock/internal/MocksControl.java -@@ -152,12 +152,6 @@ public class MocksControl implements IMocksControl, IExpectationSetters, - return cached; - } - -- // ///CLOVER:OFF -- if (AndroidSupport.isAndroid()) { -- return classProxyFactory = new AndroidClassProxyFactory(); -- } -- // ///CLOVER:ON -- - try { - return classProxyFactory = new ClassProxyFactory(); - } catch (final NoClassDefFoundError e) { -diff --git a/easymock/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java b/easymock/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java -index 04a413f..3f45555 100644 ---- a/easymock/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java -+++ b/easymock/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java -@@ -15,7 +15,6 @@ - */ - package org.easymock.tests2; - --import com.google.dexmaker.stock.ProxyBuilder; - import java.lang.reflect.InvocationHandler; - import java.lang.reflect.Method; - import java.lang.reflect.Proxy; -@@ -25,7 +24,6 @@ import net.sf.cglib.proxy.Enhancer; - import net.sf.cglib.proxy.NoOp; - import org.easymock.EasyMock; - import static org.easymock.EasyMock.createMock; --import org.easymock.internal.AndroidSupport; - import static org.easymock.internal.MocksControl.getControl; - import static org.easymock.internal.MocksControl.getMockedType; - import org.easymock.internal.MocksControl; -@@ -61,13 +59,9 @@ public class ClassExtensionHelperTest { - @Test - public void testGetControl_EnhancedButNotAMock() throws Exception { - final Object o; -- if (AndroidSupport.isAndroid()) { -- o = ProxyBuilder.forClass(ArrayList.class) -- .handler(NOOP_INVOCATION_HANDLER) -- .build(); -- } else { -- o = Enhancer.create(ArrayList.class, NoOp.INSTANCE); -- } -+ -+ o = Enhancer.create(ArrayList.class, NoOp.INSTANCE); -+ - try { - getControl(o); - fail(); --- -1.9.3 - diff --git a/easymock.spec b/easymock.spec index 3fc4964..a6856ce 100644 --- a/easymock.spec +++ b/easymock.spec @@ -1,27 +1,26 @@ Name: easymock -Version: 3.3.1 -Release: 5%{?dist} +Version: 3.4 +Release: 1%{?dist} Summary: Easy mock objects License: ASL 2.0 URL: http://www.easymock.org -Source0: https://github.com/easymock/easymock/archive/easymock-%{version}.tar.gz +Source0: https://github.com/%{name}/%{name}/archive/%{name}-%{version}.tar.gz -Patch5: %{name}-remove-android-support.patch -Patch6: %{name}-port-to-maven-jar-plugin-3.patch +Patch1: 0001-Port-to-maven-jar-plugin-3.0.0.patch +Patch2: 0002-Disable-android-support.patch +Patch3: 0003-Unshade-cglib-and-asm.patch BuildArch: noarch BuildRequires: maven-local +BuildRequires: mvn(cglib:cglib) BuildRequires: mvn(com.mycila.maven-license-plugin:maven-license-plugin) BuildRequires: mvn(junit:junit) -BuildRequires: mvn(net.sf.cglib:cglib) -BuildRequires: mvn(org.apache.maven.plugins:maven-compiler-plugin) -BuildRequires: mvn(org.apache.maven.plugins:maven-jar-plugin) +BuildRequires: mvn(org.apache.felix:maven-bundle-plugin) BuildRequires: mvn(org.apache.maven.plugins:maven-remote-resources-plugin) -BuildRequires: mvn(org.apache.maven.plugins:maven-surefire-plugin) -BuildRequires: mvn(org.objenesis:objenesis) BuildRequires: mvn(org.codehaus.mojo:build-helper-maven-plugin) +BuildRequires: mvn(org.objenesis:objenesis) Obsoletes: %{name}3 < %{version}-%{release} Provides: %{name}3 = %{version}-%{release} @@ -43,21 +42,25 @@ Javadoc for %{name}. %prep -# Unpack the sources: -%setup -q -n easymock-easymock-%{version} +%setup -q -n %{name}-%{name}-%{version} -find . -name "*.zip" -delete +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 # remove android support -rm -fr easymock/src/main/java/org/easymock/internal/Android*.java -%patch5 -p1 -b .sav -%patch6 -%pom_xpath_remove "pom:profile[pom:id[text()='android']]" -%pom_remove_dep :dexmaker easymock +rm core/src/main/java/org/easymock/internal/Android*.java +rm core/src/test/java/org/easymock/tests2/ClassExtensionHelperTest.java +%pom_disable_module test-android +%pom_remove_dep :dexmaker core -# fix cglib aId and gId -%pom_remove_dep :cglib easymock -%pom_add_dep net.sf.cglib:cglib easymock +# unbundle asm and cglib +%pom_disable_module test-nodeps +%pom_remove_plugin :maven-shade-plugin core + +# missing test deps +%pom_disable_module test-integration +%pom_disable_module test-osgi # remove some warning caused by unavailable plugin %pom_remove_plugin org.codehaus.mojo:versions-maven-plugin @@ -65,13 +68,10 @@ rm -fr easymock/src/main/java/org/easymock/internal/Android*.java # retired %pom_remove_plugin :maven-timestamp-plugin -%pom_disable_module easymock-test-integration -%pom_disable_module easymock-test-osgi - # For compatibility reasons %mvn_file ":easymock{*}" easymock@1 easymock3@1 -# ssh not needed during our builds +# ssh not needed during our builds %pom_xpath_remove pom:extensions %build @@ -82,13 +82,16 @@ rm -fr easymock/src/main/java/org/easymock/internal/Android*.java %files -f .mfiles -%doc easymock/LICENSE.txt +%license core/LICENSE.txt %files javadoc -f .mfiles-javadoc -%doc easymock/LICENSE.txt +%license core/LICENSE.txt %changelog +* Mon May 30 2016 Michael Simacek - 3.4-1 +- Update to upstream version 3.4 + * Mon May 30 2016 Mikolaj Izdebski - 3.3.1-5 - Port to maven-jar-plugin 3.0.0 diff --git a/sources b/sources index bd52cfb..793b305 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -a50189b3ef81f810f13d8f00697ebcd8 easymock-3.3.1.tar.gz +2c17cff0e93bb88ddb30f09eb3b684ee easymock-3.4.tar.gz