Files
freeswitch/.github/workflows/macos.yml
T
MarioG-X e3dc9950fd [GHA] Update ffmpeg and libpq in macos.yml
ffmpeg@5 changed to ffmpeg@7
Note: tested ffmpeg@8 but it causes missing ft2build.h in truetype include library.

libpq@16 changed to libpq@18

Co-authored-by: Andrey Volk <andywolk@gmail.com>
2026-05-26 19:29:55 +03:00

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@7 \
gnu-sed \
jpeg \
ldns \
libpq@18 \
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@7 \
libpq@18
- 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/