Sophie

Sophie

distrib > Mandriva > 2009.1 > i586 > by-pkgid > 861e2b043d0ec623da7c5df4181ecfa4 > files > 4

struts-1.2.9-6mdv2009.0.src.rpm

# FIXME:
# W: struts class-path-in-manifest /usr/share/java/struts-1.2.9.jar

%define gcj_support     1
%define full_name       jakarta-%{name}
%define _localstatedir  %{_var}
%define tomcat3appsdir  %{_localstatedir}/lib/tomcat3/webapps
%define tomcat4appsdir  %{_localstatedir}/lib/tomcat4/webapps
%define tomcat5appsdir  %{_localstatedir}/lib/tomcat5/webapps
%define tomcat5ctxdir   %{_sysconfdir}/tomcat5/Catalina/localhost
%define section         free
%define webapps         blank documentation example examples tiles-documentation
%define webapplibs      commons-beanutils commons-digester commons-fileupload commons-validator oro struts

Name:           struts
Version:        1.2.9
Release:        %mkrel 6
Epoch:          0
Summary:        Web application framework
License:        Apache License
Group:          Development/Libraries/Java
Source0:        http://apache.org/dist/struts/source/struts-%{version}-src-MDVCLEAN.tar.bz2
Source2:        tomcat4-context-allowlinking.xml
Source3:        tomcat5-context-allowlinking.xml
Patch0:         %{name}-%{version}.build.patch
Patch1:         %{name}-%{version}.bz157205.patch
Url:            http://struts.apache.org/
Requires:       servletapi5
Requires:       jdbc-stdext
Requires:       jakarta-commons-beanutils >= 0:1.7.0
Requires:       jakarta-commons-digester >= 0:1.6
Requires:       jakarta-commons-fileupload >= 0:1.0
Requires:       jakarta-commons-logging >= 0:1.0.4
Requires:       jakarta-commons-validator >= 0:1.1.4
Requires:       jsp
Requires:       oro >= 0:2.0.7
BuildRequires:  java-rpmbuild >= 1.5
BuildRequires:  ant >= 1.6.1
BuildRequires:  antlr >= 2.7.2
BuildRequires:  ant-trax
BuildRequires:  ant-nodeps
BuildRequires:  jaxp_transform_impl
BuildRequires:  xalan-j2
BuildRequires:  sed
BuildRequires:  servletapi5
BuildRequires:  jdbc-stdext
BuildRequires:  jakarta-commons-beanutils >= 0:1.7.0
BuildRequires:  jakarta-commons-digester >= 0:1.6
BuildRequires:  jakarta-commons-fileupload >= 0:1.0
BuildRequires:  jakarta-commons-logging >= 0:1.0.4
BuildRequires:  jakarta-commons-validator >= 0:1.1.4
BuildRequires:  jsp
BuildRequires:  oro >= 0:2.0.7
Group:          Development/Java
Buildroot:      %{_tmppath}/%{name}-%{version}-buildroot
# RHEL4 and FC4
#Obsoletes:     struts11 <= 0:1.1-1jpp_7fc
# libgcj aot-compiled native libraries
%if %{gcj_support}
BuildRequires:  java-gcj-compat-devel >= 0:1.0.35
%else
BuildArch:      noarch
%endif

%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.

Struts is part of the Jakarta Project, sponsored by the Apache Software
Foundation.

%package manual
Summary:        Manual for %{name}
Group:          Development/Java

%description manual
Documentation for %{name}.

%package javadoc
Summary:        Javadoc for %{name}
Group:          Development/Java

%description javadoc
Javadoc for %{name}.

%if 0
%package webapps-tomcat3
Summary:        Sample %{name} webapps for tomcat3
Group:          Development/Java
Requires:       %{name} = %{version}-%{release}
Requires:       tomcat3

%description webapps-tomcat3
Sample %{name} webapps for tomcat3.

%package webapps-tomcat4
Summary:        Sample %{name} webapps for tomcat4
Group:          Development/Java
Requires:       %{name} = %{version}-%{release}
Requires:       tomcat4

%description webapps-tomcat4
Sample %{name} webapps for tomcat4.
%endif

%package webapps-tomcat5
Summary:        Sample %{name} webapps for tomcat5
Group:          Development/Java
Requires:       %{name} = %{version}-%{release}
Requires:       tomcat5

%description webapps-tomcat5
Sample %{name} webapps for tomcat5.

%prep
%setup -n %{name}-%{version}-src -q
%patch0
%patch1 -p1

