@@ -94,20 +94,20 @@ val isRelease = !quickbuild && (
94
94
95
95
val entrypoint = " elide.tool.cli.ElideTool"
96
96
97
- val oracleGvm = true
97
+ val oracleGvm = false
98
98
val enableEdge = true
99
99
val enableWasm = true
100
- val enablePython = true
101
- val enableRuby = true
102
- val enableTools = true
100
+ val enablePython = false
101
+ val enableRuby = false
102
+ val enableTools = false
103
103
val enableMosaic = true
104
104
val enableProguard = false
105
105
val enableLlvm = false
106
- val enableEspresso = true
106
+ val enableEspresso = false
107
107
val enableExperimental = false
108
108
val enableEmbeddedResources = false
109
- val enableResourceFilter = true
110
- val enableAuxCache = true
109
+ val enableResourceFilter = false
110
+ val enableAuxCache = false
111
111
val enableJpms = false
112
112
val enableEmbeddedBuilder = false
113
113
val enableDashboard = false
@@ -122,7 +122,6 @@ val enableSbomStrict = false
122
122
val enableTruffleJson = enableEdge
123
123
val encloseSdk = ! System .getProperty(" java.vm.version" ).contains(" jvmci" )
124
124
val globalExclusions = emptyList<Pair <String , String >>()
125
-
126
125
val moduleExclusions = listOf (
127
126
" io.micronaut" to " micronaut-core-processor" ,
128
127
)
@@ -147,6 +146,7 @@ buildscript {
147
146
}
148
147
149
148
// @TODO(sgammon): mosaic is broken on kotlin v2
149
+
150
150
if (enableMosaic) apply (plugin = " com.jakewharton.mosaic" )
151
151
152
152
val nativesRootTemplate: (String ) -> String = { version ->
@@ -219,19 +219,6 @@ java {
219
219
if (enableJpms) modularity.inferModulePath = true
220
220
}
221
221
222
- // ktlint {
223
- // debug = false
224
- // verbose = false
225
- // android = false
226
- // outputToConsole = false
227
- // ignoreFailures = true
228
- // enableExperimentalRules = true
229
- //
230
- // filter {
231
- // exclude("elide/tool/cli/ToolTypealiases.kt")
232
- // }
233
- // }
234
-
235
222
kapt {
236
223
useBuildCache = true
237
224
includeCompileClasspath = false
@@ -242,7 +229,7 @@ kapt {
242
229
kotlin {
243
230
target.compilations.all {
244
231
kotlinOptions {
245
- allWarningsAsErrors = true
232
+ allWarningsAsErrors = false
246
233
freeCompilerArgs = freeCompilerArgs.plus(ktCompilerArgs).toSortedSet().toList()
247
234
248
235
// @TODO(sgammon): v2.0 support in this package (currently breaks mosaic)
@@ -291,6 +278,10 @@ val classpathExtras: Configuration by configurations.creating {
291
278
dependencies {
292
279
implementation(platform(libs.netty.bom))
293
280
281
+ // Fix: Missing Types
282
+ implementation(libs.jetty.npn)
283
+ implementation(libs.jetty.alpn)
284
+
294
285
kapt(mn.micronaut.inject.java)
295
286
kapt(libs.picocli.codegen)
296
287
classpathExtras(mn.micronaut.core.processor)
@@ -351,6 +342,7 @@ dependencies {
351
342
implementation(libs.jline.console)
352
343
implementation(libs.jline.terminal.core)
353
344
implementation(libs.jline.terminal.jansi)
345
+ implementation(libs.jline.terminal.jna)
354
346
implementation(libs.jline.builtins)
355
347
implementation(libs.jline.graal) {
356
348
exclude(group = " org.slf4j" , module = " slf4j-jdk14" )
@@ -443,17 +435,7 @@ dependencies {
443
435
444
436
api(libs.graalvm.polyglot)
445
437
api(libs.graalvm.js.language)
446
- api(libs.bundles.graalvm.tools)
447
- api(libs.graalvm.regex)
448
- compileOnly(libs.graalvm.svm)
449
-
450
- if (enableEspresso) {
451
- api(libs.bundles.graalvm.espresso)
452
- }
453
-
454
- api(libs.graalvm.truffle.nfi)
455
- api(libs.graalvm.truffle.nfi.libffi)
456
- // api(libs.graalvm.truffle.nfi.panama)
438
+ api(libs.graalvm.truffle.api)
457
439
runtimeOnly(mn.micronaut.runtime)
458
440
459
441
testImplementation(kotlin(" test" ))
@@ -646,10 +628,12 @@ tasks.withType(Test::class).configureEach {
646
628
* Build: CLI Native Image
647
629
*/
648
630
649
- val commonGvmArgs = listOf (
650
- " -H:+UseCompressedReferences" ,
631
+ val commonGvmArgs = listOfNotNull (
632
+ if ( ! oracleGvm) null else " -H:+UseCompressedReferences" ,
651
633
).plus(if (enableBuildReport) listOf (" -H:+BuildReport" ) else emptyList())
652
634
635
+ val nativeImageBuildDebug = properties[" nativeImageBuildDebug" ] == " true"
636
+
653
637
val commonNativeArgs = listOfNotNull(
654
638
" --no-fallback" ,
655
639
" --enable-preview" ,
@@ -665,7 +649,6 @@ val commonNativeArgs = listOfNotNull(
665
649
" -H:+AddAllCharsets" ,
666
650
" -H:DeadlockWatchdogInterval=15" ,
667
651
" -H:CLibraryPath=$nativesPath " ,
668
- " --trace-object-instantiation=java.nio.DirectByteBuffer" ,
669
652
if (enableEspresso) " -H:+AllowJRTFileSystem" else null ,
670
653
if (enableEspresso) " -J-Djdk.image.use.jvm.map=false" else null ,
671
654
if (enableEspresso) " -J-Despresso.finalization.UnsafeOverride=true" else null ,
@@ -686,6 +669,8 @@ val commonNativeArgs = listOfNotNull(
686
669
if (oracleGvm) commonGvmArgs else emptyList()
687
670
).plus(if (enableStrictHeap) listOf (
688
671
" --strict-image-heap" ,
672
+ ) else emptyList()).plus(if (nativeImageBuildDebug) listOf (
673
+ " --debug-attach" ,
689
674
) else emptyList()).toList()
690
675
691
676
val dashboardFlags: List <String > = listOf (
@@ -772,7 +757,7 @@ val releaseFlags: List<String> = listOf(
772
757
" --pgo=${profiles.joinToString(" ," )} " ,
773
758
" -H:CodeSectionLayoutOptimization=ClusterByEdges" ,
774
759
) else emptyList()).plus(listOf (
775
- if (enableSbom) listOf (
760
+ if (oracleGvm && enableSbom) listOf (
776
761
if (enableSbomStrict) " --enable-sbom=cyclonedx,export,strict" else " --enable-sbom=cyclonedx,export"
777
762
) else emptyList(),
778
763
if (enableDashboard) dashboardFlags else emptyList(),
@@ -870,37 +855,12 @@ val initializeAtBuildTime = listOf(
870
855
" com.google.common.collect.MapMakerInternalMap${' $' } 1" ,
871
856
" com.google.common.base.Equivalence${' $' } Equals" ,
872
857
873
- // SLF4J + Logback
874
- " ch.qos.logback" ,
875
- " org.slf4j.MarkerFactory" ,
876
- " org.slf4j.simple.SimpleLogger" ,
877
- " org.slf4j.impl.StaticLoggerBinder" ,
878
-
879
- // Encodings, Parsers, Cryptography
880
- " com.sun.tools.doclint" ,
881
- " org.codehaus.stax2.typed.Base64Variants" ,
882
- " org.bouncycastle.util.Properties" ,
883
- " org.bouncycastle.util.Strings" ,
884
- " org.bouncycastle.crypto.macs.HMac" ,
885
- " org.bouncycastle.crypto.prng.drbg.Utils" ,
886
- " org.bouncycastle.jcajce.provider.drbg.DRBG" ,
887
- " org.bouncycastle.jcajce.provider.drbg.EntropyDaemon" ,
888
- " org.xml.sax.helpers.LocatorImpl" ,
889
- " org.xml.sax.helpers.AttributesImpl" ,
890
- " jdk.jshell.Snippet${' $' } SubKind" ,
891
- " com.sun.tools.javac.parser.Tokens${' $' } TokenKind" ,
892
-
893
858
// Databasing
894
859
" org.sqlite.util.ProcessRunner" ,
895
860
896
- // Micronaut
897
- " io.micronaut.http.util.HttpTypeInformationProvider" ,
898
- " io.micronaut.inject.provider.ProviderTypeInformationProvider" ,
899
- " io.micronaut.core.async.ReactiveStreamsTypeInformationProvider" ,
900
- " io.micronaut.inject.beans.visitor.MapperAnnotationMapper" ,
901
- " io.micronaut.inject.beans.visitor.JsonCreatorAnnotationMapper" ,
902
- " io.micronaut.inject.beans.visitor.IntrospectedToBeanPropertiesTransformer" ,
903
- " io.micronaut.inject.beans.visitor.persistence.JakartaMappedSuperClassIntrospectionMapper" ,
861
+ // Logging
862
+ " ch.qos.logback" ,
863
+ " org.slf4j.MarkerFactory" ,
904
864
905
865
// --- Netty ------
906
866
@@ -1100,10 +1060,13 @@ val defaultPlatformArgs = listOf(
1100
1060
val windowsOnlyArgs = defaultPlatformArgs.plus(listOf (
1101
1061
" -march=native" ,
1102
1062
" --gc=serial" ,
1103
- " -Delide.vm.engine.preinitialize=true" ,
1104
1063
" -H:InitialCollectionPolicy=Adaptive" ,
1105
1064
" -R:MaximumHeapSizePercent=80" ,
1106
- ).plus(if (project.properties[" elide.ci" ] == " true" ) listOf (
1065
+ ).plus(if (oracleGvm) listOf (
1066
+ " -Delide.vm.engine.preinitialize=true" ,
1067
+ ) else listOf (
1068
+ " -Delide.vm.engine.preinitialize=false" ,
1069
+ )).plus(if (project.properties[" elide.ci" ] == " true" ) listOf (
1107
1070
" -J-Xmx12g" ,
1108
1071
) else emptyList())).plus(if (oracleGvm && enableAuxCache) listOf (
1109
1072
" -H:-AuxiliaryEngineCache" ,
@@ -1112,10 +1075,13 @@ val windowsOnlyArgs = defaultPlatformArgs.plus(listOf(
1112
1075
val darwinOnlyArgs = defaultPlatformArgs.plus(listOf (
1113
1076
" -march=native" ,
1114
1077
" --gc=serial" ,
1115
- " -Delide.vm.engine.preinitialize=true" ,
1116
1078
" -H:InitialCollectionPolicy=Adaptive" ,
1117
1079
" -R:MaximumHeapSizePercent=80" ,
1118
- ).plus(if (project.properties[" elide.ci" ] == " true" ) listOf (
1080
+ ).plus(if (oracleGvm) listOf (
1081
+ " -Delide.vm.engine.preinitialize=true" ,
1082
+ ) else listOf (
1083
+ " -Delide.vm.engine.preinitialize=false" ,
1084
+ )).plus(if (project.properties[" elide.ci" ] == " true" ) listOf (
1119
1085
" -J-Xmx12g" ,
1120
1086
) else listOf (
1121
1087
" -J-Xmx24g" ,
@@ -1162,11 +1128,11 @@ val linuxOnlyArgs = defaultPlatformArgs.plus(
1162
1128
" -Delide.vm.engine.preinitialize=false" ,
1163
1129
) else listOf (
1164
1130
" --gc=serial" ,
1165
- " -Delide.vm.engine.preinitialize=true" ,
1166
1131
" -R:MaximumHeapSizePercent=80" ,
1167
1132
" -H:InitialCollectionPolicy=Adaptive" ,
1168
1133
).plus(if (oracleGvm && enableAuxCache) listOf (
1169
1134
" -H:+AuxiliaryEngineCache" ,
1135
+ " -Delide.vm.engine.preinitialize=true" ,
1170
1136
) else emptyList())
1171
1137
).plus(if (project.properties[" elide.ci" ] == " true" ) listOf (
1172
1138
" -J-Xmx12g" ,
@@ -1191,8 +1157,6 @@ val muslArgs = listOf(
1191
1157
1192
1158
val testOnlyArgs: List <String > = emptyList()
1193
1159
1194
- val isEnterprise: Boolean = properties[" elide.graalvm.variant" ] == " ENTERPRISE"
1195
-
1196
1160
fun nativeCliImageArgs (
1197
1161
platform : String = "generic",
1198
1162
target : String = "glibc",
0 commit comments