[jspc/f19] Changes for gmaven removal

Peter MacKinnon pmackinn at fedoraproject.org
Wed Aug 7 00:43:43 UTC 2013


commit 6c8682943ce04c6f0f416861f83adfddbc5e41dd
Author: Peter MacKinnon <pmackinn at redhat.com>
Date:   Tue Aug 6 19:48:02 2013 -0400

    Changes for gmaven removal

 jspc-ant-groovyc.patch |   80 ++++++++++++++++++++++++++++++++++++++++++++++++
 jspc.spec              |   57 ++++++++++++---------------------
 2 files changed, 101 insertions(+), 36 deletions(-)
---
diff --git a/jspc-ant-groovyc.patch b/jspc-ant-groovyc.patch
new file mode 100644
index 0000000..e81c2e3
--- /dev/null
+++ b/jspc-ant-groovyc.patch
@@ -0,0 +1,80 @@
+diff --git a/jspc-2.0-alpha-3/jspc-maven-plugin/pom.xml b/jspc-2.0-alpha-3/jspc-maven-plugin/pom.xml
+index 209795e..138681f 100644
+--- a/jspc-2.0-alpha-3/jspc-maven-plugin/pom.xml
++++ b/jspc-2.0-alpha-3/jspc-maven-plugin/pom.xml
+@@ -43,11 +43,6 @@
+         </dependency>
+         
+         <dependency>
+-            <groupId>org.codehaus.groovy.maven</groupId>
+-            <artifactId>gmaven-mojo</artifactId>
+-        </dependency>
+-        
+-        <dependency>
+             <groupId>org.apache.maven.shared</groupId>
+             <artifactId>file-management</artifactId>
+         </dependency>
+@@ -57,12 +52,53 @@
+             <artifactId>commons-lang</artifactId>
+         </dependency>
+     </dependencies>
+-    
++
+     <build>
+         <plugins>
+             <plugin>
++               <groupId>org.apache.maven.plugins</groupId>
++               <artifactId>maven-antrun-plugin</artifactId>
++               <version>1.7</version>
++               <dependencies>
++                 <dependency>
++                   <groupId>org.codehaus.groovy</groupId>
++                   <artifactId>groovy</artifactId>
++                   <version>1.8.9</version>
++                 </dependency>
++                 <dependency>
++                   <groupId>commons-cli</groupId>
++                   <artifactId>commons-cli</artifactId>
++                   <version>1.2</version>
++                 </dependency>
++               </dependencies>
++               <executions>
++                 <execution>
++                   <id>compile</id>
++                   <phase>process-sources</phase>
++                   <configuration>
++                     <target>
++                       <mkdir dir="${basedir}/target/classes"/>
++                       <taskdef name="groovyc" classname="org.codehaus.groovy.ant.Groovyc">
++                         <classpath refid="maven.plugin.classpath"/>
++                       </taskdef>
++                       <groovyc destdir="${project.build.outputDirectory}" srcdir="${basedir}/src/main" classpathref="maven.compile.classpath">
++                         <javac source="1.6" target="1.6" debug="on"/>
++                       </groovyc>
++                     </target>
++                   </configuration>
++                   <goals>
++                     <goal>run</goal>
++                   </goals>
++                 </execution>
++               </executions>
++             </plugin>
++
++            <plugin>
+                 <groupId>org.apache.maven.plugins</groupId>
+                 <artifactId>maven-plugin-plugin</artifactId>
++                <configuration>
++                  <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
++                </configuration>
+                 <executions>
+                     <execution>
+                         <goals>
+@@ -80,7 +116,7 @@
+             <plugin>
+                 <groupId>org.apache.maven.plugins</groupId>
+                 <artifactId>maven-plugin-plugin</artifactId>
+-                <version>2.4.1</version>
++                <version>3.1</version>
+             </plugin>
+         </plugins>
+     </reporting>
diff --git a/jspc.spec b/jspc.spec
index d5179b3..beddaf5 100644
--- a/jspc.spec
+++ b/jspc.spec
@@ -4,7 +4,7 @@
 
 Name:          jspc
 Version:       2.0
