Skip to content

Commit 6fd1be9

Browse files
committed
Remove BuildInfo
1 parent 815282d commit 6fd1be9

7 files changed

Lines changed: 30 additions & 52 deletions

File tree

build.gradle.kts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import org.gradle.api.tasks.compile.JavaCompile
1414
import org.gradle.api.tasks.javadoc.Javadoc
1515
import org.gradle.api.tasks.testing.Test
1616
import org.gradle.external.javadoc.StandardJavadocDocletOptions
17+
import org.gradle.jvm.tasks.Jar
1718
import org.gradle.language.jvm.tasks.ProcessResources
1819
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
1920
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
@@ -311,16 +312,18 @@ project(":scip-java") {
311312
rename { "scip-kotlinc.jar" }
312313
}
313314
into(layout.buildDirectory.dir("generated/resources/embedded"))
314-
inputs.property("version", project.version.toString())
315-
doLast {
316-
destinationDir.resolve("scip-java.properties").writeText("version=${project.version}\n")
317-
}
318315
}
319316

320317
tasks.named<ProcessResources>("processResources") {
321318
from(generateEmbeddedResources)
322319
}
323320

321+
tasks.named<Jar>("jar") {
322+
manifest {
323+
attributes("Implementation-Version" to project.version)
324+
}
325+
}
326+
324327
val generateDistributionVersion = tasks.register("generateDistributionVersion") {
325328
val output = layout.buildDirectory.file("generated/distribution/VERSION")
326329
inputs.property("version", project.version.toString())

scip-java/src/main/kotlin/com/sourcegraph/scip_java/BuildInfo.kt

Lines changed: 0 additions & 39 deletions
This file was deleted.

scip-java/src/main/kotlin/com/sourcegraph/scip_java/Embedded.kt

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,16 @@ import java.nio.file.StandardCopyOption
88

99
object Embedded {
1010

11+
/** `javac` launcher flags required by the SCIP plugin to access internal javac APIs. */
12+
val javacModuleOptions: List<String> =
13+
listOf(
14+
"-J--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED",
15+
"-J--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED",
16+
"-J--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED",
17+
"-J--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED",
18+
"-J--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED",
19+
)
20+
1121
fun scipJar(tmpDir: Path): Path = copyFile(tmpDir, "scip-plugin.jar")
1222

1323
fun gradlePluginJar(tmpDir: Path): Path = copyFile(tmpDir, "gradle-plugin.jar")
@@ -32,7 +42,7 @@ object Embedded {
3242
val newJavacopts = tmp.resolve("javac_newarguments")
3343
// --add-exports flags required to access internal javac APIs from our
3444
// SCIP plugin. Always set; Java 11+ is the supported baseline.
35-
val javacModuleOptions = BuildInfo.javacModuleOptions.joinToString(" ")
45+
val javacModuleOptionsText = javacModuleOptions.joinToString(" ")
3646
val injectScipArguments =
3747
listOf(
3848
"java",
@@ -59,9 +69,11 @@ object Embedded {
5969
append("done\n")
6070
append(injectScipArguments).append('\n')
6171
append("if [ \${#LAUNCHER_ARGS[@]} -eq 0 ]; then\n")
62-
append(" javac $javacModuleOptions \"@\$NEW_JAVAC_OPTS\"\n")
72+
append(" javac $javacModuleOptionsText \"@\$NEW_JAVAC_OPTS\"\n")
6373
append("else\n")
64-
append(" javac $javacModuleOptions \"@\$NEW_JAVAC_OPTS\" \"\${LAUNCHER_ARGS[@]}\"\n")
74+
append(
75+
" javac $javacModuleOptionsText \"@\$NEW_JAVAC_OPTS\" \"\${LAUNCHER_ARGS[@]}\"\n"
76+
)
6577
append("fi\n")
6678
}
6779
Files.write(javac, script.toByteArray(StandardCharsets.UTF_8))

scip-java/src/main/kotlin/com/sourcegraph/scip_java/ScipJava.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ object ScipJava {
1010

1111
@JvmField val app: ScipJavaApp = ScipJavaApp()
1212

13+
val version: String by lazy {
14+
ScipJava::class.java.`package`?.implementationVersion ?: "0.0.0-SNAPSHOT"
15+
}
16+
1317
@JvmStatic
1418
fun main(args: Array<String>) {
1519
app.runAndExitIfNonZero(args.toList())

scip-java/src/main/kotlin/com/sourcegraph/scip_java/ScipJavaApp.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ class ScipJavaApp {
6565
reporter.reset()
6666
val processedArgs = applyGlobalCwd(rewriteNestedOptions(args))
6767
val root = RootCommand(this)
68-
root.versionOption(BuildInfo.version, names = setOf("--version", "-v"))
68+
root.versionOption(ScipJava.version, names = setOf("--version", "-v"))
6969
root.subcommands(IndexCommand(), AggregateCommand(), SnapshotCommand())
7070
return try {
7171
root.parse(processedArgs)

scip-java/src/main/kotlin/com/sourcegraph/scip_java/buildtools/ScipBuildTool.kt

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.sourcegraph.scip_java.buildtools
22

3-
import com.sourcegraph.scip_java.BuildInfo
43
import com.sourcegraph.scip_java.Embedded
54
import com.sourcegraph.scip_java.commands.IndexCommand
65
import java.io.File
@@ -300,13 +299,12 @@ class ScipBuildTool(index: IndexCommand) : BuildTool("SCIP", index) {
300299
}
301300
val javac = javacPath(config)
302301
index.app.reporter.info("$ $javac @$argsfile")
303-
val javacModuleOptions = BuildInfo.javacModuleOptions
304302
val jvmOptions = config.jvmOptions.map { "-J$it" }
305303

306304
val cmd = mutableListOf<String>()
307305
cmd += javac.toString()
308306
cmd += "@$argsfile"
309-
cmd += javacModuleOptions
307+
cmd += Embedded.javacModuleOptions
310308
cmd += jvmOptions
311309
val result =
312310
ProcessRunner.run(

scip-java/src/main/kotlin/com/sourcegraph/scip_java/commands/AggregateRunner.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package com.sourcegraph.scip_java.commands
22

33
import com.sourcegraph.scip_aggregator.ScipAggregator
44
import com.sourcegraph.scip_aggregator.ScipAggregatorOptions
5-
import com.sourcegraph.scip_java.BuildInfo
5+
import com.sourcegraph.scip_java.ScipJava
66
import com.sourcegraph.scip_java.ScipJavaApp
77
import com.sourcegraph.scip_java.buildtools.ClasspathEntry
88
import java.nio.file.Path
@@ -41,7 +41,7 @@ object AggregateRunner {
4141
absoluteOutput,
4242
sourceroot,
4343
app.reporter,
44-
ToolInfo.newBuilder().setName("scip-java").setVersion(BuildInfo.version).build(),
44+
ToolInfo.newBuilder().setName("scip-java").setVersion(ScipJava.version).build(),
4545
parallel,
4646
packages.map { it.toPackageInformation() },
4747
emitInverseRelationships,

0 commit comments

Comments
 (0)