Blob Blame History Raw
Name:           gcl
Version:        2.6.7
Release:        15%{?dist}
Summary:        GNU Common Lisp

Group:          Development/Languages
License:        GPL, LGPL
URL:            http://www.gnu.org/software/gcl
Source:         ftp://ftp.gnu.org/pub/gnu/gcl/gcl-2.6.7.tar.gz
Patch0:		gcl-pers.patch
Patch1:		gcl-bash.patch
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires:  readline-devel
BuildRequires:  ncurses-devel
BuildRequires:  binutils-devel
BuildRequires:	tk-devel
BuildRequires:	tcl-devel
BuildRequires:  gmp-devel
BuildRequires:	tetex
BuildRequires:  texinfo
Requires(post): /sbin/install-info, policycoreutils
Requires(postun): /sbin/install-info, policycoreutils
ExcludeArch:	ppc ppc64


%description
GCL is a Common Lisp currently compliant with the ANSI standard. Lisp
compilation produces native code through the intermediary of the
system's C compiler, from which GCL derives efficient performance and
facile portability. Currently uses TCL/Tk as GUI.


%prep
%setup -q
%patch0 -p1
%patch1 -p1
sed -i "s|-lreadline|-lreadline -lncurses|" configure


%build
%configure --enable-readline --enable-ansi --enable-tclconfig=%{_libdir} --enable-tkconfig=%{_libdir}
perl -pi -e 's|/usr/lib/tk|%{_datadir}/tk|' debian/gcl.sh makedefc makedefs
perl -pi -e 's|/usr/lib/tcl|%{_datadir}/tcl|' debian/gcl.sh makedefc makedefs
# %{?_smp_mflags} breaks the build
make 


%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT
rm -f $RPM_BUILD_ROOT%{_infodir}/dir
rm -rf $RPM_BUILD_ROOT%{_datadir}/doc
rm -rf $RPM_BUILD_ROOT%{_datadir}/emacs
rm -rf $RPM_BUILD_ROOT%{_prefix}/lib/gcl-*/info
mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
cp -f man/man1/* $RPM_BUILD_ROOT%{_mandir}/man1
mkdir -p html
cp -fr info/gcl-si info/gcl-tk html 
chmod 644 ChangeLog* COPYING* 
mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/gcl
chmod 644 elisp/*
cp -fr elisp/* $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/gcl
mkdir -p $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d
cat > $RPM_BUILD_ROOT%{_datadir}/emacs/site-lisp/site-start.d/gcl.el <<EOF
(add-to-list 'load-path "%{_datadir}/emacs/site-lisp/gcl")
(autoload 'run "gcl" "Run GCL." t)
(autoload 'gcl-mode "gcl" "GCL mode." t)
EOF
find $RPM_BUILD_ROOT%{_prefix}/lib/gcl* -name '*.l*sp' | xargs chmod 0644
export QA_SKIP_BUILD_ROOT=1


%clean
rm -rf $RPM_BUILD_ROOT


%post
/sbin/install-info %{_infodir}/%{name}-si.info %{_infodir}/dir 2>/dev/null || :
/sbin/install-info %{_infodir}/%{name}-tk.info %{_infodir}/dir 2>/dev/null || :
/usr/sbin/semanage fcontext -a -t textrel_shlib_t "%{_prefix}/lib/gcl-%{version}/unixport/saved_ansi_gcl" 2>/dev/null || :
/sbin/restorecon "%{_prefix}/lib/gcl-%{version}/unixport/saved_ansi_gcl" 2> /dev/null || :


%postun
if [ $1 = 0 ]; then
    /sbin/install-info --delete %{_infodir}/%{name}-si.info %{_infodir}/dir 2>/dev/null || :
    /sbin/install-info --delete %{_infodir}/%{name}-tk.info %{_infodir}/dir 2>/dev/null || :
    /usr/sbin/semanage fcontext -d -t textrel_shlib_t "%{_prefix}/lib/gcl-%{version}/unixport/saved_ansi_gcl" 2>/dev/null || :
fi


%files
%defattr(-,root,root,-)
%{_bindir}/*
%{_prefix}/lib/gcl*
%{_infodir}/*
%{_mandir}/man*/*
%{_datadir}/emacs/site-lisp/gcl
%{_datadir}/emacs/site-lisp/site-start.d/*
%doc COPYING* readme RELEASE* ChangeLog doc/*
%doc --parent html


%changelog
* Tue Aug 14 2007 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-15
- Fix post-install script path on x64_64

* Wed Dec 27 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-14
- added req ncurses-devel

* Thu Dec 21 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-13
- Fix for compiling with readline library

* Mon Aug 28 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-12
- Rebuild for FE6

* Sat May  6 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-11
- fixed summary text (CLtL1 -> ANSI)
- configure: readine -> readline

* Fri Apr 14 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-10
- added changes to SELinux policy

* Wed Mar  8 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-7
- Patch gcl-bash.patch for configure

* Sat Feb 18 2006 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-6
- Rebuild for Fedora Extras 5

* Fri Sep  9 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.6.7-1
- New Version 2.6.7

* Sun Apr 17 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.6.6-2
- Added buildreq tetex and texinfo

* Wed Apr  6 2005 Gerard Milmeister <gemi@bluewin.ch> - 2.6.6-1
- New Version 2.6.6

* Fri Feb 18 2005 Gerard Milmeister <gemi@bluewin.ch> - 0:2.6.5-1
- First Fedora release