public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Hüttel" <dilfridge@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lisp/clisp/
Date: Tue, 24 Oct 2017 18:47:16 +0000 (UTC)	[thread overview]
Message-ID: <1508870824.903dbc323ec045290c9a9a5809bde6ce8e2f8938.dilfridge@gentoo> (raw)

commit:     903dbc323ec045290c9a9a5809bde6ce8e2f8938
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Oct 24 18:46:31 2017 +0000
Commit:     Andreas Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Oct 24 18:47:04 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=903dbc32

dev-lisp/clisp: Add revision bumps forcing -no-pie, bug 594552

Both stable (straight to stable) subslot (for stable readline) and
~arch subslot (for ~arch readline) are handled.

Closes: https://bugs.gentoo.org/618170
Package-Manager: Portage-2.3.12, Repoman-2.3.3

 dev-lisp/clisp/clisp-2.49-r101.ebuild | 153 ++++++++++++++++++++++++++++++++++
 dev-lisp/clisp/clisp-2.49-r9.ebuild   | 147 ++++++++++++++++++++++++++++++++
 2 files changed, 300 insertions(+)

diff --git a/dev-lisp/clisp/clisp-2.49-r101.ebuild b/dev-lisp/clisp/clisp-2.49-r101.ebuild
new file mode 100644
index 00000000000..7cf1812267c
--- /dev/null
+++ b/dev-lisp/clisp/clisp-2.49-r101.ebuild
@@ -0,0 +1,153 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils flag-o-matic multilib toolchain-funcs
+
+DESCRIPTION="A portable, bytecode-compiled implementation of Common Lisp"
+HOMEPAGE="http://clisp.sourceforge.net/"
+SRC_URI="mirror://sourceforge/clisp/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="2/7"
+KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+IUSE="hyperspec X berkdb dbus fastcgi gdbm gtk pari +pcre postgres +readline svm -threads +unicode +zlib"
+# "jit" disabled ATM
+
+RDEPEND=">=dev-lisp/asdf-2.33-r3
+		 virtual/libiconv
+		 >=dev-libs/libsigsegv-2.4
+		 >=dev-libs/ffcall-1.10
+		 dbus? ( sys-apps/dbus )
+		 fastcgi? ( dev-libs/fcgi )
+		 gdbm? ( sys-libs/gdbm )
+		 gtk? ( >=x11-libs/gtk+-2.10:2 >=gnome-base/libglade-2.6 )
+		 pari? ( <sci-mathematics/pari-2.5.0 )
+		 postgres? ( >=dev-db/postgresql-8.0:* )
+		 readline? ( >=sys-libs/readline-7.0:0= )
+		 pcre? ( dev-libs/libpcre:3 )
+		 svm? ( sci-libs/libsvm )
+		 zlib? ( sys-libs/zlib )
+		 X? ( x11-libs/libXpm )
+		 hyperspec? ( dev-lisp/hyperspec )
+		 berkdb? ( sys-libs/db:4.8 )"
+#		 jit? ( >=dev-libs/lightning-1.2 )
+
+DEPEND="${RDEPEND}
+	X? ( x11-misc/imake x11-proto/xextproto )"
+
+enable_modules() {
+	[[ $# = 0 ]] && die "${FUNCNAME[0]} must receive at least one argument"
+	for m in "$@" ; do
+		einfo "enabling module $m"
+		myconf+=" --with-module=${m}"
+	done
+}
+
+BUILDDIR="builddir"
+
+# modules not enabled:
+#  * berkdb: must figure out a way to make the configure script pick up the
+#            currect version of the library and headers
+#  * dirkey: fails to compile, requiring windows.h, possibly wrong #ifdefs
+#  * matlab, netica: not in portage
+#  * oracle: can't install oracle-instantclient
+
+src_prepare() {
+	# More than -O1 breaks alpha/ia64
+	if use alpha || use ia64; then
+		sed -i -e 's/-O2//g' src/makemake.in || die
+	fi
+	epatch "${FILESDIR}"/${P}-bits_ipctypes_to_sys_ipc.patch
+	epatch "${FILESDIR}"/${P}-get_hostname.patch
+	epatch "${FILESDIR}"/${P}-tinfo.patch
+	# bug #594552
+	epatch "${FILESDIR}"/${P}-readline-7.patch
+}
+
+src_configure() {
+	# Bug 618170. If anyone has a better idea...
+	append-flags -no-pie
+
+	# We need this to build on alpha/ia64
+	if use alpha || use ia64; then
+		replace-flags -O? -O1
+		append-flags '-D NO_MULTIMAP_SHM -D NO_MULTIMAP_FILE -D NO_SINGLEMAP -D NO_TRIVIALMAP'
+	fi
+
+	if use x86; then
+		append-flags -falign-functions=4
+	fi
+
+	# QA issue with lisp.run
+	append-flags -Wa,--noexecstack
+
+	# built-in features
+	local myconf="--with-ffcall --without-dynamic-modules"
+#    There's a problem with jit_allocai function
+#    if use jit; then
+#        myconf+=" --with-jitc=lightning"
+#    fi
+	if use threads; then
+		myconf+=" --with-threads=POSIX_THREADS"
+	fi
+
+	# default modules
+	enable_modules wildcard rawsock
+	# optional modules
+	use elibc_glibc && enable_modules bindings/glibc
+	use X && enable_modules clx/new-clx
+	if use postgres; then
+		enable_modules postgresql
+		append-cppflags -I$(pg_config --includedir)
+	fi
+	if use berkdb; then
+		enable_modules berkeley-db
+		append-cppflags -I/usr/include/db4.8
+	fi
+	use dbus && enable_modules dbus
+	use fastcgi && enable_modules fastcgi
+	use gdbm && enable_modules gdbm
+	use gtk && enable_modules gtk2
+	use pari && enable_modules pari
+	use pcre && enable_modules pcre
+	use svm && enable_modules libsvm
+	use zlib && enable_modules zlib
+
+	if use hyperspec; then
+		CLHSROOT="file:///usr/share/doc/hyperspec/HyperSpec/"
+	else
+		CLHSROOT="http://www.lispworks.com/reference/HyperSpec/"
+	fi
+
+	# configure chokes on --sysconfdir option
+	local configure="./configure --prefix=/usr --libdir=/usr/$(get_libdir) \
+		$(use_with readline) $(use_with unicode) \
+		${myconf} --hyperspec=${CLHSROOT} ${BUILDDIR}"
+	einfo "${configure}"
+	${configure} || die "./configure failed"
+
+	IMPNOTES="file://${ROOT%/}/usr/share/doc/${PN}-${PVR}/html/impnotes.html"
+	sed -i "s,http://clisp.cons.org/impnotes/,${IMPNOTES},g" \
+		"${BUILDDIR}"/config.lisp || die "Cannot fix link to implementation notes"
+}
+
+src_compile() {
+	export VARTEXFONTS="${T}"/fonts
+	cd "${BUILDDIR}"
+	# parallel build fails
+	emake -j1
+}
+
+src_install() {
+	pushd "${BUILDDIR}"
+	make DESTDIR="${D}" prefix=/usr install-bin || die "Installation failed"
+	doman clisp.1
+	dodoc ../SUMMARY README* ../src/NEWS ../unix/MAGIC.add ../ANNOUNCE
+	# stripping them removes common symbols (defined but uninitialised variables)
+	# which are then needed to build modules...
+	export STRIP_MASK="*/usr/$(get_libdir)/clisp-${PV}/*/*"
+	popd
+	dohtml doc/impnotes.{css,html} doc/regexp.html doc/clisp.png
+	dodoc doc/{CLOS-guide,LISP-tutorial}.txt
+}

diff --git a/dev-lisp/clisp/clisp-2.49-r9.ebuild b/dev-lisp/clisp/clisp-2.49-r9.ebuild
new file mode 100644
index 00000000000..017287c7dd4
--- /dev/null
+++ b/dev-lisp/clisp/clisp-2.49-r9.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit eutils flag-o-matic multilib toolchain-funcs
+
+DESCRIPTION="A portable, bytecode-compiled implementation of Common Lisp"
+HOMEPAGE="http://clisp.sourceforge.net/"
+SRC_URI="mirror://sourceforge/clisp/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="2/${PV}"
+KEYWORDS="amd64 ~ppc ~sparc x86"
+IUSE="hyperspec X berkdb dbus fastcgi gdbm gtk pari +pcre postgres +readline svm -threads +unicode +zlib"
+# "jit" disabled ATM
+
+RDEPEND=">=dev-lisp/asdf-2.33-r3
+		 virtual/libiconv
+		 >=dev-libs/libsigsegv-2.4
+		 >=dev-libs/ffcall-1.10
+		 dbus? ( sys-apps/dbus )
+		 fastcgi? ( dev-libs/fcgi )
+		 gdbm? ( sys-libs/gdbm )
+		 gtk? ( >=x11-libs/gtk+-2.10 >=gnome-base/libglade-2.6 )
+		 pari? ( <sci-mathematics/pari-2.5.0 )
+		 postgres? ( >=dev-db/postgresql-8.0 )
+		 readline? ( >=sys-libs/readline-5.0 <sys-libs/readline-7.0 )
+		 pcre? ( dev-libs/libpcre )
+		 svm? ( sci-libs/libsvm )
+		 zlib? ( sys-libs/zlib )
+		 X? ( x11-libs/libXpm )
+		 hyperspec? ( dev-lisp/hyperspec )
+		 berkdb? ( sys-libs/db:4.8 )"
+#		 jit? ( >=dev-libs/lightning-1.2 )
+
+DEPEND="${RDEPEND}
+	X? ( x11-misc/imake x11-proto/xextproto )"
+
+enable_modules() {
+	[[ $# = 0 ]] && die "${FUNCNAME[0]} must receive at least one argument"
+	for m in "$@" ; do
+		einfo "enabling module $m"
+		myconf+=" --with-module=${m}"
+	done
+}
+
+BUILDDIR="builddir"
+
+# modules not enabled:
+#  * berkdb: must figure out a way to make the configure script pick up the
+#            currect version of the library and headers
+#  * dirkey: fails to compile, requiring windows.h, possibly wrong #ifdefs
+#  * matlab, netica: not in portage
+#  * oracle: can't install oracle-instantclient
+
+src_prepare() {
+	# More than -O1 breaks alpha/ia64
+	if use alpha || use ia64; then
+		sed -i -e 's/-O2//g' src/makemake.in || die
+	fi
+	epatch "${FILESDIR}"/${P}-bits_ipctypes_to_sys_ipc.patch
+	epatch "${FILESDIR}"/${P}-get_hostname.patch
+	epatch "${FILESDIR}"/${P}-tinfo.patch
+}
+
+src_configure() {
+	# Bug 618170. If anyone has a better idea...
+	append-flags -no-pie
+
+	# We need this to build on alpha/ia64
+	if use alpha || use ia64; then
+		replace-flags -O? -O1
+		append-flags '-D NO_MULTIMAP_SHM -D NO_MULTIMAP_FILE -D NO_SINGLEMAP -D NO_TRIVIALMAP'
+	fi
+
+	# QA issue with lisp.run
+	append-flags -Wa,--noexecstack
+
+	# built-in features
+	local myconf="--with-ffcall --without-dynamic-modules"
+#    There's a problem with jit_allocai function
+#    if use jit; then
+#        myconf+=" --with-jitc=lightning"
+#    fi
+	if use threads; then
+		myconf+=" --with-threads=POSIX_THREADS"
+	fi
+
+	# default modules
+	enable_modules wildcard rawsock
+	# optional modules
+	use elibc_glibc && enable_modules bindings/glibc
+	use X && enable_modules clx/new-clx
+	if use postgres; then
+		enable_modules postgresql
+		append-cppflags -I$(pg_config --includedir)
+	fi
+	if use berkdb; then
+		enable_modules berkeley-db
+		append-cppflags -I/usr/include/db4.8
+	fi
+	use dbus && enable_modules dbus
+	use fastcgi && enable_modules fastcgi
+	use gdbm && enable_modules gdbm
+	use gtk && enable_modules gtk2
+	use pari && enable_modules pari
+	use pcre && enable_modules pcre
+	use svm && enable_modules libsvm
+	use zlib && enable_modules zlib
+
+	if use hyperspec; then
+		CLHSROOT="file:///usr/share/doc/hyperspec/HyperSpec/"
+	else
+		CLHSROOT="http://www.lispworks.com/reference/HyperSpec/"
+	fi
+
+	# configure chokes on --sysconfdir option
+	local configure="./configure --prefix=/usr --libdir=/usr/$(get_libdir) \
+		$(use_with readline) $(use_with unicode) \
+		${myconf} --hyperspec=${CLHSROOT} ${BUILDDIR}"
+	einfo "${configure}"
+	${configure} || die "./configure failed"
+
+	IMPNOTES="file://${ROOT%/}/usr/share/doc/${PN}-${PVR}/html/impnotes.html"
+	sed -i "s,http://clisp.cons.org/impnotes/,${IMPNOTES},g" \
+		"${BUILDDIR}"/config.lisp || die "Cannot fix link to implementation notes"
+}
+
+src_compile() {
+	export VARTEXFONTS="${T}"/fonts
+	cd "${BUILDDIR}"
+	# parallel build fails
+	emake -j1
+}
+
+src_install() {
+	pushd "${BUILDDIR}"
+	make DESTDIR="${D}" prefix=/usr install-bin || die "Installation failed"
+	doman clisp.1
+	dodoc ../SUMMARY README* ../src/NEWS ../unix/MAGIC.add ../ANNOUNCE
+	# stripping them removes common symbols (defined but uninitialised variables)
+	# which are then needed to build modules...
+	export STRIP_MASK="*/usr/$(get_libdir)/clisp-${PV}/*/*"
+	popd
+	dohtml doc/impnotes.{css,html} doc/regexp.html doc/clisp.png
+	dodoc doc/{CLOS-guide,LISP-tutorial}.txt
+}


             reply	other threads:[~2017-10-24 18:47 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-10-24 18:47 Andreas Hüttel [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-05-02  4:32 [gentoo-commits] repo/gentoo:master commit in: dev-lisp/clisp/ Sam James
2024-05-02  4:32 Sam James
2023-09-16 14:06 Ulrich Müller
2022-10-15 15:13 Sam James
2022-05-14 21:52 Jakov Smolić
2022-04-28 15:05 Jakov Smolić
2022-02-28  5:04 Sam James
2022-02-28  5:03 Sam James
2022-02-17 11:00 Jakov Smolić
2022-01-19  1:12 Sam James
2021-06-03 19:15 Sam James
2020-10-10 17:55 Pacho Ramos
2019-06-16 18:30 Ulrich Müller
2019-06-16 17:15 Tobias Klausmann
2019-06-14 15:01 Agostino Sarubbo
2019-06-14  9:26 Agostino Sarubbo
2019-06-14  9:25 Agostino Sarubbo
2019-06-14  9:18 Agostino Sarubbo
2018-10-16  9:18 Tobias Klausmann
2018-08-19 22:52 Patrice Clement
2018-08-19 22:52 Patrice Clement
2018-05-12  0:32 Matt Turner
2018-04-20  8:02 David Seifert
2018-03-28 14:47 José María Alonso
2018-03-25  1:30 Sergei Trofimovich
2018-03-18 18:04 David Seifert
2018-03-08  9:29 José María Alonso
2018-03-07 12:45 José María Alonso
2018-03-07  9:36 José María Alonso
2018-03-06 15:35 José María Alonso
2018-03-05 17:21 José María Alonso
2018-03-05 16:17 José María Alonso
2017-10-25 13:53 Andreas Hüttel
2016-12-18  4:54 Andrey Grozin
2016-10-12 18:11 Pacho Ramos
2016-10-02  2:55 Andrey Grozin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1508870824.903dbc323ec045290c9a9a5809bde6ce8e2f8938.dilfridge@gentoo \
    --to=dilfridge@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox