-
Notifications
You must be signed in to change notification settings - Fork 0
79 lines (70 loc) · 2.31 KB
/
workflow.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
name: Build and release
on:
workflow_dispatch:
schedule:
- cron: "15 1 * * *"
jobs:
build:
name: Build
runs-on: windows-latest
steps:
# SBCL on Windows does not support CRLF.
- name: Ensure LF line endings
run: git config --global core.autocrlf input
- name: Check out sbcl-builds
uses: actions/checkout@v4
with:
path: sbcl-builds
- name: Check out SBCL mirror
uses: actions/checkout@v4
with:
repository: sbcl/sbcl
path: sbcl-source
# Make sure we don't do a shallow clone.
# We need the full commit history, as this is required by 'git describe',
# which is called by generate-version.sh.
fetch-depth: 0
- name: Set up MSYS2
uses: msys2/setup-msys2@v2
with:
msystem: UCRT64
update: true
install: >-
make
git
zip
unzip
mingw-w64-ucrt-x86_64-gcc
mingw-w64-ucrt-x86_64-github-cli
- name: Set environment variables
shell: msys2 {0}
run: |
echo "SBCL_HASH=$(cd sbcl-source && git rev-parse --short HEAD)" >> $GITHUB_ENV
echo "SBCL_HOME=$GITHUB_WORKSPACE/sbcl-builds/lib/sbcl" >> $GITHUB_ENV
- name: Build SBCL
shell: msys2 {0}
run: |
echo CURRENT DIR: $(pwd), WORKSPACE DIR: $GITHUB_WORKSPACE, WIX DIR: $WIX
cd sbcl-builds
unzip sbcl-2.4.1.zip
cd ../sbcl-source
sh make.sh --prefix=../build --xc-host="../sbcl-builds/bin/sbcl.exe --no-userinit --no-sysinit"
unset SBCL_HOME
sh install.sh
cd "$GITHUB_WORKSPACE"/build
zip -r sbcl-ucrt64-$SBCL_HASH.zip *
- name: Build MSI
shell: msys2 {0}
run: |
cd sbcl-source
sh make-windows-installer.sh
- name: Release
shell: msys2 {0}
run: >
cd sbcl-builds &&
gh release create SBCL-$(date +"%Y.%m.%d")-$SBCL_HASH
--notes "Source: https://github.com/sbcl/sbcl"
../build/sbcl-ucrt64-$SBCL_HASH.zip
../sbcl-source/output/sbcl-$(cat ../sbcl-source/output/version.txt).msi
env:
GITHUB_TOKEN: ${{ secrets.SBCL_BUILDS_TOKEN }}