Name: jeuclid Version: 3.1.3 Release: 9%{?dist} Summary: MathML rendering solution Group: Development/Libraries License: ASL 2.0 and SPL URL: http://jeuclid.sourceforge.net/index.html Source0: http://downloads.sourceforge.net/%{name}/%{name}-parent-%{version}-src.zip #fedora specific build script based on debian Source1: build.xml Source2: jeuclid-mathviewer.desktop Source3: jeuclid-mathviewer.sh Source4: jeuclid-cli.sh #removes FreeHep support as per the build README, optional feature (not upstream) Patch0: jeuclid-core-FreeHep.patch #Allows for compiling code that uses Apple EAWT without the lib Patch1: AppleJavaExtensions.patch #removes OSX dep for the viewer Patch2: MacOSX.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildArch: noarch BuildRequires: jpackage-utils BuildRequires: java-devel >= 1:1.6.0 BuildRequires: ant BuildRequires: batik >= 1.7 BuildRequires: jakarta-commons-logging BuildRequires: jcip-annotations BuildRequires: xmlgraphics-commons >= 1.3 BuildRequires: fop = 0.95 BuildRequires: jakarta-commons-cli >= 1.1 BuildRequires: jakarta-commons-lang BuildRequires: desktop-file-utils Requires: jpackage-utils Requires: java >= 1:1.6.0 Requires: jakarta-commons-logging Requires: batik >= 1.7 Requires: xmlgraphics-commons >= 1.3 Requires: jcip-annotations %description Core module containing basic JEuclid rendering and document handling classes. %package mathviewer Summary: Viewer for MathML files Group: Applications/Publishing Requires: %{name} = %{version}-%{release} Requires: hicolor-icon-theme %description mathviewer The %{name}-mathviewer package contains the Swing MathViewer application. %package fop Summary: JEuclid plug-in for FOP Group: Applications/Publishing Requires: %{name} = %{version}-%{release} Requires: fop = 0.95 %description fop The %{name}-fop package is a jeuclid plug-in for FOP. %package cli Summary: Command line interface for Jeuclid Group: Applications/Publishing Requires: %{name} = %{version}-%{release} Requires: jakarta-commons-cli >= 1.1 Requires: jakarta-commons-lang Requires: jakarta-commons-io %description cli The %{name}-cli package provides a command line interface for jeuclid %prep %setup -q -n %{name}-parent-%{version} cp %{SOURCE1} %{_builddir}/%{name}-parent-%{version}/ #fix line endings sed 's/\r//' NOTICE > NOTICE.unix touch -r NOTICE NOTICE.unix; mv NOTICE.unix NOTICE mkdir lib build-jar-repository -s -p lib jcip-annotations commons-logging xmlgraphics-commons batik-all fop commons-cli commons-lang %patch0 -p1 %patch1 -p1 %patch2 -p1 find -name '*.jar' -o -name '*.class' -exec rm -f '{}' \; #removes the FreeHep support from the build per the build README rm -f %{name}-core/src/main/java/net/sourceforge/jeuclid/converter/FreeHep*; %build ant compile-core compile-mathviewer compile-cli compile-fop -verbose %install rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT%{_javadir} cp -p target/%{name}-core.jar \ $RPM_BUILD_ROOT%{_javadir}/%{name}-core-%{version}.jar cp -p target/%{name}-fop.jar \ $RPM_BUILD_ROOT%{_javadir}/%{name}-fop-%{version}.jar cp -p target/%{name}-mathviewer.jar \ $RPM_BUILD_ROOT%{_javadir}/%{name}-mathviewer-%{version}.jar cp -p target/%{name}-cli.jar \ $RPM_BUILD_ROOT%{_javadir}/%{name}-cli-%{version}.jar (cd $RPM_BUILD_ROOT%{_javadir} && for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`; done) install -dm 755 $RPM_BUILD_ROOT%{_bindir} install -pm 755 %{SOURCE3} $RPM_BUILD_ROOT%{_bindir}/jeuclid-mathviewer install -pm 755 %{SOURCE4} $RPM_BUILD_ROOT%{_bindir}/jeuclid-cli mkdir -p $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/48x48/apps/ cp -p src/icons/jeuclid_48x48.png $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/48x48/apps/ mkdir -p $RPM_BUILD_ROOT/%{_datadir}/applications desktop-file-install --dir=$RPM_BUILD_ROOT/%{_datadir}/applications \ %{SOURCE2} %clean rm -rf $RPM_BUILD_ROOT %post touch --no-create %{_datadir}/icons/hicolor || : if [ -x %{_bindir}/gtk-update-icon-cache ] ; then %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : fi %postun touch --no-create %{_datadir}/icons/hicolor || : if [ -x %{_bindir}/gtk-update-icon-cache ] ; then %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : fi %files %defattr(-,root,root,-) %doc NOTICE LICENSE.txt README.Release %{_javadir}/%{name}-core-%{version}.jar %{_javadir}/%{name}-core.jar %files mathviewer %defattr(-,root,root,-) %{_javadir}/%{name}-mathviewer-%{version}.jar %{_javadir}/%{name}-mathviewer.jar %{_bindir}/jeuclid-mathviewer %{_datadir}/icons/hicolor/48x48/apps/jeuclid_48x48.png %{_datadir}/applications/jeuclid-mathviewer.desktop %files fop %defattr(-,root,root,-) %{_javadir}/%{name}-fop-%{version}.jar %{_javadir}/%{name}-fop.jar %files cli %defattr(-,root,root,-) %{_javadir}/%{name}-cli-%{version}.jar %{_javadir}/%{name}-cli.jar %{_bindir}/jeuclid-cli %changelog * Tue Dec 9 2008 Brennan Ashton 3.1.3-9 - Added missing hicolor-icon-theme build require - Fixed timestamp issue - Added GTK icon scriplets * Fri Nov 27 2008 Brennan Ashton 3.1.3-8 - Added cli package - Fixed build script so subpackages dont all package into one jar - Added desktop file and java wrapper scripts * Thu Nov 26 2008 Brennan Ashton 3.1.3-7 - Fixed BuildRequires - Fixed Requires - Added mathviewer and fop - mathviewer patch includes SPL code. SPL added to license field - New build file to manage core mathviewer and fop * Wed Nov 26 2008 Brennan Ashton 3.1.3-6 - Fixed package name - Added system links to jar files * Wed Nov 26 2008 Brennan Ashton 3.1.3-5 - Fixed trailing white space - Fixed patch comments - Fixed search for jar file * Wed Nov 26 2008 Brennan Ashton 3.1.3-4 - Fixed source URL - Added verbose to ant * Wed Nov 26 2008 Brennan Ashton 3.1.3-3 - Fixed end-of-line-encoding in NOTICE * Tue Nov 25 2008 Brennan Ashton 3.1.3-2 - Added comments to patches - Removed java-devel from BuildRequires for java-1.6.0-openjdk-devel - Made arch noarch * Mon Nov 24 2008 Brennan Ashton 3.1.3-1 - Created spec file