* [gentoo-commits] repo/gentoo:master commit in: dev-scheme/racket/files/, dev-scheme/racket/
@ 2022-02-14 15:49 Maciej Barć
0 siblings, 0 replies; 3+ messages in thread
From: Maciej Barć @ 2022-02-14 15:49 UTC (permalink / raw
To: gentoo-commits
commit: 10954586c34ff2f36282e86f250f110bc9e2dfbd
Author: Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 14 15:47:12 2022 +0000
Commit: Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Mon Feb 14 15:48:15 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=10954586
dev-scheme/racket: patch ncurses for expeditor support
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>
dev-scheme/racket/files/racket-8.4-ncurses.patch | 154 +++++++++++++++++++++
dev-scheme/racket/metadata.xml | 3 +
.../{racket-8.4.ebuild => racket-8.4-r1.ebuild} | 11 +-
3 files changed, 167 insertions(+), 1 deletion(-)
diff --git a/dev-scheme/racket/files/racket-8.4-ncurses.patch b/dev-scheme/racket/files/racket-8.4-ncurses.patch
new file mode 100644
index 000000000000..4bf429d82daa
--- /dev/null
+++ b/dev-scheme/racket/files/racket-8.4-ncurses.patch
@@ -0,0 +1,154 @@
+From 683388b0fcc8d0cc386e0ab749bcbba7cea18c8f Mon Sep 17 00:00:00 2001
+From: Matthew Flatt <mflatt@racket-lang.org>
+Date: Mon, 14 Feb 2022 06:26:25 -0700
+Subject: [PATCH] configure: try -ltinfo as curses linking flag
+
+---
+ ac/curses.m4 | 21 +++++++++++++++++++--
+ bc/configure | 34 +++++++++++++++++++++++++++++++++-
+ cs/c/configure | 34 +++++++++++++++++++++++++++++++++-
+ 3 files changed, 85 insertions(+), 4 deletions(-)
+
+diff --git a/ac/curses.m4 b/ac/curses.m4
+index 25b0f1f99a3..d713c990949 100644
+--- a/ac/curses.m4
++++ b/ac/curses.m4
+@@ -22,7 +22,7 @@ if test "${skip_curses_check}" = "no" ; then
+ if test "${enable_curses}" = "no" ; then
+ if test "${enable_portable}" = "yes" ; then
+ if test "${curses_portable_link}" != "" ; then
+- # Try adding portabel link flags
++ # Try adding portable link flags
+ ORIG_LIBS="$LIBS"
+ ORIG_CPPFLAGS="$CPPFLAGS"
+ ORIG_PREFLAGS="$PREFLAGS"
+@@ -62,7 +62,24 @@ if test "${skip_curses_check}" = "no" ; then
+ LIBS="$ORIG_LIBS"
+ curses_lib_flag=""
+ fi
+- fi
++ fi
++ if test "${enable_curses}" = "no" ; then
++ # Try adding -lncurses -ltinfo
++ ORIG_LIBS="$LIBS"
++ curses_lib_flag=" -lncurses -ltinfo"
++ LIBS="$LIBS $curses_lib_flag"
++ AC_TRY_LINK(
++ [#include <curses.h>]
++ [#include <term.h>],
++[ int errret; ]
++[ setupterm("", 0, &errret);]
++ return 0;
++ , enable_curses=yes, enable_curses=no)
++ if test "${enable_curses}" = "no" ; then
++ LIBS="$ORIG_LIBS"
++ curses_lib_flag=""
++ fi
++ fi
+ fi
+ fi
+ fi
+diff --git a/bc/configure b/bc/configure
+index 543fab87411..132d2dedd6c 100755
+--- a/bc/configure
++++ b/bc/configure
+@@ -5991,7 +5991,7 @@ rm -f core conftest.err conftest.$ac_objext \
+ if test "${enable_curses}" = "no" ; then
+ if test "${enable_portable}" = "yes" ; then
+ if test "${curses_portable_link}" != "" ; then
+- # Try adding portabel link flags
++ # Try adding portable link flags
+ ORIG_LIBS="$LIBS"
+ ORIG_CPPFLAGS="$CPPFLAGS"
+ ORIG_PREFLAGS="$PREFLAGS"
+@@ -6055,6 +6055,38 @@ if ac_fn_c_try_link "$LINENO"; then :
+ else
+ enable_curses=no
+ fi
++rm -f core conftest.err conftest.$ac_objext \
++ conftest$ac_exeext conftest.$ac_ext
++ if test "${enable_curses}" = "no" ; then
++ LIBS="$ORIG_LIBS"
++ curses_lib_flag=""
++ fi
++ fi
++ if test "${enable_curses}" = "no" ; then
++ # Try adding -lncurses -ltinfo
++ ORIG_LIBS="$LIBS"
++ curses_lib_flag=" -lncurses -ltinfo"
++ LIBS="$LIBS $curses_lib_flag"
++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++#include <curses.h>
++ #include <term.h>
++int
++main ()
++{
++ int errret;
++ setupterm("", 0, &errret);
++ return 0;
++
++ ;
++ return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++ enable_curses=yes
++else
++ enable_curses=no
++fi
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ if test "${enable_curses}" = "no" ; then
+diff --git a/cs/c/configure b/cs/c/configure
+index db2132b7f4d..2ec78292f56 100755
+--- a/cs/c/configure
++++ b/cs/c/configure
+@@ -5635,7 +5635,7 @@ rm -f core conftest.err conftest.$ac_objext \
+ if test "${enable_curses}" = "no" ; then
+ if test "${enable_portable}" = "yes" ; then
+ if test "${curses_portable_link}" != "" ; then
+- # Try adding portabel link flags
++ # Try adding portable link flags
+ ORIG_LIBS="$LIBS"
+ ORIG_CPPFLAGS="$CPPFLAGS"
+ ORIG_PREFLAGS="$PREFLAGS"
+@@ -5699,6 +5699,38 @@ if ac_fn_c_try_link "$LINENO"; then :
+ else
+ enable_curses=no
+ fi
++rm -f core conftest.err conftest.$ac_objext \
++ conftest$ac_exeext conftest.$ac_ext
++ if test "${enable_curses}" = "no" ; then
++ LIBS="$ORIG_LIBS"
++ curses_lib_flag=""
++ fi
++ fi
++ if test "${enable_curses}" = "no" ; then
++ # Try adding -lncurses -ltinfo
++ ORIG_LIBS="$LIBS"
++ curses_lib_flag=" -lncurses -ltinfo"
++ LIBS="$LIBS $curses_lib_flag"
++ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++#include <curses.h>
++ #include <term.h>
++int
++main ()
++{
++ int errret;
++ setupterm("", 0, &errret);
++ return 0;
++
++ ;
++ return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++ enable_curses=yes
++else
++ enable_curses=no
++fi
+ rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ if test "${enable_curses}" = "no" ; then
diff --git a/dev-scheme/racket/metadata.xml b/dev-scheme/racket/metadata.xml
index e33886b2c545..8a10d666d3ee 100644
--- a/dev-scheme/racket/metadata.xml
+++ b/dev-scheme/racket/metadata.xml
@@ -26,6 +26,9 @@ Whether you're just starting out, want to know more about programming language a
<flag name="futures">
Enable racket/future library for fine-grained hardware parallelism
</flag>
+ <flag name="ncurses">
+ Add ncurses support for expeditor (REPL expression editor)
+ </flag>
<flag name="places">
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.
</flag>
diff --git a/dev-scheme/racket/racket-8.4.ebuild b/dev-scheme/racket/racket-8.4-r1.ebuild
similarity index 93%
rename from dev-scheme/racket/racket-8.4.ebuild
rename to dev-scheme/racket/racket-8.4-r1.ebuild
index ba7263a23ea8..1dae6d9cdb89 100644
--- a/dev-scheme/racket/racket-8.4.ebuild
+++ b/dev-scheme/racket/racket-8.4-r1.ebuild
@@ -25,7 +25,7 @@ LICENSE="
# 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 +places +threads"
+IUSE="+chez +doc +futures +jit minimal ncurses +places +threads"
# See bug #809785 re chez/threads
REQUIRED_USE="chez? ( futures places ) futures? ( jit threads ) places? ( threads )"
@@ -33,9 +33,17 @@ DEPEND="
!dev-tex/slatex
dev-db/sqlite:3
dev-libs/libffi:=
+ ncurses? ( sys-libs/ncurses:= )
"
RDEPEND="${DEPEND}"
+# Backports that will be probably available in next release (8.5)
+PATCHES=(
+ # Pick correct ncurses library
+ # https://github.com/racket/racket/commit/683388b0fcc8d0cc386e0ab749bcbba7cea18c8f
+ "${FILESDIR}"/${P}-ncurses.patch
+)
+
# "mred" and "mzscheme" are binaries generated by Racket, not CC
QA_FLAGS_IGNORED="usr/bin/mred usr/bin/mzscheme"
@@ -81,6 +89,7 @@ src_configure() {
--enable-libs
$(usex chez "--enable-cs --enable-csonly" "--enable-bc --enable-bconly")
$(use_enable doc docs)
+ $(use_enable ncurses curses)
)
# Some options are togglable only for the BC version (are forced in CS)
! use chez && myconf+=(
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-scheme/racket/files/, dev-scheme/racket/
@ 2022-12-12 19:07 Amy Liffey
0 siblings, 0 replies; 3+ messages in thread
From: Amy Liffey @ 2022-12-12 19:07 UTC (permalink / raw
To: gentoo-commits
commit: 265b9993c2d0f1bf6fdc51898eaa0a1118ebf1ac
Author: Amy Liffey <amynka <AT> gentoo <DOT> org>
AuthorDate: Mon Dec 12 19:04:38 2022 +0000
Commit: Amy Liffey <amynka <AT> gentoo <DOT> org>
CommitDate: Mon Dec 12 19:07:10 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=265b9993
dev-scheme/racket: drop 8.4-r1
Signed-off-by: Amy Liffey <amynka <AT> gentoo.org>
dev-scheme/racket/Manifest | 2 -
dev-scheme/racket/files/racket-8.4-ncurses.patch | 154 --------------------
dev-scheme/racket/racket-8.4-r1.ebuild | 171 -----------------------
3 files changed, 327 deletions(-)
diff --git a/dev-scheme/racket/Manifest b/dev-scheme/racket/Manifest
index 9c0918b515d1..87d9efa3e2b1 100644
--- a/dev-scheme/racket/Manifest
+++ b/dev-scheme/racket/Manifest
@@ -1,8 +1,6 @@
-DIST racket-8.4-src-builtpkgs.tgz 151809822 BLAKE2B c42f7943975a6f91a03ef0f668d218571dfc4159eac5a5722b9513b978413a9617b4e1bf3ccabef051014311ecf51fdc80d7563942e9e645c442ddfc4995a308 SHA512 afd9f357673a28ac5e4529ea0879a4edc3dbffc5b8627aa3553f1caf867be3296b94620dc2d86b8bb3f0c7ec7743d0057ce897c5caa705e02f2cc469ce4c7116
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-minimal-8.4-src-builtpkgs.tgz 21279666 BLAKE2B 25d5eb405cedaa9cadfa776c4dd66b87f1641c86b638110f1a3a788465aaf573f5f8054e1e6913e6c0123840a1a2f64d5855db5f52acace3475b91d095272a76 SHA512 92433c08508cfb1bdb9093e5c7c726630826e9046de02fcb3d402f3dd76aa98fc2d9a5d09515d44e7a50eab0e38d963d2202f48a44741c3cf7fe8e47d9404e63
DIST racket-minimal-8.5-src-builtpkgs.tgz 21390850 BLAKE2B 7bcd8c409203f71b3a49cd7e4a34159ef62fcc61b8fb66e976bfc0938ac54b7bc475e6aff59796b9c01ee324eb0d88bd68340c787f728a3739a57e879e731bfb SHA512 e0dec1038f33dbe3dfbbeba05cb24829e4b0c4223c5326cd26f920c736171e3b47b457236a06c9c57b6ebc82d17b022fba6558e3c94315b75469a2130b6fd375
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
diff --git a/dev-scheme/racket/files/racket-8.4-ncurses.patch b/dev-scheme/racket/files/racket-8.4-ncurses.patch
deleted file mode 100644
index 4bf429d82daa..000000000000
--- a/dev-scheme/racket/files/racket-8.4-ncurses.patch
+++ /dev/null
@@ -1,154 +0,0 @@
-From 683388b0fcc8d0cc386e0ab749bcbba7cea18c8f Mon Sep 17 00:00:00 2001
-From: Matthew Flatt <mflatt@racket-lang.org>
-Date: Mon, 14 Feb 2022 06:26:25 -0700
-Subject: [PATCH] configure: try -ltinfo as curses linking flag
-
----
- ac/curses.m4 | 21 +++++++++++++++++++--
- bc/configure | 34 +++++++++++++++++++++++++++++++++-
- cs/c/configure | 34 +++++++++++++++++++++++++++++++++-
- 3 files changed, 85 insertions(+), 4 deletions(-)
-
-diff --git a/ac/curses.m4 b/ac/curses.m4
-index 25b0f1f99a3..d713c990949 100644
---- a/ac/curses.m4
-+++ b/ac/curses.m4
-@@ -22,7 +22,7 @@ if test "${skip_curses_check}" = "no" ; then
- if test "${enable_curses}" = "no" ; then
- if test "${enable_portable}" = "yes" ; then
- if test "${curses_portable_link}" != "" ; then
-- # Try adding portabel link flags
-+ # Try adding portable link flags
- ORIG_LIBS="$LIBS"
- ORIG_CPPFLAGS="$CPPFLAGS"
- ORIG_PREFLAGS="$PREFLAGS"
-@@ -62,7 +62,24 @@ if test "${skip_curses_check}" = "no" ; then
- LIBS="$ORIG_LIBS"
- curses_lib_flag=""
- fi
-- fi
-+ fi
-+ if test "${enable_curses}" = "no" ; then
-+ # Try adding -lncurses -ltinfo
-+ ORIG_LIBS="$LIBS"
-+ curses_lib_flag=" -lncurses -ltinfo"
-+ LIBS="$LIBS $curses_lib_flag"
-+ AC_TRY_LINK(
-+ [#include <curses.h>]
-+ [#include <term.h>],
-+[ int errret; ]
-+[ setupterm("", 0, &errret);]
-+ return 0;
-+ , enable_curses=yes, enable_curses=no)
-+ if test "${enable_curses}" = "no" ; then
-+ LIBS="$ORIG_LIBS"
-+ curses_lib_flag=""
-+ fi
-+ fi
- fi
- fi
- fi
-diff --git a/bc/configure b/bc/configure
-index 543fab87411..132d2dedd6c 100755
---- a/bc/configure
-+++ b/bc/configure
-@@ -5991,7 +5991,7 @@ rm -f core conftest.err conftest.$ac_objext \
- if test "${enable_curses}" = "no" ; then
- if test "${enable_portable}" = "yes" ; then
- if test "${curses_portable_link}" != "" ; then
-- # Try adding portabel link flags
-+ # Try adding portable link flags
- ORIG_LIBS="$LIBS"
- ORIG_CPPFLAGS="$CPPFLAGS"
- ORIG_PREFLAGS="$PREFLAGS"
-@@ -6055,6 +6055,38 @@ if ac_fn_c_try_link "$LINENO"; then :
- else
- enable_curses=no
- fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
-+ if test "${enable_curses}" = "no" ; then
-+ LIBS="$ORIG_LIBS"
-+ curses_lib_flag=""
-+ fi
-+ fi
-+ if test "${enable_curses}" = "no" ; then
-+ # Try adding -lncurses -ltinfo
-+ ORIG_LIBS="$LIBS"
-+ curses_lib_flag=" -lncurses -ltinfo"
-+ LIBS="$LIBS $curses_lib_flag"
-+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+#include <curses.h>
-+ #include <term.h>
-+int
-+main ()
-+{
-+ int errret;
-+ setupterm("", 0, &errret);
-+ return 0;
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_link "$LINENO"; then :
-+ enable_curses=yes
-+else
-+ enable_curses=no
-+fi
- rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- if test "${enable_curses}" = "no" ; then
-diff --git a/cs/c/configure b/cs/c/configure
-index db2132b7f4d..2ec78292f56 100755
---- a/cs/c/configure
-+++ b/cs/c/configure
-@@ -5635,7 +5635,7 @@ rm -f core conftest.err conftest.$ac_objext \
- if test "${enable_curses}" = "no" ; then
- if test "${enable_portable}" = "yes" ; then
- if test "${curses_portable_link}" != "" ; then
-- # Try adding portabel link flags
-+ # Try adding portable link flags
- ORIG_LIBS="$LIBS"
- ORIG_CPPFLAGS="$CPPFLAGS"
- ORIG_PREFLAGS="$PREFLAGS"
-@@ -5699,6 +5699,38 @@ if ac_fn_c_try_link "$LINENO"; then :
- else
- enable_curses=no
- fi
-+rm -f core conftest.err conftest.$ac_objext \
-+ conftest$ac_exeext conftest.$ac_ext
-+ if test "${enable_curses}" = "no" ; then
-+ LIBS="$ORIG_LIBS"
-+ curses_lib_flag=""
-+ fi
-+ fi
-+ if test "${enable_curses}" = "no" ; then
-+ # Try adding -lncurses -ltinfo
-+ ORIG_LIBS="$LIBS"
-+ curses_lib_flag=" -lncurses -ltinfo"
-+ LIBS="$LIBS $curses_lib_flag"
-+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-+/* end confdefs.h. */
-+#include <curses.h>
-+ #include <term.h>
-+int
-+main ()
-+{
-+ int errret;
-+ setupterm("", 0, &errret);
-+ return 0;
-+
-+ ;
-+ return 0;
-+}
-+_ACEOF
-+if ac_fn_c_try_link "$LINENO"; then :
-+ enable_curses=yes
-+else
-+ enable_curses=no
-+fi
- rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- if test "${enable_curses}" = "no" ; then
diff --git a/dev-scheme/racket/racket-8.4-r1.ebuild b/dev-scheme/racket/racket-8.4-r1.ebuild
deleted file mode 100644
index 21f19f5a855e..000000000000
--- a/dev-scheme/racket/racket-8.4-r1.ebuild
+++ /dev/null
@@ -1,171 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit desktop optfeature readme.gentoo-r1
-
-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 )
-"
-S="${WORKDIR}/${P}/src"
-
-# See https://blog.racket-lang.org/2019/11/completing-racket-s-relicensing-effort.html
-LICENSE="
- || ( MIT Apache-2.0 )
- chez? ( Apache-2.0 )
- !chez? ( LGPL-3 )
-"
-# Bytecode generated by Racket is not compatible between versions.
-# The bytecode version should be denoted by SLOT, in most cases
-# 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"
-# See bug #809785 re chez/threads
-REQUIRED_USE="chez? ( futures places ) futures? ( jit threads ) places? ( threads )"
-
-DEPEND="
- !dev-tex/slatex
- dev-db/sqlite:3
- dev-libs/libffi:=
- ncurses? ( sys-libs/ncurses:= )
-"
-RDEPEND="${DEPEND}"
-
-# Backports that will be probably available in next release (8.5)
-PATCHES=(
- # Pick correct ncurses library
- # https://github.com/racket/racket/commit/683388b0fcc8d0cc386e0ab749bcbba7cea18c8f
- "${FILESDIR}"/${P}-ncurses.patch
-)
-
-# "mred" and "mzscheme" are binaries generated by Racket, not CC
-QA_FLAGS_IGNORED="usr/bin/mred usr/bin/mzscheme"
-
-DOC_CONTENTS="
-If you wish to use sys-libs/readline instead of dev-libs/libedit
-for readline-like features in the Racket's REPL you can install
-the package 'readline-gpl' using raco, Racket's package manager
-https://pkgs.racket-lang.org/package/readline-gpl
-"
-
-# Package database files (for pkg_preinst & pkg_config)
-PKGDB=(
- /usr/share/racket/info-cache.rktd
- /usr/share/racket/links.rktd
- /usr/share/racket/pkgs/pkgs.rktd
-)
-
-src_prepare() {
- # Prepare the environment
- unset PLTADDONDIR PLTCOLLECTS PLTCONFIGDIR PLTUSERHOME
-
- default
-
- # Remove bundled libffi
- rm -r ./bc/foreign/libffi || die "failed to remove bundled libffi"
-}
-
-src_configure() {
- # Libtool:
- # 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
- # Backend:
- # --enable-bc builds Racket w/o chez backend
- # C Libraries:
- # --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=(
- --disable-shared
- --disable-strip
- --docdir="${EPREFIX}/usr/share/doc/${PF}"
- --enable-libs
- $(usex chez "--enable-cs --enable-csonly" "--enable-bc --enable-bconly")
- $(use_enable doc docs)
- $(use_enable ncurses curses)
- )
- # Some options are togglable only for the BC version (are forced in CS)
- ! use chez && myconf+=(
- --enable-float
- --enable-foreign
- --enable-gracket
- --enable-libffi
- $(use_enable futures)
- $(use_enable jit)
- $(use_enable places)
- $(use_enable threads pthread)
- )
- econf "${myconf[@]}"
-}
-
-src_install() {
- default
-
- # Install Racket boot files
- use chez && emake -C "${S}"/cs/c DESTDIR="${ED}" unix-install-boot-files
-
- # raco needs decompressed files for packages doc installation bug 662424
- use doc && docompress -x /usr/share/doc/${PF}
-
- # Create missing desktop files and icon
- if ! use minimal ; then
- 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
-
- readme.gentoo_create_doc
-}
-
-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
- echo "We are installing the same SLOT: ${SLOT}"
- local rktd
- for rktd in "${PKGDB[@]}" ; do
- if [[ -f "${EROOT}"/${rktd} ]] && [[ -f "${ED}"/${rktd} ]] ; then
- einfo "Keeping old file: ${rktd}"
- mv "${ED}"/${rktd} "${ED}"/${rktd}.bak ||
- die "failed to create a backup of ${rktd}"
- cp "${EROOT}"/${rktd} "${ED}"/${rktd} ||
- die "failed to create a copy of ${rktd}"
- fi
- done
- fi
-}
-
-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') )
- if [[ -n "${outsiders[@]}" ]] ; then
- ebegin "Running \"raco setup\" for outsider packages"
- echo "Outsiders: ${outsiders[@]}"
- raco setup --all-users --force --no-docs --no-user --pkgs "${outsiders[@]}"
- eend 0 # do not fail
- fi
-
- optfeature "readline editing features in REPL" dev-libs/libedit
- optfeature "generating PDF files using Scribble" dev-texlive/texlive-fontsextra
-
- readme.gentoo_print_elog
-}
-
-pkg_config() {
- einfo "Swapping package database backup files"
-
- for rktd in "${PKGDB[@]}" ; do
- mv "${EROOT}"/${rktd} "${EROOT}"/${rktd}.pkg_config
- mv "${EROOT}"/${rktd}.bak "${EROOT}"/${rktd}
- mv "${EROOT}"/${rktd}.pkg_config "${EROOT}"/${rktd}.bak
- done
-}
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-scheme/racket/files/, dev-scheme/racket/
@ 2023-11-23 15:12 Maciej Barć
0 siblings, 0 replies; 3+ messages in thread
From: Maciej Barć @ 2023-11-23 15:12 UTC (permalink / raw
To: gentoo-commits
commit: 1ec3517a8530fd57cf7156d5997beeab6faaab23
Author: Maciej Barć <xgqt <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 15:09:32 2023 +0000
Commit: Maciej Barć <xgqt <AT> gentoo <DOT> org>
CommitDate: Thu Nov 23 15:11:57 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ec3517a
dev-scheme/racket: bump to 8.11
Signed-off-by: Maciej Barć <xgqt <AT> gentoo.org>
dev-scheme/racket/Manifest | 2 +
.../files/racket-8.11-repair-builtpkgs.patch | 61 +++++++
dev-scheme/racket/racket-8.11.ebuild | 184 +++++++++++++++++++++
3 files changed, 247 insertions(+)
diff --git a/dev-scheme/racket/Manifest b/dev-scheme/racket/Manifest
index c13b0f07a14d..c44bb6cf233c 100644
--- a/dev-scheme/racket/Manifest
+++ b/dev-scheme/racket/Manifest
@@ -1,6 +1,8 @@
DIST racket-8.10-src-builtpkgs.tgz 156573576 BLAKE2B def6007fec5701a3ca399f3173f863155214521e95b8e655090a61506a8ecd8eae7ddc02785593d256e6a0e23f022997c18460130bdc72e9fcaad8de36030b7d SHA512 4a861b90ca03b252dae0b530ab39cf0fe67dd38e306cc639b6e24516b01d7d25918c0f7e1fb0a105ab51d3be802d349576b4f0ee7ef6ea26bb11fc16abada3dd
+DIST racket-8.11-src-builtpkgs.tgz 156675262 BLAKE2B eff8872ee6bdf84f5fe426970ce9dd84f659eb1c437e820c8e853ee942dcebe2d306707d2e7d4b3fb1be648e5a795d3240f294aba5b8f5989d6eaca72c0e7dd5 SHA512 928b331797b1d9130a765ec2104a569ab984ab5bb101c6cc445f6ef60601d5d42df1db5ebda0ff1aff09592a55118dcdf0bc47467dce13535eabe2f8e4bcf0d1
DIST racket-8.6-src-builtpkgs.tgz 154505661 BLAKE2B ab788ae3e5175024ec75fa0c34297616ab4dcc1bb6f62d4ff4623dc2dd699d63eb9b24238407a854b03210f21fefd02680dc29931ed9d146920ae32472196e32 SHA512 c2948164463fb59a2d6f1b5188cee7634da190ea40bd19f5a88ef466ccdf07da03503b6a1f00e327a66c31b862048bcd5b047f7c586ea0d26e23397ee5ee7682
DIST racket-8.9-src-builtpkgs.tgz 157090283 BLAKE2B 515ad19f37a18decb52ea42ceff5b4570d311d39e15996eb0abd228d16ef5fcae971a87145faf7d27584dc0d6b54b1d94a77bb099e6c2dfd3fa5ddca0b3333b0 SHA512 0eb823600233746e9b5e054747fc5ee1c033a102fe6ab912cc2a15d4ad5b217e04c25124f1877ce04eada4f99c2d6b08cc58adf07535c3962f7d05a21dce8471
DIST racket-minimal-8.10-src-builtpkgs.tgz 23128997 BLAKE2B 614cd3bdaf8852a5de1487c06e2b28968709fade25654684a4ba4f458a983783af23837996bbf163907312fc8e79b2fe22421983bcfe10ae391e0091ec60474d SHA512 aa16ee792b978fbef74b9b3a4af70eb264515bc16ed2109ade15ce54c658b0ccf9bffd9b07b71263298c0eb6eed768ad3d7e2c9e00df284ec1793b7fe0494f82
+DIST racket-minimal-8.11-src-builtpkgs.tgz 23127690 BLAKE2B d9855977312af6313dad0b020436e8a3838814a814f48a1d3ef88f51b99c95163f6564f47ec01d23020bdc0eaeeeb3219f55f8e0fdd74a57069e7e533b36eaa6 SHA512 0f7ac946d544449b45f1301d8530ab80baf9ddaa2e2b6ac043926f233e1feb1829a6a49ebd35603b4b2b9d27ba6db2382b47e355464a7855aaaa2954bf693dfe
DIST racket-minimal-8.6-src-builtpkgs.tgz 22396113 BLAKE2B e8c09da9aef52566746def36823e736e07990ba703d8440a3d067cbeeb43c8d026469c1d4b7d9ad2a423766692b81d6efa400c55512450621acd624d23b1b193 SHA512 695f9be11cab2cf84d1c16b322feb6c4552bf05edbfd901e91fa9532ef52339a6463d8327f4ae4c704cd2e8d67e69c2333bc13b1c862bbe565af00b407debee8
DIST racket-minimal-8.9-src-builtpkgs.tgz 23084628 BLAKE2B 5e1e688dc600b700ed13acdbbafddaa2d6bf5a0e05db4a845b53f33e9448b277f342f5f615086f78db4762eeac11911c9b88cd102f05fbe165fcdff72a9ebcf3 SHA512 404aa01242eb68453e9db3cc14e38b99a02af9eb13b1dccce36e1de9c10d2ddd37bc6411abad7ab58045c71d25336e09d6e06f391cc3ee372097ca68fc497051
diff --git a/dev-scheme/racket/files/racket-8.11-repair-builtpkgs.patch b/dev-scheme/racket/files/racket-8.11-repair-builtpkgs.patch
new file mode 100644
index 000000000000..9629aeb2e539
--- /dev/null
+++ b/dev-scheme/racket/files/racket-8.11-repair-builtpkgs.patch
@@ -0,0 +1,61 @@
+From bed9a444b85951cb83e2b37d07cea2dcadb551b3 Mon Sep 17 00:00:00 2001
+From: Matthew Flatt <mflatt@racket-lang.org>
+Date: Wed, 15 Nov 2023 10:56:31 -0700
+Subject: [PATCH] repair install of a builtpkgs build
+
+---
+ racket/src/bc/build.zuo | 3 ++-
+ racket/src/cs/c/build.zuo | 3 ++-
+ racket/src/lib.zuo | 4 ++++
+ 3 files changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/bc/build.zuo b/bc/build.zuo
+index 5af471ba8cd..98b6ea34f3b 100644
+--- a/bc/build.zuo
++++ b/bc/build.zuo
+@@ -637,7 +637,8 @@
+
+ (define (setup-prepare-to-here?)
+ (and (equal? (lookup 'MAKE_COPYTREE) "copytree")
+- (not cross?)))
++ (not cross?)
++ (not (in-builtpkgs-distro?))))
+
+ (define the-targets
+ (append
+diff --git a/cs/c/build.zuo b/cs/c/build.zuo
+index 451e2c8c2a0..c47649f206f 100644
+--- a/cs/c/build.zuo
++++ b/cs/c/build.zuo
+@@ -373,7 +373,8 @@
+
+ (define (setup-prepare-to-here?)
+ (and (equal? (lookup 'MAKE_COPYTREE) "copytree")
+- (not cross?)))
++ (not cross?)
++ (not (in-builtpkgs-distro?))))
+
+ (define the-targets
+ (make-targets
+diff --git a/lib.zuo b/lib.zuo
+index 80c5c88c94e..64c41b6c7a4 100644
+--- a/lib.zuo
++++ b/lib.zuo
+@@ -42,6 +42,7 @@
+ strip-lib-debug
+ run-raco-setup
+ raco-setup-prepare-to-here
++ in-builtpkgs-distro?
+
+ install-license-files
+ maybe-copytree
+@@ -494,6 +495,9 @@
+ built-racket
+ #f '()))
+
++(define (in-builtpkgs-distro?)
++ (file-exists? (at-source "../collects/racket/compiled/base_rkt.zo")))
++
+ (define (install-license-files sharepltdir)
+ (mkdir-p sharepltdir)
+ (for-each (lambda (path)
diff --git a/dev-scheme/racket/racket-8.11.ebuild b/dev-scheme/racket/racket-8.11.ebuild
new file mode 100644
index 000000000000..384f6d7d658c
--- /dev/null
+++ b/dev-scheme/racket/racket-8.11.ebuild
@@ -0,0 +1,184 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit desktop optfeature toolchain-funcs readme.gentoo-r1
+
+DESCRIPTION="General purpose, multi-paradigm Lisp-Scheme programming language"
+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"
+
+# See https://blog.racket-lang.org/2019/11/completing-racket-s-relicensing-effort.html
+LICENSE="
+ || ( MIT Apache-2.0 )
+ chez? ( Apache-2.0 )
+ !chez? ( LGPL-3 )
+"
+# Bytecode generated by Racket is not compatible between versions.
+# The bytecode version should be denoted by SLOT, in most cases
+# 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 iconv +jit minimal ncurses +places +threads"
+# See bug #809785 re chez/threads
+REQUIRED_USE="chez? ( futures places ) futures? ( jit threads ) places? ( threads )"
+
+RDEPEND="
+ dev-db/sqlite:3
+ dev-libs/libffi:=
+ ncurses? ( sys-libs/ncurses:= )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}/${PN}-8.11-repair-builtpkgs.patch" )
+
+# "mred" and "mzscheme" are binaries generated by Racket, not CC
+QA_FLAGS_IGNORED="usr/bin/mred usr/bin/mzscheme"
+
+DOC_CONTENTS="
+If you wish to use sys-libs/readline instead of dev-libs/libedit
+for readline-like features in the Racket's REPL you can install
+the package 'readline-gpl' using raco, Racket's package manager
+https://pkgs.racket-lang.org/package/readline-gpl
+"
+
+# Package database files (for pkg_preinst & pkg_config)
+PKGDB=(
+ /usr/share/racket/info-cache.rktd
+ /usr/share/racket/links.rktd
+ /usr/share/racket/pkgs/pkgs.rktd
+)
+
+src_prepare() {
+ # Prepare the environment.
+ unset PLTADDONDIR PLTCOLLECTS PLTCONFIGDIR PLTUSERHOME
+
+ default
+
+ # 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.
+ # Thus don't use --enable-lt=/usr/bin/libtool
+ # Backend:
+ # --enable-bc builds Racket w/o chez backend
+ # C Libraries:
+ # --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 -a myconf=(
+ --disable-shared
+ --disable-strip
+ --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)
+ ! use chez && myconf+=(
+ --enable-float
+ --enable-foreign
+ --enable-gracket
+ --enable-libffi
+ $(use_enable futures)
+ $(use_enable jit)
+ $(use_enable places)
+ $(use_enable threads pthread)
+ )
+ 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 Zuo.
+ emake -C zuo DESTDIR="${ED}" install
+
+ # raco needs decompressed files for packages doc installation, bug #662424
+ use doc && docompress -x "/usr/share/doc/${PF}"
+
+ # Create missing desktop files and icon.
+ if ! use minimal ; then
+ 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
+
+ readme.gentoo_create_doc
+}
+
+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
+ echo "We are installing the same SLOT: ${SLOT}"
+
+ local rktd
+ for rktd in "${PKGDB[@]}" ; do
+ if [[ -f "${EROOT}/${rktd}" ]] && [[ -f "${ED}/${rktd}" ]] ; then
+ einfo "Keeping old file: ${rktd}"
+
+ mv "${ED}/${rktd}" "${ED}/${rktd}.bak" ||
+ die "failed to create a backup of ${rktd}"
+
+ cp "${EROOT}/${rktd}" "${ED}/${rktd}" ||
+ die "failed to create a copy of ${rktd}"
+ fi
+ done
+ 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 -a outsiders=( $(get_outsiders) )
+ if [[ -n "${outsiders[@]}" ]] ; then
+ ebegin "Running \"raco setup\" for outsider packages"
+ echo "Outsiders: ${outsiders[@]}"
+
+ raco setup --all-users --force --no-docs --no-user --pkgs "${outsiders[@]}"
+ eend 0 # do not fail
+ fi
+
+ optfeature "readline editing features in REPL" dev-libs/libedit
+ optfeature "generating PDF files using Scribble" dev-texlive/texlive-fontsextra
+
+ readme.gentoo_print_elog
+}
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-11-23 15:12 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-23 15:12 [gentoo-commits] repo/gentoo:master commit in: dev-scheme/racket/files/, dev-scheme/racket/ Maciej Barć
-- strict thread matches above, loose matches on Subject: below --
2022-12-12 19:07 Amy Liffey
2022-02-14 15:49 Maciej Barć
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox