summaryrefslogtreecommitdiff
path: root/dev-lisp
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-04-06 22:33:41 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-04-06 22:33:41 +0100
commite68d405c5d712af4387159df07e226217bdda049 (patch)
tree009ab0f3d427f0813e62930d71802cb054c07e30 /dev-lisp
parent401101f9c8077911929d3f2b60a37098460a5d89 (diff)
gentoo resync : 06.04.2022
Diffstat (limited to 'dev-lisp')
-rw-r--r--dev-lisp/Manifest.gzbin3374 -> 3370 bytes
-rw-r--r--dev-lisp/gcl/Manifest8
-rw-r--r--dev-lisp/gcl/files/64gcl-gentoo.el1
-rw-r--r--dev-lisp/gcl/files/gcl-2.6.12-gcc5.patch8
-rw-r--r--dev-lisp/gcl/gcl-2.6.12.ebuild147
-rw-r--r--dev-lisp/gcl/gcl-2.6.13_pre99.ebuild8
-rw-r--r--dev-lisp/sbcl/Manifest3
-rw-r--r--dev-lisp/sbcl/sbcl-2.2.3.ebuild240
8 files changed, 248 insertions, 167 deletions
diff --git a/dev-lisp/Manifest.gz b/dev-lisp/Manifest.gz
index 3908c9ce68eb..bb74ad732db3 100644
--- a/dev-lisp/Manifest.gz
+++ b/dev-lisp/Manifest.gz
Binary files differ
diff --git a/dev-lisp/gcl/Manifest b/dev-lisp/gcl/Manifest
index 52d111be4b02..32a3dfdf6002 100644
--- a/dev-lisp/gcl/Manifest
+++ b/dev-lisp/gcl/Manifest
@@ -1,16 +1,12 @@
-AUX 64gcl-gentoo.el 184 BLAKE2B 69607d9ac06e897bb02deeed65807438a19068f9d8de5179247e73576c18483a4a1b193af27a3811383f1c68072f787f6214054d9763bee1f6a5a561e6f65259 SHA512 06749b0c4ec7a34a7fdbb591d40106fe00a794e6db0950cc7187293d4c495d5c908235a2ba38236132618442924a7feae08496356fcd4b0139477cd89121e3cf
+AUX 64gcl-gentoo.el 154 BLAKE2B 57356dd1f8a1fe80a519c36beb0937733fe4aef09df9108ee81c7ccac03760ef7cf1b60019acc045bfd69e2688c40c144802c5195dc86c03c847640b39477840 SHA512 bc471a4b21866a9db2f21234b0b42cafff5bc509668a59ba39516d5fe0b148739d65b89ed1982b3a06109f793d28321da6fe6856693f279d77ab6313d0185b1c
AUX bootstrap-gcl 336 BLAKE2B a1c94177ccf15e2febd2315d83eb965903f0b22b8dfe230102891432564dcd8198b210aa004da3ad0d91e0b2e7ba43cc5e4e8c981923efb7f15a112e30dff86b SHA512 481a9ffa1102534c36a1a2084dda4b1ecd822888fafac4e6f0691b73ce0cc60e5328f628998ccef38bf75a26f3b79b24adf59562dc7cad23c3033a22d9593d0f
-AUX gcl-2.6.12-gcc5.patch 469 BLAKE2B 7ef376f56d4b9d04fa7d3e5162b22afd8276337f103ae7ab2d5d59759c99e479c4341773b158ffe5095e49aae8cab69f97387e6eff2847c6502057a3a0a3fe07 SHA512 b2dffb7a8b3f89ab8d18d6d23dfc756e9e70921d036f9d7b2445351b9e3b67bdecff286b04f8dcb5f30b5199635cd44f3f3a28cde8ec150911fd445d172c70fb
AUX gcl-2.6.13_pre99-assertion.patch 534 BLAKE2B 5306a28c9e2439454d6343a228661ced66079953d2bf678115eda769d08e1d0f366c2f3ed2aa55a9653b97167824dcea7a8a86b6650df21b0186515f05609f88 SHA512 e7a914b760a321deb831f7907c2ba5f5ae2cd921118453bacc8dcc907bb22cb993295fbca9b5f45b0ecb195e36bf31e18a0b25dae5eee6fc45188a1edf2b485f
AUX gcl-gmp-6.patch 363 BLAKE2B 103d473dc971c138ed4c7584fb61264e0ce4e6ef5823beade51a3ed4a5cae769564ae9ad252a6e40723e3ac8b5a33b9631d41954034ebc6324c58b878f4e1260 SHA512 cc578a915d154e94cf992f79e5a0130d294f506da13315bef060e19b08af3390942b2ebd5b4989acb37582315f3396fe605b56e9e441755728f54cf693be0ef1
AUX gcl-readline-6.3.patch 656 BLAKE2B 5e8fab31dacab80c1a01cbbf17de6d346556aa7412c3ea33a104aaf4515f72bfac4b8bb316b64e77720efafefae289805b96ca9a9c396c7711c66b342a1ec3ea SHA512 d88e59a0082d01b7ae8bca1dd9870400b7e0b0e39eeb4fdce564bccfd615fadee6235c3cf1e3ef8074f74c17188144c93380cd499b215b5025304b0b2d272501
AUX gcl-tcl-8.6.patch 3331 BLAKE2B a37ed5a50ab7c9601e36d83c511db20fd0d9cec7bd36d83dcd463bc692cf3a647fdcf32c090daa6f7b5c9697380307948d21e98de38e0c68479921c1710f3bb7 SHA512 108835fd285d6198935c6c1d20c96bc405f3c47dec66fc30201e01cd163734933cc0107b9a9035f728a594f1280a0c1bbfde2087ba5149d46c3b55ca066e3ca4
DIST gcl-2.6.10-fedora.tar.bz2 695718 BLAKE2B 151cac372f74a971ffb31191a3614d0f7bafca141258af9e1955185f8ed119cbcd3797f2d9bbe5eb5f82e76af4fd0d3e0cf155cd35f305a2c028e40b340b78cf SHA512 3e0ffaec859783443a8941a29302c7a17c9538ef2177d449ad34e24292c174de7bb8760a6d327e08f012773032f0d0a5230b79c7e4b4f5bad8354bf10a28af4c
DIST gcl-2.6.10.tar.gz 5490689 BLAKE2B 46af0cf8a810a82fe2bc2bd46ca1cbe17b74c71eb4af6a06032040900dcad4dd4338883cd9225f0945ae425eba788ac84db9a0ed454779edd86c74a1bb48a947 SHA512 bbaacce712f15130550bcdf7e53edf4df9ab955e84ec701087034115df1c1e657d956853d5db85d7e88709981f9b7fd4c9df7acf6c8588a8ccf5f05e4e666aed
-DIST gcl-2.6.12-fedora.tar.bz2 680471 BLAKE2B 0ad96ce0a09bb73ee77456373eb7e50b2325a4f2e042c21120a1c33b2dec2aa10f5485bb1b02e8eb8e77aaaea6e141189d676217f9d139615911d8a77ea5818a SHA512 7640f8370754c889e2db9d047c4476195f949f4d97eafc7ef81761c1a548e24125d6d93381227b55f1840c3d127770995e88bf66f83c6952e121f5fa004e7f1a
-DIST gcl-2.6.12.tar.gz 7031837 BLAKE2B afd3f81dd8a712d92883a96399a2e0621b0d38a349904707846bd694892510012fde27f94ec36664c249659a480e7f92c412b3790ecb74247a91ba0cb44aa420 SHA512 e82b5bdded6f846de4ea35a83bc8294043ba6d4fe03ff421f8753e78add1e5e87124782f672cd38ad89bbec1ca7c5ff69fe2621be1552b209516b58b6c97fd20
DIST gcl-2.6.13_pre99.tar.xz 10030460 BLAKE2B 8750d641062bcad5a124173013d38403f37ad352c7c436e89d4e329d997200be399a100dcefc4ce484e3f85f46e2dd90ee02947e5e728e001782e973c4122b0e SHA512 a3ad2bd639157ca2a80b534e87c169f6e07002a1b9ca8039483cff336af764123dec9e749da045b656b990e0a97c70881c798420ec4bd0e4494f43d0d040e413
EBUILD gcl-2.6.10.ebuild 3928 BLAKE2B bcc3e1b8b37323e6ef6740664d28191923cd69a59267ae0c8eeda8aa6d9a844a39b2ee9339d945a9a27e93b5294fb845268dba34fd826e4d203592ea68aa7768 SHA512 abb82bdd5ab6ed06111a29eaaf325636d4e3bde64c8f53b6b208783e702dc9be6f7389e1ac06978648547f3c9b90fafffdaf1647949ab1e102946044cd1db96c
-EBUILD gcl-2.6.12.ebuild 3839 BLAKE2B 8e3f5c1d9620112c79b7604f9beeef8d41d8a8e3337d0bc4c170a61f79d80cbd1b78d389a2c0293f6bad1f11e9bf178108d8ab8052896a0e5d1b1685ba2acfa7 SHA512 11bdbaaec48e3d7a1264c0ddca91b041b0b16a70a2b1530d80e98def9466d83399e8cb74e1446f4add1bcc238e6e9f954829f19e540d36300d841154b71133a7
-EBUILD gcl-2.6.13_pre99.ebuild 2462 BLAKE2B 84d3315f0448ec280740571f6e3d9e48cb1ab29dc1862c649704f18dcc36b8be4f0384109362733a7f8005b3a80f02369a32e96d91c725b11b072ba190dfa496 SHA512 f9fcce8135ef5c904a14e9ab14fe513f4c5c8267c0d1c30ea1b565ea913df4fb0e596f8d1299808ebdeddc93ea4581e289034455dace4f6c5800ccae4881c7d1
+EBUILD gcl-2.6.13_pre99.ebuild 2452 BLAKE2B 79d99bbde11dee2984f546efabafbed5e073f3363a625082c7dd1e4e3bb78f970f5555007a9e84764297282c3b2862208e632f4489b4e42481f7d5f9aed3c7a3 SHA512 83b905410f12656cf18b60b43978041190ae2d036b6295a05c4c3178fc9032202c5b5d25bc6ec749807789c11b2fec4f89bc7daddbb4822653c35d0e12f74b80
MISC metadata.xml 722 BLAKE2B 4efe3f45f285f77a679e5c745a98e6707db15ac67554c17a2de932183d216ac0906d302197ca094b0773d90bd0a36dcef5e0ecf621f8ef07c9e18478db734f77 SHA512 fb317108e1673ab66aeda56aff57fb70679dcc1c4893f1e8c8b54dd9220414777694d647089c6281426fdf07393be0a7ee64fe1bee519fab638523315c20adc6
diff --git a/dev-lisp/gcl/files/64gcl-gentoo.el b/dev-lisp/gcl/files/64gcl-gentoo.el
index 7b7cee00bac8..e5e19f27cdcd 100644
--- a/dev-lisp/gcl/files/64gcl-gentoo.el
+++ b/dev-lisp/gcl/files/64gcl-gentoo.el
@@ -1,4 +1,3 @@
-;; site-init for dev-lisp/gcl
(add-to-list 'load-path "@SITELISP@")
(autoload 'run "gcl" "Run GCL." t)
(autoload 'gcl-mode "gcl" "GCL mode." t)
diff --git a/dev-lisp/gcl/files/gcl-2.6.12-gcc5.patch b/dev-lisp/gcl/files/gcl-2.6.12-gcc5.patch
deleted file mode 100644
index 07d3892eb0b6..000000000000
--- a/dev-lisp/gcl/files/gcl-2.6.12-gcc5.patch
+++ /dev/null
@@ -1,8 +0,0 @@
-diff -r -U1 gcl.orig/makefile gcl/makefile
---- gcl.orig/makefile 2014-10-23 23:29:00.000000000 +0200
-+++ gcl/makefile 2016-02-17 18:10:29.871808118 +0100
-@@ -267,3 +267,3 @@
- $(AWK) 'BEGIN {print "#include \"include.h\"";print "#include \"cmponly.h\"";print "---"} {a=$$1;gsub("\\.\\.\\.","",a);print "\"#define " $$1 "\" " a}' $< |\
-- $(CC) -E -I./$(HDIR) - |\
-+ $(CC) -E -P -I./$(HDIR) - |\
- $(AWK) '/^\-\-\-$$/ {i=1;next} {if (!i) next} {gsub("\"","");print}' >$@
diff --git a/dev-lisp/gcl/gcl-2.6.12.ebuild b/dev-lisp/gcl/gcl-2.6.12.ebuild
deleted file mode 100644
index 37a0306ac5f1..000000000000
--- a/dev-lisp/gcl/gcl-2.6.12.ebuild
+++ /dev/null
@@ -1,147 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit elisp-common epatch flag-o-matic
-
-DESCRIPTION="GNU Common Lisp"
-HOMEPAGE="https://www.gnu.org/software/gcl/gcl.html"
-SRC_URI="mirror://gnu/${PN}/${P}.tar.gz https://dev.gentoo.org/~grozin/${P}-fedora.tar.bz2"
-S="${WORKDIR}"/${PN}
-
-LICENSE="LGPL-2 GPL-2"
-SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ppc64 ~x86"
-IUSE="+ansi athena emacs +readline tk X"
-
-# See bug #205803
-RESTRICT="strip"
-
-RDEPEND="emacs? ( >=app-editors/emacs-23.1:* )
- readline? ( sys-libs/readline:= )
- athena? ( x11-libs/libXaw )
- >=dev-libs/gmp-4.1:=
- tk? ( dev-lang/tk:= )
- X? ( x11-libs/libXt x11-libs/libXext x11-libs/libXmu x11-libs/libXaw )
- virtual/latex-base"
-DEPEND="${RDEPEND}
- virtual/texi2dvi
- >=app-text/texi2html-1.64
- >=sys-devel/autoconf-2.52"
-
-src_prepare() {
- mv "${WORKDIR}"/fedora/info/* info/
- cp -p /usr/share/texmf-dist/tex/texinfo/texinfo.tex info/
- find . -type f -perm /0111 | xargs chmod a-x
- chmod a+x add-defs add-defs1 config.guess config.sub configure install.sh
- chmod a+x bin/info bin/info1 gcl-tk/gcltksrv.in gcl-tk/ngcltksrv mp/gcclab
- chmod a+x o/egrep-def utils/replace xbin/*
- epatch "${FILESDIR}"/${P}-gcc5.patch
-
- # fedora patches
- epatch "${WORKDIR}"/fedora/fd-leak.patch
- epatch "${WORKDIR}"/fedora/latex.patch
- epatch "${WORKDIR}"/fedora/texinfo.patch
- epatch "${WORKDIR}"/fedora/elisp.patch
- epatch "${WORKDIR}"/fedora/selinux.patch
- epatch "${WORKDIR}"/fedora/rename.patch
- epatch "${WORKDIR}"/fedora/getcwd.patch
- epatch "${WORKDIR}"/fedora/plt.patch
- epatch "${WORKDIR}"/fedora/ellipsis.patch
- epatch "${WORKDIR}"/fedora/infrastructure.patch
- epatch "${WORKDIR}"/fedora/extension.patch
- epatch "${WORKDIR}"/fedora/unrandomize.patch
- epatch "${WORKDIR}"/fedora/asm-signal-h.patch
- epatch "${WORKDIR}"/fedora/largefile.patch
- epatch "${WORKDIR}"/fedora/arm.patch
-
- epatch_user
-
- sed -e 's|"-fomit-frame-pointer"|""|' -i configure
-}
-
-src_configure() {
- strip-flags
- filter-flags -fstack-protector -fstack-protector-all
- append-cflags $(test-flags-CC -fgnu89-inline)
-
- local tcl=""
- if use tk; then
- tcl="--enable-tclconfig=/usr/lib --enable-tkconfig=/usr/lib"
- fi
-
- econf --enable-dynsysgmp \
- --disable-xdr \
- --enable-emacsdir=/usr/share/emacs/site-lisp/gcl \
- --enable-infodir=/usr/share/info \
- $(use_enable readline) \
- $(use_enable ansi) \
- $(use_enable athena xgcl) \
- $(use_with X x) \
- ${tcl}
-}
-
-src_compile() {
- emake -j1
- VARTEXFONTS="${T}"/fonts emake -C info gcl.info
- if use athena; then
- pushd xgcl-2 > /dev/null
- pdflatex dwdoc.tex
- popd > /dev/null
- fi
-}
-
-src_test() {
- local make_ansi_tests_clean="rm -f test.out *.fasl *.o *.so *~ *.fn *.x86f *.fasl *.ufsl"
- if use ansi; then
- cd ansi-tests
-
- ( make clean && make test-unixport ) \
- || die "make ansi-tests failed!"
-
- cat "${FILESDIR}/bootstrap-gcl" \
- | ../unixport/saved_ansi_gcl
-
- cat "${FILESDIR}/bootstrap-gcl" \
- |sed s/bootstrapped_ansi_gcl/bootstrapped_r_ansi_gcl/g \
- | ./bootstrapped_ansi_gcl
-
- ( ${make_ansi_tests_clean} && \
- echo "(load \"gclload.lsp\")" \
- | ./bootstrapped_r_ansi_gcl ) \
- || die "Phase 2, bootstraped compiler failed in tests"
- fi
-}
-
-src_install() {
- emake DESTDIR="${D}" install
- rm -rf "${D}"usr/share/doc
- rm -rf "${D}"usr/share/emacs
-
- rm elisp/add-defaults.el
- dodoc readme* RELEASE* ChangeLog* doc/*
- doman man/man1/gcl.1
- doinfo info/*.info*
- dohtml -r info/gcl-si info/gcl-tk
-
- if use emacs; then
- elisp-site-file-install "${FILESDIR}"/64${PN}-gentoo.el
- elisp-install ${PN} elisp/*.el
- fi
-
- dodoc info/gcl-{si,tk}.pdf
- docompress -x /usr/share/doc/${PF}/gcl-{si,tk}.pdf
-
- if use athena; then
- dodoc xgcl-2/dwdoc.pdf
- docompress -x /usr/share/doc/${PF}/dwdoc.pdf
- fi
-}
-
-pkg_postinst() {
- use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
- use emacs && elisp-site-regen
-}
diff --git a/dev-lisp/gcl/gcl-2.6.13_pre99.ebuild b/dev-lisp/gcl/gcl-2.6.13_pre99.ebuild
index 6858ff5af62f..8b07ee93371f 100644
--- a/dev-lisp/gcl/gcl-2.6.13_pre99.ebuild
+++ b/dev-lisp/gcl/gcl-2.6.13_pre99.ebuild
@@ -8,13 +8,11 @@ DESCRIPTION="GNU Common Lisp"
HOMEPAGE="https://www.gnu.org/software/gcl/gcl.html"
SRC_URI="https://dev.gentoo.org/~grozin/${P}.tar.xz"
-LICENSE="LGPL-2 GPL-2"
+LICENSE="LGPL-2+ GPL-2+"
SLOT="0"
-KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+KEYWORDS="amd64 ~arm ~ppc ppc64 ~x86"
IUSE="+ansi athena emacs +readline tk X"
-
-# See bug #205803
-RESTRICT="strip"
+RESTRICT="strip" #205803
RDEPEND="dev-libs/gmp
virtual/latex-base
diff --git a/dev-lisp/sbcl/Manifest b/dev-lisp/sbcl/Manifest
index e770c8fb98e3..9f46cd3c4231 100644
--- a/dev-lisp/sbcl/Manifest
+++ b/dev-lisp/sbcl/Manifest
@@ -19,6 +19,9 @@ DIST sbcl-2.2.0-source.tar.bz2 6697729 BLAKE2B de89a3725ab68e7c189b225ee43bda3f5
DIST sbcl-2.2.0-x86-64-linux-binary.tar.bz2 10178679 BLAKE2B 7a38af9f548807852fc602bb2cb4be3d50ab9fef875919f5c38df6fa9a43e80323cd005064c2e373cbb72d8e7e01a1ee4e0732c3ca9b8ee558e6c2f965d4631f SHA512 a148cf90b2b31ecd49a767468355eca166f428d491588ce5bd577da6efa32e0531b92fba1bfbf034b058a9af8baa45842e41ec24411bd3d5766b9cf20206453b
DIST sbcl-2.2.2-source.tar.bz2 6716272 BLAKE2B 6cb820a22d3c548df79598e0b3280204b65ce0b4c928a63f342a1cd106f2ce19bb639c0a7baf17dfae0d2b8dbcd92a7c4934ac75b9623691d218e7b36ab33830 SHA512 5e30736d737999da7686e45d63c17e6fccdab673bcb8afa5180f000f67eeea8546ca4ea83c1356e65c8f921fa2abee6b48f74d98e1d88d95dda618ffb249962c
DIST sbcl-2.2.2-x86-64-linux-binary.tar.bz2 10166209 BLAKE2B 460eac990d89f9ee1d77b3a60e22ccb8398e84af1b5859bd3fb39a30f132f6b15b213d7789d714b40a89de54a047ed91bd3a6609eb919f0a7cb82af9ec9eb008 SHA512 97a73833279028390b86685abff0725934fdf67bfd0fb055c0a2b84bd6b76409b9693ec6f5ecfd399b2d2eb743b1a51e7701d0802e0d9c42ff4d2bb524a1d39f
+DIST sbcl-2.2.3-source.tar.bz2 6715725 BLAKE2B ec4e99ca18336d56c3b26c723dc84ee07742923647655195af8a64ea656f54e03ea078c68b868d0d711e33236540d70dd206e4b1edbe2693e7d08cc5ecfcb2ab SHA512 8f149a7fb096c55eaec1b08e779d033dfb1476dd58e26c2e56a25b20ce9644be808f512bde25ada0fbd755894a89d2cc6be23c53366ca37e2c0b555508ee7037
+DIST sbcl-2.2.3-x86-64-linux-binary.tar.bz2 10255248 BLAKE2B f6d9dfd3053c6fd13b09959792d71e9b5fad37369c2e7471adc9927bdd8857e375189b114648c71294504a7e8b608bc216f27daab84149bdef9913eb7705b2c2 SHA512 6a3caa67c44ed505d6fe53903ed8d20b22431523c18bff902676c3936397f5f7ef4340c96c8a5634816407e22b6f80a1e62d31c26113a8e14659c23976c861f5
EBUILD sbcl-2.2.0.ebuild 8344 BLAKE2B 1baa54b857fd84c98ca24cde84b6595a9b4d58df52205e41620b2bf028b40af77d3f50ba43b82949fd9c86c4e75653c080ee031b1be29bb3c50543b0b49fef72 SHA512 644db987685fbeb15e5eac754ac15138958c09fe657be8838ab18f9df336f3b86b0f34003a74c43a3d32248bf7dfed1752cdb302abf85fa882fefc46bbf92a07
EBUILD sbcl-2.2.2.ebuild 8348 BLAKE2B d207e7038dc2fd29ceebbcea139c8d298a41aecd9415c4b9518f4909c2a14abeb82dbb5348389cdaad692352c0de8df5cff08206a7563b16a9bd71623504b7fd SHA512 13061348bd4864fc1349de9fc24c4fa6c102c957ee2febce8d3f58d78610b65910291f2d5459e090b238042225fa7843650af6fa3594041c33028c7bd8d8f2ce
+EBUILD sbcl-2.2.3.ebuild 8348 BLAKE2B db79c6723bd51e5a571c2c61e8cd055d029d7d2a5e581b0f0fde1fdf14bec2218c21c0d862132e09bc95694d31d265ff52cf13cc11e730c4ff2cd3e737638910 SHA512 9ae8929e98a78d051db2de139ce59fd13c6ebdcbfaa1df0b03c312f763bb98a87ecb06cfedcae756dd16af681526d5261bd89771a6825004e9825dbaf00d01c4
MISC metadata.xml 1185 BLAKE2B fa1ce4556cb77fa154914a28fdd2e5dcec45498961875461f465978de4467ff16a329bfdd8a0fe161ba579639808b48af76bcd6fd22165a73d803983e6c10c91 SHA512 51bda1487ee9f95ba0e343f2990f465524590a88baba942819339697b446db3c7054d08791579c77472654f69e3f0fed8077ef2f0a9cb2314067fceff4c2c67c
diff --git a/dev-lisp/sbcl/sbcl-2.2.3.ebuild b/dev-lisp/sbcl/sbcl-2.2.3.ebuild
new file mode 100644
index 000000000000..e954697d7233
--- /dev/null
+++ b/dev-lisp/sbcl/sbcl-2.2.3.ebuild
@@ -0,0 +1,240 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit multilib flag-o-matic pax-utils toolchain-funcs
+
+#same order as http://www.sbcl.org/platform-table.html
+BV_X86=1.4.3
+BV_AMD64=2.2.3
+BV_PPC=1.2.7
+BV_PPC64LE=1.5.8
+BV_SPARC=1.0.28
+BV_ALPHA=1.0.28
+BV_ARM=1.4.11
+BV_ARM64=1.4.2
+BV_X64_MACOS=1.2.11
+BV_PPC_MACOS=1.0.47
+BV_X86_SOLARIS=1.2.7
+BV_X64_SOLARIS=1.2.7
+BV_SPARC_SOLARIS=1.0.23
+
+DESCRIPTION="Steel Bank Common Lisp (SBCL) is an implementation of ANSI Common Lisp"
+HOMEPAGE="http://sbcl.sourceforge.net/"
+SRC_URI="mirror://sourceforge/sbcl/${P}-source.tar.bz2
+ x86? ( mirror://sourceforge/sbcl/${PN}-${BV_X86}-x86-linux-binary.tar.bz2 )
+ amd64? ( mirror://sourceforge/sbcl/${PN}-${BV_AMD64}-x86-64-linux-binary.tar.bz2 )
+ ppc? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC}-powerpc-linux-binary.tar.bz2 )
+ ppc64? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC64LE}-ppc64le-linux-binary.tar.bz2 )
+ sparc? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC}-sparc-linux-binary.tar.bz2 )
+ alpha? ( mirror://sourceforge/sbcl/${PN}-${BV_ALPHA}-alpha-linux-binary.tar.bz2 )
+ arm? ( mirror://sourceforge/sbcl/${PN}-${BV_ARM}-armhf-linux-binary.tar.bz2 )
+ arm64? ( mirror://sourceforge/sbcl/${PN}-${BV_ARM64}-arm64-linux-binary.tar.bz2 )
+ x64-macos? ( mirror://sourceforge/sbcl/${PN}-${BV_X64_MACOS}-x86-64-darwin-binary.tar.bz2 )
+ ppc-macos? ( mirror://sourceforge/sbcl/${PN}-${BV_PPC_MACOS}-powerpc-darwin-binary.tar.bz2 )
+ x86-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_X86_SOLARIS}-x86-solaris-binary.tar.bz2 )
+ x64-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_X64_SOLARIS}-x86-64-solaris-binary.tar.bz2 )
+ sparc-solaris? ( mirror://sourceforge/sbcl/${PN}-${BV_SPARC_SOLARIS}-sparc-solaris-binary.tar.bz2 )"
+
+LICENSE="MIT"
+SLOT="0/${PV}"
+KEYWORDS="-* ~amd64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos ~x86-solaris"
+IUSE="debug doc source +threads +unicode zlib"
+
+CDEPEND=">=dev-lisp/asdf-3.3:="
+BDEPEND="${CDEPEND}
+ doc? ( sys-apps/texinfo >=media-gfx/graphviz-2.26.0 )"
+RDEPEND="${CDEPEND}
+ !prefix? ( elibc_glibc? ( >=sys-libs/glibc-2.6 ) )"
+
+# Disable warnings about executable stacks, as this won't be fixed soon by upstream
+QA_EXECSTACK="usr/bin/sbcl"
+
+CONFIG="${S}/customize-target-features.lisp"
+ENVD="${T}/50sbcl"
+
+# Prevent ASDF from using the system libraries
+CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)"
+ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)"
+
+usep() {
+ use ${1} && echo "true" || echo "false"
+}
+
+sbcl_feature() {
+ echo "$( [[ ${1} == "true" ]] && echo "(enable ${2})" || echo "(disable ${2})")" >> "${CONFIG}"
+}
+
+sbcl_apply_features() {
+ sed 's/^X//' > "${CONFIG}" <<-'EOF'
+ (lambda (list)
+ X (flet ((enable (x) (pushnew x list))
+ X (disable (x) (setf list (remove x list))))
+ EOF
+ if use x86 || use amd64; then
+ sbcl_feature "$(usep threads)" ":sb-thread"
+ fi
+ sbcl_feature "true" ":sb-ldb"
+ sbcl_feature "false" ":sb-test"
+ sbcl_feature "$(usep unicode)" ":sb-unicode"
+ sbcl_feature "$(usep zlib)" ":sb-core-compression"
+ sbcl_feature "$(usep debug)" ":sb-xref-for-internals"
+ sed 's/^X//' >> "${CONFIG}" <<-'EOF'
+ X )
+ X list)
+ EOF
+ cat "${CONFIG}"
+}
+
+src_unpack() {
+ unpack ${A}
+ mv sbcl-*-* sbcl-binary || die
+ cd "${S}"
+}
+
+src_prepare() {
+ # bug #468482
+ eapply "${FILESDIR}"/concurrency-test-2.0.1.patch
+ # bugs #486552, #527666, #517004
+ eapply "${FILESDIR}"/bsd-sockets-test-2.0.5.patch
+ # bugs #560276, #561018
+ eapply "${FILESDIR}"/sb-posix-test-1.2.15.patch
+ # bug #767742
+ eapply "${FILESDIR}"/etags-2.1.0.patch
+
+ eapply "${FILESDIR}"/verbose-build-2.0.3.patch
+
+ eapply_user
+
+ # Make sure the *FLAGS variables are sane.
+ # sbcl needs symbols in resulting binaries, so building with the -s linker flag will fail.
+ strip-unsupported-flags
+ filter-flags -fomit-frame-pointer -Wl,-s
+ filter-ldflags -s
+
+ # original bugs #526194, #620532
+ # this broke no-pie default builds, c.f. bug #632670
+ # Pass CFLAGS down by appending our value, to let users override
+ # the default values.
+ # Keep passing LDFLAGS down via the LINKFLAGS variable.
+ sed -e "s@\(CFLAGS += -g .*\)\$@\1 ${CFLAGS}@" \
+ -e "s@LINKFLAGS += -g\$@LINKFLAGS += ${LDFLAGS}@" \
+ -i src/runtime/GNUmakefile || die
+
+ sed -e "s@SBCL_PREFIX=\"/usr/local\"@SBCL_PREFIX=\"${EPREFIX}/usr\"@" \
+ -i make-config.sh || die
+
+ # Use installed ASDF version
+ cp "${EPREFIX}"/usr/share/common-lisp/source/asdf/build/asdf.lisp contrib/asdf/ || die
+ # Avoid installation of ASDF info page. See bug #605752
+ sed '/INFOFILES/s/asdf.info//' -i doc/manual/Makefile || die
+
+ use source && sed 's%"$(BUILD_ROOT)%$(MODULE).lisp "$(BUILD_ROOT)%' -i contrib/vanilla-module.mk
+
+ # Some shells(such as dash) don't have "time" as builtin
+ # and we don't want to DEPEND on sys-process/time
+ sed "s,^time ,," -i make.sh || die
+ sed "s,/lib,/$(get_libdir),g" -i install.sh || die
+ # #define SBCL_HOME ...
+ sed "s,/usr/local/lib,${EPREFIX}/usr/$(get_libdir),g" -i src/runtime/runtime.c || die
+ # change location of /etc/sbclrc ...
+ sed "s,/etc/sbclrc,${EPREFIX}/etc/sbclrc,g" -i src/code/toplevel.lisp || die
+
+ find . -type f -name .cvsignore -delete
+}
+
+src_configure() {
+ # customizing SBCL version as per
+ # http://sbcl.cvs.sourceforge.net/sbcl/sbcl/doc/PACKAGING-SBCL.txt?view=markup
+ echo -e ";;; Auto-generated by Gentoo\n\"gentoo-${PR}\"" > branch-version.lisp-expr
+
+ # applying customizations
+ sbcl_apply_features
+}
+
+src_compile() {
+ local bindir="${WORKDIR}"/sbcl-binary
+
+ # clear the environment to get rid of non-ASCII strings, see bug #174702
+ # set HOME for paludis
+ env - HOME="${T}" PATH="${PATH}" \
+ CC="$(tc-getCC)" AS="$(tc-getAS)" LD="$(tc-getLD)" \
+ CPPFLAGS="${CPPFLAGS}" CFLAGS="${CFLAGS}" ASFLAGS="${ASFLAGS}" LDFLAGS="${LDFLAGS}" \
+ GNUMAKE=make ./make.sh \
+ "sh ${bindir}/run-sbcl.sh --no-sysinit --no-userinit --disable-debugger" \
+ || die "make failed"
+
+ # need to set HOME because libpango(used by graphviz) complains about it
+ if use doc; then
+ env - HOME="${T}" PATH="${PATH}" \
+ CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
+ ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
+ make -C doc/manual info html || die "Cannot build manual"
+ env - HOME="${T}" PATH="${PATH}" \
+ CL_SOURCE_REGISTRY="(:source-registry :ignore-inherited-configuration)" \
+ ASDF_OUTPUT_TRANSLATIONS="(:output-translations :ignore-inherited-configuration)" \
+ make -C doc/internals info html || die "Cannot build internal docs"
+ fi
+}
+
+src_test() {
+ ewarn "Unfortunately, it is known that some tests fail eg."
+ ewarn "run-program.impure.lisp. This is an issue of the upstream's"
+ ewarn "development and not of Gentoo's side. Please, before filing"
+ ewarn "any bug(s) search for older submissions. Thank you."
+ time ( cd tests && sh run-tests.sh )
+}
+
+src_install() {
+ # install system-wide initfile
+ dodir /etc/
+ sed 's/^X//' > "${ED}"/etc/sbclrc <<-EOF
+ ;;; The following is required if you want source location functions to
+ ;;; work in SLIME, for example.
+ X
+ (setf (logical-pathname-translations "SYS")
+ X '(("SYS:SRC;**;*.*.*" #p"${EPREFIX}/usr/$(get_libdir)/sbcl/src/**/*.*")
+ X ("SYS:CONTRIB;**;*.*.*" #p"${EPREFIX}/usr/$(get_libdir)/sbcl/**/*.*")))
+ X
+ ;;; Setup ASDF2
+ (load "${EPREFIX}/etc/common-lisp/gentoo-init.lisp")
+ EOF
+
+ # Install documentation
+ unset SBCL_HOME
+ INSTALL_ROOT="${ED}/usr" LIB_DIR="${EPREFIX}/usr/$(get_libdir)" DOC_DIR="${ED}/usr/share/doc/${PF}" \
+ sh install.sh || die "install.sh failed"
+
+ # bug #517008
+ pax-mark -mr "${D}"/usr/bin/sbcl
+
+ # rm empty directories lest paludis complain about this
+ find "${ED}" -empty -type d -exec rmdir -v {} +
+
+ if use doc; then
+ dodoc -r doc/internals/sbcl-internals
+
+ doinfo doc/manual/*.info*
+ doinfo doc/internals/sbcl-internals.info
+
+ docinto internals-notes
+ dodoc doc/internals-notes/*
+ else
+ rm -Rv "${ED}/usr/share/doc/${PF}" || die
+ fi
+
+ # install the SBCL source
+ if use source; then
+ ./clean.sh
+ cp -av src "${ED}/usr/$(get_libdir)/sbcl/" || die
+ for d in contrib/*/; do
+ cp -av "$d" "${ED}/usr/$(get_libdir)/sbcl/" || die
+ done
+ fi
+
+ # necessary for running newly-saved images
+ echo "SBCL_HOME=${EPREFIX}/usr/$(get_libdir)/${PN}" > "${ENVD}"
+ echo "SBCL_SOURCE_ROOT=${EPREFIX}/usr/$(get_libdir)/${PN}/src" >> "${ENVD}"
+ doenvd "${ENVD}"
+}