diff options
author | Maciej Barć <xgqt@gentoo.org> | 2021-11-25 18:53:25 +0100 |
---|---|---|
committer | Maciej Barć <xgqt@gentoo.org> | 2021-11-25 18:53:25 +0100 |
commit | 2f7edae73c0fc2e085fc9cda69d56a0d04b64759 (patch) | |
tree | d04bf6e979f19d2e0eedf23c7824260613424617 /dev-scheme | |
parent | dev-scheme/chez: new package; add version 9.5.6 (diff) | |
download | gentoo-2f7edae73c0fc2e085fc9cda69d56a0d04b64759.tar.gz gentoo-2f7edae73c0fc2e085fc9cda69d56a0d04b64759.tar.bz2 gentoo-2f7edae73c0fc2e085fc9cda69d56a0d04b64759.zip |
dev-scheme/cyclone: new package; add version 0.33.0 and live
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Maciej Barć <xgqt@gentoo.org>
Diffstat (limited to 'dev-scheme')
-rw-r--r-- | dev-scheme/cyclone/Manifest | 1 | ||||
-rw-r--r-- | dev-scheme/cyclone/cyclone-0.33.0.ebuild | 55 | ||||
-rw-r--r-- | dev-scheme/cyclone/cyclone-9999.ebuild | 55 | ||||
-rw-r--r-- | dev-scheme/cyclone/metadata.xml | 26 |
4 files changed, 137 insertions, 0 deletions
diff --git a/dev-scheme/cyclone/Manifest b/dev-scheme/cyclone/Manifest new file mode 100644 index 000000000000..4d230a99c9dd --- /dev/null +++ b/dev-scheme/cyclone/Manifest @@ -0,0 +1 @@ +DIST cyclone-0.33.0.tar.gz 3946573 BLAKE2B 7eba62995ef3d327e14d6fbcf433d40e73c244508f8858d636a3a3fd05660e2921055932dedbe50ce8b384e9a9b44a09112aca6f851af6cd38b9b372769b2adc SHA512 96ffd3d04636b27f36c98920359a9f880c4b2a15e9820e5d91c82f821dc93357b665537e7688b00510d6a4fd113666edbd5ec109ff491f4f18d547129527b763 diff --git a/dev-scheme/cyclone/cyclone-0.33.0.ebuild b/dev-scheme/cyclone/cyclone-0.33.0.ebuild new file mode 100644 index 000000000000..2a50206ddfee --- /dev/null +++ b/dev-scheme/cyclone/cyclone-0.33.0.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Cyclone is a self-hosting Scheme to C compiler +# cyclone-bootstrap is the Cyclone SOURCE transpiled by it to C + +EAPI=8 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="R7RS Scheme to C compiler" +HOMEPAGE="http://justinethier.github.io/cyclone/" + +if [[ "${PV}" == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/justinethier/${PN}-bootstrap.git" +else + SRC_URI="https://github.com/justinethier/${PN}-bootstrap/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64" + S="${WORKDIR}/${PN}-bootstrap-${PV}" +fi + +LICENSE="MIT" +SLOT="0" + +DEPEND="dev-libs/concurrencykit" +RDEPEND="${DEPEND}" + +src_configure() { + export CYC_GCC_OPT_FLAGS="${CFLAGS}" + append-cflags -fPIC -Iinclude + append-ldflags -L. + tc-export AR CC RANLIB +} + +src_compile() { + local myopts=( + PREFIX="/usr" + CYC_GCC_OPT_FLAGS="${CYC_GCC_OPT_FLAGS}" + AR="$(tc-getAR)" + CC="$(tc-getCC)" + RANLIB="$(tc-getRANLIB)" + ) + emake "${myopts[@]}" +} + +src_test() { + emake LDFLAGS="" test +} + +src_install() { + einstalldocs + + emake PREFIX="/usr" DESTDIR="${D}" install +} diff --git a/dev-scheme/cyclone/cyclone-9999.ebuild b/dev-scheme/cyclone/cyclone-9999.ebuild new file mode 100644 index 000000000000..12a81a63780a --- /dev/null +++ b/dev-scheme/cyclone/cyclone-9999.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# Cyclone is a self-hosting Scheme to C compiler +# cyclone-bootstrap is the Cyclone SOURCE transpiled by it to C + +EAPI=8 + +inherit flag-o-matic toolchain-funcs + +DESCRIPTION="R7RS Scheme to C compiler" +HOMEPAGE="http://justinethier.github.io/cyclone/" + +if [[ "${PV}" == *9999* ]]; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/justinethier/${PN}-bootstrap.git" +else + SRC_URI="https://github.com/justinethier/${PN}-bootstrap/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz" + KEYWORDS="~amd64 ~x86" + S="${WORKDIR}/${PN}-bootstrap-${PV}" +fi + +LICENSE="MIT" +SLOT="0" + +RDEPEND="dev-libs/concurrencykit" +DEPEND="${RDEPEND}" + +src_configure() { + export CYC_GCC_OPT_FLAGS="${CFLAGS}" + append-cflags -fPIC -Iinclude + append-ldflags -L. + tc-export AR CC RANLIB +} + +src_compile() { + local myopts=( + PREFIX="/usr" + CYC_GCC_OPT_FLAGS="${CYC_GCC_OPT_FLAGS}" + AR="$(tc-getAR)" + CC="$(tc-getCC)" + RANLIB="$(tc-getRANLIB)" + ) + emake "${myopts[@]}" +} + +src_test() { + emake LDFLAGS="" test +} + +src_install() { + einstalldocs + + emake PREFIX="/usr" DESTDIR="${D}" install +} diff --git a/dev-scheme/cyclone/metadata.xml b/dev-scheme/cyclone/metadata.xml new file mode 100644 index 000000000000..8e37f78fc1e8 --- /dev/null +++ b/dev-scheme/cyclone/metadata.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> + +<pkgmetadata> + <maintainer type="project"> + <email>scheme@gentoo.org</email> + <name>Gentoo Scheme Project</name> + </maintainer> + <longdescription lang="en"> + Cyclone Scheme is a brand-new compiler that allows real-world + application development using the R7RS Scheme Language standard. + We provide modern features and a stable system capable of generating + fast native binaries. + Cheney on the MTA is used by Cyclone's runtime to implement full tail + recursion, continuations, and generational garbage collection. + In addition, the Cheney on the MTA concept has been extended to allow + execution of multiple native threads. An on-the-fly garbage collector + is used to manage the second-generation heap and perform major + collections without "stopping the world". + </longdescription> + <upstream> + <bugs-to>https://github.com/justinethier/cyclone/issues</bugs-to> + <remote-id type="github">justinethier/cyclone-bootstrap</remote-id> + <remote-id type="github">justinethier/cyclone</remote-id> + </upstream> +</pkgmetadata> |