Unverified Commit a8fa8209 authored by Nikolay Igotti's avatar Nikolay Igotti Committed by GitHub

Linux arm64 experimental support (#117)

parent 57fb5125
...@@ -289,13 +289,14 @@ tasks.withType(CppCompile::class.java).configureEach { ...@@ -289,13 +289,14 @@ tasks.withType(CppCompile::class.java).configureEach {
OS.Linux -> { OS.Linux -> {
compilerArgs.addAll( compilerArgs.addAll(
listOf( listOf(
"-fno-rtti",
"-fno-exceptions",
"-fvisibility=hidden", "-fvisibility=hidden",
"-fvisibility-inlines-hidden", "-fvisibility-inlines-hidden",
"-I$jdkHome/include/linux", "-I$jdkHome/include/linux",
"-I$includeDir", "-I$includeDir",
"-DSK_BUILD_FOR_LINUX", "-DSK_BUILD_FOR_LINUX",
"-D_GLIBCXX_USE_CXX11_ABI=0", "-D_GLIBCXX_USE_CXX11_ABI=0",
"-DSK_R32_SHIFT=16",
*buildType.clangFlags *buildType.clangFlags
) )
) )
...@@ -531,7 +532,7 @@ val maybeSign by project.tasks.registering { ...@@ -531,7 +532,7 @@ val maybeSign by project.tasks.registering {
doLast { doLast {
if (targetOs == OS.Linux) { if (targetOs == OS.Linux) {
// Linux requires additional sealing to run on wider set of platforms. // Linux requires additional sealing to run on wider set of platforms.
val sealer = "$projectDir/tools/sealer" val sealer = "$projectDir/tools/sealer-${hostArch.id}"
sealBinary(sealer, lib) sealBinary(sealer, lib)
} }
if (skiko.signHost != null) { if (skiko.signHost != null) {
......
...@@ -3,7 +3,8 @@ deploy.version=0.0.0 ...@@ -3,7 +3,8 @@ deploy.version=0.0.0
kotlin.native.version=1.5.10-eap-85 kotlin.native.version=1.5.10-eap-85
dependencies.skija.git.commit=adf4d3aac4402a32096cf0a79ed75a0dc82c796d dependencies.skija.git.commit=adf4d3aac4402a32096cf0a79ed75a0dc82c796d
dependencies.skia.windows-x64=m91-71fcb16fc2/Skia-m91-71fcb16fc2-windows-Release-x64 dependencies.skia.windows-x64=m91-1a01201b77/Skia-m91-1a01201b77-windows-Release-x64
dependencies.skia.linux-x64=m91-71fcb16fc2/Skia-m91-71fcb16fc2-linux-Release-x64-ubuntu14 dependencies.skia.linux-x64=m91-1a01201b77/Skia-m91-1a01201b77-linux-Release-x64-ubuntu14
dependencies.skia.macos-x64=m91-71fcb16fc2/Skia-m91-71fcb16fc2-macos-Release-x64 dependencies.skia.macos-x64=m91-1a01201b77/Skia-m91-1a01201b77-macos-Release-x64
dependencies.skia.macos-arm64=m91-71fcb16fc2/Skia-m91-71fcb16fc2-macos-Release-arm64 dependencies.skia.linux-arm64=m91-1a01201b77/Skia-m91-1a01201b77-linux-Release-arm64
dependencies.skia.macos-arm64=m91-1a01201b77/Skia-m91-1a01201b77-macos-Release-arm64
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#if defined(__GNUC__) && !defined(__clang__)
extern "C" void __attribute__((weak)) __warn_memset_zero_len() { extern "C" void __attribute__((weak)) __warn_memset_zero_len() {
fprintf(stderr, "__warn_memset_zero_len called\n"); fprintf(stderr, "__warn_memset_zero_len called\n");
abort(); abort();
} }
#endif
\ No newline at end of file
...@@ -26,8 +26,8 @@ internal class FPSCounter( ...@@ -26,8 +26,8 @@ internal class FPSCounter(
if ((time - lastLogTime) > periodSeconds.secondsToNanos()) { if ((time - lastLogTime) > periodSeconds.secondsToNanos()) {
val average = (nanosPerSecond / times.average()).roundToInt() val average = (nanosPerSecond / times.average()).roundToInt()
val min = (nanosPerSecond / times.max()!!).roundToInt() val min = (nanosPerSecond / times.maxOrNull()!!).roundToInt()
val max = (nanosPerSecond / times.min()!!).roundToInt() val max = (nanosPerSecond / times.minOrNull()!!).roundToInt()
println("[$timestamp] FPS $average ($min-$max)") println("[$timestamp] FPS $average ($min-$max)")
times.clear() times.clear()
lastLogTime = time lastLogTime = time
......
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