1428ab6
Name:		clisp
cf9745a
Summary:	ANSI Common Lisp implementation
af54751
Version:	2.49
c50874d
Release:	1%{?dist}
1428ab6
1428ab6
Group:		Development/Languages
e6bc873
License:	GPLv2
a97ff9f
URL:		http://clisp.cons.org
cf9745a
Source0:	http://downloads.sourceforge.net/project/clisp/clisp/%{version}/clisp-%{version}.tar.bz2
cf9745a
BuildRequires:	compat-readline5-devel
cf9745a
BuildRequires:	db4-devel
8b6fa7f
BuildRequires:	dbus-devel
8b6fa7f
BuildRequires:	fcgi-devel
8b6fa7f
BuildRequires:	ffcall
8b6fa7f
BuildRequires:	gdbm-devel
cf9745a
BuildRequires:	gettext-devel
cf9745a
BuildRequires:	ghostscript
cf9745a
BuildRequires:	groff
8b6fa7f
BuildRequires:	gtk2-devel
8b6fa7f
BuildRequires:	libICE-devel
8b6fa7f
BuildRequires:	libSM-devel
8b6fa7f
BuildRequires:	libX11-devel
8b6fa7f
BuildRequires:	libXaw-devel
8b6fa7f
BuildRequires:	libXext-devel
8b6fa7f
BuildRequires:	libXft-devel
8b6fa7f
BuildRequires:	libXmu-devel
8b6fa7f
BuildRequires:	libXrender-devel
8b6fa7f
BuildRequires:	libXt-devel
8b6fa7f
BuildRequires:	libglade2-devel
cf9745a
BuildRequires:	libsigsegv-devel
cf9745a
BuildRequires:	libsvm-devel
cf9745a
BuildRequires:	pari-devel
8b6fa7f
BuildRequires:	pcre-devel
8b6fa7f
BuildRequires:	postgresql-devel
8b6fa7f
BuildRequires:	zlib-devel
5912655
cf9745a
# See Red Hat bug #238954
770dfee
ExcludeArch:	ppc64
770dfee
1428ab6
ff72eab
%description
ff72eab
ANSI Common Lisp is a high-level, general-purpose programming
ff72eab
language.  GNU CLISP is a Common Lisp implementation by Bruno Haible
ff72eab
of Karlsruhe University and Michael Stoll of Munich University, both
ff72eab
in Germany.  It mostly supports the Lisp described in the ANSI Common
ff72eab
Lisp standard.  It runs on most Unix workstations (GNU/Linux, FreeBSD,
ff72eab
NetBSD, OpenBSD, Solaris, Tru64, HP-UX, BeOS, NeXTstep, IRIX, AIX and
ff72eab
others) and on other systems (Windows NT/2000/XP, Windows 95/98/ME)
c19cbcc
and needs only 4 MiB of RAM.
ff72eab
ff72eab
It is Free Software and may be distributed under the terms of GNU GPL,
ff72eab
while it is possible to distribute commercial proprietary applications
ff72eab
compiled with GNU CLISP.
ff72eab
ff72eab
The user interface comes in English, German, French, Spanish, Dutch,
ff72eab
Russian and Danish, and can be changed at run time.  GNU CLISP
ff72eab
includes an interpreter, a compiler, a debugger, CLOS, MOP, a foreign
ff72eab
language interface, sockets, i18n, fast bignums and more.  An X11
ff72eab
interface is available through CLX, Garnet, CLUE/CLIO.  GNU CLISP runs
ff72eab
Maxima, ACL2 and many other Common Lisp packages.
1428ab6
1428ab6
1428ab6
%package devel
1428ab6
Summary:	Development files for CLISP
1428ab6
Group:		Development/Languages
af54751
Provides:	%{name}-static = %{version}-%{release} 
8b6fa7f
Requires:	%{name} = %{version}-%{release}, automake
1428ab6
1428ab6
%description devel
cf9745a
Files necessary for linking CLISP programs.
1428ab6
bba28db
1428ab6
%prep
1428ab6
%setup -q
1428ab6
cf9745a
# Convince CLisp to build against compat-readline5 instead of readline.
cf9745a
# This is to avoid pulling the GPLv3 readline 6 into a GPLv2 CLisp binary.
cf9745a
# See Red Hat bug #511303.
cf9745a
mkdir -p readline/include
cf9745a
ln -s %{_includedir}/readline5/readline readline/include/readline
cf9745a
ln -s %{_libdir}/readline5 readline/%{_lib}
cf9745a
cf9745a
# Change URLs not affected by the --hyperspec argument to configure
cf9745a
sed -i 's|lisp.org/HyperSpec/Body/chap-7.html|lispworks.com/documentation/HyperSpec/Body/07_.htm|' \
cf9745a
    src/clos-package.lisp
