summaryrefslogtreecommitdiff
path: root/dev-lisp/gcl/gcl-2.6.10.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-lisp/gcl/gcl-2.6.10.ebuild
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-lisp/gcl/gcl-2.6.10.ebuild')
-rw-r--r--dev-lisp/gcl/gcl-2.6.10.ebuild153
1 files changed, 153 insertions, 0 deletions
diff --git a/dev-lisp/gcl/gcl-2.6.10.ebuild b/dev-lisp/gcl/gcl-2.6.10.ebuild
new file mode 100644
index 000000000000..55fc3ee2e422
--- /dev/null
+++ b/dev-lisp/gcl/gcl-2.6.10.ebuild
@@ -0,0 +1,153 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit elisp-common eutils 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"
+
+LICENSE="LGPL-2 GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~arm x86"
+IUSE="+ansi athena emacs +readline tk X"
+
+# See bug #205803
+RESTRICT="strip"
+
+RDEPEND="emacs? ( virtual/emacs )
+ 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"
+
+S="${WORKDIR}"/${PN}
+
+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/*
+
+ # 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/rename.patch
+ epatch "${WORKDIR}"/fedora/getcwd.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/plt.patch
+ epatch "${WORKDIR}"/fedora/ellipsis.patch
+ epatch "${WORKDIR}"/fedora/man.patch
+ epatch "${WORKDIR}"/fedora/reloc-type.patch
+ epatch "${WORKDIR}"/fedora/largefile.patch
+
+ epatch "${FILESDIR}"/${PN}-tcl-8.6.patch
+ epatch "${FILESDIR}"/${PN}-gmp-6.patch
+ epatch "${FILESDIR}"/${PN}-readline-6.3.patch
+
+ sed -e 's|"-fomit-frame-pointer"|""|' -i configure
+ sed -e 's|@EXT@||g' debian/in.gcl.1 > gcl.1
+}
+
+src_configure() {
+ strip-flags
+ filter-flags -fstack-protector -fstack-protector-all
+
+ 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
+ mv "${D}"usr/share/doc/*.dvi .
+ rm -rf "${D}"usr/share/doc
+ rm -rf "${D}"usr/share/emacs
+ rm -rf "${D}"usr/lib/gcl-*/info
+
+ rm doc/makefile elisp/add-defaults.el
+ dodoc readme* RELEASE* ChangeLog* doc/*
+ doman 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
+
+ insinto /usr/share/doc/${PF}
+ doins *.dvi
+ if use athena; then
+ pushd xgcl-2 > /dev/null
+ insinto /usr/share/doc/${PF}
+ doins *.pdf
+ popd > /dev/null
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}