x11-wm/stumpwm: re-add after deletion in 2014

Instead of bundling StumpWM, SBCL, and other libraries into one large
executable, pull in SBCL and the other dependencies and use the simple CL
framework that other FreeBSD CL ports use.

Since StumpWM only supports running under SBCL, the port pulls in the
*-sbcl port dependencies and conforms to the framework itself, except that
it directly installs the fasl files instead of having an associated
x11-wm/stumpwm-sbcl.  This means no fasl files will be generated under
~/.cache/common-lisp/sbcl-*/ [1] and the package is only made up of the
source, fasl files, and a few small, miscellaneous files.  From a user
perspective, they still get an executable, but it is a small shell script
and the package is under 3 MB instead of around 65 MB.

[1] Loading personal modules in ~/.stumpwmrc will still generate fasl files
    under ~/.cache/common-lisp/sbcl-*/
This commit is contained in:
Joseph Mingrone 2017-08-18 14:27:26 +00:00
parent 65873d9f25
commit ca5de48040
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=448234
7 changed files with 190 additions and 1 deletions

1
MOVED
View File

@ -6029,7 +6029,6 @@ lang/pnetlib||2014-05-04|Has expired: Alpha-quality abandonware - Decommissioned
lang/pnet-base||2014-05-04|Has expired: Alpha-quality abandonware - Decommissioned Dec 2012 - Use mono
benchmarks/pnetmark||2014-05-04|Has expired: PNET dependency decommissioned Dec 2012
lang/pnet||2014-05-04|Has expired: Alpha-quality abandonware - Decommissioned Dec 2012 - Use mono
x11-wm/stumpwm||2014-05-04|Has expired: Broken for more than 4 months
sysutils/cpupowerd||2014-05-04|Has expired: Not maintained from upstream anymore and only supports ancient AMD K8
net/pchar||2014-05-04|Has expired: Obsolete, abandoned
x11-fonts/texcm-ttf||2014-05-04|Has expired: Should be replaced by x11-fonts/stix-fonts

View File

@ -111,6 +111,7 @@
SUBDIR += selectwm
SUBDIR += simple-ccsm
SUBDIR += spectrwm
SUBDIR += stumpwm
SUBDIR += subtle
SUBDIR += swm
SUBDIR += tinywm

87
x11-wm/stumpwm/Makefile Normal file
View File

