ALT Linux repositórios
Group :: Desenvolvimento/Outros
RPM: gambit
Main Changelog Spec Patches Sources Download Gear Bugs e 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
…
Todas as alterações você pod ver aqui
%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
…
Todas as alterações você pod ver aqui