diff --git a/dev-scheme/racket/Manifest b/dev-scheme/racket/Manifest new file mode 100644 index 0000000..da647ed --- /dev/null +++ b/dev-scheme/racket/Manifest @@ -0,0 +1,2 @@ +DIST racket-7.7-src-builtpkgs.tgz 148403219 BLAKE2B 6f68fc680ca12e09c9f4399bb26dd87a4bfb3d1d05370555300e460a23ea390d02a3ae74e7d227eb0b140d49c9a3a9de2c2502313a09f9cef49103592eeae58b SHA512 9537f3b3d3e7955f4935b64b4d447bf14b2e1c1a2fb7486327ecb7ebf11aa58d531b7f2f72916742752b7e174b429cb446a059a7e535c1450a175302507ec3ea +DIST racket-minimal-7.7-src-builtpkgs.tgz 21239831 BLAKE2B 6450ba93e65c15350a4a5790852c6a2be5311fcaf803b355c310ba6709f4869d305a8a36aec6c03883f639d0737cbc0be4222e4ef1eb9639ba38da902f46e65e SHA512 aaad81e48a3b28c3023bcb9aeb18a4a2d4214a3a7b5c34c4a52e1b5dc5d0afdfb4976c2d2e1a17f109ff700970e377ef336b6b1ab23e4b9930492a9e9e37619c diff --git a/dev-scheme/racket/metadata.xml b/dev-scheme/racket/metadata.xml new file mode 100644 index 0000000..2045d36 --- /dev/null +++ b/dev-scheme/racket/metadata.xml @@ -0,0 +1,15 @@ + + + + + + Enable racket/future library for fine-grained hardware parallelism + + + Enable racket/place library for share-nothing parallelism and message-passing communication. Compared to futures, places are heavyweight, but they have a simpler performance model. + + + Enable support for green threads + + + diff --git a/dev-scheme/racket/racket-7.7.ebuild b/dev-scheme/racket/racket-7.7.ebuild new file mode 100644 index 0000000..7634618 --- /dev/null +++ b/dev-scheme/racket/racket-7.7.ebuild @@ -0,0 +1,124 @@ +# Copyright 1999-2020 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 ) +" + +RESTRICT="mirror" +LICENSE="GPL-3+ LGPL-3" +SLOT="0" +KEYWORDS="~amd64" + +IUSE=" + +X + +futures + +jit + +places + +readline + +threads + doc + minimal +" +REQUIRED_USE=" + futures? ( jit ) +" + +RDEPEND=" + !dev-tex/slatex + dev-db/sqlite:3 + dev-libs/libffi + media-libs/libpng:0 + virtual/jpeg:0 + x11-libs/cairo[X?] + x11-libs/pango[X?] + readline? ( + dev-libs/libedit + ) + X? ( + x11-libs/gtk+[X?] + ) +" +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 + local myconf=( + --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) + ) + econf "${myconf[@]}" +} + +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 +} diff --git a/www-client/waterfox/waterfox-2020.05.ebuild b/www-client/waterfox/waterfox-2020.05.ebuild index 1409203..d6c8b9d 100644 --- a/www-client/waterfox/waterfox-2020.05.ebuild +++ b/www-client/waterfox/waterfox-2020.05.ebuild @@ -30,7 +30,10 @@ MY_PV="${PV}-classic" DESCRIPTION="Waterfox Web Browser" HOMEPAGE="http://www.waterfoxproject.org" -RESTRICT="mirror" +RESTRICT=" + !test? ( test ) + mirror +" LICENSE="MPL-2.0 GPL-2 LGPL-2.1" SLOT="0" KEYWORDS="~amd64"