File:  [gforth] / gforth / gforth.spec
Revision 1.4: download - view: text, annotated - select for diffs
Sun Jan 9 20:04:15 2011 UTC (13 years, 2 months ago) by pazsan
Branches: MAIN
CVS tags: HEAD
Added ppoll to socket.fs, made string.fs re-requireable even under different path (string.fs is now included inside the kernel, and the require interface works only for the image generation

#
# spec file for package gforth (Version 0.7.0)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#

Name:           gforth
%if 0%{?suse_version}
BuildRequires:  emacs-nox libffi-devel
PreReq:         %{install_info_prereq}
%endif
%if 0%{?rhel_version} || 0%{?centos_version}
BuildRequires:  emacs-nox libtool-ltdl-devel
Requires:       libtool-libs libtool-ltdl libtool-ltdl-devel
%endif
%if 0%{?fedora}
BuildRequires:  emacs-nox libtool-ltdl-devel libffi-devel
Requires:       libffi libtool-libs libtool-ltdl libtool-ltdl-devel libffi-devel
%endif
Url:            http://www.complang.tuwien.ac.at/forth/gforth/
License:        GNU Free Documentation License, Version 1.2 (GFDL 1.2); GPL v2 or later; GPL v3 or later
Group:          Development/Languages/Other
AutoReqProv:    on
Version:        0.7.9
Release:        62.1
Summary:        GNU Forth
Source:         gforth-%{version}.tar.gz
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
Gforth is a fast and portable implementation of the ANS Forth language.



Authors:
--------
    Anton Ertl <anton@mips.complang.tuwien.ac.at>
    Bernd Paysan <bernd.paysan@gmx.de>
    Jens Wilke <wilke@jwdt.com>

%prep
%setup -q

%build
# Fixup timestamps. Can't rebuild them without working gforth
touch engine/prim.i engine/prim_lab.i
%{?suse_update_config}
autoreconf -fi
CFLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE" \
./configure --prefix=/usr --mandir=%{_mandir} --infodir=%{_infodir} \
            --build=%{_target_cpu}-suse-linux
make
emacs --batch --no-site-file -f batch-byte-compile gforth.el
echo > gforth-autoloads.el
emacs --batch -l autoload --eval "(setq generated-autoload-file \"$PWD/gforth-autoloads.el\")" -f batch-update-autoloads .
{
  printf ';;; suse-start-gforth.el
;;
;;; Code:\n
(add-to-list '\''auto-mode-alist '\''("\\\\.fs\\\\'\''" . forth-mode))\n\n'
  sed -n '/^;;; Generated/,/^;;;\*\*\*/p' gforth-autoloads.el
  printf '\n;;; suse-start-gforth.el ends here\n'
} > suse-start-gforth.el
make install.TAGS
rm gforth.fi

%check
make check

%install
make install DESTDIR=$RPM_BUILD_ROOT prefix=/usr mandir=%{_mandir} infodir=%{_infodir}
install -d $RPM_BUILD_ROOT/usr/share/emacs/site-lisp
install -m 644 gforth.el gforth.elc suse-start-gforth.el $RPM_BUILD_ROOT/usr/share/emacs/site-lisp

%clean
rm -rf $RPM_BUILD_ROOT

%post
%install_info --info-dir=%{_infodir} %{_infodir}/gforth.info.gz

%postun
%install_info_delete --info-dir=%{_infodir} %{_infodir}/gforth.info.gz

%files
%defattr(-,root,root)
%doc README BUGS NEWS
/usr/bin/*
/usr/include/gforth
/usr/lib/gforth
/usr/share/emacs/site-lisp/*.el*
/usr/share/gforth
%if 0%{?suse_version}
%dir /usr/share/gforth/site-forth
%config /usr/share/gforth/site-forth/siteinit.fs
%else
/usr/share/info/dir
%endif
%doc %{_infodir}/*.gz
%doc %{_mandir}/man?/*

%changelog
* Thu Dec 23 2010 bernd.paysan@gmx.de
- Started buildservice project
* Thu Nov 06 2008 schwab@suse.de
- Update to gforth 0.7.0.
  Requirements:
  At run-time requires libtool and gcc (for the libcc C interface) and
  gdb (for the disassembler (SEE)) on some platforms.
  Installation:
  support for DESTDIR, POST_INSTALL, INSTALL_SCRIPT
  automatic performance tuning on building (--enable-force-reg unnecessary)
  report performance and functionality problems at end of "make"
  autogen.sh now exists
  License:
  Changed to GPLv3
  Bug fixes
  Now works with address-space randomization.
  The single-step debugger works again in some engines.
  Many others.
  Ports:
  AMD64, ARM, IA-64 (Itanium): better performance
  PPC, PPC64: disassembler and assembler
  Gforth EC: R8C, 4stack, misc, 8086 work
  MacOS X: better support
  Invocation:
  New flags --ignore-async-signals, --vm-commit (default overcommit)
              --print-sequences
  Forth 200x:
  X:extension-query: produce true for all implemented extensions
  X:required REQUIRED etc. (not new)
  X:defined: [DEFINED] and [UNDEFINED]
  X:parse-name: PARSE-NAME (new name)
  X:deferred: deferred words (new: DEFER@ DEFER! ACTION-OF)
  X:structures: +FIELD FIELD: FFIELD: CFIELD: etc.
  X:ekeys: new: EKEY>FKEY K-SHIFT-MASK K-CTRL-MASK K-ALT-MASK K-F1...K-F12
  X:fp-stack (not new)
  X:number-prefixes (partially new, see below)
  Number prefixes:
  0x is a hex prefix: 0xff and 0XfF now produces (decimal) 255
  [#] is a decimal prefix: #10 now produces (decimal) 10
  Signs after the number prefix are now accepted, e.g, #-50.
  ' now only handles a single (x)char: 'ab is no longer accepted,
  'a' now produces (decimal) 97
  Unicode support (currently supports only uniform encoding):
  added xchars words for dealing with variable-width multi-byte characters
  provide 8bit (ISO Latin 1) and UTF-8 support for xchars
  New words:
  \C C-FUNCTION C-LIBRARY END-C-LIBRARY C-LIBRARY-NAME (libcc C interface)
  LIB-ERROR (complements OPEN-LIB)
  OUTFILE-EXECUTE INFILE-EXECUTE BASE-EXECUTE (limited change of global state)
  16-bit and 32-bit memory acces: UW@ UL@ SW@ SL@ W! L! W@ L@ /W /L
  NEXT-ARG SHIFT-ARGS (OS command-line argument processing)
  NOTHROW (for backtrace control)
  FTRUNC FMOD (undocumented)
  SEE-CODE SEE-CODE-RANGE (show generated dynamic native code)
  Improvements/changes of existing words:
  S\", .\" now support \l, \m, \z, and limits hex and octal character specs.
  OPEN-FILE with W/O no longer creates or truncates files (no compat. file)
  OPEN-LIB now understands ~ at the start, like OPEN-FILE.
  TRY...ENDTRY changed significantly, compatibility files available (see docs).
  The disassembler (DISCODE) can now use gdb to disassemble code
  Uninitialized defered words now give a warning when executed
  Division is floored (disable with "configure --enable-force-cdiv")
  Gforth (not gforth-fast) reports division by zero and overflow on division
  on all platforms.
  Newly documented words:
  S>NUMBER? S>UNUMBER?
  EKEY keypress names: K-LEFT  K-RIGHT K-UP K-DOWN K-HOME K-END K-PRIOR
  K-NEXT K-INSERT K-DELETE
  CLEARSTACKS
  FORM
  Environment variable GFORTHSYSTEMPREFIX (used by word SYSTEM and friends)
  C interface:
  exported symbols now start with "gforth_" (for referencing them from C code)
  libcc C function call interface (requires libtool and gcc at run-time)
  alternative: undocumented libffi-based interface
  Libraries:
  depth-changes.fs: report stack depth changes during interpretation
  ans-report.fs now reports CfV extensions
  fsl-util.4th: FSL support files (undocumented)
  regexp.fs for regular expressions (undocumented)
  complex.fs for complex numbers (undocumented)
  fft.fs for Fast Fourier Transform (undocumented)
  wf.fs, a Wiki implementation (undocumented)
  httpd.fs, a web server (undocumented)
  status.fs, show interpreter status in separate xterm (undocumented)
  profile.fs for profiling (undocumented, incomplete)
  endtry-iferror.fs, recover-endtry.fs to ease the TRY change transition
  test/tester.fs: Now works with FP numbers (undocumented)
  test/ttester.fs: Version of tester.fs with improved interface (T{...}T).
  compat library:
  compat/execute-parsing.fs
  Speed improvements:
  automatic performance tuning on building
  static stack caching (good speedup on PPC)
  mixed-precision division is now faster
  support for int128 types on AMD64
  workarounds for gcc performance bugs (in particular, PR 15242)
  branch target alignment (good speedup on Alpha).
* Wed Jul 09 2008 schwab@suse.de
- Fix last change.
* Sat Jul 05 2008 schwab@suse.de
- Fix use of undocumented autoconf variable.
* Thu Oct 11 2007 schwab@suse.de
- Remove obsolete options.
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Thu Jan 19 2006 schwab@suse.de
- Don't strip binaries.
* Tue Dec 20 2005 dmueller@suse.de
- fix file list
* Wed Jan 21 2004 schwab@suse.de
- Workaround gcc 3.3 bug.
* Fri Jan 09 2004 schwab@suse.de
- Update to gforth 0.6.2.
* Tue Oct 28 2003 schwab@suse.de
- Fix quoting in configure script.
* Wed Jul 02 2003 schwab@suse.de
- Fix references to build root.
* Tue May 13 2003 schwab@suse.de
- Fix filelist.
* Thu Apr 24 2003 ro@suse.de
- fix install_info --delete call and move from preun to postun
* Wed Apr 23 2003 schwab@suse.de
- Enable use of long long on ppc.
- Fix and compile gforth.el.
- Add suse-start-gforth.el.
- Include all gforth variants.
* Tue Apr 22 2003 schwab@suse.de
- Use BuildRoot.
* Mon Apr 07 2003 schwab@suse.de
- Only delete info entries when removing last version.
* Thu Mar 27 2003 schwab@suse.de
- Update to gforth 0.6.1.
* Thu Feb 06 2003 schwab@suse.de
- Use %%install_info.
* Tue Sep 17 2002 ro@suse.de
- removed bogus self-provides
* Thu Apr 18 2002 schwab@suse.de
- Fix alpha port for gcc3.
* Thu Apr 18 2002 schwab@suse.de
- Fix i386 port for gcc3.
* Mon Feb 25 2002 schwab@suse.de
- Fix permissions.
* Tue May 08 2001 mfabian@suse.de
- bzip2 sources
* Sun Apr 15 2001 schwab@suse.de
- Fix pointer <-> int clash.
* Fri Oct 06 2000 schwab@suse.de
- Update to version 0.5.0.
* Thu Aug 17 2000 schwab@suse.de
- Fix ia64 configuration.
* Thu Aug 17 2000 schwab@suse.de
- Basic support for ia64.
* Tue Jan 18 2000 schwab@suse.de
- /usr/{info,man} -> /usr/share/{info,man}
* Mon Sep 13 1999 bs@suse.de
- ran old prepare_spec on spec file to switch to new prepare_spec.
* Mon Aug 30 1999 schwab@suse.de
- specfile cleanup
- fix prims2x.fs:read-whole-file for make check
* Fri May 21 1999 ro@suse.de
- update to 0.4.0
* Sat Jun 07 1997 florian@suse.de
- first version of GNU forth 0.3 for S.u.S.E.

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>