git: f3ae25923d9b - main - x11-wm/stumpwm: Update to 22.11-88 and rework port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 01 Nov 2023 01:48:11 UTC
The branch main has been updated by jrm:
URL: https://cgit.FreeBSD.org/ports/commit/?id=f3ae25923d9b0166d87b71a22ca82efb956c2520
commit f3ae25923d9b0166d87b71a22ca82efb956c2520
Author: Joseph Mingrone <jrm@FreeBSD.org>
AuthorDate: 2023-09-23 03:01:18 +0000
Commit: Joseph Mingrone <jrm@FreeBSD.org>
CommitDate: 2023-11-01 01:47:27 +0000
x11-wm/stumpwm: Update to 22.11-88 and rework port
Generate a bundled stumpwm binary.
In ca5de48040, the stumpwm port was unbundled so that it had runtime
dependencies on lang/sbcl, a few common lisp ports, as well as the
associated ports with compiled lisp code. While this made the stumpwm
port lean, it required more maintenance and made it fragile. Whenever
any of the dependencies changed, stumwpwm would fail to run until it was
rebuilt. Since that time, sbcl has gained core compression support so
that the bundled stumpwm binary is reduced from about 60 MB to under 12
MB.
Sponsored by: The FreeBSD Foundation
---
x11-wm/stumpwm/Makefile | 78 ++++++++++------------------------
x11-wm/stumpwm/distinfo | 12 ++++--
x11-wm/stumpwm/pkg-plist | 108 -----------------------------------------------
3 files changed, 31 insertions(+), 167 deletions(-)
diff --git a/x11-wm/stumpwm/Makefile b/x11-wm/stumpwm/Makefile
index 3bdf9972bdea..ece0578ca25c 100644
--- a/x11-wm/stumpwm/Makefile
+++ b/x11-wm/stumpwm/Makefile
@@ -1,7 +1,13 @@
PORTNAME= stumpwm
-DISTVERSION= 22.11
-PORTREVISION= 8
+DISTVERSION= 22.11-88
+DISTVERSIONSUFFIX= -gbaf5df7
CATEGORIES= x11-wm lisp
+MASTER_SITES+= https://beta.quicklisp.org/archive/alexandria/2023-10-21/:alexandria \
+ https://beta.quicklisp.org/archive/cl-ppcre/2023-06-18/:ppcre \
+ https://beta.quicklisp.org/archive/clx/2023-06-18/:clx
+DISTFILES+= alexandria-20231021-git.tgz:alexandria \
+ cl-ppcre-20230618-git.tgz:ppcre \
+ clx-20230618-git.tgz:clx
MAINTAINER= jrm@FreeBSD.org
COMMENT= Tiling, keyboard driven Window Manager written in Common Lisp
@@ -10,77 +16,38 @@ WWW= https://www.nongnu.org/stumpwm/
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 \
+BUILD_DEPENDS= sbcl:lang/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
+USES= autoreconf gmake
USE_GITHUB= yes
USE_SBCL= yes
-SUB_FILES= stumpwm
-SUB_LIST= ASDF_REGISTRY=${ASDF_REGISTRY} \
- SBCL=${SBCL}
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --with-module-dir=${DATADIR}/modules \
+ --enable-compression
+
+MAKE_ARGS= destdir=${STAGEDIR}
INFO= ${PORTNAME}
-PLIST_SUB= ASDF_PATHNAME="${ASDF_PATHNAME:S,^${PREFIX}/,,}" \
- ASDF_REGISTRY="${ASDF_REGISTRY:S,^${PREFIX}/,,}"
+PLIST_FILES= bin/stumpwm
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
+post-extract:
+ ${FIND} ${WRKDIR} -type f -name \*.asd -a \! -name stumpwm\*.asd \
+ \! -name dynamic-mixins-swm.asd -exec ${LN} -s {} ${WRKSRC} \;
do-build:
(cd ${WRKSRC} && \
- CL_SOURCE_REGISTRY="${WRKSRC}" \
ASDF_OUTPUT_TRANSLATIONS="/:" \
- FBSD_ASDF_COMPILE_PORT=t PORTNAME=${PORTNAME} WRKSRC=${WRKSRC}/ \
- ${SBCL} \
+ sbcl \
--noinform --non-interactive --no-sysinit --no-userinit \
+ --eval "(require :uiop)" \
--eval "(setf sb-impl::*default-external-format* :UTF-8)" \
- --eval '#.(load "${LOCALBASE}/etc/asdf-init")' \
- --eval "(asdf:oos 'asdf:compile-op :${PORTNAME} :force t)" \
- --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}/dynamic-mixins/src \
- ${STAGEDIR}${ASDF_PATHNAME}/sbclfasl/dynamic-mixins/src \
- ${STAGEDIR}${ASDF_REGISTRY}
- ${INSTALL_SCRIPT} ${WRKDIR}/stumpwm ${STAGEDIR}${PREFIX}/bin
- ${INSTALL_DATA} ${WRKSRC}/.dir-locals.el ${WRKSRC}/${PORTNAME}.asd \
- ${WRKSRC}/*.lisp ${STAGEDIR}${ASDF_PATHNAME}
- ${INSTALL_DATA} ${WRKSRC}/dynamic-mixins/dynamic-mixins.asd \
- ${STAGEDIR}${ASDF_PATHNAME}/dynamic-mixins/
- ${INSTALL_DATA} ${WRKSRC}/dynamic-mixins/src/*.lisp \
- ${STAGEDIR}${ASDF_PATHNAME}/dynamic-mixins/src/
- ${INSTALL_DATA} ${WRKSRC}/*.fasl ${STAGEDIR}${ASDF_PATHNAME}/sbclfasl
- ${INSTALL_DATA} ${WRKSRC}/dynamic-mixins/src/*.fasl \
- ${STAGEDIR}${ASDF_PATHNAME}/sbclfasl/dynamic-mixins/src
- ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.info \
- ${STAGEDIR}${PREFIX}/${INFO_PATH}
- @${RLN} ${STAGEDIR}${ASDF_PATHNAME}/${PORTNAME}.asd \
- ${STAGEDIR}${ASDF_REGISTRY}
+ --load ./make-image.lisp)
do-install-DOCS-on:
${MKDIR} ${STAGEDIR}${DOCSDIR}
@@ -90,5 +57,4 @@ 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>
diff --git a/x11-wm/stumpwm/distinfo b/x11-wm/stumpwm/distinfo
index 712da57e02e9..fd469e719b66 100644
--- a/x11-wm/stumpwm/distinfo
+++ b/x11-wm/stumpwm/distinfo
@@ -1,3 +1,9 @@
-TIMESTAMP = 1669916176
-SHA256 (stumpwm-stumpwm-22.11_GH0.tar.gz) = 36940f3b2c1ba54219a8d3a784103cfa83f84c652d1dbd7d3b7360c55e5ef026
-SIZE (stumpwm-stumpwm-22.11_GH0.tar.gz) = 280147
+TIMESTAMP = 1698514642
+SHA256 (alexandria-20231021-git.tgz) = 5bc0e459ebc303878e724f2ce082cc3bcfff94c4eb42621889e6e95c1a843d61
+SIZE (alexandria-20231021-git.tgz) = 57207
+SHA256 (cl-ppcre-20230618-git.tgz) = aaba004bc82bf63886b8ce91eadaf0b78fd6c4865da09c3e66da7fbf2a127397
+SIZE (cl-ppcre-20230618-git.tgz) = 157428
+SHA256 (clx-20230618-git.tgz) = d3f4244c915c68ef1572be1a89742b3a8f4a02bb83d9eb3968f546b68c7a3ec1
+SIZE (clx-20230618-git.tgz) = 459665
+SHA256 (stumpwm-stumpwm-22.11-88-gbaf5df7_GH0.tar.gz) = 35f4eb386a1f7088e39d5ee12912d1b0f471c9f50efa65a8d183c091f3576b13
+SIZE (stumpwm-stumpwm-22.11-88-gbaf5df7_GH0.tar.gz) = 287344
diff --git a/x11-wm/stumpwm/pkg-plist b/x11-wm/stumpwm/pkg-plist
deleted file mode 100644
index 730522ea47fb..000000000000
--- a/x11-wm/stumpwm/pkg-plist
+++ /dev/null
@@ -1,108 +0,0 @@
-bin/stumpwm
-%%ASDF_PATHNAME%%/.dir-locals.el
-%%ASDF_PATHNAME%%/bindings.lisp
-%%ASDF_PATHNAME%%/color.lisp
-%%ASDF_PATHNAME%%/command.lisp
-%%ASDF_PATHNAME%%/core.lisp
-%%ASDF_PATHNAME%%/debug.lisp
-%%ASDF_PATHNAME%%/dynamic-group.lisp
-%%ASDF_PATHNAME%%/dynamic-mixins/dynamic-mixins.asd
-%%ASDF_PATHNAME%%/dynamic-mixins/src/dynamic-mixins.lisp
-%%ASDF_PATHNAME%%/dynamic-mixins/src/package.lisp
-%%ASDF_PATHNAME%%/dynamic-window.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%%/main.lisp
-%%ASDF_PATHNAME%%/make-image.lisp
-%%ASDF_PATHNAME%%/manual.lisp
-%%ASDF_PATHNAME%%/menu-declarations.lisp
-%%ASDF_PATHNAME%%/menu-definitions.lisp
-%%ASDF_PATHNAME%%/message-window.lisp
-%%ASDF_PATHNAME%%/minor-modes.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%%/remap-keys.lisp
-%%ASDF_PATHNAME%%/replace-class.lisp
-%%ASDF_PATHNAME%%/sample-stumpwmrc.lisp
-%%ASDF_PATHNAME%%/sbclfasl/bindings.fasl
-%%ASDF_PATHNAME%%/sbclfasl/color.fasl
-%%ASDF_PATHNAME%%/sbclfasl/command.fasl
-%%ASDF_PATHNAME%%/sbclfasl/core.fasl
-%%ASDF_PATHNAME%%/sbclfasl/debug.fasl
-%%ASDF_PATHNAME%%/sbclfasl/dynamic-group.fasl
-%%ASDF_PATHNAME%%/sbclfasl/dynamic-mixins/src/dynamic-mixins.fasl
-%%ASDF_PATHNAME%%/sbclfasl/dynamic-mixins/src/package.fasl
-%%ASDF_PATHNAME%%/sbclfasl/dynamic-window.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/manual.fasl
-%%ASDF_PATHNAME%%/sbclfasl/menu-declarations.fasl
-%%ASDF_PATHNAME%%/sbclfasl/menu-definitions.fasl
-%%ASDF_PATHNAME%%/sbclfasl/message-window.fasl
-%%ASDF_PATHNAME%%/sbclfasl/minor-modes.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/remap-keys.fasl
-%%ASDF_PATHNAME%%/sbclfasl/replace-class.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/timers.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
-%%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%%/timers.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