summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--x11-wm/stumpwm/Manifest1
-rw-r--r--x11-wm/stumpwm/stumpwm-1.0.0.ebuild104
2 files changed, 105 insertions, 0 deletions
diff --git a/x11-wm/stumpwm/Manifest b/x11-wm/stumpwm/Manifest
index 5f1e6b28b51a..13df9f9c1467 100644
--- a/x11-wm/stumpwm/Manifest
+++ b/x11-wm/stumpwm/Manifest
@@ -1 +1,2 @@
DIST stumpwm-0.9.9.tar.gz 189516 SHA256 7dfcb31f3c248a454b892ae98a186f43681f6e8e62b7c77d7858b34f645c0abb SHA512 b114f0dc9091e6704acd4f6d16183b15d956b0f27abec800bca8cfdf966636e7e96c036678fe9c2ca9266d794eabb48c4d66dd62c52c1d26e42ab54abb7ff05b WHIRLPOOL 599bed139c5b058c61b89f01750179f9d9dd5db5fa65737e06f65990c96547042331845aa7d8ce137b0a9357c6e063b6663f7c8c66dab3e74553abedd56b6736
+DIST stumpwm-1.0.0.tar.gz 200794 SHA256 31fcb6fb34af20bf4857bb4621ab4b2c9bd6bec92bfd9ddaf88a18f850ba5dd5 SHA512 eb5bf48a5d185d982e8a9ec7639958f14fd912e0f4c89da205f0bcb0c10a61c3953bce5029c2a301fdcd29fe05c505601d4db30fc50b34b7082ce69bd25b43ac WHIRLPOOL 7049299b1c5db42f7379f3f741de8d87e3322deac6787494fb09c553130e0c2c79de93fdcb33beabb80f44f5b29a03f25bc61bfdcb3755043b4937627a3658fc
diff --git a/x11-wm/stumpwm/stumpwm-1.0.0.ebuild b/x11-wm/stumpwm/stumpwm-1.0.0.ebuild
new file mode 100644
index 000000000000..58bfb84dabce
--- /dev/null
+++ b/x11-wm/stumpwm/stumpwm-1.0.0.ebuild
@@ -0,0 +1,104 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=6
+
+inherit common-lisp-3 eutils elisp-common autotools
+
+DESCRIPTION="Stumpwm is a Window Manager written entirely in Common Lisp."
+HOMEPAGE="https://stumpwm.github.io/"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="contrib doc emacs clisp ecl +sbcl"
+
+RESTRICT="strip mirror"
+
+RDEPEND="dev-lisp/cl-ppcre
+ sbcl? ( >=dev-lisp/sbcl-1.0.32 )
+ sbcl? ( >=dev-lisp/clx-0.7.4 )
+ !sbcl? ( !clisp? ( !ecl? ( >=dev-lisp/sbcl-1.0.32 ) ) )
+ !sbcl? ( !clisp? ( ecl? ( >=dev-lisp/ecls-10.4.1 ) ) )
+ !sbcl? ( clisp? ( >=dev-lisp/clisp-2.44[X,new-clx] ) )
+ emacs? ( virtual/emacs app-emacs/slime )"
+DEPEND="${RDEPEND}
+ sys-apps/texinfo
+ doc? ( virtual/texi2dvi )"
+
+SITEFILE=70${PN}-gentoo.el
+CLPKGDIR="${CLSOURCEROOT}/${CLPACKAGE}"
+CONTRIBDIR="${CLPKGDIR}/contrib"
+
+get_lisp() {
+ local lisp
+
+ for lisp in "$@" ; do
+ use ${lisp} && echo ${lisp} && return
+ done
+}
+
+do_doc() {
+ local pdffile="${PN}.pdf"
+
+ texi2pdf -o "${pdffile}" "${PN}.texi" && dodoc "${pdffile}" || die
+ cp "${FILESDIR}/README.Gentoo" . && sed -i "s:@VERSION@:${PV}:" README.Gentoo || die
+ dodoc AUTHORS NEWS README.md README.Gentoo
+ doinfo "${PN}.info"
+ docinto examples ; dodoc sample-stumpwmrc.lisp
+}
+
+do_contrib() {
+ emake install-modules
+ rm -r "${D}${CONTRIBDIR}"/.git* || die
+}
+
+src_prepare() {
+ default
+ # Upstream didn't change the version before packaging
+ sed -i -e 's/:version "0.9.8"/:version "0.9.9"/' "${PN}.asd" || die
+ # Bug 534592. Does not build with asdf:oos, using require to load the package
+ sed -i "load-${PN}.lisp.in" -e "s/asdf:oos 'asdf:load-op/require/" || die
+ if use contrib ; then
+ # Fix contrib directory
+ sed -i -e "s|@CONTRIB_DIR@|@MODULE_DIR@|" make-image.lisp.in || die
+ sed -i -e "s|\~\/.${CLPACKAGE}\.d/modules|${D}${CONTRIBDIR}|" Makefile.in || die
+ sed -i -e "s|\${HOME}/\.${CLPACKAGE}\.d/modules|${CONTRIBDIR}|" configure.ac || die
+ fi
+ eautoreconf
+}
+
+src_configure() {
+ local moduleconfig
+
+ use contrib && moduleconfig="--with-module-dir=${CONTRIBDIR}/contrib"
+ econf --with-lisp=$(get_lisp sbcl clisp ecl) "${moduleconfig}"
+}
+
+src_compile() {
+ emake -j1
+}
+
+src_install() {
+ common-lisp-export-impl-args $(get_lisp sbcl clisp ecl)
+ dobin stumpwm
+ make_session_desktop StumpWM /usr/bin/stumpwm
+
+ common-lisp-install-sources *.lisp
+ common-lisp-install-asdf ${PN}.asd
+ # Fix ASDF dir
+ sed -i -e "/(:directory/c\ (:directory \"${CLPKGDIR}\")" \
+ "${D}${CLPKGDIR}/load-stumpwm.lisp" || die
+ use doc && do_doc
+ use contrib && do_contrib
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}