56 lines
1.7 KiB
YAML
56 lines
1.7 KiB
YAML
name: Sex CI
|
|
|
|
on:
|
|
push:
|
|
branches: [ main ]
|
|
pull_request:
|
|
branches: [ main ]
|
|
|
|
jobs:
|
|
build-linux:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Install chicken
|
|
run: |
|
|
wget -N https://code.call-cc.org/releases/6.0.0/chicken-6.0.0.tar.gz
|
|
tar zxf chicken-6.0.0.tar.gz
|
|
sudo apt install -y make
|
|
make -C chicken-6.0.0 PLATFORM=linux
|
|
sudo make -C chicken-6.0.0 PLATFORM=linux install
|
|
- name: Install dependencies
|
|
# FIXME: [project-local deps]: use venv or something
|
|
# run: make deps
|
|
run: sudo chicken-install $(cat dependencies.txt)
|
|
- name: Make sure that sexc builds
|
|
# FIXME: sexc being built with local .eggs/ libs needs the path at runtime.
|
|
# Without it there will be `Error: cannot load extension: fmt`.
|
|
run: make sexc && ./sexc --help
|
|
- name: Run tests
|
|
# FIXME: [project-local deps]: use local deps or build with -static
|
|
# run: make run-tests
|
|
run: make sex-tests && ./sex-tests
|
|
|
|
build-macos:
|
|
|
|
runs-on: macos-15
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Install chicken
|
|
run: brew install chicken make
|
|
- name: Install dependencies
|
|
# FIXME: [project-local deps]: use venv or something
|
|
# run: make deps
|
|
run: chicken-install $(cat dependencies.txt)
|
|
- name: Make sure that sexc builds
|
|
# FIXME: sexc being built with local .eggs/ libs needs the path at runtime.
|
|
# Without it there will be `Error: cannot load extension: fmt`.
|
|
run: make sexc && ./sexc --help
|
|
- name: Run tests
|
|
# FIXME: [project-local deps]: use local deps or build with -static
|
|
# run: make run-tests
|
|
run: make sex-tests && ./sex-tests
|