commit:     bdf408e8147f23dbecee03655e4f2a3cc0485217
Author:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Sat Jul  2 02:31:11 2022 +0000
Commit:     Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Sat Jul  2 03:51:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bdf408e8

dev-scheme/mit-scheme: new package; add version 11.2

Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>

 dev-scheme/mit-scheme/Manifest                     |  1 +
 .../files/mit-scheme-11.2-no-Werror.patch          | 21 +++++++
 dev-scheme/mit-scheme/metadata.xml                 | 21 +++++++
 dev-scheme/mit-scheme/mit-scheme-11.2.ebuild       | 69 ++++++++++++++++++++++
 4 files changed, 112 insertions(+)

diff --git a/dev-scheme/mit-scheme/Manifest b/dev-scheme/mit-scheme/Manifest
new file mode 100644
index 000000000000..e5c650ce3768
--- /dev/null
+++ b/dev-scheme/mit-scheme/Manifest
@@ -0,0 +1 @@
+DIST mit-scheme-11.2-svm1-64le.tar.gz 73077951 BLAKE2B 
0e6741103c7a96f665e643fe6cab1a52bebcc8549845bf592029f73bbc9518937f45ccbac39e14d29b05b26f602ce810ae3f01030b0afb88560970ad3bb1f6dd
 SHA512 
0bf2e8b1710a87da775b8fca53df808e23e45f6e6310a78b507fa87cd340c051cdf2ffe74268e9f6fc7bf3eaaa9321c2fc016e675fb41e59f648d1e69a1e8458

diff --git a/dev-scheme/mit-scheme/files/mit-scheme-11.2-no-Werror.patch 
b/dev-scheme/mit-scheme/files/mit-scheme-11.2-no-Werror.patch
new file mode 100644
index 000000000000..5b156ddc7a15
--- /dev/null
+++ b/dev-scheme/mit-scheme/files/mit-scheme-11.2-no-Werror.patch
@@ -0,0 +1,21 @@
+index a9c3e6f..04f90b5 100755
+--- a/microcode/configure
++++ b/microcode/configure
+@@ -5482,7 +5482,7 @@ if test x"${GCC}" = xyes; then
+       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler $flag" 
>&5
+ $as_echo_n "checking for compiler $flag... " >&6; }
+       SAVED_CFLAGS=${CFLAGS}
+-      CFLAGS="${SAVED_CFLAGS} ${flag} -Werror"
++      CFLAGS="${SAVED_CFLAGS} ${flag}"
+       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h.  */
+ 
+@@ -10751,7 +10751,7 @@ for base in ${OPTIONAL_BASES}; do
+     OPTIONAL_OBJECTS="${OPTIONAL_OBJECTS} ${base}.o"
+ done
+ 
+-CFLAGS="${CFLAGS} ${CFLAGS_WERROR}"
++CFLAGS="${CFLAGS}"
+ LIARC_CFLAGS="${LIARC_CFLAGS} ${CFLAGS_WNOERROR}"
+ 
+ 

diff --git a/dev-scheme/mit-scheme/metadata.xml 
b/dev-scheme/mit-scheme/metadata.xml
new file mode 100644
index 000000000000..c9a9415a00c7
--- /dev/null
+++ b/dev-scheme/mit-scheme/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd";>
+
+<pkgmetadata>
+  <maintainer type="project">
+    <email>sch...@gentoo.org</email>
+    <name>Gentoo Scheme Project</name>
+  </maintainer>
+  <longdescription>
+    MIT/GNU Scheme is an implementation of the Scheme programming language,
+    providing an interpreter, compiler, source-code debugger, integrated
+    Emacs-like editor, and a large runtime library. MIT/GNU Scheme is best
+    suited to programming large applications with a rapid development cycle.
+  </longdescription>
+  <use>
+    <flag name="blowfish">Compile with blowfish encryption support</flag>
+  </use>
+  <upstream>
+    <bugs-to>https://savannah.gnu.org/bugs/?group=mit-scheme</bugs-to>
+  </upstream>
+</pkgmetadata>

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
+}

Reply via email to