-Release:       0.5%{dotreltag}%{?dist}
+Release:       0.6%{dotreltag}%{?dist}
 Summary:       Compile JSPs under Maven
 Group:         Development/Libraries
 License:       ASL 2.0
@@ -12,23 +12,22 @@ Url:           http://mojo.codehaus.org/jspc/
 # svn export https://svn.codehaus.org/mojo/tags/jspc-2.0-alpha-3 jspc
 # tar czf jspc-2.0-alpha-3-src-svn.tar.gz jspc
 Source0:       %{name}-%{namedversion}-src-svn.tar.gz
-Source1:       jspc-mp-plugin.xml
+Source1:       %{name}-mp-plugin.xml
+Patch0:        %{name}-ant-groovyc.patch
 
 BuildRequires: java-devel
-#BuildRequires: jpackage-utils
 # TODO: migrate to xmvn beyond F18
 BuildRequires: maven-local
 
 BuildRequires: apache-resource-bundles
 BuildRequires: ant
 BuildRequires: fusesource-pom
-BuildRequires: gmaven
 BuildRequires: mvn(commons-lang:commons-lang)
-#BuildRequires: mvn(org.codehaus.gmaven:gmaven-mojo)
 BuildRequires: mvn(org.apache.maven.shared:file-management)
 BuildRequires: plexus-container-default
 BuildRequires: tomcat
 
+BuildRequires: maven-antrun-plugin
 BuildRequires: maven-enforcer-plugin
 BuildRequires: maven-invoker-plugin
 BuildRequires: maven-plugin-cobertura
@@ -36,13 +35,7 @@ BuildRequires: maven-plugin-plugin
 BuildRequires: maven-remote-resources-plugin
 BuildRequires: maven-install-plugin
 
-#BuildRequires: maven-compiler-plugin
-#BuildRequires: maven-javadoc-plugin
-#BuildRequires: maven-release-plugin
-#BuildRequires: maven-surefire-plugin
-
 Requires:      java
-#Requires:      jpackage-utils
 BuildArch:     noarch
 
 %description
@@ -58,7 +51,6 @@ versions of the Tomcat Jasper compiler to be used as needed.
 %package compilers
 Group:         Development/Libraries
 Summary:       JSPC Compilers
-#Requires:      jpackage-utils
 Requires:      %{name} = %{version}-%{release}
 
 %description compilers
@@ -67,9 +59,7 @@ Requires:      %{name} = %{version}-%{release}
 %package compiler-tomcat6
 Group:         Development/Libraries
 Summary:       JSPC Compiler for Tomcat6
-#Requires:      jpackage-utils
 Requires:      tomcat
-#Requires:      tomcat-lib
 Requires:      %{name}-compilers = %{version}-%{release}
 
 %description compiler-tomcat6
@@ -78,11 +68,8 @@ Requires:      %{name}-compilers = %{version}-%{release}
 %package -n jspc-maven-plugin
 Group:         Development/Libraries
 Summary:       JSPC Maven Plugin
-#Requires:      jpackage-utils
 Requires:      %{name}-compiler-tomcat6 = %{version}-%{release}
-#Requires:      slf4j
 Requires:      mvn(commons-lang:commons-lang)
-Requires:      mvn(org.codehaus.gmaven:gmaven-mojo)
 Requires:      mvn(org.apache.maven.shared:file-management)
 
 %description -n jspc-maven-plugin
@@ -91,7 +78,6 @@ Requires:      mvn(org.apache.maven.shared:file-management)
 %package javadoc
 Group:         Documentation
 Summary:       Javadoc for %{name}
-#Requires:      jpackage-utils
 
 %description javadoc
 This package contains javadoc for %{name}.
@@ -104,13 +90,11 @@ for d in LICENSE ; do
   sed -i 's/\r//' $d.txt
 done
 
-# fix up gmaven namespace change in src
-sed -i 's|import org.codehaus.groovy.maven|import org.codehaus.gmaven|' \
+# fix up gmaven removal in src
+sed -i 's|import org.codehaus.groovy.maven.mojo.GroovyMojo|import org.apache.maven.plugin.AbstractMojo|' \
+  jspc-maven-plugin/src/main/groovy/org/codehaus/mojo/jspc/CompilationMojoSupport.groovy
+sed -i 's|extends GroovyMojo|extends AbstractMojo|' \
   jspc-maven-plugin/src/main/groovy/org/codehaus/mojo/jspc/CompilationMojoSupport.groovy
