Windows on ARM:

- changed DLL filename from aarch64 to arm64
- publish ARM DLL to Maven Central
This commit is contained in:
Karl Tauber
2023-08-05 16:11:46 +02:00
parent 502b18fa86
commit 52bae9dfb0
4 changed files with 10 additions and 7 deletions

View File

@@ -5,6 +5,8 @@ FlatLaf Change Log
#### New features and improvements #### New features and improvements
- FlatLaf window decorations: Support for Windows on ARM 64-bit. (issue #443, PR
#707)
- Extras: Class `FlatSVGIcon` now uses [JSVG](https://github.com/weisJ/jsvg) - Extras: Class `FlatSVGIcon` now uses [JSVG](https://github.com/weisJ/jsvg)
library (instead of svgSalamander) for rendering. JSVG provides improved SVG library (instead of svgSalamander) for rendering. JSVG provides improved SVG
rendering and uses less memory compared to svgSalamander. (PR #684) rendering and uses less memory compared to svgSalamander. (PR #684)

View File

@@ -129,6 +129,7 @@ flatlafPublish {
nativeArtifacts = listOf( nativeArtifacts = listOf(
NativeArtifact( "${natives}/flatlaf-windows-x86.dll", "windows-x86", "dll" ), NativeArtifact( "${natives}/flatlaf-windows-x86.dll", "windows-x86", "dll" ),
NativeArtifact( "${natives}/flatlaf-windows-x86_64.dll", "windows-x86_64", "dll" ), NativeArtifact( "${natives}/flatlaf-windows-x86_64.dll", "windows-x86_64", "dll" ),
NativeArtifact( "${natives}/flatlaf-windows-arm64.dll", "windows-arm64", "dll" ),
NativeArtifact( "${natives}/libflatlaf-linux-x86_64.so", "linux-x86_64", "so" ), NativeArtifact( "${natives}/libflatlaf-linux-x86_64.so", "linux-x86_64", "so" ),
) )
} }

View File

@@ -55,12 +55,12 @@ class FlatNativeLibrary
String classifier; String classifier;
String ext; String ext;
if( SystemInfo.isWindows_10_orLater ) { if( SystemInfo.isWindows_10_orLater && (SystemInfo.isX86 || SystemInfo.isX86_64 || SystemInfo.isAARCH64) ) {
// Windows: requires Windows 10/11 // Windows: requires Windows 10/11 (x86, x86_64 or aarch64)
if ( SystemInfo.isAARCH64 ) if( SystemInfo.isAARCH64 )
classifier = "windows-aarch64"; classifier = "windows-arm64";
else if ( SystemInfo.isX86_64 ) else if( SystemInfo.isX86_64 )
classifier = "windows-x86_64"; classifier = "windows-x86_64";
else else
classifier = "windows-x86"; classifier = "windows-x86";

View File

@@ -29,7 +29,7 @@ flatlafJniHeaders {
} }
library { library {
targetMachines.set( listOf( machines.windows.x86, machines.windows.x86_64, machines.windows.architecture("aarch64") ) ) targetMachines.set( listOf( machines.windows.x86, machines.windows.x86_64, machines.windows.architecture( "aarch64" ) ) )
} }
var javaHome = System.getProperty( "java.home" ) var javaHome = System.getProperty( "java.home" )
@@ -71,7 +71,7 @@ tasks {
val nativesDir = project( ":flatlaf-core" ).projectDir.resolve( "src/main/resources/com/formdev/flatlaf/natives" ) val nativesDir = project( ":flatlaf-core" ).projectDir.resolve( "src/main/resources/com/formdev/flatlaf/natives" )
val isX86 = name.contains("X86") val isX86 = name.contains("X86")
val is64Bit = name.contains( "64" ) val is64Bit = name.contains( "64" )
val libraryName = if( is64Bit && isX86 ) "flatlaf-windows-x86_64.dll" else if( isX86 ) "flatlaf-windows-x86.dll" else "flatlaf-windows-aarch64.dll" val libraryName = if( is64Bit && isX86 ) "flatlaf-windows-x86_64.dll" else if( isX86 ) "flatlaf-windows-x86.dll" else "flatlaf-windows-arm64.dll"
linkerArgs.addAll( toolChain.map { linkerArgs.addAll( toolChain.map {
when( it ) { when( it ) {