%define rhugversion 20031111 %define rhugsource1 apache-%{name}-%{version} upstream %define rhugpatches 6 Summary: Build tool for Java applications Name: ant Version: 1.5.2 Release: 22 URL: http://ant.apache.org/ Source: rhug-jakarta-%{name}-%{rhugversion}.tar.bz2 Source1: apache-%{name}-%{version}-src.tar.bz2 Source2: ant.conf Source3: README.anthome Patch1: %{name}-1.5.2-release.patch Patch2: %{name}-1.5.2-buildclasspath.patch Patch3: %{name}-1.5.2-jarname.patch Patch5: %{name}-1.5.2-hammer.patch Patch6: %{name}-1.5.2-interpreter.patch Patch7: %{name}-1.5.2-bz104986.patch Patch8: %{name}-1.5.2-gcj-ssa.patch License: Apache Software License Group: Development/Tools BuildRoot: %{_tmppath}/%{name}-%{version}-root BuildPrereq: gcc-c++-ssa BuildPrereq: gcc-java-ssa >= 3.5ssa-0.20030801.34 BuildPrereq: xerces-j >= 2.2.1-10 BuildPrereq: commons-logging >= 1.0.2-12 BuildPrereq: jakarta-regexp >= 1.2-12 BuildPrereq: xalan-j >= 2.4.1-9 BuildPrereq: bcel >= 5.0-10 BuildPrereq: jaf BuildPrereq: javamail BuildPrereq: junit Requires: gcc-java-ssa >= 3.5ssa-0.20030801.34 Requires: xerces-j >= 2.2.1-10 Requires: commons-logging >= 1.0.2-12 Requires: jakarta-regexp >= 1.2-12 Requires: xalan-j >= 2.4.1-9 Requires: bcel >= 5.0-10 Requires: jaf Requires: javamail Requires: junit Requires: ant-libs = %{version}-%{release} ExclusiveArch: i386 x86_64 ppc ia64 %description Ant is a platform-independant build tool for Java applications that is used by Apache Jakarta and XML projects. %package libs Summary: The shared libraries used by Ant. Group: System Environment/Libraries Prereq: redhat-java-rpm-scripts >= 1.0.2-2 Requires: libgcj-ssa >= 3.5ssa-0.20030801.34 Requires: xerces-j >= 2.2.1-10 Requires: commons-logging >= 1.0.2-12 Requires: jakarta-regexp >= 1.2-12 Requires: xalan-j >= 2.4.1-9 Requires: bcel >= 5.0-10 Requires: jaf Requires: javamail Requires: junit %description libs The ant-libs package contains the libraries required by Ant. %package devel Summary: CNI headers for developing Ant applications Group: Development/Libraries Requires: ant-libs = %{version}-%{release} %description devel The ant-devel package contains the headers required to develop Cygnus Native Interface (CNI) extensions that use Ant. %prep %setup -q -a 1 mv %{rhugsource1} %patch1 -p0 -b .release %patch2 -p0 -b .buildclasspath %patch3 -p0 -b .jarname %patch5 -p0 -b .hammer %patch6 -p1 -b .interpreter %patch7 -p0 -b .bz104986 %patch8 -p0 -b .gcj-ssa mv ChangeLog ChangeLog.rhug mv TODO TODO.rhug for f in version.txt defaultManifest.mf; do f=upstream/src/main/org/apache/tools/ant/$f sed -e "s:@VERSION@:%{version}-%{release}:g"\ -e "s:@DATE@:`date '+%B %e %Y'`:g" \ < $f > $f.tmp && mv -f $f.tmp $f done %build %ifarch x86_64 ia64 # HACK: These three files cause gcj-ssa to ICE on 64-bit boxes when # -O2 is used, so we build them separately with optimisation disabled. CC=gcc-ssa CXX=g++-ssa GCJ=gcj-ssa GCJH=gcjh-ssa GCJFLAGS="-g -O0" \ ./configure --disable-static --prefix=%{_prefix} --libdir=%{_libdir} make upstream/src/main/org/apache/tools/ant/taskdefs/Checksum.lo \ upstream/src/main/org/apache/tools/ant/taskdefs/Expand.lo \ upstream/src/main/org/apache/tools/ant/taskdefs/FixCRLF.lo \ upstream/src/main/org/apache/tools/ant/taskdefs/optional/sitraka/bytecode/ClassPathLoader.lo # End of Hack %endif CC=gcc-ssa CXX=g++-ssa GCJ=gcj-ssa GCJH=gcjh-ssa \ ./configure --disable-static --prefix=%{_prefix} --libdir=%{_libdir} make %install rm -rf ${RPM_BUILD_ROOT} %makeinstall rm -f ${RPM_BUILD_ROOT}%{_libdir}/*.la find ${RPM_BUILD_ROOT}%{_libdir} -type l | xargs rm -f # Install stuff for classic-ant install -m 755 upstream/src/script/ant ${RPM_BUILD_ROOT}%{_bindir}/classic-ant mkdir -p ${RPM_BUILD_ROOT}%{_sysconfdir} install -m 644 $RPM_SOURCE_DIR/ant.conf ${RPM_BUILD_ROOT}%{_sysconfdir} mkdir -p ${RPM_BUILD_ROOT}%{_datadir}/ant/lib install -m 644 $RPM_SOURCE_DIR/README.anthome \ ${RPM_BUILD_ROOT}%{_datadir}/ant/README for i in ant ant-optional; do ln -s ../../java/$i-%{version}.jar \ ${RPM_BUILD_ROOT}%{_datadir}/ant/lib/$i.jar done for i in activation bcel commons-logging jakarta-regexp \ java_cup junit mail xalan xerces; do ln -s ../../java/`ls -l %{_datadir}/java/$i.jar | sed -e 's:.* -> ::'` \ ${RPM_BUILD_ROOT}%{_datadir}/ant/lib/$i.jar done %post -n ant-libs %{_sbindir}/javaconfig \ %{_libdir}/lib-org-apache-tools-ant.so \ %{_libdir}/lib-org-apache-tools-ant-taskdefs-optional.so \ %{_libdir}/lib-org-apache-tools-bzip2.so \ %{_libdir}/lib-org-apache-tools-mail.so \ %{_libdir}/lib-org-apache-tools-tar.so \ %{_libdir}/lib-org-apache-tools-zip.so \ %{_datadir}/java/ant.jar \ %{_datadir}/java/ant-optional.jar %postun -n ant-libs %{_sbindir}/javaconfig \ %{_libdir}/lib-org-apache-tools-ant.so \ %{_libdir}/lib-org-apache-tools-ant-taskdefs-optional.so \ %{_libdir}/lib-org-apache-tools-bzip2.so \ %{_libdir}/lib-org-apache-tools-mail.so \ %{_libdir}/lib-org-apache-tools-tar.so \ %{_libdir}/lib-org-apache-tools-zip.so \ %{_datadir}/java/ant.jar \ %{_datadir}/java/ant-optional.jar # Prior to 1.5.2-20, %{_bindir}/ant was a symbolic link managed by # javaconfig. This pair of trigger scripts stops older ant's %postun # scripts from choking on the new non-symbolic-link binary. %triggerun -- ant < 1.5.2-20 mv -f %{_bindir}/ant %{_bindir}/ant.tmp %triggerpostun -- ant < 1.5.2-20 mv -f %{_bindir}/ant.tmp %{_bindir}/ant %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %doc *.rhug upstream/{LICENSE,README,WHATSNEW,welcome.html,docs} %config(noreplace) %{_sysconfdir}/ant.conf %{_bindir}/* %{_datadir}/ant %files libs %defattr(-,root,root) %{_libdir}/*.so %{_datadir}/java/*.jar %files devel %defattr(-,root,root) %{_includedir}/org/apache/tools/* %changelog * Tue Nov 11 2003 Gary Benson 1.5.2-22 - Install links to JAF, JavaMail and JUnit jarfiles for classic-ant. - Build all optional tasks that we are able to. * Thu Nov 6 2003 Gary Benson 1.5.2-21 - Enable JavaMail in mail sending tasks. - Enable the JUnit tasks. * Thu Sep 25 2003 Gary Benson 1.5.2-20 - Fix bad bytecode in jarfile (#104986). - Change group to Development/Tools. - Split libraries into a separate subpackage. - Install stuff to allow ant to be run under a normal JVM (#104635). * Fri Sep 19 2003 Gary Benson 1.5.2-19 - Remove workarounds for broken dependencies in xerces-j and xalan-j. - Use gij as the name of the interpreter to spawn when running under libgcj. * Fri Sep 5 2003 Gary Benson 1.5.2-18 - Ensure we have a working javaconfig. * Thu Sep 4 2003 Gary Benson - Remove workarounds used to support alpha releases. * Tue Aug 26 2003 Gary Benson 1.5.2-17 - Reinstate 64-bit workaround and rebuild with new compiler. * Thu Aug 7 2003 Gary Benson 1.5.2-16 - Remove 64-bit workaround and rebuild with new compiler. * Mon Jul 28 2003 Gary Benson 1.5.2-15 - Add missing resources to jarfile (#100977). * Fri Jul 25 2003 Gary Benson - Clarify the -devel subpackage's summary and description. - Remove unnecessary -devel dependencies (#99077). * Tue Jul 1 2003 Gary Benson - Remove redundant --libdir configure option. * Mon Jun 30 2003 Gary Benson 1.5.2-14 - Rebuild with new compiler and enable ia64 build. - Enable hammer compiler hack on ia64 also. * Fri Jun 13 2003 Gary Benson - Add the rpm's release to the version embedded in the libraries. * Fri Jun 6 2003 Gary Benson 1.5.2-13 - Rebuild with new compiler. * Thu Jun 5 2003 Gary Benson - Add build time dependency on C++ compiler. * Thu May 29 2003 Gary Benson 1.5.2-12 - Rebuild with new compiler. * Fri May 23 2003 Gary Benson 1.5.2-11 - Move unversioned library symlink into main package. * Sat May 3 2003 Gary Benson 1.5.2-10 - Rebuild again to pick up rebuilt BCEL and Xalan. * Fri May 2 2003 Tom Tromey 1.5.2-9 - Rebuild with new compiler. * Wed Apr 30 2003 Gary Benson 1.5.2-8 - Enable the Xalan and BCEL tasks. * Mon Apr 14 2003 Gary Benson - Require gcj-ssa since we use it to compile java code. * Fri Apr 11 2003 Gary Benson 1.5.2-7 - Fix linking on hammer. * Fri Apr 11 2003 Gary Benson 1.5.2-6 - Reenable tasks that were disabled on hammer by working around the compiler failure more effectively. * Wed Apr 9 2003 Gary Benson 1.5.2-5 - Compile resources with libtool to enable hammer builds. * Mon Apr 7 2003 Tom Tromey 1.5.2-4 - Rebuild with new compiler. * Fri Apr 4 2003 Gary Benson - Use gcj-ssa instead of gcj for the compiler. * Wed Apr 2 2003 Gary Benson - Rebuild against the new xerces. * Fri Mar 28 2003 Gary Benson 1.5.2-2 - Substitute @VERSION@ and @DATE@ into the files that need it. * Mon Mar 24 2003 Gary Benson 1.5.2-1 - Initial Red Hat Linux build. * Fri Mar 21 2003 Gary Benson - Upgraded to latest version. * Wed Nov 27 2002 Gary Benson - Initial RHUG build.