mirror of
https://github.com/signalwire/freeswitch.git
synced 2026-01-25 02:07:54 +00:00
103 lines
2.4 KiB
YAML
103 lines
2.4 KiB
YAML
name: MacOS Build
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches:
|
|
- master
|
|
- v1.10
|
|
# - v1.11
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- v1.10
|
|
# - v1.11
|
|
|
|
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 upgrade
|
|
# Remove pinned cmake version (https://github.com/actions/runner-images/blob/macos-15-arm64/20250825.2246/images/macos/scripts/build/install-common-utils.sh#L19)
|
|
brew uninstall --ignore-dependencies cmake || true
|
|
# brew install libtiff openssl@3
|
|
brew install \
|
|
autoconf \
|
|
automake \
|
|
curl \
|
|
ffmpeg@5 \
|
|
gnu-sed \
|
|
jpeg \
|
|
ldns \
|
|
libpq@16 \
|
|
libsndfile \
|
|
libtool \
|
|
lua \
|
|
opus \
|
|
ossp-uuid \
|
|
pcre2 \
|
|
pkgconf \
|
|
sofia-sip \
|
|
speex \
|
|
speexdsp \
|
|
sqlite \
|
|
yasm \
|
|
&& \
|
|
brew list --pinned | awk '{system("brew unpin " $1)}' && \
|
|
brew install --adopt \
|
|
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/
|