// in ext the values are cast to Object. Ensure string values are cast as String (and not GStringImpl) for later use
def string(Object o) {
- return o.toString()
+ return o == null ? "" : o.toString()
}
localPropsFIS.close()
p.each {
key, val ->
- def over = getProperty(key) != null
+ def oldval = findProperty(key)
setProperty(key, val)
- if (over) {
- println("Overriding property '${key}' with local.properties value '${val}'")
+ if (oldval != null) {
+ println("Overriding property '${key}' ('${oldval}') with local.properties value '${val}'")
+ } else {
+ println("Setting unknown property '${key}' with local.properties value '${val}'")
}
}
} catch (Exception e) {
}
// override getdown_app_base if requested
- if (getProperty("getdown_appbase_override") != null) {
+ if (findProperty("getdown_appbase_override") != null) {
getdown_app_base = string(getProperty("getdown_appbase_override"))
println("Overriding getdown appbase with '${getdown_app_base}'")
}
compile_source_compatibility = 1.8
compile_target_compatibility = 1.8
// these are getdown.txt properties defined dependent on the JAVA_VERSION
- getdown_alt_java_min_version = getdown_alt_java8_min_version
- getdown_alt_java_max_version = getdown_alt_java8_max_version
+ getdownAltJavaMinVersion = string(findProperty("getdown_alt_java8_min_version"))
+ getdownAltJavaMaxVersion = string(findProperty("getdown_alt_java8_max_version"))
// this property is assigned below and expanded to multiple lines in the getdown task
- getdown_alt_multi_java_location = getdown_alt_java8_txt_multi_java_location
+ getdownAltMultiJavaLocation = string(findProperty("getdown_alt_java8_txt_multi_java_location"))
// this property is for the Java library used in eclipse
- eclipse_java_runtime_name = string("JavaSE-1.8")
+ eclipseJavaRuntimeName = string("JavaSE-1.8")
} else if (JAVA_VERSION.equals("11")) {
JAVA_INTEGER_VERSION = string("11")
libDir = j11libDir
libDistDir = j11libDir
compile_source_compatibility = 11
compile_target_compatibility = 11
- getdown_alt_java_min_version = getdown_alt_java11_min_version
- getdown_alt_java_max_version = getdown_alt_java11_max_version
- getdown_alt_multi_java_location = getdown_alt_java11_txt_multi_java_location
- eclipse_java_runtime_name = string("JavaSE-11")
+ getdownAltJavaMinVersion = string(findProperty("getdown_alt_java11_min_version"))
+ getdownAltJavaMaxVersion = string(findProperty("getdown_alt_java11_max_version"))
+ getdownAltMultiJavaLocation = string(findProperty("getdown_alt_java11_txt_multi_java_location"))
+ eclipseJavaRuntimeName = string("JavaSE-11")
/* compile without modules -- using classpath libraries
additional_compiler_args += [
'--module-path', modules_compileClasspath.asPath,
libDistDir = j11libDir
compile_source_compatibility = JAVA_VERSION
compile_target_compatibility = JAVA_VERSION
- getdown_alt_java_min_version = getdown_alt_java11_min_version
- getdown_alt_java_max_version = getdown_alt_java11_max_version
- getdown_alt_multi_java_location = getdown_alt_java11_txt_multi_java_location
- eclipse_java_runtime_name = string("JavaSE-11")
+ getdownAltJavaMinVersion = string(findProperty("getdown_alt_java11_min_version"))
+ getdownAltJavaMaxVersion = string(findProperty("getdown_alt_java11_max_version"))
+ getdownAltMultiJavaLocation = string(findProperty("getdown_alt_java11_txt_multi_java_location"))
+ eclipseJavaRuntimeName = string("JavaSE-11")
/* compile without modules -- using classpath libraries
additional_compiler_args += [
'--module-path', modules_compileClasspath.asPath,
// for install4j
JAVA_MIN_VERSION = JAVA_VERSION
JAVA_MAX_VERSION = JAVA_VERSION
- macosJavaVMDir = string("${System.env.HOME}/buildtools/jre/openjdk-java_vm/getdown/macos-jre${JAVA_VERSION}/jre")
- macosJavaVMTgz = string("${System.env.HOME}/buildtools/jre/openjdk-java_vm/install4j/tgz/macos-jre${JAVA_VERSION}.tar.gz")
- windowsJavaVMDir = string("${System.env.HOME}/buildtools/jre/openjdk-java_vm/getdown/windows-jre${JAVA_VERSION}/jre")
- windowsJavaVMTgz = string("${System.env.HOME}/buildtools/jre/openjdk-java_vm/install4j/tgz/windows-jre${JAVA_VERSION}.tar.gz")
+ def jreInstallsDir = string(jre_installs_dir)
+ if (jreInstallsDir.startsWith("~/")) {
+ jreInstallsDir = System.getProperty("user.home") + jreInstallsDir.substring(1)
+ }
+ macosJavaVMDir = string("${jreInstallsDir}/jre-${JAVA_INTEGER_VERSION}-mac-x64/jre")
+ macosJavaVMTgz = string("${jreInstallsDir}/tgz/jre-${JAVA_INTEGER_VERSION}-mac-x64.tar.gz")
+ windowsJavaVMDir = string("${jreInstallsDir}/jre-${JAVA_INTEGER_VERSION}-windows-x64/jre")
+ windowsJavaVMTgz = string("${jreInstallsDir}/tgz/jre-${JAVA_INTEGER_VERSION}-windows-x64.tar.gz")
+ linuxJavaVMDir = string("${jreInstallsDir}/jre-${JAVA_INTEGER_VERSION}-linux-x64/jre")
+ linuxJavaVMTgz = string("${jreInstallsDir}/tgz/jre-${JAVA_INTEGER_VERSION}-linux-x64.tar.gz")
install4jDir = string("${jalviewDir}/${install4j_utils_dir}")
install4jConfFileName = string("jalview-install4j-conf.install4j")
install4jConfFile = file("${install4jDir}/${install4jConfFileName}")
// for the IDE, use java 11 compatibility
sourceCompatibility = compile_source_compatibility
targetCompatibility = compile_target_compatibility
- javaRuntimeName = eclipse_java_runtime_name
+ javaRuntimeName = eclipseJavaRuntimeName
// add in jalview project specific properties/preferences into eclipse core preferences
file {
}
def hostname = "hostname".execute().text.trim()
- if ((pandoc == null || ! file(pandoc).exists()) && hostname.equals("jv-bamboo")) {
+ def buildtoolsPandoc = System.getProperty("user.home")+"/buildtools/pandoc/bin/pandoc"
+ if ((pandoc == null || ! file(pandoc).exists()) && file(buildtoolsPandoc).exists()) {
pandoc = System.getProperty("user.home")+"/buildtools/pandoc/bin/pandoc"
}
// go through properties looking for getdown_txt_...
def props = project.properties.sort { it.key }
- if (getdown_alt_java_min_version.length() > 0) {
- props.put("getdown_txt_java_min_version", getdown_alt_java_min_version)
+ if (getdownAltJavaMinVersion != null && getdownAltJavaMinVersion.length() > 0) {
+ props.put("getdown_txt_java_min_version", getdownAltJavaMinVersion)
+ }
+ if (getdownAltJavaMaxVersion != null && getdownAltJavaMaxVersion.length() > 0) {
+ props.put("getdown_txt_java_max_version", getdownAltJavaMaxVersion)
}
- if (getdown_alt_java_max_version.length() > 0) {
- props.put("getdown_txt_java_max_version", getdown_alt_java_max_version)
+ if (getdownAltMultiJavaLocation != null && getdownAltMultiJavaLocation.length() > 0) {
+ props.put("getdown_txt_multi_java_location", getdownAltMultiJavaLocation)
}
- props.put("getdown_txt_multi_java_location", getdown_alt_multi_java_location)
props.put("getdown_txt_appbase", getdown_app_base)
props.each{ prop, val ->
filesMd5 = filesMd5.substring(0,8)
}
def install4jTemplateVersion = "${JALVIEW_VERSION}_F${filesMd5}_C${gitHash}"
+ // make install4jBuildDir relative to jalviewDir
+ def install4jBuildDir = "${install4j_build_dir}/${JAVA_VERSION}"
variables = [
+ 'JALVIEW_DIR': "../..",
'OSX_KEYSTORE': OSX_KEYSTORE,
'JSIGN_SH': JSIGN_SH,
'JRE_DIR': getdown_app_dir_java,
'JAVA_INTEGER_VERSION': JAVA_INTEGER_VERSION,
'VERSION': JALVIEW_VERSION,
'MACOS_JAVA_VM_DIR': macosJavaVMDir,
- 'MACOS_JAVA_VM_TGZ': macosJavaVMTgz,
'WINDOWS_JAVA_VM_DIR': windowsJavaVMDir,
+ 'LINUX_JAVA_VM_DIR': linuxJavaVMDir,
+ 'MACOS_JAVA_VM_TGZ': macosJavaVMTgz,
'WINDOWS_JAVA_VM_TGZ': windowsJavaVMTgz,
+ 'LINUX_JAVA_VM_TGZ': linuxJavaVMTgz,
'COPYRIGHT_MESSAGE': install4j_copyright_message,
'MACOS_BUNDLE_ID': install4j_macOS_bundle_id,
+ 'INSTALL4J_UTILS_DIR': install4j_utils_dir,
+ 'GETDOWN_WEBSITE_DIR': getdown_website_dir,
+ 'GETDOWN_FILES_DIR': getdown_files_dir,
'GETDOWN_RESOURCE_DIR': getdown_resource_dir,
'GETDOWN_DIST_DIR': getdown_app_dir,
'GETDOWN_ALT_DIR': getdown_app_dir_alt,
'GETDOWN_INSTALL_DIR': getdown_install_dir,
'INFO_PLIST_FILE_ASSOCIATIONS_FILE': install4j_info_plist_file_associations,
+ 'BUILD_DIR': install4jBuildDir,
]
- destination = "${jalviewDir}/${install4j_build_dir}/${JAVA_VERSION}"
+ destination = "${jalviewDir}/${install4jBuildDir}"
buildSelected = true
if (install4j_faster.equals("true") || CHANNEL.startsWith("DEVELOP") || CHANNEL.startsWith("LOCAL")) {