diff --git a/.cvsignore b/.cvsignore index e69de29..8b0deea 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +antlrworks-1.4-src.zip diff --git a/antlrworks-1.4-browsers.patch b/antlrworks-1.4-browsers.patch new file mode 100644 index 0000000..5552ceb --- /dev/null +++ b/antlrworks-1.4-browsers.patch @@ -0,0 +1,12 @@ +diff -up ./src/aw/org/antlr/xjlib/appkit/utils/BrowserLauncher.java.orig ./src/aw/org/antlr/xjlib/appkit/utils/BrowserLauncher.java +--- ./src/aw/org/antlr/xjlib/appkit/utils/BrowserLauncher.java.orig 2010-05-09 21:50:20.000000000 +0200 ++++ ./src/aw/org/antlr/xjlib/appkit/utils/BrowserLauncher.java 2010-05-14 19:35:26.931240743 +0200 +@@ -464,7 +464,7 @@ public class BrowserLauncher { + case OTHER: + default: + // Jean Bovet: look for multiple browser in case netscape is not installed +- browser = new String[] {"firefox", "mozilla", "netscape", "opera", "konqueror", "galeon", "firebird"}; ++ browser = new String[] {"xdg-open", "firefox", "mozilla", "netscape", "opera", "konqueror", "epiphany", "galeon", "firebird"}; + break; + } + return browser; diff --git a/antlrworks-1.4-build.patch b/antlrworks-1.4-build.patch new file mode 100644 index 0000000..7801e2b --- /dev/null +++ b/antlrworks-1.4-build.patch @@ -0,0 +1,13 @@ +diff -up ./build.xml.orig ./build.xml +--- ./build.xml.orig 2010-05-09 21:50:20.000000000 +0200 ++++ ./build.xml 2010-05-14 16:36:46.210118611 +0200 +@@ -63,9 +63,6 @@ + + + +- +- +- + + + diff --git a/antlrworks.desktop b/antlrworks.desktop new file mode 100644 index 0000000..4c5c5e4 --- /dev/null +++ b/antlrworks.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=ANTLRWorks +Comment=Grammar development environment for ANTLR v3 grammars +Exec=antlrworks +Icon=antlrworks +Terminal=false +Type=Application +Categories=Development;IDE;Java; diff --git a/antlrworks.sh b/antlrworks.sh new file mode 100644 index 0000000..aa9b634 --- /dev/null +++ b/antlrworks.sh @@ -0,0 +1,22 @@ +#!/bin/sh + +# Source functions library +if [ -f /usr/share/java-utils/java-functions ] ; then + . /usr/share/java-utils/java-functions +else + echo "Can't find functions library, aborting" + exit 1 +fi + +# Configuration +MAIN_CLASS="org.antlr.works.IDE" +BASE_FLAGS="-Xmx400m" +BASE_JARS="antlrworks antlr antlr3 antlr3-runtime jgoodies-forms stringtemplate" + +# Set parameters +set_jvm +set_classpath $BASE_JARS +set_flags $BASE_FLAGS + +# Let's start +run "$@" diff --git a/antlrworks.spec b/antlrworks.spec new file mode 100644 index 0000000..0bd8d43 --- /dev/null +++ b/antlrworks.spec @@ -0,0 +1,116 @@ +Name: antlrworks +Version: 1.4 +Release: 3%{?dist} +Summary: Grammar development environment for ANTLR v3 grammars + +Group: Development/Tools +License: BSD +URL: http://www.antlr.org/works +Source0: http://www.antlr.org/download/%{name}-%{version}-src.zip +Source1: antlrworks.sh +Source2: antlrworks.desktop +# Disable embedding of dependency jars file into antlrworks jar file +Patch0: antlrworks-1.4-build.patch +# Add xdg-open and epiphany as available web browsers to open help (sent +# upstream) +Patch1: antlrworks-1.4-browsers.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildRequires: ant +BuildRequires: antlr3-tool +BuildRequires: desktop-file-utils +BuildRequires: jgoodies-forms +Requires: antlr3-tool +Requires: graphviz +# Owns /usr/share/icons/hicolor +Requires: hicolor-icon-theme +Requires: java-devel >= 1:1.6.0 +Requires: jgoodies-forms +BuildArch: noarch + + +%description +ANTLRWorks is a novel grammar development environment for ANTLR v3 grammars +written by Jean Bovet (with suggested use cases from Terence Parr). It combines +an excellent grammar-aware editor with an interpreter for rapid prototyping and +a language-agnostic debugger for isolating grammar errors. ANTLRWorks helps +eliminate grammar nondeterminisms, one of the most difficult problems for +beginners and experts alike, by highlighting nondeterministic paths in the +syntax diagram associated with a grammar. ANTLRWorks' goal is to make grammars +more accessible to the average programmer, improve maintainability and +readability of grammars by providing excellent grammar navigation and +refactoring tools, and address the most common questions and problems +encountered by grammar developers. + + +%prep +%setup -q -c +%patch0 -p0 -b .build +%patch1 -p1 -b .browsers + +find -name '*.class' -o -name '*.jar' -exec rm '{}' \; + + +%build +export CLASSPATH=$(build-classpath antlr antlr3 antlr3-runtime jgoodies-forms stringtemplate) +ant build + + +%install +rm -rf $RPM_BUILD_ROOT +install -Dpm 0644 dist/%{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}-%{version}.jar +ln -s %{name}-%{version}.jar $RPM_BUILD_ROOT%{_javadir}/%{name}.jar +install -Dpm 0755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/%{name} + +desktop-file-install \ + --dir=$RPM_BUILD_ROOT%{_datadir}/applications \ + %{SOURCE2} + +install -Dpm 0644 resources/icons/app.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/128x128/apps/%{name}.png +for i in 16 32 64; do + install -Dpm 0644 resources/icons/app_${i}x$i.png $RPM_BUILD_ROOT%{_datadir}/icons/hicolor/${i}x$i/apps/%{name}.png +done + +desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%post +touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : + + +%postun +if [ $1 -eq 0 ] ; then + touch --no-create %{_datadir}/icons/hicolor &>/dev/null + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + + +%posttrans +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + + +%files +%defattr(-,root,root,-) +%{_bindir}/%{name} +%{_datadir}/applications/*.desktop +%{_datadir}/icons/hicolor/*/apps/*.png +%{_javadir}/*.jar + + +%changelog +* Fri Jun 4 2010 ELMORABITY Mohamed 1.4-3 +- Remove manual installation of antlrworks.desktop (managed by + desktop-file-install) + +* Thu Jun 3 2010 ELMORABITY Mohamed 1.4-2 +- Remove release.txt and readme.txt from sources +- Add hicolor-icon-theme as a Requires since it owns + %%{_datadir}/icons/hicolor +- Add call to desktop-file-install + +* Fri May 14 2010 ELMORABITY Mohamed 1.4-1 +- Initial RPM release diff --git a/import.log b/import.log new file mode 100644 index 0000000..4af0abe --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +antlrworks-1_4-3_fc13:HEAD:antlrworks-1.4-3.fc13.src.rpm:1275950959 diff --git a/sources b/sources index e69de29..73f7a64 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +318c789e2889fc3dc31582d30b4c23b4 antlrworks-1.4-src.zip