Skiasharp: FeatureRequest-Build skia to UWP from source steps

Created on 7 Jul 2017  路  5Comments  路  Source: mono/SkiaSharp

Hello Guys,

Could you please share the steps of building skia from SKIA source to universal windows platform ?

Any help, tips is appreciated.

Most helpful comment

To get the latest source, I have to merge from upstream into our skia fork. I want to do that very soon. It is mostly a painless operation, but Google often changes a few types :) changes values of enums :) and deprecates/removes members :) It typically takes a day or so.

The version number that I release as "stable" is the version that Chrome has as "stable". Right now it is 59. It typically works as "master" => alpha; "master-1 (m60)" => beta; "master-2 (m59)" => stable (after a few days)

All 5 comments

You should be able to run the externals-uwp task to get the native bits:

> .\bootstrapper.ps1 -Target externals-uwp

To do all the bits (the managed bits as well as the native bits), you can run the libs task:

> .\bootstrapper.ps1 -Target libs

This is what we run on CI. Let me know if this is what you are looking for, or if you are looking for something more specific.

First, thank you so much for your responce.

I'm trying to get SKIA source (Latest source) and build it to UWP.
I found you guys already support this..... but need to build the latest from source, so I thought there might be a steps to do it here.

you can check out SkiaSharp (make sure the submodules come too) and then run the commands above.
The actual C/C++ source lives here: https://github.com/mono/skia/tree/xamarin-mobile-bindings
And the actual commands that are run in the externals-uwp target are here: https://github.com/mono/SkiaSharp/blob/master/cake/BuildExternals.cake#L165-L189

As for some real docs, I do need to get around to that.

To get the latest source, I have to merge from upstream into our skia fork. I want to do that very soon. It is mostly a painless operation, but Google often changes a few types :) changes values of enums :) and deprecates/removes members :) It typically takes a day or so.

The version number that I release as "stable" is the version that Chrome has as "stable". Right now it is 59. It typically works as "master" => alpha; "master-1 (m60)" => beta; "master-2 (m59)" => stable (after a few days)

Closing this issue as the steps are really just .\bootstrapper.ps1 -t externals-uwp. For the merging bits, it is a bit of work and not really a step-by-step process. Each change and conflict has to be addressed like any codebase.

Was this page helpful?
0 / 5 - 0 ratings