]> git.pld-linux.org Git - packages/clisp.git/blame - clisp.spec
drop patches which don't seem to be necessary anymore
[packages/clisp.git] / clisp.spec
CommitLineData
3cd314f5
ŁK
1# TODO:
2# - review alpha patch
e69735d7 3# - unpackaged files (see the end of spec)
4cbc7eda
MK
4# - there is newer clisp release available at https://gitlab.com/gnu-clisp/clisp.git
5# and in some distros (ie. Fedora/Rawhide)
bfd7e11e 6#
79f0f74b 7# Conditional build:
cdd858ea 8%bcond_with tests # run test suite `make check' (uses network, won't pass on vserver)
bfd7e11e 9#
692f929b
JP
10%define version_date 2018-02-18
11%define snap %(echo %{version_date}|tr -d -)
12
59f7b327 13Summary: Common Lisp (ANSI CL) implementation
2b164edd
ER
14Summary(pl.UTF-8): Implementacja Common Lisp (ANSI CL)
15Summary(pt_BR.UTF-8): Implementação do Common Lisp (ANSI CL)
59f7b327 16Name: clisp
692f929b
JP
17Version: 2.49.92
18Release: 0.%{snap}.1
e69735d7 19License: GPL v2
59f7b327 20Group: Development/Languages
692f929b
JP
21Source0: https://gitlab.com/gnu-clisp/clisp/-/archive/clisp-%{version}-%{version_date}/clisp-clisp-%{version}-%{version_date}.tar.bz2
22# Source0-md5: 57be9eac0883590760dcc2fc24fc0fd6
59f7b327 23Patch0: %{name}-shell.patch
3a2acc05 24Patch1: x32.patch
59f7b327 25URL: http://clisp.cons.org/
3cd314f5 26BuildRequires: ffcall-devel
770760d8 27BuildRequires: gettext-tools
afc85770 28BuildRequires: libsigsegv >= 2.4
10afc298 29BuildRequires: ncurses-devel
05dfe0ce 30BuildRequires: readline-devel
a84435bf
JB
31BuildRequires: xorg-lib-libX11-devel
32BuildRequires: xorg-lib-libXpm-devel
33BuildRequires: xorg-proto-xextproto-devel
59f7b327 34BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35
df1563da 36%define specflags_ppc -DNO_GENERATIONAL_GC
37%define specflags_ppc64 -DNO_GENERATIONAL_GC
38
59f7b327 39%description
40Common Lisp is a high-level, all-purpose programming language. CLISP
41is a Common Lisp implementation by Bruno Haible of Karlsruhe
42University and Michael Stoll of Munich University, both in Germany. It
43mostly supports Common Lisp as described in the ANSI CL standard. It
44runs on microcomputers (DOS, OS/2, Windows NT, Windows 95, Amiga
45500-4000, Acorn RISC PC) as well as on Unix workstations (Linux, SVR4,
46Sun4, DEC Alpha OSF, HP-UX, NeXTstep, SGI, AIX, Sun3 and others) and
47needs only 2 MB of RAM.
48
49It is free software and may be distributed under the terms of GNU GPL,
50while it is possible to distribute commercial applications compiled
51with CLISP.
52
53The user interface comes in German, English, French and Spanish. CLISP
54includes an interpreter, a compiler, a large subset of CLOS, a foreign
55language interface and a socket interface. An X11 interface is
56available through CLX and Garnet.
57
9a5b73ba
JR
58%description -l pl.UTF-8
59Common Lisp to wysokopoziomowy język programowania ogólnego
60przeznaczenia. CLISP to implementacja Common Lisp, której autorami są
66d98f1f 61Bruno Haible z Karlsruhe University oraz Michael Stoll z Munich
9a5b73ba
JR
62University (oba w Niemczech). W większości wspiera Common Lisp opisany
63w standardzie ANSI CL. Działa na mikrokomputerach (DOS, OS/2, Windows
64NT, Windows 95, Amiga 500-4000, Acorn RICS PC), a także stacjach
66d98f1f
JB
65uniksowych (Linux, SVR4, Sun4, DEC Alpha OSF, HP-UX, NeXTstep, SGI,
66AIX, Sun3 i inne) i wymaga tylko 2 MB RAM.
67
9a5b73ba 68To jest oprogramowanie wolnodostępne, na licencji GNU GPL, możliwe
66d98f1f
JB
69jest dystrybuowanie komercyjnych aplikacji skompilowanych CLISP-em.
70
9a5b73ba
JR
71Interfejs użytkownika dostępny jest po niemiecku, angielsku, francusku
72i hiszpańsku. CLISP zawiera interpreter, kompilator, znaczny podzbiór
73CLOS, interfejs do innych języków oraz interfejs do gniazdek.
74Interfejs X11 jest dostępny poprzez CLX i Garnet.
66d98f1f 75
9a5b73ba
JR
76%description -l pt_BR.UTF-8
77Common Lisp é uma linguagem de programação de propósito geral de alto
78nível. CLISP é uma implementação do Common Lisp feita por Bruno
3b8ff915 79Haible, da Universidade Karlsruhe, e Michael Stoll, da Universidade de
9a5b73ba
JR
80Munique, ambas na Alemanha. O CLISP é quase totalmente compatível com
81o Common Lisp descrito pelo padrão ANSI CL. Além disso, CLISP é
82software livre, distribuído sob os termos da GNU GPL.
3b8ff915 83
59f7b327 84%prep
692f929b 85%setup -q -n clisp-clisp-%{version}-%{version_date}
59f7b327 86%patch0 -p1
3a2acc05 87%patch1 -p1
05dfe0ce
JB
88
89# changing default -O to optflags causes memory fault on amd64
90# - so something is broken... code or compiler
0c5f0ead
JB
91# -fno-strict-aliasing seems to fix crashes on amd64 but doesn't fix
92# random crashes on sparc (which occur with default CFLAGS)
93#%{__perl} -pi -e "s@' -O2?([^0])@' %{rpmcflags} -fno-strict-aliasing\$1@" src/makemake.in
59f7b327 94
95%build
5ce91178 96%ifarch ppc ppc64
97ulimit -s unlimited
98%else
df1563da 99ulimit -s 32768
5ce91178 100%endif
fdf4594b 101
79f0f74b 102CC="%{__cc}" \
72f0b7ac 103%ifarch sparc sparcv9 sparc64
104CFLAGS="%{rpmcflags} -DSAFETY=3" \
105%else
01570cfa
JR
106%ifarch %{ix86} x32
107CFLAGS="%{rpmcflags} -falign-functions=4" \
108%else
df1563da 109CFLAGS="%{rpmcflags}" \
72f0b7ac 110%endif
01570cfa 111%endif
79f0f74b 112./configure \
ffbf3c1c 113%ifarch x32
01570cfa 114 --host=%{_target_platform} \
ffbf3c1c 115%endif
00fbe0f1 116 --prefix=%{_prefix}
f404e321 117
59f7b327 118cd src
119./makemake \
120 --prefix=%{_prefix} \
121 --with-readline \
122 --with-gettext \
123 --with-dynamic-ffi \
e4912e71 124 --fsstnd=redhat \
5d55e2b8 125 --with-module=bindings/glibc \
e4912e71 126 --with-module=clx/new-clx \
59f7b327 127 >Makefile
a6fd4b7b 128%{__make} -j1 config.lisp \
3cd314f5 129 TOPDIR=clisp
a6fd4b7b 130%{__make} -j1 \
3cd314f5
ŁK
131 libdir=%{_libdir} \
132 TOPDIR=clisp
bfd7e11e 133
a6fd4b7b 134%{?with_tests:%{__make} -j1 check}
59f7b327 135
136%install
137rm -rf $RPM_BUILD_ROOT
05dfe0ce 138
a6fd4b7b 139%{__make} -j1 -C src install \
59f7b327 140 DESTDIR=$RPM_BUILD_ROOT \
05dfe0ce 141 libdir=%{_libdir} \
2eb6106d 142 docdir=%{_docdir}/%{name}-%{version} \
3cd314f5
ŁK
143 mandir=%{_mandir} \
144 TOPDIR=clisp
05dfe0ce 145
2eb6106d
JB
146# already packaged as man/html/pdf
147%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/doc/clisp*.{1,ps}
59f7b327 148
2eb6106d 149# clisp and clisplow domains
085d3d70 150%find_lang %{name} --all-name
151
59f7b327 152%clean
153rm -rf $RPM_BUILD_ROOT
154
085d3d70 155%files -f %{name}.lang
59f7b327 156%defattr(644,root,root,755)
157%attr(755,root,root) %{_bindir}/clisp
2eb6106d 158%attr(755,root,root) %{_bindir}/clisp-link
bb3deaa0 159%doc %{_docdir}/%{name}-%{version}
59f7b327 160%dir %{_libdir}/clisp
161%dir %{_libdir}/clisp/base
162%{_libdir}/clisp/base/*.[aho]
163%{_libdir}/clisp/base/lispinit.mem
164%attr(755,root,root) %{_libdir}/clisp/base/lisp.run
165%{_libdir}/clisp/base/makevars
2eb6106d
JB
166%{_libdir}/clisp/bindings
167%{_libdir}/clisp/build-aux
168%{_libdir}/clisp/clx
59f7b327 169%{_libdir}/clisp/data
2eb6106d
JB
170%dir %{_libdir}/clisp/dynmod
171%{_libdir}/clisp/dynmod/*.lisp
172%attr(755,root,root) %{_libdir}/clisp/dynmod/lib-*.so
59f7b327 173%{_libdir}/clisp/linkkit
2eb6106d
JB
174%{_aclocaldir}/clisp.m4
175%{_mandir}/man1/clisp.1*
176%{_mandir}/man1/clisp-link.1*
177
178# TODO:
179#%{_datadir}/emacs/site-lisp/clhs.el
180#%{_datadir}/emacs/site-lisp/clisp-coding.el
181#%{_datadir}/emacs/site-lisp/clisp-ffi.el
182#%{_datadir}/emacs/site-lisp/clisp-indent.el
183#%{_datadir}/emacs/site-lisp/clisp-indent.lisp
184#%{_datadir}/vim/vimfiles/after/syntax/lisp.vim
This page took 0.093624 seconds and 4 git commands to generate.