changelog shortlog graph tags branches changeset files file revisions raw help

Mercurial > infra / annotate autogen.lisp

changeset 371: 7dcabf3e0edc
parent: 532910875d5a
author: Richard Westhaver <ellis@rwest.io>
date: Tue, 24 Sep 2024 15:53:24 -0400
permissions: -rw-r--r--
description: no link in bootstrap.sh
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
1
 ;;; autogen.lisp --- Auto-generate CC Infrastructure
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
2
 
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
3
 ;; This script must be ran with a compliant CC lisp core image from a complian
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
4
 ;; CC lisp compiler. The easiest way to get started is by running the
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
5
 ;; 'bootstrap.sh' script first which will download these for you into the
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
6
 ;; local 'STASH' directory and run this script automatically.
212
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
7
 
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
8
 #|
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
9
 # download pre-compiled binaries and run autogen.lisp
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
10
 ./bootstrap.sh 
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
11
 
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
12
 # or run manually with local lisp runtime and core
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
13
 sbcl --core $LISP_HOME/user.core --script autogen.lisp \
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
14
 --eval "(infra/autogen:autogen)"
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
15
 |#
212
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
16
 
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
17
 ;;; Code:
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
18
 (in-package :std-user)
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
19
 
264
Richard Westhaver <ellis@rwest.io>
parents: 262
diff changeset
20
 (defpkg :infra/autogen
308
64e35d4f68fd lisp updates, ld fix, emacs with tree-sitter explicit
Richard Westhaver <ellis@rwest.io>
parents: 296
diff changeset
21
   (:nicknames :infra)
212
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
22
   (:use :cl :skel :log :std/named-readtables
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
23
         :dat/json :dat/sxp :net/fetch :net/util
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
24
         :cli/progress :cli/ansi :cli/ed :cli/prompt
219
b1a96e0e3add profile in sxp only
Richard Westhaver <ellis@rwest.io>
parents: 213
diff changeset
25
         :cli/shell :std/hash-table :std/alien :std/macs
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
26
         :std/fmt)
308
64e35d4f68fd lisp updates, ld fix, emacs with tree-sitter explicit
Richard Westhaver <ellis@rwest.io>
parents: 296
diff changeset
27
   (:export :autogen *profile* :*host*
64e35d4f68fd lisp updates, ld fix, emacs with tree-sitter explicit
Richard Westhaver <ellis@rwest.io>
parents: 296
diff changeset
28
    :*all-features* :*host-env* :gethost :getprofile
64e35d4f68fd lisp updates, ld fix, emacs with tree-sitter explicit
Richard Westhaver <ellis@rwest.io>
parents: 296
diff changeset
29
    :getenv))
254
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
30
 
264
Richard Westhaver <ellis@rwest.io>
parents: 262
diff changeset
31
 (in-package :infra/autogen)
212
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
32
 (in-readtable :shell)
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
33
 ;;; Vars
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
34
 (defvar *all-features*
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
35
   (list :default :org :demo :emacs-mini :ts :ts-langs :rust-tools :quicklisp :pod :box :packy))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
36
 
254
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
37
 (defparameter *profile* (uiop:read-file-forms
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
38
                          (if-let ((profile (sb-posix:getenv "INFRA_PROFILE")))
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
39
                                  (probe-file profile)
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
40
                                  (when-let ((default (probe-file "default.sxp")))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
41
                                            (sb-posix:setenv "INFRA_PROFILE" (namestring default) 1)
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
42
                                            default))))
