antlrworks/antlrworks.spec

114 lines
3.7 KiB
RPMSpec

Name: antlrworks
Version: 1.4
Release: 1mamba
Summary: The ANTLR GUI Development Environment
Group: Graphical Desktop/Applications/Development
Vendor: openmamba
Distribution: openmamba
Packager: gil <puntogil@libero.it>
URL: http://www.antlr.org/works/index.html
Source0: http://www.antlr.org/download/antlrworks-%{version}-src.zip
Source1: antlrworks-script
Source2: antlrworks.desktop
Patch0: antlrworks-1.4-build_xml.patch
Patch1: antlrworks-1.4-BrowserLauncher.patch
License: BSD
BuildRequires: apache-ant
BuildRequires: antlr3
BuildRequires: desktop-file-utils
BuildRequires: jgoodies-forms
Requires: antlr
Requires: antlr3
Requires: graphviz
Requires: hicolor-icon-theme
Requires: java-stringtemplate32
Requires: jgoodies-forms
Requires: jpackage-utils
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%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 %{name}-%{version}
%patch0 -p0
%patch1 -p0
for j in $(find . -name '*.class' -o -name '*.jar'); do
rm -rf $j
done
%build
export CLASSPATH=$(build-classpath antlr antlr3 antlr3-runtime jgoodies-forms stringtemplate32)
ant build
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
mkdir -p %{buildroot}%{_javadir}
install -pm 0644 dist/antlrworks-%{version}.jar %{buildroot}%{_javadir}/antlrworks-%{version}.jar
(
cd %{buildroot}%{_javadir}/
for jar in *-%{version}.jar; do
ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"`
done
)
mkdir -p %{buildroot}%{_bindir}
install -pm 755 %{SOURCE1} %{buildroot}%{_bindir}/antlrworks
desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{SOURCE2}
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/128x128/apps
install -pm 644 resources/icons/app.png %{buildroot}%{_datadir}/icons/hicolor/128x128/apps/antlrworks.png
mkdir -p %{buildroot}%{_datadir}/pixmaps
install -pm 644 resources/icons/app.png %{buildroot}%{_datadir}/pixmaps/antlrworks.png
for i in 16 32 64; do
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps
install -pm 644 resources/icons/app_${i}x${i}.png %{buildroot}%{_datadir}/icons/hicolor/${i}x${i}/apps/antlrworks.png
done
desktop-file-validate %{buildroot}%{_datadir}/applications/antlrworks.desktop
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%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)
%{_javadir}/antlrworks-%{version}.jar
%{_javadir}/antlrworks.jar
%{_bindir}/antlrworks
%{_datadir}/applications/antlrworks.desktop
%{_datadir}/icons/hicolor/*x*/apps/antlrworks.png
%{_datadir}/pixmaps/antlrworks.png
%changelog
* Thu Nov 25 2010 gil <puntogil@libero.it> 1.4-1mamba
- package created by autospec