106 lines
3.1 KiB
Groovy
106 lines
3.1 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'org.jetbrains.intellij' version '1.9.0'
|
|
id 'org.jetbrains.kotlin.jvm' version '1.7.20'
|
|
id 'jacoco'
|
|
id 'com.github.kt3k.coveralls' version '2.12.0'
|
|
}
|
|
|
|
group = 'de.platon42'
|
|
version = '0.10'
|
|
sourceCompatibility = "1.8"
|
|
targetCompatibility = "1.8"
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
/*
|
|
To run tests in IntelliJ use these VM Options for run configuration
|
|
-ea -Didea.system.path=build/idea-sandbox/system-test -Didea.config.path=build/idea-sandbox/config-test -Didea.plugins.path=build/idea-sandbox/plugins-test
|
|
*/
|
|
|
|
dependencies {
|
|
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
|
|
testImplementation 'org.assertj:assertj-core:3.23.1'
|
|
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.9.0'
|
|
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.9.0'
|
|
testImplementation "org.jetbrains.kotlin:kotlin-test"
|
|
testImplementation "org.jetbrains.kotlin:kotlin-reflect"
|
|
testImplementation 'org.junit.platform:junit-platform-launcher:1.9.0'
|
|
// testImplementation "org.jetbrains.kotlin:kotlin-test-junit"
|
|
}
|
|
|
|
compileKotlin {
|
|
kotlinOptions {
|
|
jvmTarget = "1.8"
|
|
freeCompilerArgs += "-Xjvm-default=all"
|
|
}
|
|
}
|
|
|
|
compileTestKotlin {
|
|
kotlinOptions.jvmTarget = "1.8"
|
|
}
|
|
|
|
intellij {
|
|
setVersion("2022.2.3") // LATEST-EAP-SNAPSHOT
|
|
setUpdateSinceUntilBuild(false)
|
|
// setPlugins(["com.intellij.java"])
|
|
}
|
|
|
|
runPluginVerifier {
|
|
ideVersions = ["IC-203.6682.168", "IC-222.4345.14", // 2020.3 - 2022.2.3
|
|
"CL-203.8084.11", // 2020.3
|
|
"CL-211.7628.27", // 2021.1
|
|
"CL-212.5712.21", // 2021.2
|
|
"CL-213.7172.20", // 2021.3.4
|
|
"CL-221.5921.22", // 2022.1.3
|
|
"CL-222.4345.21"] // 2022.2.4
|
|
downloadDir = System.getProperty("user.home") + "/.gradle/caches/modules-2/files-2.1/com.jetbrains.intellij.idea/verifier"
|
|
}
|
|
|
|
patchPluginXml {
|
|
setChangeNotes("""
|
|
<h4>V0.10 (undefined)</h4>
|
|
<ul>
|
|
<li>New: Added semantic highlighting. Currently available for data and address registers and local labels.
|
|
<li>Bugfix: addq/subq for address register stated it would affect the condition codes, which it in fact doesn't.
|
|
<li>New: Added simple custom navigation bar.
|
|
<li>New: Added folding support for functions and macro definitions.
|
|
<li>New: Added assembler directives to code completion (only lower-case except for other directives like IF
|
|
and MACRO, which are only suggested for upper-case).
|
|
</ul>
|
|
<p>Full changelog available at <a href="https://github.com/chrisly42/mc68000-asm-plugin#changelog">Github project site</a>.</p>
|
|
""")
|
|
}
|
|
|
|
sourceSets.main.java.srcDirs('src/main/gen', 'src/main/java')
|
|
|
|
test {
|
|
useJUnitPlatform()
|
|
testLogging {
|
|
events "passed", "skipped", "failed"
|
|
}
|
|
runIde {
|
|
jvmArgs '--add-exports', 'java.base/jdk.internal.vm=ALL-UNNAMED'
|
|
}
|
|
}
|
|
|
|
tasks.coveralls {
|
|
dependsOn jacocoTestReport
|
|
}
|
|
|
|
jacoco {
|
|
toolVersion = '0.8.8'
|
|
}
|
|
|
|
jacocoTestReport {
|
|
reports {
|
|
xml.required.set(true)
|
|
csv.required.set(false)
|
|
}
|
|
}
|
|
|
|
publishPlugin {
|
|
setToken(intellijPublishToken)
|
|
} |