58 lines
1.8 KiB
Groovy
58 lines
1.8 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'maven-publish'
|
|
id 'signing'
|
|
}
|
|
|
|
task sourcesJar(type: Jar, dependsOn: classes) {
|
|
archiveClassifier.set('sources')
|
|
from sourceSets.main.allSource
|
|
}
|
|
|
|
task javadocJar(type: Jar, dependsOn: javadoc) {
|
|
archiveClassifier.set('javadoc')
|
|
from javadoc.destinationDir
|
|
}
|
|
|
|
def packageName = 'imgui-java-natives-linux'
|
|
def packageDesc = 'Native binaries for imgui-java binding for 64bit Linux'
|
|
def libName = 'libimgui-java64.so'
|
|
|
|
if (System.getProperty('deployWin32')) {
|
|
packageName = 'imgui-java-natives-windows-x86'
|
|
packageDesc = 'Native binaries for imgui-java binding for 32bit Windows'
|
|
libName = 'imgui-java.dll'
|
|
} else if (System.getProperty('deployWin64')) {
|
|
packageName = 'imgui-java-natives-windows'
|
|
packageDesc = 'Native binaries for imgui-java binding for 64bit Windows'
|
|
libName = 'imgui-java64.dll'
|
|
} else if (System.getProperty('deployLinux32')) {
|
|
packageName = 'imgui-java-natives-linux-x86'
|
|
packageDesc = 'Native binaries for imgui-java binding for 32bit Linux'
|
|
libName = 'libimgui-java.so'
|
|
} else if (System.getProperty('deployLinux64')) {
|
|
packageName = 'imgui-java-natives-linux'
|
|
packageDesc = 'Native binaries for imgui-java binding for 64bit Linux'
|
|
libName = 'libimgui-java64.so'
|
|
} else if (System.getProperty('deployMacOs64')) {
|
|
packageName = 'imgui-java-natives-macos'
|
|
packageDesc = 'Native binaries for imgui-java binding for 64bit MacOS'
|
|
libName = 'libimgui-java64.dylib'
|
|
}
|
|
|
|
if (System.getProperty('freetype')) {
|
|
packageName += 'ft'
|
|
packageDesc += 'with Freetype support'
|
|
libName = 'freetype/' + libName
|
|
}
|
|
|
|
jar {
|
|
from('../bin') {
|
|
include "$libName" // it's ok
|
|
into 'io/imgui/java/native-bin/'
|
|
}
|
|
}
|
|
|
|
apply from: "$rootDir/publish.gradle"
|
|
configurePublishing(packageName, packageDesc)
|