254
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
43
 (defparameter *host* (uiop:read-file-forms
255
ad70dec68fa1 autogen updates and moved Containerfiles
Richard Westhaver <ellis@rwest.io>
parents: 254
diff changeset
44
                       (let ((hcfg (format nil "~a.sxp" (sb-unix:unix-gethostname))))
ad70dec68fa1 autogen updates and moved Containerfiles
Richard Westhaver <ellis@rwest.io>
parents: 254
diff changeset
45
                         (unless (probe-file hcfg)
ad70dec68fa1 autogen updates and moved Containerfiles
Richard Westhaver <ellis@rwest.io>
parents: 254
diff changeset
46
                           (print #0$./check.sh$#))
ad70dec68fa1 autogen updates and moved Containerfiles
Richard Westhaver <ellis@rwest.io>
parents: 254
diff changeset
47
                         hcfg)))
254
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
48
 (defparameter *host-env* (let ((table (make-hash-table :test 'equal))
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
49
                                (keys (list "STASH" "STORE" "DIST" "PACKY_URL" "VC_URL" "INSTALL_PREFIX"
288
50329ab8865a defaults
Richard Westhaver <ellis@rwest.io>
parents: 284
diff changeset
50
                                            "CC" "AR" "HG" "GIT" "LISP" "RUSTC" "LD" "SHELL" "DEV" "DEV_HOME"
254
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
51
                                            "DEV_ID" "WORKER" "WORKER_ID" "WORKER_HOME" "CARGO_HOME" "RUSTUP_HOME"
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
52
                                            "LISP_HOME" "INFRA_PROFILE" "LOG_LEVEL")))
254
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
53
                            (dolist (k keys table)
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
54
                              (setf (gethash k table) (sb-posix:getenv k)))))
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
55
 
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
56
 ;;; Utils
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
57
 (defun gethost (k) (getf *host* k))
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
58
 (defun getprofile (k) (getf *profile* k))
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
59
 
254
e2b8d0be0d24 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 251
diff changeset
60
 (defun getenv (k) (gethash *host-env* k))
212
91cb7ffc5945 remove cdn. begin phase2
Richard Westhaver <ellis@rwest.io>
parents:
diff changeset
61
 
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
62
 (defun setenv (k v)
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
63
   (sb-posix:setenv k v 1)
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
64
   (setf (gethash k *host-env*) v))
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
65
 
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
66
 (defmacro setenv* (&rest forms)
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
67
   `(progn
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
68
      ,@(loop for (k v) on forms by #'cddr while v
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
69
              collect `(setenv ,k (or ,v "")))))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
70
 
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
71
 (defmacro check-err (is-warn ctrl &rest args)
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
72
   `(if ,is-warn
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
73
        (warn 'simple-warning 
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
74
              :format-control ,ctrl
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
75
              :format-arguments (list ,@args))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
76
        (std:simple-program-error
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
77
         ,ctrl
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
78
         ,@args)))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
79
 
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
80
 (defun setenv-exe (k v &optional warn)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
81
   (if-let ((path (cli:find-exe v)))
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
82
           (setenv k (namestring path))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
83
           (check-err warn "~A not found: ~A" k v)))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
84
 
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
85
 (defun setenv-probe (k v &optional warn)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
86
   (if-let ((path (probe-file v)))
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
87
           (setenv k (namestring path))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
88
           (check-err warn "~A not found: ~A" k v)))
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
89
 
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
90
 (defun check-shared-lib (name &optional warn)
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
91
   "Check for a shared library by loading it in the current session with dlopen.
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
92
 When WARN is non-nil, signal a warning instead of an error."
291
Richard Westhaver <ellis@rwest.io>
parents: 289
diff changeset
93
   (let ((local-lib-name (format nil "/usr/local/lib/lib~a.so" name))
Richard Westhaver <ellis@rwest.io>
parents: 289
diff changeset
94
         (sys-lib-name (format nil "/usr/lib/lib~a.so" name)))
Richard Westhaver <ellis@rwest.io>
parents: 289
diff changeset
95
     (if-let ((lib (or (ignore-errors (sb-alien:load-shared-object local-lib-name))
Richard Westhaver <ellis@rwest.io>
parents: 289
diff changeset
96
                       (ignore-errors (sb-alien:load-shared-object sys-lib-name)))))
Richard Westhaver <ellis@rwest.io>
parents: 289
diff changeset
97
             (unwind-protect (format t "found shared lib: ~A~%" lib)
Richard Westhaver <ellis@rwest.io>
parents: 289
diff changeset
98
               (sb-alien:unload-shared-object lib))
Richard Westhaver <ellis@rwest.io>
parents: 289
diff changeset
99
             (check-err warn "shared library missing in /usr/lib/ or /usr/local/lib/: ~x" name))))
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
100
 
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
101
 (defun check-exe (name &optional warn)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
102
   "Check for an executable in current $PATH by NAME. When WARN is non-nil, signal
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
103
 a warning instead of an error."
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
104
   (if-let ((bin (cli:find-exe name)))
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
105
           (progn (format t "found executable: ~A~%" bin) t)
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
106
           (check-err warn "executable missing: ~x" name)))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
107
 
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
108
 (defun check-default ()
311
55a2606d7bfb dont check for dependencies so aggresively
Richard Westhaver <ellis@rwest.io>
parents: 308
diff changeset
109
   ;; (check-shared-lib "rocksdb")
55a2606d7bfb dont check for dependencies so aggresively
Richard Westhaver <ellis@rwest.io>
parents: 308
diff changeset
110
   ;; (check-shared-lib "uring")
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
111
   (check-shared-lib "zstd")
311
55a2606d7bfb dont check for dependencies so aggresively
Richard Westhaver <ellis@rwest.io>
parents: 308
diff changeset
112
   ;; (check-shared-lib "tree-sitter")
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
113
   (check-shared-lib "xkbcommon"))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
114
 
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
115
 (defun check-org ()
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
116
   (check-exe "emacs" t))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
117
 
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
118
 (defun check-pod ()
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
119
   (check-exe "podman"))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
120
 
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
121
 (defun check-box ()
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
122
   (check-exe "qemu-system-x86_64"))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
123
 
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
124
 (defun check-all ()
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
125
   (check-default)
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
126
   (check-org)
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
127
   (check-pod)
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
128
   (check-box))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
129
 
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
130
 (defun check-feature (name)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
131
   "Dispatch a host check based on feature NAME."
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
132
   (case name
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
133
     (:default (check-default))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
134
     (:org (check-org))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
135
     (:pod (check-pod))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
136
     (:box (check-box))
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
137
     (:all (check-all))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
138
     (t (warn "unsupported feature: ~A" name))))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
139
 
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
140
 (defun getpro-else (k else) (or (getprofile k) else))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
141
 
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
142
 ;;; Config
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
143
 (defun init-profile ()
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
144
   (info! "initializing profile...")
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
145
   (let* ((packy-url (uri:uri (getpro-else :packy-url "https://packy.compiler.company")))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
146
          (vc-url (uri:uri (getpro-else :packy-url "https://vc.compiler.company")))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
147
          (ar (getpro-else :ar "tar"))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
148
          (git (getpro-else :git "git"))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
149
          (hg (getpro-else :hg "hg"))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
150
          (cc (getpro-else :cc "clang"))
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
151
          (ld (getpro-else :ld "lld"))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
152
          (install-prefix (getpro-else :install-prefix "/usr/local"))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
153
          (stash (getpro-else :stash ".stash"))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
154
          (store (getpro-else :store (namestring (merge-pathnames "share/store" stash))))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
155
          (dist (getpro-else :dist (namestring (merge-pathnames "dist" store))))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
156
          (lisp (getpro-else :lisp (lisp-implementation-type)))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
157
          (lisp-version (getpro-else :lisp-version (lisp-implementation-version)))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
158
          (log-level (getprofile :log-level))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
159
          (lisp-home (getprofile :lisp-home))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
160
          (quicklisp-home (getprofile :quicklisp-home))
288
50329ab8865a defaults
Richard Westhaver <ellis@rwest.io>
parents: 284
diff changeset
161
          (rustc (getpro-else :rustc "rustc"))
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
162
          (rust-home (getprofile :rust-home))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
163
          (rustup-home (getprofile :rustup-home))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
164
          (cargo-home (getprofile :cargo-home))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
165
          (features (getprofile :features)))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
166
     (setq *log-level* log-level)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
167
     (when (log:trace-p)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
168
       (trace! "env before update:")
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
169
       (loop for k being the hash-key
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
170
             using (hash-value v) of *host-env*
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
171
             do (format t "  ~A = ~A~%" k (or v ""))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
172
             finally (terpri)))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
173
     (setenv-probe "STASH" stash t)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
174
     (setenv-probe "STORE" store t)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
175
     (setenv-probe "DIST" dist t)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
176
     (setenv-probe "INSTALL_PREFIX" install-prefix)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
177
     (setenv-exe "CC" cc)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
178
     (setenv-exe "LD" ld)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
179
     (setenv-exe "AR" ar)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
180
     (setenv-exe "GIT" git)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
181
     (setenv-exe "HG" hg)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
182
     (setenv-exe "RUSTC" rustc t)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
183
     (setenv-exe "LISP" lisp t)
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
184
     (setenv*
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
185
      "PACKY_URL" (uri:uri-to-string packy-url)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
186
      "VC_URL" (uri:uri-to-string vc-url)
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
187
      "LISP_VERSION" lisp-version
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
188
      "LISP_HOME" lisp-home
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
189
      "QUICKLISP_HOME" quicklisp-home
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
190
      "RUST_HOME" rust-home
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
191
      "RUSTUP_HOME" rustup-home
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
192
      "CARGO_HOME" cargo-home
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
193
      "INSTALL_PREFIX" install-prefix
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
194
      "LOG_LEVEL" (symbol-name log-level))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
195
     (terpri)
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
196
     ;; process features
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
197
     (loop for f in features
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
198
           do (progn
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
199
                (format t "checking host for feature: ~A~%" f)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
200
                (check-feature f)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
201
                (terpri)))))
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
202
 
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
203
 (defun init-host ()
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
204
   )
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
205
 
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
206
 ;;; Build
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
207
 (defun make-default ()
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
208
   (std/thread:wait-for-threads
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
209
    (list (sb-thread:make-thread (lambda () (sk-call* *skel-project* :repos)) :name "repos")))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
210
   (std/thread:wait-for-threads
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
211
    (list
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
212
     (sb-thread:make-thread (lambda () (vc:run-hg-command "clone" (list ".stash/src/core.hg" ".stash/src/core")))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
213
                            :name "core")
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
214
     (sb-thread:make-thread (lambda () (vc:run-hg-command "clone" (list ".stash/src/home.hg" ".stash/src/home")))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
215
                            :name "home")
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
216
     (sb-thread:make-thread (lambda () (vc:run-hg-command "clone" (list ".stash/src/etc.hg" ".stash/src/etc")))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
217
                            :name "etc"))))
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
218
 
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
219
 (defun make-pods ()
276
Richard Westhaver <ellis@rwest.io>
parents: 271
diff changeset
220
   (vc:run-hg-command "clone" (list ".stash/src/pod.hg" ".stash/src/pod"))
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
221
   (std/thread:wait-for-threads
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
222
    (list (sb-thread:make-thread (lambda () (sk-call* *skel-project* :archlinux :box)))
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
223
          (sb-thread:make-thread (lambda () (sk-call* *skel-project* :alpine :worker))))))
266
0e3229b8409f autogen src
Richard Westhaver <ellis@rwest.io>
parents: 265
diff changeset
224
 
276
Richard Westhaver <ellis@rwest.io>
parents: 271
diff changeset
225
 (defun make-boxes ()
Richard Westhaver <ellis@rwest.io>
parents: 271
diff changeset
226
   (vc:run-hg-command "clone" (list ".stash/src/box.hg" ".stash/src/box")))
Richard Westhaver <ellis@rwest.io>
parents: 271
diff changeset
227
 
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
228
 (defun make-packy ()
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
229
   (sk-call* *skel-project* :packy-repos))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
230
 
276
Richard Westhaver <ellis@rwest.io>
parents: 271
diff changeset
231
 (defun make-org ()
Richard Westhaver <ellis@rwest.io>
parents: 271
diff changeset
232
   (vc:run-hg-command "clone" (list ".stash/src/org.hg" ".stash/src/org")))
Richard Westhaver <ellis@rwest.io>
parents: 271
diff changeset
233
 
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
234
 (defun make-demo ()
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
235
   (vc:run-hg-command "clone" (list ".stash/src/demo.hg" ".stash/src/demo")))
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
236
 
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
237
 (defun make-quicklisp ()
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
238
   (sk-call *skel-project* :quicklisp))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
239
 
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
240
 (defun make-emacs-mini ()
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
241
   (sk-run (sk-find-script "install-emacs-mini-pack" *skel-project*)))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
242
 
313
f5b55e03bf5c updates
Richard Westhaver <ellis@rwest.io>
parents: 296
diff changeset
243
 (defun make-tree-sitter ()
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
244
   (sk-call *skel-project* :tree-sitter))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
245
 
313
f5b55e03bf5c updates
Richard Westhaver <ellis@rwest.io>
parents: 296
diff changeset
246
 (defun make-tree-sitter-langs ()
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
247
   (sk-call *skel-project* :tree-sitter-langs))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
248
 
255
ad70dec68fa1 autogen updates and moved Containerfiles
Richard Westhaver <ellis@rwest.io>
parents: 254
diff changeset
249
 (defun autogen ()
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
250
   (info! (machine-version)
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
251
          "starting autogen...")
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
252
   (in-readtable :shell)
255
ad70dec68fa1 autogen updates and moved Containerfiles
Richard Westhaver <ellis@rwest.io>
parents: 254
diff changeset
253
   (terpri)
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
254
   (init-profile)
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
255
   (init-host)
271
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
256
   (init-skel-vars)
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
257
   (setq *skel-project* (find-skelfile *default-pathname-defaults* :load t))
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
258
   (unless (probe-file #p".stash")
cd797f4eb846 rm infra.asd
Richard Westhaver <ellis@rwest.io>
parents: 269
diff changeset
259
     (sk-call* *skel-project* :bootstrap))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
260
   (terpri)
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
261
   ;; print post-init info
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
262
   (when (log:info-p)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
263
     (log:info! "")
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
264
     (format t "lisp: ~A ~A~%"(lisp-implementation-type) (lisp-implementation-version))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
265
     (terpri)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
266
     (format t "core: ~A~%" sb-ext:*core-pathname*)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
267
     (terpri)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
268
     (println "host:")
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
269
     (loop for (k v) on *host* by 'cddr
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
270
           do (format t "  ~A = ~A~%" k v))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
271
     (terpri)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
272
     (println "profile:")
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
273
     (loop for (k v) on *profile* by 'cddr
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
274
           do (format t "  ~A = ~A~%" k v))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
275
     (terpri)
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
276
     (println "env:")
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
277
     (loop for k being the hash-key
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
278
           using (hash-value v) of *host-env*
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
279
           do (format t "  ~A = ~A~%" k (or v ""))))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
280
   ;; process all features
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
281
   (let ((features (getprofile :features)))
296
Richard Westhaver <ellis@rwest.io>
parents: 295
diff changeset
282
     (when (member :all features) (setq features *all-features*))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
283
     (when (member :default features) (make-default))
284
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
284
     (std/thread:wait-for-threads
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
285
      (std:flatten
71ac00213ae3 updates, rm scripts/autogen.lisp
Richard Westhaver <ellis@rwest.io>
parents: 283
diff changeset
286
       (list
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
287
        (when (member :org features) (sb-thread:make-thread #'make-org :name "org"))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
288
        (when (member :pod features) (sb-thread:make-thread #'make-pods :name "pod"))
295
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
289
        (when (member :quicklisp features) (sb-thread:make-thread #'make-quicklisp :name "quicklisp"))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
290
        (when (member :emacs-mini features) (sb-thread:make-thread #'make-emacs-mini :name "emacs-mini"))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
291
        (when (member :ts features) (sb-thread:make-thread #'make-ts :name "ts"))
61f88f16e0f1 autogen updates
Richard Westhaver <ellis@rwest.io>
parents: 291
diff changeset
292
        (when (member :ts-langs features) (sb-thread:make-thread #'make-ts-langs :name "ts-langs"))
289
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
293
        (when (member :box features) (sb-thread:make-thread #'make-boxes :name "box"))
acaa2f3cfbd4 autogen checks
Richard Westhaver <ellis@rwest.io>
parents: 288
diff changeset
294
        (when (member :packy features) (sb-thread:make-thread #'make-packy :name "packy")))))))