225 lines
8.1 KiB
YAML
225 lines
8.1 KiB
YAML
name: CI Mac
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'master'
|
|
pull_request:
|
|
types: [opened, synchronize, reopened]
|
|
jobs:
|
|
build-mac-default:
|
|
# checking pure lib source distribution with plain configure & make
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: configure
|
|
run: ./configure
|
|
- name: make
|
|
run: make
|
|
|
|
mac-default-full-bundle-1:
|
|
# full bundle: enable all codecs + AEC + DTLS
|
|
# full bundle 1: running pjlib, pjlib-util, pjmedia, and pjsua tests
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 opencore-amr swig sipp
|
|
- name: config site
|
|
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-g -I/usr/local/include -I/usr/local/opt/openssl@1.1/include -fPIC" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" CXXFLAGS="-g -fPIC" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: set up Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.10'
|
|
- name: swig bindings
|
|
run: cd pjsip-apps/src/swig && make
|
|
- name: disable firewall
|
|
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
|
|
- name: unit tests
|
|
run: make pjlib-test-ci pjmedia-test pjlib-util-test pjsua-test
|
|
|
|
mac-default-full-bundle-2:
|
|
# full bundle 2: running pjnath test
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 opencore-amr
|
|
- name: config site
|
|
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-g -I/usr/local/include -I/usr/local/opt/openssl@1.1/include" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: disable firewall
|
|
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
|
|
- name: unit tests
|
|
run: make pjnath-test
|
|
|
|
mac-default-full-bundle-3:
|
|
# full bundle 3: running pjsip test
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 opencore-amr
|
|
- name: config site
|
|
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-g -I/usr/local/include -I/usr/local/opt/openssl@1.1/include" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: disable firewall
|
|
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
|
|
- name: unit tests
|
|
run: make pjsip-test
|
|
|
|
# build-ubuntu-no-tls:
|
|
# no TLS (same as build-mac-default)
|
|
|
|
build-mac-openssl:
|
|
# TLS: with OpenSSL
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 swig
|
|
- name: configure
|
|
run: CFLAGS="-I/usr/local/include -I/usr/local/opt/openssl@1.1/include -fPIC" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" CXXFLAGS="-fPIC" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: set up Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.10'
|
|
- name: swig bindings
|
|
run: cd pjsip-apps/src/swig && make
|
|
|
|
build-mac-gnu-tls:
|
|
# TLS: with GnuTLS
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install swig
|
|
- name: configure
|
|
run: CFLAGS="-fPIC" CXXFLAGS="-fPIC" ./configure --with-gnutls=/usr/local/
|
|
- name: make
|
|
run: make
|
|
- name: set up Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.10'
|
|
- name: swig bindings
|
|
run: cd pjsip-apps/src/swig && make
|
|
|
|
mac-video-openh264-1:
|
|
# video: video enabled with vpx and openh264
|
|
# video 1: running pjlib, pjlib-util, pjmedia, and pjsua tests
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 openh264 libvpx opencore-amr swig sipp
|
|
- name: config site
|
|
run: cd pjlib/include/pj && cp config_site_test.h config_site.h && echo "#define PJMEDIA_HAS_VIDEO 1" >> config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-g -I/usr/local/include -I/usr/local/opt/openssl@1.1/include -DHAS_VID_CODEC_TEST=0 -fPIC" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" CXXFLAGS="-g -fPIC" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: set up Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.10'
|
|
- name: swig bindings
|
|
run: cd pjsip-apps/src/swig && make
|
|
- name: disable firewall
|
|
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
|
|
- name: unit tests
|
|
run: make pjlib-test-ci pjmedia-test pjlib-util-test pjsua-test
|
|
|
|
mac-video-openh264-2:
|
|
# video 2: running pjnath test
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 openh264 libvpx opencore-amr
|
|
- name: config site
|
|
run: cd pjlib/include/pj && cp config_site_test.h config_site.h && echo "#define PJMEDIA_HAS_VIDEO 1" >> config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-g -I/usr/local/include -I/usr/local/opt/openssl@1.1/include" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: disable firewall
|
|
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
|
|
- name: unit tests
|
|
run: make pjnath-test
|
|
|
|
mac-video-openh264-3:
|
|
# video 3: running pjsip test
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 openh264 libvpx opencore-amr
|
|
- name: config site
|
|
run: cd pjlib/include/pj && cp config_site_test.h config_site.h && echo "#define PJMEDIA_HAS_VIDEO 1" >> config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-g -I/usr/local/include -I/usr/local/opt/openssl@1.1/include" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: disable firewall
|
|
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
|
|
- name: unit tests
|
|
run: make pjsip-test
|
|
|
|
build-mac-video-ffmpeg:
|
|
# video enabled with vpx and ffmpeg and x264
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 x264 libvpx nasm swig
|
|
- name: get ffmpeg
|
|
run: git clone --single-branch --branch release/4.2 https://github.com/FFmpeg/FFmpeg.git
|
|
- name: configure ffmpeg
|
|
run: cd FFmpeg && ./configure --enable-shared --disable-static --enable-gpl --enable-libx264
|
|
- name: build ffmpeg
|
|
run: cd FFmpeg && make -j10 && sudo make install
|
|
- name: config site
|
|
run: echo -e "#define PJMEDIA_HAS_VIDEO 1\n" > pjlib/include/pj/config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-I/usr/local/include -I/usr/local/opt/openssl@1.1/include -fPIC" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" CXXFLAGS="-fPIC" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: set up Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.10'
|
|
- name: swig bindings
|
|
run: cd pjsip-apps/src/swig && make
|
|
|
|
build-mac-video-vid-toolbox:
|
|
# video enabled with vpx and video toolbox
|
|
runs-on: macos-latest
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: install dependencies
|
|
run: brew install openssl@1.1 libvpx swig
|
|
- name: config site
|
|
run: echo -e "#define PJMEDIA_HAS_VIDEO 1\n#define PJMEDIA_HAS_VID_TOOLBOX_CODEC 1\n" > pjlib/include/pj/config_site.h
|
|
- name: configure
|
|
run: CFLAGS="-I/usr/local/include -I/usr/local/opt/openssl@1.1/include -fPIC" LDFLAGS="-L/usr/local/lib -L/usr/local/opt/openssl@1.1/lib" CXXFLAGS="-fPIC" ./configure
|
|
- name: make
|
|
run: make
|
|
- name: set up Python
|
|
uses: actions/setup-python@v4
|
|
with:
|
|
python-version: '3.10'
|
|
- name: swig bindings
|
|
run: cd pjsip-apps/src/swig && make
|