Commit gambit-c to stable versions
This commit is contained in:
parent
7aba68c3a4
commit
9390798305
@ -0,0 +1,2 @@
|
||||
gambc-v4_2_8.tgz
|
||||
termite080616_0057.tar.gz
|
17
gambc-v4_2_8-modtime.patch
Normal file
17
gambc-v4_2_8-modtime.patch
Normal file
@ -0,0 +1,17 @@
|
||||
--- gambc-v4_2_8/configure.modtime 2008-05-25 00:18:44.000000000 -0400
|
||||
+++ gambc-v4_2_8/configure 2008-06-07 18:51:26.000000000 -0400
|
||||
@@ -23821,10 +23821,10 @@
|
||||
srcdirpfx="\$(srcdir)/"
|
||||
fi
|
||||
|
||||
-INSTALL='$(rootfromhere)/install-sh -c'
|
||||
-INSTALL_DATA='$(rootfromhere)/install-sh -c -m 644'
|
||||
-INSTALL_LIB='$(rootfromhere)/install-sh -c -m 644'
|
||||
-INSTALL_PROGRAM='$(rootfromhere)/install-sh -c -m 755'
|
||||
+INSTALL='install -p'
|
||||
+INSTALL_DATA='install -m 644 -p'
|
||||
+INSTALL_LIB='install -m 644 -p'
|
||||
+INSTALL_PROGRAM='install -m 755 -p'
|
||||
|
||||
|
||||
|
246
gambit-c.spec
Normal file
246
gambit-c.spec
Normal file
@ -0,0 +1,246 @@
|
||||
%define dirname gambc-v4_2_8
|
||||
|
||||
%if %($(pkg-config emacs) ; echo $?)
|
||||
%define emacs_version 22.2
|
||||
%define emacs_lispdir %{_datadir}/emacs/site-lisp
|
||||
%define emacs_startdir %{_datadir}/emacs/site-lisp/site-start.d
|
||||
%else
|
||||
%define emacs_version %(pkg-config emacs --modversion)
|
||||
%define emacs_lispdir %(pkg-config emacs --variable sitepkglispdir)
|
||||
%define emacs_startdir %(pkg-config emacs --variable sitestartdir)
|
||||
%endif
|
||||
|
||||
Name: gambit-c
|
||||
Version: 4.2.8
|
||||
Release: 5%{?dist}
|
||||
Summary: Gambit-C Scheme programming system
|
||||
|
||||
Group: Development/Languages
|
||||
License: ASL 2.0 or LGPLv2
|
||||
URL: http://www.iro.umontreal.ca/~gambit
|
||||
Source0: http://www.iro.umontreal.ca/~gambit/download/gambit/v4.2/source/%{dirname}.tgz
|
||||
Source1: http://toute.ca/termite080616_0057.tar.gz
|
||||
Source2: gambit-init.el
|
||||
Patch0: gambc-v4_2_8-modtime.patch
|
||||
Patch1: termite-fix-defrandom.patch
|
||||
BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
|
||||
|
||||
BuildRequires: emacs emacs-el
|
||||
Requires: gcc
|
||||
|
||||
%description
|
||||
Gambit-C includes a Scheme interpreter and a Scheme compiler which can
|
||||
be used to build standalone executables. Because the compiler
|
||||
generates portable C code it is fairly easy to port to any platform
|
||||
with a decent C compiler.
|
||||
|
||||
The Gambit-C system conforms to the R4RS, R5RS and IEEE Scheme
|
||||
standards. The full numeric tower is implemented, including: infinite
|
||||
precision integers (bignums), rationals, inexact reals (floating point
|
||||
numbers), and complex numbers.
|
||||
|
||||
|
||||
%package doc
|
||||
Summary: Documentation for %{name}
|
||||
Group: Documentation
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires(post): info
|
||||
Requires(preun): info
|
||||
|
||||
|
||||
%description doc
|
||||
Gambit-C includes a Scheme interpreter and a Scheme compiler which can
|
||||
be used to build standalone executables. Because the compiler
|
||||
generates portable C code it is fairly easy to port to any platform
|
||||
with a decent C compiler.
|
||||
|
||||
This package contains the Gambit-C user manual in HTML and PDF formats.
|
||||
|
||||
|
||||
%package termite
|
||||
Summary: Termite distributed programming system
|
||||
Group: Development/Languages
|
||||
URL: http://www.toute.ca/
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
|
||||
%description termite
|
||||
Termite is an Erlang-like distributed programming system written in Scheme.
|
||||
|
||||
|
||||
%package termite-doc
|
||||
Summary: Examples for the Termite distributed programming system
|
||||
Group: Documentation
|
||||
Requires: %{name}-termite = %{version}-%{release}
|
||||
|
||||
%description termite-doc
|
||||
Termite is an Erlang-like distributed programming system written in Scheme.
|
||||
|
||||
This package contains examples and benchmarks for Termite.
|
||||
|
||||
|
||||
%package -n emacs-gambit
|
||||
Summary: Gambit-C editing mode for Emacs
|
||||
Group: Applications/Editors
|
||||
Requires: emacs(bin) >= %{emacs_version}
|
||||
|
||||
|
||||
%description -n emacs-gambit
|
||||
An Emacs mode for editing Gambit-C Scheme source code.
|
||||
|
||||
|
||||
%prep
|
||||
%setup -q -n %{dirname} -a1
|
||||
%patch0 -p1 -b .modtime
|
||||
# Not using -b, as the directory content is moved to DESTDIR as a whole
|
||||
# This way we don't end up with the unpatched file lying around
|
||||
%patch1 -p0
|
||||
|
||||
find . -name '*.scm' | xargs chmod 0644
|
||||
find examples -name '*.scm' | xargs sed -i 's|/usr/local/Gambit-C|/usr|g'
|
||||
sed -i "s|\xE9|\xC3\xA9|g" doc/gambit-c.info-2
|
||||
# Permission fixes
|
||||
chmod -x lib/{mem.c,setup.h}
|
||||
|
||||
|
||||
%build
|
||||
%configure --enable-single-host \
|
||||
--enable-gcc-opts \
|
||||
--prefix=%{_libdir}/%{name}
|
||||
|
||||
make %{?_smp_mflags}
|
||||
|
||||
# Compile emacs module
|
||||
(cd misc && emacs -batch -f batch-byte-compile gambit.el)
|
||||
|
||||
|
||||
%check
|
||||
make check
|
||||
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
make install prefix=$RPM_BUILD_ROOT%{_libdir}/%{name}
|
||||
mkdir -p $RPM_BUILD_ROOT%{_bindir}
|
||||
for i in gsc gsi
|
||||
do
|
||||
ln -sf ../%{_lib}/%{name}/current/bin/$i $RPM_BUILD_ROOT%{_bindir}/$i
|
||||
done
|
||||
cat > $RPM_BUILD_ROOT%{_bindir}/gsix <<EOF
|
||||
#!/bin/sh
|
||||
%{_libdir}/%{name}/current/bin/six $@
|
||||
EOF
|
||||
chmod +x $RPM_BUILD_ROOT%{_bindir}/gsix
|
||||
|
||||
# Remove duplicate docs
|
||||
rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/current/doc
|
||||
mkdir -p $RPM_BUILD_ROOT%{_infodir}
|
||||
cp -a $RPM_BUILD_ROOT%{_libdir}/%{name}/current/info/* $RPM_BUILD_ROOT%{_infodir}
|
||||
rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/current/info
|
||||
rm -rf $RPM_BUILD_ROOT%{_libdir}/%{name}/current/share
|
||||
|
||||
# Emacs mode files
|
||||
mkdir -p $RPM_BUILD_ROOT%{emacs_lispdir}
|
||||
mkdir -p $RPM_BUILD_ROOT%{emacs_startdir}
|
||||
cp -p misc/gambit.el* $RPM_BUILD_ROOT%{emacs_lispdir}
|
||||
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{emacs_startdir}
|
||||
|
||||
# Termite
|
||||
chmod 755 termite termite/examples
|
||||
chmod -R g+r-w,o+r termite
|
||||
cd termite
|
||||
mv tsi $RPM_BUILD_ROOT%{_bindir}
|
||||
|
||||
# Fix script interpreters
|
||||
find benchmarks examples otp -name '*.scm' | xargs \
|
||||
sed -i 's|/usr/local/Gambit-C/bin/gsi|/usr/bin/gsi|g'
|
||||
chmod +x otp/gen_event.scm
|
||||
|
||||
# Move docs
|
||||
mkdir ../termite-doc ../termite-more-docs
|
||||
mv CHANGELOG LICENSE README VERSION ../termite-doc
|
||||
mv benchmarks examples ../termite-more-docs
|
||||
rm INSTALL
|
||||
cd ..
|
||||
|
||||
mv termite $RPM_BUILD_ROOT%{_libdir}/%{name}/current/lib
|
||||
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
|
||||
%post doc
|
||||
/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir 2>/dev/null || :
|
||||
|
||||
|
||||
%preun doc
|
||||
if [ $1 -eq 0 ]; then
|
||||
/sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir 2>/dev/null || :
|
||||
fi
|
||||
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc LGPL.txt LICENSE-2.0.txt README
|
||||
%exclude %{_bindir}/tsi
|
||||
%{_bindir}/*
|
||||
%exclude %{_libdir}/%{name}/*/lib/termite
|
||||
%{_libdir}/%{name}
|
||||
|
||||
%files termite
|
||||
%defattr(-,root,root,-)
|
||||
%doc termite-doc/*
|
||||
%{_bindir}/tsi
|
||||
%{_libdir}/%{name}/v%{version}/lib/termite
|
||||
|
||||
%files -n emacs-gambit
|
||||
%defattr(-,root,root,-)
|
||||
%{emacs_lispdir}/*
|
||||
|
||||
%files doc
|
||||
%defattr(-,root,root,-)
|
||||
%doc doc/gambit-c.html doc/gambit-c.pdf examples
|
||||
%{_infodir}/*
|
||||
|
||||
%files termite-doc
|
||||
%defattr(-,root,root,-)
|
||||
%doc termite-more-docs/*
|
||||
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Jun 19 2008 Michel Alexandre Salim <salimma@fedoraproject.org> - 4.2.8-5
|
||||
- Package Termite as a module instead of bundling a custom Gambit-C with it
|
||||
|
||||
* Thu Jun 19 2008 Michel Alexandre Salim <salimma@fedoraproject.org> - 4.2.8-4
|
||||
- Permission fixes for Termite subpackage
|
||||
|
||||
* Wed Jun 18 2008 Michel Alexandre Salim <salimma@fedoraproject.org> - 4.2.8-3
|
||||
- Bundle Termite as a subpackage
|
||||
|
||||
* Sat Jun 7 2008 Michel Alexandre Salim <salimma@fedoraproject.org> - 4.2.8-2
|
||||
- Rename six symlink to avoid clash with existing six package
|
||||
|
||||
* Mon Jun 2 2008 Michel Alexandre Salim <salimma@fedoraproject.org> - 4.2.8-1
|
||||
- Update to 4.2.8
|
||||
- Rename to gambit-c
|
||||
|
||||
* Fri Dec 28 2007 Gerard Milmeister <gemi@bluewin.ch> - 4.1.2-1
|
||||
- new release 4.1.2
|
||||
|
||||
* Sat Apr 14 2007 Gerard Milmeister <gemi@bluewin.ch> - 4.0-1.b22
|
||||
- new version 4.0b22
|
||||
|
||||
* Sun Oct 15 2006 Gerard Milmeister <gemi@bluewin.ch> - 4.0-1.b20
|
||||
- new version 4.0b20
|
||||
|
||||
* Sat Feb 4 2006 Gerard Milmeister <gemi@bluewin.ch> - 4.0-1.b17
|
||||
- new version 4.0b17
|
||||
|
||||
* Mon Nov 7 2005 Gerard Milmeister <gemi@bluewin.ch> - 4.0-1.b15
|
||||
- New Version 4.0b15
|
||||
|
||||
* Fri Aug 12 2005 Gerard Milmeister <gemi@bluewin.ch> - 4.0-1.b14
|
||||
- First Fedora release
|
||||
|
7
gambit-init.el
Normal file
7
gambit-init.el
Normal file
@ -0,0 +1,7 @@
|
||||
;; Integrate Gambit mode into Emacs scheme modes
|
||||
|
||||
(autoload 'gambit-inferior-mode "gambit" "Hook Gambit mode into cmuscheme.")
|
||||
(autoload 'gambit-mode "gambit" "Hook Gambit mode into scheme.")
|
||||
(add-hook 'inferior-scheme-mode-hook (function gambit-inferior-mode))
|
||||
(add-hook 'scheme-mode-hook (function gambit-mode))
|
||||
(setq scheme-program-name "gsi -:t")
|
2
sources
2
sources
@ -0,0 +1,2 @@
|
||||
1ebd2effeb9e936b380d6daffb9e11b8 gambc-v4_2_8.tgz
|
||||
6a93d860ab819694c25febdbd57e60f3 termite080616_0057.tar.gz
|
11
termite-fix-defrandom.patch
Normal file
11
termite-fix-defrandom.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- termite/termite.scm.fix-defrandom 2008-06-16 00:16:49.000000000 -0400
|
||||
+++ termite/termite.scm 2008-06-19 18:16:48.000000000 -0400
|
||||
@@ -900,7 +900,7 @@
|
||||
;; Initialization
|
||||
|
||||
(process-links-set! (self) '())
|
||||
-(random-source-randomize! default-random-source)
|
||||
+;;(random-source-randomize! default-random-source)
|
||||
|
||||
(define (node-init node)
|
||||
(start-tcp-server (node-port node) start-messenger)
|
Loading…
Reference in New Issue
Block a user