id 'com.install4j.gradle' version '7.0.9'
}
+// local build environment properties
+def localProps = "${jalviewDir}/local.properties"
+if (file(localProps).exists()) {
+ def p = new Properties()
+ def localPropsFIS = new FileInputStream(localProps)
+ p.load(localPropsFIS)
+ localPropsFIS.close()
+ p.each {
+ key, val ->
+ def over = getProperty(key) != null
+ setProperty(key, val)
+ if (over) {
+ println("Overriding property '${key}' with local.properties value '${val}'")
+ }
+ }
+}
+
repositories {
jcenter()
mavenCentral()
}
mainClassName = launcherClass
-def cloverInstrDir = file("$buildDir/$cloverSourcesInstrDir")
-def classes = "$jalviewDir/$classesDir"
+def cloverInstrDir = file("${buildDir}/${cloverSourcesInstrDir}")
+def classes = "${jalviewDir}/${classesDir}"
if (clover.equals("true")) {
use_clover = true
- classes = "$buildDir/$cloverClassesDir"
+ classes = "${buildDir}/${cloverClassesDir}"
} else {
use_clover = false
- classes = "$jalviewDir/$classesDir"
+ classes = "${jalviewDir}/${classesDir}"
}
// configure classpath/args for j8/j11 compilation
def compile_target_compatibility
ext {
- // local build environment properties
- def localProps = "${jalviewDir}/local.properties"
- if (file(localProps).exists()) {
- def p = new Properties()
- def localPropsFIS = new FileInputStream(localProps)
- p.load(localPropsFIS)
- localPropsFIS.close()
- p.each {
- key, val ->
- def over = project.properties.get(key) != null
- project.properties.put(key, val)
- if (over) {
- println("Overriding property '${key}' with local.properties value")
- }
- }
- }
getdownWebsiteDir = "${jalviewDir}/${getdown_website_dir}/${JAVA_VERSION}"
getdownDir = ""
reportRsyncCmd = false
gitHash = ""
gitBranch = ""
- println("Using a ${CHANNEL} profile. appbase=${getdown_app_base}")
+ println("Using a ${CHANNEL} profile.")
}
def JAVA_INTEGER_VERSION
}
from(inputDir) {
include '**/*.gif'
- include '**/*.jpg'
- include '**/*.png'
+ include '**/*.jpg'
+ include '**/*.png'
}
into outputDir
task syncResources(type: Sync) {
from "${jalviewDir}/${resourceDir}"
include "**/*.*"
- exclude "install4j"
into "${classes}"
preserve {
include "**"
def propVal = null
if (project.hasProperty(propKey)) {
propVal = project.getProperty(propKey)
+ if (propVal.startsWith("~/")) {
+ propVal = System.getProperty("user.home") + propVal.substring(1)
+ }
}
def propsFileName = "${jalviewjsBuildDir}/${jalviewjs_eclipse_workspace_location_file}"
def eclipseWsDir = propVal
def eclipseProduct
def eclipseRoot = jalviewjs_eclipse_root
- if (eclipseRoot.startsWith("~")) {
+ if (eclipseRoot.startsWith("~/")) {
eclipseRoot = System.getProperty("user.home") + eclipseRoot.substring(1)
}
if (OperatingSystem.current().isMacOsX()) {
fis.close()
assumedVersion = false
}
+ /*
String[] v = eclipseVersion.split("\\.")
def v0 = Integer.valueOf(v[0])
def v1 = Integer.valueOf(v[1])
} else {
eclipseVersionSuffix = "_4.13"
}
+ utilsDropinsDir = "${jalviewDir}/${jalviewjs_eclipse_dropins_dir}${eclipseVersionSuffix}"
+ */
- utilsDropinsDir = "${jalviewjs_utils_dir}/${jalviewjs_eclipse_dropins_dir}${eclipseVersionSuffix}"
+ utilsDropinsDir = "${jalviewDir}/${jalviewjs_eclipse_dropins_dir}"
def propKey = "eclipse_debug"
eclipseDebug = (project.hasProperty(propKey) && project.getProperty(propKey).equals("true"))
dependsOn jalviewjsEclipsePaths
dependsOn jalviewjsCleanEclipse
def inputFiles = fileTree(dir: utilsDropinsDir, include: "*.jar")
+ inputFiles += file(jalviewjs_j2s_plugin)
def outputDir = eclipseDropinsDir
inputs.files inputFiles
from utilsDropinsDir
into eclipseDropinsDir
+
+ doLast {
+ copy {
+ from jalviewjs_j2s_plugin
+ into eclipseDropinsDir
+ }
+ }
}
// this eclipse -clean doesn't actually work
task jalviewjsUnzipFiles {
dependsOn jalviewjsSitePath
- def zipFiles = fileTree(dir: "${jalviewjs_utils_dir}/${jalviewjs_libjs_dir}", include: "*.zip")
- zipFiles += "${jalviewjs_utils_dir}/${jalviewjs_swingjs_zip}${eclipseVersionSuffix}"
+ def zipFiles = fileTree(dir: "${jalviewDir}/${jalviewjs_libjs_dir}", include: "*.zip")
+ zipFiles += "${jalviewDir}/${jalviewjs_swingjs_zip}"
doLast {
zipFiles.each { file_zip ->
copy {
from zipTree(file_zip)
- into jalviewjsSiteDir
+ into "${jalviewDir}/${jalviewjsSiteDir}"
}
}
}
inputs.files zipFiles
- outputs.dir jalviewjsSiteDir
+ outputs.dir "${jalviewDir}/${jalviewjsSiteDir}"
}
task jalviewjsCreateJ2sSettings(type: WriteProperties) {
dependsOn jalviewjsCreateJ2sSettings
}
-task jalviewjsCopyResources (type: Copy) {
+task jalviewjsCopyResources (type: Sync) {
dependsOn jalviewjsSitePath
- def inputFiles = fileTree(dir: jalviewjs_resource_dir)
- def outputDir = "${jalviewjsSiteDir}/${jalviewjs_j2s_subdir}"
+ def inputFiles = fileTree(dir: "${jalviewDir}/${resourceDir}")
+ def outputDir = "${jalviewDir}/${jalviewjsSiteDir}/${jalviewjs_j2s_subdir}"
from inputFiles
into outputDir
outputFiles += "${outputDir}/${filename}"
null
}
+ preserve {
+ include "**"
+ }
outputs.files outputFiles
inputs.files inputFiles
}
-task jalviewjsCopySiteResources (type: Copy) {
+task jalviewjsCopySiteResources (type: Sync) {
dependsOn jalviewjsSitePath
- def inputFiles = fileTree(dir: "${jalviewjs_utils_dir}/${jalviewjs_site_resource_dir}")
- def outputDir = jalviewjsSiteDir
+ def inputFiles = fileTree(dir: "${jalviewDir}/${jalviewjs_site_resource_dir}")
+ def outputDir = "${jalviewDir}/${jalviewjsSiteDir}"
from inputFiles
into outputDir
outputFiles += "${outputDir}/${filename}"
null
}
+ preserve {
+ include "**"
+ }
outputs.files outputFiles
inputs.files inputFiles
}
if (eclipseDebug) {
args += "-debug"
}
+ // can we use args += ["--launcher.appendVmargs", "-vmargs", "-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=utils/jalviewjs/eclipse/dropins"] here? (instead of copying plugins to eclipse dropins dir)
doFirst {
println("IMPORT ECLIPSE_DEBUG=${eclipseDebug}")
dependsOn jalviewjsEclipsePaths
executable(eclipseBinary)
- args(["-nosplash", "--launcher.suppressErrors", "-application", "org.eclipse.jdt.apt.core.aptBuild", "-data", eclipseWorkspace, "-${jalviewjs_eclipseBuildArg}", eclipse_project_name ])
+ args(["-nosplash", "--launcher.suppressErrors", "-application", "org.eclipse.jdt.apt.core.aptBuild", "-data", eclipseWorkspace, "-${jalviewjs_eclipse_build_arg}", eclipse_project_name ])
if (eclipseDebug) {
args += "-debug"
}
+ // can we use args += ["--launcher.appendVmargs", "-vmargs", "-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=swingjs"] here? (instead of copying plugins to eclipse dropins dir)
def stdout
def stderr
println("TRANSPILE ECLIPSE_DEBUG=${eclipseDebug}")
}
- inputs.dir(sourceDir)
- outputs.dir("${eclipse_bin_dir}/main")
- outputs.dir(jalviewjsTransferSiteDir)
- outputs.upToDateWhen { file("${jalviewjsTransferSiteDir}${jalviewjs_server_resource}").exists() }
+ inputs.dir("${jalviewDir}/${sourceDir}")
+ outputs.dir("${jalviewDir}/${eclipse_bin_dir}/main")
+ outputs.dir("${jalviewDir}/${jalviewjsTransferSiteDir}")
+ outputs.upToDateWhen { file("${jalviewDir}/${jalviewjsTransferSiteDir}${jalviewjs_server_resource}").exists() }
}
task jalviewjsCopyTransferSite(type: Copy) {
dependsOn jalviewjsTranspile
- from jalviewjsTransferSiteDir
- into jalviewjsSiteDir
+ from "${jalviewDir}/${jalviewjsTransferSiteDir}"
+ into "${jalviewDir}/${jalviewjsSiteDir}"
}
jalviewjsUnzipFiles.mustRunAfter jalviewjsCopyTransferSite
}
outputs.file(htmlFile)
+ outputs.upToDateWhen({false})
}
task cleanJalviewjsAll {