# Copyright (c) 2000-2005, JPackage Project # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the # distribution. # 3. Neither the name of the JPackage Project nor the names of its # contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT # OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # %define gcj_support %{?_with_gcj_support:1}%{!?_with_gcj_support:%{?_without_gcj_support:0}%{!?_without_gcj_support:%{?_gcj_support:%{_gcj_support}}%{!?_gcj_support:0}}} # If you don't want to build with maven, and use straight ant instead, # give rpmbuild option '--without maven' %define with_maven %{!?_without_maven:1}%{?_without_maven:0} %define without_maven %{?_without_maven:1}%{!?_without_maven:0} %define parent plexus %define subname digest Name: plexus-digest Version: 1.0 Release: 8%{?dist} Epoch: 0 Summary: Plexus Digest / Hashcode Components License: ASL 2.0 and Plexus Group: Development/Java URL: http://plexus.codehaus.org/ Source0: %{name}-1.0-src.tar.gz # svn export http://svn.codehaus.org/plexus/tags/plexus-digest-1.0 plexus-digest/ # tar czf plexus-digest-1.0-src.tar.gz plexus-digest/ Source1: %{name}-jpp-depmap.xml Source2: %{name}-%{version}-build.xml Source3: %{name}-components.xml BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %if ! %{gcj_support} BuildArch: noarch %endif BuildRequires: jpackage-utils >= 0:1.7.2 BuildRequires: ant >= 0:1.6 %if %{with_maven} BuildRequires: maven2 >= 2.0.4-9 BuildRequires: maven2-plugin-compiler BuildRequires: maven2-plugin-install BuildRequires: maven2-plugin-jar BuildRequires: maven2-plugin-javadoc BuildRequires: maven2-plugin-resources BuildRequires: maven2-plugin-surefire = 2.3 BuildRequires: maven-surefire-provider-junit = 2.3 BuildRequires: maven2-common-poms >= 1.0 BuildRequires: maven-doxia BuildRequires: maven-doxia-sitetools BuildRequires: maven-release BuildRequires: qdox >= 1.5 %endif BuildRequires: plexus-maven-plugin BuildRequires: plexus-cdc < 0:1.0-0.3.a11 %if %{gcj_support} BuildRequires: java-gcj-compat-devel Requires(post): java-gcj-compat Requires(postun): java-gcj-compat %endif Requires(post): jpackage-utils >= 0:1.7.2 Requires(postun): jpackage-utils >= 0:1.7.2 %description The Plexus project seeks to create end-to-end developer tools for writing applications. At the core is the container, which can be embedded or for a full scale application server. There are many reusable components for hibernate, form processing, jndi, i18n, velocity, etc. Plexus also includes an application server which is like a J2EE application server, without all the baggage. %package javadoc Summary: Javadoc for %{name} Group: Development/Documentation Requires(post): /bin/rm,/bin/ln Requires(postun): /bin/rm %description javadoc Javadoc for %{name}. %prep %setup -q -n %{name} %if ! %{with_maven} cp %{SOURCE2} build.xml mkdir -p target/classes/META-INF/plexus cp %{SOURCE3} target/classes/META-INF/plexus/components.xml %endif %build %if %{with_maven} mkdir external_repo ln -s %{_javadir} external_repo/JPP export MAVEN_REPO_LOCAL=$(pwd)/.m2/repository mkdir -p $MAVEN_REPO_LOCAL mvn-jpp \ -e \ -Dmaven.repo.local=$MAVEN_REPO_LOCAL \ -Dmaven2.jpp.depmap.file=%{SOURCE1} \ install javadoc:javadoc # -Dmaven.test.failure.ignore=true \ %else export CLASSPATH=$(build-classpath classworlds plexus/utils plexus/container-default) CLASSPATH=$CLASSPATH:target/classes:target/test-classes ant -Dbuild.sysclasspath=only jar javadoc %endif %install rm -rf $RPM_BUILD_ROOT # jars install -d -m 755 $RPM_BUILD_ROOT%{_javadir}/plexus install -pm 644 target/*.jar \ $RPM_BUILD_ROOT%{_javadir}/%{parent}/%{subname}-%{version}.jar %add_to_maven_depmap org.codehaus.plexus %{name} 1.0 JPP/%{parent} %{subname} (cd $RPM_BUILD_ROOT%{_javadir}/%{parent} && 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 pom.xml $RPM_BUILD_ROOT%{_datadir}/maven2/poms/JPP.%{parent}-%{subname}.pom # javadoc install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} cp -pr target/site/apidocs/* \ $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}/ ln -s %{name}-%{version} $RPM_BUILD_ROOT%{_javadocdir}/%{name} # ghost symlink %if %{gcj_support} %{_bindir}/aot-compile-rpm %endif %clean rm -rf $RPM_BUILD_ROOT %post %update_maven_depmap %if %{gcj_support} if [ -x %{_bindir}/rebuild-gcj-db ] then %{_bindir}/rebuild-gcj-db fi %endif %postun %update_maven_depmap %if %{gcj_support} if [ -x %{_bindir}/rebuild-gcj-db ] then %{_bindir}/rebuild-gcj-db fi %endif %files %defattr(-,root,root,-) %{_javadir}/plexus %{_datadir}/maven2 %{_mavendepmapfragdir} %if %{gcj_support} %dir %attr(-,root,root) %{_libdir}/gcj/%{name} %attr(-,root,root) %{_libdir}/gcj/%{name}/digest-1.0.jar.* %endif %files javadoc %defattr(-,root,root,-) %doc %{_javadocdir}/* %changelog * Sun May 17 2009 Fernando Nasser 1.0-8 - Fix license * Tue Apr 30 2009 Yong Yang 1.0-7 - Rebuild with new maven2 2.0.8 built in non-bootstrap mode * Tue Apr 30 2009 Yong Yang 1.0-6 - force to BR plexus-cdc alpha 10 - rebuild without maven * Tue Apr 30 2009 Yong Yang 1.0-5 - Add BRs maven-doxia*, qdox - Enable jpp-depmap - Rebuild with new maven2 2.0.8 built in non-bootstrap mode - ignore test failure * Tue Mar 17 2009 Yong Yang 1.0-4 - rebuild with new maven2 2.0.8 built in bootstrap mode * Thu Feb 05 2009 Yong Yang 1.0-3 - Fix release tag * Wed Jan 14 2009 Yong Yang 1.0-2jpp.1 - Import from dbhole's maven 2.0.8 packages, initial building * Mon Jan 07 2008 Deepak Bhole 1.0-1jpp.1 - Import from JPackage - Update per Fedora spec * Wed Nov 14 2007 Ralph Apel - 0:1.0-1jpp - Initial build