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/cyclone/
Date: Thu, 25 Nov 2021 17:53:58
Message-Id: 1637862805.2f7edae73c0fc2e085fc9cda69d56a0d04b64759.xgqt@gentoo
1 commit: 2f7edae73c0fc2e085fc9cda69d56a0d04b64759
2 Author: Maciej Barć <xgqt <AT> gentoo <DOT> org>
3 AuthorDate: Thu Nov 25 17:53:25 2021 +0000
4 Commit: Maciej Barć <xgqt <AT> gentoo <DOT> org>
5 CommitDate: Thu Nov 25 17:53:25 2021 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f7edae7
7
8 dev-scheme/cyclone: new package; add version 0.33.0 and live
9
10 Package-Manager: Portage-3.0.28, Repoman-3.0.3
11 Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>
12
13 dev-scheme/cyclone/Manifest | 1 +
14 dev-scheme/cyclone/cyclone-0.33.0.ebuild | 55 ++++++++++++++++++++++++++++++++
15 dev-scheme/cyclone/cyclone-9999.ebuild | 55 ++++++++++++++++++++++++++++++++
16 dev-scheme/cyclone/metadata.xml | 26 +++++++++++++++
17 4 files changed, 137 insertions(+)
18
19 diff --git a/dev-scheme/cyclone/Manifest b/dev-scheme/cyclone/Manifest
20 new file mode 100644
21 index 000000000000..4d230a99c9dd
22 --- /dev/null
23 +++ b/dev-scheme/cyclone/Manifest
24 @@ -0,0 +1 @@
25 +DIST cyclone-0.33.0.tar.gz 3946573 BLAKE2B 7eba62995ef3d327e14d6fbcf433d40e73c244508f8858d636a3a3fd05660e2921055932dedbe50ce8b384e9a9b44a09112aca6f851af6cd38b9b372769b2adc SHA512 96ffd3d04636b27f36c98920359a9f880c4b2a15e9820e5d91c82f821dc93357b665537e7688b00510d6a4fd113666edbd5ec109ff491f4f18d547129527b763
26
27 diff --git a/dev-scheme/cyclone/cyclone-0.33.0.ebuild b/dev-scheme/cyclone/cyclone-0.33.0.ebuild
28 new file mode 100644
29 index 000000000000..2a50206ddfee
30 --- /dev/null
31 +++ b/dev-scheme/cyclone/cyclone-0.33.0.ebuild
32 @@ -0,0 +1,55 @@
33 +# Copyright 1999-2021 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +# Cyclone is a self-hosting Scheme to C compiler
37 +# cyclone-bootstrap is the Cyclone SOURCE transpiled by it to C
38 +
39 +EAPI=8
40 +
41 +inherit flag-o-matic toolchain-funcs
42 +
43 +DESCRIPTION="R7RS Scheme to C compiler"
44 +HOMEPAGE="http://justinethier.github.io/cyclone/"
45 +
46 +if [[ "${PV}" == *9999* ]]; then
47 + inherit git-r3
48 + EGIT_REPO_URI="https://github.com/justinethier/${PN}-bootstrap.git"
49 +else
50 + SRC_URI="https://github.com/justinethier/${PN}-bootstrap/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
51 + KEYWORDS="~amd64"
52 + S="${WORKDIR}/${PN}-bootstrap-${PV}"
53 +fi
54 +
55 +LICENSE="MIT"
56 +SLOT="0"
57 +
58 +DEPEND="dev-libs/concurrencykit"
59 +RDEPEND="${DEPEND}"
60 +
61 +src_configure() {
62 + export CYC_GCC_OPT_FLAGS="${CFLAGS}"
63 + append-cflags -fPIC -Iinclude
64 + append-ldflags -L.
65 + tc-export AR CC RANLIB
66 +}
67 +
68 +src_compile() {
69 + local myopts=(
70 + PREFIX="/usr"
71 + CYC_GCC_OPT_FLAGS="${CYC_GCC_OPT_FLAGS}"
72 + AR="$(tc-getAR)"
73 + CC="$(tc-getCC)"
74 + RANLIB="$(tc-getRANLIB)"
75 + )
76 + emake "${myopts[@]}"
77 +}
78 +
79 +src_test() {
80 + emake LDFLAGS="" test
81 +}
82 +
83 +src_install() {
84 + einstalldocs
85 +
86 + emake PREFIX="/usr" DESTDIR="${D}" install
87 +}
88
89 diff --git a/dev-scheme/cyclone/cyclone-9999.ebuild b/dev-scheme/cyclone/cyclone-9999.ebuild
90 new file mode 100644
91 index 000000000000..12a81a63780a
92 --- /dev/null
93 +++ b/dev-scheme/cyclone/cyclone-9999.ebuild
94 @@ -0,0 +1,55 @@
95 +# Copyright 1999-2021 Gentoo Authors
96 +# Distributed under the terms of the GNU General Public License v2
97 +
98 +# Cyclone is a self-hosting Scheme to C compiler
99 +# cyclone-bootstrap is the Cyclone SOURCE transpiled by it to C
100 +
101 +EAPI=8
102 +
103 +inherit flag-o-matic toolchain-funcs
104 +
105 +DESCRIPTION="R7RS Scheme to C compiler"
106 +HOMEPAGE="http://justinethier.github.io/cyclone/"
107 +
108 +if [[ "${PV}" == *9999* ]]; then
109 + inherit git-r3
110 + EGIT_REPO_URI="https://github.com/justinethier/${PN}-bootstrap.git"
111 +else
112 + SRC_URI="https://github.com/justinethier/${PN}-bootstrap/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
113 + KEYWORDS="~amd64 ~x86"
114 + S="${WORKDIR}/${PN}-bootstrap-${PV}"
115 +fi
116 +
117 +LICENSE="MIT"
118 +SLOT="0"
119 +
120 +RDEPEND="dev-libs/concurrencykit"
121 +DEPEND="${RDEPEND}"
122 +
123 +src_configure() {
124 + export CYC_GCC_OPT_FLAGS="${CFLAGS}"
125 + append-cflags -fPIC -Iinclude
126 + append-ldflags -L.
127 + tc-export AR CC RANLIB
128 +}
129 +
130 +src_compile() {
131 + local myopts=(
132 + PREFIX="/usr"
133 + CYC_GCC_OPT_FLAGS="${CYC_GCC_OPT_FLAGS}"
134 + AR="$(tc-getAR)"
135 + CC="$(tc-getCC)"
136 + RANLIB="$(tc-getRANLIB)"
137 + )
138 + emake "${myopts[@]}"
139 +}
140 +
141 +src_test() {
142 + emake LDFLAGS="" test
143 +}
144 +
145 +src_install() {
146 + einstalldocs
147 +
148 + emake PREFIX="/usr" DESTDIR="${D}" install
149 +}
150
151 diff --git a/dev-scheme/cyclone/metadata.xml b/dev-scheme/cyclone/metadata.xml
152 new file mode 100644
153 index 000000000000..8e37f78fc1e8
154 --- /dev/null
155 +++ b/dev-scheme/cyclone/metadata.xml
156 @@ -0,0 +1,26 @@
157 +<?xml version="1.0" encoding="UTF-8"?>
158 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
159 +
160 +<pkgmetadata>
161 + <maintainer type="project">
162 + <email>scheme@g.o</email>
163 + <name>Gentoo Scheme Project</name>
164 + </maintainer>
165 + <longdescription lang="en">
166 + Cyclone Scheme is a brand-new compiler that allows real-world
167 + application development using the R7RS Scheme Language standard.
168 + We provide modern features and a stable system capable of generating
169 + fast native binaries.
170 + Cheney on the MTA is used by Cyclone's runtime to implement full tail
171 + recursion, continuations, and generational garbage collection.
172 + In addition, the Cheney on the MTA concept has been extended to allow
173 + execution of multiple native threads. An on-the-fly garbage collector
174 + is used to manage the second-generation heap and perform major
175 + collections without "stopping the world".
176 + </longdescription>
177 + <upstream>
178 + <bugs-to>https://github.com/justinethier/cyclone/issues</bugs-to>
179 + <remote-id type="github">justinethier/cyclone-bootstrap</remote-id>
180 + <remote-id type="github">justinethier/cyclone</remote-id>
181 + </upstream>
182 +</pkgmetadata>