Commit 45ea6466 authored by Nikolay Igotti's avatar Nikolay Igotti

Simple native method.

parent c409f0bb
......@@ -6,7 +6,8 @@ plugins {
group = "org.jetbrains.skiko"
version = "0.1-SNAPSHOT"
val skiaDir = System.getenv("SKIA_DIR") ?: throw Error("Set SKIA_DIR env variable!")
val skiaDir = System.getenv("SKIA_DIR") ?: "/Users/igotti/compose/skija/third_party/skia"
val hostOs = System.getProperty("os.name")
val target = when {
hostOs == "Mac OS X" -> "macos"
......@@ -146,6 +147,13 @@ val skikoArtifact = artifacts.add("archives", file(skikoJarFile)) {
builtBy("skikoJar")
}
project.tasks.register<JavaExec>("run") {
dependsOn("skikoJar")
main = "org.jetbrains.skiko.MainKt"
classpath = files(skikoJarFile)
}
publishing {
publications {
create<MavenPublication>("skiko") {
......
package org.jetbrains.skiko
fun main() {
println(SkiaWindow().nativeMethod(41))
}
\ No newline at end of file
package org.jetbrains.skiko
import org.jetbrains.skija.Library
class SkiaWindow {
companion object {
init {
Library.load("/", "skiko")
}
}
external fun nativeMethod(param: Long): Long
}
#include <jni.h>
extern "C" JNIEXPORT jlong JNICALL Java_org_jetbrains_skiko_SkiaWindow_nativeMethod
(JNIEnv* env, jobject thiz, jlong param) {
return param + 1;
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment