Skip to content

CI: change sleep_test() and timestamp_test() to exclusive on Windows … #1826

CI: change sleep_test() and timestamp_test() to exclusive on Windows …

CI: change sleep_test() and timestamp_test() to exclusive on Windows … #1826

Workflow file for this run

name: CI MacOS
on:
push:
branches:
- 'master'
pull_request:
types: [opened, synchronize, reopened]
env:
CI_ARGS: ${{ vars.CI_MAC_ARGS }}
CI_MODE: ${{ vars.CI_MODE }}
MAKE_FAST: make -j 2
jobs:
default-build:
# checking pure lib source distribution with plain configure & make
runs-on: macos-latest
name: Default / build only
steps:
- uses: actions/checkout@v2
- name: configure
run: ./configure
- name: make
run: $MAKE_FAST
default-pjlib-util-pjmedia-pjnath:
# full bundle: enable all codecs + AEC + DTLS
runs-on: macos-latest
name: Default / pjmedia,pjnath
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl opencore-amr
- name: config site
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
- name: configure
run: CFLAGS="-g $(pkg-config --cflags openssl) $(pkg-config --cflags opencore-amrnb) -fPIC" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib $(pkg-config --libs-only-L opencore-amrnb)" CXXFLAGS="-g -fPIC" ./configure
- name: make
run: $MAKE_FAST
- name: disable firewall
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
- name: pjmedia-test
run: make pjmedia-test
- name: pjnath-test
run: make pjnath-test
default-pjsua-test:
runs-on: macos-latest
name: Default / pjsua-test
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl opencore-amr swig sipp
- name: set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: config site
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
- name: configure
run: CFLAGS="-g $(pkg-config --cflags openssl) $(pkg-config --cflags opencore-amrnb) -fPIC" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib $(pkg-config --libs-only-L opencore-amrnb)" CXXFLAGS="-g -fPIC" ./configure
- name: make
run: $MAKE_FAST
- name: disable firewall
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
- name: swig bindings
run: cd pjsip-apps/src/swig && make
- name: pjsua-test
run: make pjsua-test
default-pjsip-test:
runs-on: macos-latest
name: Default / pjlib,util,pjsip-test
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl opencore-amr
- name: config site
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
- name: configure
run: CFLAGS="-g $(pkg-config --cflags openssl) $(pkg-config --cflags opencore-amrnb)" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib $(pkg-config --libs-only-L opencore-amrnb)" ./configure
- name: make
run: $MAKE_FAST
- name: disable firewall
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
- name: pjlib-test
run: make pjlib-test
- name: pjlib-util-test
run: make pjlib-util-test
- name: pjsip-test
run: make pjsip-test
openssl-1:
runs-on: macos-latest
name: OpenSSL / pjlib,util,pjnath,pjmedia
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl swig
- name: configure
run: CFLAGS="$(pkg-config --cflags openssl) -fPIC" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib" CXXFLAGS="-fPIC" ./configure
- name: config site
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
- name: make
run: $MAKE_FAST
- 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: get SSL info
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep SSL
- name: verify openssl is used
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep -E 'PJ_SSL_SOCK_IMP\s+:\s+1'
- name: pjlib-test
run: make pjlib-test
- name: pjlib-util-test
run: make pjlib-util-test
- name: pjmedia-test
run: make pjmedia-test
- name: pjnath-test
run: make pjnath-test
openssl-2:
runs-on: macos-latest
name: OpenSSL / pjsip
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl
- name: configure
run: CFLAGS="$(pkg-config --cflags openssl) -fPIC" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib" CXXFLAGS="-fPIC" ./configure
- name: config site
run: cd pjlib/include/pj && cp config_site_test.h config_site.h
- name: make
run: $MAKE_FAST
- name: disable firewall
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
- name: get SSL info
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep SSL
- name: verify openssl is used
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep -E 'PJ_SSL_SOCK_IMP\s+:\s+1'
- name: pjsip-test
run: make pjsip-test
gnu-tls-1:
runs-on: macos-latest
name: GnuTLS / pjlib,util,pjmedia,pjnath
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install gnutls swig
- name: configure
run: CFLAGS="-fPIC" CXXFLAGS="-fPIC" ./configure --with-gnutls=`brew --prefix gnutls`
- name: make
run: $MAKE_FAST
- 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: get SSL info
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep SSL
- name: verify gnu tls is used
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep -E 'PJ_SSL_SOCK_IMP\s+:\s+2'
- name: pjlib-test
run: make pjlib-test
- name: pjlib-util-test
run: make pjlib-util-test
- name: pjmedia-test
run: make pjmedia-test
- name: pjnath-test
run: make pjnath-test
gnu-tls-2:
runs-on: macos-latest
name: GnuTLS / pjsip-test
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install gnutls swig
- name: configure
run: CFLAGS="-fPIC" CXXFLAGS="-fPIC" ./configure --with-gnutls=`brew --prefix gnutls`
- name: make
run: $MAKE_FAST
- name: get SSL info
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep SSL
- name: verify gnu tls is used
run: pjlib/bin/pjlib-test-`make infotarget` --config --list | grep -E 'PJ_SSL_SOCK_IMP\s+:\s+2'
- name: pjsip-test
run: make pjsip-test
video-openh264-1:
runs-on: macos-latest
name: Openh264+VPX / pjmedia,pjsua
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl 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 $(pkg-config --cflags openssl) $(pkg-config --cflags opencore-amrnb) -DHAS_VID_CODEC_TEST=0 -fPIC" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib $(pkg-config --libs-only-L opencore-amrnb)" CXXFLAGS="-g -fPIC" ./configure
- name: make
run: $MAKE_FAST
- 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: pjmedia-test
run: make pjmedia-test
- name: pjsua-test
run: make pjsua-test
video-openh264-2:
runs-on: macos-latest
name: Openh264+VPX / util,pjnath
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl 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 $(pkg-config --cflags openssl) $(pkg-config --cflags opencore-amrnb)" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib $(pkg-config --libs-only-L opencore-amrnb)" ./configure
- name: make
run: $MAKE_FAST
- name: disable firewall
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
- name: pjlib-util-test
run: make pjlib-util-test
- name: pjnath-test
run: make pjnath-test
video-openh264-3:
runs-on: macos-latest
name: Openh264+VPX / pjlib,pjsip
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl 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 $(pkg-config --cflags openssl) $(pkg-config --cflags opencore-amrnb)" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib $(pkg-config --libs-only-L opencore-amrnb)" ./configure
- name: make
run: $MAKE_FAST
- name: disable firewall
run: sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off
- name: pjlib-test
run: make pjlib-test
- name: pjsip-test
run: make pjsip-test
video-ffmpeg:
runs-on: macos-latest
name: FFMPEG+VPX+x264 / pjmedia
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl x264 libvpx nasm swig
- name: get ffmpeg
run: git clone --depth 1 --single-branch --branch release/7.0 https://github.com/FFmpeg/FFmpeg.git
- name: configure ffmpeg
run: cd FFmpeg && LDFLAGS="-Wl,-ld_classic" ./configure --enable-shared --disable-static --enable-gpl --enable-libx264
- name: build ffmpeg
run: cd FFmpeg && $MAKE_FAST && 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="$(pkg-config --cflags openssl) -fPIC" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib" CXXFLAGS="-fPIC" ./configure
- name: make
run: $MAKE_FAST
- 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: pjmedia-test
run: make pjmedia-test
video-vid-toolbox:
runs-on: macos-latest
name: VPX+VidToolbox / pjmedia
steps:
- uses: actions/checkout@v2
- name: install dependencies
run: brew install openssl 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="$(pkg-config --cflags openssl) -fPIC" LDFLAGS="$(pkg-config --libs-only-L openssl) $(pkg-config --libs-only-L openssl)/lib" CXXFLAGS="-fPIC" ./configure
- name: make
run: $MAKE_FAST
- 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: pjmedia-test
run: make pjmedia-test