Gentoo Archives: gentoo-commits

From: "Maciej Barć" <xgqt@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-scheme/mit-scheme/, dev-scheme/mit-scheme/files/
Date: Sat, 02 Jul 2022 03:52:35
Message-Id: 1656733893.bdf408e8147f23dbecee03655e4f2a3cc0485217.xgqt@gentoo
1 commit: bdf408e8147f23dbecee03655e4f2a3cc0485217
2 Author: Maciej Barć <xgqt <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jul 2 02:31:11 2022 +0000
4 Commit: Maciej Barć <xgqt <AT> gentoo <DOT> org>
5 CommitDate: Sat Jul 2 03:51:33 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bdf408e8
7
8 dev-scheme/mit-scheme: new package; add version 11.2
9
10 Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>
11
12 dev-scheme/mit-scheme/Manifest | 1 +
13 .../files/mit-scheme-11.2-no-Werror.patch | 21 +++++++
14 dev-scheme/mit-scheme/metadata.xml | 21 +++++++
15 dev-scheme/mit-scheme/mit-scheme-11.2.ebuild | 69 ++++++++++++++++++++++
16 4 files changed, 112 insertions(+)
17
18 diff --git a/dev-scheme/mit-scheme/Manifest b/dev-scheme/mit-scheme/Manifest
19 new file mode 100644
20 index 000000000000..e5c650ce3768
21 --- /dev/null
22 +++ b/dev-scheme/mit-scheme/Manifest
23 @@ -0,0 +1 @@
24 +DIST mit-scheme-11.2-svm1-64le.tar.gz 73077951 BLAKE2B 0e6741103c7a96f665e643fe6cab1a52bebcc8549845bf592029f73bbc9518937f45ccbac39e14d29b05b26f602ce810ae3f01030b0afb88560970ad3bb1f6dd SHA512 0bf2e8b1710a87da775b8fca53df808e23e45f6e6310a78b507fa87cd340c051cdf2ffe74268e9f6fc7bf3eaaa9321c2fc016e675fb41e59f648d1e69a1e8458
25
26 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
27 new file mode 100644
28 index 000000000000..5b156ddc7a15
29 --- /dev/null
30 +++ b/dev-scheme/mit-scheme/files/mit-scheme-11.2-no-Werror.patch
31 @@ -0,0 +1,21 @@
32 +index a9c3e6f..04f90b5 100755
33 +--- a/microcode/configure
34 ++++ b/microcode/configure
35 +@@ -5482,7 +5482,7 @@ if test x"${GCC}" = xyes; then
36 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler $flag" >&5
37 + $as_echo_n "checking for compiler $flag... " >&6; }
38 + SAVED_CFLAGS=${CFLAGS}
39 +- CFLAGS="${SAVED_CFLAGS} ${flag} -Werror"
40 ++ CFLAGS="${SAVED_CFLAGS} ${flag}"
41 + cat confdefs.h - <<_ACEOF >conftest.$ac_ext
42 + /* end confdefs.h. */
43 +
44 +@@ -10751,7 +10751,7 @@ for base in ${OPTIONAL_BASES}; do
45 + OPTIONAL_OBJECTS="${OPTIONAL_OBJECTS} ${base}.o"
46 + done
47 +
48 +-CFLAGS="${CFLAGS} ${CFLAGS_WERROR}"
49 ++CFLAGS="${CFLAGS}"
50 + LIARC_CFLAGS="${LIARC_CFLAGS} ${CFLAGS_WNOERROR}"
51 +
52 +
53
54 diff --git a/dev-scheme/mit-scheme/metadata.xml b/dev-scheme/mit-scheme/metadata.xml
55 new file mode 100644
56 index 000000000000..c9a9415a00c7
57 --- /dev/null
58 +++ b/dev-scheme/mit-scheme/metadata.xml
59 @@ -0,0 +1,21 @@
60 +<?xml version="1.0" encoding="UTF-8"?>
61 +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
62 +
63 +<pkgmetadata>
64 + <maintainer type="project">
65 + <email>scheme@g.o</email>
66 + <name>Gentoo Scheme Project</name>
67 + </maintainer>
68 + <longdescription>
69 + MIT/GNU Scheme is an implementation of the Scheme programming language,
70 + providing an interpreter, compiler, source-code debugger, integrated
71 + Emacs-like editor, and a large runtime library. MIT/GNU Scheme is best
72 + suited to programming large applications with a rapid development cycle.
73 + </longdescription>
74 + <use>
75 + <flag name="blowfish">Compile with blowfish encryption support</flag>
76 + </use>
77 + <upstream>
78 + <bugs-to>https://savannah.gnu.org/bugs/?group=mit-scheme</bugs-to>
79 + </upstream>
80 +</pkgmetadata>
81
82 diff --git a/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild b/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild
83 new file mode 100644
84 index 000000000000..5b4c8feeb470
85 --- /dev/null
86 +++ b/dev-scheme/mit-scheme/mit-scheme-11.2.ebuild
87 @@ -0,0 +1,69 @@
88 +# Copyright 1999-2022 Gentoo Authors
89 +# Distributed under the terms of the GNU General Public License v2
90 +
91 +EAPI=8
92 +
93 +inherit wrapper
94 +
95 +DESCRIPTION="Scheme interpreter, compiler, debugger and runtime library"
96 +HOMEPAGE="https://www.gnu.org/software/mit-scheme/
97 + https://savannah.gnu.org/projects/mit-scheme/"
98 +SRC_URI="https://ftp.gnu.org/gnu/${PN}/stable.pkg/${PV}/${P}-svm1-64le.tar.gz"
99 +S="${S}"/src
100 +
101 +LICENSE="GPL-2+"
102 +SLOT="0"
103 +KEYWORDS="~amd64" # Additionally arm64 is officially supported.
104 +IUSE="blowfish gdbm gui postgres"
105 +
106 +RDEPEND="
107 + blowfish? ( dev-libs/openssl:= )
108 + gdbm? ( sys-libs/gdbm:= )
109 + gui? ( x11-libs/libX11 )
110 +"
111 +DEPEND="${RDEPEND}"
112 +
113 +PATCHES=( "${FILESDIR}"/${P}-no-Werror.patch )
114 +
115 +src_configure() {
116 + local myconf=(
117 + --disable-mcrypt
118 + $(use_enable blowfish)
119 + $(use_enable gdbm)
120 + $(use_enable gui edwin)
121 + $(use_enable gui imail)
122 + $(use_enable gui x11)
123 + $(use_enable postgres pgsql)
124 + $(use_with gui x)
125 + )
126 + econf ${myconf[@]}
127 +}
128 +
129 +src_compile() {
130 + # Fails with multiple make-jobs, at least it compiles relatively fast.
131 + emake -j1
132 +}
133 +
134 +# Tests that theoretically fail (still passes):
135 +# microcode/test-flonum-except
136 +# runtime/test-arith
137 +# runtime/test-flonum
138 +# runtime/test-flonum.bin
139 +# runtime/test-flonum.com
140 +
141 +src_test() {
142 + FAST=y emake check
143 +}
144 +
145 +src_install() {
146 + default
147 +
148 + # Create the edwin launcher.
149 + use gui && make_wrapper mit-scheme-edwin 'mit-scheme --edit'
150 +
151 + # Remove "scheme" symlink to not "discriminate" any other implementations.
152 + rm "${ED}"/usr/bin/scheme || die
153 +
154 + # Remove libtool files.
155 + find "${ED}" -type f -name '*.la' -delete || die
156 +}