75 строки
1.7 KiB
YAML
75 строки
1.7 KiB
YAML
jobs:
|
|
- job: SkiaLib_WebAssembly
|
|
container: unoplatform/wasm-build:2.1.1
|
|
|
|
pool:
|
|
vmImage: 'ubuntu-latest'
|
|
|
|
strategy:
|
|
matrix:
|
|
1_39_11:
|
|
EMSCRIPTEN_VERSION: 1.39.11
|
|
|
|
1_40_0:
|
|
EMSCRIPTEN_VERSION: 1.40.0
|
|
|
|
2_0_5:
|
|
EMSCRIPTEN_VERSION: 2.0.5
|
|
|
|
2_0_6:
|
|
EMSCRIPTEN_VERSION: 2.0.6
|
|
|
|
2_0_9:
|
|
EMSCRIPTEN_VERSION: 2.0.9
|
|
|
|
2_0_11:
|
|
EMSCRIPTEN_VERSION: 2.0.11
|
|
|
|
steps:
|
|
- checkout: self
|
|
clean: true
|
|
submodules: recursive
|
|
|
|
- bash: |
|
|
cd ~
|
|
echo Installing emscripten $(EMSCRIPTEN_VERSION)
|
|
git clone --branch $(EMSCRIPTEN_VERSION) https://github.com/emscripten-core/emsdk
|
|
cd ~/emsdk
|
|
./emsdk install $(EMSCRIPTEN_VERSION)
|
|
./emsdk activate $(EMSCRIPTEN_VERSION)
|
|
|
|
displayName: 'Setup Emscripten'
|
|
|
|
- bash: |
|
|
cd $(build.sourcesdirectory)/externals/skia
|
|
python tools/git-sync-deps
|
|
./bin/fetch-gn
|
|
|
|
displayName: Sources Setup
|
|
|
|
- bash: |
|
|
cd $(build.sourcesdirectory)/externals/skia
|
|
source ~/emsdk/emsdk_env.sh
|
|
$(build.sourcesdirectory)/scripts/wasm-generate.sh
|
|
|
|
displayName: 'Running build'
|
|
env:
|
|
BUILD_SOURCESDIRECTORY: "$(build.sourcesdirectory)"
|
|
|
|
- task: CopyFiles@2
|
|
displayName: 'Publish Wasm Binaries'
|
|
inputs:
|
|
SourceFolder: $(build.sourcesdirectory)/externals/skia/out/canvaskit_wasm
|
|
Contents: 'libSkiaSharp.a'
|
|
TargetFolder: $(build.artifactstagingdirectory)/libSkiaSharp.a/$(EMSCRIPTEN_VERSION)
|
|
CleanTargetFolder: false
|
|
OverWrite: false
|
|
flattenFolders: false
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
condition: always()
|
|
inputs:
|
|
PathtoPublish: $(build.artifactstagingdirectory)
|
|
ArtifactName: canvaskit_wasm
|
|
ArtifactType: Container
|