]> git.pld-linux.org Git - packages/camlp5.git/blame_incremental - camlp5.spec
Release 2 (by relup.sh)
[packages/camlp5.git] / camlp5.spec
... / ...
CommitLineData
1#
2# Conditional build:
3%bcond_without ocaml_opt # skip building native optimized binaries (bytecode is always built)
4
5# not yet available on x32 (ocaml 4.02.1), update when upstream will support it
6%ifnarch %{ix86} %{x8664} %{arm} aarch64 ppc sparc sparcv9
7%undefine with_ocaml_opt
8%endif
9
10%if %{without ocaml_opt}
11%define _enable_debug_packages 0
12%endif
13%define _debugsource_packages 0
14
15Summary: Objective Caml Preprocessor
16Summary(pl.UTF-8): Preprocesor OCamla
17Name: camlp5
18Version: 8.00.02
19Release: 2
20License: distributable
21Group: Development/Languages
22#Source0Download: https://github.com/camlp5/camlp5/releases
23Source0: https://github.com/camlp5/camlp5/archive/rel%{version}/%{name}-%{version}.tar.gz
24# Source0-md5: 096076be4b26034643508511e834ccc2
25Patch0: no-warn-error.patch
26Patch1: %{name}-flags.patch
27URL: https://camlp5.github.io/
28BuildRequires: db-devel >= 4.1
29BuildRequires: ocaml
30BuildRequires: ocaml-ocamlbuild
31%requires_eq ocaml-runtime
32Requires: %{name} = %{epoch}:%{version}-%{release}
33BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
34
35%description
36Camlp5 is a Pre-Processor-Pretty-Printer for Objective Caml. It offers
37tools for syntax (grammars) and the ability to modify the concrete
38syntax of the language (quotations, syntax extensions).
39
40Camlp5 can parse normal Ocaml concrete syntax or any other
41user-definable syntax. As an example, an alternative syntax is
42provided, named revised, because it tries to fix some small problems
43of the normal syntax.
44
45Camlp5 can pretty print the normal Ocaml concrete syntax or the
46revised one. It is therefore always possible to have a version of your
47sources compilable by the Objective Caml compiler without
48preprocessing.
49
50%description -l pl.UTF-8
51Camlp5 jest preprocesorem OCamla. Oferuje narzędzia do manipulowania
52składnią (gramatyki) oraz możliwość modyfikowania oryginalnej składni
53języka (cytowania, rozszerzenia).
54
55Camlp5 może sparsować oryginalną składnię Ocamla lub dowolną inną
56definiowalną przez użytkownika. Jako przykład podana jest alternatywna
57składnia (revised syntax), która próbuje poprawić drobne problemy
58występujące w składni oryginalnej.
59
60Camlp5 umie ładnie formatować źródła zarówno w oryginalnej jak i
61poprawionej składni OCamla. Potrafi także tłumaczyć programy z jednej
62składni na drugą.
63
64%package doc-html
65Summary: Objective Caml Preprocessor - HTML documentation
66Summary(pl.UTF-8): Preprocesor OCamla - dokumentacja HTML
67Group: Development/Languages
68
69%description doc-html
70Objective Caml Preprocessor - HTML documentation.
71
72%description doc-html -l pl.UTF-8
73Preprocesor OCamla - dokumentacja HTML.
74
75%package doc-pdf
76Summary: Objective Caml Preprocessor - PDF documentation
77Summary(pl.UTF-8): Preprocesor OCamla - dokumentacja w formacie PDF
78Group: Development/Languages
79
80%description doc-pdf
81Objective Caml Preprocessor - PDF documentation.
82
83%description doc-pdf -l pl.UTF-8
84Preprocesor OCamla - dokumentacja w formacie PDF.
85
86%prep
87%setup -q -n %{name}-rel%{version}
88%patch0 -p1
89%patch1 -p1
90
91%{__sed} -E -i -e '1s,#!\s*/usr/bin/env\s+perl(\s|$),#!%{__perl}\1,' \
92 etc/mkcamlp5.pl
93
94%{__sed} -i -e 's/DEBUG=/&-ccopt "%{rpmcflags}" -cclib "%{rpmldflags}"/' config/Makefile.tpl
95
96%build
97./configure \
98 -prefix %{_prefix} \
99 -bindir %{_bindir} \
100 -libdir %{_libdir}/ocaml \
101 -mandir %{_mandir}/man1
102
103%{__make} -j1 world%{?with_ocaml_opt:.opt}
104
105%{__make} -j1 -C doc/htmlp pdf
106
107%install
108rm -rf $RPM_BUILD_ROOT
109
110%{__make} install \
111 BINDIR=$RPM_BUILD_ROOT%{_bindir} \
112 LIBDIR=$RPM_BUILD_ROOT%{_libdir}/ocaml \
113 MANDIR=$RPM_BUILD_ROOT%{_mandir}
114
115# broken build system
116for f in mkcamlp5.1 ocpp5.1 camlp5o.1 camlp5r.1 camlp5sch.1 \
117 %{?with_ocaml_opt:camlp5o.opt.1 camlp5r.opt.1 mkcamlp5.opt.1} ; do
118 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/$f
119 echo '.so camlp5.1' >$RPM_BUILD_ROOT%{_mandir}/man1/$f
120done
121
122%clean
123rm -rf $RPM_BUILD_ROOT
124
125%files
126%defattr(644,root,root,755)
127%doc CHANGES DEVEL ICHANGES MODE README.md UPGRADING
128%attr(755,root,root) %{_bindir}/camlp5*
129%attr(755,root,root) %{_bindir}/mkcamlp5*
130%attr(755,root,root) %{_bindir}/ocpp5
131%{_libdir}/ocaml/%{name}
132%{_mandir}/man1/camlp5*.1*
133%{_mandir}/man1/mkcamlp5*.1*
134%{_mandir}/man1/ocpp5.1*
135
136%files doc-html
137%defattr(644,root,root,755)
138%doc doc/html/*
139
140%files doc-pdf
141%defattr(644,root,root,755)
142%doc doc/htmlp/camlp5.pdf
This page took 0.066986 seconds and 4 git commands to generate.