• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1name: macOS-CI
2on: push
3
4permissions:
5  contents: read
6
7jobs:
8  macOS-CI:
9    strategy:
10      matrix:
11        glx_option: ['dri', 'xlib']
12    runs-on: macos-11
13    env:
14      GALLIUM_DUMP_CPU: true
15      MESON_EXEC: /Users/runner/Library/Python/3.11/bin/meson
16    steps:
17    - name: Checkout
18      uses: actions/checkout@v3
19    - name: Install Dependencies
20      run: |
21        cat > Brewfile <<EOL
22        brew "bison"
23        brew "expat"
24        brew "gettext"
25        brew "libx11"
26        brew "libxcb"
27        brew "libxdamage"
28        brew "libxext"
29        brew "ninja"
30        brew "pkg-config"
31        brew "python@3.10"
32        EOL
33
34        brew update
35        brew bundle --verbose
36    - name: Install Mako and meson
37      run: pip3 install --user mako meson
38    - name: Configure
39      run: |
40        cat > native_config <<EOL
41        [binaries]
42        llvm-config = '/usr/local/opt/llvm/bin/llvm-config'
43        EOL
44        $MESON_EXEC . build --native-file=native_config -Dbuild-tests=true -Dosmesa=true -Dgallium-drivers=swrast -Dglx=${{ matrix.glx_option }}
45    - name: Build
46      run: $MESON_EXEC compile -C build
47    - name: Test
48      run: $MESON_EXEC test -C build --print-errorlogs
49    - name: Install
50      run: $MESON_EXEC install -C build --destdir $PWD/install
51    - name: 'Upload Artifact'
52      if: always()
53      uses: actions/upload-artifact@v3
54      with:
55        name: macos-${{ matrix.glx_option }}-result
56        path: |
57          build/meson-logs/
58          install/
59        retention-days: 5
60