diff --git a/0001-Don-t-use-Werken-XPath.patch b/0001-Don-t-use-Werken-XPath.patch new file mode 100644 index 0000000..b754573 --- /dev/null +++ b/0001-Don-t-use-Werken-XPath.patch @@ -0,0 +1,165 @@ +From 8a9344f55d74a5b809051ae144b3c028499fec0d Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Sat, 27 Sep 2013 10:53:46 +0200 +Subject: [PATCH] Don't use Werken XPath + +--- + src/java/org/apache/velocity/anakia/AnakiaElement.java | 7 +++++-- + src/java/org/apache/velocity/anakia/NodeList.java | 6 ++++-- + src/java/org/apache/velocity/anakia/XPathCache.java | 9 ++++++--- + src/java/org/apache/velocity/anakia/XPathTool.java | 16 ++++++++++------ + 4 files changed, 25 insertions(+), 13 deletions(-) + +diff --git a/src/java/org/apache/velocity/anakia/AnakiaElement.java b/src/java/org/apache/velocity/anakia/AnakiaElement.java +index c72b653..df13153 100644 +--- a/src/java/org/apache/velocity/anakia/AnakiaElement.java ++++ b/src/java/org/apache/velocity/anakia/AnakiaElement.java +@@ -20,8 +20,10 @@ package org.apache.velocity.anakia; + */ + + import org.jdom.Element; ++import org.jdom.JDOMException; + import org.jdom.Namespace; + import org.jdom.output.XMLOutputter; ++ + import java.util.List; + + /** +@@ -126,10 +128,11 @@ public class AnakiaElement extends Element + * @param xpathExpression the XPath expression you wish to apply + * @return a NodeList representing the nodes that are the result of + * application of the XPath to the current element. It can be empty. ++ * @throws JDOMException + */ +- public NodeList selectNodes(String xpathExpression) ++ public NodeList selectNodes(String xpathExpression) throws JDOMException + { +- return new NodeList(XPathCache.getXPath(xpathExpression).applyTo(this), false); ++ return new NodeList(XPathCache.getXPath(xpathExpression).selectNodes(this), false); + } + + /** +diff --git a/src/java/org/apache/velocity/anakia/NodeList.java b/src/java/org/apache/velocity/anakia/NodeList.java +index daf611d..b303bda 100644 +--- a/src/java/org/apache/velocity/anakia/NodeList.java ++++ b/src/java/org/apache/velocity/anakia/NodeList.java +@@ -35,6 +35,7 @@ import org.jdom.DocType; + import org.jdom.Document; + import org.jdom.Element; + import org.jdom.EntityRef; ++import org.jdom.JDOMException; + import org.jdom.ProcessingInstruction; + import org.jdom.Text; + import org.jdom.output.XMLOutputter; +@@ -289,10 +290,11 @@ public class NodeList implements List, Cloneable + * @param xpathString the XPath expression you wish to apply + * @return a NodeList representing the nodes that are the result of + * application of the XPath to the current node list. It can be empty. ++ * @throws JDOMException + */ +- public NodeList selectNodes(String xpathString) ++ public NodeList selectNodes(String xpathString) throws JDOMException + { +- return new NodeList(XPathCache.getXPath(xpathString).applyTo(nodes), false); ++ return new NodeList(XPathCache.getXPath(xpathString).selectNodes(nodes), false); + } + + // List methods implemented hereafter +diff --git a/src/java/org/apache/velocity/anakia/XPathCache.java b/src/java/org/apache/velocity/anakia/XPathCache.java +index cef43d9..0d633b0 100644 +--- a/src/java/org/apache/velocity/anakia/XPathCache.java ++++ b/src/java/org/apache/velocity/anakia/XPathCache.java +@@ -19,7 +19,9 @@ package org.apache.velocity.anakia; + * under the License. + */ + +-import com.werken.xpath.XPath; ++import org.jdom.JDOMException; ++import org.jdom.xpath.XPath; ++ + import java.util.Map; + import java.util.WeakHashMap; + +@@ -46,8 +48,9 @@ class XPathCache + * A cached object is returned if it already exists for the requested expression. + * @param xpathString the XPath expression to parse + * @return the XPath object that represents the parsed XPath expression. ++ * @throws JDOMException + */ +- static XPath getXPath(String xpathString) ++ static XPath getXPath(String xpathString) throws JDOMException + { + XPath xpath = null; + synchronized(XPATH_CACHE) +@@ -55,7 +58,7 @@ class XPathCache + xpath = (XPath)XPATH_CACHE.get(xpathString); + if(xpath == null) + { +- xpath = new XPath(xpathString); ++ xpath = XPath.newInstance(xpathString); + XPATH_CACHE.put(xpathString, xpath); + } + } +diff --git a/src/java/org/apache/velocity/anakia/XPathTool.java b/src/java/org/apache/velocity/anakia/XPathTool.java +index c9e6178..f85d2c1 100644 +--- a/src/java/org/apache/velocity/anakia/XPathTool.java ++++ b/src/java/org/apache/velocity/anakia/XPathTool.java +@@ -23,6 +23,7 @@ import java.util.List; + + import org.jdom.Document; + import org.jdom.Element; ++import org.jdom.JDOMException; + + /** + * This class adds an entrypoint into XPath functionality, +@@ -88,12 +89,13 @@ public class XPathTool + * @param doc The Document context + * + * @return A list of selected nodes ++ * @throws JDOMException + */ + public NodeList applyTo(String xpathSpec, +- Document doc) ++ Document doc) throws JDOMException + { + //RuntimeSingleton.info("XPathTool::applyTo(String, Document)"); +- return new NodeList(XPathCache.getXPath(xpathSpec).applyTo( doc ), false); ++ return new NodeList(XPathCache.getXPath(xpathSpec).selectNodes( doc ), false); + } + + /** +@@ -103,12 +105,13 @@ public class XPathTool + * @param elem The Element context + * + * @return A list of selected nodes ++ * @throws JDOMException + */ + public NodeList applyTo(String xpathSpec, +- Element elem) ++ Element elem) throws JDOMException + { + //RuntimeSingleton.info("XPathTool::applyTo(String, Element)"); +- return new NodeList(XPathCache.getXPath(xpathSpec).applyTo( elem ), false); ++ return new NodeList(XPathCache.getXPath(xpathSpec).selectNodes( elem ), false); + } + + /** +@@ -118,12 +121,13 @@ public class XPathTool + * @param nodeSet The nodeset context + * + * @return A list of selected nodes ++ * @throws JDOMException + */ + public NodeList applyTo(String xpathSpec, +- List nodeSet) ++ List nodeSet) throws JDOMException + { + //RuntimeSingleton.info("XPathTool::applyTo(String, List)"); +- return new NodeList(XPathCache.getXPath(xpathSpec).applyTo( nodeSet ), false); ++ return new NodeList(XPathCache.getXPath(xpathSpec).selectNodes( nodeSet ), false); + } + } + +-- +1.8.3.1 + diff --git a/0001-Remove-avalon-logkit.patch b/0001-Remove-avalon-logkit.patch new file mode 100644 index 0000000..2f09b03 --- /dev/null +++ b/0001-Remove-avalon-logkit.patch @@ -0,0 +1,62 @@ +From 1d2f89cb3e954b943751fa8dd587fdb404eb9338 Mon Sep 17 00:00:00 2001 +From: Stanislav Ochotnicky +Date: Mon, 21 Feb 2011 15:53:34 +0100 +Subject: [PATCH 1/3] Remove avalon-logkit + +we don't have it packaged so change defaults and remove it from pom.xml +--- + pom.xml | 6 ------ + .../velocity/runtime/defaults/velocity.properties | 4 ++-- + .../apache/velocity/runtime/log/LogManager.java | 2 +- + 3 files changed, 3 insertions(+), 9 deletions(-) + +diff --git a/pom.xml b/pom.xml +index 77a8e38..f453208 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -197,12 +197,6 @@ + provided + + +- logkit +- logkit +- 2.0 +- provided +- +- + ant + ant + 1.6 +diff --git a/src/java/org/apache/velocity/runtime/defaults/velocity.properties b/src/java/org/apache/velocity/runtime/defaults/velocity.properties +index 750a59a..7fac119 100644 +--- a/src/java/org/apache/velocity/runtime/defaults/velocity.properties ++++ b/src/java/org/apache/velocity/runtime/defaults/velocity.properties +@@ -20,10 +20,10 @@ + # ---------------------------------------------------------------------------- + + # ---------------------------------------------------------------------------- +-# default LogChute to use: default: AvalonLogChute, Log4JLogChute, CommonsLogLogChute, ServletLogChute, JdkLogChute ++# default LogChute to use: default: Log4JLogChute, CommonsLogLogChute, ServletLogChute, JdkLogChute + # ---------------------------------------------------------------------------- + +-runtime.log.logsystem.class = org.apache.velocity.runtime.log.AvalonLogChute,org.apache.velocity.runtime.log.Log4JLogChute,org.apache.velocity.runtime.log.CommonsLogLogChute,org.apache.velocity.runtime.log.ServletLogChute,org.apache.velocity.runtime.log.JdkLogChute ++runtime.log.logsystem.class = org.apache.velocity.runtime.log.Log4JLogChute,org.apache.velocity.runtime.log.CommonsLogLogChute,org.apache.velocity.runtime.log.ServletLogChute,org.apache.velocity.runtime.log.JdkLogChute + + # --------------------------------------------------------------------------- + # This is the location of the Velocity Runtime log. +diff --git a/src/java/org/apache/velocity/runtime/log/LogManager.java b/src/java/org/apache/velocity/runtime/log/LogManager.java +index 19d1016..97dceef 100644 +--- a/src/java/org/apache/velocity/runtime/log/LogManager.java ++++ b/src/java/org/apache/velocity/runtime/log/LogManager.java +@@ -119,7 +119,7 @@ public class LogManager + * classes, and we use the first one we find. + * + * Note that the default value of this property contains the +- * AvalonLogChute, the Log4JLogChute, CommonsLogLogChute, ++ * Log4JLogChute, CommonsLogLogChute, + * ServletLogChute, and the JdkLogChute for + * convenience - so we use whichever we works first. + */ +-- +1.7.4 + diff --git a/0003-Use-system-jars.patch b/0003-Use-system-jars.patch new file mode 100644 index 0000000..3d37ee8 --- /dev/null +++ b/0003-Use-system-jars.patch @@ -0,0 +1,197 @@ +From 813085c72e9906a53bec5954bcce7305a7c320d1 Mon Sep 17 00:00:00 2001 +From: Stanislav Ochotnicky +Date: Mon, 21 Feb 2011 17:58:39 +0100 +Subject: [PATCH 3/3] Use system jars + +--- + build/build.xml | 56 +++++++++++---------------------------------------- + build/testcases.xml | 6 ----- + 2 files changed, 12 insertions(+), 50 deletions(-) + +diff --git a/build/build.xml b/build/build.xml +index c667553..479ef2d 100644 +--- a/build/build.xml ++++ b/build/build.xml +@@ -140,28 +140,6 @@ + + + +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- +- + + + +@@ -174,12 +152,11 @@ + + + +- ++ + + + +- + + + +@@ -210,10 +187,9 @@ + + + +- ++ + +- + + + +@@ -248,7 +224,7 @@ + + + +- + ++ optimize="${optimize}"/> + + + +@@ -268,7 +243,7 @@ + + + +- + + +- +- + + + +@@ -561,7 +534,7 @@ + + + +- + + +@@ -585,8 +558,7 @@ + encoding="UTF-8" + debug="${debug}" + deprecation="${deprecation}" +- optimize="${optimize}" +- classpathref="velocity.run.classpath"/> ++ optimize="${optimize}"/> + + + +@@ -604,7 +576,7 @@ + + + +- + + +@@ -620,8 +592,7 @@ + doctitle="${name} ${version} API" + encoding="UTF-8" + docencoding="UTF-8" +- bottom="Copyright © 2000-${build.year} <a href="http://www.apache.org/">Apache Software Foundation</a>. All Rights Reserved." +- classpathref="velocity.build.classpath"> ++ bottom="Copyright © 2000-${build.year} <a href="http://www.apache.org/">Apache Software Foundation</a>. All Rights Reserved."> + + + +@@ -1024,12 +995,11 @@ + + + +- + + ++ classname="org.apache.velocity.anakia.AnakiaTask"/> + + + ####################################################### +@@ -1231,7 +1201,7 @@ + + + +- + + +@@ -1264,8 +1234,6 @@ + + + +- +- + + + +diff --git a/build/testcases.xml b/build/testcases.xml +index 06bb36e..f3749bc 100644 +--- a/build/testcases.xml ++++ b/build/testcases.xml +@@ -36,12 +36,6 @@ + + + +- +- +- +- +- +- + + + +-- +1.7.4 + diff --git a/0004-JDBC-41-compat.patch b/0004-JDBC-41-compat.patch new file mode 100644 index 0000000..c137bac --- /dev/null +++ b/0004-JDBC-41-compat.patch @@ -0,0 +1,19 @@ +--- a/src/test/org/apache/velocity/test/sql/HsqlDataSource.java 2012-02-15 19:49:20.202936454 -0500 ++++ b/src/test/org/apache/velocity/test/sql/HsqlDataSource.java 2012-02-15 19:52:35.062574871 -0500 +@@ -23,6 +23,7 @@ + import java.sql.Connection; + import java.sql.DriverManager; + import java.sql.SQLException; ++import java.sql.SQLFeatureNotSupportedException; + + import javax.sql.DataSource; + +@@ -73,5 +74,8 @@ + public Object unwrap(final Class iface) throws SQLException { + throw new SQLException("Not implemented"); + } ++ public java.util.logging.Logger getParentLogger() throws SQLFeatureNotSupportedException { ++ throw new SQLFeatureNotSupportedException("getParentLogger() not supported"); ++ } + + } diff --git a/0004-Use-log4j-1.2.17.patch b/0004-Use-log4j-1.2.17.patch new file mode 100644 index 0000000..62602a0 --- /dev/null +++ b/0004-Use-log4j-1.2.17.patch @@ -0,0 +1,25 @@ +From cec42bf7ae8b4b72850c3cdea74a07603f11786f Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Wed, 18 Jun 2014 07:25:12 +0200 +Subject: [PATCH 4/4] Use log4j 1.2.17 + +--- + pom.xml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pom.xml b/pom.xml +index e35d72d..c8d48fd 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -187,7 +187,7 @@ + + log4j + log4j +- 1.2.12 ++ 1.2.17 + provided + + +-- +1.9.3 + diff --git a/0006-Skip-Java-8-incompatible-test.patch b/0006-Skip-Java-8-incompatible-test.patch new file mode 100644 index 0000000..3577fa0 --- /dev/null +++ b/0006-Skip-Java-8-incompatible-test.patch @@ -0,0 +1,26 @@ +From 6060e6ef497bddc4a9aeac343e584ff324746d58 Mon Sep 17 00:00:00 2001 +From: Mikolaj Izdebski +Date: Wed, 18 Jun 2014 08:11:48 +0200 +Subject: [PATCH 6/6] Skip Java 8 incompatible test + +--- + src/test/org/apache/velocity/test/issues/VelTools66TestCase.java | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/test/org/apache/velocity/test/issues/VelTools66TestCase.java b/src/test/org/apache/velocity/test/issues/VelTools66TestCase.java +index 00bb0b1..6fb7260 100644 +--- a/src/test/org/apache/velocity/test/issues/VelTools66TestCase.java ++++ b/src/test/org/apache/velocity/test/issues/VelTools66TestCase.java +@@ -87,7 +87,8 @@ public class VelTools66TestCase + + Method testMethod = introspector.getMethod(TestObject.class, "getTestValue", new Object[0]); + assertNotNull(testMethod); +- assertEquals("Method object does not match!", verifyMethod, testMethod); ++ // Java 8 incompatibility ++ // assertEquals("Method object does not match!", verifyMethod, testMethod); + } + + public static interface TestInterface +-- +1.9.3 + diff --git a/generate-tarball.sh b/generate-tarball.sh new file mode 100755 index 0000000..a86a470 --- /dev/null +++ b/generate-tarball.sh @@ -0,0 +1,21 @@ +#!/bin/bash +set -e + +name=velocity +version="$(sed -n 's/Version:\s*//p' *.spec)" + +# RETRIEVE +wget "http://www.apache.org/dist/${name}/engine/${version}/${name}-${version}.tar.gz" -O "${name}-${version}.orig.tar.gz" + +rm -rf tarball-tmp +mkdir tarball-tmp +cd tarball-tmp +tar xf "../${name}-${version}.orig.tar.gz" + +# CLEAN TARBALL +rm -r */*.jar +rm -r */lib + +tar cf "../${name}-${version}.tar.gz" * +cd .. +rm -r tarball-tmp "${name}-${version}.orig.tar.gz" diff --git a/velocity-1.7-doclint.patch b/velocity-1.7-doclint.patch new file mode 100644 index 0000000..7895b60 --- /dev/null +++ b/velocity-1.7-doclint.patch @@ -0,0 +1,11 @@ +diff -Nru velocity-1.7/build/build.xml velocity-1.7.doclint/build/build.xml +--- velocity-1.7/build/build.xml 2015-07-22 12:13:51.566920750 +0200 ++++ velocity-1.7.doclint/build/build.xml 2015-07-22 12:13:14.929703544 +0200 +@@ -592,6 +592,7 @@ + doctitle="${name} ${version} API" + encoding="UTF-8" + docencoding="UTF-8" ++ additionalparam="-Xdoclint:none" + bottom="Copyright © 2000-${build.year} <a href="http://www.apache.org/">Apache Software Foundation</a>. All Rights Reserved."> + + diff --git a/velocity-1.7-osgi.patch b/velocity-1.7-osgi.patch new file mode 100644 index 0000000..2d6ac05 --- /dev/null +++ b/velocity-1.7-osgi.patch @@ -0,0 +1,43 @@ +diff -Nru velocity-1.7/build/build.properties velocity-1.7.osgi/build/build.properties +--- velocity-1.7/build/build.properties 2010-11-19 21:16:21.000000000 +0100 ++++ velocity-1.7.osgi/build/build.properties 2015-07-22 12:21:19.627117810 +0200 +@@ -166,8 +166,7 @@ + + ######################################################################## + # OSGi stuff +-import=com.werken.xpath;resolution:=optional,\ +- javax.naming,\ ++import=javax.naming,\ + javax.servlet;resolution:=optional,\ + javax.servlet.http;resolution:=optional,\ + javax.sql,\ +@@ -188,8 +187,7 @@ + org.jdom.input;resolution:=optional,\ + org.jdom.output;resolution:=optional,\ + org.xml.sax +-dep.import=com.werken.xpath;resolution:=optional,\ +- javax.naming,\ ++dep.import=javax.naming,\ + javax.servlet;resolution:=optional,\ + javax.servlet.http;resolution:=optional,\ + javax.sql,\ +@@ -207,8 +205,7 @@ + export=org.apache.velocity;uses:="org.apache.velocity.context,\ + org.apache.velocity.exception,\ + org.apache.velocity.runtime.resource",\ +- org.apache.velocity.anakia;uses:="com.werken.xpath,\ +- org.apache.tools.ant,\ ++ org.apache.velocity.anakia;uses:="org.apache.tools.ant,\ + org.apache.tools.ant.taskdefs,\ + org.jdom,\ + org.jdom.output",\ +@@ -327,8 +324,7 @@ + org.apache.velocity;uses:="org.apache.velocity.context,\ + org.apache.velocity.exception,\ + org.apache.velocity.runtime.resource",\ +- org.apache.velocity.anakia;uses:="com.werken.xpath,\ +- org.apache.tools.ant,\ ++ org.apache.velocity.anakia;uses:="org.apache.tools.ant,\ + org.apache.tools.ant.taskdefs,\ + org.jdom,\ + org.jdom.output",\ diff --git a/velocity-1.7.pom b/velocity-1.7.pom new file mode 100644 index 0000000..77a8e38 --- /dev/null +++ b/velocity-1.7.pom @@ -0,0 +1,346 @@ + + + + + + + 4.0.0 + + + org.apache + apache + 4 + + + org.apache.velocity + velocity + 1.7 + + Apache Velocity + http://velocity.apache.org/engine/devel/ + Apache Velocity is a general purpose template engine. + 2000 + jar + + + 2.0.9 + + + + install + src/java + src/test + + + org.apache.maven.plugins + maven-site-plugin + + UTF-8 + UTF-8 + ${basedir}/xdocs/docs + + + + + + src/java + + **/*.java + + + + + + + + velocity.apache.org + scpexe://people.apache.org/www/velocity.apache.org/engine/releases/velocity-1.7 + + + apache.releases + Apache Release Distribution Repository + scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository + + + apache.snapshots + Apache Development Snapshot Repository + scp://people.apache.org/www/people.apache.org/repo/m2-snapshot-repository + + + + + + Will Glass-Husain + wglass + wglass@forio.com + Forio Business Simulations + + Java Developer + + + + + Geir Magnusson Jr. + geirm + geirm@optonline.net + Independent (DVSL Maven) + + Java Developer + + + + + Daniel Rall + dlr + dlr@finemaltcoding.com + CollabNet, Inc. + + Java Developer + + + + + Henning P. Schmiedehausen + henning + hps@intermeta.de + INTERMETA - Gesellschaft für Mehrwertdienste mbH + + Java Developer + + 2 + + + + Nathan Bubna + nbubna + nathan@esha.com + ESHA Research + + Java Developer + + + + + + + + commons-collections + commons-collections + 3.2.1 + + + commons-lang + commons-lang + 2.4 + + + oro + oro + 2.0.8 + true + + + jdom + jdom + 1.0 + provided + + + commons-logging + commons-logging + 1.1 + provided + + + avalon-framework + avalon-framework + + + log4j + log4j + + + javax.servlet + servlet-api + + + + + log4j + log4j + 1.2.12 + provided + + + javax.servlet + servlet-api + 2.3 + provided + + + logkit + logkit + 2.0 + provided + + + ant + ant + 1.6 + provided + + + werken-xpath + werken-xpath + 0.9.4 + provided + + + junit + junit + 3.8.1 + test + + + hsqldb + hsqldb + 1.7.1 + test + + + + + + + org.apache.maven.plugins + maven-project-info-reports-plugin + 2.1 + + + + dependencies + issue-tracking + license + summary + scm + + + + + + org.apache.maven.plugins + maven-changes-plugin + 2.0 + + + + changes-report + jira-report + + + + + ${jira.browse.url}/%ISSUE% + + 12311337 + + fixfor=12310290&sorter/field=issuekey&sorter/order=ASC + 100 + http://velocity.apache.org/who-we-are.html + + + + org.codehaus.mojo + taglist-maven-plugin + 2.2 + + TODO + FIXME + + + + org.apache.maven.plugins + maven-jxr-plugin + 2.1 + + + org.apache.maven.plugins + maven-javadoc-plugin + 2.5 + + + http://java.sun.com/j2se/1.4.2/docs/api + http://jakarta.apache.org/oro/api + http://jakarta.apache.org/commons/lang/api-release + http://jakarta.apache.org/commons/collections/api-release + + http://www.jdom.org/docs/apidocs + http://logging.apache.org/log4j/docs/api + http://excalibur.apache.org/apidocs + http://tomcat.apache.org/tomcat-4.1-doc/servletapi + + + + + org.apache.maven.plugins + maven-changelog-plugin + 2.1 + + + org.codehaus.mojo + findbugs-maven-plugin + 1.2 + + true + Low + Max + build/findbugs-exclude.xml + xdocs + + + + org.apache.maven.plugins + maven-compiler-plugin + + 1.4 + 1.4 + + + + + + + scm:svn:http://svn.apache.org/repos/asf/velocity/engine/trunk + scm:svn:https://svn.apache.org/repos/asf/velocity/engine/trunk + HEAD + http://svn.apache.org/viewvc/velocity/engine/trunk + + + + https://issues.apache.org/jira/browse + + + + JIRA + ${jira.browse.url}/VELOCITY + + diff --git a/velocity-1.7.tar.gz b/velocity-1.7.tar.gz new file mode 100644 index 0000000..3b7c1b6 Binary files /dev/null and b/velocity-1.7.tar.gz differ diff --git a/velocity.spec b/velocity.spec new file mode 100644 index 0000000..f2d5418 --- /dev/null +++ b/velocity.spec @@ -0,0 +1,126 @@ +Name: velocity +Epoch: 0 +Version: 1.7 +Release: 25 +Summary: Java-based template engine +License: ASL 2.0 +URL: http://velocity.apache.org/ +BuildArch: noarch + +Source0: %{name}-%{version}.tar.gz +Source1: http://repo1.maven.org/maven2/org/apache/%{name}/%{name}/%{version}/%{name}-%{version}.pom +Source2: generate-tarball.sh + +Patch0001: 0001-Remove-avalon-logkit.patch +Patch0002: 0004-Use-log4j-1.2.17.patch +Patch0003: 0003-Use-system-jars.patch +Patch0004: 0004-JDBC-41-compat.patch +Patch0005: 0001-Don-t-use-Werken-XPath.patch +Patch0006: 0006-Skip-Java-8-incompatible-test.patch +Patch0007: velocity-1.7-doclint.patch +Patch0008: velocity-1.7-osgi.patch + +BuildRequires: javapackages-local ant antlr junit ant-junit +BuildRequires: apache-commons-collections apache-commons-logging apache-commons-lang +BuildRequires: glassfish-servlet-api jakarta-oro jaxen jdom bcel log4j12 apache-parent +BuildRequires: hsqldb-lib java-devel >= 1:1.6.0 + +%description +Velocity is a Java-based template engine. +It permits anyone to use the simple yet powerful template language +to reference objects defined in Java code. + +When Velocity is used for web development, +Web designers can work in parallel with Java programmers +to develop web sites according to the Model-View-Controller (MVC) model, +meaning that web page designers can focus solely +on creating a site that looks good, +and programmers can focus solely on writing top-notch code. +Velocity separates Java code from the web pages, +making the web site more maintainable over the long run +and providing a viable alternative to Java Server Pages (JSPs) or PHP. + +Velocity's capabilities reach well beyond the realm of web sites; +for example, it can generate SQL and PostScript and XML from templates. +It can be used either as a standalone utility for generating source code and reports, +or as an integrated component of other systems. +Velocity also provides template services for the Turbine web application framework. +Velocity+Turbine provides a template service that will +allow web applications to be developed according to a true MVC model. + +%package help +Summary: Documentation and samples for %{name} +Requires: %{name} = %{epoch}:%{version}-%{release} + +Provides: %{name}-manual = %{version}-%{release} +Obsoletes: %{name}-manual < %{version}-%{release} +Provides: %{name}-javadoc = %{version}-%{release} +Obsoletes: %{name}-javadoc < %{version}-%{release} +Provides: %{name}-demo = %{version}-%{release} +Obsoletes: %{name}-demo < %{version}-%{release} + +%description help +Documentation and samples for %{name} + + +%prep +%setup -q + +find . -name '*.jar' ! -name 'test*.jar' -print -delete +find . -name '*.class' ! -name 'Foo.class' -print -delete + +rm -f src/java/org/apache/velocity/runtime/log/{AvalonLogChute,AvalonLogSystem,VelocityFormatter}.java +rm src/test/org/apache/velocity/test/VelocityServletTestCase.java +rm src/test/org/apache/velocity/test/sql/DataSourceResourceLoaderTestCase.java + +cp %{SOURCE1} ./pom.xml + +%patch0001 -p1 +%patch0002 -p1 +%patch0003 -p1 +%patch0004 -p1 +%patch0005 -p1 +%patch0006 -p1 +%patch0007 -p1 +%patch0008 -p1 + + +%build +export CLASSPATH=$(build-classpath antlr apache-commons-collections \ +commons-lang commons-logging glassfish-servlet-api junit \ +jakarta-oro log4j:log4j:1.2.17 jaxen jdom bcel hsqldb junit) +ant -buildfile build/build.xml -Dbuild.sysclasspath=first \ +-Djavac.target=1.6 -Djavac.source=1.6 jar javadocs test + +export BEP_GTDLIST=$(echo $BEP_GTDLIST | sed 's/\//g') +ant -buildfile build/build.xml -Dbuild.sysclasspath=first \ + -Djavac.target=1.6 -Djavac.source=1.6 test +export BEP_GTDLIST="$BEP_GTDLIST java" + +sed -i 's/\r//' docs/api/stylesheet.css docs/api/package-list + + +%install +%mvn_file : %{name} +%mvn_alias : %{name}:%{name} +%mvn_artifact pom.xml bin/%{name}-%{version}.jar +%mvn_install -J docs/api + +rm -r test/issues/velocity-537/compare/velocity537.vm.cmp +install -d -m 755 %{buildroot}%{_datadir}/%{name} +cp -pr examples test %{buildroot}%{_datadir}/%{name} + + +%files -f .mfiles +%doc README.txt +%license LICENSE NOTICE + +%files help -f .mfiles-javadoc +%doc docs/* +%{_datadir}/%{name} + + +%changelog +* Wed Dec 04 2019 zoushuangshuang - 1.7-25 +- Package init +