# # spec file for package velocity # # Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %define section free Name: velocity Version: 1.5 Release: 0 Summary: Java-based template engine License: Apache-2.0 Group: Development/Libraries/Java Source0: http://www.apache.org/dist/velocity/engine/1.5/velocity-1.5.tar.bz2 Source1: http://repo1.maven.org/maven2/velocity/velocity/1.5/velocity-1.5.pom Patch0: velocity-build_xml.patch Url: http://velocity.apache.org/ Requires: avalon-logkit Requires: commons-collections Requires: commons-lang Requires: java >= 1.5.0 Requires: jdom >= 1.0-1 Requires: log4j >= 1.1 #Requires: jakarta-oro Requires: oro # Use servletapi4 instead of servletapi5 Requires: servletapi4 Requires: werken-xpath BuildRequires: ant >= 1.6.5 BuildRequires: ant-junit BuildRequires: antlr BuildRequires: avalon-logkit BuildRequires: classworlds BuildRequires: commons-collections BuildRequires: commons-lang BuildRequires: hsqldb BuildRequires: java-devel >= 1.6.0 BuildRequires: javapackages-tools BuildRequires: jdom >= 1.0-1 BuildRequires: junit BuildRequires: log4j >= 1.1 BuildRequires: oro # Use servletapi4 instead of servletapi5 BuildRequires: fdupes BuildRequires: servletapi4 BuildRequires: werken-xpath Requires(post): javapackages-tools Requires(postun): javapackages-tools BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-build %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 (see Anakia for more information on XML transformations) 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 manual Summary: Manual for %{name} Group: Development/Libraries/Java %description manual 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 (see Anakia for more information on XML transformations) 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 javadoc Summary: Javadoc for %{name} Group: Documentation/HTML Requires(post): %{__rm} Requires(post): /bin/ln Requires(postun): %{__rm} %description javadoc 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 (see Anakia for more information on XML transformations) 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 demo Summary: Demo for %{name} Group: Development/Libraries/Java Requires: %{name} = %{version}-%{release} %description demo 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 (see Anakia for more information on XML transformations) 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. %prep %setup -q -n %{name}-%{version} # Remove all binary libs used in compiling the package. # Note that velocity has some jar files containing macros under # examples and test that should not be removed. #find build -name '*.jar' -exec rm -f \{\} \; for j in $(find . -name "*.jar" | grep -v /test/); do mv $j $j.no done %patch0 -b .sav0 #%patch99 -b .sav99 %build #export JAVA_HOME=%{_jvmdir}/java-1.5.0 # Use servletapi4 instead of servletapi5 in CLASSPATH mkdir -p bin/test-lib pushd bin/test-lib ln -sf $(build-classpath hsqldb) ln -sf $(build-classpath junit) popd mkdir -p bin/lib pushd bin/lib ln -sf $(build-classpath ant) ln -sf $(build-classpath antlr) ln -sf $(build-classpath avalon-logkit) ln -sf $(build-classpath commons-collections) ln -sf $(build-classpath commons-lang) ln -sf $(build-classpath jdom) ln -sf $(build-classpath log4j) ln -sf $(build-classpath oro) ln -sf $(build-classpath servletapi4) ln -sf $(build-classpath werken-xpath) ln -sf $(build-classpath classworlds) popd export CLASSPATH=$(build-classpath jdom commons-collections commons-lang werken-xpath antlr) CLASSPATH=$CLASSPATH:$(pwd)/test/texen-classpath/test.jar export OPT_JAR_LIST="ant/ant-junit junit" #FIXME: tests failed on CommonsExtPropTestCase #but resulting files seems to be same ant \ -buildfile build/build.xml \ jar javadocs #test %install # jars install -d -m 755 $RPM_BUILD_ROOT%{_javadir} install -p -m 644 bin/%{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar %add_to_maven_depmap org.apache.velocity velocity %{version} JPP %{name} (cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done) # pom install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/maven2/poms install -pm 644 %{SOURCE1} \ $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP-%{name}.pom # javadoc install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} cp -pr docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} rm -rf docs/api # data install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name} cp -pr convert examples test $RPM_BUILD_ROOT%{_datadir}/%{name} %fdupes -s %{buildroot} %clean rm -rf $RPM_BUILD_ROOT %post %update_maven_depmap %postun %update_maven_depmap %files %defattr(0644,root,root,0755) %doc LICENSE NOTICE README.txt %{_javadir}/*.jar %{_datadir}/maven2/poms/* %config %{_mavendepmapfragdir} %files manual %defattr(0644,root,root,0755) %doc docs/* %files javadoc %defattr(0644,root,root,0755) %{_javadocdir}/%{name}-%{version} %files demo %defattr(0644,root,root,0755) %{_datadir}/%{name} %changelog