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