cf9745a
sed -i 's|lisp.org/HyperSpec/FrontMatter|lispworks.com/documentation/HyperSpec/Front|' \
cf9745a
    src/_README.*
cf9745a
cf9745a
# We only link against libraries in system directories, so we need -L dir in
cf9745a
# place of -Wl,-rpath -Wl,dir
cf9745a
cp -p src/build-aux/config.rpath config.rpath.orig
cf9745a
sed -i -e 's/${wl}-rpath ${wl}/-L/g' src/build-aux/config.rpath
1428ab6
1428ab6
%build
5912655
%ifarch ppc ppc64
26d74d4
%define opt_flags "$RPM_OPT_FLAGS -DNO_GENERATIONAL_GC -DNO_MULTIMAP_FILE -DNO_SINGLEMAP"
5912655
ulimit -s unlimited
5912655
%else
5912655
%define opt_flags "$RPM_OPT_FLAGS"
5912655
%endif
5912655
cf9745a
# Do not need to specify base modules: i18n, readline, regexp, syscalls
cf9745a
# The dirkey module currently can only be built on Windows/Cygwin/MinGW
e6bc873
./configure --prefix=%{_prefix} \
8b6fa7f
	    --libdir=%{_libdir} \
8b6fa7f
	    --mandir=%{_mandir} \
8b6fa7f
	    --docdir=%{_docdir}/clisp-%{version} \
8b6fa7f
	    --fsstnd=redhat \
8b6fa7f
	    --hyperspec=http://www.lispworks.com/documentation/HyperSpec/ \
8b6fa7f
	    --with-module=berkeley-db \
8b6fa7f
	    --with-module=bindings/glibc \
8b6fa7f
	    --with-module=clx/new-clx \
8b6fa7f
	    --with-module=dbus \
8b6fa7f
	    --with-module=fastcgi \
8b6fa7f
	    --with-module=gdbm \
8b6fa7f
	    --with-module=gtk2 \
cf9745a
	    --with-module=libsvm \
8b6fa7f
	    --with-module=pari \
8b6fa7f
	    --with-module=pcre \
8b6fa7f
	    --with-module=postgresql \
8b6fa7f
	    --with-module=rawsock \
8b6fa7f
	    --with-module=wildcard \
8b6fa7f
	    --with-module=zlib \
cf9745a
	    --with-libreadline-prefix=`pwd`/readline \
8b6fa7f
	    --cbc \
cf9745a
	    build \
cf9745a
	    CFLAGS="$RPM_OPT_FLAGS -I/usr/include/libsvm -Wa,--noexecstack" \
cf9745a
	    LDFLAGS="-Wl,-z,noexecstack"
