Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37411503
en ru br
Репозитории ALT
S:4.9.4-alt3
5.1: 4.5.2-alt1
4.1: 4.2.5-alt1
4.0: 4.0-alt0.20.2
3.0: 4.0-alt0.14.1
www.altlinux.org/Changes

Группа :: Разработка/Прочее
Пакет: gambit

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

%define _unpackaged_files_terminate_build 1
%def_with emacs

Name: gambit
Version: 4.9.4
Release: alt3

Summary: Gambit-C Scheme programming system
License: Apache-2.0
Group: Development/Other

Url: http://www.iro.umontreal.ca/~gambit/

Packager: Paul Wolneykien <manowar at altlinux.org>

Conflicts: ghostscript-minimal < 8.64-alt5

Source: %name-%version.tar

Patch: gambit-4.9.4-fix-texi-utf-bytes.patch

%if_with emacs
BuildRequires: emacs-nox
%endif
BuildRequires: makeinfo
BuildPreReq: alternatives
BuildPreReq: /proc

%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 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 -n emacs-gambit
Summary: Emacs mode for Gambit-C
Group: Editors
Requires: gambit emacs-common
BuildArch: noarch

%description -n emacs-gambit
Emacs mode for running Gambit-C

%package docs
Summary: Gambit-C manuals ang examples
Group: Development/Documentation
Requires: gambit = %version-%release
BuildArch: noarch

%description docs
Gambit-C manuals ang examples

%package info
Summary: Gambit-C manual in info format
Group: Development/Documentation
Requires: gambit = %version-%release
BuildArch: noarch

%description info
Gambit-C manual in info format

%package devel
Summary: Development files for Gambit-C Scheme
Group: Development/Other
Requires: gambit = %version-%release

%description devel
Development files for Gambit-C Scheme

%package devel-java
Summary: Development files for Gambit Scheme (Java backend)
Group: Development/Other
Requires: gambit = %version-%release

%description devel-java
Development files for Gambit Scheme (Java backend)

%package devel-php
Summary: Development files for Gambit Scheme (PHP backend)
Group: Development/Other
Requires: gambit = %version-%release
Requires: /usr/bin/php

%description devel-php
Development files for Gambit Scheme (PHP backend)

%package devel-python
Summary: Development files for Gambit Scheme (Python backend)
Group: Development/Other
Requires: gambit = %version-%release
Requires: /usr/bin/python3

%description devel-python
Development files for Gambit Scheme (Python backend)

%package devel-js
Summary: Development files for Gambit Scheme (JavaScript backend)
Group: Development/Other
Requires: gambit = %version-%release
Requires: /usr/bin/node

%description devel-js
Development files for Gambit Scheme (JavaScript backend)

%package devel-ruby
Summary: Development files for Gambit Scheme (Ruby backend)
Group: Development/Other
Requires: gambit = %version-%release
Requires: /usr/bin/ruby

%description devel-ruby
Development files for Gambit Scheme (Ruby backend)

%package devel-arm
Summary: Development files for Gambit Scheme (ARM processor family)
Group: Development/Other
Requires: gambit = %version-%release

%description devel-arm
Development files for Gambit Scheme (ARM processor family)

%package devel-riscv
Summary: Development files for Gambit Scheme (RISC-V processor family)
Group: Development/Other
Requires: gambit = %version-%release

%description devel-riscv
Development files for Gambit Scheme (RISC-V processor family)

%package devel-x86
Summary: Development files for Gambit Scheme (x86 processor family)
Group: Development/Other
Requires: gambit = %version-%release

%description devel-x86
Development files for Gambit Scheme (x86 processor family)

# See GAMBCDIR_LIB (doesn't work, TODO)

#define _libdir %_prefix/%_lib/gambit
%define pkgdocdir %_docdir/%name-%version

%prep
%setup
%patch -p2

%build
%ifarch %e2k
%add_optflags -D___LITTLE_ENDIAN -D___DONT_USE_builtin_setjmp
%endif
%configure --enable-single-host --enable-shared \
  --disable-absolute-shared-libs \
  --docdir=%pkgdocdir
%make_build

%if_with emacs
emacs -q -no-site-file -batch -eval "(byte-compile-file \"misc/gambit.el\")"
%endif

%install
%makeinstall_std
for f in $RPM_BUILD_ROOT%_bindir/scheme-*; do
   mv $f $f-%name
done

cp -R examples/* %buildroot%pkgdocdir/
rm -f %buildroot%pkgdocdir/makefile*
rm -f %buildroot%pkgdocdir/*/makefile*

%if_with emacs
install -m644 misc/*.el* %buildroot%_emacslispdir/
%endif

install -d $RPM_BUILD_ROOT%_altdir
cat > $RPM_BUILD_ROOT%_altdir/%name <<EOF
%_bindir/scheme-r5rs %_bindir/scheme-r5rs-gambit 10
%_bindir/scheme-r4rs %_bindir/scheme-r4rs-gambit 10
%_bindir/scheme-srfi-0 %_bindir/scheme-srfi-0-gambit 10
%_bindir/scheme-ieee-1178-1990 %_bindir/scheme-ieee-1178-1990-gambit 10
EOF

%check
%make check GAMBOPT=~~lib=../lib

%files
%_altdir/*
%_bindir/*-%name
%_bindir/gsc*
%_bindir/gsi*
%_bindir/six*
%_includedir/*.h
%_libdir/*.so*
%_man1dir/*.1.*

%if_with emacs
%files -n emacs-gambit
%_emacslispdir/*
%endif

%files docs
%pkgdocdir/

%files info
%_infodir/*.info*

%files devel
%_bindir/gambdoc
%_bindir/gambuild-C
%_bindir/gambvcs
%_libdir/gambit
%_libdir/scheme
%_libdir/srfi
%_libdir/termite
%exclude %_libdir/_define-library
%exclude %_libdir/_digest
%exclude %_libdir/_geiser
%exclude %_libdir/_git
%exclude %_libdir/_hamt
%exclude %_libdir/_http
%exclude %_libdir/_match
%exclude %_libdir/_pkg
%exclude %_libdir/_six
%exclude %_libdir/_tar
%exclude %_libdir/_test
%exclude %_libdir/_uri
%exclude %_libdir/_zlib
%_libdir/syntax-case.scm
%_libdir/_gambit.js
%_libdir/_gambit.c
%_libdir/_gambitgsc.c
%_libdir/_gambitgsi.c
%exclude %_libdir/*#.scm
%exclude %_libdir/_*.scm

%files devel-java
%_bindir/gambuild-java

%files devel-js
%_bindir/gambuild-js

%files devel-php
%_bindir/gambuild-php

%files devel-python
%_bindir/gambuild-python

%files devel-ruby
%_bindir/gambuild-ruby

%files devel-arm
%_bindir/gambuild-arm

%files devel-riscv
%_bindir/gambuild-riscv-32
%_bindir/gambuild-riscv-64

%files devel-x86
%_bindir/gambuild-x86
%_bindir/gambuild-x86-64

%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin