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