X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=clisp.spec;h=e30e68913889e74a4027fbfb2ee1f5f76acdbf3b;hb=72f0b7acc1f81ec64cc00bb3d0b5dbc0026bf78e;hp=9517e8539cb4f19544028fd8e584d18f631360c3;hpb=b497779e76fee293e8124a56244094f14600a954;p=packages%2Fclisp.git diff --git a/clisp.spec b/clisp.spec index 9517e85..e30e689 100644 --- a/clisp.spec +++ b/clisp.spec @@ -1,20 +1,24 @@ +# TODO: +# - review alpha patch # # Conditional build: -%bcond_without tests # run test suite `make check' +%bcond_with tests # run test suite `make check' (uses network, won't pass on vserver) # Summary: Common Lisp (ANSI CL) implementation -Summary(pl): Implementacja Common Lisp (ANSI CL) -Summary(pt_BR): Implementação do Common Lisp (ANSI CL) +Summary(pl.UTF-8): Implementacja Common Lisp (ANSI CL) +Summary(pt_BR.UTF-8): Implementação do Common Lisp (ANSI CL) Name: clisp -Version: 2.41 -Release: 1 +Version: 2.47 +Release: 6 License: GPL Group: Development/Languages Source0: http://dl.sourceforge.net/clisp/%{name}-%{version}.tar.bz2 -# Source0-md5: 3a7a00e82ebeeb72a75a032f84c36c6c +# Source0-md5: 8fa89bb13e865fc7c7150b82682f35af Patch0: %{name}-shell.patch Patch1: %{name}-alpha.patch +Patch2: %{name}-gcc4.patch URL: http://clisp.cons.org/ +BuildRequires: ffcall-devel BuildRequires: gettext-devel BuildRequires: libsigsegv >= 2.4 BuildRequires: ncurses-devel @@ -24,6 +28,9 @@ BuildRequires: xorg-lib-libXpm-devel BuildRequires: xorg-proto-xextproto-devel BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) +%define specflags_ppc -DNO_GENERATIONAL_GC +%define specflags_ppc64 -DNO_GENERATIONAL_GC + %description Common Lisp is a high-level, all-purpose programming language. CLISP is a Common Lisp implementation by Bruno Haible of Karlsruhe @@ -43,36 +50,37 @@ includes an interpreter, a compiler, a large subset of CLOS, a foreign language interface and a socket interface. An X11 interface is available through CLX and Garnet. -%description -l pl -Common Lisp to wysokopoziomowy jêzyk programowania ogólnego -przeznaczenia. CLISP to implementacja Common Lisp, której autorami s± +%description -l pl.UTF-8 +Common Lisp to wysokopoziomowy język programowania ogólnego +przeznaczenia. CLISP to implementacja Common Lisp, której autorami są Bruno Haible z Karlsruhe University oraz Michael Stoll z Munich -University (oba w Niemczech). W wiêkszo¶ci wspiera Common Lisp opisany -w standardzie ANSI CL. Dzia³a na mikrokomputerach (DOS, OS/2, Windows -NT, Windows 95, Amiga 500-4000, Acorn RICS PC), a tak¿e stacjach +University (oba w Niemczech). W większości wspiera Common Lisp opisany +w standardzie ANSI CL. Działa na mikrokomputerach (DOS, OS/2, Windows +NT, Windows 95, Amiga 500-4000, Acorn RICS PC), a także stacjach uniksowych (Linux, SVR4, Sun4, DEC Alpha OSF, HP-UX, NeXTstep, SGI, AIX, Sun3 i inne) i wymaga tylko 2 MB RAM. -To jest oprogramowanie wolnodostêpne, na licencji GNU GPL, mo¿liwe +To jest oprogramowanie wolnodostępne, na licencji GNU GPL, możliwe jest dystrybuowanie komercyjnych aplikacji skompilowanych CLISP-em. -Interfejs u¿ytkownika dostêpny jest po niemiecku, angielsku, francusku -i hiszpañsku. CLISP zawiera interpreter, kompilator, znaczny podzbiór -CLOS, interfejs do innych jêzyków oraz interfejs do gniazdek. -Interfejs X11 jest dostêpny poprzez CLX i Garnet. +Interfejs użytkownika dostępny jest po niemiecku, angielsku, francusku +i hiszpańsku. CLISP zawiera interpreter, kompilator, znaczny podzbiór +CLOS, interfejs do innych języków oraz interfejs do gniazdek. +Interfejs X11 jest dostępny poprzez CLX i Garnet. -%description -l pt_BR -Common Lisp é uma linguagem de programação de propósito geral de alto -nível. CLISP é uma implementação do Common Lisp feita por Bruno +%description -l pt_BR.UTF-8 +Common Lisp é uma linguagem de programação de propósito geral de alto +nível. CLISP é uma implementação do Common Lisp feita por Bruno Haible, da Universidade Karlsruhe, e Michael Stoll, da Universidade de -Munique, ambas na Alemanha. O CLISP é quase totalmente compatível com -o Common Lisp descrito pelo padrão ANSI CL. Além disso, CLISP é -software livre, distribuído sob os termos da GNU GPL. +Munique, ambas na Alemanha. O CLISP é quase totalmente compatível com +o Common Lisp descrito pelo padrão ANSI CL. Além disso, CLISP é +software livre, distribuído sob os termos da GNU GPL. %prep %setup -q %patch0 -p1 -%patch1 -p1 +#%patch1 -p1 +%patch2 -p1 # changing default -O to optflags causes memory fault on amd64 # - so something is broken... code or compiler @@ -81,7 +89,19 @@ software livre, distribu #%{__perl} -pi -e "s@' -O2?([^0])@' %{rpmcflags} -fno-strict-aliasing\$1@" src/makemake.in %build + +%ifarch ppc ppc64 +ulimit -s unlimited +%else +ulimit -s 32768 +%endif + CC="%{__cc}" \ +%ifarch sparc sparcv9 sparc64 +CFLAGS="%{rpmcflags} -DSAFETY=3" \ +%else +CFLAGS="%{rpmcflags}" \ +%endif ./configure \ --prefix=%{_prefix} @@ -96,20 +116,23 @@ cd src --with-module=bindings/glibc \ --with-module=clx/new-clx \ >Makefile -%{__make} config.lisp -%{__make} \ - libdir=%{_libdir} +%{__make} -j1 config.lisp \ + TOPDIR=clisp +%{__make} -j1 \ + libdir=%{_libdir} \ + TOPDIR=clisp -%{?with_tests:%{__make} check} +%{?with_tests:%{__make} -j1 check} %install rm -rf $RPM_BUILD_ROOT -%{__make} -C src install \ +%{__make} -j1 -C src install \ DESTDIR=$RPM_BUILD_ROOT \ libdir=%{_libdir} \ lispdocdir=%{_docdir}/%{name}-%{version} \ - mandir=%{_mandir} + mandir=%{_mandir} \ + TOPDIR=clisp install -d $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/modules install modules/*/*.dvi $RPM_BUILD_ROOT%{_docdir}/%{name}-%{version}/modules @@ -122,7 +145,7 @@ rm -rf $RPM_BUILD_ROOT %files -f %{name}.lang %defattr(644,root,root,755) %attr(755,root,root) %{_bindir}/clisp -%doc %{_docdir}/%{name}-%{version} +%doc %{_docdir}/%{name}-%{version} %dir %{_libdir}/clisp %dir %{_libdir}/clisp/base %{_libdir}/clisp/base/*.[aho]