Sophie

Sophie

distrib > Mandriva > 2007.1 > x86_64 > by-pkgid > 4fabac6672b6e21e203445af9c59db92 > files > 7

xdoclet-1.2.3-4mdv2007.1.src.rpm

%define section free
%define gcj_support 1

# If you do not want to build samples in demo subpackage because of their 
# runtime deps, give rpmbuild option '--without demo'
%define with_demo %{!?_without_demo:1}%{?_without_demo:0}
# We do not ship webwork nor jsf, which are required for the demo
# One can always get the demo subpackage directly from http://jpackage.org
%define with_demo 0

Name:           xdoclet
Version:        1.2.3
Release:        %mkrel 4
Epoch:          0
Summary:        XDoclet Attribute Orientated Programming Framework
License:        BSD-style
Group:          Development/Java
URL:            http://xdoclet.sourceforge.net/xdoclet/index.html
Source0:        http://ovh.dl.sourceforge.net/sourceforge/xdoclet/%{name}-src-%{version}-MDKCLEAN.tar.bz2
Source1:        %{name}-modules-objectweb-4.3.tar.bz2
Patch0:         xdoclet-build_xml.patch
Patch1:         xdoclet-XDocletModulesEjbMessages.patch
Patch2:         xdoclet-ant.not-required.patch
Patch3:         xdoclet-WebLogicSubTask.patch
%if %{gcj_support}
Requires(post): java-gcj-compat
Requires(postun): java-gcj-compat
BuildRequires:  java-gcj-compat-devel
%else
Buildarch:      noarch
%endif
BuildRoot:      %{_tmppath}/%{name}-root
BuildRequires:  java-devel
BuildRequires:  jpackage-utils >= 0:1.6
BuildRequires:  ant >= 0:1.6
# for XMLValidate
BuildRequires:  ant-nodeps >= 0:1.6
# for TraXLiaison
BuildRequires:  ant-trax >= 0:1.6
BuildRequires:  junit
BuildRequires:  javacc
BuildRequires:  jrefactory
BuildRequires:  bsf 
BuildRequires:  jakarta-commons-collections 
BuildRequires:  jakarta-commons-logging 
BuildRequires:  log4j
BuildRequires:  mockobjects 
BuildRequires:  struts 
BuildRequires:  velocity 
BuildRequires:  xalan-j2
BuildRequires:  xml-commons-apis 
BuildRequires:  xjavadoc = 0:1.1
BuildRequires:  ant-trax
Requires:       bsf
Requires:       jakarta-commons-collections
Requires:       jakarta-commons-logging
Requires:       log4j
Requires:       mockobjects
Requires:       velocity
Requires:       xalan-j2
Requires:       xml-commons-apis
Requires:       xjavadoc = 0:1.1

%description
This package contains the XDoclet Attribute Orientated Programming Framework

%if %{with_demo}
%package demo
Summary:        XDoclet Sample Projects
Group:          Development/Java
BuildRequires:  servletapi4
BuildRequires:  struts
BuildRequires:  velocity
BuildRequires:  webwork
BuildRequires:  ejb
BuildRequires:  jsf
BuildRequires:  jms
BuildRequires:  mx4j
Requires:       %{name} = %{epoch}:%{version}-%{release}
Requires:       ejb
Requires:       jsf
Requires:       jms
Requires:       webwork
Requires:       mx4j
Requires:       struts
Requires:       servletapi4

%description demo
This package contains sample XDoclet projects.
%endif

%package javadoc
Summary:        XDoclet Javadoc
Group:          Development/Java

%description javadoc
This package contains XDoclet javadoc

%package manual
Summary:        XDoclet Sample Manuals and Documentation
Group:          Development/Java

%description manual
This package contains XDoclet documentation.

%prep
%setup -q

# Replace JOnAS specific tasks with code blessed by ObjectWeb
pushd modules
mv objectweb objectweb.orig
tar xjf %{SOURCE1}
popd

for j in xjavadoc-1.1 jrefactory javacc junit bsf commons-collections commons-logging log4j velocity xalan-j2 xalan-j2-serializer xjavadoc xml-commons-apis mockobjects-core; do
        ln -s $(build-classpath $j) lib/$j.jar
done

%if %{with_demo}
for j in servletapi4 struts velocity webwork ejb jsf-api jms; do
        ln -s $(build-classpath $j) samples/lib/$j.jar
done
for j in mx4j/mx4j-jmx mx4j/mx4j-tools; do
        i=$(build-classpath $j)
        ln -s $i samples/lib/$(basename $i)
done
%endif

%patch0 -b .sav
%patch1 -b .sav
%patch2
%patch3 -b .sav

%build
export OPT_JAR_LIST="ant/ant-nodeps ant/ant-trax"
# Apparently, symlinking isn't enough to override the default
export CLASSPATH=$(build-classpath xalan-j2 xalan-j2-serializer)
%ant xjavadoc core modules docs l10n

%if %{with_demo}
%ant samples
%endif

%install
%{__rm} -rf %{buildroot}
mkdir -p $RPM_BUILD_ROOT%{_javadir}/%{name}
install -m 644 target/lib/xdoclet*.jar $RPM_BUILD_ROOT%{_javadir}/%{name}
(cd $RPM_BUILD_ROOT%{_javadir}/%{name} && for jar in *-%{version}.jar; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done)