-
-# fix up gmaven namespace change in poms
-sed -i 's|<groupId>org.codehaus.groovy.maven</groupId>|<groupId>org.codehaus.gmaven</groupId>|' pom.xml
-sed -i 's|<groupId>org.codehaus.groovy.maven</groupId>|<groupId>org.codehaus.gmaven</groupId>|' jspc-maven-plugin/pom.xml
 
 # plexus-maven-plugin superceded by plexus-component-metadata
 sed -i 's|<artifactId>plexus-maven-plugin</artifactId>|<artifactId>plexus-component-metadata</artifactId>|' pom.xml
@@ -118,8 +102,6 @@ sed -i 's|<artifactId>plexus-maven-plugin</artifactId>|<artifactId>plexus-compon
 # no tomcat5
 %pom_disable_module jspc-compiler-tomcat5 jspc-compilers/pom.xml
 
-# fix up tomcat6 pom to point to TC7 refs
-%pom_add_dep org.codehaus.gmaven.runtime:gmaven-runtime-1.8:1.4 jspc-compilers/jspc-compiler-tomcat6/pom.xml
 # switch jasper-jdt dep to ecj dep
 %pom_remove_dep org.apache.tomcat:jasper-jdt jspc-compilers/jspc-compiler-tomcat6/pom.xml
 %pom_add_dep org.eclipse.jdt.core.compiler:ecj:3.1.1 jspc-compilers/jspc-compiler-tomcat6/pom.xml
@@ -151,13 +133,6 @@ sed -i 's|<artifactId>jasper-jdt</artifactId>|<artifactId>tomcat-jasper-jdt</art
                 </executions>
 "
 
-# be quiet about missing help mojo descriptors
-%pom_xpath_inject "pom:build/pom:plugins/pom:plugin[pom:artifactId[./text()='maven-plugin-plugin']]" "
-                <configuration>
-                  <skipErrorNoDescriptorsFound>true</skipErrorNoDescriptorsFound>
-                </configuration>
-" jspc-maven-plugin/pom.xml
-
 # fix up source, target config in compiler plugin
 %pom_remove_plugin org.apache.maven.plugins:maven-compiler-plugin pom.xml
 %pom_add_plugin org.apache.maven.plugins:maven-compiler-plugin pom.xml "
@@ -178,11 +153,18 @@ sed -i 's|<artifactId>jasper-jdt</artifactId>|<artifactId>tomcat-jasper-jdt</art
 # remove wagon-webdav
 %pom_xpath_remove "pom:build/pom:extensions"
 
+# get rid of gmaven...
+%pom_remove_dep org.codehaus.groovy.maven:gmaven-mojo pom.xml
+%pom_remove_plugin org.codehaus.groovy.maven:gmaven-plugin pom.xml
+%pom_add_dep 	org.apache.ant:ant jspc-compilers/jspc-compiler-tomcat6/pom.xml
+
+#...replace with ant groovyc task
+# have to patch due to some $ substitution problems
+%patch0 -p2
+
 %build
 
-mvn-rpmbuild \
-  -Dgmaven.runtime=1.8 \
-  install javadoc:aggregate
+mvn-rpmbuild -X install javadoc:aggregate
 
 # http://jira.codehaus.org/browse/GMAVEN-68
 # gmaven-runtime 1.8 doesn't generate plugin descriptor
@@ -252,6 +234,9 @@ cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name}
 %doc LICENSE.txt
 
 %changelog
+* Tue Aug 06 2013 Peter MacKinnon <pmackinn at redhat.com> 2.0-0.6.alpha.3
+- Replaced gmaven with ant+groovyc
+
 * Tue Jun 11 2013 Peter MacKinnon <pmackinn at redhat.com> 2.0-0.5.alpha.3
 - Removed tomcat-lib requires
 - TODO: migrate to xmvn beyond F18


More information about the scm-commits mailing list