diff options
-rw-r--r-- | dev-scheme/racket/Manifest | 2 | ||||
-rw-r--r-- | dev-scheme/racket/racket-7.3.ebuild | 95 |
2 files changed, 97 insertions, 0 deletions
diff --git a/dev-scheme/racket/Manifest b/dev-scheme/racket/Manifest index 24cb623b1937..f2af60f8a6c9 100644 --- a/dev-scheme/racket/Manifest +++ b/dev-scheme/racket/Manifest @@ -1,6 +1,8 @@ DIST racket-7.0-src-builtpkgs.tgz 122544008 BLAKE2B fa6eddab17fbdec1db1dac2debb2da72fbab064f10fe0f49eda5b0ccfc635b2f86cef2eb103675988d281459f4fdb19841e27f154b803b38631ee21a2312799f SHA512 e872bb935146027bdc78dd7d22ea07cbbf78a23c761d584770d9ded3ece71b74954a317b799de16b0ba762219a46f0e66f41ceeb4d6741d0b1998bc6abf6b20a DIST racket-7.1-src-builtpkgs.tgz 126596138 BLAKE2B 734595105630352977d7f51de233c320de590744810f2f469d4259d84f19a69a84394d4f62ade130897babd21d46180659689a0c2dda7bc9559586f5c3c37be6 SHA512 9d6fb0912c7c612dfb32b4955e192d69f00b67e73c08196ef3caa7b3123909627496a6dfb36f7910ea5f9af526e99b56fe936359cbea261db26a5687ed49c38f DIST racket-7.2-src-builtpkgs.tgz 127050541 BLAKE2B f6235c9f5a646a6d2a8ab0ce63ded384ed707dc704927b63281c159e2daa503ffc4bad99cd33511aca05c0fa7aa55adde1e9c79032faa17dcd99f1bbd15324a8 SHA512 748e1ee63b6c32bafc58401e943e7dd31a47cfd2eb8dad6e4a40a8966d4df2fb7e4bb573841c210a567ba0f02b518d41fa69df03736f49ae9761446e71a4ab9b +DIST racket-7.3-src-builtpkgs.tgz 127136703 BLAKE2B 3449f62d8301cf5cc527cd46e074279d34c6064631a584488407d4c7af3b10aa01bb074d0dbc59034e8e036b1f24f9921ccdc070fb7bb3ff548f18b37cd8d12d SHA512 2cba16d6513984721b82d21e279a0017e3d96f3e2a53ca773deb45e10be2b74a61d4496679eb5aa4aff9276f323a16a1506e9471a873c28ee014f7d4e49bfea8 DIST racket-minimal-7.0-src-builtpkgs.tgz 12215529 BLAKE2B 4e9d2b137edf6b188c71dd32771753a16589ab49884aba1641fac5a5f82b9016843fec3257de7d59a9b00971a7dd455e99897782794800e14a656bcb22a17080 SHA512 976fd0ab96f4bf99eb7c63f7f213af91f91de4dd2498c4f8f1440743f7571194090abf0c4037e436970235f737d0add116f5689bf495688b3667a91ef95e8270 DIST racket-minimal-7.1-src-builtpkgs.tgz 15304920 BLAKE2B be851eb58655d5f7eb36235eeb37f3d24c94c4a6b20724a4772acccf109df6e6a9d8e0f9797530c7c3f6540e99325417ef982244017719fced75e1afda71847a SHA512 e1e839867fd4540fe15234f149162c88ad1f73ca26ba22644d58b3d8ab2809851d8b176f9f448dfd7acd3b7733a20d388c71cdd76e8a5dc6c50662e6113df6df DIST racket-minimal-7.2-src-builtpkgs.tgz 15481415 BLAKE2B 145823cfe8538e5f569e33303bae585cb2eebf013da27551a606a005ab84e70b0e58710eadbaecbaae4fc5c9b62b22e26ba1ab2f3158500600c0bc9d7a52e17c SHA512 0fb17ef0e7d8c03c847827118dec48486fd499777fbbf98588124f9e4725dd815e0f6df2e95f4d8700b8d8dbe3b7d678d2ffb8966ce0add6742bff554ef9415c +DIST racket-minimal-7.3-src-builtpkgs.tgz 15549791 BLAKE2B ab03252c48b8a07ae6caeb3af67d823d8eeddd22242d2146812c7b12ade09caa86ad026fb1a7b3dfeb981e304b78c697d1f93fb9d94c6e7dbc8c3ecb09fdfea0 SHA512 e542898dab04e781b0b8a613f250a35db8beed9db33406f20d4f028b7f3629904409aadf653c68998d36948bdd46e51134d3cebe1e014b46e3dba82472c3563b diff --git a/dev-scheme/racket/racket-7.3.ebuild b/dev-scheme/racket/racket-7.3.ebuild new file mode 100644 index 000000000000..6c313c38b06b --- /dev/null +++ b/dev-scheme/racket/racket-7.3.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit pax-utils + +DESCRIPTION="General purpose, multi-paradigm Lisp-Scheme programming language" +HOMEPAGE="https://racket-lang.org/" +SRC_URI="minimal? ( https://download.racket-lang.org/installers/${PV}/${PN}-minimal-${PV}-src-builtpkgs.tgz ) !minimal? ( https://download.racket-lang.org/installers/${PV}/${P}-src-builtpkgs.tgz )" +LICENSE="GPL-3+ LGPL-3" +SLOT="0" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86" +IUSE="doc +futures +jit minimal +places +readline +threads +X" +REQUIRED_USE="futures? ( jit )" + +RDEPEND="dev-db/sqlite:3 + media-libs/libpng:0 + x11-libs/cairo[X?] + x11-libs/pango[X?] + virtual/libffi + virtual/jpeg:0 + readline? ( dev-libs/libedit ) + X? ( x11-libs/gtk+[X?] )" +RDEPEND="${RDEPEND} !dev-tex/slatex" + +DEPEND="${RDEPEND}" + +S="${WORKDIR}/${P}/src" + +src_prepare() { + default + rm -r foreign/libffi || die 'failed to remove bundled libffi' +} + +src_configure() { + # According to vapier, we should use the bundled libtool + # such that we don't preclude cross-compile. Thus don't use + # --enable-lt=/usr/bin/libtool + econf \ + --docdir="${EPREFIX}"/usr/share/doc/${PF} \ + --enable-shared \ + --enable-float \ + --enable-libffi \ + --enable-foreign \ + --disable-libs \ + --disable-strip \ + $(use_enable X gracket) \ + $(use_enable doc docs) \ + $(use_enable jit) \ + $(use_enable places) \ + $(use_enable futures) \ + $(use_enable threads pthread) +} + +src_compile() { + if use jit; then + # When the JIT is enabled, a few binaries need to be pax-marked + # on hardened systems (bug 613634). The trick is to pax-mark + # them before they're used later in the build system. The + # following order for racketcgc and racket3m was determined by + # digging through the Makefile in src/racket to find out which + # targets would build those binaries but not use them. + pushd racket + emake cgc-core + pax-mark m .libs/racketcgc + pushd gc2 + emake all + popd + pax-mark m .libs/racket3m + popd + fi + + default +} + +src_install() { + default + + if use jit; then + # The final binaries need to be pax-marked, too, if you want to + # actually use them. The src_compile marking get lost somewhere + # in the install process. + for f in mred mzscheme racket; do + pax-mark m "${D}/usr/bin/${f}" + done + + use X && pax-mark m "${D}/usr/$(get_libdir)/racket/gracket" + fi + # raco needs decompressed files for packages doc installation bug 662424 + if use doc; then + docompress -x /usr/share/doc/${PF} + fi + find "${ED}" \( -name "*.a" -o -name "*.la" \) -delete || die +} |