File javacc.spec of Package javacc

#
# spec file for package javacc
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


Name:           javacc
Version:        5.0
Release:        0
Summary:        A Parser and Scanner Generator for Java
License:        BSD-3-Clause
Group:          Development/Libraries/Java
Url:            http://javacc.java.net/
Source0:        http://java.net/projects/%{name}/downloads/download/%{name}-%{version}src.tar.gz
Source1:        javacc
Source2:        jjdoc
Source3:        jjtree
Patch0:         javacc.patch
BuildRequires:  ant
BuildRequires:  java-1_5_0-gcj-compat-devel
BuildRequires:  xml-commons-apis
Requires:       javapackages-tools
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildArch:      noarch

%description
Java Compiler Compiler (JavaCC) is the most popular parser generator
for use with Java applications. A parser generator is a tool that reads
a grammar specification and converts it to a Java program that can
recognize matches to the grammar. In addition to the parser generator
itself, JavaCC provides other standard capabilities related to parser
generation such as tree building (via a tool called JJTree included
with JavaCC), actions, debugging, etc.

%package manual
Summary:        A Parser and Scanner Generator for Java
Group:          Development/Libraries/Java

%description manual
Java Compiler Compiler (JavaCC) is the most popular parser generator
for use with Java applications. A parser generator is a tool that reads
a grammar specification and converts it to a Java program that can
recognize matches to the grammar. In addition to the parser generator
itself, JavaCC provides other standard capabilities related to parser
generation such as tree building (via a tool called JJTree included
with JavaCC), actions, debugging, etc.

%package demo
Summary:        A Parser and Scanner Generator for Java
Group:          Development/Libraries/Java

%description demo
Java Compiler Compiler (JavaCC) is the most popular parser generator
for use with Java applications. A parser generator is a tool that reads
a grammar specification and converts it to a Java program that can
recognize matches to the grammar. In addition to the parser generator
itself, JavaCC provides other standard capabilities related to parser
generation such as tree building (via a tool called JJTree included
with JavaCC), actions, debugging, etc.

%prep
%setup -q -n javacc
%patch0 -p1
cp %{SOURCE1} javacc
cp %{SOURCE2} jjdoc
cp %{SOURCE3} jjtree
mv www/doc .

%build
for file in `find -name build.xml` ; do
 if ! grep -q "javac.*source=" $file ; then
  perl -p -i -e 's|<javac |<javac source=\"1.4\" |' $file
  perl -p -i -e 's|<javadoc |<javadoc source=\"1.4" |' $file
 fi
done
ant \
  -Dversion=%{version} \
  jar

%install
install -d -m 755 %{buildroot}%{_javadir}
install -m 644 bin/lib/%{name}.jar %{buildroot}%{_javadir}/%{name}-%{version}.jar
ln -s %{name}-%{version}.jar %{buildroot}%{_javadir}/%{name}.jar
install -d -m 755 %{buildroot}%{_prefix}/bin
install -m 755 javacc jjdoc jjtree %{buildroot}%{_prefix}/bin
install -d -m 755 %{buildroot}%{_datadir}/%{name}
cp -pr examples %{buildroot}%{_datadir}/%{name}

%files
%defattr(0644,root,root,0755)
%{_javadir}/*.jar
%doc LICENSE README
%defattr(0755,root,root,0755)
%{_bindir}/*

%files manual
%defattr(0644,root,root,0755)
%doc doc/*

%files demo
%defattr(0644,root,root,0755)
%{_datadir}/%{name}/

%changelog