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