]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
[GHA] Add MacOS build workflow 2816/head
authors3rj1k <evasive.gyron@gmail.com>
Wed, 4 Jun 2025 20:14:02 +0000 (22:14 +0200)
committers3rj1k <evasive.gyron@gmail.com>
Thu, 5 Jun 2025 16:10:07 +0000 (18:10 +0200)
.github/workflows/macos.yml [new file with mode: 0644]

diff --git a/.github/workflows/macos.yml b/.github/workflows/macos.yml
new file mode 100644 (file)
index 0000000..e4bcb53
--- /dev/null
@@ -0,0 +1,95 @@
+name: MacOS Build
+
+on:
+  workflow_dispatch:
+  push:
+    branches:
+      - master
+      - v1.10
+  pull_request:
+    branches:
+      - master
+      - v1.10
+
+jobs:
+  build:
+    name: Build MacOS
+    runs-on: macos-latest
+
+    steps:
+      - name: Checkout code
+        uses: actions/checkout@v4
+        with:
+          fetch-depth: 0
+
+      - name: Install dependencies
+        run: |
+          brew update
+          # brew install libtiff openssl@3 pkg-config
+          brew install \
+            autoconf \
+            automake \
+            curl \
+            ffmpeg@5 \
+            gnu-sed \
+            jpeg \
+            ldns \
+            libpq@16 \
+            libsndfile \
+            libtool \
+            lua \
+            opus \
+            ossp-uuid \
+            pcre \
+            sofia-sip \
+            speex \
+            speexdsp \
+            sqlite \
+            yasm \
+          && \
+          brew install \
+            signalwire/homebrew-signalwire/libks2 \
+            signalwire/homebrew-signalwire/signalwire-c2 \
+            signalwire/homebrew-signalwire/spandsp \
+          && \
+          brew link --force --overwrite \
+            ffmpeg@5 \
+            libpq@16
+
+      - name: Bootstrap FreeSWITCH
+        run: ./bootstrap.sh -j
+
+      # - name: Disable modules
+      #   run: |
+      #     gsed -i \
+      #       -e '/mod_pgsql/s/^/#/g' \
+      #       modules.conf
+
+      - name: Configure build
+        run: |
+          mkdir -p OUT && \
+          ./configure \
+            --enable-shared \
+            --enable-static \
+            --exec_prefix=${{ github.workspace }}/OUT \
+            --prefix=${{ github.workspace }}/OUT
+
+      - name: Build
+        run: |
+          make
+
+      - name: Install to local folder
+        run: |
+          make install
+
+      # - name: Debug - List all files
+      #   run: |
+      #     find . -type f | sort
+
+      - name: Upload build artifacts
+        uses: actions/upload-artifact@v4
+        if: always()
+        with:
+          name: freeswitch-macos-build
+          path: |
+            OUT/