Files
2c092f8751 Add k/wasm support (#831)
* add k/wasm support

* ES6 for skiko wasm

Fix build files

Add SkikoCallbacks external funs

Add GL external object

* cleanup

* Update SkiaMultiplatformSample Composite build to run with k/wasm

* Update SkiaJsSample

* Update CI config

* cleanup

* Fix CI

* Add -O2 flag to emcc link stage

* cleanup

* cleanup

* update wasm.yml

* update maven repositories

* fixes after rebase

* enable supportJs when supportWasm is true

* Add a temporary coroutines version substitution for non-wasm

* Apply PR review suggestions

* Use coroutines 1.8.0-RC

* Workaround an issue with atomicfu 0.23.1 - Add an explicit dependency on atomicfu from nativeMain

* Fix typo

* Renamed SKIKO_COMPOSITE_BUILD to skiko.composite.build in SkiaJsSample

* Remove wasm/experimental maven repo

* Remove wasm/experimental maven repo

* Add wasmArtifactId to skikoArtifactIds

* Remove redundant comment

---------

Co-authored-by: igoriakovlev <54274820+igoriakovlev@users.noreply.github.com>
Co-authored-by: Ilya Goncharov <ilya.goncharov@jetbrains.com>
Co-authored-by: Oleksandr Karpovich <oleksandr.karpovich@jetbrains.com>
2023-12-06 16:32:23 +01:00
..
2023-12-06 16:32:23 +01:00
2023-12-06 16:32:23 +01:00
2023-12-06 16:32:23 +01:00
2021-10-21 10:43:25 +03:00
2023-12-06 16:32:23 +01:00
2023-12-06 16:32:23 +01:00

Skia multiplatform samples

run iOS with Xcode

  • Install xcodegen
  • run xcodegen
  • run open SkikoSample.xcodeproj

run iOS with debug in AppCode

  • If you need to debug skiko sources without publish to maven local, then set a gradle property skiko.composite.build=1 (see gradle.properties)
  • Install KMM plugin for AppCode
  • In AppCode open samples/SkiaMultiplatformSample (File -> Open). Choose "Open as Project". import-build-gradle-project.png
  • Set target device and Run ios-run-in-appcode.png
  • Now you may use breakpoints in common and native Kotlin code

run on browser:

  • ./gradlew jsBrowserRun

run desktop awt:

  • ./gradlew runAwt

run desktop on native MacOS

  • ./gradlew runNative