-
Notifications
You must be signed in to change notification settings - Fork 169
43 lines (39 loc) · 1.36 KB
/
macos.yaml
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
name: macos
on:
pull_request:
branches: [ main ]
jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check if rebuild required
## @todo This should become a reusable workflow.
run: |
tmpfile=$(mktemp)
git show --pretty="format:" --name-only --diff-filter=AMRC ${{ github.event.pull_request.head.sha}} -${{ github.event.pull_request.commits }} | sort | uniq | awk NF > ${tmpfile}
echo "changed_file_list=${tmpfile}" >> "$GITHUB_ENV"
rebuild=`bash .github/workflows/check_if_rebuild_requires.sh ${tmpfile} rebuild | grep "REBUILD=YES" | wc -l`
echo "Rebuild required: ${rebuild}"
echo "rebuild=${rebuild}" >> "$GITHUB_ENV"
- uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: homebrew
if: env.rebuild == '1'
run: |
# temporarily disabled, because it always fails these days.
# brew update
brew install cask
- name: install minimal requirements
if: env.rebuild == '1'
run: brew install meson ninja pkg-config cmake libffi glib gstreamer numpy json-glib
- uses: BSFishy/meson-build@v1.0.3
if: env.rebuild == '1'
with:
action: build
# TODO: add more subplugins to be built
# TODO: add unit testing
# TODO: add valgrind testing