%define orig_name argouml %define majmin 0.15 %define appdir %{_datadir}/%{name} %define section free Name: %{orig_name}%{majmin} Version: 0.15.4 Release: 1jpp Epoch: 0 Summary: A UML design tool with cognitive support License: BSD URL: http://argouml.tigris.org/ Group: Development Vendor: JPackage Project Distribution: JPackage Source0: http://argouml.tigris.org/files/documents/4/0/argouml-0.15.4/ArgoUML-0.15.4-src.tar.gz Source1: %{name}-script Source2: %{orig_name}-icon-16.png Source3: %{orig_name}-icon-32.png Source4: %{orig_name}-icon-48.png Source5: %{name}.desktop Requires: antlr Requires: dresden-ocl-argo Requires: gef >= 0:0.10.2 Requires: i18n-lib >= 0:0.1.3 Requires: jmi Requires: jpackage-utils >= 0:1.5 Requires: log4j Requires: nsuml Requires: toolbar Requires: toolbutton Requires: xml-commons-apis BuildRequires: ant BuildRequires: antlr BuildRequires: dresden-ocl-argo BuildRequires: gef >= 0:0.10.2 BuildRequires: i18n-lib >= 0:0.1.3 BuildRequires: jmi BuildRequires: jpackage-utils >= 0:1.5 BuildRequires: log4j BuildRequires: nsuml BuildRequires: toolbar BuildRequires: toolbutton BuildRequires: xml-commons-apis BuildArch: noarch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot %description The goal of the ArgoUML project is to build an object oriented design tool that is: - A joy to use (we really mean it), - Actually helpful to designers when they are making design decisions, - Completely open source Java, - Leading edge (supports the latest UML specifications), - Modular and extensible, - Integrated with the web and other Tigris tools. %package mdkmenu Summary: Mandrake menu entry for ArgoUML Group: Development Requires: %{name} = %{epoch}:%{version}-%{release} %description mdkmenu %{summary}. %package legacymenu Summary: Legacy menu entry for ArgoUML Group: Text Editors/Integrated Development Environments (IDE) Requires: %{name} = %{epoch}:%{version}-%{release} Conflicts: redhat-menus Obsoletes: %{name}-rhmenu Provides: %{name}-rhmenu %description legacymenu %{summary}. %package javadoc Summary: Javadoc for %{name} Group: Development/Documentation %description javadoc Javadoc for %{name}. %prep %setup -q -c perl -pi -e \ 's|File=.*|File=\${user.home}/.argouml/argouml.log|' \ src_new/org/argouml/resource/*.lcf # remove binary files find . -name "*.jar" -exec rm -f {} \; # clean up manifest perl -pi -e 's|^Class-Path.*$||s' src_new/templates/manifest.template %build export CLASSPATH=$(build-classpath antlr dresden-ocl-argo gef i18n-lib jmi \ log4j nsuml toolbar toolbutton xml-commons-apis) ant -buildfile src_new/build.xml -Dbuild.compiler=modern jar prepare-docs %install rm -rf $RPM_BUILD_ROOT # jars install -D -p -m 644 build/%{orig_name}.jar $RPM_BUILD_ROOT%{appdir}/lib/%{name}.jar # scripts install -D -p -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{orig_name}-%{majmin} # javadoc install -p -d -m 755 $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} cp -pr build/javadocs/* $RPM_BUILD_ROOT%{_javadocdir}/%{name}-%{version} # mdk menu entry install -p -d -m 755 $RPM_BUILD_ROOT%{_menudir} cat >$RPM_BUILD_ROOT%{_menudir}/%{name} <<EOF ?package(%{name}):\\ command="%{_bindir}/%{orig_name}-%{majmin}"\\ needs="X11"\\ icon="%{name}.png"\\ section="Applications/Development/Development environments"\\ title="ArgoUML %{majmin}" \ longtitle="A UML design tool with cognitive support" EOF # mdk icons install -D -p -m 644 %{SOURCE2} $RPM_BUILD_ROOT%{_miconsdir}/%{name}.png install -D -p -m 644 %{SOURCE3} $RPM_BUILD_ROOT%{_iconsdir}/%{name}.png install -D -p -m 644 %{SOURCE4} $RPM_BUILD_ROOT%{_liconsdir}/%{name}.png # freedesktop.org menu entry install -D -p -m 644 %{SOURCE5} \ $RPM_BUILD_ROOT%{_datadir}/applications/jpackage-%{name}.desktop # icons for freedesktop.org and legacy menu entries install -D -p -m 644 %{SOURCE2} \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/16x16/apps/%{name}.png install -D -p -m 644 %{SOURCE3} \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/32x32/apps/%{name}.png install -D -p -m 644 %{SOURCE4} \ $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/48x48/apps/%{name}.png install -D -p -m 644 %{SOURCE4} \ $RPM_BUILD_ROOT%{_datadir}/pixmaps/%{name}.png # legacy menu entry install -D -p -m 644 %{SOURCE4} \ $RPM_BUILD_ROOT%{_sysconfdir}/X11/applnk/Development/%{name}.desktop %clean rm -rf $RPM_BUILD_ROOT %post cd %{appdir}/lib \ && ln -sf %{_javadir}/antlr.jar \ && ln -sf %{_javadir}/dresden-ocl-argo.jar \ && ln -sf %{_javadir}/gef.jar \ && ln -sf %{_javadir}/i18n-lib.jar \ && ln -sf %{_javadir}/jmi.jar \ && ln -sf %{_javadir}/log4j.jar \ && ln -sf %{_javadir}/nsuml.jar \ && ln -sf %{_javadir}/toolbar.jar \ && ln -sf %{_javadir}/toolbutton.jar \ && ln -sf %{_javadir}/xml-commons-apis.jar %postun # remove links only if uninstalling if [ $1 -eq 0 ]; then cd %{appdir}/lib \ && rm -f antlr.jar \ && rm -f dresden-ocl-argo.jar \ && rm -f gef.jar \ && rm -f i18n-lib.jar \ && rm -f jmi.jar \ && rm -f log4j.jar \ && rm -f nsuml.jar \ && rm -f toolbar.jar \ && rm -f toolbutton.jar \ && rm -f xml-commons-apis.jar fi %post mdkmenu %update_menus %postun mdkmenu %clean_menus %post javadoc rm -f %{_javadocdir}/%{name} ln -s %{name}-%{version} %{_javadocdir}/%{name} %postun javadoc if [ $1 -eq 0 ]; then rm -f %{_javadocdir}/%{name} fi %files %defattr(0644,root,root,0755) %doc src_new/README_database.sql src_new/README.txt src_new/*LICENSE.txt %attr(0755,root,root) %{_bindir}/* %{appdir} %{_datadir}/applications/*-%{name}.desktop %{_datadir}/icons/*/*/apps/* %{_datadir}/pixmaps/%{name}.png %files mdkmenu %defattr(0644,root,root,0755) %{_menudir}/%{name} %{_iconsdir}/%{name}.png %{_miconsdir}/%{name}.png %{_liconsdir}/%{name}.png %files legacymenu %defattr(0644,root,root,0755) %{_sysconfdir}/X11/applnk/Development/* %files javadoc %defattr(0644,root,root,0755) %{_javadocdir}/%{name}-%{version} %changelog * Tue Mar 16 2004 David Walluck <david@jpackage.org> 0:0.15.4-1jpp - 0.15.4 - require gef 0.10.2 * Fri Jan 23 2004 David Walluck <david@anti-microsoft.org> 0:0.15.3-1jpp - release