#this spec needs to be edited, inspired by a OpenSUSE .spec %define bootstrap 1 Name: sbcl Version: 1.0.55 Release: %mkrel 0 Summary: Steel Bank Common Lisp compiler and runtime system License: BSD Group: Development/Other URL: http://sbcl.sourceforge.net/ Source0: http://downloads.sourceforge.net/project/sbcl/sbcl/%{version}/%{name}-%{version}-source.tar.bz2 #temporarily don't use Source3 and patches Source3: customize-target-features.lisp Patch1: sbcl-1.0.45-default-sbcl-home.patch Patch2: sbcl-0.9.5-personality.patch Patch3: sbcl-1.0.28-optflags.patch Patch4: sbcl-0.9.17-LIB_DIR.patch Patch5: sbcl-1.0.16-GNU_SOURCE.patch # Allow override of contrib test failure(s) Patch7: sbcl-1.0.2-permissive.patch Requires(post): /sbin/install-info Requires(preun):/sbin/install-info # doc generation BuildRequires: ghostscript BuildRequires: texinfo BuildRequires: texlive BuildRequires: time %if %{bootstrap} BuildRequires: clisp %else BuildRequires: sbcl %endif %description Steel Bank Common Lisp (SBCL) is a Open Source development environment for Common Lisp. It includes an integrated native compiler, interpreter, and debugger. %prep %setup -q #patch1 -p1 -b .default-sbcl-home #patch2 -p1 -b .personality #patch3 -p1 -b .optflags #patch4 -p1 -b .LIB_DIR #patch5 -p2 -b .GNU_SOURCE #patch7 -p1 -b .permissive #%if %{threads} #install -m644 -p %{SOURCE3} ./customize-target-features.lisp #%endif %build %if %{bootstrap} sh make.sh "clisp" --prefix=%{_prefix} %else #to be tested if it works sh make.sh "sbcl" --prefix=%{_prefix} %endif make -C doc/manual %install INSTALL_ROOT=%{buildroot}%{_prefix} sh install.sh if test %{_docdir} != %{_prefix}/share/doc ;then mkdir -p %{buildroot}%{_docdir} mv %{buildroot}%{_prefix}/share/doc/sbcl %{buildroot}%{_docdir}/ fi ## Unpackaged files rm -f %{buildroot}%{_infodir}/dir # CVS crud find %{buildroot} -name CVS -type d | xargs rm -rf find %{buildroot} -name .cvsignore | xargs rm -f # 'test-passed' files from %%check find %{buildroot} -name 'test-passed' | xargs rm -vf %post for info in sbcl.info asdf.info do %_install_info $info done %postun for info in sbcl.info asdf.info do %_remove_install_info $info done %files %doc %{_docdir}/%{name} %{_bindir}/* %{_prefix}/lib/%{name}/asdf-install/* %{_prefix}/lib/%{name}/asdf/* %{_prefix}/lib/%{name}/sb-aclrepl/* %{_prefix}/lib/%{name}/sb-bsd-sockets/* %{_prefix}/lib/%{name}/sb-cltl2/* %{_prefix}/lib/%{name}/sb-concurrency/*.fasl %{_prefix}/lib/%{name}/sb-concurrency/*.lisp %{_prefix}/lib/%{name}/sb-concurrency/*.texinfo %{_prefix}/lib/%{name}/sb-concurrency/*.asd %{_prefix}/lib/%{name}/sb-concurrency/tests/* %{_prefix}/lib/%{name}/sb-concurrency/Makefile %{_prefix}/lib/%{name}/sb-cover/* %{_prefix}/lib/%{name}/sb-executable/* %{_prefix}/lib/%{name}/sb-grovel/* %{_prefix}/lib/%{name}/sb-introspect/* %{_prefix}/lib/%{name}/sb-md5/* %{_prefix}/lib/%{name}/sb-posix/* %{_prefix}/lib/%{name}/sb-queue/* %{_prefix}/lib/%{name}/sb-rotate-byte/* %{_prefix}/lib/%{name}/sb-rt/* %{_prefix}/lib/%{name}/sb-simple-streams/* %{_prefix}/lib/%{name}/sb-sprof/* %{_prefix}/lib/%{name}/%{name}.* %{_infodir}/* %{_mandir}/man?/*