3 %bcond_without opt # build opt
5 %define main_ver 4.02.1
15 Summary: Objective Caml Preprocessor
16 Summary(pl.UTF-8): Preprocesor OCamla
18 Version: %{main_ver}.%{subver}
21 License: LGPL v2 with linking exception
23 Source0: https://github.com/ocaml/camlp4/archive/%{main_ver}+%{subver}/camlp4-%{version}.tar.gz
24 # Source0-md5: 8c19bcca52b92a5496dcbcbb931a988b
25 # following 4 URLs are dead, some version now available at http://pauillac.inria.fr/camlp4/
26 Source1: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{doc_ver}-manual.html.tar.gz
27 # Source1-md5: 21370bae4e7f6435b38aeb21db7ce8bb
28 Source2: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{doc_ver}-manual.dvi.gz
29 # Source2-md5: 035915d1a530aa7ec9b194d9a7d258eb
30 Source3: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{doc_ver}-tutorial.html.tar.gz
31 # Source3-md5: 96d8eb4ca5abd58c9a280ba59f73b192
32 Source4: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{doc_ver}-tutorial.dvi.gz
33 # Source4-md5: fcd87c235109364242a0c9ccf176dff8
34 URL: https://github.com/ocaml/camlp4
35 BuildRequires: ocaml >= 1:4.02
36 %requires_eq ocaml-runtime
37 Provides: camlp4 = %{epoch}:%{version}-%{release}
39 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
41 %define debug_package %{nil}
44 Camlp4 is a Pre-Processor-Pretty-Printer for Objective Caml. It offers
45 tools for syntax (grammars) and the ability to modify the concrete
46 syntax of the language (quotations, syntax extensions).
48 Camlp4 can parse normal Ocaml concrete syntax or any other
49 user-definable syntax. As an example, an alternative syntax is
50 provided, named revised, because it tries to fix some small problems
53 Camlp4 can pretty print the normal Ocaml concrete syntax or the
54 revised one. It is therefore always possible to have a version of your
55 sources compilable by the Objective Caml compiler without
58 %description -l pl.UTF-8
59 Camlp4 jest preprocesorem OCamla. Oferuje narzędzia do manipulowania
60 składnią (gramatyki) oraz możliwość modyfikowania oryginalnej składni
61 języka (cytowania, rozszerzenia).
63 Camlp4 potrafi analizować oryginalną składnię Ocamla lub dowolną inną
64 definiowalną przez użytkownika. Jako przykład podana jest alternatywna
65 składnia (revised syntax), która próbuje poprawić drobne problemy
66 występujące w składni oryginalnej.
68 Camlp4 umie ładnie formatować źródła zarówno w oryginalnej jak i
69 poprawionej składni OCamla. Potrafi także tłumaczyć programy z jednej
73 Summary: Objective Caml Preprocessor - HTML documentation
74 Summary(pl.UTF-8): Preprocesor OCamla - dokumentacja HTML
78 Objective Caml Preprocessor - HTML documentation.
80 %description doc-html -l pl.UTF-8
81 Preprocesor OCamla - dokumentacja HTML.
84 %setup -q -n camlp4-%{main_ver}-%{subver} -a1 -a3
87 mv camlp4-%{doc_ver}-manual.html docs/html/camlp4
88 cp %{SOURCE2} docs/camlp4.ps.gz
89 mv camlp4-%{doc_ver}-tutorial.html docs/html/camlp4-tutorial
90 cp %{SOURCE4} docs/camlp4-tutorial.ps.gz
95 %{__make} -j1 %{?with_opt:all}
98 rm -rf $RPM_BUILD_ROOT
100 %{__make} -j1 install \
101 BINDIR=$RPM_BUILD_ROOT%{_bindir} \
102 LIBDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml
105 rm -rf $RPM_BUILD_ROOT
108 %defattr(644,root,root,755)
109 %doc CHANGES.md LICENSE README.md
110 %attr(755,root,root) %{_bindir}/camlp4*
111 %attr(755,root,root) %{_bindir}/mkcamlp4
112 %{_libdir}/ocaml/camlp4
115 %defattr(644,root,root,755)
116 %doc docs/html/camlp4*