26d74d4
1428ab6
%install
1428ab6
rm -rf $RPM_BUILD_ROOT
5912655
make -C build DESTDIR=$RPM_BUILD_ROOT install
1428ab6
rm -f $RPM_BUILD_ROOT%{_docdir}/clisp-%{version}/doc/clisp.{dvi,1,ps}
1428ab6
cp -p doc/mop-spec.pdf $RPM_BUILD_ROOT%{_docdir}/clisp-%{version}/doc
8ed5c9f
cp -p doc/*.png $RPM_BUILD_ROOT%{_docdir}/clisp-%{version}/doc
8ed5c9f
cp -p doc/Why-CLISP* $RPM_BUILD_ROOT%{_docdir}/clisp-%{version}/doc
8ed5c9f
cp -p doc/regexp.html $RPM_BUILD_ROOT%{_docdir}/clisp-%{version}/doc
8ed5c9f
find $RPM_BUILD_ROOT%{_libdir} -name '*.dvi' | xargs rm -f
1428ab6
%find_lang %{name}
1428ab6
%find_lang %{name}low
1428ab6
cat %{name}low.lang >> %{name}.lang
1428ab6
cf9745a
# Put back the original config.rpath, and fix executable bits
cf9745a
cp -p config.rpath.orig $RPM_BUILD_ROOT/%{_libdir}/clisp-%{version}/build-aux/config.rpath
cf9745a
chmod a+x \
cf9745a
  $RPM_BUILD_ROOT/%{_libdir}/clisp-%{version}/build-aux/config.guess \
cf9745a
  $RPM_BUILD_ROOT/%{_libdir}/clisp-%{version}/build-aux/config.sub \
cf9745a
  $RPM_BUILD_ROOT/%{_libdir}/clisp-%{version}/build-aux/depcomp
1428ab6
1428ab6
%files -f %{name}.lang
1428ab6
%defattr(-,root,root,-)
1428ab6
%{_bindir}/clisp
1428ab6
%{_mandir}/man1/*
1428ab6
%{_docdir}/clisp-%{version}
e6bc873
%dir %{_libdir}/clisp-*/base
e6bc873
%dir %{_libdir}/clisp-*
e6bc873
%{_libdir}/clisp-*/base/lispinit.mem
e6bc873
%{_libdir}/clisp-*/base/lisp.run
af54751
%{_libdir}/clisp-*/data/
af54751
# FIXME: many of these module dirs contain Makefile,*.{a,o,h} 
af54751
# similar base/ in -devel below -- Rex
af54751
%{_libdir}/clisp-*/berkeley-db/
af54751
%{_libdir}/clisp-*/bindings/
af54751
%{_libdir}/clisp-*/build-aux/
af54751
%{_libdir}/clisp-*/clx/
af54751
%{_libdir}/clisp-*/dbus/
af54751
%{_libdir}/clisp-*/dynmod/
af54751
%{_libdir}/clisp-*/fastcgi/
af54751
%{_libdir}/clisp-*/gdbm/
af54751
%{_libdir}/clisp-*/gtk2/
cf9745a
%{_libdir}/clisp-*/libsvm/
af54751
%{_libdir}/clisp-*/pari/
af54751
%{_libdir}/clisp-*/pcre/
af54751
%{_libdir}/clisp-*/postgresql/
af54751
%{_libdir}/clisp-*/rawsock/
af54751
%{_libdir}/clisp-*/wildcard/
af54751
%{_libdir}/clisp-*/zlib/
e8dcc16
%{_datadir}/emacs/site-lisp/*
e6bc873
%{_datadir}/vim/vimfiles/after/syntax/*
1428ab6
1428ab6
%files devel
1428ab6
%defattr(-,root,root,-)
af54751
%{_bindir}/clisp-link
e6bc873
%{_libdir}/clisp-*/base/*.a
e6bc873
%{_libdir}/clisp-*/base/*.o
e6bc873
%{_libdir}/clisp-*/base/*.h
e6bc873
%{_libdir}/clisp-*/base/makevars
af54751
%{_libdir}/clisp-*/linkkit/
8b6fa7f
%{_datadir}/aclocal/clisp.m4
1428ab6
1428ab6
1428ab6
%clean
1428ab6
rm -fr $RPM_BUILD_ROOT
1428ab6
1428ab6
1428ab6
%changelog
c50874d
* Fri Feb 11 2011 Jerry James <loganjerry@gmail.com> - 2.49-1
cf9745a
- Build with compat-readline5 instead of readline (#511303)
cf9745a
- Build the libsvm module
cf9745a
- Get rid of the execstack flag on Lisp images
c50874d
- Changes from Rex Dieter <rdieter@fedoraproject.org>:
c50874d
  o clisp-2.49 (#612469)
c50874d
  o -devel: Provides: %%name-static (#609602)
af54751
f98071e
* Sun Nov 28 2010 Rex Dieter <rdieter@fedoraproject.org> - 2.48-2
f98071e
- rebuild (libsigsegv)
f98071e
8b6fa7f
* Fri Feb 26 2010 Jerry James <loganjerry@gmail.com> - 2.48-1
8b6fa7f
- new release 2.48
8b6fa7f
cc92ca9
* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.47-4
cc92ca9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
cc92ca9
cccf7dc
* Tue Feb 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.47-2
cccf7dc
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
cccf7dc
8ed5c9f
* Sat Nov 22 2008 Gerard Milmeister <gemi@bluewin.ch> - 2.47-1
8ed5c9f
- new release 2.47
8ed5c9f
5912655
* Wed Jul  2 2008 Gerard Milmeister <gemi@bluewin.ch> - 2.46-1
5912655
- new release 2.46
5912655
5912655
* Fri Apr 18 2008 Gerard Milmeister <gemi@bluewin.ch> - 2.44.1-1
5912655
- new release 2.44.1
5912655
787b83d
* Fri Feb 22 2008 Gerard Milmeister <gemi@bluewin.ch> - 2.43-5
787b83d
- Compile with -O0 to avoid GCC 4.3 miscompilation
787b83d
066af0b
* Mon Feb 18 2008 Fedora Release Engineering <rel-eng@fedoraproject.org> - 2.43-4
066af0b
- Autorebuild for GCC 4.3
066af0b
e6bc873
* Sat Nov 24 2007 Gerard Milmeister <gemi@bluewin.ch> - 2.43-1
e6bc873
- new release 2.43
e6bc873
e6bc873
* Tue Oct 16 2007 Gerard Milmeister <gemi@bluewin.ch> - 2.42-1
e6bc873
- new release 2.42
e6bc873
770dfee
* Fri May  4 2007 David Woodhouse <dwmw2@infradead.org> - 2.41-6
770dfee
- Revert to overriding stack limit in specfile
770dfee
770dfee
* Thu May  3 2007 David Woodhouse <dwmw2@infradead.org> - 2.41-5
429577a
- Exclude ppc64 for now
429577a
c19cbcc
* Mon Apr 30 2007 David Woodhouse <dwmw2@infradead.org> - 2.41-4
c19cbcc
- Fix stack size in configure, restore ppc build
c19cbcc
946d128
* Sat Dec  9 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.41-3
946d128
- rebuild without berkeley-db for now
946d128
66b82d3
* Fri Oct 13 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.41-1
66b82d3
- new version 2.41
66b82d3
4c56dc8
* Tue Oct  3 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.40-3
4c56dc8
- Added patch for x86_64
4c56dc8
e8dcc16
* Mon Oct  2 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.40-1
e8dcc16
- new version 2.40
e8dcc16
0adc193
* Mon Aug 28 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.39-4
0adc193
- Rebuild for FE6
0adc193
a97ff9f
* Fri Jul 28 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.39-3
a97ff9f
- changed url to canonical web page
a97ff9f
08fe268
* Mon Jul 24 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.39-2
08fe268
- rebuild with updated libsigsegv
08fe268
- set CFLAGS to ""
08fe268
1c43286
* Mon Jul 17 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.39-1
1c43286
- new version 2.39
1c43286
a5a3eaa
* Fri Feb 17 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.38-2
a5a3eaa
- Rebuild for Fedora Extras 5
a5a3eaa
bba28db
* Sun Jan 29 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.38-1
bba28db
- new version 2.38
bba28db
1f4808d
* Tue Jan  3 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.37-1
1f4808d
- new version 2.37
1f4808d
0c74731
* Wed Dec 28 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.36-1
0c74731
- New Version 2.36
0c74731
ff72eab
* Tue Aug 30 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.35-1
ff72eab
- New Version 2.35
ff72eab
ff72eab
* Thu Aug 18 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.34-5
ff72eab
- do the compilation in the "build" directory
ff72eab
ff72eab
* Thu Aug 18 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.34-4
ff72eab
- Use ulimit for the build to succeed on ppc
ff72eab
c3fceea
* Wed Aug 17 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.34-3
c3fceea
- Build fails on ppc, exclude for now
c3fceea
36acdf2
* Wed Aug 17 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.34-2
36acdf2
- Fix libdir for x86_64
36acdf2
1428ab6
* Tue Aug 16 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.34-1
1428ab6
- New Version 2.34