]> git.pld-linux.org Git - packages/antlr.git/blame - antlr.spec
- fix docdir packaging
[packages/antlr.git] / antlr.spec
CommitLineData
37b7bddf 1# TODO:
2e747c14
ER
2# - add python bcond
3# - package the Emacs and Jedit modes
699fd5e5 4#
3067a93d 5# NOTE:
6# - next version is packaged as antlr3.spec. Please, do not upgrade this spec
7# to 3.
8#
699fd5e5 9# Conditional build:
2a24e544 10%bcond_without gcj # use javac instead of GCJ
92bb3d9b 11%bcond_without dotnet # don't build .NET modules
fe50037c 12%bcond_without java # don't build Java at all
699fd5e5 13#
b6b66cee 14%{?with_dotnet:%include /usr/lib/rpm/macros.mono}
15#
e577f83a 16%ifarch i486 i586 i686 athlon %{x8664}
9a82333d
AM
17%undefine with_gcj
18%endif
19#
cbedff71 20Summary: ANother Tool for Language Recognition
86cf8e8a 21Summary(pl.UTF-8): Jeszcze jedno narzędzie do rozpoznawania języka
cbedff71 22Name: antlr
f4747d8d 23Version: 2.7.7
cbbcb07f 24Release: 13
cbedff71 25License: Public Domain
26Group: Development/Tools
9a82333d 27Source0: http://www.antlr2.org/download/%{name}-%{version}.tar.gz
f4747d8d 28# Source0-md5: 01cc9a2a454dd33dcd8c856ec89af090
3fcd93ca 29Patch0: %{name}-DESTDIR.patch
34055c54 30Patch1: %{name}-strcasecmp.patch
a905d3c2 31Patch2: %{name}-gentoo.patch
9a82333d 32URL: http://www.antlr2.org/
910d46cf 33BuildRequires: autoconf
699fd5e5 34BuildRequires: automake
f2b9dcc3 35BuildRequires: libstdc++-devel
910d46cf
JB
36%{?with_dotnet:BuildRequires: mono-csharp}
37BuildRequires: python
38BuildRequires: sed >= 4.0
fe50037c 39%if %{with java}
7caa83ad 40%if %{with gcj}
34055c54 41BuildRequires: java-gcj-compat-devel
699fd5e5
JB
42%else
43BuildRequires: jar
44BuildRequires: jdk
2e747c14 45Requires: jpackage-utils
699fd5e5 46%endif
c0667cf9 47Requires: jre
fe50037c 48%endif
be010786 49Conflicts: pccts < 1.33MR33-6
cbedff71 50BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
51
52%description
37b7bddf 53ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) is a
54language tool that provides a framework for constructing recognizers,
55compilers, and translators from grammatical descriptions containing
56Java, C#, or C++ actions. ANTLR is popular because it is easy to
57understand, powerful, flexible, generates human-readable output, and
58comes with complete source. ANTLR provides excellent support for tree
59construction, tree walking, and translation.
cbedff71 60
dce2ef47 61%description -l pl.UTF-8
0969fdb0 62ANTLR (ANother Tool for Language Recognition; poprzednio znane jako
dce2ef47
JR
63PCCTS) to narzędzie językowe dostarczające szkielet do tworzenia
64programów rozpoznających języki, kompilatorów, translatorów z opisów
65gramatycznych obejmujących Javę, C# lub C++. ANTLR jest popularne
66ponieważ jest łatwe do zrozumienia, potężne, elastyczne, generuje
67wyjście czytelne dla człowieka i jest dostępne z pełnymi źródłami.
68ANTLR ma świetne wsparcie dla tworzenia drzew, przechodzenia po
0969fdb0 69drzewach oraz translacji.
cbedff71 70
92bb3d9b
PS
71%package -n dotnet-antlr
72Summary: .NET support for ANTLR
86cf8e8a 73Summary(pl.UTF-8): Moduły języka .NET dla biblioteki ANTLR
92bb3d9b
PS
74Group: Libraries
75
76%description -n dotnet-antlr
77.NET support for ANTLR.
78
dce2ef47
JR
79%description -n dotnet-antlr -l pl.UTF-8
80Moduły języka .NET dla biblioteki ANTLR.
92bb3d9b
PS
81
82%package -n python-antlr
910d46cf 83Summary: Python runtime support for ANTLR-generated parsers
86cf8e8a 84Summary(pl.UTF-8): Moduł uruchomieniowy języka Python dla analizatorów ANTLR
37b7bddf 85Group: Libraries/Python
37b7bddf 86%pyrequires_eq python-libs
87
92bb3d9b 88%description -n python-antlr
910d46cf 89Python runtime support for ANTLR-generated parsers.
37b7bddf 90
dce2ef47
JR
91%description -n python-antlr -l pl.UTF-8
92Moduł uruchomieniowy języka Python dla analizatorów wygenerowanych
910d46cf 93przez ANTLR.
37b7bddf 94
31e07e85
95%package examples
96Summary: Examples of ANTLR usage
86cf8e8a 97Summary(pl.UTF-8): Przykładowe programy używające ANTLR
31e07e85
98Group: Development
99Requires: %{name} = %{epoch}:%{version}-%{release}
100
101%description examples
102Examples of ANTLR usage.
103
dce2ef47
JR
104%description examples -l pl.UTF-8
105Przykładowe programy używające ANTLR.
31e07e85 106
cbedff71 107%prep
1d445de3 108%setup -q
ac7d2958 109%patch0 -p1
34055c54 110%patch1 -p1
a905d3c2 111%patch2 -p1
cbedff71 112
113%build
699fd5e5 114cp -f /usr/share/automake/config.sub scripts
910d46cf 115%{__autoconf}
f469e294 116%configure \
028803f2 117 %{?with_dotnet:CSHARPC=/usr/bin/mcs --enable-csharp} \
1c229459 118 %{!?with_dotnet:--disable-csharp} \
028803f2 119 --enable-cxx \
34055c54 120 %{?with_java:CLASSPATH=`pwd` --with-java=java --with-javac=javac --with-jar=jar} \
fe50037c 121 %{!?with_java:--disable-java} \
cbedff71 122
5482314e 123CXXFLAGS="%{rpmcxxflags}" \
cbedff71 124%{__make}
125
126%install
127rm -rf $RPM_BUILD_ROOT
235272ff 128install -d $RPM_BUILD_ROOT{%{_javadir},%{py_sitescriptdir}/%{name},%{_prefix}/lib/mono/%{name},%{_examplesdir}/%{name}-%{version}}
cbedff71 129
130%{__make} install \
131 DESTDIR=$RPM_BUILD_ROOT
132
fe50037c 133%if %{with java}
7caa83ad
PS
134install $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/antlr.jar \
135 $RPM_BUILD_ROOT%{_javadir}
fe50037c 136%endif
37b7bddf 137install $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}/*.py \
138 $RPM_BUILD_ROOT%{py_sitescriptdir}/%{name}
31e07e85 139cp -Rf examples/{cpp,csharp,java,python} \
6918e3c1 140 $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
235272ff 141find $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} -name Makefile -exec rm -f {} \;
b6b66cee 142
143%{?with_dotnet:install lib/*.dll $RPM_BUILD_ROOT%{_prefix}/lib/mono/%{name}}
37b7bddf 144
145%py_ocomp $RPM_BUILD_ROOT%{py_sitescriptdir}/%{name}
146%py_comp $RPM_BUILD_ROOT%{py_sitescriptdir}/%{name}
147rm $RPM_BUILD_ROOT%{py_sitescriptdir}/%{name}/*.py
3fcd93ca 148
7caa83ad 149%{__sed} -i -e "s,ANTLR_JAR=.*,ANTLR_JAR=\"%{_javadir}/antlr.jar\",g" $RPM_BUILD_ROOT%{_bindir}/antlr
c49ecfd2 150
cbbcb07f
JR
151%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}
152
cbedff71 153%clean
154rm -rf $RPM_BUILD_ROOT
155
156%files
157%defattr(644,root,root,755)
1d445de3 158%doc doc/*
cbedff71 159%attr(755,root,root) %{_bindir}/antlr
160%attr(755,root,root) %{_bindir}/antlr-config
161%{_includedir}/%{name}
162%{_libdir}/libantlr.a
3fcd93ca 163# Dont separate it, antlr binary wont work without it
fe50037c 164%if %{with java}
7caa83ad 165%{_javadir}/*.jar
fe50037c 166%endif
37b7bddf 167
92bb3d9b
PS
168%if %{with dotnet}
169%files -n dotnet-antlr
170%defattr(644,root,root,755)
2a24e544 171%dir %{_prefix}/lib/mono/%{name}
92bb3d9b
PS
172%{_prefix}/lib/mono/%{name}/*.dll
173%endif
174
175%files -n python-antlr
37b7bddf 176%defattr(644,root,root,755)
177%{py_sitescriptdir}/%{name}
31e07e85
178
179%files examples
180%defattr(644,root,root,755)
6918e3c1 181%{_examplesdir}/%{name}-%{version}
This page took 0.104206 seconds and 4 git commands to generate.