Skip to content

Update libxml2 to v2.13.4 (#125) #234

Update libxml2 to v2.13.4 (#125)

Update libxml2 to v2.13.4 (#125) #234

Workflow file for this run

name: GitHub CI
on:
push:
pull_request:
workflow_dispatch: #
jobs:
build-linux:
runs-on: ubuntu-latest
steps:
- name: Git checkout
uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install cmake git ninja-build checkinstall
sudo apt-get install -y --no-install-recommends build-essential g++ gcc libass-dev pkg-config
git clone https://github.com/AviSynth/AviSynthPlus avsplus
cd avsplus
cmake -G "Ninja" -B avisynth-build -S .
cd avisynth-build
ninja
sudo checkinstall --pkgname=avisynth --pkgversion="$(grep -r Version avs_core/avisynth.pc | cut -f2 -d " ")-$(date --rfc-3339=date | sed 's/-//g')-git" --backup=no --deldoc=yes --delspec=yes --deldesc=yes --strip=yes --stripso=yes --addso=yes --fstrans=no --default ninja install
- name: Build binary
run: |
cmake -B build -S .
cmake --build build --clean-first
- name: Copy binary
run: cmake -E copy "build/src/libassrender.so" "dist/libassrender.so"
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: assrender_bin_linux
path: dist
build-win:
runs-on: windows-latest
steps:
- name: Git checkout
uses: actions/checkout@v4
- name: Pull submodules
run: |
git submodule update --init --recursive
mkdir avsplus
# - name: Install MSYS2 with dependencies
# uses: msys2/setup-msys2@v2
# with:
# update: true
# install: base-devel git mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-libass
# msystem: MINGW64
# path-type: inherit
- name: Parse AviSynth+ release metadata
uses: actions/github-script@v7
with:
script: |
const req = await github.request('https://api.github.com/repos/avisynth/avisynthplus/releases');
const data = req.data;
let link = '';
for(let rel of data){
if(rel.prerelease||rel.draft){
continue;
}
for(let asset of rel.assets){
if(asset.name.match(/-filesonly.7z$/i)){
link = asset.browser_download_url;
}
}
if(link != ''){
break;
}
}
core.exportVariable('PACKAGE_URL', link);
- name: Download AviSynth+ latest release
run: curl -L "${{ env.PACKAGE_URL }}" --create-dirs -o "./avsplus/avisynthplus-latest-filesonly.7z"
- name: Move libs files
run: |
7z e "avsplus\*-filesonly.7z" -o"lib\x86-32" "*\x86\Output\c_api\AviSynth.lib"
7z e "avsplus\*-filesonly.7z" -o"lib\x86-64" "*\x64\Output\c_api\AviSynth.lib"
- name: Add MSBuild to PATH
uses: microsoft/setup-msbuild@v2
with:
msbuild-architecture: x64
- name: Prepare NASM
uses: ilammy/setup-nasm@v1
- name: Setup VSYASM and VSNASM
run: |
git clone https://github.com/ShiftMediaProject/VSYASM.git
.\VSYASM\install_script.bat
git clone https://github.com/ShiftMediaProject/VSNASM.git
.\VSNASM\install_script.bat
- name: Build binaries
shell: cmd
run: |
set NASMPATH=%USERPROFILE%\nasm\
MSBuild.exe /t:Rebuild /p:PlatformToolset=v143 /m /p:Configuration=Release /p:Platform=x86
MSBuild.exe /t:Rebuild /p:PlatformToolset=v143 /m /p:Configuration=Release /p:Platform=x64
# - name: Build MINGW64 binary
# shell: msys2 {0}
# run: |
# cmake -G "MinGW Makefiles" -B build -S .
# cmake --build build --config Release --clean-first
- name: Copy x86 binary
run: cmake -E copy "bin\Release_Win32\assrender.dll" "dist\Release_x86\assrender.dll"
- name: Copy x64 binary
run: cmake -E copy "bin\Release_x64\assrender.dll" "dist\Release_x64\assrender.dll"
# - name: Copy MINGW64 binary
# run: cmake -E copy "build\src\assrender.dll" "dist\Release_MINGW64\assrender.dll"
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: assrender_bin_win
path: dist