]> git.pld-linux.org Git - packages/clisp.git/blob - clisp.spec
93b5ceede5f716fbc9c86cc7b17a0f93326c4cb0
[packages/clisp.git] / clisp.spec
1 #
2 # Conditional build:
3 %bcond_with     oci     # Oracle module (BR: proprietary libs)
4 %bcond_with     tests   # run test suite `make check' (uses network, won't pass on vserver)
5 #
6 Summary:        Common Lisp (ANSI CL) implementation
7 Summary(pl.UTF-8):      Implementacja Common Lisp (ANSI CL)
8 Summary(pt_BR.UTF-8):   Implementação do Common Lisp (ANSI CL)
9 Name:           clisp
10 Version:        2.50
11 Release:        3
12 License:        GPL v2
13 Group:          Development/Languages
14 #Source0Download: https://gitlab.com/gnu-clisp/clisp/-/tags  (2.50 is a not a tag, but branch with no release yet???)
15 Source0:        https://gitlab.com/gnu-clisp/clisp/-/archive/clisp-%{version}/clisp-clisp-%{version}.tar.bz2
16 # Source0-md5:  e1813423a98973c2a43b3690c563c024
17 Patch0:         %{name}-shell.patch
18 Patch1:         x32.patch
19 URL:            http://clisp.cons.org/
20 BuildRequires:  db-devel
21 BuildRequires:  dbus-devel
22 BuildRequires:  fcgi-devel
23 BuildRequires:  ffcall-devel
24 BuildRequires:  gettext-tools
25 BuildRequires:  gdbm-devel
26 BuildRequires:  groff
27 BuildRequires:  gtk+2-devel >= 2.0
28 BuildRequires:  libglade2-devel >= 2.0
29 BuildRequires:  libsigsegv-devel >= 2.4
30 BuildRequires:  libsvm-devel >= 3.0
31 BuildRequires:  libunistring-devel
32 BuildRequires:  ncurses-devel
33 %{?with_oci:BuildRequires:      oracle-instantclient-devel}
34 BuildRequires:  pari-devel
35 # share/parigp/pari.desc
36 BuildRequires:  parigp
37 BuildRequires:  pcre-devel
38 BuildRequires:  pkgconfig
39 BuildRequires:  postgresql-devel
40 BuildRequires:  readline-devel
41 BuildRequires:  xorg-lib-libICE-devel
42 BuildRequires:  xorg-lib-libSM-devel
43 BuildRequires:  xorg-lib-libX11-devel
44 BuildRequires:  xorg-lib-libXau-devel
45 BuildRequires:  xorg-lib-libXext-devel
46 BuildRequires:  xorg-lib-libXpm-devel
47 BuildRequires:  xorg-proto-xextproto-devel
48 BuildRequires:  zlib-devel
49 Requires:       ffcall-devel
50 Requires:       libsigsegv-devel >= 2.4
51 Requires:       libunistring-devel
52 Requires:       ncurses-devel
53 Requires:       readline-devel
54 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55
56 %define specflags_ppc   -DNO_GENERATIONAL_GC
57 %define specflags_ppc64 -DNO_GENERATIONAL_GC
58
59 %description
60 Common Lisp is a high-level, all-purpose programming language. CLISP
61 is a Common Lisp implementation by Bruno Haible of Karlsruhe
62 University and Michael Stoll of Munich University, both in Germany. It
63 mostly supports Common Lisp as described in the ANSI CL standard. It
64 runs on microcomputers (DOS, OS/2, Windows NT, Windows 95, Amiga
65 500-4000, Acorn RISC PC) as well as on Unix workstations (Linux, SVR4,
66 Sun4, DEC Alpha OSF, HP-UX, NeXTstep, SGI, AIX, Sun3 and others) and
67 needs only 2 MB of RAM.
68
69 It is free software and may be distributed under the terms of GNU GPL,
70 while it is possible to distribute commercial applications compiled
71 with CLISP.
72
73 The user interface comes in German, English, French and Spanish. CLISP
74 includes an interpreter, a compiler, a large subset of CLOS, a foreign
75 language interface and a socket interface. An X11 interface is
76 available through CLX and Garnet.
77
78 %description -l pl.UTF-8
79 Common Lisp to wysokopoziomowy język programowania ogólnego
80 przeznaczenia. CLISP to implementacja Common Lisp, której autorami są
81 Bruno Haible z Karlsruhe University oraz Michael Stoll z Munich
82 University (oba w Niemczech). W większości wspiera Common Lisp opisany
83 w standardzie ANSI CL. Działa na mikrokomputerach (DOS, OS/2, Windows
84 NT, Windows 95, Amiga 500-4000, Acorn RICS PC), a także stacjach
85 uniksowych (Linux, SVR4, Sun4, DEC Alpha OSF, HP-UX, NeXTstep, SGI,
86 AIX, Sun3 i inne) i wymaga tylko 2 MB RAM.
87
88 To jest oprogramowanie wolnodostępne, na licencji GNU GPL, możliwe
89 jest dystrybuowanie komercyjnych aplikacji skompilowanych CLISP-em.
90
91 Interfejs użytkownika dostępny jest po niemiecku, angielsku, francusku
92 i hiszpańsku. CLISP zawiera interpreter, kompilator, znaczny podzbiór
93 CLOS, interfejs do innych języków oraz interfejs do gniazdek.
94 Interfejs X11 jest dostępny poprzez CLX i Garnet.
95
96 %description -l pt_BR.UTF-8
97 Common Lisp é uma linguagem de programação de propósito geral de alto
98 nível. CLISP é uma implementação do Common Lisp feita por Bruno
99 Haible, da Universidade Karlsruhe, e Michael Stoll, da Universidade de
100 Munique, ambas na Alemanha. O CLISP é quase totalmente compatível com
101 o Common Lisp descrito pelo padrão ANSI CL. Além disso, CLISP é
102 software livre, distribuído sob os termos da GNU GPL.
103
104 %package module-berkeley-db
105 Summary:        Berkeley DB module for CLISP
106 Summary(pl.UTF-8):      Moduł Berkeley DB dla CLISP-a
107 Group:          Development/Languages
108 Requires:       %{name} = %{version}-%{release}
109
110 %description module-berkeley-db
111 Berkeley DB database module for CLISP.
112
113 %description module-berkeley-db -l pl.UTF-8
114 Moduł baz danych Berkeley DB dla CLISP-a.
115
116 %package module-clx
117 Summary:        CLX module for CLISP
118 Summary(pl.UTF-8):      Moduł CLX dla CLISP-a
119 Group:          Development/Languages
120 Requires:       %{name} = %{version}-%{release}
121
122 %description module-clx
123 CLX (Common Lisp X interface) graphics module for CLISP.
124
125 %description module-clx -l pl.UTF-8
126 Moduł grafiki CTX (interfejs Common List do X) dla CLISP-a.
127
128 %package module-dbus
129 Summary:        DBus module for CLISP
130 Summary(pl.UTF-8):      Moduł DBus dla CLISP-a
131 Group:          Development/Languages
132 Requires:       %{name} = %{version}-%{release}
133
134 %description module-dbus
135 DBus communication module for CLISP.
136
137 %description module-dbus -l pl.UTF-8
138 Moduł komunikacji DBus dla CLISP-a.
139
140 %package module-fastcgi
141 Summary:        FastCGI module for CLISP
142 Summary(pl.UTF-8):      Moduł FastCGI dla CLISP-a
143 Group:          Development/Languages
144 Requires:       %{name} = %{version}-%{release}
145
146 %description module-fastcgi
147 FastCGI communication module for CLISP.
148
149 %description module-fastcgi -l pl.UTF-8
150 Moduł komunikacji FastCGI dla CLISP-a.
151
152 %package module-gdbm
153 Summary:        GDBM module for CLISP
154 Summary(pl.UTF-8):      Moduł GDBM dla CLISP-a
155 Group:          Development/Languages
156 Requires:       %{name} = %{version}-%{release}
157
158 %description module-gdbm
159 GDBM database module for CLISP.
160
161 %description module-gdbm -l pl.UTF-8
162 Moduł baz danych GDBM dla CLISP-a.
163
164 %package module-gtk2
165 Summary:        GTK2 module for CLISP
166 Summary(pl.UTF-8):      Moduł GTK2 dla CLISP-a
167 Group:          Development/Languages
168 Requires:       %{name} = %{version}-%{release}
169
170 %description module-gtk2
171 GTK2 graphics module for CLISP.
172
173 %description module-gtk2 -l pl.UTF-8
174 Moduł grafiki GTK2 dla CLISP-a.
175
176 %package module-libsvm
177 Summary:        LibSVM module for CLISP
178 Summary(pl.UTF-8):      Moduł LibSVM dla CLISP-a
179 Group:          Development/Languages
180 Requires:       %{name} = %{version}-%{release}
181
182 %description module-libsvm
183 LibSVM (Support Vector Machine) math module for CLISP.
184
185 %description module-libsvm -l pl.UTF-8
186 Moduł matematyczny LibSVM (Support Vector Machine) dla CLISP-a.
187
188 %package module-oracle
189 Summary:        Oracle module for CLISP
190 Summary(pl.UTF-8):      Moduł Oracle dla CLISP-a
191 Group:          Development/Languages
192 Requires:       %{name} = %{version}-%{release}
193
194 %description module-oracle
195 Oracle database module for CLISP.
196
197 %description module-oracle -l pl.UTF-8
198 Moduł baz danych Oracle dla CLISP-a.
199
200 %package module-pari
201 Summary:        PARI module for CLISP
202 Summary(pl.UTF-8):      Moduł PARI dla CLISP-a
203 Group:          Development/Languages
204 Requires:       %{name} = %{version}-%{release}
205
206 %description module-pari
207 PARI math module for CLISP.
208
209 %description module-pari -l pl.UTF-8
210 Moduł matematyczny PARI dla CLISP-a.
211
212 %package module-pcre
213 Summary:        PCRE module for CLISP
214 Summary(pl.UTF-8):      Moduł PCRE dla CLISP-a
215 Group:          Development/Languages
216 Requires:       %{name} = %{version}-%{release}
217
218 %description module-pcre
219 PCRE matching module for CLISP.
220
221 %description module-pcre -l pl.UTF-8
222 Moduł dopasowań PCRE dla CLISP-a.
223
224 %package module-postgresql
225 Summary:        PostgreSQL module for CLISP
226 Summary(pl.UTF-8):      Moduł PostgreSQL dla CLISP-a
227 Group:          Development/Languages
228 Requires:       %{name} = %{version}-%{release}
229
230 %description module-postgresql
231 PostgreSQL database module for CLISP.
232
233 %description module-postgresql -l pl.UTF-8
234 Moduł baz danych PostgreSQL dla CLISP-a.
235
236 %package module-zlib
237 Summary:        Zlib module for CLISP
238 Summary(pl.UTF-8):      Moduł Zlib dla CLISP-a
239 Group:          Development/Languages
240 Requires:       %{name} = %{version}-%{release}
241
242 %description module-zlib
243 Zlib compression module for CLISP.
244
245 %description module-zlib -l pl.UTF-8
246 Moduł kompresji Zlib dla CLISP-a.
247
248 %package -n emacs-clisp-mode
249 Summary:        CLISP mode for Emacs
250 Summary(pl.UTF-8):      Tryb edycji CLISP dla Emacsa
251 Group:          Applications/Editors
252 Requires:       emacs-common
253
254 %description -n emacs-clisp-mode
255 CLISP mode for Emacs.
256
257 %description -n emacs-clisp-mode -l pl.UTF-8
258 Tryb edycji CLISP dla Emacsa.
259
260 %package -n vim-syntax-lisp
261 Summary:        LISP syntax highlighting for Vim
262 Summary(pl.UTF-8):      Podświetlanie składni LISP-a w Vimie
263 Group:          Applications/Editors
264 Requires:       vim-rt
265
266 %description -n vim-syntax-lisp
267 LISP syntax highlighting for Vim.
268
269 %description -n vim-syntax-lisp -l pl.UTF-8
270 Podświetlanie składni LISP-a w Vimie.
271
272 %prep
273 %setup -q -n clisp-clisp-%{version}
274 %patch0 -p1
275 %patch1 -p1
276
277 # changing default -O to optflags causes memory fault on amd64
278 # - so something is broken... code or compiler
279 # -fno-strict-aliasing seems to fix crashes on amd64 but doesn't fix
280 # random crashes on sparc (which occur with default CFLAGS)
281 #%{__perl} -pi -e "s@' -O2?([^0])@' %{rpmcflags} -fno-strict-aliasing\$1@" src/makemake.in
282
283 %build
284 %ifarch ppc ppc64
285 ulimit -s unlimited
286 %else
287 ulimit -s 32768
288 %endif
289
290 CC="%{__cc}" \
291 %ifarch sparc sparcv9 sparc64
292 CFLAGS="%{rpmcflags} -DSAFETY=3" \
293 %else
294 %ifarch %{ix86} x32
295 CFLAGS="%{rpmcflags} -falign-functions=4" \
296 %else
297 CFLAGS="%{rpmcflags}" \
298 %endif
299 %endif
300 CPPFLAGS="%{rpmcppflags} -I/usr/include/fastcgi" \
301 ./configure \
302 %ifarch x32
303         --host=%{_target_platform} \
304 %endif
305         --prefix=%{_prefix} \
306         --with-pari-datadir=%{_datadir}/parigp \
307
308 cd src
309 ./makemake \
310         --prefix=%{_prefix} \
311         --fsstnd=redhat \
312         --with-dynamic-ffi \
313         --with-gettext \
314         --with-readline \
315         --with-module=asdf \
316         --with-module=berkeley-db \
317         --with-module=bindings/glibc \
318         --with-module=clx/new-clx \
319         --with-module=dbus \
320         --with-module=editor \
321         --with-module=fastcgi \
322         --with-module=gdbm \
323         --with-module=gtk2 \
324         --with-module=libsvm \
325         %{?with_oci:--with-module=oracle} \
326         --with-module=pari \
327         --with-module=pcre \
328         --with-module=postgresql \
329         --with-module=rawsock \
330         --with-module=zlib \
331         >Makefile
332 %{__make} -j1 config.lisp \
333         TOPDIR=clisp
334 %{__make} -j1 \
335         libdir=%{_libdir} \
336         %{?with_oci:ORA_INCLUDES="-I/usr/include/oracle/client"} \
337         TOPDIR=clisp
338
339 %{?with_tests:%{__make} -j1 check}
340
341 %install
342 rm -rf $RPM_BUILD_ROOT
343
344 %{__make} -j1 -C src install \
345         DESTDIR=$RPM_BUILD_ROOT \
346         libdir=%{_libdir} \
347         docdir=%{_docdir}/%{name}-%{version} \
348         mandir=%{_mandir} \
349         TOPDIR=clisp
350
351 # already packaged as man/html/pdf
352 %{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/doc/clisp*.{1,ps}
353
354 # clisp and clisplow domains
355 %find_lang %{name} --all-name
356
357 %clean
358 rm -rf $RPM_BUILD_ROOT
359
360 %files -f %{name}.lang
361 %defattr(644,root,root,755)
362 %attr(755,root,root) %{_bindir}/clisp
363 %attr(755,root,root) %{_bindir}/clisp-link
364 %doc %{_docdir}/%{name}-%{version} 
365 %dir %{_libdir}/clisp
366 %dir %{_libdir}/clisp/base
367 %{_libdir}/clisp/base/*.[aho]
368 %{_libdir}/clisp/base/lispinit.mem
369 %attr(755,root,root) %{_libdir}/clisp/base/lisp.run
370 %{_libdir}/clisp/base/makevars
371 %{_libdir}/clisp/bindings
372 %{_libdir}/clisp/build-aux
373 %{_libdir}/clisp/data
374 %dir %{_libdir}/clisp/dynmod
375 %{_libdir}/clisp/dynmod/linux.lisp
376 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-linux.so
377 %{_libdir}/clisp/linkkit
378 %{_aclocaldir}/clisp.m4
379 %{_mandir}/man1/clisp.1*
380 %{_mandir}/man1/clisp-link.1*
381
382 # addtional modules with no external dependencies
383
384 %{_libdir}/clisp/asdf
385 %{_libdir}/clisp/dynmod/asdf.lisp
386
387 %{_libdir}/clisp/editor
388 %{_libdir}/clisp/dynmod/editor.lisp
389
390 %{_libdir}/clisp/rawsock
391 %{_libdir}/clisp/dynmod/rawsock.lisp
392 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-rawsock.so
393
394 %files module-berkeley-db
395 %defattr(644,root,root,755)
396 %{_libdir}/clisp/berkeley-db
397 %{_libdir}/clisp/dynmod/bdb.lisp
398 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-bdb.so
399
400 %files module-clx
401 %defattr(644,root,root,755)
402 %{_libdir}/clisp/clx
403 %{_libdir}/clisp/dynmod/clx.lisp
404 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-clx.so
405
406 %files module-dbus
407 %defattr(644,root,root,755)
408 %{_libdir}/clisp/dbus
409 %{_libdir}/clisp/dynmod/dbus.lisp
410 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-dbus.so
411
412 %files module-fastcgi
413 %defattr(644,root,root,755)
414 %{_libdir}/clisp/fastcgi
415 %{_libdir}/clisp/dynmod/fastcgi.lisp
416 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-fastcgi.so
417
418 %files module-gdbm
419 %defattr(644,root,root,755)
420 %{_libdir}/clisp/gdbm
421 %{_libdir}/clisp/dynmod/gdbm.lisp
422 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-gdbm.so
423
424 %files module-gtk2
425 %defattr(644,root,root,755)
426 %{_libdir}/clisp/gtk2
427 %{_libdir}/clisp/dynmod/gtk.lisp
428 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-gtk.so
429
430 %files module-libsvm
431 %defattr(644,root,root,755)
432 %{_libdir}/clisp/libsvm
433 %{_libdir}/clisp/dynmod/libsvm.lisp
434 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-libsvm.so
435
436 %if %{with oci}
437 %files module-oracle
438 %defattr(644,root,root,755)
439 %{_libdir}/clisp/oracle
440 %{_libdir}/clisp/dynmod/oracle.lisp
441 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-oracle.so
442 %endif
443
444 %files module-pari
445 %defattr(644,root,root,755)
446 %{_libdir}/clisp/pari
447 %{_libdir}/clisp/dynmod/pari.lisp
448 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-pari.so
449
450 %files module-pcre
451 %defattr(644,root,root,755)
452 %{_libdir}/clisp/pcre
453 %{_libdir}/clisp/dynmod/pcre.lisp
454 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-pcre.so
455
456 %files module-postgresql
457 %defattr(644,root,root,755)
458 %{_libdir}/clisp/postgresql
459 %{_libdir}/clisp/dynmod/postgresql.lisp
460 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-postgresql.so
461
462 %files module-zlib
463 %defattr(644,root,root,755)
464 %{_libdir}/clisp/zlib
465 %{_libdir}/clisp/dynmod/zlib.lisp
466 %attr(755,root,root) %{_libdir}/clisp/dynmod/lib-zlib.so
467
468 %files -n emacs-clisp-mode
469 %defattr(644,root,root,755)
470 %{_lispdir}/clhs.el
471 %{_lispdir}/clisp-coding.el
472 %{_lispdir}/clisp-ffi.el
473 %{_lispdir}/clisp-indent.el
474 %{_lispdir}/clisp-indent.lisp
475
476 %files -n vim-syntax-lisp
477 %defattr(644,root,root,755)
478 %{_datadir}/vim/vimfiles/after/syntax/lisp.vim
This page took 0.10529 seconds and 2 git commands to generate.