%global master_version 4 Name: struts Version: 1.3.10 Release: 1%{?dist} Summary: Web application framework Group: Development/Libraries License: ASL 2.0 URL: http://struts.apache.org/ Source0: http://www.apache.org/dist/%{name}/source/%{name}-%{version}-src.zip # wget -O struts-master-4-pom.xml http://svn.apache.org/repos/asf/struts/maven/tags/STRUTS_MASTER_4/pom.xml Source1: %{name}-master-%{master_version}-pom.xml Source2: %{name}-%{version}-depmap # add struts-master relativePath Patch0: %{name}-%{version}-parent-pom.patch # fix build for junit servlet-3.0-api # change myfaces myfaces-jsf-api 1.0.9 with org.jboss.spec.javax.faces jboss-jsf-api_2.1_spec Patch1: %{name}-%{version}-build.patch BuildRequires: java-devel BuildRequires: jpackage-utils BuildRequires: antlr BuildRequires: apache-commons-beanutils BuildRequires: apache-commons-chain BuildRequires: apache-commons-digester BuildRequires: apache-commons-fileupload BuildRequires: apache-commons-logging BuildRequires: apache-commons-validator BuildRequires: bsf BuildRequires: jakarta-taglibs-standard >= 1.1.2-5 BuildRequires: jakarta-oro BuildRequires: jboss-jsf-2.1-api BuildRequires: tomcat-el-2.2-api BuildRequires: tomcat-jsp-2.2-api BuildRequires: tomcat-servlet-3.0-api # not only a test dep BuildRequires: junit BuildRequires: maven BuildRequires: maven-compiler-plugin BuildRequires: maven-install-plugin BuildRequires: maven-jar-plugin BuildRequires: maven-javadoc-plugin BuildRequires: maven-resources-plugin BuildRequires: maven-surefire-plugin BuildRequires: maven-surefire-provider-junit4 Requires: antlr Requires: apache-commons-beanutils Requires: apache-commons-chain Requires: apache-commons-digester Requires: apache-commons-fileupload Requires: apache-commons-logging Requires: apache-commons-validator Requires: bsf Requires: jakarta-taglibs-standard >= 1.1.2-5 Requires: jakarta-oro Requires: jboss-jsf-2.1-api Requires: junit Requires: tomcat-el-2.2-api Requires: tomcat-jsp-2.2-api Requires: tomcat-servlet-3.0-api Requires: java Requires: jpackage-utils BuildArch: noarch %description Welcome to the Struts Framework! The goal of this project is to provide an open source framework useful in building web applications with Java Servlet and JavaServer Pages (JSP) technology. Struts encourages application architectures based on the Model-View-Controller (MVC) design paradigm, colloquially known as Model 2 in discussions on various servlet and JSP related mailing lists. Struts includes the following primary areas of functionality: A controller servlet that dispatches requests to appropriate Action classes provided by the application developer. JSP custom tag libraries, and associated support in the controller servlet, that assists developers in creating interactive form-based applications. Utility classes to support XML parsing, automatic population of JavaBeans properties based on the Java reflection APIs, and internationalization of prompts and messages. %package javadoc Group: Documentation Summary: Javadoc for %{name} Requires: jpackage-utils %description javadoc This package contains javadoc for %{name}. %prep %setup -q find -name "*.jar" -delete find -name "*.class" -delete %patch0 -p0 %patch1 -p1 sed -i 's/\r//' LICENSE.txt NOTICE.txt # fix non ASCII chars for s in src/tiles/src/main/java/org/apache/struts/tiles/ComponentDefinition.java;do native2ascii -encoding UTF8 ${s} ${s} done cp -p %{SOURCE1} pom.xml %build cd src mvn-rpmbuild \ -Dproject.build.sourceEncoding=UTF-8 \ -Dmaven.local.depmap.file="%{SOURCE2}" \ install javadoc:aggregate %install mkdir -p %{buildroot}%{_mavenpomdir} install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-master.pom %add_maven_depmap JPP.%{name}-master.pom install -pm 644 src/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-parent.pom %add_maven_depmap JPP.%{name}-parent.pom mkdir -p %{buildroot}%{_javadir}/%{name} for m in core \ el \ extras \ faces \ mailreader-dao \ scripting \ taglib \ tiles; do install -pm 644 src/${m}/target/%{name}-${m}-%{version}.jar %{buildroot}%{_javadir}/%{name}/${m}.jar install -pm 644 src/${m}/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{name}-${m}.pom %add_maven_depmap JPP.%{name}-${m}.pom %{name}/${m}.jar done mkdir -p %{buildroot}%{_javadocdir}/%{name} cp -pr src/target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name} %files %{_javadir}/%{name}/*.jar %{_mavenpomdir}/JPP.%{name}-*.pom %{_mavendepmapfragdir}/%{name} %doc LICENSE.txt NOTICE.txt %files javadoc %{_javadocdir}/%{name} %doc LICENSE.txt NOTICE.txt %changelog * Sat May 26 2012 gil cattaneo 1.3.10-1 - initial rpm