Files
RobotandClaude Sonnet 4.6 c755c9a86b
CI / Build Java (push) Has been cancelled
CI / Build Native (macos-latest - macos) (push) Has been cancelled
CI / Build Native (ubuntu-latest - linux) (push) Has been cancelled
CI / Build Native (ubuntu-latest - windows) (push) Has been cancelled
CI / Archive Natives (push) Has been cancelled
CI / Update Binaries (push) Has been cancelled
CI / Release (push) Has been cancelled
chore: bump to +mrlokop4, rebuild natives with real UTF-8 jni_common fix
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-20 12:18:51 +03:00

70 lines
2.3 KiB
Groovy

import tool.generator.ast.task.GenerateAst
import java.text.SimpleDateFormat
ext {
lwjglVersion = '3.3.6'
}
allprojects {
group = 'imgui-java'
version = '1.90.0-wchar32+mrlokop4'
repositories {
mavenCentral()
}
tasks.withType(Jar).tap {
configureEach {
from(project.rootDir) {
include 'LICENSE'
into 'META-INF'
}
def jdkMetadata = tasks.withType(JavaCompile).find().javaCompiler.get().metadata
def buildJdk = "${jdkMetadata.javaRuntimeVersion} (${jdkMetadata.vendor})".toString()
manifest {
attributes (
'Implementation-Title': project.name,
'Implementation-Version': project.version,
'Build-Timestamp': new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ").format(System.currentTimeMillis()),
'Build-Revision': 'git rev-parse HEAD'.execute().text.trim(),
'Build-Jdk': buildJdk,
'Source-Compatibility': tasks.withType(JavaCompile).find().sourceCompatibility,
'Target-Compatibility': tasks.withType(JavaCompile).find().targetCompatibility,
'Created-By': "Gradle ${gradle.gradleVersion} "
)
}
}
}
}
tasks.register('buildAll') { t ->
t.group = 'build'
t.description = 'Build all project sources.'
t.dependsOn ':imgui-app:shadowJar'
['app', 'binding', 'lwjgl3'].each { module ->
['build', 'sourcesJar', 'javadocJar'].each { task ->
t.dependsOn ":imgui-$module:$task"
}
}
}
tasks.register('generateAst', GenerateAst) {
headerFiles = [
file('include/imgui/imgui.h'),
file('include/imgui/imgui_internal.h'),
file('include/imgui/misc/freetype/imgui_freetype.h'),
file('include/ImGuiFileDialog/ImGuiFileDialog.h'),
file('include/imgui-knobs/imgui-knobs.h'),
file('include/imguizmo/ImGuizmo.h'),
file('include/imnodes/imnodes.h'),
file('include/implot/implot.h'),
file('include/imgui-node-editor/imgui_node_editor.h'),
file('include/ImGuiColorTextEdit/TextEditor.h'),
]
}