changelog shortlog graph tags branches changeset files revisions annotate raw help

Mercurial > infra / skelfile

changeset 289: acaa2f3cfbd4
parent: 50329ab8865a
child: 9c37db8ed167
author: Richard Westhaver <ellis@rwest.io>
date: Tue, 18 Jun 2024 16:10:23 -0400
permissions: -rw-r--r--
description: autogen checks
1 ;;; skelfile --- infra skelfile -*- mode: skel; -*-
2 :name "infra"
3 :author "Richard Westhaver <ellis@rwest.io>"
4 :version "0.1.0"
5 :description "The Compiler Company Infrastructure"
6 :tags (:infra)
7 :license "MPL"
8 :vc (:hg "https://vc.compiler.company/comp/infra")
9 :docs ((:org "readme"))
10 :scripts "scripts"
11 :stash #p".stash"
12 :store #p"/usr/local/share/store"
13 :rules
14 ((check () #$./check.sh$#)
15  (clean () #$rm -rvf .stash$#)
16  (src () #$mkdir -pv .stash/src$#)
17  (bin () #$mkdir -pv .stash/bin$#)
18  ;; src
19  (repos (src) #$cd .stash && curl -O https://packy.compiler.company/src/comp.tar.zst && \
20  unzstd comp.tar.zst && tar -xf comp.tar -C src && mv src/hg/* src/ && rm -rf src/hg comp.tar$#)
21  (packy-repos (src) #$cd .stash && curl -O https://packy.compiler.company/src/packy.tar.zst && \
22  unzstd packy.tar.zst && tar -xf packy.tar -C src && \
23  rm -rf packy.tar$#)
24  ;; containers
25  (archlinux () #$podman build -f .stash/src/pod/Containerfile.archlinux . -t localhost/archlinux$#)
26  (alpine () #$podman build -f .stash/src/pod/Containerfile.alpine . -t localhost/alpine$#)
27  (ubuntu () #$podman build -f .stash/src/pod/Containerfile.alpine . -t localhost/alpine$#)
28  (box (archlinux) #$podman build -f .stash/src/pod/Containerfile.box . -t localhost/box$#)
29  (worker (alpine) #$podman build -f .stash/src/pod/Containerfile.worker . -t localhost/worker$#)
30  (operator (box) #$podman build -f .stash/src/pod/Containerfile.operator . -t localhost/operator$#)
31  (vc (worker) #$podman build -f .stash/src/pod/Containerfile.vc . -t localhost/vc$#)
32  (core (operator) #$podman build -f .stash/src/pod/Containerfile.core . -t localhost/core$#)
33  (containers (archlinux alpine ubuntu box worker operator vc))
34  ;; programs
35  (bootstrap () #$./bootstrap.sh$#)
36  (emacs (src) #$./scripts/get-emacs.sh$#
37  #$cd .stash/src/emacs && ./autogen.sh$#
38  #$./scripts/build-emacs.sh$#)
39  (emacs-mini (src) #$./scripts/get-emacs.sh$#
40  #$cd .stash/src/emacs && ./autogen.sh$#
41  #$./scripts/build-emacs-mini.sh$#)
42  (rocksdb (src) #$scripts/get-rocksdb.sh$#
43  #$cd .stash/src/rocksdb && make shared_lib DISABLE_JEMALLOC=1$#)
44  (rocksdb-static (src) #$scripts/get-rocksdb.sh$#
45  #$cd .stash/src/rocksdb && make static_lib DISABLE_JEMALLOC=1$#)
46  (sbcl (src) #$scripts/get-sbcl.sh$#
47  #$cd .stash/src/sbcl &&
48  echo '"2.4.5"' > version.lisp-expr &&
49  ./make.sh --dynamic-space-size=8Gb --without-gencgc --with-mark-region-gc --fancy$#)
50  (sbcl-docs (sbcl) #$cd .stash/src/sbcl/doc/manual && make$#)
51  (sbcl-gencgc (src) #$cd .stash/src/sbcl &&
52  ./make.sh --dynamic-space-size=8Gb --fancy$#)
53  (sbcl-shared () #$cd .stash/src/sbcl && sh make-shared-library.sh$#)
54  (quicklisp () #$cd .stash && curl -O https://beta.quicklisp.org/quicklisp.lisp
55  ./scripts/quicklisp-install.sh$#)
56  (stumpwm (src) #$./scripts/get-stumpwm.sh$#
57  #$cd .stash/src/stumpwm && ./autogen.sh && ./configure && make$#)
58  (nyxt (src) #$./scripts/get-nyxt.sh$#
59  #$cd .stash/src/nyxt && git submodule update --init && make all$#)
60  (scryer-prolog (src) #$./scripts/get-scryer-prolog.sh$#
61  #$cd .stash/src/scryer-prolog && cargo build --release$#)
62  (tree-sitter (src) #$./scripts/get-tree-sitter.sh$#)
63  (linux () #$mkdir -pv .stash/src/linux$#
64  #$gpg --export autosigner@ torvalds@ gregkh@ > .stash/src/linux/keyring.gpg$#
65  #$./scripts/get-linux.sh $(uname -r | cut -d- -f1) .stash .stash/src/linux/keyring.gpg$#
66  #$cd scripts && unxz .stash/src/linux.tar.xz &&
67  tar -xvf .stash/src/linux.tar $(uname -r | cut -d- -f1)$#
68  #$cd .stash/src/linux && make mrproper -j &&
69  zcat /proc/config.gz > .config && yes N | make localmodconfig$#)
70  (xcaddy () #$go install github.com/caddyserver/xcaddy/cmd/xcaddy@latest$#)
71  (caddy (xcaddy) #$xcaddy build --output .stash/bin/caddy --with github.com/mholt/caddy-webdav$#)
72  (rust () #$scripts/get-rust.sh$#)
73  (rust-docs (rust) #$cd .stash/src/rust && ./x doc$#)
74  (ublk () #$scripts/get-ublksrv.sh$#
75  #$cd .stash/src/ublksrv && autoreconf -i && ./configure && make$#)
76  (ublk-install () #$cd .stash/src/ublksrv && make install$#)
77  ;; ref: https://github.com/BLAKE3-team/BLAKE3/tree/master/c#building
78  (blake3 () #$scripts/get-blake3.sh$#
79  #$cd .stash/src/blake3/c && gcc -shared -O3 -o libblake3.so blake3.c blake3_dispatch.c blake3_portable.c \
80  blake3_sse2_x86-64_unix.S blake3_sse41_x86-64_unix.S blake3_avx2_x86-64_unix.S \
81  blake3_avx512_x86-64_unix.S$#)
82  (blake3-install () #$cd .stash/src/blake3/c && cp libblake3.so /usr/local/lib/ && cp blake3.h /usr/local/include/$#)
83  ;; install
84  (tree-sitter-langs (src) #$./scripts/tree-sitter-install-langs.sh$#)
85  (cargo-tools () #$scripts/install-cargo-tools.sh$#)
86  (rustup () #$curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y$#)
87  (sbcl-install () #$cd .stash/src/sbcl && INSTALL_ROOT=/usr/local sh install.sh$#)
88  (emacs-install () #$cd .stash/src/emacs && make install$#)
89  (rocksdb-install () #$cd .stash/src/rocksdb && make install-shared &&
90  cp -r include/* /usr/local/include/$#)
91  (stumpwm-install () #$cd .stash/src/stumpwm && make install$#)
92  ;; dist
93  (sbcl-dist (sbcl) #$scripts/dist-sbcl-binary.sh$#)
94  (rocksdb-dist (sbcl) #$scripts/dist-rocksdb-binary.sh$#)
95  (dist (rocksdb-dist sbcl-dist) #$scripts/dist-rocksdb-source.sh
96  scripts/dist-sbcl-source.sh$#))