%if %{with_demo}
mkdir -p $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}
cp -pr samples/* $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}
%endif

mkdir -p $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
# FIXME: javadocs do not build
#cp -pr target/docs/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
rm -rf target/docs/api

mkdir -p $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
cp -p LICENSE.txt $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
cp -pr target/docs/* $RPM_BUILD_ROOT%{_docdir}/%{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

%if %{gcj_support}
%post
%{update_gcjdb}

%postun
%{clean_gcjdb}
%endif

%post javadoc
rm -f %{_javadocdir}/%{name}
ln -s %{name}-%{version} %{_javadocdir}/%{name}

%postun javadoc
if [ "$1" = "0" ]; then
    rm -f %{_javadocdir}/%{name}
fi

%files
%defattr(-, root, root, -)
%{_javadir}/%{name}
%if %{gcj_support}
%dir %{_libdir}/gcj/%{name}
%attr(-,root,root) %{_libdir}/gcj/%{name}/*
%endif
#%doc %{_docdir}/%{name}-%{version}/LICENSE.txt

%if %{with_demo}
%files demo
%defattr(-, root, root, -)
%{_datadir}/%{name}-%{version}
%endif

%files javadoc
%defattr(-, root, root, -)
%doc %{_javadocdir}/%{name}-%{version}
%ghost %doc %{_javadocdir}/%{name}

%files manual
%defattr(-, root, root, -)
%doc %{_docdir}/%{name}-%{version}


%changelog
* Sat Dec 16 2006 David Walluck <walluck@mandriva.org> 1.2.3-4mdv2007.0
+ Revision: 98108
- rebuild
- rebuild
- Import xdoclet



* Wed Aug 16 2006 David Walluck <walluck@mandriva.org> 0:1.2.3-3mdv2007.0
- add xalan-j2-serializer to CLASSPATH
- fix macro in changelog

* Sat Jun 03 2006 David Walluck <walluck@mandriva.org> 0:1.2.3-2mdv2007.0
- rebuild for libgcj.so.7

* Wed Nov 02 2005 David Walluck <walluck@mandriva.org> 0:1.2.2-2.2mdk
- BuildRequires: ant-nodeps, ant-trax

* Sat Sep 10 2005 David Walluck <walluck@mandriva.org> 0:1.2.2-2.1mdk
- release

* Wed Jun 15 2005 Gary Benson <gbenson@redhat.com> - 0:1.2.2-2jpp_1fc
- Add missing javadoc %%ghost symlink.
- Build into Fedora.

* Thu Jun  9 2005 Gary Benson <gbenson@redhat.com>
- Remove jarfiles and classfiles from the tarball.

* Tue Jun  7 2005 Gary Benson <gbenson@redhat.com>
- Don't build maven stuff.
- Add missing dependency on ant-trax.

* Wed May 04 2005 Fernando Nasser <fnasser@redhat.com> - 0:1.2.2-2jpp_1rh
- Equivalent to 2jpp upstream

* Thu Apr 28 2005 Fernando Nasser <fnasser@redhat.com> - 0:1.2.2-1jpp_7rh
- Rebuild with the docs as maven is now available
- Fix patch to correct xjavadoc building logic
- Don't try and build twice

* Fri Feb 25 2005 Fernando Nasser <fnasser@redhat.com> - 0:1.2.2-1jpp_4rh
- Remove extra file from objectweb module

* Fri Feb 25 2005 Fernando Nasser <fnasser@redhat.com> - 0:1.2.2-1jpp_3rh
- Do not save copies of the java files when patching.

* Thu Feb 24 2005 Fernando Nasser <fnasser@redhat.com> - 0:1.2.2-1jpp_2rh
- Replace JOnAS specific tasks with code blessed by ObjectWeb

* Wed Feb 16 2005 Fernando Nasser <fnasser@redhat.com> - 0:1.2.2-1jpp_1rh
- Merge with upstream for upgrade
- Add patch to prevent attempt to load DTD from the net, when it comes with
  the source and is locally available
- Temporarely disable documentation and mave plugin building for lack of maven

* Tue Feb 15 2005 Ralph Apel <r.apel at r-apel.de> - 0:1.2.2-1jpp
- Upgrade to 1.2.2
- Add jsf requirement for demo
- Drop jndi requirement for demo
- Drop servletapi and mx4j requirement for main package
- Buildrequire maven and use it to build docs

* Thu Oct 14 2004 Fernando Nasser <fnasser@redhat.com> - 0:1.2.1-2jpp_1rh
* First Red Hat build

* Thu Aug 26 2004 Ralph Apel <r.apel at r-apel.de> - 0:1.2.1-2jpp
- Build with ant-1.6.2

* Fri Jul 02 2004 Ralph Apel <r.apel at r-apel.de> - 0:1.2.1-1jpp
- Upgrade to 1.2.1
- Relax build-time dependencies
- Relax dependency versions
- Make subpackage xdoclet-demo optional

* Fri Mar 05 2004 Ralph Apel <r.apel at r-apel.de> - 0:1.2-1jpp
- First JPackage release.