]>
Commit | Line | Data |
---|---|---|
3105856a JB |
1 | # |
2 | # Conditional build: | |
b552f088 JB |
3 | %bcond_without emacs # without emacs subpackage |
4 | %bcond_without x # without X11 support | |
5 | %bcond_without tk # without Tcl/Tk support | |
ed19172f | 6 | # |
f4710e3c | 7 | # --without x11 implies --without tk |
1b2eae14 | 8 | %{!?with_x:%undefine with_tk} |
4797676b | 9 | |
6e71517f | 10 | %define p4ver 3.06 |
7ff0f82f | 11 | %define sver 3.10 |
db184753 | 12 | |
65fbc6c7 | 13 | Summary: The Objective Caml compiler and programming environment |
6e95eae7 | 14 | Summary(pl.UTF-8): Kompilator OCamla (Objective Caml) oraz środowisko programistyczne |
65fbc6c7 | 15 | Name: ocaml |
7d1b8310 | 16 | Version: 3.10.1 |
17 | Release: 1 | |
4694cc06 | 18 | Epoch: 1 |
a13fc47d | 19 | License: distributable |
65fbc6c7 | 20 | Vendor: Group of implementors <caml-light@inria.fr> |
65fbc6c7 | 21 | Group: Development/Languages |
7845a5c9 | 22 | Source0: http://caml.inria.fr/distrib/%{name}-%{sver}/%{name}-%{version}.tar.bz2 |
7d1b8310 | 23 | # Source0-md5: 15a8c603b34d466329881285438349ef |
307e1de8 | 24 | Source1: http://caml.inria.fr/distrib/%{name}-%{sver}/%{name}-%{sver}-refman.html.tar.gz |
7ff0f82f | 25 | # Source1-md5: 663b31c8ea364a531aa325a5b06a2763 |
307e1de8 | 26 | Source2: http://caml.inria.fr/distrib/%{name}-%{sver}/%{name}-%{sver}-refman.ps.gz |
7ff0f82f | 27 | # Source2-md5: 69c7acc08ee182c97089fe0736c04e37 |
db184753 | 28 | Source3: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-manual.html.tar.gz |
79b42dbe | 29 | # Source3-md5: 21370bae4e7f6435b38aeb21db7ce8bb |
db184753 | 30 | Source4: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-manual.dvi.gz |
79b42dbe | 31 | # Source4-md5: 035915d1a530aa7ec9b194d9a7d258eb |
db184753 | 32 | Source5: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-tutorial.html.tar.gz |
79b42dbe | 33 | # Source5-md5: 96d8eb4ca5abd58c9a280ba59f73b192 |
db184753 | 34 | Source6: ftp://ftp.inria.fr/INRIA/Projects/cristal/camlp4/camlp4-%{p4ver}-tutorial.dvi.gz |
79b42dbe | 35 | # Source6-md5: fcd87c235109364242a0c9ccf176dff8 |
3a1adca1 JB |
36 | Source7: http://www.ocaml.info/ocaml_sources/pure-fun-1.0.6.tar.bz2 |
37 | # Source7-md5: 94eac3fa1ac51b8ada344b04839cb43c | |
7db52553 | 38 | Source8: http://www.ocaml.info/ocaml_sources/ds-contrib.tar.gz |
79b42dbe | 39 | # Source8-md5: 77fa1da7375dea1393cc0b6cd802d7e1 |
69735a4b | 40 | Source9: http://caml.inria.fr/distrib/%{name}-%{sver}/%{name}-%{sver}-refman.info.tar.gz |
7ff0f82f | 41 | # Source9-md5: f80b52b8bc4b10ed557808fc899acf3a |
56260732 | 42 | Patch0: %{name}-build.patch |
4c1e0f62 MM |
43 | Patch1: %{name}-db3.patch |
44 | Patch2: %{name}-objinfo.patch | |
3a1adca1 JB |
45 | Patch3: %{name}-tk85support.patch |
46 | Patch4: %{name}-CFLAGS.patch | |
47 | Patch5: %{name}-as_needed.patch | |
8b0de54e | 48 | URL: http://caml.inria.fr/ |
3a1adca1 | 49 | BuildRequires: db-devel >= 4.1 |
6e71517f | 50 | %{?with_tk:BuildRequires: tk-devel} |
3232e3f5 | 51 | %{?with_x:BuildRequires: xorg-lib-libX11-devel} |
f4710e3c | 52 | %if %{with emacs} |
69735a4b | 53 | BuildRequires: sed >= 4.0 |
f4710e3c MM |
54 | BuildRequires: xemacs |
55 | BuildRequires: xemacs-common | |
56 | BuildRequires: xemacs-fsf-compat-pkg | |
57 | %endif | |
4e386054 | 58 | Requires: %{name}-runtime = %{epoch}:%{version}-%{release} |
5a1e52bf PG |
59 | Provides: ocaml-ocamldoc |
60 | Obsoletes: ocaml-ocamldoc | |
151fbae6 | 61 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
65fbc6c7 | 62 | |
0053154a PS |
63 | %define specflags -fno-strict-aliasing |
64 | ||
65fbc6c7 AM |
65 | %description |
66 | Objective Caml is a high-level, strongly-typed, functional and | |
67 | object-oriented programming language from the ML family of languages. | |
68 | ||
69 | This package comprises two batch compilers (a fast bytecode compiler | |
5ca6b9fb MP |
70 | and an optimizing native-code compiler), an interactive toplevel |
71 | system, Lex&Yacc tools, a replay debugger, and a comprehensive | |
72 | library. | |
65fbc6c7 | 73 | |
3f556f71 JR |
74 | %description -l pl.UTF-8 |
75 | OCaml (Objective Caml) jest funkcyjnym, obiektowo zorientowanym językiem | |
76 | wysokiego poziomu z silnym typowaniem. Należy do rodziny języków ML. | |
65fbc6c7 | 77 | |
8151bf1e | 78 | Ten pakiet zawiera dwa kompilatory (szybki kompilator do bajtkodu |
3f556f71 JR |
79 | oraz optymalizujący kompilator do kodu natywnego), interaktywne środowisko |
80 | pracy, narzędzia do tworzenia analizatorów leksykalnych oraz składniowych | |
8151bf1e | 81 | (ocamllex, ocamlyacc), odpluskwiacz (ocamldebug) i biblioteki. |
65fbc6c7 | 82 | |
79502218 JB |
83 | %package runtime |
84 | Summary: Runtime system for OCaml | |
6e95eae7 | 85 | Summary(pl.UTF-8): Środowisko uruchomieniowe dla OCamla |
79502218 JB |
86 | Group: Libraries |
87 | ||
88 | %description runtime | |
89 | This package contains binaries needed to run bytecode OCaml programs: | |
90 | ocamlrun bytecode interpreter, and basic dynamic link libraries. | |
91 | ||
3f556f71 JR |
92 | %description runtime -l pl.UTF-8 |
93 | Pakiet ten zawiera binaria potrzebne do uruchamiania programów w | |
79502218 JB |
94 | OCamlu skompilowanych do bajtkodu: interpreter bajtkodu (ocamlrun) oraz |
95 | podstawowe biblioteki linkowane dynamicznie. | |
96 | ||
97 | %package lib-source | |
98 | Summary: Sources of OCaml standard library | |
6e95eae7 | 99 | Summary(pl.UTF-8): Źródła biblioteki standardowej OCamla |
79502218 JB |
100 | Group: Development/Languages |
101 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
102 | ||
103 | %description lib-source | |
104 | This sources come helpful during debugging of user programs with ocamldebug. | |
105 | ||
3f556f71 JR |
106 | %description lib-source -l pl.UTF-8 |
107 | Źródła te są przydatne przy odpluskwianiu programów użytkownika | |
108 | z użyciem ocamldebug. | |
79502218 | 109 | |
69735a4b | 110 | %package doc-html |
111 | Summary: HTML documentation for OCaml | |
6e95eae7 | 112 | Summary(pl.UTF-8): Dokumentacja dla OCamla w formacie HTML |
69735a4b | 113 | Group: Development/Tools |
114 | ||
115 | %description doc-html | |
116 | HTML documentation for OCaml. | |
117 | ||
3f556f71 | 118 | %description doc-html -l pl.UTF-8 |
69735a4b | 119 | Dokumentacja dla OCamla w formacie HTML. |
120 | ||
13b509d1 | 121 | %package doc-ps |
4797676b | 122 | Summary: PostScript documentation for OCaml |
6e95eae7 | 123 | Summary(pl.UTF-8): Dokumentacja dla OCamla w formacie PostScript |
4797676b | 124 | Group: Development/Tools |
4797676b | 125 | |
13b509d1 | 126 | %description doc-ps |
69735a4b | 127 | PostScript documentation for OCaml. |
4797676b | 128 | |
3f556f71 | 129 | %description doc-ps -l pl.UTF-8 |
69735a4b | 130 | Dokumentacja dla OCamla w formacie PostScript. |
131 | ||
132 | %package doc-info | |
133 | Summary: Info documentation for OCaml | |
6e95eae7 | 134 | Summary(pl.UTF-8): Dokumentacja info dla OCamla |
69735a4b | 135 | Group: Development/Tools |
136 | ||
137 | %description doc-info | |
138 | Info documentation for OCaml. | |
139 | ||
3f556f71 | 140 | %description doc-info -l pl.UTF-8 |
69735a4b | 141 | Dokumentacja info dla OCamla. |
4797676b | 142 | |
65fbc6c7 | 143 | %package emacs |
c4a5fbda | 144 | Summary: Emacs mode for OCaml |
6e95eae7 | 145 | Summary(pl.UTF-8): Tryb OCamla dla Emacsa |
65fbc6c7 | 146 | Group: Development/Tools |
4694cc06 | 147 | Requires: %{name} = %{epoch}:%{version}-%{release} |
65fbc6c7 AM |
148 | |
149 | %description emacs | |
981ff793 | 150 | Emacs mode files for Objective Caml language. |
65fbc6c7 | 151 | |
3f556f71 | 152 | %description emacs -l pl.UTF-8 |
8151bf1e | 153 | Pliki trybu OCamla dla Emacsa. |
56260732 | 154 | |
79502218 JB |
155 | %package labltk |
156 | Summary: Runtime for LablTk library | |
6e95eae7 | 157 | Summary(pl.UTF-8): Środowisko uruchomieniowe dla biblioteki LablTk |
981ff793 | 158 | Group: Libraries |
79502218 | 159 | Requires: %{name} = %{epoch}:%{version}-%{release} |
981ff793 | 160 | |
79502218 JB |
161 | %description labltk |
162 | LablTk gives OCaml program access to Tcl/Tk GUI widgets. This package | |
163 | contains files needed to run bytecode OCaml programs using LablTk. | |
981ff793 | 164 | |
3f556f71 JR |
165 | %description labltk -l pl.UTF-8 |
166 | Biblioteka LablTk daje programom napisanym w OCamlu dostęp do widgetów | |
167 | Tcl/Tk. Pakiet ten zawiera binaria potrzebne do uruchamiania programów | |
168 | używających LablTk. | |
981ff793 MM |
169 | |
170 | %package labltk-devel | |
8151bf1e | 171 | Summary: LablTk library for OCaml |
6e95eae7 | 172 | Summary(pl.UTF-8): Biblioteka LablTk dla OCamla |
56260732 | 173 | Group: Development/Libraries |
4694cc06 | 174 | Requires: %{name}-labltk = %{epoch}:%{version}-%{release} |
981ff793 MM |
175 | |
176 | %description labltk-devel | |
177 | LablTk gives OCaml program access to Tcl/Tk GUI widgets. This package | |
178 | contains files needed to develop OCaml programs using LablTk. | |
179 | ||
3f556f71 JR |
180 | %description labltk-devel -l pl.UTF-8 |
181 | Biblioteka LablTk daje programom napisanym w OCamlu dostęp do widgetów | |
182 | Tcl/Tk. Pakiet ten zawiera pliki niezbędne do tworzenia programów | |
183 | używających LablTk. | |
981ff793 | 184 | |
79502218 JB |
185 | %package x11graphics |
186 | Summary: X11 graphic output for OCaml | |
6e95eae7 | 187 | Summary(pl.UTF-8): Dostęp do X11 dla OCamla |
79502218 | 188 | Group: Development/Libraries |
4694cc06 | 189 | Requires: %{name} = %{epoch}:%{version}-%{release} |
56260732 | 190 | |
79502218 JB |
191 | %description x11graphics |
192 | x11graphics module gives OCaml program access to drawing in X11 | |
193 | windows. This package contains files needed to run bytecode OCaml | |
194 | programs using x11graphics. | |
56260732 | 195 | |
3f556f71 JR |
196 | %description x11graphics -l pl.UTF-8 |
197 | Moduł x11graphics daje programom napisanym w OCamlu możliwość | |
79502218 | 198 | korzystania z interfejsu graficznego X11. Pakiet ten zawiera binaria |
3f556f71 | 199 | potrzebne do uruchamiania programów używających x11graphics. |
981ff793 MM |
200 | |
201 | %package x11graphics-devel | |
202 | Summary: X11 graphic output for OCaml | |
6e95eae7 | 203 | Summary(pl.UTF-8): Dostęp do X11 dla OCamla |
981ff793 | 204 | Group: Development/Libraries |
4694cc06 | 205 | Requires: %{name}-x11graphics = %{epoch}:%{version}-%{release} |
981ff793 MM |
206 | |
207 | %description x11graphics-devel | |
208 | x11graphics module gives OCaml program access to drawing in X11 | |
209 | windows. This package contains files needed to develop OCaml programs | |
210 | using x11graphics. | |
211 | ||
3f556f71 JR |
212 | %description x11graphics-devel -l pl.UTF-8 |
213 | Moduł x11graphics daje programom napisanym w OCamlu możliwość | |
8151bf1e | 214 | korzystania z interfejsu graficznego X11. Pakiet ten zawiera pliki |
3f556f71 | 215 | niezbędne do tworzenia programów używających x11graphics. |
56260732 | 216 | |
56260732 MM |
217 | %package camlp4 |
218 | Summary: Objective Caml Preprocessor | |
6e95eae7 | 219 | Summary(pl.UTF-8): Preprocesor OCamla |
56260732 | 220 | Group: Development/Languages |
4694cc06 | 221 | Requires: %{name} = %{epoch}:%{version}-%{release} |
222 | Provides: camlp4 = %{epoch}:%{version}-%{release} | |
56260732 MM |
223 | Obsoletes: camlp4 |
224 | ||
225 | %description camlp4 | |
226 | Camlp4 is a Pre-Processor-Pretty-Printer for Objective Caml. It offers | |
227 | tools for syntax (grammars) and the ability to modify the concrete | |
228 | syntax of the language (quotations, syntax extensions). | |
229 | ||
230 | Camlp4 can parse normal Ocaml concrete syntax or any other | |
231 | user-definable syntax. As an example, an alternative syntax is | |
232 | provided, named revised, because it tries to fix some small problems | |
233 | of the normal syntax. | |
234 | ||
235 | Camlp4 can pretty print the normal Ocaml concrete syntax or the | |
236 | revised one. It is therefore always possible to have a version of your | |
8151bf1e | 237 | sources compilable by the Objective Caml compiler without |
56260732 MM |
238 | preprocessing. |
239 | ||
3f556f71 JR |
240 | %description camlp4 -l pl.UTF-8 |
241 | Camlp4 jest preprocesorem OCamla. Oferuje narzędzia do manipulowania | |
242 | składnią (gramatyki) oraz możliwość modyfikowania oryginalnej składni | |
243 | języka (cytowania, rozszerzenia). | |
56260732 | 244 | |
3f556f71 JR |
245 | Camlp4 może sparsować oryginalną składnię Ocamla lub dowolną inną |
246 | definiowalną przez użytkownika. Jako przykład podana jest alternatywna | |
247 | składnia (revised syntax), która próbuje poprawić drobne problemy | |
248 | występujące w składni oryginalnej. | |
56260732 | 249 | |
3f556f71 JR |
250 | Camlp4 umie ładnie formatować źródła zarówno w oryginalnej jak i |
251 | poprawionej składni OCamla. Potrafi także tłumaczyć programy z jednej | |
252 | składni na drugą. | |
65fbc6c7 | 253 | |
69735a4b | 254 | %package camlp4-doc-html |
255 | Summary: Objective Caml Preprocessor - HTML documentation | |
6e95eae7 | 256 | Summary(pl.UTF-8): Preprocesor OCamla - dokumentacja HTML |
69735a4b | 257 | Group: Development/Languages |
258 | ||
259 | %description camlp4-doc-html | |
260 | Objective Caml Preprocessor - HTML documentation. | |
261 | ||
3f556f71 | 262 | %description camlp4-doc-html -l pl.UTF-8 |
69735a4b | 263 | Preprocesor OCamla - dokumentacja HTML. |
264 | ||
6dfc0e1a | 265 | %package compiler-objects |
981ff793 | 266 | Summary: Compiled parts of OCaml compiler |
6e95eae7 | 267 | Summary(pl.UTF-8): Skompilowane części kompilatora OCamla |
981ff793 | 268 | Group: Development/Languages |
4694cc06 | 269 | Requires: %{name} = %{epoch}:%{version}-%{release} |
68076664 | 270 | Obsoletes: ocaml-devel |
6adc6dd7 | 271 | Provides: ocaml-devel |
981ff793 | 272 | |
6dfc0e1a | 273 | %description compiler-objects |
981ff793 MM |
274 | This package contains *.cmi and *.cmo files being parts of OCaml |
275 | compiler. They are needed to compile some programs. | |
276 | ||
3f556f71 JR |
277 | %description compiler-objects -l pl.UTF-8 |
278 | Pakiet ten zawiera pliki *.cmi oraz *.cmo będące częściami kompilatora | |
279 | OCamla. Są one wymagane do kompilacji niektórych programów. | |
981ff793 | 280 | |
13b509d1 MM |
281 | %package ocamldoc-devel |
282 | Summary: Files needed to develop programs using ocamldoc | |
6e95eae7 | 283 | Summary(pl.UTF-8): Pliki potrzebne do tworzenia programów używających ocamldoc |
13b509d1 | 284 | Group: Development/Languages |
4694cc06 | 285 | Requires: %{name} = %{epoch}:%{version}-%{release} |
13b509d1 MM |
286 | |
287 | %description ocamldoc-devel | |
288 | You need this package if you are going to write ocamldoc front end or | |
289 | something like that. | |
290 | ||
3f556f71 JR |
291 | %description ocamldoc-devel -l pl.UTF-8 |
292 | Będziesz potrzebować tego pakietu, jeśli zamierzasz pisać front end | |
293 | dla ocamldoc lub coś podobnego. | |
13b509d1 | 294 | |
53fbd845 MM |
295 | # maybe we'll want to add some more stuff here? |
296 | %package examples | |
297 | Summary: Example source code for OCaml | |
6e95eae7 | 298 | Summary(pl.UTF-8): Przykładowe kody źródłowe w OCamlu |
53fbd845 | 299 | Group: Development/Languages |
4694cc06 | 300 | Requires: %{name} = %{epoch}:%{version}-%{release} |
53fbd845 MM |
301 | |
302 | %description examples | |
63004413 | 303 | This packages contains sources for Okasaki's Purely Functional |
53fbd845 MM |
304 | Datastructures in OCaml, along with some contributions. |
305 | ||
3f556f71 JR |
306 | %description examples -l pl.UTF-8 |
307 | Pakiet ten zawiera źródła Czysto Funkcyjnych Struktur Danych | |
8151bf1e | 308 | autorstwa Okasaki'ego, napisane w OCamlu, wraz z dodatkami. |
53fbd845 | 309 | |
65fbc6c7 | 310 | %prep |
307e1de8 | 311 | %setup -q -a1 -a3 -a5 |
19e77905 JB |
312 | mkdir examples |
313 | tar xjf %{SOURCE7} -C examples | |
314 | tar xzf %{SOURCE8} -C examples | |
69735a4b | 315 | tar xzf %{SOURCE9} |
56260732 | 316 | # order mess with docs somewhat |
69735a4b | 317 | mkdir -p docs/html |
56260732 | 318 | mv htmlman docs/html/ocaml |
fa4b2219 | 319 | cp %{SOURCE2} docs/ocaml.ps.gz |
db184753 | 320 | mv camlp4-%{p4ver}-manual.html docs/html/camlp4 |
fa4b2219 | 321 | cp %{SOURCE4} docs/camlp4.ps.gz |
db184753 | 322 | mv camlp4-%{p4ver}-tutorial.html docs/html/camlp4-tutorial |
fa4b2219 | 323 | cp %{SOURCE6} docs/camlp4-tutorial.ps.gz |
56260732 | 324 | %patch0 -p1 |
4c1e0f62 | 325 | %patch1 -p1 |
56260732 | 326 | %patch2 -p1 |
3a1adca1 | 327 | %patch3 -p1 |
f2f21d95 | 328 | %patch4 -p1 |
04508f14 | 329 | %patch5 -p1 |
69735a4b | 330 | |
331 | %build | |
ed19172f | 332 | cp -f /usr/share/automake/config.sub config/gnu |
65fbc6c7 | 333 | ./configure \ |
69735a4b | 334 | -cc "%{__cc}" \ |
65fbc6c7 AM |
335 | -bindir %{_bindir} \ |
336 | -libdir %{_libdir}/%{name} \ | |
337 | -mandir %{_mandir}/man1 \ | |
530dec71 | 338 | -host %{_host} \ |
f4710e3c | 339 | %{!?with_tk:-no-tk} \ |
2e6ceb74 | 340 | -with-pthread \ |
0053154a | 341 | -x11lib %{_libdir} |
65fbc6c7 | 342 | |
bf9b6da9 | 343 | %{__make} -j1 world bootstrap opt.opt CFLAGS="%{rpmcflags} -Wall" |
7ae05805 | 344 | %{__make} -C tools objinfo CFLAGS="%{rpmcflags} -Wall" -j1 |
65fbc6c7 | 345 | |
e1542d3b JB |
346 | # broken build system |
347 | sed -e 's,LIBDIR,%{_libdir},' camlp4/man/camlp4.1.tpl > camlp4/man/camlp4.1 | |
348 | ||
65fbc6c7 | 349 | %install |
5ca6b9fb | 350 | rm -rf $RPM_BUILD_ROOT |
69735a4b | 351 | install -d $RPM_BUILD_ROOT{%{_includedir},%{_infodir},%{_examplesdir}/%{name}-{labltk-,}%{version}} |
7ff0f82f | 352 | install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/site-lib |
e42e1457 | 353 | |
7ae05805 | 354 | %{__make} install \ |
13b509d1 MM |
355 | BINDIR=$RPM_BUILD_ROOT%{_bindir} \ |
356 | LIBDIR=$RPM_BUILD_ROOT%{_libdir}/%{name} \ | |
357 | MANDIR=$RPM_BUILD_ROOT%{_mandir} | |
358 | ||
359 | cat > $RPM_BUILD_ROOT%{_libdir}/%{name}/ld.conf <<EOF | |
360 | %{_libdir}/%{name}/stublibs | |
361 | %{_libdir}/%{name} | |
362 | EOF | |
4797676b | 363 | |
f4710e3c | 364 | %if %{with emacs} |
7ae05805 | 365 | %{__make} -C emacs DESTDIR=$RPM_BUILD_ROOT install \ |
65fbc6c7 AM |
366 | EMACS="`if [ -x %{_bindir}/emacs ]; then echo emacs; \ |
367 | else echo xemacs; fi`" \ | |
8151bf1e | 368 | EMACSDIR="$RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp" |
56260732 MM |
369 | %endif |
370 | ||
981ff793 | 371 | # symlink .opt versions of compilers (if present) |
13b509d1 MM |
372 | # warning: don't do that with camlp4 (can't load extensions then) |
373 | for f in ocamlc ocamlopt ocamldoc ocamllex; do | |
067af37d MM |
374 | if test -f $RPM_BUILD_ROOT%{_bindir}/$f.opt; then |
375 | mv -f $RPM_BUILD_ROOT%{_bindir}/$f \ | |
376 | $RPM_BUILD_ROOT%{_bindir}/$f.byte | |
377 | ln -sf %{_bindir}/$f.opt $RPM_BUILD_ROOT%{_bindir}/$f | |
378 | fi | |
1511bcd5 | 379 | done |
65fbc6c7 | 380 | |
981ff793 | 381 | # move includes to the proper place |
ba35c88b | 382 | mv -f $RPM_BUILD_ROOT%{_libdir}/%{name}/caml $RPM_BUILD_ROOT%{_includedir}/caml |
981ff793 | 383 | # but leave compatibility symlink |
379cf672 | 384 | ln -s ../../include/caml $RPM_BUILD_ROOT%{_libdir}/%{name}/caml |
981ff793 | 385 | |
360c386d MM |
386 | # compiled sources of compiler, needed by some programs |
387 | for f in {asm,byte}comp parsing typing utils ; do | |
388 | install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/compiler/$f | |
389 | cp $f/*.{cmi,cmo,cmx,o} $RPM_BUILD_ROOT%{_libdir}/%{name}/compiler/$f | |
390 | done | |
981ff793 MM |
391 | |
392 | # this isn't installed by default, but is useful | |
393 | install tools/objinfo $RPM_BUILD_ROOT%{_bindir}/ocamlobjinfo | |
53fbd845 | 394 | cp -r examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} |
13b509d1 | 395 | cp -r otherlibs/labltk/examples* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-labltk-%{version} |
56260732 MM |
396 | ln -sf %{_libdir}/%{name}/{scrape,add}labels $RPM_BUILD_ROOT%{_bindir} |
397 | ||
13b509d1 | 398 | # shutup checkfiles |
f442d039 | 399 | rm -rf $RPM_BUILD_ROOT%{_mandir}/man3 |
13b509d1 MM |
400 | rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/labltk/{labltktop,pp} |
401 | ||
69735a4b | 402 | # install info pages |
403 | cp -f infoman/*.gz $RPM_BUILD_ROOT%{_infodir} | |
404 | ||
e1542d3b JB |
405 | # broken build system |
406 | install camlp4/man/camlp4.1 $RPM_BUILD_ROOT%{_mandir}/man1 | |
407 | for f in camlp4o.1 camlp4r.1 mkcamlp4.1 camlp4o.opt.1 camlp4r.opt.1 ; do | |
408 | echo '.so camlp4.1' >$RPM_BUILD_ROOT%{_mandir}/man1/$f | |
409 | done | |
410 | ||
65fbc6c7 AM |
411 | %clean |
412 | rm -rf $RPM_BUILD_ROOT | |
413 | ||
69735a4b | 414 | %post doc-info |
415 | [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 | |
416 | ||
417 | %postun doc-info | |
418 | [ ! -x /usr/sbin/fix-info-dir ] || /usr/sbin/fix-info-dir -c %{_infodir} >/dev/null 2>&1 | |
419 | ||
65fbc6c7 AM |
420 | %files |
421 | %defattr(644,root,root,755) | |
f1920819 | 422 | %doc LICENSE Changes README Upgrading |
13b509d1 | 423 | %attr(755,root,root) %{_bindir}/ocaml* |
cdb0d2dd | 424 | %{!?_without_tk:%exclude %{_bindir}/ocamlbrowser} |
13b509d1 | 425 | %exclude %{_bindir}/ocamlrun |
73a93122 | 426 | %attr(755,root,root) %{_bindir}/*labels |
ba35c88b | 427 | %{_includedir}/caml |
530dec71 | 428 | %{_libdir}/%{name}/caml |
530dec71 | 429 | %{_libdir}/%{name}/threads |
4c1e0f62 MM |
430 | %dir %{_libdir}/%{name}/vmthreads |
431 | %dir %{_libdir}/%{name}/vmthreads/*.cm* | |
432 | %dir %{_libdir}/%{name}/vmthreads/*.a | |
13b509d1 MM |
433 | %{_libdir}/%{name}/*.a |
434 | %{_libdir}/%{name}/*.o | |
435 | %{_libdir}/%{name}/*.cm* | |
436 | %exclude %{_libdir}/%{name}/*graphics* | |
4251bfb1 | 437 | %{_libdir}/%{name}/ld.conf |
56260732 MM |
438 | %{_libdir}/%{name}/camlheader |
439 | %{_libdir}/%{name}/camlheader_ur | |
7ff0f82f | 440 | %{_libdir}/%{name}/ocamlbuild |
13b509d1 | 441 | %dir %{_libdir}/%{name}/ocamldoc |
13b509d1 MM |
442 | %{_libdir}/%{name}/ocamldoc/*.hva |
443 | %attr(755,root,root) %{_libdir}/%{name}/expunge | |
444 | %attr(755,root,root) %{_libdir}/%{name}/extract_crc | |
56260732 | 445 | %attr(755,root,root) %{_libdir}/%{name}/*labels |
13b509d1 MM |
446 | %{_mandir}/man1/*ocaml* |
447 | ||
79502218 JB |
448 | %files runtime |
449 | %defattr(644,root,root,755) | |
450 | %attr(755,root,root) %{_bindir}/ocamlrun | |
451 | %dir %{_libdir}/%{name} | |
7ff0f82f | 452 | %dir %{_libdir}/%{name}/site-lib |
79502218 JB |
453 | %dir %{_libdir}/%{name}/stublibs |
454 | %attr(755,root,root) %{_libdir}/%{name}/stublibs/dll*.so | |
455 | %exclude %{_libdir}/%{name}/stublibs/dllgraphics.so | |
456 | %if %{with tk} | |
457 | %exclude %{_libdir}/%{name}/stublibs/dlllabltk.so | |
458 | %exclude %{_libdir}/%{name}/stublibs/dlltkanim.so | |
459 | %endif | |
460 | ||
13b509d1 MM |
461 | %files lib-source |
462 | %defattr(644,root,root,755) | |
463 | %{_libdir}/%{name}/*.ml | |
8151bf1e | 464 | %{_libdir}/%{name}/*.mli |
4c1e0f62 | 465 | %{_libdir}/%{name}/*/*.mli |
13b509d1 | 466 | |
79502218 | 467 | %files doc-html |
763b9075 | 468 | %defattr(644,root,root,755) |
79502218 JB |
469 | %doc docs/html/ocaml/* |
470 | ||
471 | %files doc-ps | |
472 | %defattr(644,root,root,755) | |
473 | %doc docs/*.ps.gz | |
474 | ||
475 | %files doc-info | |
476 | %defattr(644,root,root,755) | |
477 | %{_infodir}/ocaml.info* | |
53fbd845 | 478 | |
13b509d1 MM |
479 | # they are poor, html is much better |
480 | #%files manpages | |
e68873d9 | 481 | #%%{_mandir}/man3/* |
65fbc6c7 | 482 | |
79502218 JB |
483 | %if %{with emacs} |
484 | %files emacs | |
56260732 | 485 | %defattr(644,root,root,755) |
79502218 JB |
486 | %{_datadir}/emacs/site-lisp/*.el* |
487 | %endif | |
56260732 | 488 | |
79502218 JB |
489 | %if %{with tk} |
490 | %files labltk | |
69735a4b | 491 | %defattr(644,root,root,755) |
79502218 JB |
492 | %attr(755,root,root) %{_libdir}/%{name}/stublibs/dlllabltk.so |
493 | %attr(755,root,root) %{_libdir}/%{name}/stublibs/dlltkanim.so | |
69735a4b | 494 | |
981ff793 | 495 | %files labltk-devel |
56260732 | 496 | %defattr(644,root,root,755) |
73a93122 | 497 | %attr(755,root,root) %{_bindir}/labltk |
498 | %attr(755,root,root) %{_bindir}/ocamlbrowser | |
56260732 MM |
499 | %dir %{_libdir}/%{name}/labltk |
500 | %{_libdir}/%{name}/labltk/*.cm* | |
501 | %{_libdir}/%{name}/labltk/*.a | |
73a93122 | 502 | %attr(755,root,root) %{_libdir}/%{name}/labltk/tkcompiler |
ba35c88b | 503 | %{_examplesdir}/%{name}-labltk-%{version} |
56260732 MM |
504 | %endif |
505 | ||
b552f088 | 506 | %if %{with x} |
79502218 JB |
507 | %files x11graphics |
508 | %defattr(644,root,root,755) | |
509 | %attr(755,root,root) %{_libdir}/%{name}/stublibs/dllgraphics.so | |
510 | ||
981ff793 | 511 | %files x11graphics-devel |
56260732 | 512 | %defattr(644,root,root,755) |
13b509d1 | 513 | %{_libdir}/%{name}/graphics*.cm* |
f442d039 | 514 | %{_libdir}/%{name}/graphics.a |
56260732 | 515 | %{_libdir}/%{name}/libgraphics.a |
56260732 MM |
516 | %endif |
517 | ||
79502218 | 518 | %files camlp4 |
65fbc6c7 | 519 | %defattr(644,root,root,755) |
e1542d3b JB |
520 | %attr(755,root,root) %{_bindir}/camlp4* |
521 | %attr(755,root,root) %{_bindir}/mkcamlp4 | |
79502218 | 522 | %{_libdir}/%{name}/camlp4 |
e1542d3b JB |
523 | %{_mandir}/man1/camlp4*.1* |
524 | %{_mandir}/man1/mkcamlp4.1* | |
4797676b | 525 | |
79502218 | 526 | %files camlp4-doc-html |
13b509d1 | 527 | %defattr(644,root,root,755) |
79502218 | 528 | %doc docs/html/camlp4* |
13b509d1 | 529 | |
79502218 | 530 | %files compiler-objects |
69735a4b | 531 | %defattr(644,root,root,755) |
79502218 | 532 | %{_libdir}/%{name}/compiler |
69735a4b | 533 | |
79502218 | 534 | %files ocamldoc-devel |
73a93122 | 535 | %defattr(644,root,root,755) |
79502218 JB |
536 | %{_libdir}/%{name}/ocamldoc/*.cm* |
537 | %{_libdir}/%{name}/ocamldoc/*.a | |
69735a4b | 538 | |
79502218 | 539 | %files examples |
69735a4b | 540 | %defattr(644,root,root,755) |
79502218 | 541 | %{_examplesdir}/%{name}-%{version} |