summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Grozin <grozin@gentoo.org>2023-01-22 13:31:44 +0700
committerAndrey Grozin <grozin@gentoo.org>2023-01-22 13:31:44 +0700
commit73a787b800220ed7747e79da5d3d522cecfec101 (patch)
tree9b858b68938abde8aac04928855c454d128d488b /dev-lisp
parentsci-mathematics/maxima: this version is incompatible with the new gcl-2.6.14 (diff)
downloadgentoo-73a787b800220ed7747e79da5d3d522cecfec101.tar.gz
gentoo-73a787b800220ed7747e79da5d3d522cecfec101.tar.bz2
gentoo-73a787b800220ed7747e79da5d3d522cecfec101.zip
dev-lisp/gcl: bump to 2.6.14
Signed-off-by: Andrey Grozin <grozin@gentoo.org>
Diffstat (limited to 'dev-lisp')
-rw-r--r--dev-lisp/gcl/Manifest1
-rw-r--r--dev-lisp/gcl/gcl-2.6.14.ebuild104
2 files changed, 105 insertions, 0 deletions
diff --git a/dev-lisp/gcl/Manifest b/dev-lisp/gcl/Manifest
index f52fb79b7298..d07dd11ed6cb 100644
--- a/dev-lisp/gcl/Manifest
+++ b/dev-lisp/gcl/Manifest
@@ -1 +1,2 @@
DIST gcl-2.6.13_pre99.tar.xz 10030460 BLAKE2B 8750d641062bcad5a124173013d38403f37ad352c7c436e89d4e329d997200be399a100dcefc4ce484e3f85f46e2dd90ee02947e5e728e001782e973c4122b0e SHA512 a3ad2bd639157ca2a80b534e87c169f6e07002a1b9ca8039483cff336af764123dec9e749da045b656b990e0a97c70881c798420ec4bd0e4494f43d0d040e413
+DIST gcl-2.6.14.tar.gz 11725385 BLAKE2B 3e6a7fc359f94897d1062f5e5e31a0ae36f5d24ca0155fd22044cb967f1fd6a0303572dafe25b1a7abbc936db4e8caa93d0e50b1779886e2ba40e148fa868b8f SHA512 1a69f5e8195783c88b618a613253da1089b13e390dd259056df52f1ed95cf0c99358c34d3782c8eb297c07fda74deb7db359e6b9bf94590ee7fc34e94742eb14
diff --git a/dev-lisp/gcl/gcl-2.6.14.ebuild b/dev-lisp/gcl/gcl-2.6.14.ebuild
new file mode 100644
index 000000000000..4b1fe1b8b4af
--- /dev/null
+++ b/dev-lisp/gcl/gcl-2.6.14.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit elisp-common flag-o-matic
+
+DESCRIPTION="GNU Common Lisp"
+HOMEPAGE="https://www.gnu.org/software/gcl/gcl.html"
+SRC_URI="https://ftp.gnu.org/gnu/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2+ GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="+ansi athena emacs +readline tk X"
+RESTRICT="strip" #205803
+
+RDEPEND="dev-libs/gmp
+ virtual/latex-base
+ emacs? ( app-editors/emacs:= )
+ readline? ( sys-libs/readline:= )
+ athena? ( x11-libs/libXaw )
+ tk? ( dev-lang/tk:= )
+ X? ( x11-libs/libXt x11-libs/libXext x11-libs/libXmu x11-libs/libXaw )"
+DEPEND="${RDEPEND}
+ virtual/texi2dvi
+ app-text/texi2html
+ >=sys-devel/autoconf-2.52"
+
+src_configure() {
+ strip-flags
+ filter-flags -fstack-protector -fstack-protector-all
+ # breaks linking on multiple defined syms
+ #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 \
+ $(use_enable readline) \
+ $(use_enable ansi) \
+ $(use_enable athena xgcl) \
+ $(use_with X x) \
+ ${tcl}
+}
+
+src_compile() {
+ emake -j1
+}
+
+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 elisp/add-defaults.el
+ dodoc readme readme.gmp readme.xgcl ChangeLog doc/* info/*.pdf
+ dodoc -r info/gcl-si
+ doman man/man1/gcl.1
+ doinfo info/gcl.info* info/gcl-si.info
+
+ use athena && dodoc xgcl-2/*.pdf
+
+ if use tk; then
+ dodoc -r info/gcl-tk
+ doinfo info/gcl-tk.info*
+ fi
+
+ if use emacs; then
+ elisp-site-file-install "${FILESDIR}"/64${PN}-gentoo.el
+ elisp-install ${PN} elisp/*.el
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}