Skip to content

TODO: only remove for arm64? #116

TODO: only remove for arm64?

TODO: only remove for arm64? #116

Workflow file for this run

name: CI
on:
push:
pull_request:
jobs:
LibVLC_iOS_NuGet:
if: github.event_name == 'push' || github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id
runs-on: macos-10.15
steps:
- name: Checkout
uses: actions/checkout@v2
- name: LibVLC iOS build
shell: bash
run: |
git clone https://github.com/videolan/vlckit
cd vlckit && git checkout 3.0
./buildMobileVLCKit.sh -f
patchBinary () {
install_name_tool -id @rpath/DynamicMobileVLCKit.framework/DynamicMobileVLCKit MobileVLCKit
defaults write $(pwd)/Info.plist CFBundleExecutable -string DynamicMobileVLCKit
defaults write $(pwd)/Info.plist CFBundleName -string DynamicMobileVLCKit
defaults write $(pwd)/Info.plist CFBundleIdentifier -string org.videolan.DynamicMobileVLCKit
mv MobileVLCKit DynamicMobileVLCKit
cd ..
mv MobileVLCKit.framework DynamicMobileVLCKit.framework
cd ..
}
cd build/MobileVLCKit.xcframework/ios-arm64_armv7_armv7s/MobileVLCKit.framework
patchBinary
cd ios-arm64_i386_x86_64-simulator/MobileVLCKit.framework
patchBinary
mkdir -p $GITHUB_WORKSPACE/build/ios-device
mkdir -p $GITHUB_WORKSPACE/build/ios-simulator
mv ios-arm64_armv7_armv7s/DynamicMobileVLCKit.framework $GITHUB_WORKSPACE/build/ios-device
mv ios-arm64_i386_x86_64-simulator/DynamicMobileVLCKit.framework $GITHUB_WORKSPACE/build/ios-simulator
- name: Setup NuGet
uses: nuget/setup-nuget@v1
with:
nuget-version: '5.x'
- name: Create LibVLC iOS NuGet package
run: |
nuget pack VideoLAN.LibVLC.iOS.nuspec
- name: Upload build
uses: actions/upload-artifact@v2
with:
name: libvlc-ios-build
path: ./*.nupkg
UWP_access_v3:
if: github.event_name == 'push' || github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id
strategy:
matrix:
arch: [x64, x86, arm]
runs-on: windows-latest
steps:
- name: Checkout libvlc uwp access module code
shell: bash
run: |
git clone https://code.videolan.org/mfkl/vlc-winrt && cd vlc-winrt && git checkout uwp-access-v3
mkdir -p libvlc/Universal/vlc-${{ matrix.arch }}/Release
- name: Download VLC headers
uses: azure/powershell@v1
with:
inlineScript: |
Invoke-WebRequest -Uri "https://code.videolan.org/videolan/vlc/-/archive/3.0.x/vlc-3.0.x.zip" -OutFile "vlc-3.0.x.zip"
azPSVersion : '3.1.0'
- name: Extract LibVLC
shell: bash
run: |
7z x vlc-3.0.x.zip -ovlc
mv vlc/vlc-3.0.x/include vlc-winrt/libvlc/Universal/vlc-${{ matrix.arch }}/Release
- name: Add msbuild to PATH
uses: microsoft/[email protected]
- name: MSBuild x64/ARM
if: matrix.arch != 'x86'
working-directory: vlc-winrt/modules/libaccess_winrt_plugin.UWP
run: msbuild libaccess_winrt_plugin.UWP.vcxproj /p:Configuration=Release /p:Platform=${{ matrix.arch }}
- name: MSBuild x86
if: matrix.arch == 'x86'
working-directory: vlc-winrt/modules/libaccess_winrt_plugin.UWP
run: msbuild libaccess_winrt_plugin.UWP.vcxproj /p:Configuration=Release /p:Platform=Win32
- name: Upload build
uses: actions/upload-artifact@v2
with:
name: libvlc-uwp-access-build-${{ matrix.arch }}
path: vlc-winrt/modules/libaccess_winrt_plugin.UWP/Release/libaccess_winrt_plugin.UWP
UWP_NuGet:
if: github.event_name == 'push' || github.event.pull_request.head.repo.id != github.event.pull_request.base.repo.id
runs-on: ubuntu-latest
needs: UWP_access_v3
steps:
- uses: actions/checkout@v2
- uses: actions/download-artifact@v2
- name: Download NuGet
shell: bash
run: |
wget https://dist.nuget.org/win-x86-commandline/v5.11.0/nuget.exe
- name: Create NuGet folders
shell: bash
run: |
mkdir -p build/win10-arm/native
mkdir -p build/win10-x64/native
mkdir -p build/win10-x86/native
- name: Download and extract UWP builds
env:
VLC_VERSION: 3.0.16
shell: bash
run: |
wget -O arm.zip https://code.videolan.org/videolan/libvlc-nuget/-/jobs/artifacts/master/download?job=uwp-arm
wget -O x86.zip https://code.videolan.org/videolan/libvlc-nuget/-/jobs/artifacts/master/download?job=uwp-x86
wget -O x64.zip https://code.videolan.org/videolan/libvlc-nuget/-/jobs/artifacts/master/download?job=uwp-x64
7z x arm.zip -oarm -y
7z x arm/vlc/winarm-uwp/vlc-$VLC_VERSION-win32.7z -oarm/vlc/winarm-uwp -y
7z x x86.zip -ox86 -y
7z x x86/vlc/win32-uwp/vlc-$VLC_VERSION-win32.7z -ox86/vlc/win32-uwp -y
7z x x64.zip -ox64 -y
7z x x64/vlc/win64-uwp/vlc-$VLC_VERSION-win64.7z -ox64/vlc/win64-uwp -y
mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/lua build/win10-arm/native
mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/plugins build/win10-arm/native
mv libvlc-uwp-access-build-arm/libaccess_winrt_plugin.dll build/win10-arm/native/plugins/access
mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/sdk build/win10-arm/native
mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/libvlc.dll build/win10-arm/native
mv arm/vlc/winarm-uwp/vlc-$VLC_VERSION/libvlccore.dll build/win10-arm/native
mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/lua build/win10-x86/native
mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/plugins build/win10-x86/native
mv libvlc-uwp-access-build-x86/libaccess_winrt_plugin.dll build/win10-x86/native/plugins/access
mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/sdk build/win10-x86/native
mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/libvlc.dll build/win10-x86/native
mv x86/vlc/win32-uwp/vlc-$VLC_VERSION/libvlccore.dll build/win10-x86/native
mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/lua build/win10-x64/native
mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/plugins build/win10-x64/native
mv libvlc-uwp-access-build-x64/libaccess_winrt_plugin.dll build/win10-x64/native/plugins/access
mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/sdk build/win10-x64/native
mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/libvlc.dll build/win10-x64/native
mv x64/vlc/win64-uwp/vlc-$VLC_VERSION/libvlccore.dll build/win10-x64/native
- name: Package NuGet
shell: bash
run: |
mono nuget.exe pack VideoLAN.LibVLC.UWP.nuspec
- name: Upload NuGet package
uses: actions/upload-artifact@v2
with:
name: libvlc-uwp
path: '*.nupkg'