mkdir lib; pushd lib
  ln -s $(find-jar jspapi) .
popd

%build
# build struts
export CLASSPATH=
export OPT_JAR_LIST="ant/ant-nodeps ant/ant-trax xalan-j2 xalan-j2-serializer"
%{ant} -Djdbc20ext.jar=$(find-jar jdbc-stdext) \
        -Dcommons-beanutils.jar=$(build-classpath commons-beanutils) \
        -Dcommons-digester.jar=$(build-classpath commons-digester) \
        -Dcommons-fileupload.jar=$(build-classpath commons-fileupload) \
        -Dcommons-logging.jar=$(build-classpath commons-logging) \
        -Dcommons-validator.jar=$(build-classpath commons-validator) \
        -Djakarta-oro.jar=$(build-classpath oro) \
        -Djsp.jar=$(build-classpath jspapi) \
        -Dservlet.jar=$(build-classpath servletapi5) \
        -Dantlr.jar=$(build-classpath antlr) \
        compile.library compile.webapps compile.javadoc

%install
%{__rm} -rf %{buildroot}
# jars
install -d -m 755 $RPM_BUILD_ROOT%{_javadir}
install -m 644 target/library/%{name}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar
(cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} ${jar/-%{version}/}; done)
# javadoc
install -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
cp -pr target/documentation/api/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version}
rm -rf target/documentation/api
# data
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/%{name}
install -m 644 target/library/*.tld $RPM_BUILD_ROOT%{_datadir}/%{name}
install -m 644 target/library/*.dtd $RPM_BUILD_ROOT%{_datadir}/%{name}

%if 0
# tomcat 3 webapps
install -d -m 755 $RPM_BUILD_ROOT%{tomcat3appsdir}
for webapp in %{webapps}; do
    cp -pr target/$webapp $RPM_BUILD_ROOT%{tomcat3appsdir}/%{name}-$webapp
    # tomcat3 doesn't support allowLinking, this might not work
       # XXX: move to %%post/preun
       for jar in %{webapplibs}; do
        (cd $RPM_BUILD_ROOT%{tomcat3appsdir}/%{name}-$webapp/WEB-INF/lib \
        && ln -sf ../../../../../..%{_javadir}/$jar.jar .)
       done
    (cd $RPM_BUILD_ROOT%{tomcat3appsdir}/%{name}-$webapp/WEB-INF \
    && for tld in ../../../../..%{_datadir}/%{name}/*.tld; do ln -sf $tld `basename $tld`; done)
done

# tomcat 4 webapps
install -d -m 755 $RPM_BUILD_ROOT%{tomcat4appsdir}
for webapp in %{webapps}; do
    cp -pr target/$webapp $RPM_BUILD_ROOT%{tomcat4appsdir}/%{name}-$webapp
    cat %{SOURCE2} | sed -e "s/@@@APPNAME@@@/$webapp/g;" > $RPM_BUILD_ROOT%{tomcat4appsdir}/%{name}-$webapp.xml
       # XXX: move to %%post/preun
       for jar in %{webapplibs}; do
        (cd $RPM_BUILD_ROOT%{tomcat4appsdir}/%{name}-$webapp/WEB-INF/lib \
        && ln -sf ../../../../../../..%{_javadir}/$jar.jar .)
    done
    (cd $RPM_BUILD_ROOT%{tomcat4appsdir}/%{name}-$webapp/WEB-INF \
    && for tld in ../../../../../..%{_datadir}/%{name}/*.tld; do ln -sf $tld `basename $tld`; done)
done
%endif

# tomcat 5 webapps
install -d -m 755 $RPM_BUILD_ROOT%{tomcat5appsdir}
install -d -m 755 $RPM_BUILD_ROOT%{tomcat5ctxdir}
for webapp in %{webapps}; do
    cp -pr target/$webapp $RPM_BUILD_ROOT%{tomcat5appsdir}/%{name}-$webapp
    cat %{SOURCE3} | sed -e "s/@@@APPNAME@@@/$webapp/g;" > $RPM_BUILD_ROOT%{tomcat5ctxdir}/%{name}-$webapp.xml
        # XXX: move to %%post/preun
        for jar in %{webapplibs}; do
        (cd $RPM_BUILD_ROOT%{tomcat5appsdir}/%{name}-$webapp/WEB-INF/lib \
        && ln -sf ../../../../../../..%{_javadir}/$jar.jar .)
    done
    (cd $RPM_BUILD_ROOT%{tomcat5appsdir}/%{name}-$webapp/WEB-INF \
    && for tld in ../../../../../..%{_datadir}/%{name}/*.tld; do ln -sf $tld `basename $tld`; done)
done

%{__perl} -pi -e 's|\r$||g' \
  README LICENSE.txt NOTICE.txt STATUS.txt INSTALL target/documentation/uml/Credits.html
find $RPM_BUILD_ROOT -name download.cgi | xargs %{__chmod} 755
find $RPM_BUILD_ROOT -name download.cgi | xargs %{__perl} -pi -e 's|\r$||g'

%if %{gcj_support}
%{_bindir}/aot-compile-rpm

%clean
%{__rm} -rf %{buildroot}

%post
%{update_gcjdb}

%postun
%{clean_gcjdb}

%if 0
%post webapps-tomcat3
%{update_gcjdb}

%postun webapps-tomcat3
%{clean_gcjdb}

%post webapps-tomcat4
%{update_gcjdb}

%postun webapps-tomcat4
%{clean_gcjdb}
%endif

%post webapps-tomcat5
%{update_gcjdb}

%postun webapps-tomcat5
%{clean_gcjdb}
%endif

%files
%defattr(-,root,root)
%doc INSTALL LICENSE.txt README NOTICE.txt STATUS.txt
%{_javadir}/*
%{_datadir}/%{name}
%if %{gcj_support}
%dir %{_libdir}/gcj/%{name}
%attr(-,root,root) %{_libdir}/gcj/%{name}/%{name}-%{version}.jar.*
%endif

%files manual
%defattr(-,root,root)
%doc target/documentation/*.html
%doc target/documentation/*.gif
%doc target/documentation/uml
%doc target/documentation/userGuide
%doc target/documentation/images

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

%if 0
%files webapps-tomcat3
%defattr(-,tomcat3,tomcat3)
%dir %{tomcat3appsdir}/%{name}-blank
%{tomcat3appsdir}/%{name}-blank/*
%dir %{tomcat3appsdir}/%{name}-documentation
%{tomcat3appsdir}/%{name}-documentation/*
%dir %{tomcat3appsdir}/%{name}-example
%{tomcat3appsdir}/%{name}-example/*
%dir %{tomcat3appsdir}/%{name}-examples
%{tomcat3appsdir}/%{name}-examples/*
%dir %{tomcat3appsdir}/%{name}-tiles-documentation
%{tomcat3appsdir}/%{name}-tiles-documentation/*
%attr(-,root,root) %{_libdir}/gcj/%{name}/*classes.jar.*

%files webapps-tomcat4
%defattr(-,tomcat,tomcat)
%dir %{tomcat4appsdir}/%{name}-blank
%{tomcat4appsdir}/%{name}-blank/*
%dir %{tomcat4appsdir}/%{name}-documentation
%{tomcat4appsdir}/%{name}-documentation/*
%dir %{tomcat4appsdir}/%{name}-example
%{tomcat4appsdir}/%{name}-example/*
%dir %{tomcat4appsdir}/%{name}-examples
%{tomcat4appsdir}/%{name}-examples/*
%dir %{tomcat4appsdir}/%{name}-tiles-documentation
%{tomcat4appsdir}/%{name}-tiles-documentation/*
%{tomcat4appsdir}/%{name}-*.xml
%attr(-,root,root) %{_libdir}/gcj/%{name}/*classes.jar.*
%endif

%files webapps-tomcat5
%defattr(-,tomcat,tomcat)
%dir %{tomcat5appsdir}/%{name}-blank
%{tomcat5appsdir}/%{name}-blank/*
%dir %{tomcat5appsdir}/%{name}-documentation
%{tomcat5appsdir}/%{name}-documentation/*
%dir %{tomcat5appsdir}/%{name}-example
%{tomcat5appsdir}/%{name}-example/*
%dir %{tomcat5appsdir}/%{name}-examples
%{tomcat5appsdir}/%{name}-examples/*
%dir %{tomcat5appsdir}/%{name}-tiles-documentation
%{tomcat5appsdir}/%{name}-tiles-documentation/*
%config(noreplace) %{tomcat5ctxdir}/%{name}-*.xml
%if %{gcj_support}
%attr(-,root,root) %{_libdir}/gcj/%{name}/*classes.jar.*
%endif




%changelog
* Thu Jul 24 2008 Thierry Vignaud <tvignaud@mandriva.com> 0:1.2.9-6mdv2009.0
+ Revision: 245425
- rebuild
- kill re-definition of %%buildroot on Pixel's request
- remove URL from description

  + Olivier Blin <oblin@mandriva.com>
    - restore BuildRoot

* Sun Dec 16 2007 Anssi Hannula <anssi@mandriva.org> 5.4mdv2008.1-current
+ Revision: 121025
- buildrequire java-rpmbuild, i.e. build with icedtea on x86(_64)

* Sat Sep 15 2007 Anssi Hannula <anssi@mandriva.org> 0:1.2.9-5.3mdv2008.0
+ Revision: 87366
- rebuild to filter out autorequires of GCJ AOT objects
- remove unnecessary Requires(post) on java-gcj-compat

* Sun Sep 09 2007 Pascal Terjan <pterjan@mandriva.org> 0:1.2.9-5.2mdv2008.0
+ Revision: 82864
- rebuild


* Sat Dec 16 2006 David Walluck <walluck@mandriva.org> 1.2.9-5.1mdv2007.0
+ Revision: 98080
- fix some rpmlint warnings

* Thu Nov 09 2006 David Walluck <walluck@mandriva.org> 0:1.2.9-5mdv2007.1
+ Revision: 78758
- bump release
- rebuild
- Import struts

* Fri Sep 01 2006 David Walluck <walluck@mandriva.org> 0:1.2.9-3mdv2007.0
- (Build)Requires: jsp
- fix build with xalan-j2

* Sun Jun 04 2006 David Walluck <walluck@mandriva.org> 0:1.2.9-2mdv2007.0
- rebuild to fix release

* Sat Jun 03 2006 David Walluck <walluck@mandriva.org> 0:1.2.9-1mdv2007.0
- 1.2.9
- remove webapps-tomcat3 and webapps-tomcat4

* Fri Feb 24 2006 David Walluck <walluck@mandriva.org> 0:1.2.8-2.8.1mdk
- 1.2.8

* Wed Jan 18 2006 David Walluck <walluck@mandriva.org> 0:1.2.7-1.4mdk
- fix doc build

* Fri Jan 13 2006 David Walluck <walluck@mandriva.org> 0:1.2.7-1.3mdk
- fix build

* Fri Nov 11 2005 David Walluck <walluck@mandriva.org> 0:1.2.7-1.2mdk
- aot compile

* Thu Aug 18 2005 David Walluck <walluck@mandriva.org> 0:1.2.7-1.1mdk
- 1.2.7
- add conditional %%gcj_support

* Sat Jul 23 2005 Gary Benson <gbenson@redhat.com> - 0:1.2.4-2jpp_3fc
- Remove workarounds for #163689.

* Thu Jul 21 2005 Gary Benson <gbenson@redhat.com> - 0:1.2.4-2jpp_2fc
- Build on ia64, ppc64, s390 and s390x.
- Switch to aot-compile-rpm (also BC-compiles webapps).

* Thu Jun 16 2005 Gary Benson <gbenson@redhat.com> - 0:1.2.4-2jpp_1fc
- Make workaround for #157205 specific to libgcj.

* Wed Jun 15 2005 Gary Benson <gbenson@redhat.com>
- Remove jars, wars and classes from the tarball.

* Sat May 28 2005 Gary Benson <gbenson@redhat.com> - 0:1.2.4-2jpp
- Build with servletapi5.
- Add build dependency on ant-nodeps.

* Sat May 28 2005 Gary Benson <gbenson@redhat.com> - 0:1.2.4-1jpp_1fc
- Build into Fedora.

* Tue Feb 01 2005 Joe Orton <jorton@redhat.com>
- Change webapps subpackages' tomcat dependencies to prereqs.

* Fri Nov 26 2004 Fernando Nasser <fnasser@redhat.com> - 0:1.2.4-1jpp
- Upgrade to 1.2.4

* Sun Sep 05 2004 Fernando Nasser <fnasser@redhat.com> - 0:1.1-3jpp
- Rebuilt with Ant 1.6.2

* Sat Jan 10 2004 Kaj J. Niemi <kajtzu@fi.basen.net> - 0:1.1-2jpp
- Fixed runtime requires
- Fix examples by making symlinks work in their respective (sub-)directories,
  the template comes for tomcat4 from Source #2 and for tomcat5 from Source #3

* Fri Jan 09 2004 Kaj J. Niemi <kajtzu@fi.basen.net> - 0:1.1-1jpp
- Updated to 1.1
- Use tomcat4 real webapps dir instead of -compat provided app dir
- To compile against < JDK 1.4 jdkmajorver needs to be set to 1.3