changeset 291: |
9c37db8ed167 |
parent 290: |
02f74f65976c |
child 292: |
8b0c06b812c1 |
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Wed, 19 Jun 2024 20:37:13 +0000 |
files: |
autogen.lisp bootstrap.sh scripts/dist-stumpwm-binary.sh skelfile |
description: |
bump |
1.1--- a/autogen.lisp Tue Jun 18 16:38:44 2024 -0400
1.2+++ b/autogen.lisp Wed Jun 19 20:37:13 2024 +0000
1.3@@ -84,11 +84,13 @@
1.4 (defun check-shared-lib (name &optional warn)
1.5 "Check for a shared library by loading it in the current session with dlopen.
1.6 When WARN is non-nil, signal a warning instead of an error."
1.7- (let ((lib-name (format nil "lib~a.so" name)))
1.8- (if-let ((lib (ignore-errors (sb-alien:load-shared-object lib-name))))
1.9- (unwind-protect (format t "found shared lib: ~A~%" lib)
1.10- (sb-alien:unload-shared-object lib))
1.11- (check-err warn "shared library missing: ~x" name))))
1.12+ (let ((local-lib-name (format nil "/usr/local/lib/lib~a.so" name))
1.13+ (sys-lib-name (format nil "/usr/lib/lib~a.so" name)))
1.14+ (if-let ((lib (or (ignore-errors (sb-alien:load-shared-object local-lib-name))
1.15+ (ignore-errors (sb-alien:load-shared-object sys-lib-name)))))
1.16+ (unwind-protect (format t "found shared lib: ~A~%" lib)
1.17+ (sb-alien:unload-shared-object lib))
1.18+ (check-err warn "shared library missing in /usr/lib/ or /usr/local/lib/: ~x" name))))
1.19
1.20 (defun check-exe (name &optional warn)
1.21 "Check for an executable in current $PATH by NAME. When WARN is non-nil, signal
2.1--- a/bootstrap.sh Tue Jun 18 16:38:44 2024 -0400
2.2+++ b/bootstrap.sh Wed Jun 19 20:37:13 2024 +0000
2.3@@ -18,24 +18,33 @@
2.4 # propagate exit status.
2.5 exit 1
2.6 fi
2.7+ # setup default directories
2.8 ensure mkdir -p "${_stash}/src"
2.9 ensure mkdir -p "${_stash}/share/lisp/fasl"
2.10+ ensure mkdir -p "${_stash}/tmp"
2.11+ ensure mkdir -p "${_stash}/share/store/dist"
2.12 ensure mkdir -p "${_stash}/bin"
2.13 ensure mkdir -p "${_stash}/lib"
2.14 ensure mkdir -p "${_stash}/include"
2.15+
2.16 cd "${_stash}"
2.17 local _sbcl_pack="sbcl.tar.zst"
2.18 # local _rocksdb_pack="rocksdb.tar.zst"
2.19 local _core_pack="core.tar.zst"
2.20+ local _user_core="user.core"
2.21 # local _core_src_pack="core-source.tar.zst"
2.22 local _sbcl_url="${_url}/${_sbcl_pack}"
2.23 # local _rocksdb_url="${_url}/${_rocksdb_pack}"
2.24 local _core_url="${_url}/${_core_pack}"
2.25+ local _user_core_url="https://packy.compiler.company/dist/${_arch}/lisp/${_user_core}"
2.26 # local _core_src_url="${_url}/${_core_src_pack}"
2.27- ensure download "$_sbcl_url" "$_sbcl_pack" "$_arch"
2.28- unzstd "${_sbcl_pack}"
2.29- tar -xf "sbcl.tar"
2.30- cd sbcl && INSTALL_ROOT=$(realpath ..) sh install.sh && cd ..
2.31+ if [ ! -f "tmp/$_sbcl_pack" ]; then
2.32+ ensure download "$_sbcl_url" "tmp/$_sbcl_pack" "$_arch"
2.33+ unzstd "tmp/${_sbcl_pack}"
2.34+ tar -C tmp -xf "tmp/sbcl.tar"
2.35+ cd tmp/sbcl && INSTALL_ROOT=$(realpath ../..) sh install.sh && cd ../..
2.36+ fi
2.37+
2.38 # ensure download "$_core_src_url" "$_core_src_pack" "$_arch"
2.39 # unzstd "${_core_src_pack}"
2.40 # tar -xvf "core-source.tar"
2.41@@ -45,15 +54,20 @@
2.42 # tar -xvf "pack/rocksdb.tar"
2.43 # cp -rf rocksdb/include/* include/
2.44 # cp -rf rocksdb/*.so lib/
2.45- ensure download "$_core_url" "${_core_pack}" "$_arch"
2.46- unzstd "${_core_pack}"
2.47- tar -xf "core.tar"
2.48- cp -rf core/bin/* bin/
2.49- cp -rf core/share/* share/
2.50- chmod +x bin/*
2.51- rm -rf core sbcl
2.52- rm -rf *.tar
2.53- say "successfully unpacked core"
2.54+
2.55+ # ensure download "$_core_url" "${_core_pack}" "$_arch"
2.56+ # unzstd "${_core_pack}"
2.57+ # tar -xf "core.tar"
2.58+ # cp -rf core/bin/* bin/
2.59+ # cp -rf core/share/* share/
2.60+ if [ ! -f "tmp/$_user_core" ]; then
2.61+ ensure download "$_user_core_url" "tmp/$_user_core" "$_arch"
2.62+ cp "tmp/$_user_core" share/lisp/user.core
2.63+ chmod +x bin/*
2.64+ fi
2.65+
2.66+ say "bootstrap complete"
2.67+
2.68 say "starting lisp..."
2.69 cd .. && \
2.70 .stash/bin/sbcl --core .stash/share/lisp/user.core \
2.71@@ -61,6 +75,7 @@
2.72 --eval "(infra/autogen:autogen)" \
2.73 --non-interactive \
2.74 --no-userinit --no-sysinit
2.75+
2.76 say "OK"
2.77 }
2.78
3.1--- /dev/null Thu Jan 01 00:00:00 1970 +0000
3.2+++ b/scripts/dist-stumpwm-binary.sh Wed Jun 19 20:37:13 2024 +0000
3.3@@ -0,0 +1,5 @@
3.4+#!/bin/sh
3.5+set -e
3.6+cd .stash/src
3.7+tar -I 'zstd' -cf stumpwm.tar.zst stumpwm/stumpwm stumpwm/stumpwm.info
3.8+mv stumpwm.tar.zst ../
4.1--- a/skelfile Tue Jun 18 16:38:44 2024 -0400
4.2+++ b/skelfile Wed Jun 19 20:37:13 2024 +0000
4.3@@ -13,11 +13,13 @@
4.4 :rules
4.5 ((check () #$./check.sh$#)
4.6 (clean () #$rm -rvf .stash$#)
4.7+ (tmp () #$mkdir -pv .stash/tmp$#)
4.8 (src () #$mkdir -pv .stash/src$#)
4.9 (bin () #$mkdir -pv .stash/bin$#)
4.10 ;; src
4.11- (repos (src) #$cd .stash && curl -O https://packy.compiler.company/src/comp.tar.zst && \
4.12- unzstd comp.tar.zst && tar -xf comp.tar -C src && mv src/hg/* src/ && rm -rf src/hg comp.tar$#)
4.13+ (repos (src tmp) #$cd .stash/tmp && curl -O https://packy.compiler.company/src/comp.tar.zst && \
4.14+ unzstd comp.tar.zst && tar -xf comp.tar -C ../src && \
4.15+ mv ../src/hg/* ../src/ && rm -rf ../src/hg comp.tar$#)
4.16 (packy-repos (src) #$cd .stash && curl -O https://packy.compiler.company/src/packy.tar.zst && \
4.17 unzstd packy.tar.zst && tar -xf packy.tar -C src && \
4.18 rm -rf packy.tar$#)
4.19@@ -90,7 +92,8 @@
4.20 cp -r include/* /usr/local/include/$#)
4.21 (stumpwm-install () #$cd .stash/src/stumpwm && make install$#)
4.22 ;; dist
4.23- (sbcl-dist (sbcl) #$scripts/dist-sbcl-binary.sh$#)
4.24- (rocksdb-dist (sbcl) #$scripts/dist-rocksdb-binary.sh$#)
4.25+ (sbcl-dist () #$scripts/dist-sbcl-binary.sh$#)
4.26+ (rocksdb-dist () #$scripts/dist-rocksdb-binary.sh$#)
4.27+ (stumpwm-dist () #$scripts/dist-stumpwm-binary.sh$#)
4.28 (dist (rocksdb-dist sbcl-dist) #$scripts/dist-rocksdb-source.sh
4.29 scripts/dist-sbcl-source.sh$#))