From 80d237948eef017b950f5a3392aeebd6f47c5b32 Mon Sep 17 00:00:00 2001 From: Devin Smith Date: Wed, 25 May 2022 10:43:23 -0700 Subject: [PATCH] Add gradle property for toolchain vendors (#2433) compilerVendor, runtimeVendor, and testRuntimeVendor --- ...deephaven.java-toolchain-conventions.gradle | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/buildSrc/src/main/groovy/io.deephaven.java-toolchain-conventions.gradle b/buildSrc/src/main/groovy/io.deephaven.java-toolchain-conventions.gradle index a15a9a897f2..98f3061a498 100644 --- a/buildSrc/src/main/groovy/io.deephaven.java-toolchain-conventions.gradle +++ b/buildSrc/src/main/groovy/io.deephaven.java-toolchain-conventions.gradle @@ -5,12 +5,15 @@ plugins { } def compilerVersion = Integer.parseInt((String)project.findProperty('compilerVersion') ?: '11') +def compilerVendor = project.hasProperty('compilerVendor') ? JvmVendorSpec.matching((String)project.property('compilerVendor')): null def languageLevel = Integer.parseInt((String)project.findProperty('languageLevel') ?: '11') def runtimeVersion = Integer.parseInt((String)project.findProperty('runtimeVersion') ?: '11') +def runtimeVendor = project.hasProperty('runtimeVendor') ? JvmVendorSpec.matching((String)project.property('runtimeVendor')): null def testLanguageLevel = Integer.parseInt((String)project.findProperty('testLanguageLevel') ?: '11') def testRuntimeVersion = Integer.parseInt((String)project.findProperty('testRuntimeVersion') ?: '11') +def testRuntimeVendor = project.hasProperty('testRuntimeVendor') ? JvmVendorSpec.matching((String)project.property('testRuntimeVendor')): null if (languageLevel > compilerVersion) { throw new IllegalArgumentException("languageLevel must be less than or equal to compileVersion") @@ -33,23 +36,38 @@ java { // Note: even though we are being explicit with our compilers / launchers via task type, we want to set up the // plugin with our compiler version. languageVersion = JavaLanguageVersion.of(compilerVersion) + if (compilerVendor != null) { + vendor = compilerVendor + } } } def compiler = javaToolchains.compilerFor { languageVersion = JavaLanguageVersion.of(compilerVersion) + if (compilerVendor != null) { + vendor = compilerVendor + } } as Provider def runtimeLauncher = javaToolchains.launcherFor { languageVersion = JavaLanguageVersion.of(runtimeVersion) + if (runtimeVendor != null) { + vendor = runtimeVendor + } } as Provider def testRuntimeLauncher = javaToolchains.launcherFor { languageVersion = JavaLanguageVersion.of(testRuntimeVersion) + if (testRuntimeVendor != null) { + vendor = testRuntimeVendor + } } as Provider def groovyCompilerLauncher = javaToolchains.launcherFor { languageVersion = JavaLanguageVersion.of(compilerVersion) + if (compilerVendor != null) { + vendor = compilerVendor + } } as Provider tasks.withType(JavaCompile).configureEach {