diff options
Diffstat (limited to 'dev-scheme/mit-scheme/mit-scheme-11.2.ebuild')
-rw-r--r-- | dev-scheme/mit-scheme/mit-scheme-11.2.ebuild | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild b/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild new file mode 100644 index 000000000000..5b4c8feeb470 --- /dev/null +++ b/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit wrapper + +DESCRIPTION="Scheme interpreter, compiler, debugger and runtime library" +HOMEPAGE="https://www.gnu.org/software/mit-scheme/ + https://savannah.gnu.org/projects/mit-scheme/" +SRC_URI="https://ftp.gnu.org/gnu/${PN}/stable.pkg/${PV}/${P}-svm1-64le.tar.gz" +S="${S}"/src + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64" # Additionally arm64 is officially supported. +IUSE="blowfish gdbm gui postgres" + +RDEPEND=" + blowfish? ( dev-libs/openssl:= ) + gdbm? ( sys-libs/gdbm:= ) + gui? ( x11-libs/libX11 ) +" +DEPEND="${RDEPEND}" + +PATCHES=( "${FILESDIR}"/${P}-no-Werror.patch ) + +src_configure() { + local myconf=( + --disable-mcrypt + $(use_enable blowfish) + $(use_enable gdbm) + $(use_enable gui edwin) + $(use_enable gui imail) + $(use_enable gui x11) + $(use_enable postgres pgsql) + $(use_with gui x) + ) + econf ${myconf[@]} +} + +src_compile() { + # Fails with multiple make-jobs, at least it compiles relatively fast. + emake -j1 +} + +# Tests that theoretically fail (still passes): +# microcode/test-flonum-except +# runtime/test-arith +# runtime/test-flonum +# runtime/test-flonum.bin +# runtime/test-flonum.com + +src_test() { + FAST=y emake check +} + +src_install() { + default + + # Create the edwin launcher. + use gui && make_wrapper mit-scheme-edwin 'mit-scheme --edit' + + # Remove "scheme" symlink to not "discriminate" any other implementations. + rm "${ED}"/usr/bin/scheme || die + + # Remove libtool files. + find "${ED}" -type f -name '*.la' -delete || die +} |