From 154464e7ce79f46f5647b0e06e7cb226c756fec5 Mon Sep 17 00:00:00 2001
From: Krystine Sherwin <93062060+KrystalDelusion@users.noreply.github.com>
Date: Thu, 15 Feb 2024 10:00:22 +1300
Subject: [PATCH] ci: add macos test build

---
 .github/workflows/test-build.yml | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

diff --git a/.github/workflows/test-build.yml b/.github/workflows/test-build.yml
index 7f581af27..f223bde24 100644
--- a/.github/workflows/test-build.yml
+++ b/.github/workflows/test-build.yml
@@ -142,7 +142,7 @@ jobs:
       CC: clang
     strategy:
       matrix:
-        os: [ubuntu-20.04]
+        os: [ubuntu-20.04, macos-13]
       fail-fast: false
     steps:
       - name: Install Linux Dependencies
@@ -213,20 +213,36 @@ jobs:
       CC: clang
     strategy:
       matrix:
-        os: [ubuntu-20.04]
+        os: [ubuntu-20.04, macos-13]
     steps:
-      - name: Install Dependencies
+      - name: Install Linux Dependencies
+        if: runner.os == 'Linux'
         shell: bash
         run: |
           sudo apt-get update
-          sudo apt-get install gperf build-essential bison flex libreadline-dev gawk tcl-dev libffi-dev git graphviz xdot pkg-config python3 libboost-system-dev libboost-python-dev libboost-filesystem-dev zlib1g-dev
+          sudo apt-get install gperf build-essential bison flex libreadline-dev gawk tcl-dev libffi-dev git graphviz xdot pkg-config python python3 libboost-system-dev libboost-python-dev libboost-filesystem-dev zlib1g-dev
 
-      - name: Runtime environment
+      - name: Install macOS Dependencies
+        if: runner.os == 'macOS'
+        run: |
+          brew install bison flex gawk libffi pkg-config bash
+
+      - name: Linux runtime environment
+        if: runner.os == 'Linux'
         shell: bash
         run: |
           echo "${{ github.workspace }}/.local/bin" >> $GITHUB_PATH
           echo "procs=$(nproc)" >> $GITHUB_ENV
 
+      - name: macOS runtime environment
+        if: runner.os == 'macOS'
+        shell: bash
+        run: |
+          echo "${{ github.workspace }}/.local/bin" >> $GITHUB_PATH
+          echo "$(brew --prefix bison)/bin" >> $GITHUB_PATH
+          echo "$(brew --prefix flex)/bin" >> $GITHUB_PATH
+          echo "procs=$(sysctl -n hw.ncpu)" >> $GITHUB_ENV
+
       - name: Checkout Yosys
         uses: actions/checkout@v4