%global majorversion 1.6 Name: groovy16 Version: 1.6.9 Release: 2%{?dist} Summary: Agile dynamic language for the Java Platform Group: Development/Languages License: ASL 2.0 URL: http://groovy.codehaus.org/ Source0: http://dist.groovy.codehaus.org/distributions/groovy-src-%{version}.zip Source1: %{name}-script Source2: %{name}-starter.conf BuildRequires: java-devel BuildRequires: ant BuildRequires: ant-antlr BuildRequires: antlr BuildRequires: apache-commons-cli BuildRequires: apache-commons-logging BuildRequires: apache-ivy BuildRequires: aqute-bnd BuildRequires: asm2 BuildRequires: bsf BuildRequires: jarjar BuildRequires: jline BuildRequires: junit BuildRequires: tomcat-jsp-2.2-api BuildRequires: tomcat-servlet-3.0-api BuildRequires: xstream # test deps # BuildRequires: cglib # BuildRequires: hsqldb # BuildRequires: jmock # BuildRequires: xmlunit Requires: ant Requires: ant-antlr Requires: antlr Requires: apache-commons-cli Requires: apache-commons-logging Requires: apache-ivy Requires: asm2 Requires: bsf Requires: jline Requires: junit Requires: tomcat-jsp-2.2-api Requires: tomcat-servlet-3.0-api Requires: xstream Requires: java BuildArch: noarch %description Groovy is an agile and dynamic language for the Java Virtual Machine, built upon Java with features inspired by languages like Python, Ruby and Smalltalk. It seamlessly integrates with all existing Java objects and libraries and compiles straight to Java bytecode so you can use it anywhere you can use Java. %package javadoc Group: Documentation Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %prep %setup -q -n groovy-%{version} find . -name '*.class' -delete find . -name '*.jar' -delete # remove livetribe-jsr223 available in java6+ %pom_remove_dep org.livetribe:livetribe-jsr223 sed -i "s|groovy|%{name}|" pom.xml # ant seems to produce incorrect parameter list to javac. # [groovyc] org.codehaus.groovy.control.MultipleCompilationErrorsException: # startup failed, deprecation: deprecation (No such file or directory) sed -i 's|||' build.xml mkdir -p target/lib/{compile,tools} # Construct classpath build-jar-repository target/lib/compile servlet tomcat-jsp-2.2-api \ asm2/asm2-tree asm2/asm2 asm2/asm2-util \ asm2/asm2-analysis antlr ant/ant-antlr antlr \ bsf jline xstream ant junit ivy commons-cli build-jar-repository target/lib/tools aqute-bnd %build # Build export ANT_OPTS="-Xmx1024m -Djava.awt.headless=true" ant \ -DskipTests=on \ -DskipExamples=on \ -DskipFetch=on \ -DskipEmbeddable=on \ createJars updateJarsForOsgi javadoc %install mkdir -p %{buildroot}%{_javadir} install -pm 644 target/dist/groovy-%{version}.jar %{buildroot}%{_javadir}/%{name}.jar mkdir -p %{buildroot}%{_bindir} install -pm 755 %{SOURCE1} %{buildroot}%{_bindir}/%{name} for TOOL in grape16 groovyc16 groovyConsole16 java2groovy16 groovysh16; do ln %{buildroot}%{_bindir}/%{name} %{buildroot}%{_bindir}/$TOOL done mkdir -p %{buildroot}%{_sysconfdir} install -pm 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/%{name}-starter.conf mkdir -p %{buildroot}%{_javadocdir}/%{name} find target -type d |xargs chmod 755 cp -rp target/html/api/* %{buildroot}%{_javadocdir}/%{name} mkdir -p %{buildroot}%{_mavenpomdir} install -pm 644 pom.xml %{buildroot}/%{_mavenpomdir}/JPP-%{name}.pom %add_maven_depmap JPP-%{name}.pom %{name}.jar -a "org.codehaus.groovy:%{name}-all" -v "%{majorversion}" %files %{_bindir}/* %{_javadir}/%{name}*.jar %{_mavenpomdir}/JPP-%{name}*.pom %{_mavendepmapfragdir}/%{name} %config(noreplace) %{_sysconfdir}/%{name}-starter.conf %doc LICENSE.txt NOTICE.txt README.txt %files javadoc %{_javadocdir}/%{name} %doc LICENSE.txt NOTICE.txt %changelog * Fri Jul 20 2012 gil cattaneo 1.6.9-2 - initial rpm for Fedora * Tue Aug 23 2011 gil cattaneo 1.6.9-mga1 - initial rpm for Mageia