+ println("HEADLESS BUILD")
+ }
+ /* *-/
+ System.properties.sort { it.key }.each {
+ key, val -> println("SYSTEM PROPERTY ${key}='${val}'")
+ }
+ /-* *-/
+ if (false && IN_ECLIPSE) {
+ jalviewDir = jalviewDirAbsolutePath
+ }
+ */
+
+ // essentials
+ bareSourceDir = string(source_dir)
+ sourceDir = string("${jalviewDir}/${bareSourceDir}")
+ resourceDir = string("${jalviewDir}/${resource_dir}")
+ bareTestSourceDir = string(test_source_dir)
+ testSourceDir = string("${jalviewDir}/${bareTestSourceDir}")
+
+ // clover
+ cloverInstrDir = file("${buildDir}/${cloverSourcesInstrDir}")
+ cloverDb = string("${buildDir}/clover/clover.db")
+ classesDir = string("${jalviewDir}/${classes_dir}")
+ if (clover.equals("true")) {
+ use_clover = true
+ classesDir = string("${buildDir}/${cloverClassesDir}")
+ } else {
+ use_clover = false
+ classesDir = string("${jalviewDir}/${classes_dir}")
+ }
+
+ classes = classesDir
+
+ getdownWebsiteDir = string("${jalviewDir}/${getdown_website_dir}/${JAVA_VERSION}")
+ buildDist = true
+
+ // the following values might be overridden by the CHANNEL switch
+ getdownChannelName = CHANNEL.toLowerCase()
+ getdownDir = string("${getdownChannelName}/${JAVA_VERSION}")
+ getdownAppBase = string("${getdown_channel_base}/${getdownDir}")
+ getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher}")
+ getdownAppDistDir = getdown_app_dir_alt
+ buildProperties = string("${classesDir}/${build_properties_file}")
+ reportRsyncCommand = false
+ jvlChannelName = CHANNEL.toLowerCase()
+ install4jSuffix = CHANNEL.substring(0, 1).toUpperCase() + CHANNEL.substring(1).toLowerCase(); // BUILD -> Build
+ install4jDSStore = "DS_Store-NON-RELEASE"
+ install4jDMGBackgroundImage = "jalview_dmg_background-NON-RELEASE.png"
+ install4jInstallerName = "${jalview_name} Non-Release Installer"
+ install4jExecutableName = jalview_name.replaceAll("[^\\w]+", "_").toLowerCase()
+ install4jExtraScheme = "jalviewx"
+ switch (CHANNEL) {
+
+ case "BUILD":
+ // TODO: get bamboo build artifact URL for getdown artifacts
+ getdown_channel_base = bamboo_channelbase
+ getdownChannelName = string("${bamboo_planKey}/${JAVA_VERSION}")
+ getdownAppBase = string("${bamboo_channelbase}/${bamboo_planKey}${bamboo_getdown_channel_suffix}/${JAVA_VERSION}")
+ jvlChannelName += "_${getdownChannelName}"
+ // automatically add the test group Not-bamboo for exclusion
+ if ("".equals(testngExcludedGroups)) {
+ testngExcludedGroups = "Not-bamboo"
+ }
+ install4jExtraScheme = "jalviewb"
+ break
+
+ case "RELEASE":
+ getdownAppDistDir = getdown_app_dir_release
+ reportRsyncCommand = true
+ install4jSuffix = ""
+ install4jDSStore = "DS_Store"
+ install4jDMGBackgroundImage = "jalview_dmg_background.png"
+ install4jInstallerName = "${jalview_name} Installer"
+ break
+
+ case "ARCHIVE":
+ getdownChannelName = CHANNEL.toLowerCase()+"/${JALVIEW_VERSION}"
+ getdownDir = string("${getdownChannelName}/${JAVA_VERSION}")
+ getdownAppBase = string("${getdown_channel_base}/${getdownDir}")
+ if (!file("${ARCHIVEDIR}/${packageDir}").exists()) {
+ throw new GradleException("Must provide an ARCHIVEDIR value to produce an archive distribution")
+ } else {
+ packageDir = string("${ARCHIVEDIR}/${packageDir}")
+ buildProperties = string("${ARCHIVEDIR}/${classes_dir}/${build_properties_file}")
+ buildDist = false
+ }
+ reportRsyncCommand = true
+ install4jExtraScheme = "jalviewa"
+ break
+
+ case "ARCHIVELOCAL":
+ getdownChannelName = string("archive/${JALVIEW_VERSION}")
+ getdownDir = string("${getdownChannelName}/${JAVA_VERSION}")
+ getdownAppBase = file(getdownWebsiteDir).toURI().toString()
+ if (!file("${ARCHIVEDIR}/${packageDir}").exists()) {
+ throw new GradleException("Must provide an ARCHIVEDIR value to produce an archive distribution")
+ } else {
+ packageDir = string("${ARCHIVEDIR}/${packageDir}")
+ buildProperties = string("${ARCHIVEDIR}/${classes_dir}/${build_properties_file}")
+ buildDist = false
+ }
+ reportRsyncCommand = true
+ getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}")
+ install4jSuffix = "Archive"
+ install4jExtraScheme = "jalviewa"
+ break
+
+ case "DEVELOP":
+ reportRsyncCommand = true
+
+ // DEVELOP-RELEASE is usually associated with a Jalview release series so set the version
+ JALVIEW_VERSION=JALVIEW_VERSION+"-develop"
+
+ install4jSuffix = "Develop"
+ install4jDSStore = "DS_Store-DEVELOP"
+ install4jDMGBackgroundImage = "jalview_dmg_background-DEVELOP.png"
+ install4jExtraScheme = "jalviewd"
+ install4jInstallerName = "${jalview_name} Develop Installer"
+ break
+
+ case "TEST-RELEASE":
+ reportRsyncCommand = true
+
+ // TEST-RELEASE is usually associated with a Jalview release series so set the version
+ JALVIEW_VERSION=JALVIEW_VERSION+"-test"
+
+ install4jSuffix = "Test"
+ install4jDSStore = "DS_Store-TEST-RELEASE"
+ install4jDMGBackgroundImage = "jalview_dmg_background-TEST.png"
+ install4jExtraScheme = "jalviewt"
+ install4jInstallerName = "${jalview_name} Test Installer"
+ break
+
+ case ~/^SCRATCH(|-[-\w]*)$/:
+ getdownChannelName = CHANNEL
+ getdownDir = string("${getdownChannelName}/${JAVA_VERSION}")
+ getdownAppBase = string("${getdown_channel_base}/${getdownDir}")
+ reportRsyncCommand = true
+ install4jSuffix = "Scratch"
+ break
+
+ case "TEST-LOCAL":
+ if (!file("${LOCALDIR}").exists()) {
+ throw new GradleException("Must provide a LOCALDIR value to produce a local distribution")
+ } else {
+ getdownAppBase = file(file("${LOCALDIR}").getAbsolutePath()).toURI().toString()
+ getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}")
+ }
+ JALVIEW_VERSION = "TEST"
+ install4jSuffix = "Test-Local"
+ install4jDSStore = "DS_Store-TEST-RELEASE"
+ install4jDMGBackgroundImage = "jalview_dmg_background-TEST.png"
+ install4jExtraScheme = "jalviewt"
+ install4jInstallerName = "${jalview_name} Test Installer"
+ break
+
+ case "LOCAL":
+ getdownAppBase = file(getdownWebsiteDir).toURI().toString()
+ getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}")
+ install4jExtraScheme = "jalviewl"
+ break
+
+ default: // something wrong specified
+ throw new GradleException("CHANNEL must be one of BUILD, RELEASE, ARCHIVE, DEVELOP, TEST-RELEASE, SCRATCH-..., LOCAL [default]")
+ break
+
+ }
+ // override getdownAppBase if requested
+ if (findProperty("getdown_appbase_override") != null) {
+ getdownAppBase = string(getProperty("getdown_appbase_override"))
+ println("Overriding getdown appbase with '${getdownAppBase}'")
+ }
+ // sanitise file name for jalview launcher file for this channel
+ jvlChannelName = jvlChannelName.replaceAll("[^\\w\\-]+", "_")
+ // install4j application and folder names
+ if (install4jSuffix == "") {
+ install4jApplicationName = "${jalview_name}"
+ install4jBundleId = "${install4j_bundle_id}"
+ install4jWinApplicationId = install4j_release_win_application_id
+ } else {
+ install4jApplicationName = "${jalview_name} ${install4jSuffix}"
+ install4jBundleId = "${install4j_bundle_id}-" + install4jSuffix.toLowerCase()
+ // add int hash of install4jSuffix to the last part of the application_id
+ def id = install4j_release_win_application_id
+ def idsplitreverse = id.split("-").reverse()
+ idsplitreverse[0] = idsplitreverse[0].toInteger() + install4jSuffix.hashCode()
+ install4jWinApplicationId = idsplitreverse.reverse().join("-")
+ }
+ // sanitise folder and id names
+ // install4jApplicationFolder = e.g. "Jalview Build"
+ install4jApplicationFolder = install4jApplicationName
+ .replaceAll("[\"'~:/\\\\\\s]", "_") // replace all awkward filename chars " ' ~ : / \
+ .replaceAll("_+", "_") // collapse __
+ install4jInternalId = install4jApplicationName
+ .replaceAll(" ","_")
+ .replaceAll("[^\\w\\-\\.]", "_") // replace other non [alphanumeric,_,-,.]
+ .replaceAll("_+", "") // collapse __
+ //.replaceAll("_*-_*", "-") // collapse _-_
+ install4jUnixApplicationFolder = install4jApplicationName
+ .replaceAll(" ","_")
+ .replaceAll("[^\\w\\-\\.]", "_") // replace other non [alphanumeric,_,-,.]
+ .replaceAll("_+", "_") // collapse __
+ .replaceAll("_*-_*", "-") // collapse _-_
+ .toLowerCase()
+
+ getdownAppDir = string("${getdownWebsiteDir}/${getdownAppDistDir}")
+ //getdownJ11libDir = "${getdownWebsiteDir}/${getdown_j11lib_dir}"
+ getdownResourceDir = string("${getdownWebsiteDir}/${getdown_resource_dir}")
+ getdownInstallDir = string("${getdownWebsiteDir}/${getdown_install_dir}")
+ getdownFilesDir = string("${jalviewDir}/${getdown_files_dir}/${JAVA_VERSION}/")
+ getdownFilesInstallDir = string("${getdownFilesDir}/${getdown_install_dir}")
+ /* compile without modules -- using classpath libraries
+ modules_compileClasspath = fileTree(dir: "${jalviewDir}/${j11modDir}", include: ["*.jar"])