diff options
Diffstat (limited to 'dev-scheme/cyclone/cyclone-0.36.0.ebuild')
-rw-r--r-- | dev-scheme/cyclone/cyclone-0.36.0.ebuild | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/dev-scheme/cyclone/cyclone-0.36.0.ebuild b/dev-scheme/cyclone/cyclone-0.36.0.ebuild new file mode 100644 index 000000000000..c709f1965f91 --- /dev/null +++ b/dev-scheme/cyclone/cyclone-0.36.0.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2024 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/v${PV}.tar.gz + -> ${P}.tar.gz" + S="${WORKDIR}/${PN}-bootstrap-${PV}" + + KEYWORDS="~amd64 ~arm ~arm64 ~x86" +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 -a 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() { + emake PREFIX="/usr" DESTDIR="${D}" install + einstalldocs +} |