summaryrefslogtreecommitdiff
path: root/dev-scheme/racket
diff options
context:
space:
mode:
Diffstat (limited to 'dev-scheme/racket')
-rw-r--r--dev-scheme/racket/Manifest6
-rw-r--r--dev-scheme/racket/racket-8.9.ebuild (renamed from dev-scheme/racket/racket-8.5.ebuild)64
2 files changed, 47 insertions, 23 deletions
diff --git a/dev-scheme/racket/Manifest b/dev-scheme/racket/Manifest
index 402b94a453b7..a9a2a09f860b 100644
--- a/dev-scheme/racket/Manifest
+++ b/dev-scheme/racket/Manifest
@@ -1,13 +1,13 @@
-DIST racket-8.5-src-builtpkgs.tgz 152548446 BLAKE2B ef914d742b3b949ecd7a1f817900add3ede874d7bd4dbe195c2ab69826d938c3ac81b883bc57d938908bc1f9e96faeaa25cb4dedf85288c580b7a89d62ec970a SHA512 4714599cbe10247cad119cc4073d80329d77c845d92b3741d35a9c88cc6395dc3d6f08ace8f606c3e39840f7071789ea953e3b6548da04fd7dfaa72a4368a7ae
DIST racket-8.6-src-builtpkgs.tgz 154505661 BLAKE2B ab788ae3e5175024ec75fa0c34297616ab4dcc1bb6f62d4ff4623dc2dd699d63eb9b24238407a854b03210f21fefd02680dc29931ed9d146920ae32472196e32 SHA512 c2948164463fb59a2d6f1b5188cee7634da190ea40bd19f5a88ef466ccdf07da03503b6a1f00e327a66c31b862048bcd5b047f7c586ea0d26e23397ee5ee7682
DIST racket-8.7-src-builtpkgs.tgz 156337131 BLAKE2B a323683b6fd6d39473ab3eaeea24d175e12f8e36b9103849ec0730757b9c3d32f2e84ab8a9bde7fa834e2c6cf709e2531ab15e36e2694c5843b3b0bb41e909f8 SHA512 4c01001be49271e5536d24257c36bc57b16ff2cbf14eb59208b2939f4d14b5f58028cd1f643d49497eb8bffa84e5847f761171c951e006c278cf5d8ffafdd73e
DIST racket-8.8-src-builtpkgs.tgz 156581446 BLAKE2B 0539f72822f32293905b69645c9e764e9485fa557b8ff4626b1f7c5bfeda2a7d7101c31933023aeb962f48e7b215883d245ec844372a4eb13703b466a5b1acdb SHA512 0d9efd1ab678b01192d704f674fdff7c48f0a65f9e0308662903e33d9c425064e6b8b5f9e374f5dac787425e85630c23bb1c6c8ff46b7fec3f457bedaaf200f8
-DIST racket-minimal-8.5-src-builtpkgs.tgz 21390850 BLAKE2B 7bcd8c409203f71b3a49cd7e4a34159ef62fcc61b8fb66e976bfc0938ac54b7bc475e6aff59796b9c01ee324eb0d88bd68340c787f728a3739a57e879e731bfb SHA512 e0dec1038f33dbe3dfbbeba05cb24829e4b0c4223c5326cd26f920c736171e3b47b457236a06c9c57b6ebc82d17b022fba6558e3c94315b75469a2130b6fd375
+DIST racket-8.9-src-builtpkgs.tgz 157090283 BLAKE2B 515ad19f37a18decb52ea42ceff5b4570d311d39e15996eb0abd228d16ef5fcae971a87145faf7d27584dc0d6b54b1d94a77bb099e6c2dfd3fa5ddca0b3333b0 SHA512 0eb823600233746e9b5e054747fc5ee1c033a102fe6ab912cc2a15d4ad5b217e04c25124f1877ce04eada4f99c2d6b08cc58adf07535c3962f7d05a21dce8471
DIST racket-minimal-8.6-src-builtpkgs.tgz 22396113 BLAKE2B e8c09da9aef52566746def36823e736e07990ba703d8440a3d067cbeeb43c8d026469c1d4b7d9ad2a423766692b81d6efa400c55512450621acd624d23b1b193 SHA512 695f9be11cab2cf84d1c16b322feb6c4552bf05edbfd901e91fa9532ef52339a6463d8327f4ae4c704cd2e8d67e69c2333bc13b1c862bbe565af00b407debee8
DIST racket-minimal-8.7-src-builtpkgs.tgz 22795747 BLAKE2B 3f0194ffff3f3a9ea383ddd6c447a8d56d8cf4fb029c77bf9e8733570ca59244afd321541e7506ca11bc8b09f4c56dd3e26cd01d22caa7f3f36bd5af29c861a6 SHA512 b60472160b41a070a4aa74265e6319da4e80c6e58ac3152a30dfa3398f457c6579384de62b66dcb7a7ead68f72f787c41eae65325cdc1ae928b54a90d0a25f05
DIST racket-minimal-8.8-src-builtpkgs.tgz 22857907 BLAKE2B 8612b82adcbc29b3054aa543447c64fd36356e283c48d28bd4c3c5f4a20f51fa8f58a8c3226094b81293c6b051325d3a96a9125ef96174ca5cef74390c954367 SHA512 be0e7fead1704693c30b0814d9d601a7f2bdfdf5b58e902c4b8dc787a5341f4432ea9f8fc6b5910d1751333bbb9868a55d8f1cffe036521a09805084fc093fdc
-EBUILD racket-8.5.ebuild 5155 BLAKE2B 81f16216c48a74c9b6bd120d1e33f6dcd9bdb744ef3071fe3873b1fff058f3018cd6e74acfec85d6df42b29773f4e29335b18f0d0037989aaf2b04d6e8f3fc3d SHA512 08024c77c584bf63504b9ea84aebf083a0b16b2542f1eb0f95ad88948762f03ecba6527602f1e1e107307c31f9c3613854a4840e32d6cee5a4d94bc43d8bc25e
+DIST racket-minimal-8.9-src-builtpkgs.tgz 23084628 BLAKE2B 5e1e688dc600b700ed13acdbbafddaa2d6bf5a0e05db4a845b53f33e9448b277f342f5f615086f78db4762eeac11911c9b88cd102f05fbe165fcdff72a9ebcf3 SHA512 404aa01242eb68453e9db3cc14e38b99a02af9eb13b1dccce36e1de9c10d2ddd37bc6411abad7ab58045c71d25336e09d6e06f391cc3ee372097ca68fc497051
EBUILD racket-8.6.ebuild 5484 BLAKE2B cb9663997df1de620f2be69315e37f5087beeb408aae89861196aeb540a2f7c43ced60f40f7ec2f1f6a57b364ea4e4760a15aeb4f09defffada7f6516b5b5d35 SHA512 323fc7030cba262a26cd92eb6f922956fa54542ece6a0e350d1a34d1f32023eb64e74115b8b7dbc2a05a77628b6f61b5d019dbaca24a8f8133173285054ee869
EBUILD racket-8.7.ebuild 5526 BLAKE2B dda2ef897b3d9255fe3528b8991c90894368eff8afe1c37e301dbbd7f57cfbd695103fa6c3b349172819d8f764cb64191aa70d1f744872757fc211b875527a89 SHA512 c31310a2ec49f10cd7e4ef320a6e84e17f088b895754570fad2deb4289824c4a6354a1f7b1b554b749ed3efcde5964aa2f7dd64b9c83a97551931603f35325dd
EBUILD racket-8.8.ebuild 5617 BLAKE2B 9e68d997e30cc4068de840b7402f02f9d9393d72e02f83c15a4992eb83c353cb9a0d843c11a119753d3873c330edd555c523988f762a22179ed2c22251f95f18 SHA512 b8042dae0383851e8da4d6267adf7580c50d1658a0a7998261af6f1dd3aa70e66f3b1b14e5675457e39e4d2b684a0c5b40e37bd9fdb771ad0a07aa9bbe78920f
+EBUILD racket-8.9.ebuild 5617 BLAKE2B 9e68d997e30cc4068de840b7402f02f9d9393d72e02f83c15a4992eb83c353cb9a0d843c11a119753d3873c330edd555c523988f762a22179ed2c22251f95f18 SHA512 b8042dae0383851e8da4d6267adf7580c50d1658a0a7998261af6f1dd3aa70e66f3b1b14e5675457e39e4d2b684a0c5b40e37bd9fdb771ad0a07aa9bbe78920f
MISC metadata.xml 1885 BLAKE2B 0a77f8dc3d86ee5c4f12919b05893ad43c03f1eb21ace376552de1f0aaf071ddd15f27c59ef008f85cdb362e3ed316fbcb3a17ac2a3d4f18a38ad954df7bb338 SHA512 9510e5f9797419fb3da8799487c7dfc808eb9fc1fccfbbd8c225d04f617e00acd0e5b7a14ab6e05dc59b8cbc035a2d35a37dfe9459a42e5347d7ee499894fb5b
diff --git a/dev-scheme/racket/racket-8.5.ebuild b/dev-scheme/racket/racket-8.9.ebuild
index 3f624b63833c..aea3f9340d79 100644
--- a/dev-scheme/racket/racket-8.5.ebuild
+++ b/dev-scheme/racket/racket-8.9.ebuild
@@ -1,17 +1,18 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
-inherit desktop optfeature readme.gentoo-r1
+inherit desktop optfeature toolchain-funcs readme.gentoo-r1
DESCRIPTION="General purpose, multi-paradigm Lisp-Scheme programming language"
-HOMEPAGE="https://racket-lang.org/"
+HOMEPAGE="https://racket-lang.org/
+ https://github.com/racket/racket/"
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 )
"
-S="${WORKDIR}/${P}/src"
+S="${WORKDIR}"/${P}/src
# See https://blog.racket-lang.org/2019/11/completing-racket-s-relicensing-effort.html
LICENSE="
@@ -24,18 +25,18 @@ LICENSE="
# PV == SLOT but this has to be checked carefully and in cases
# where we use _p, _pre, etc it will have to be set manually.
SLOT="0/${PV}"
-KEYWORDS="amd64 ~arm ~ppc ~ppc64 x86"
-IUSE="+chez +doc +futures +jit minimal ncurses +places +threads"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="+chez +doc +futures iconv +jit minimal ncurses +places +threads"
# See bug #809785 re chez/threads
REQUIRED_USE="chez? ( futures places ) futures? ( jit threads ) places? ( threads )"
-DEPEND="
+RDEPEND="
!dev-tex/slatex
dev-db/sqlite:3
dev-libs/libffi:=
ncurses? ( sys-libs/ncurses:= )
"
-RDEPEND="${DEPEND}"
+DEPEND="${RDEPEND}"
# "mred" and "mzscheme" are binaries generated by Racket, not CC
QA_FLAGS_IGNORED="usr/bin/mred usr/bin/mzscheme"
@@ -55,16 +56,25 @@ PKGDB=(
)
src_prepare() {
- # Prepare the environment
+ # Prepare the environment.
unset PLTADDONDIR PLTCOLLECTS PLTCONFIGDIR PLTUSERHOME
default
- # Remove bundled libffi
- rm -r ./bc/foreign/libffi || die "failed to remove bundled libffi"
+ # Remove bundled libffi.
+ rm -r "${S}"/bc/foreign/libffi || die "failed to remove bundled libffi"
}
src_configure() {
+ # Compilation of Zuo does not respect the autoconf configuration.
+ tc-export CC
+
+ einfo "Configuring Zuo in ${S}/zuo"
+ pushd "${S}"/zuo >/dev/null || die
+ econf
+ popd >/dev/null || die
+
+ einfo "Configuring Racket in ${S}"
# Libtool:
# According to vapier, we should use the bundled libtool
# such that we don't preclude cross-compile.
@@ -75,13 +85,14 @@ src_configure() {
# --enable-libs & --disable-shared is the way to build
# .a files that are needed to embed Racket into programs
# https://docs.racket-lang.org/inside/cs-embedding.html
- local myconf=(
+ local -a myconf=(
--disable-shared
--disable-strip
- --docdir="${EPREFIX}/usr/share/doc/${PF}"
+ --docdir="${EPREFIX}"/usr/share/doc/${PF}
--enable-libs
$(usex chez "--enable-cs --enable-csonly" "--enable-bc --enable-bconly")
$(use_enable doc docs)
+ $(use_enable iconv)
$(use_enable ncurses curses)
)
# Some options are togglable only for the BC version (are forced in CS)
@@ -98,18 +109,27 @@ src_configure() {
econf "${myconf[@]}"
}
+src_compile() {
+ # Compile Racket.
+ CC_FOR_BUILD="$(tc-getCC)" default
+
+ # Recompile Zuo with optimizations.
+ emake -C zuo
+}
+
src_install() {
+ # Install Racket.
default
- # Install Racket boot files
- use chez && emake -C "${S}"/cs/c DESTDIR="${ED}" unix-install-boot-files
+ # Install Zuo.
+ emake -C zuo DESTDIR="${ED}" install
- # raco needs decompressed files for packages doc installation bug 662424
+ # raco needs decompressed files for packages doc installation, bug #662424
use doc && docompress -x /usr/share/doc/${PF}
- # Create missing desktop files and icon
+ # Create missing desktop files and icon.
if ! use minimal ; then
- newicon "${ED}/usr/share/racket/drracket-exe-icon.png" "racket.png"
+ newicon "${ED}"/usr/share/racket/drracket-exe-icon.png racket.png
make_desktop_entry "gracket" "GRacket" "racket" "Development;Education;"
make_desktop_entry "plt-games" "PLT Games" "racket" "Education;Game;"
fi
@@ -120,7 +140,7 @@ src_install() {
pkg_preinst() {
# If we are merging the same SLOT check if package
# database files exist and do not overwrite them
- if has_version "${CATEGORY}/${PN}:${SLOT}" ; then
+ if has_version ${CATEGORY}/${PN}:${SLOT} ; then
echo "We are installing the same SLOT: ${SLOT}"
local rktd
for rktd in "${PKGDB[@]}" ; do
@@ -135,11 +155,15 @@ pkg_preinst() {
fi
}
+get_outsiders() {
+ racket -l raco -- pkg show -i | grep 'link' | sed 's|link.*||g'
+}
+
pkg_postinst() {
# If we have any pkgs not included in Racket main distribution (outsiders),
# then we have to re-setup them or during installation other pkgs will want
# to recompile parts of "outsider" pkgs they depend upon (and fail).
- local outsiders=( $(raco pkg show -i | grep 'link' | sed 's|link.*||g') )
+ local -a outsiders=( $(get_outsiders) )
if [[ -n "${outsiders[@]}" ]] ; then
ebegin "Running \"raco setup\" for outsider packages"
echo "Outsiders: ${outsiders[@]}"