Add siprec extension #1527
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI Windows | |
on: | |
push: | |
branches: | |
- 'master' | |
pull_request: | |
types: [opened, synchronize, reopened] | |
jobs: | |
build-windows-default: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: get swig | |
run: Invoke-WebRequest -Uri "https://github.com/pjsip/third_party_libs/raw/main/swigwin-4.1.1.zip" -OutFile ".\swigwin.zip" | |
shell: powershell | |
- name: expand swig | |
run: | | |
Expand-Archive -LiteralPath .\swigwin.zip -DestinationPath .\swigwin\; pwd | |
cd swigwin\swigwin-4.1.1 | |
Add-Content ..\..\swig_path.txt $pwd.Path | |
shell: powershell | |
- name: config site | |
run: | |
type nul > pjlib/include/pj/config_site.h | |
shell: cmd | |
- name: MSBuild | |
run: | | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
msbuild pjproject-vs14.sln /p:PlatformToolset=v143 /p:Configuration=Debug /p:Platform=win32 | |
shell: cmd | |
- name: build swig | |
run: | | |
set /P SWIG_PATH=<swig_path.txt | |
set PATH=%PATH%;%SWIG_PATH% | |
dir pjlib/include/pj/config_site.h | |
type pjlib/include/pj/config_site.h | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
set INCLUDE=%INCLUDE%;%JAVA_HOME%\include;%JAVA_HOME%\include\win32 | |
cd pjsip-apps/build | |
msbuild swig_java_pjsua2.vcxproj /p:PlatformToolset=v143 /p:Configuration=Debug /p:Platform=win32 /p:UseEnv=true | |
shell: cmd | |
windows-with-openssl-unit-test-1: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: get openssl | |
run: Invoke-WebRequest -Uri "https://github.com/pjsip/third_party_libs/raw/main/openssl-1.1.1s-win.zip" -OutFile ".\openssl.zip" | |
shell: powershell | |
- name: expand openssl | |
run: | | |
Expand-Archive -LiteralPath .\openssl.zip -DestinationPath .; | |
cd openssl_build | |
Add-Content ..\openssl_dir.txt $pwd.Path | |
shell: powershell | |
- name: check openssl folder | |
run: | | |
set /P OPENSSL_DIR=<openssl_dir.txt | |
dir %OPENSSL_DIR%\include | |
dir %OPENSSL_DIR%\lib | |
shell: cmd | |
- name: config site | |
run: | |
cd pjlib/include/pj; cp config_site_test.h config_site.h; Add-Content config_site.h "#define PJ_HAS_SSL_SOCK 1" | |
shell: powershell | |
- name: check VsDevCmd.bat | |
run: dir "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
shell: cmd | |
- name: MSBuild | |
working-directory: . | |
run: | | |
set /P OPENSSL_DIR=<openssl_dir.txt | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
set INCLUDE=%INCLUDE%;%OPENSSL_DIR%\include | |
set LIB=%LIB%;%OPENSSL_DIR%\lib | |
msbuild pjproject-vs14.sln /p:PlatformToolset=v143 /p:Configuration=Release /p:Platform=win32 /p:UseEnv=true | |
shell: cmd | |
- name: unit tests | |
run: | | |
$env:OPENSSL_DIR = Get-Content .\openssl_dir.txt | |
$env:PATH+=";$env:OPENSSL_DIR\bin" | |
cd pjlib/bin; ./pjlib-test-i386-Win32-vc14-Release.exe --ci-mode | |
cd ../../pjlib-util/bin; ./pjlib-util-test-i386-Win32-vc14-Release.exe | |
cd ../../pjmedia/bin/; ./pjmedia-test-i386-Win32-vc14-Release.exe | |
shell: powershell | |
windows-with-openssl-unit-test-2: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: get openssl | |
run: Invoke-WebRequest -Uri "https://github.com/pjsip/third_party_libs/raw/main/openssl-1.1.1s-win.zip" -OutFile ".\openssl.zip" | |
shell: powershell | |
- name: expand openssl | |
run: | | |
Expand-Archive -LiteralPath .\openssl.zip -DestinationPath .; pwd | |
cd openssl_build | |
Add-Content ..\openssl_dir.txt $pwd.Path | |
shell: powershell | |
- name: check openssl folder | |
run: | | |
set /P OPENSSL_DIR=<openssl_dir.txt | |
dir "%OPENSSL_DIR%\include" | |
dir "%OPENSSL_DIR%\lib" | |
shell: cmd | |
- name: config site | |
run: | |
cd pjlib/include/pj; cp config_site_test.h config_site.h; Add-Content config_site.h "#define PJ_HAS_SSL_SOCK 1" | |
shell: powershell | |
- name: check VsDevCmd.bat | |
run: dir "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
shell: cmd | |
- name: MSBuild | |
working-directory: . | |
run: | | |
set /P OPENSSL_DIR=<openssl_dir.txt | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
set INCLUDE=%INCLUDE%;%OPENSSL_DIR%\include | |
set LIB=%LIB%;%OPENSSL_DIR%\lib | |
msbuild pjproject-vs14.sln /p:PlatformToolset=v143 /p:Configuration=Release /p:Platform=win32 /p:UseEnv=true | |
shell: cmd | |
- name: build test tools cmp_wav | |
run: | | |
set /P OPENSSL_DIR=<openssl_dir.txt | |
cd tests/pjsua/tools | |
set INCLUDE=%INCLUDE%;%OPENSSL_DIR%\include | |
set LIB=%LIB%;%OPENSSL_DIR%\lib | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
msbuild cmp_wav.vcxproj /p:PlatformToolset=v143 /p:Configuration=Release /p:Platform=win32 /p:UseEnv=true | |
shell: cmd | |
- name: set up Python 3.10 for pjsua test | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
- name: unit tests | |
run: | | |
$env:OPENSSL_DIR = Get-Content .\openssl_dir.txt | |
$env:PATH+=";$env:OPENSSL_DIR\bin" | |
cd tests/pjsua; python runall.py | |
cd ../../pjsip/bin; ./pjsip-test-i386-Win32-vc14-Release.exe | |
shell: powershell | |
build-windows-gnu-tls: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: get gnutls | |
run: Invoke-WebRequest -Uri "https://github.com/pjsip/third_party_libs/raw/main/gnutls-3.5.17-win.zip" -Outfile ".\gnutls.zip" | |
shell: powershell | |
- name: expand gnutls | |
run: | | |
Expand-Archive -LiteralPath .\gnutls.zip -DestinationPath .; pwd | |
cd gnutls_build | |
Add-Content ..\gnutls_dir.txt $pwd.Path | |
shell: powershell | |
- name: check gnutls folder | |
run: | | |
set /P GNUTLS_DIR=<gnutls_dir.txt | |
dir "%GNUTLS_DIR%\include" | |
dir "%GNUTLS_DIR%\lib\" | |
shell: cmd | |
- name: config site | |
run: | | |
echo "" > pjlib\include\pj\config_site.h | |
Add-Content config_site.h "#define PJ_HAS_SSL_SOCK 1" | |
Add-Content config_site.h "#define PJ_SSL_SOCK_IMP PJ_SSL_SOCK_IMP_GNUTLS" | |
shell: powershell | |
- name: check VsDevCmd.bat | |
run: dir "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
shell: cmd | |
- name: MSBuild | |
working-directory: . | |
run: | | |
set /P GNUTLS_DIR=<gnutls_dir.txt | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
set INCLUDE=%INCLUDE%;%GNUTLS_DIR%\include | |
set LIB=%LIB%;%GNUTLS_DIR%\lib | |
msbuild pjproject-vs14.sln /p:PlatformToolset=v143 /p:Configuration=Release /p:Platform=win32 /p:UseEnv=true | |
shell: cmd | |
windows-with-video-libvpx-schannel-unit-test-1: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: get vpx | |
run: Invoke-WebRequest -Uri "https://github.com/pjsip/third_party_libs/raw/main/vpx-1.12-win.zip" -Outfile "vpx.zip" | |
shell: powershell | |
- name: expand libvpx | |
run: | | |
Expand-Archive -LiteralPath .\vpx.zip -DestinationPath .; pwd | |
cd vpx_build | |
Add-Content ..\vpx_dir.txt $pwd.Path | |
shell: powershell | |
- name: check vpx folder | |
run: | | |
set /P VPX_DIR=<vpx_dir.txt | |
dir "%VPX_DIR%\include" | |
dir "%VPX_DIR%\lib" | |
shell: cmd | |
- name: get sdl | |
run: Invoke-WebRequest -Uri "https://github.com/libsdl-org/SDL/releases/download/release-2.26.2/SDL2-devel-2.26.2-VC.zip" -Outfile ".\sdl.zip" | |
shell: powershell | |
- name: expand sdl | |
run: | | |
Expand-Archive -LiteralPath .\sdl.zip -DestinationPath .\sdl_build\; pwd | |
cd sdl_build\SDL2-2.26.2 | |
Add-Content ..\..\sdl_dir.txt $pwd.Path | |
shell: powershell | |
- name: check sdl folder | |
run: | | |
set /P SDL_DIR=<sdl_dir.txt | |
dir "%SDL_DIR%\include" | |
dir "%SDL_DIR%\lib\x86" | |
shell: cmd | |
- name: config site | |
run: | | |
cd pjlib/include/pj; cp config_site_test.h config_site.h | |
Add-Content config_site.h "#define PJ_HAS_SSL_SOCK 1" | |
Add-Content config_site.h "#define PJ_SSL_SOCK_IMP PJ_SSL_SOCK_IMP_SCHANNEL" | |
Add-Content config_site.h "#undef PJMEDIA_SRTP_HAS_DTLS" | |
Add-Content config_site.h "#define PJMEDIA_HAS_VIDEO 1" | |
Add-Content config_site.h "#define PJMEDIA_VIDEO_DEV_HAS_DSHOW 1" | |
Add-Content config_site.h "#define PJMEDIA_HAS_LIBYUV 1" | |
Add-Content config_site.h "#define PJMEDIA_VIDEO_DEV_HAS_SDL 1" | |
Add-Content config_site.h "#define PJMEDIA_HAS_VPX_CODEC 1" | |
shell: powershell | |
- name: check VsDevCmd.bat | |
run: dir "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
shell: cmd | |
- name: MSBuild | |
working-directory: . | |
run: | | |
set /P OPENSSL_DIR=<openssl_dir.txt | |
set /P VPX_DIR=<vpx_dir.txt | |
set /P SDL_DIR=<sdl_dir.txt | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
set INCLUDE=%INCLUDE%;%OPENSSL_DIR%\include;%VPX_DIR%\include;%SDL_DIR%\include | |
set LIB=%LIB%;%OPENSSL_DIR%\lib;%VPX_DIR%\lib;%SDL_DIR%\lib\x86 | |
msbuild pjproject-vs14.sln /p:PlatformToolset=v143 /p:Configuration=Release /p:Platform=win32 /p:UseEnv=true | |
shell: cmd | |
- name: build test tools cmp_wav | |
run: | | |
set /P OPENSSL_DIR=<openssl_dir.txt | |
set /P VPX_DIR=<vpx_dir.txt | |
set /P SDL_DIR=<sdl_dir.txt | |
cd tests/pjsua/tools | |
set INCLUDE=%INCLUDE%;%OPENSSL_DIR%\include;%VPX_DIR%\include;%SDL_DIR%\include | |
set LIB=%LIB%;%VPX_DIR%\lib;%SDL_DIR%\lib\x86 | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
msbuild cmp_wav.vcxproj /p:PlatformToolset=v143 /p:Configuration=Release /p:Platform=win32 /p:UseEnv=true | |
shell: cmd | |
- name: set up Python 3.10 for pjsua test | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
- name: unit tests | |
run: | | |
$env:SDL_DIR = Get-Content .\sdl_dir.txt | |
$env:PATH+=";$env:SDL_DIR\lib\x86;" | |
cd tests/pjsua; python runall.py | |
cd ../../pjlib/bin; ./pjlib-test-i386-Win32-vc14-Release.exe --ci-mode | |
cd ../../pjlib-util/bin; ./pjlib-util-test-i386-Win32-vc14-Release.exe | |
cd ../../pjmedia/bin/; ./pjmedia-test-i386-Win32-vc14-Release.exe | |
shell: powershell | |
build-windows-video-ffmpeg: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: get ffmpeg | |
run: Invoke-WebRequest -Uri "https://github.com/pjsip/third_party_libs/raw/main/ffmpeg-5.1.2-win.zip" -Outfile "ffmpeg.zip" | |
shell: powershell | |
- name: expand ffmpeg | |
run: | | |
Expand-Archive -LiteralPath .\ffmpeg.zip -DestinationPath .; pwd | |
cd ffmpeg_build | |
Add-Content ..\ffmpeg_dir.txt $pwd.Path | |
shell: powershell | |
- name: check ffmpeg folder | |
run: | | |
set /P FFMPEG_DIR=<ffmpeg_dir.txt | |
dir "%FFMPEG_DIR%\include" | |
dir "%FFMPEG_DIR%\lib" | |
shell: cmd | |
- name: get sdl | |
run: Invoke-WebRequest -Uri "https://github.com/libsdl-org/SDL/releases/download/release-2.26.2/SDL2-devel-2.26.2-VC.zip" -Outfile ".\sdl.zip" | |
shell: powershell | |
- name: expand sdl | |
run: | | |
Expand-Archive -LiteralPath .\sdl.zip -DestinationPath .\sdl_build\; pwd | |
cd sdl_build\SDL2-2.26.2 | |
Add-Content ..\..\sdl_dir.txt $pwd.Path | |
shell: powershell | |
- name: check sdl folder | |
run: | | |
set /P SDL_DIR=<sdl_dir.txt | |
dir "%SDL_DIR%\include\SDL" | |
dir "%SDL_DIR%\lib\x86" | |
shell: cmd | |
- name: config site | |
run: | | |
echo "" > pjlib\include\pj\config_site.h | |
Add-Content config_site.h "#define PJMEDIA_HAS_VIDEO 1" | |
Add-Content config_site.h "#define PJMEDIA_HAS_FFMPEG 1" | |
Add-Content config_site.h "#define PJMEDIA_HAS_FFMPEG_VID_CODEC 1" | |
Add-Content config_site.h "#define PJMEDIA_VIDEO_DEV_HAS_FFMPEG 1" | |
Add-Content config_site.h "#define PJMEDIA_VIDEO_DEV_HAS_SDL 1" | |
shell: powershell | |
- name: check VsDevCmd.bat | |
run: dir "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
shell: cmd | |
- name: MSBuild | |
working-directory: . | |
run: | | |
set /P FFMPEG_DIR=<ffmpeg_dir.txt | |
set /P LIBSDL_DIR=<sdl_dir.txt | |
call "%PROGRAMFILES%\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" | |
set INCLUDE=%INCLUDE%;%LIBFFMPEG_DIR%\include;%SDL_DIR%\include | |
set LIB=%LIB%;%FFMPEG_DIR%\lib;%SDL_DIR%\lib\x86 | |
msbuild pjproject-vs14.sln /p:PlatformToolset=v143 /p:Configuration=Release /p:Platform=win32 /p:UseEnv=true | |
shell: cmd |