@ -0,0 +1,87 @@
# Created by: Alejandro Pulver <alepulver@FreeBSD.org>
# $FreeBSD$
PORTNAME= stumpwm
DISTVERSION= 1.0.0-168
DISTVERSIONSUFFIX= -g49fdf94
CATEGORIES= x11-wm lisp
MAINTAINER= jrm@FreeBSD.org
COMMENT= Tiling, keyboard driven Window Manager written in Common Lisp
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= cl-alexandria>=0:devel/cl-alexandria \
cl-alexandria-sbcl>=0:devel/cl-alexandria-sbcl \
cl-clx>=0:x11/cl-clx \
cl-clx-sbcl>=0:x11/cl-clx-sbcl \
cl-ppcre>=0:textproc/cl-ppcre \
cl-ppcre-sbcl>=0:textproc/cl-ppcre-sbcl \
texinfo>=0:print/texinfo
RUN_DEPENDS= cl-alexandria>=0:devel/cl-alexandria \
cl-alexandria-sbcl>=0:devel/cl-alexandria-sbcl \
cl-clx>=0:x11/cl-clx \
cl-clx-sbcl>=0:x11/cl-clx-sbcl \
cl-ppcre>=0:textproc/cl-ppcre \
cl-ppcre-sbcl>=0:textproc/cl-ppcre-sbcl
USE_GITHUB= yes
GH_TAGNAME= 49fdf94
USE_SBCL= yes
PLIST_SUB= ASDF_PATHNAME="${ASDF_PATHNAME:S,^${PREFIX}/,,}" \
ASDF_REGISTRY="${ASDF_REGISTRY:S,^${PREFIX}/,,}"
SUB_FILES= stumpwm
SUB_LIST= ASDF_REGISTRY=${ASDF_REGISTRY} \
SBCL=${SBCL}
INFO= ${PORTNAME}
PORTDOCS= AUTHORS COPYING HACKING NEWS README.md
PORTEXAMPLES= sample-stumpwmrc.lisp
OPTIONS_DEFINE= DOCS EXAMPLES
post-patch:
@${CP} ${WRKSRC}/load-stumpwm.lisp.in ${WRKSRC}/load-stumpwm.lisp
@${REINPLACE_CMD} -e 's|@STUMPWM_ASDF_DIR@|${ASDF_PATHNAME}|' \
${WRKSRC}/load-stumpwm.lisp
${CP} ${WRKSRC}/make-image.lisp.in ${WRKSRC}/make-image.lisp
@${REINPLACE_CMD} -e 's|@MODULE_DIR@|${DATADIR}|' \
${WRKSRC}/make-image.lisp
do-build:
(cd ${WRKSRC} && \
CL_SOURCE_REGISTRY="${WRKSRC}" \
ASDF_OUTPUT_TRANSLATIONS="/:" \
${SBCL} \
--eval "(asdf:oos 'asdf:compile-op :${PORTNAME})" \
--eval "(load \"load-stumpwm.lisp\")" \
--eval "(load \"manual.lisp\")" \
--eval "(stumpwm::generate-manual)" \
--eval "(sb-ext:quit)" && \
makeinfo stumpwm.texi)
do-install:
@${MKDIR} ${STAGEDIR}${ASDF_PATHNAME} \
${STAGEDIR}${ASDF_REGISTRY} \
${STAGEDIR}${ASDF_PATHNAME}/sbclfasl
${INSTALL_SCRIPT} ${WRKDIR}/stumpwm ${STAGEDIR}${PREFIX}/bin
${INSTALL_DATA} ${WRKSRC}/.dir-locals.el ${WRKSRC}/${PORTNAME}.asd \
${WRKSRC}/*.lisp ${STAGEDIR}${ASDF_PATHNAME}
${INSTALL_DATA} ${WRKSRC}/*.fasl ${STAGEDIR}${ASDF_PATHNAME}/sbclfasl
${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.info \
${STAGEDIR}${PREFIX}/${INFO_PATH}
@${RLN} ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}.asd \
${STAGEDIR}${ASDF_REGISTRY}
do-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}
(cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR})
do-install-EXAMPLES-on:
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
${INSTALL_DATA} ${WRKSRC}/${PORTEXAMPLES} ${STAGEDIR}/${EXAMPLESDIR}
.include "${.CURDIR}/../../devel/cl-asdf/bsd.cl-asdf.mk"
.include <bsd.port.mk>

3
x11-wm/stumpwm/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1503065096
SHA256 (stumpwm-stumpwm-1.0.0-168-g49fdf94-49fdf94_GH0.tar.gz) = 243e621b8ce5e86f6fe79172fcaff9f05a115710efbcd9b88ec6388f69d17f1e
SIZE (stumpwm-stumpwm-1.0.0-168-g49fdf94-49fdf94_GH0.tar.gz) = 197676

View File

@ -0,0 +1,6 @@
#/bin/sh
%%SBCL%% --eval "(in-package :cl-user)" \
--eval "(require :stumpwm)" \
--eval "(stumpwm:stumpwm)" \
--eval "(quit)"

8
x11-wm/stumpwm/pkg-descr Normal file
View File

@ -0,0 +1,8 @@
StumpWM is a tiling, keyboard driven X11 Window Manager written entirely in
Common Lisp.
StumpWM attempts to be customizable yet visually minimal. There are no window
decorations, no icons, and no buttons. It does have various hooks to attach
your personal customizations, and variables to tweak.
WWW: http://www.nongnu.org/stumpwm/

85
x11-wm/stumpwm/pkg-plist Normal file
View File

@ -0,0 +1,85 @@
%%ASDF_PATHNAME%%/.dir-locals.el
%%ASDF_PATHNAME%%/bindings.lisp
%%ASDF_PATHNAME%%/color.lisp
%%ASDF_PATHNAME%%/command.lisp
%%ASDF_PATHNAME%%/core.lisp
%%ASDF_PATHNAME%%/events.lisp
%%ASDF_PATHNAME%%/fdump.lisp
%%ASDF_PATHNAME%%/floating-group.lisp
%%ASDF_PATHNAME%%/font-rendering.lisp
%%ASDF_PATHNAME%%/group.lisp
%%ASDF_PATHNAME%%/head.lisp
%%ASDF_PATHNAME%%/help.lisp
%%ASDF_PATHNAME%%/input.lisp
%%ASDF_PATHNAME%%/interactive-keymap.lisp
%%ASDF_PATHNAME%%/ioloop.lisp
%%ASDF_PATHNAME%%/iresize.lisp
%%ASDF_PATHNAME%%/keysyms.lisp
%%ASDF_PATHNAME%%/keytrans.lisp
%%ASDF_PATHNAME%%/kmap.lisp
%%ASDF_PATHNAME%%/load-stumpwm.lisp
%%ASDF_PATHNAME%%/make-image.lisp
%%ASDF_PATHNAME%%/manual.lisp
%%ASDF_PATHNAME%%/menu.lisp
%%ASDF_PATHNAME%%/message-window.lisp
%%ASDF_PATHNAME%%/mode-line-formatters.lisp
%%ASDF_PATHNAME%%/mode-line.lisp
%%ASDF_PATHNAME%%/module.lisp
%%ASDF_PATHNAME%%/package.lisp
%%ASDF_PATHNAME%%/pathnames.lisp
%%ASDF_PATHNAME%%/primitives.lisp
%%ASDF_PATHNAME%%/sample-stumpwmrc.lisp
%%ASDF_PATHNAME%%/screen.lisp
%%ASDF_PATHNAME%%/selection.lisp
%%ASDF_PATHNAME%%/stumpwm.asd
%%ASDF_PATHNAME%%/stumpwm.lisp
%%ASDF_PATHNAME%%/test-wm.lisp
%%ASDF_PATHNAME%%/tile-group.lisp
%%ASDF_PATHNAME%%/tile-window.lisp
%%ASDF_PATHNAME%%/time.lisp
%%ASDF_PATHNAME%%/user.lisp
%%ASDF_PATHNAME%%/version.lisp
%%ASDF_PATHNAME%%/window-placement.lisp
%%ASDF_PATHNAME%%/window.lisp
%%ASDF_PATHNAME%%/wrappers.lisp
%%ASDF_PATHNAME%%/wse.lisp
%%ASDF_REGISTRY%%/stumpwm.asd
%%ASDF_PATHNAME%%/sbclfasl/bindings.fasl
%%ASDF_PATHNAME%%/sbclfasl/color.fasl
%%ASDF_PATHNAME%%/sbclfasl/command.fasl
%%ASDF_PATHNAME%%/sbclfasl/core.fasl
%%ASDF_PATHNAME%%/sbclfasl/events.fasl
%%ASDF_PATHNAME%%/sbclfasl/fdump.fasl
%%ASDF_PATHNAME%%/sbclfasl/floating-group.fasl
%%ASDF_PATHNAME%%/sbclfasl/font-rendering.fasl
%%ASDF_PATHNAME%%/sbclfasl/group.fasl
%%ASDF_PATHNAME%%/sbclfasl/head.fasl
%%ASDF_PATHNAME%%/sbclfasl/help.fasl
%%ASDF_PATHNAME%%/sbclfasl/input.fasl
%%ASDF_PATHNAME%%/sbclfasl/interactive-keymap.fasl
%%ASDF_PATHNAME%%/sbclfasl/ioloop.fasl
%%ASDF_PATHNAME%%/sbclfasl/iresize.fasl
%%ASDF_PATHNAME%%/sbclfasl/keysyms.fasl
%%ASDF_PATHNAME%%/sbclfasl/keytrans.fasl
%%ASDF_PATHNAME%%/sbclfasl/kmap.fasl
%%ASDF_PATHNAME%%/sbclfasl/menu.fasl
%%ASDF_PATHNAME%%/sbclfasl/message-window.fasl
%%ASDF_PATHNAME%%/sbclfasl/mode-line-formatters.fasl
%%ASDF_PATHNAME%%/sbclfasl/mode-line.fasl
%%ASDF_PATHNAME%%/sbclfasl/module.fasl
%%ASDF_PATHNAME%%/sbclfasl/package.fasl
%%ASDF_PATHNAME%%/sbclfasl/pathnames.fasl
%%ASDF_PATHNAME%%/sbclfasl/primitives.fasl
%%ASDF_PATHNAME%%/sbclfasl/screen.fasl
%%ASDF_PATHNAME%%/sbclfasl/selection.fasl
%%ASDF_PATHNAME%%/sbclfasl/stumpwm.fasl
%%ASDF_PATHNAME%%/sbclfasl/tile-group.fasl
%%ASDF_PATHNAME%%/sbclfasl/tile-window.fasl
%%ASDF_PATHNAME%%/sbclfasl/time.fasl
%%ASDF_PATHNAME%%/sbclfasl/user.fasl
%%ASDF_PATHNAME%%/sbclfasl/version.fasl
%%ASDF_PATHNAME%%/sbclfasl/window-placement.fasl
%%ASDF_PATHNAME%%/sbclfasl/window.fasl
%%ASDF_PATHNAME%%/sbclfasl/wrappers.fasl
%%ASDF_PATHNAME%%/sbclfasl/wse.fasl
bin/stumpwm