%global oname cargo Name: cargo-extensions Version: 1.4.2 Release: 1%{?dist} Summary: Tools for manipulate Java EE containers Group: Development/Libraries License: ASL 2.0 Url: http://cargo.codehaus.org/ # svn export http://svn.codehaus.org/cargo/extensions/tags/cargo-extensions-1.4.2 # find cargo-extensions-1.4.2 -name '*.jar' -delete # cargo-extensions-1.4.2/daemon/webapp/src/main/webapp/WEB-INF/tjws/war.jar rogatkin.web # cargo-extensions-1.4.2/daemon/webapp/src/main/webapp/WEB-INF/tjws/webserver.jar Acme.Serve # find cargo-extensions-1.4.2 -name '*.class' -delete # tar czf cargo-extensions-1.4.2-src-svn.tar.gz cargo-extensions-1.4.2 Source0: %{name}-%{version}-src-svn.tar.gz # cargo-extensions package don't include the license file Source1: http://www.apache.org/licenses/LICENSE-2.0.txt BuildRequires: java-devel BuildRequires: cargo-parent BuildRequires: mvn(org.codehaus.cargo:cargo-core-api-container) BuildRequires: mvn(org.codehaus.cargo:cargo-core-api-generic) BuildRequires: mvn(org.codehaus.cargo:cargo-core-api-util) BuildRequires: mvn(org.apache.maven:maven-archiver) BuildRequires: mvn(org.apache.maven:maven-compat) BuildRequires: mvn(org.apache.maven:maven-core) BuildRequires: mvn(org.apache.maven:maven-plugin-api) #BuildRequires: mvn(org.apache.maven:maven-project) BuildRequires: mvn(org.apache.maven:maven-settings) BuildRequires: mvn(org.codehaus.plexus:plexus-utils) # test deps %if 0 BuildRequires: apache-commons-vfs BuildRequires: junit BuildRequires: mvn(jmock:jmock-cglib) == 1.2.0 %endif BuildRequires: maven-local BuildRequires: maven-checkstyle-plugin BuildRequires: maven-enforcer-plugin BuildRequires: maven-plugin-plugin BuildRequires: mvn(org.codehaus.modello:modello-maven-plugin) BuildRequires: mvn(org.codehaus.cargo:cargo-build-tools) #Requires: cargo-core Requires: cargo-resources Requires: java BuildArch: noarch %description Cargo is a thin wrapper that allows you to manipulate Java EE containers in a standard way. Cargo Extensions provides the following Tools: * Ant tasks. * Maven plugin. These tools can be used in a standalone fashion or via various IDEs. %package ant Group: Development/Libraries Summary: Cargo Ant tasks Requires: %{name} = %{version}-%{release} Requires: ant #Requires: mvn(org.codehaus.cargo:cargo-core-uberjar) Requires: mvn(org.codehaus.cargo:cargo-core-api-container) Requires: mvn(org.codehaus.cargo:cargo-core-api-generic) Requires: mvn(org.codehaus.cargo:cargo-core-api-util) %description ant Ant tasks for Cargo. %package daemon Group: Development/Libraries Summary: Cargo Extensions - Daemon Requires: %{name} = %{version}-%{release} Requires: mvn(org.codehaus.cargo:cargo-core-api-generic) Requires: mvn(org.codehaus.cargo:cargo-core-api-util) %description daemon Cargo Extensions for Daemon. %package -n %{oname}-maven-plugin Group: Development/Libraries Summary: Cargo Maven Plugin Requires: %{name} = %{version}-%{release} Requires: %{name}-daemon = %{version}-%{release} Requires: mvn(org.apache.maven:maven-archiver) Requires: mvn(org.apache.maven:maven-compat) Requires: mvn(org.apache.maven:maven-core) Requires: mvn(org.apache.maven:maven-plugin-api) #Requires: mvn(org.apache.maven:maven-project) Requires: mvn(org.apache.maven:maven-settings) Requires: mvn(org.codehaus.plexus:plexus-utils) Requires: mvn(org.codehaus.cargo:cargo-core-api-container) Requires: mvn(org.codehaus.cargo:cargo-core-api-generic) %description -n %{oname}-maven-plugin Cargo Maven Plugin. %package javadoc Group: Documentation Summary: Javadoc for %{name} %description javadoc This package contains javadoc for %{name}. %prep %setup -q %pom_disable_module samples ant %pom_disable_module samples maven2 %pom_disable_module archetypes maven2 %pom_disable_module itests daemon # daemon/webapp/src/main/webapp/WEB-INF/tjws/war.jar # daemon/webapp/src/main/webapp/WEB-INF/tjws/webserver.jar %pom_disable_module webapp daemon %pom_remove_plugin :maven-dependency-plugin daemon/webapp %pom_remove_dep org.apache.maven:maven-project maven2/plugin %pom_add_dep org.apache.maven:maven-core maven2/plugin %pom_add_dep org.apache.maven:maven-compat maven2/plugin %pom_remove_dep org.codehaus.cargo:cargo-documentation maven2/plugin #%%pom_add_dep org.codehaus.cargo:cargo-core-container-resin:'${cargo.core.version}':test ant/tasks %pom_remove_dep org.codehaus.cargo:cargo-core-uberjar ant/tasks %pom_add_dep org.codehaus.cargo:cargo-core-api-container:'${cargo.core.version}' ant/tasks %pom_add_dep org.codehaus.cargo:cargo-core-api-generic:'${cargo.core.version}' ant/tasks %pom_add_dep org.codehaus.cargo:cargo-core-api-util:'${cargo.core.version}' ant/tasks %pom_remove_dep jmock:jmock-cglib maven2/plugin # Upgrading vfs references #%%pom_remove_dep :commons-vfs maven2/plugin #%%pom_add_dep org.apache.commons:commons-vfs2::test maven2/plugin cp -p %{SOURCE1} . sed -i 's/\r//' LICENSE-2.0.txt %build # unavailable test deps jmock jmock-cglib 1.2.0 # unable to load package org.codehaus.cargo.container.stub mvn-rpmbuild -Dmaven.test.skip=true package javadoc:aggregate %install mkdir -p %{buildroot}%{_javadir}/%{oname} mkdir -p %{buildroot}%{_mavenpomdir} install -pm 644 pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{oname}-%{name}.pom %add_maven_depmap JPP.%{oname}-%{name}.pom install -pm 644 ant/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{oname}-%{name}-ant.pom %add_maven_depmap -f ant JPP.%{oname}-%{name}-ant.pom install -m 644 ant/tasks/target/%{oname}-ant-%{version}.jar %{buildroot}%{_javadir}/%{oname}/%{oname}-ant.jar install -pm 644 ant/tasks/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{oname}-%{oname}-ant.pom %add_maven_depmap -f ant JPP.%{oname}-%{oname}-ant.pom %{oname}/%{oname}-ant.jar install -pm 644 ant/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{oname}-%{name}-daemon.pom %add_maven_depmap -f daemon JPP.%{oname}-%{name}-daemon.pom install -m 644 daemon/client/target/%{oname}-daemon-client-%{version}.jar %{buildroot}%{_javadir}/%{oname}/%{oname}-daemon-client.jar install -pm 644 daemon/client/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{oname}-%{oname}-daemon-client.pom %add_maven_depmap -f daemon JPP.%{oname}-%{oname}-daemon-client.pom %{oname}/%{oname}-daemon-client.jar install -pm 644 maven2/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{oname}-%{name}-maven.pom %add_maven_depmap -f maven-plugin JPP.%{oname}-%{name}-maven.pom install -m 644 maven2/plugin/target/%{oname}-maven2-plugin-%{version}.jar %{buildroot}%{_javadir}/%{oname}/%{oname}-maven-plugin.jar install -pm 644 maven2/plugin/pom.xml %{buildroot}%{_mavenpomdir}/JPP.%{oname}-%{oname}-maven-plugin.pom %add_maven_depmap -f maven-plugin JPP.%{oname}-%{oname}-maven-plugin.pom %{oname}/%{oname}-maven-plugin.jar mkdir -p %{buildroot}%{_javadocdir}/%{name} cp -pr target/site/apidocs/* %{buildroot}%{_javadocdir}/%{name} mkdir -p %{buildroot}%{_sysconfdir}/ant.d echo "ant %{oname}/%{oname}-ant %{oname}/%{oname}-core-api-container %{oname}/%{oname}-core-api-generic %{oname}/%{oname}-core-api-util" > %{oname}-ant install -p -m 644 %{oname}-ant %{buildroot}%{_sysconfdir}/ant.d/%{oname}-ant %files %{_mavenpomdir}/JPP.%{oname}-%{oname}-extensions.pom %{_mavendepmapfragdir}/%{name} %doc LICENSE-2.0.txt %files ant %{_javadir}/%{oname}/*-ant.jar %{_mavenpomdir}/JPP.%{oname}-%{oname}*-ant.pom %{_mavendepmapfragdir}/%{name}-ant %config(noreplace) %{_sysconfdir}/ant.d/%{oname}-ant %doc LICENSE-2.0.txt %files daemon %{_javadir}/%{oname}/%{oname}-daemon-*.*ar %{_mavenpomdir}/JPP.%{oname}-%{oname}*daemon*.pom %{_mavendepmapfragdir}/%{name}-daemon %doc LICENSE-2.0.txt %files -n %{oname}-maven-plugin %{_javadir}/%{oname}/*maven*.jar %{_mavenpomdir}/JPP.%{oname}-%{oname}*maven*.pom %{_mavendepmapfragdir}/%{name}-maven-plugin %doc LICENSE-2.0.txt %files javadoc %{_javadocdir}/%{name} %doc LICENSE-2.0.txt %changelog * Wed Jun 05 2013 gil cattaneo 1.4.2-1 - Update to 1.4.2 * Mon Nov 19 2012 gil cattaneo 1.3.1-1 - Update to 1.3.1 * Fri Jul 27 2012 gil cattaneo 1.2.3-1 - Update to 1.2.3 * Wed Jul 04 2012 gil cattaneo 1.2.2-1 - Update to 1.2.2 * Mon May 14 2012 gil cattaneo 1.2.1-1 - initial rpm