Skip to content

Commit

Permalink
dev-lisp/gcl: bump to 2.6.14
Browse files Browse the repository at this point in the history
Signed-off-by: Andrey Grozin <[email protected]>
  • Loading branch information
Andrey Grozin committed Jan 22, 2023
1 parent 88f6dcc commit 73a787b
Show file tree
Hide file tree
Showing 2 changed files with 105 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-lisp/gcl/Manifest
Original file line number Diff line number Diff line change
@@ -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
104 changes: 104 additions & 0 deletions dev-lisp/gcl/gcl-2.6.14.ebuild
Original file line number Diff line number Diff line change
@@ -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
}

0 comments on commit 73a787b

Please sign in to comment.