diff --git a/.cvsignore b/.cvsignore index e69de29..38ab4be 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +gforth-0.6.2.tar.gz diff --git a/gforth-shebang.patch b/gforth-shebang.patch new file mode 100644 index 0000000..8c1302d --- /dev/null +++ b/gforth-shebang.patch @@ -0,0 +1,41 @@ +--- gforth-0.6.2/filedump.fs.shebang 2005-09-13 00:57:01.000000000 +0200 ++++ gforth-0.6.2/filedump.fs 2005-09-13 00:59:15.000000000 +0200 +@@ -1,4 +1,4 @@ +-#! /usr/local/lib/gforth/0.2.0/kernel.fi ++#! /usr/bin/gforth + \ file hex dump + + \ Copyright (C) 1997,2002,2003 Free Software Foundation, Inc. +--- gforth-0.6.2/httpd.fs.shebang 2005-09-13 00:57:11.000000000 +0200 ++++ gforth-0.6.2/httpd.fs 2005-09-13 01:00:01.000000000 +0200 +@@ -1,4 +1,4 @@ +-#! /usr/local/bin/gforth ++#! /usr/bin/gforth + + \ Copyright (C) 2000,2002,2003 Free Software Foundation, Inc. + +@@ -22,7 +22,7 @@ + + require string.fs + +-Variable DocumentRoot s" /usr/local/httpd/htdocs/" DocumentRoot $! ++Variable DocumentRoot s" /var/www/html/" DocumentRoot $! + Variable UserDir s" .html-data/" UserDir $! + + Variable url +--- gforth-0.6.2/sieve.fs.shebang 2005-09-13 00:57:27.000000000 +0200 ++++ gforth-0.6.2/sieve.fs 2005-09-13 01:00:15.000000000 +0200 +@@ -1,4 +1,4 @@ +-#! /usr/stud/paysan/bin/forth ++#! /usr/bin/gforth + + DECIMAL + : SECS TIME&DATE 2DROP DROP 60 * + 60 * + ; +--- gforth-0.6.2/siev.fs.shebang 2005-09-13 00:57:35.000000000 +0200 ++++ gforth-0.6.2/siev.fs 2005-09-13 01:00:27.000000000 +0200 +@@ -1,4 +1,4 @@ +-\ #! /usr/stud/paysan/bin/forth ++\ #! /usr/bin/gforth + + DECIMAL + \ : SECS TIME&DATE SWAP 60 * + SWAP 3600 * + NIP NIP NIP ; diff --git a/gforth.patch b/gforth.patch new file mode 100644 index 0000000..fd1d5cb --- /dev/null +++ b/gforth.patch @@ -0,0 +1,11 @@ +--- gforth-0.6.2/comp-i.fs.fix 2004-11-22 17:15:09.292698638 +0100 ++++ gforth-0.6.2/comp-i.fs 2004-11-22 17:16:06.122803737 +0100 +@@ -43,7 +43,7 @@ + if + ." : images have the same base address; producing only a data-relocatable image" cr + else +- offset abs expected-offset <> abort" images produced by different engines" ++ \ offset abs expected-offset <> abort" images produced by different engines" + ." offset=" offset . cr + 0 image1 i-field + ! 0 image2 i-field + ! + endif diff --git a/gforth.spec b/gforth.spec new file mode 100644 index 0000000..ae51431 --- /dev/null +++ b/gforth.spec @@ -0,0 +1,143 @@ +Name: gforth +Version: 0.6.2 +Release: 5 +Summary: Fast and portable implementation of the ANS Forth language + +Group: Development/Languages +License: GPL +URL: http://www.jwdt.com/~paysan/gforth.html +Source: http://www.complang.tuwien.ac.at/forth/gforth/gforth-0.6.2.tar.gz +Patch0: gforth.patch +Patch1: gforth-shebang.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Requires(post): /sbin/install-info +Requires(postun): /sbin/install-info + +%description +Gforth is a fast and portable implementation of the ANS Forth +language. It works nicely with the Emacs editor, offers some nice +features such as input completion and history, backtraces, a +decompiler and a powerful locals facility, and it even has a +manual. Gforth combines traditional implementation techniques with +newer techniques for portability and performance performance: its +inner innerpreter is direct threaded with several optimizations, but +you can also use a traditional-style indirect threaded interpreter. + +%define emacs_sitestart_d %{_datadir}/emacs/site-lisp/site-start.d +%define emacs_site_lisp %{_datadir}/emacs/site-lisp +%define xemacs_sitestart_d %{_datadir}/xemacs/site-packages/lisp/site-start.d +%define xemacs_site_lisp %{_datadir}/xemacs/site-packages/lisp +%define gforth_datadir %{_datadir}/gforth + +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 + + +%build +%configure +# %{_smp_mflags} breaks the build +make libdir=%{_libdir} + + +%install +rm -rf $RPM_BUILD_ROOT +%makeinstall +cat > $RPM_BUILD_ROOT%{gforth_datadir}/site-forth/siteinit.fs < $RPM_BUILD_ROOT%{gforth_datadir}/emacs/gforth-init.el </dev/null || : + + +%postun +if [ $1 = 0 ]; then + /sbin/install-info --delete %{_infodir}/%{name}.info.gz %{_infodir}/dir 2>/dev/null || : +fi + + +%clean +rm -rf $RPM_BUILD_ROOT + + +%triggerin -- emacs-common +if [ -d %{emacs_sitestart_d} ]; then + ln -sf %{gforth_datadir}/emacs/gforth-init.el %{emacs_sitestart_d} || : + ln -sf %{gforth_datadir}/emacs/gforth.el %{emacs_site_lisp} || : +fi + +%triggerin -- xemacs-common +if [ -d %{xemacs_sitestart_d} ]; then + ln -sf %{gforth_datadir}/emacs/gforth-init.el %{xemacs_sitestart_d} || : + ln -sf %{gforth_datadir}/emacs/gforth.el %{xemacs_site_lisp} || : +fi + + +%triggerun -- emacs-common +if [ $2 = 0 ]; then + rm -f %{emacs_sitestart_d}/gforth-init.el* || : + rm -f %{emacs_site_lisp}/gforth.el* || : +fi + + +%triggerun -- xemacs-common +if [ $2 = 0 ]; then + rm -f %{xemacs_sitestart_d}/gforth-init.el* || : + rm -f %{xemacs_site_lisp}/gforth.el* || : +fi + + +%files +%defattr(-, root, root) +%doc COPYING COPYING.DOC README README.vmgen NEWS NEWS.vmgen AUTHORS BUGS ChangeLog +%{_bindir}/* +%{_infodir}/* +%{_datadir}/gforth +%{_libdir}/gforth +%{_mandir}/man1/* +%ghost %{_datadir}/*emacs + + +%changelog +* Wed Sep 14 2005 Gerard Milmeister - 0.6.2-5 +- changes to the trigger code + +* Wed Sep 14 2005 Gerard Milmeister - 0.6.2-4 +- use triggers to install (x)emacs files +- create not-empty siteinit.fs + +* Tue Sep 13 2005 Gerard Milmeister - 0.6.2-3 +- fix for building on x86_64 +- patch fixing shebang executable path + +* Sat Mar 19 2005 Gerard Milmeister - 0.6.2-2 +- Included gforth.el + +* Sun Feb 13 2005 Gerard Milmeister - 0:0.6.2-1 +- Included patch for exec-shield + +* Wed Oct 15 2003 Gerard Milmeister - 0:0.6.2-0.fdr.1 +- First Fedora release diff --git a/sources b/sources index e69de29..5f280d8 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +869112bd762b07fc4d2038a2d9965148 gforth-0.6.2.tar.gz