X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=build.gradle;h=a180d54d5890b61aa9caecbc0edf43106b3c79a2;hb=ae69fc36c7d7ccc9bb9ef1b0ebaed1a94c82c300;hp=76c1c4401ef6f9360c6d47c14013e1ec41eee071;hpb=6aec2dea780d21b874707b429964afa91558a6ff;p=jalview.git diff --git a/build.gradle b/build.gradle index 76c1c44..a180d54 100644 --- a/build.gradle +++ b/build.gradle @@ -17,27 +17,7 @@ plugins { id 'eclipse' id 'com.github.johnrengelman.shadow' version '4.0.3' id 'com.install4j.gradle' version '7.0.9' -} - -// local build environment properties -def localProps = "${jalviewDir}/local.properties" -if (file(localProps).exists()) { - try { - 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}'") - } - } - } catch (Exception e) { - System.out.println("Exception reading local.properties") - } + id 'com.dorongold.task-tree' version '1.4' // only needed to display task dependency tree with gradle task1 [task2 ...] taskTree } repositories { @@ -53,118 +33,162 @@ dependencies { compile 'org.apache.commons:commons-compress:1.18' } -mainClassName = launcherClass -def cloverInstrDir = file("${buildDir}/${cloverSourcesInstrDir}") -def classes = "${jalviewDir}/${classesDir}" -if (clover.equals("true")) { - use_clover = true - classes = "${buildDir}/${cloverClassesDir}" -} else { - use_clover = false - classes = "${jalviewDir}/${classesDir}" +// 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() } -// configure classpath/args for j8/j11 compilation - -def jalviewDirAbsolutePath = file(jalviewDir).getAbsolutePath() -def libDir -def libDistDir -def compile_source_compatibility -def compile_target_compatibility ext { - getdownWebsiteDir = "${jalviewDir}/${getdown_website_dir}/${JAVA_VERSION}" - getdownDir = "" + jalviewDirAbsolutePath = file(jalviewDir).getAbsolutePath() + + // local build environment properties + def localProps = "${jalviewDirAbsolutePath}/local.properties" + if (file(localProps).exists()) { + try { + 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}'") + } + } + } catch (Exception e) { + System.out.println("Exception reading local.properties") + } + } + + + // this property set when running Eclipse headlessly + j2sHeadlessBuildProperty = string("net.sf.j2s.core.headlessbuild") + // this property set by Eclipse + eclipseApplicationProperty = string("eclipse.application") + // CHECK IF RUNNING FROM WITHIN ECLIPSE + def eclipseApplicationPropertyVal = System.properties[eclipseApplicationProperty] + IN_ECLIPSE = eclipseApplicationPropertyVal != null && eclipseApplicationPropertyVal.startsWith("org.eclipse.ui.") + // BUT WITHOUT THE HEADLESS BUILD PROPERTY SET + if (System.properties[j2sHeadlessBuildProperty].equals("true")) { + println("Setting IN_ECLIPSE to ${IN_ECLIPSE} as System.properties['${j2sHeadlessBuildProperty}'] == '${System.properties[j2sHeadlessBuildProperty]}'") + IN_ECLIPSE = false + } + if (IN_ECLIPSE) { + println("WITHIN ECLIPSE IDE") + } else { + println("HEADLESS BUILD") + } + /* + System.properties.sort { it.key }.each { + key, val -> println("SYSTEM PROPERTY ${key}='${val}'") + } + */ + + cloverInstrDir = file("${buildDir}/${cloverSourcesInstrDir}") + classes = string("${jalviewDir}/${classesDir}") + if (clover.equals("true")) { + use_clover = true + classes = string("${buildDir}/${cloverClassesDir}") + } else { + use_clover = false + classes = string("${jalviewDir}/${classesDir}") + } + + getdownWebsiteDir = string("${jalviewDir}/${getdown_website_dir}/${JAVA_VERSION}") + getdownDir = string("") reportRsyncCmd = false buildDist = true buildProperties = build_properties_file - getdownLauncher = "${jalviewDir}/${getdown_lib_dir}/${getdown_launcher}" + getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher}") switch (CHANNEL) { case "BUILD": // TODO: get bamboo build artifact URL for getdown artifacts getdown_channel_base = bamboo_channelbase - getdown_channel_name = "${bamboo_planKey}/${JAVA_VERSION}" - getdown_app_base = "${bamboo_channelbase}/${bamboo_planKey}${bamboo_getdown_channel_suffix}/${JAVA_VERSION}" + getdown_channel_name = string("${bamboo_planKey}/${JAVA_VERSION}") + getdown_app_base = string("${bamboo_channelbase}/${bamboo_planKey}${bamboo_getdown_channel_suffix}/${JAVA_VERSION}") getdown_app_dir = getdown_app_dir_alt - buildProperties = "${jalviewDir}/${classesDir}/${build_properties_file}" + buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}") break case "RELEASE": getdown_channel_name = CHANNEL.toLowerCase() - getdownDir = "${getdown_channel_name}/${JAVA_VERSION}" - getdown_app_base = "${getdown_channel_base}/${getdownDir}" + getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}") + getdown_app_base = string("${getdown_channel_base}/${getdownDir}") getdown_app_dir = getdown_app_dir_release - buildProperties = "${jalviewDir}/${classesDir}/${build_properties_file}" + buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}") reportRsyncCommand = true break case "ARCHIVE": getdown_channel_name = CHANNEL.toLowerCase()+"/${JALVIEW_VERSION}" - getdownDir = "${getdown_channel_name}/${JAVA_VERSION}" - getdown_app_base = "${getdown_channel_base}/${getdownDir}" + getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}") + getdown_app_base = string("${getdown_channel_base}/${getdownDir}") getdown_app_dir = getdown_app_dir_alt if (!file("${ARCHIVEDIR}/${packageDir}").exists()) { print "Must provide an ARCHIVEDIR value to produce an archive distribution" exit } else { - packageDir = "${ARCHIVEDIR}/${packageDir}" - buildProperties = "${ARCHIVEDIR}/${classesDir}/${build_properties_file}" + packageDir = string("${ARCHIVEDIR}/${packageDir}") + buildProperties = string("${ARCHIVEDIR}/${classesDir}/${build_properties_file}") buildDist = false } reportRsyncCommand = true break case "ARCHIVELOCAL": - getdown_channel_name = "archive/${JALVIEW_VERSION}" - getdownDir = "${getdown_channel_name}/${JAVA_VERSION}" + getdown_channel_name = string("archive/${JALVIEW_VERSION}") + getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}") getdown_app_base = file(getdownWebsiteDir).toURI().toString() getdown_app_dir = getdown_app_dir_alt if (!file("${ARCHIVEDIR}/${packageDir}").exists()) { print "Must provide an ARCHIVEDIR value to produce an archive distribution" exit } else { - packageDir = "${ARCHIVEDIR}/${packageDir}" - buildProperties = "${ARCHIVEDIR}/${classesDir}/${build_properties_file}" + packageDir = string("${ARCHIVEDIR}/${packageDir}") + buildProperties = string("${ARCHIVEDIR}/${classesDir}/${build_properties_file}") buildDist = false } reportRsyncCommand = true - getdownLauncher = "${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}" + getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}") break case "DEVELOP": getdown_channel_name = CHANNEL.toLowerCase() - getdownDir = "${getdown_channel_name}/${JAVA_VERSION}" - getdown_app_base = "${getdown_channel_base}/${getdownDir}" + getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}") + getdown_app_base = string("${getdown_channel_base}/${getdownDir}") getdown_app_dir = getdown_app_dir_alt - buildProperties = "${jalviewDir}/${classesDir}/${build_properties_file}" + buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}") reportRsyncCommand = true break case "TEST-RELEASE": getdown_channel_name = CHANNEL.toLowerCase() - getdownDir = "${getdown_channel_name}/${JAVA_VERSION}" - getdown_app_base = "${getdown_channel_base}/${getdownDir}" + getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}") + getdown_app_base = string("${getdown_channel_base}/${getdownDir}") getdown_app_dir = getdown_app_dir_alt - buildProperties = "${jalviewDir}/${classesDir}/${build_properties_file}" + buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}") reportRsyncCommand = true break case ~/^SCRATCH(|-[-\w]*)$/: getdown_channel_name = CHANNEL - getdownDir = "${getdown_channel_name}/${JAVA_VERSION}" - getdown_app_base = "${getdown_channel_base}/${getdownDir}" + getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}") + getdown_app_base = string("${getdown_channel_base}/${getdownDir}") getdown_app_dir = getdown_app_dir_alt - buildProperties = "${jalviewDir}/${classesDir}/${build_properties_file}" + buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}") reportRsyncCommand = true break case "LOCAL": getdown_app_base = file(getdownWebsiteDir).toURI().toString() getdown_app_dir = getdown_app_dir_alt - buildProperties = "${jalviewDir}/${classesDir}/${build_properties_file}" - getdownLauncher = "${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}" + buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}") + getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}") break default: // something wrong specified @@ -174,85 +198,116 @@ ext { } - getdownAppDir = "${getdownWebsiteDir}/${getdown_app_dir}" + getdownAppDir = string("${getdownWebsiteDir}/${getdown_app_dir}") //getdownJ11libDir = "${getdownWebsiteDir}/${getdown_j11lib_dir}" - getdownResourceDir = "${getdownWebsiteDir}/${getdown_resource_dir}" - getdownInstallDir = "${getdownWebsiteDir}/${getdown_install_dir}" - getdownFilesDir = "${jalviewDir}/${getdown_files_dir}/${JAVA_VERSION}/" - getdownFilesInstallDir = "${getdownFilesDir}/${getdown_install_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"]) modules_runtimeClasspath = modules_compileClasspath */ - gitHash = "" - gitBranch = "" + gitHash = string("") + gitBranch = string("") println("Using a ${CHANNEL} profile.") -} -def JAVA_INTEGER_VERSION -def additional_compiler_args = [] -// these are getdown.txt properties defined dependent on the JAVA_VERSION -def getdown_alt_java_min_version -def getdown_alt_java_max_version -// this property is assigned below and expanded to multiple lines in the getdown task -def getdown_alt_multi_java_location -// this property is for the Java library used in eclipse -def eclipse_java_runtime_name -if (JAVA_VERSION.equals("1.8")) { - JAVA_INTEGER_VERSION = "8" - //libDir = j8libDir - libDir = j11libDir - libDistDir = j8libDir - compile_source_compatibility = 1.8 - compile_target_compatibility = 1.8 - getdown_alt_java_min_version = getdown_alt_java8_min_version - getdown_alt_java_max_version = getdown_alt_java8_max_version - getdown_alt_multi_java_location = getdown_alt_java8_txt_multi_java_location - eclipse_java_runtime_name = "JavaSE-1.8" -} else if (JAVA_VERSION.equals("11")) { - JAVA_INTEGER_VERSION = "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 = "JavaSE-11" - /* compile without modules -- using classpath libraries - additional_compiler_args += [ - '--module-path', ext.modules_compileClasspath.asPath, - '--add-modules', j11modules - ] - */ -} else if (JAVA_VERSION.equals("12") || JAVA_VERSION.equals("13")) { - JAVA_INTEGER_VERSION = JAVA_VERSION - libDir = j11libDir - 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 = "JavaSE-11" - /* compile without modules -- using classpath libraries - additional_compiler_args += [ - '--module-path', ext.modules_compileClasspath.asPath, - '--add-modules', j11modules - ] - */ -} else { - throw new GradleException("JAVA_VERSION=${JAVA_VERSION} not currently supported by Jalview") + additional_compiler_args = [] + // configure classpath/args for j8/j11 compilation + if (JAVA_VERSION.equals("1.8")) { + JAVA_INTEGER_VERSION = string("8") + //libDir = j8libDir + libDir = j11libDir + libDistDir = j8libDir + 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 + // 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 + // this property is for the Java library used in eclipse + eclipse_java_runtime_name = 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") + /* compile without modules -- using classpath libraries + additional_compiler_args += [ + '--module-path', modules_compileClasspath.asPath, + '--add-modules', j11modules + ] + */ + } else if (JAVA_VERSION.equals("12") || JAVA_VERSION.equals("13")) { + JAVA_INTEGER_VERSION = JAVA_VERSION + libDir = j11libDir + 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") + /* compile without modules -- using classpath libraries + additional_compiler_args += [ + '--module-path', modules_compileClasspath.asPath, + '--add-modules', j11modules + ] + */ + } else { + throw new GradleException("JAVA_VERSION=${JAVA_VERSION} not currently supported by Jalview") + } + + + // for install4j + 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") + install4jDir = string("${jalviewDir}/${install4jResourceDir}") + install4jConfFileName = string("jalview-installers-java${JAVA_VERSION}.install4j") + install4jConfFile = string("${install4jDir}/${install4jConfFileName}") + + + buildingHTML = string("${jalviewDir}/${docDir}/building.html") + helpFile = string("${classes}/${helpDir}/help.jhm") + + + relativeBuildDir = file(jalviewDirAbsolutePath).toPath().relativize(buildDir.toPath()) + jalviewjsBuildDir = string("${relativeBuildDir}/jalviewjs") + jalviewjsSiteDir = string("${jalviewjsBuildDir}/${jalviewjs_site_dir}") + if (IN_ECLIPSE) { + jalviewjsTransferSiteJsDir = string(jalviewjsSiteDir) + } else { + jalviewjsTransferSiteJsDir = string("${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_js") + } + jalviewjsTransferSiteLibDir = string("${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_lib") + jalviewjsTransferSiteSwingJsDir = string("${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_swingjs") + jalviewjsTransferSiteCoreDir = string("${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_core") + jalviewjsJalviewCoreHtmlFile = string("") + jalviewjsJalviewCoreName = string(jalviewjs_core_name) + jalviewjsJalviewTemplateName = string(jalviewjs_name) + + eclipseWorkspace = null + eclipseBinary = string("") + eclipseVersion = string("") + eclipseDebug = false + // ENDEXT } sourceSets { - main { java { srcDirs "${jalviewDir}/${sourceDir}" - outputDir = file("${classes}") + outputDir = file(project.classes) } resources { @@ -326,7 +381,6 @@ configurations { cloverRuntime.extendsFrom cloverCompile } - eclipse { project { name = eclipse_project_name @@ -450,10 +504,12 @@ eclipse { } } // jdt - - synchronizationTasks "eclipseSynchronizationTask" - autoBuildTasks "eclipseAutoBuildTask" + if (IN_ECLIPSE) { + // Don't want these to be activated if in headless build + synchronizationTasks "eclipseSynchronizationTask" + autoBuildTasks "eclipseAutoBuildTask" + } } @@ -576,8 +632,8 @@ task setGitVals { ignoreExitValue true } - project.ext.gitHash = hashStdOut.toString().trim() - project.ext.gitBranch = branchStdOut.toString().trim() + gitHash = hashStdOut.toString().trim() + gitBranch = branchStdOut.toString().trim() outputs.upToDateWhen { false } } @@ -594,12 +650,11 @@ task createBuildProperties(type: WriteProperties) { //comment "--Jalview Build Details--\n"+getDate("yyyy-MM-dd") property "BUILD_DATE", getDate("HH:mm:ss dd MMMM yyyy") property "VERSION", JALVIEW_VERSION - property "INSTALLATION", INSTALLATION+" git-commit:"+project.ext.gitHash+" ["+project.ext.gitBranch+"]" + property "INSTALLATION", INSTALLATION+" git-commit:"+gitHash+" ["+gitBranch+"]" outputs.file(outputFile) } -def buildingHTML = "${jalviewDir}/${docDir}/building.html" task cleanBuildingHTML(type: Delete) { doFirst { delete buildingHTML @@ -658,7 +713,6 @@ task syncDocs(type: Sync) { } -def helpFile = "${classes}/${helpDir}/help.jhm" task copyHelp(type: Copy) { def inputDir = "${jalviewDir}/${helpParentDir}/${helpDir}" def outputDir = "${classes}/${helpDir}" @@ -666,7 +720,14 @@ task copyHelp(type: Copy) { exclude '**/*.gif' exclude '**/*.jpg' exclude '**/*.png' - filter(ReplaceTokens, beginToken: '$$', endToken: '$$', tokens: ['Version-Rel': JALVIEW_VERSION,'Year-Rel': getDate("yyyy")]) + filter(ReplaceTokens, + beginToken: '$$', + endToken: '$$', + tokens: [ + 'Version-Rel': JALVIEW_VERSION, + 'Year-Rel': getDate("yyyy") + ] + ) } from(inputDir) { include '**/*.gif' @@ -888,19 +949,19 @@ task getdownWebsite() { def getdownWebsiteResourceFilenames = [] def getdownTextString = "" - def getdownResourceDir = project.ext.getdownResourceDir - def getdownAppDir = project.ext.getdownAppDir + def getdownResourceDir = getdownResourceDir + def getdownAppDir = getdownAppDir def getdownResourceFilenames = [] doFirst { // clean the getdown website and files dir before creating getdown folders - delete project.ext.getdownWebsiteDir - delete project.ext.getdownFilesDir + delete getdownWebsiteDir + delete getdownFilesDir copy { from buildProperties rename(build_properties_file, getdown_build_properties) - into project.ext.getdownAppDir + into getdownAppDir } getdownWebsiteResourceFilenames += "${getdown_app_dir}/${getdown_build_properties}" @@ -954,7 +1015,7 @@ task getdownWebsite() { getdownResourceFilenames.each{ filename -> copy { from filename - into project.ext.getdownResourceDir + into getdownResourceDir } } @@ -973,7 +1034,7 @@ task getdownWebsite() { getdownTextString += line copy { from f.getPath() - into project.ext.getdownAppDir + into getdownAppDir } } @@ -987,7 +1048,7 @@ task getdownWebsite() { getdownTextString += line copy { from f.getPath() - into project.ext.getdownJ11libDir + into getdownJ11libDir } } } @@ -998,16 +1059,16 @@ task getdownWebsite() { getdownTextString += "resource = ${getdown_launcher_new}\n" getdownTextString += "class = ${mainClass}\n" - def getdown_txt = file("${project.ext.getdownWebsiteDir}/getdown.txt") + def getdown_txt = file("${getdownWebsiteDir}/getdown.txt") getdown_txt.write(getdownTextString) - def launch_jvl = file("${project.ext.getdownWebsiteDir}/${getdown_launch_jvl}") + def launch_jvl = file("${getdownWebsiteDir}/${getdown_launch_jvl}") launch_jvl.write("appbase="+props.get("getdown_txt_appbase")) copy { from getdownLauncher rename(file(getdownLauncher).getName(), getdown_launcher_new) - into project.ext.getdownWebsiteDir + into getdownWebsiteDir } copy { @@ -1015,7 +1076,7 @@ task getdownWebsite() { if (file(getdownLauncher).getName() != getdown_launcher) { rename(file(getdownLauncher).getName(), getdown_launcher) } - into project.ext.getdownWebsiteDir + into getdownWebsiteDir } if (! (CHANNEL.startsWith("ARCHIVE") || CHANNEL.startsWith("DEVELOP"))) { @@ -1048,15 +1109,15 @@ task getdownWebsite() { copy { from getdownResourceDir - into "${project.ext.getdownFilesDir}/${getdown_resource_dir}" + into "${getdownFilesDir}/${getdown_resource_dir}" } } if (buildDist) { inputs.dir("${jalviewDir}/${packageDir}") } - outputs.dir(project.ext.getdownWebsiteDir) - outputs.dir(project.ext.getdownFilesDir) + outputs.dir(getdownWebsiteDir) + outputs.dir(getdownFilesDir) } @@ -1068,9 +1129,9 @@ task getdownDigest(type: JavaExec) { classpath = files("${getdownWebsiteDir}/${getdown_launcher}") } main = "com.threerings.getdown.tools.Digester" - args project.ext.getdownWebsiteDir - inputs.dir(project.ext.getdownWebsiteDir) - outputs.file("${project.ext.getdownWebsiteDir}/digest2.txt") + args getdownWebsiteDir + inputs.dir(getdownWebsiteDir) + outputs.file("${getdownWebsiteDir}/digest2.txt") } @@ -1099,8 +1160,8 @@ task getdown() { clean { doFirst { - delete project.ext.getdownWebsiteDir - delete project.ext.getdownFilesDir + delete getdownWebsiteDir + delete getdownFilesDir } } @@ -1126,49 +1187,56 @@ install4j { } -def install4jConf -def macosJavaVMDir -def macosJavaVMTgz -def windowsJavaVMDir -def windowsJavaVMTgz -def install4jDir = "${jalviewDir}/${install4jResourceDir}" -def install4jConfFile = "jalview-installers-java${JAVA_VERSION}.install4j" -install4jConf = "${install4jDir}/${install4jConfFile}" - task copyInstall4jTemplate(type: Copy) { - macosJavaVMDir = "${System.env.HOME}/buildtools/jre/openjdk-java_vm/getdown/macos-jre${JAVA_VERSION}/jre" - macosJavaVMTgz = "${System.env.HOME}/buildtools/jre/openjdk-java_vm/install4j/tgz/macos-jre${JAVA_VERSION}.tar.gz" - windowsJavaVMDir = "${System.env.HOME}/buildtools/jre/openjdk-java_vm/getdown/windows-jre${JAVA_VERSION}/jre" - windowsJavaVMTgz = "${System.env.HOME}/buildtools/jre/openjdk-java_vm/install4j/tgz/windows-jre${JAVA_VERSION}.tar.gz" from (install4jDir) { include install4jTemplate - rename (install4jTemplate, install4jConfFile) - filter(ReplaceTokens, beginToken: '', endToken: '', tokens: ['9999999999': JAVA_VERSION]) - filter(ReplaceTokens, beginToken: '$$', endToken: '$$', - tokens: [ - 'JAVA_VERSION': JAVA_VERSION, - 'JAVA_INTEGER_VERSION': JAVA_INTEGER_VERSION, - 'VERSION': JALVIEW_VERSION, - 'MACOS_JAVA_VM_DIR': macosJavaVMDir, - 'MACOS_JAVA_VM_TGZ': macosJavaVMTgz, - 'WINDOWS_JAVA_VM_DIR': windowsJavaVMDir, - 'WINDOWS_JAVA_VM_TGZ': windowsJavaVMTgz, - 'INSTALL4JINFOPLISTFILEASSOCIATIONS': install4jInfoPlistFileAssociations, - 'COPYRIGHT_MESSAGE': install4jCopyrightMessage, - 'MACOS_BUNDLE_ID': install4jMacOSBundleId, - '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 - ] + rename (install4jTemplate, install4jConfFileName) + filter(ReplaceTokens, + beginToken: '', + endToken: '', + tokens: [ + '9999999999': JAVA_VERSION + ] ) - if (OSX_KEYPASS=="") { - filter(ReplaceTokens, beginToken: 'codeSigning macEnabled="', endToken: '"', tokens: ['true':'codeSigning macEnabled="false"']) - filter(ReplaceTokens, beginToken: 'runPostProcessor="true" ',endToken: 'Processor', tokens: ['post':'runPostProcessor="false" postProcessor']) + filter(ReplaceTokens, + beginToken: '$$', + endToken: '$$', + tokens: [ + 'JAVA_VERSION': JAVA_VERSION, + 'JAVA_INTEGER_VERSION': JAVA_INTEGER_VERSION, + 'VERSION': JALVIEW_VERSION, + 'MACOS_JAVA_VM_DIR': macosJavaVMDir, + 'MACOS_JAVA_VM_TGZ': macosJavaVMTgz, + 'WINDOWS_JAVA_VM_DIR': windowsJavaVMDir, + 'WINDOWS_JAVA_VM_TGZ': windowsJavaVMTgz, + 'INSTALL4JINFOPLISTFILEASSOCIATIONS': install4jInfoPlistFileAssociations, + 'COPYRIGHT_MESSAGE': install4jCopyrightMessage, + 'MACOS_BUNDLE_ID': install4jMacOSBundleId, + '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 + ] + ) + if (OSX_KEYPASS == "") { + filter(ReplaceTokens, + beginToken: 'codeSigning macEnabled="', + endToken: '"', + tokens: [ + 'true': 'codeSigning macEnabled="false"' + ] + ) + filter(ReplaceTokens, + beginToken: 'runPostProcessor="true" ', + endToken: 'Processor', + tokens: [ + 'post': 'runPostProcessor="false" postProcessor' + ] + ) } } into install4jDir - outputs.files(install4jConf) + outputs.files(install4jConfFile) doLast { // include file associations in installer @@ -1178,7 +1246,7 @@ task copyInstall4jTemplate(type: Copy) { flags: "s", match: '', replace: installerFileAssociationsXml, - file: install4jConf + file: install4jConfFile ) /* // include uninstaller applescript app files in dmg @@ -1188,19 +1256,26 @@ task copyInstall4jTemplate(type: Copy) { flags: "s", match: '', replace: installerDMGUninstallerXml, - file: install4jConf + file: install4jConfFile ) */ } } +clean { + doFirst { + delete install4jConfFile + } +} + + task installers(type: com.install4j.gradle.Install4jTask) { group = "distribution" description = "Create the install4j installers" dependsOn getdown dependsOn copyInstall4jTemplate - projectFile = file(install4jConf) + projectFile = file(install4jConfFile) variables = [majorVersion: version.substring(2, 11), build: 001, OSX_KEYSTORE: OSX_KEYSTORE, JSIGN_SH: JSIGN_SH] destination = "${jalviewDir}/${install4jBuildDir}/${JAVA_VERSION}" buildSelected = true @@ -1213,8 +1288,8 @@ task installers(type: com.install4j.gradle.Install4jTask) { println("Using projectFile "+projectFile) } - inputs.dir(project.ext.getdownWebsiteDir) - inputs.file(install4jConf) + inputs.dir(getdownWebsiteDir) + inputs.file(install4jConfFile) inputs.dir(macosJavaVMDir) inputs.dir(windowsJavaVMDir) outputs.dir("${jalviewDir}/${install4jBuildDir}/${JAVA_VERSION}") @@ -1223,7 +1298,7 @@ task installers(type: com.install4j.gradle.Install4jTask) { clean { doFirst { - delete install4jConf + delete install4jConfFile } } @@ -1274,28 +1349,35 @@ task sourceDist (type: Tar) { from(jalviewDir) { exclude (EXCLUDE_FILES) include (PROCESS_FILES) - filter(ReplaceTokens, beginToken: '$$', endToken: '$$', tokens: ['Version-Rel': JALVIEW_VERSION,'Year-Rel': getDate("yyyy")]) + filter(ReplaceTokens, + beginToken: '$$', + endToken: '$$', + tokens: [ + 'Version-Rel': JALVIEW_VERSION, + 'Year-Rel': getDate("yyyy") + ] + ) } from(jalviewDir) { exclude (EXCLUDE_FILES) exclude (PROCESS_FILES) - exclude ("appletlib") - exclude ("**/*locales") - exclude ("*locales/**") - exclude ("utils/InstallAnywhere") + exclude ("appletlib") + exclude ("**/*locales") + exclude ("*locales/**") + exclude ("utils/InstallAnywhere") exclude (getdown_files_dir) - exclude (getdown_website_dir) + exclude (getdown_website_dir) - // exluding these as not using jars as modules yet - exclude ("${j11modDir}/**/*.jar") -} -// from (jalviewDir) { -// // explicit includes for stuff that seemed to not get included -// include(fileTree("test/**/*.")) -// exclude(EXCLUDE_FILES) -// exclude(PROCESS_FILES) -// } + // exluding these as not using jars as modules yet + exclude ("${j11modDir}/**/*.jar") + } + // from (jalviewDir) { + // // explicit includes for stuff that seemed to not get included + // include(fileTree("test/**/*.")) + // exclude(EXCLUDE_FILES) + // exclude(PROCESS_FILES) + // } } @@ -1308,24 +1390,13 @@ task helppages { } -def jalviewjsBuildDir -def jalviewjsSiteDir -def jalviewjsTransferSiteJsDir -def jalviewjsTransferSiteLibDir -def jalviewjsTransferSiteSwingJsDir -def jalviewjsTransferSiteCoreDir -task jalviewjsSitePath { - def relativeBuildDir = file(jalviewDirAbsolutePath).toPath().relativize(buildDir.toPath()) - jalviewjsBuildDir = "${relativeBuildDir}/jalviewjs" - jalviewjsSiteDir = "${jalviewjsBuildDir}/${jalviewjs_site_dir}" - jalviewjsTransferSiteJsDir = "${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_js" - jalviewjsTransferSiteLibDir = "${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_lib" - jalviewjsTransferSiteSwingJsDir = "${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_swingjs" - jalviewjsTransferSiteCoreDir = "${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_core" +task j2sSetHeadlessBuild { + doFirst { + IN_ECLIPSE = false + } } -def eclipseWorkspace task jalviewjsSetEclipseWorkspace { def propKey = "jalviewjs_eclipse_workspace" def propVal = null @@ -1358,6 +1429,14 @@ task jalviewjsSetEclipseWorkspace { eclipseWorkspace = file(eclipseWsDir) doFirst { + // do not run a headless transpile when we claim to be in Eclipse + if (IN_ECLIPSE) { + println("Skipping task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") + throw new StopExecutionException("Not running headless transpile whilst IN_ECLIPSE is '${IN_ECLIPSE}'") + } else { + println("Running task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") + } + if (writeProps) { props.setProperty(propKey, eclipseWsDir) propsFile.parentFile.mkdirs() @@ -1376,10 +1455,6 @@ task jalviewjsSetEclipseWorkspace { } -def eclipseBinary -def eclipseVersion -def eclipseDebug = false -def eclipseVersionSuffix = "" task jalviewjsEclipsePaths { def eclipseProduct @@ -1420,6 +1495,14 @@ task jalviewjsEclipsePaths { eclipseDebug = (project.hasProperty(propKey) && project.getProperty(propKey).equals("true")) doFirst { + // do not run a headless transpile when we claim to be in Eclipse + if (IN_ECLIPSE) { + println("Skipping task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") + throw new StopExecutionException("Not running headless transpile whilst IN_ECLIPSE is '${IN_ECLIPSE}'") + } else { + println("Running task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") + } + if (!assumedVersion) { println("ECLIPSE VERSION=${eclipseVersion}") } @@ -1473,8 +1556,6 @@ jalviewjsEclipseCopyDropins.finalizedBy jalviewjsCleanEclipse task jalviewjsTransferUnzipSwingJs { - dependsOn jalviewjsSitePath - def file_zip = "${jalviewDir}/${jalviewjs_swingjs_zip}" doLast { @@ -1490,8 +1571,6 @@ task jalviewjsTransferUnzipSwingJs { task jalviewjsTransferUnzipLib { - dependsOn jalviewjsSitePath - def zipFiles = fileTree(dir: "${jalviewDir}/${jalviewjs_libjs_dir}", include: "*.zip") doLast { @@ -1518,8 +1597,6 @@ task jalviewjsCreateJ2sSettings(type: WriteProperties) { group "JalviewJS" description "Create the .j2s file from the j2s.* properties" - dependsOn jalviewjsSitePath - outputFile ("${jalviewDir}/${jalviewjs_j2s_settings}") def j2s_props = project.properties.findAll { it.key.startsWith("j2s.") }.sort { it.key } def siteDirProperty = "j2s.site.directory" @@ -1551,7 +1628,6 @@ task jalviewjsEclipseSetup { task jalviewjsSyncAllLibs (type: Sync) { - dependsOn jalviewjsSitePath dependsOn jalviewjsTransferUnzipAllLibs def inputFiles = fileTree(dir: "${jalviewDir}/${jalviewjsTransferSiteLibDir}") inputFiles += fileTree(dir: "${jalviewDir}/${jalviewjsTransferSiteSwingJsDir}") @@ -1573,7 +1649,6 @@ task jalviewjsSyncAllLibs (type: Sync) { task jalviewjsSyncResources (type: Sync) { - dependsOn jalviewjsSitePath def inputFiles = fileTree(dir: "${jalviewDir}/${resourceDir}") def outputDir = "${jalviewDir}/${jalviewjsSiteDir}/${jalviewjs_j2s_subdir}" @@ -1593,7 +1668,6 @@ task jalviewjsSyncResources (type: Sync) { task jalviewjsSyncSiteResources (type: Sync) { - dependsOn jalviewjsSitePath def inputFiles = fileTree(dir: "${jalviewDir}/${jalviewjs_site_resource_dir}") def outputDir = "${jalviewDir}/${jalviewjsSiteDir}" @@ -1613,7 +1687,6 @@ task jalviewjsSyncSiteResources (type: Sync) { task jalviewjsSyncBuildProperties (type: Sync) { - dependsOn jalviewjsSitePath dependsOn createBuildProperties def inputFiles = [file(buildProperties)] def outputDir = "${jalviewDir}/${jalviewjsSiteDir}/${jalviewjs_j2s_subdir}" @@ -1640,8 +1713,11 @@ task jalviewjsProjectImport(type: Exec) { doFirst { // do not run a headless import when we claim to be in Eclipse - if (ECLIPSE_IDE_DEVELOPER.equals("true")) { - throw new StopExecutionException("Not running headless import whilst ECLIPSE_IDE_DEVELOPER is '"+ECLIPSE_IDE_DEVELOPER+"'") + if (IN_ECLIPSE) { + println("Skipping task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") + throw new StopExecutionException("Not running headless import whilst IN_ECLIPSE is '${IN_ECLIPSE}'") + } else { + println("Running task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") } } @@ -1653,6 +1729,9 @@ task jalviewjsProjectImport(type: Exec) { args += "-debug" } args += [ "--launcher.appendVmargs", "-vmargs", "-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=${jalviewDirAbsolutePath}/${jalviewjsBuildDir}/${jalviewjs_eclipse_tmp_dropins_dir}" ] + if (!IN_ECLIPSE) { + args += [ "-D${j2sHeadlessBuildProperty}=true" ] + } inputs.file("${jalviewDir}/.project") outputs.upToDateWhen { @@ -1668,8 +1747,11 @@ task jalviewjsTranspile(type: Exec) { doFirst { // do not run a headless transpile when we claim to be in Eclipse - if (ECLIPSE_IDE_DEVELOPER.equals("true")) { - throw new StopExecutionException("Not running headless transpile whilst ECLIPSE_IDE_DEVELOPER is '"+ECLIPSE_IDE_DEVELOPER+"'") + if (IN_ECLIPSE) { + println("Skipping task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") + throw new StopExecutionException("Not running headless transpile whilst IN_ECLIPSE is '${IN_ECLIPSE}'") + } else { + println("Running task ${name} as IN_ECLIPSE=${IN_ECLIPSE}") } } @@ -1679,6 +1761,9 @@ task jalviewjsTranspile(type: Exec) { args += "-debug" } args += [ "--launcher.appendVmargs", "-vmargs", "-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=${jalviewDirAbsolutePath}/${jalviewjsBuildDir}/${jalviewjs_eclipse_tmp_dropins_dir}" ] + if (!IN_ECLIPSE) { + args += [ "-D${j2sHeadlessBuildProperty}=true" ] + } def stdout def stderr @@ -1807,8 +1892,10 @@ def jalviewjsCallCore(FileCollection list, String prefixFile, String suffixFile, } -task jalviewjsNoTranspileBuildAllCores { - dependsOn jalviewjsSitePath +task jalviewjsBuildAllCores { + group "JalviewJS" + description "Build the core js lib closures listed in the classlists dir" + dependsOn jalviewjsTranspile dependsOn jalviewjsTransferUnzipSwingJs def j2sDir = "${jalviewDir}/${jalviewjsTransferSiteJsDir}/${jalviewjs_j2s_subdir}" @@ -1833,7 +1920,7 @@ task jalviewjsNoTranspileBuildAllCores { // _jmol and _jalview cores. Add any other peculiar classlist.txt files here classlistFiles += [ 'file': file("${jalviewDir}/${jalviewjs_classlist_jmol}"), 'name': "_jvjmol" ] - classlistFiles += [ 'file': file("${jalviewDir}/${jalviewjs_classlist_jalview}"), 'name': "_jalview" ] + classlistFiles += [ 'file': file("${jalviewDir}/${jalviewjs_classlist_jalview}"), 'name': jalviewjsJalviewCoreName ] def classlists = [] @@ -1887,7 +1974,7 @@ task jalviewjsNoTranspileBuildAllCores { def logOutFile = file("${jalviewDirAbsolutePath}/${jalviewjsBuildDir}/${jalviewjs_j2s_closure_stdout}") logOutFile.getParentFile().mkdirs() logOutFile.createNewFile() - logOutFile.write(getDate("yyyy-MM-dd HH:mm:ss")+" jalviewjsNoTranspileBuildAllCores\n----\n") + logOutFile.write(getDate("yyyy-MM-dd HH:mm:ss")+" jalviewjsBuildAllCores\n----\n") classlists.each { jalviewjsCallCore(it.list, prefixFile, suffixFile, it.jsfile, it.zjsfile, logOutFile, jalviewjs_j2s_to_console.equals("true")) @@ -1897,41 +1984,39 @@ task jalviewjsNoTranspileBuildAllCores { } -jalviewjsNoTranspileBuildAllCores.mustRunAfter jalviewjsTranspile - - -task jalviewjsBuildAllCores { - group "JalviewJS" - description "Build the core js lib closures listed in the classlists dir" - dependsOn jalviewjsTranspile - dependsOn jalviewjsNoTranspileBuildAllCores -} - - task jalviewjsPublishCoreTemplate(type: Sync) { - dependsOn jalviewjsSitePath dependsOn jalviewjsBuildAllCores -// clean this up def inputFile = file("${jalviewDir}/${j2s_template_html}") def outputDir = "${jalviewDir}/${jalviewjsTransferSiteCoreDir}" -// clean this up - def jalviewTemplateName = "JalviewJS" - def jalviewCoreName = "_jalview" - from inputFile into outputDir def outputFiles = [] + jalviewjsJalviewCoreHtmlFile = "${jalviewjsJalviewTemplateName}_${jalviewjsJalviewCoreName}.html" rename { filename -> outputFiles += "${outputDir}/${filename}" if (filename.equals(inputFile.getName())) { - return "${jalviewTemplateName}_${jalviewCoreName}.html" + return jalviewjsJalviewCoreHtmlFile } return null } - filter(ReplaceTokens, beginToken: '_', endToken: '_', tokens: ['MAIN': mainClass, 'CODE': "null", 'NAME': jalviewTemplateName]) - filter(ReplaceTokens, beginToken: '', endToken: '', tokens: ['NONE': jalviewCoreName]) + filter(ReplaceTokens, + beginToken: '_', + endToken: '_', + tokens: [ + 'MAIN': '"'+mainClass+'"', + 'CODE': "null", + 'NAME': jalviewjsJalviewTemplateName + ] + ) + filter(ReplaceTokens, + beginToken: '', + endToken: '', + tokens: [ + 'NONE': jalviewjsJalviewCoreName + ] + ) preserve { include "**" } @@ -1940,9 +2025,8 @@ task jalviewjsPublishCoreTemplate(type: Sync) { } -task jalviewjsNoTranspileSyncCore (type: Sync) { - dependsOn jalviewjsSitePath - dependsOn jalviewjsNoTranspileBuildAllCores +task jalviewjsSyncCore (type: Sync) { + dependsOn jalviewjsBuildAllCores dependsOn jalviewjsPublishCoreTemplate def inputFiles = fileTree(dir: "${jalviewDir}/${jalviewjsTransferSiteCoreDir}") def outputDir = "${jalviewDir}/${jalviewjsSiteDir}" @@ -1962,13 +2046,6 @@ task jalviewjsNoTranspileSyncCore (type: Sync) { } -task jalviewjsSyncCore (type: Sync) { - dependsOn jalviewjsTranspile - dependsOn jalviewjsNoTranspileSyncCore - dependsOn "jalviewjsBuildAllCores" -} - - // this Copy version of TransferSiteJs will delete anything else in the target dir task jalviewjsCopyTransferSiteJs(type: Copy) { dependsOn jalviewjsTranspile @@ -1978,7 +2055,7 @@ task jalviewjsCopyTransferSiteJs(type: Copy) { // this Sync version of TransferSite is used by buildship to keep the website automatically up to date when a file changes -task jalviewjsNoTranspileSyncTransferSiteJs(type: Sync) { +task jalviewjsSyncTransferSiteJs(type: Sync) { from "${jalviewDir}/${jalviewjsTransferSiteJsDir}" include "**/*.*" into "${jalviewDir}/${jalviewjsSiteDir}" @@ -1987,24 +2064,16 @@ task jalviewjsNoTranspileSyncTransferSiteJs(type: Sync) { } } + jalviewjsSyncAllLibs.mustRunAfter jalviewjsCopyTransferSiteJs jalviewjsSyncResources.mustRunAfter jalviewjsCopyTransferSiteJs jalviewjsSyncSiteResources.mustRunAfter jalviewjsCopyTransferSiteJs jalviewjsSyncBuildProperties.mustRunAfter jalviewjsCopyTransferSiteJs -jalviewjsSyncAllLibs.mustRunAfter jalviewjsNoTranspileSyncTransferSiteJs -jalviewjsSyncResources.mustRunAfter jalviewjsNoTranspileSyncTransferSiteJs -jalviewjsSyncSiteResources.mustRunAfter jalviewjsNoTranspileSyncTransferSiteJs -jalviewjsSyncBuildProperties.mustRunAfter jalviewjsNoTranspileSyncTransferSiteJs - - -task jalviewjsNoTranspilePrepareSite { - dependsOn jalviewjsSyncAllLibs - dependsOn jalviewjsSyncResources - dependsOn jalviewjsSyncSiteResources - dependsOn jalviewjsSyncBuildProperties - dependsOn jalviewjsNoTranspileSyncCore -} +jalviewjsSyncAllLibs.mustRunAfter jalviewjsSyncTransferSiteJs +jalviewjsSyncResources.mustRunAfter jalviewjsSyncTransferSiteJs +jalviewjsSyncSiteResources.mustRunAfter jalviewjsSyncTransferSiteJs +jalviewjsSyncBuildProperties.mustRunAfter jalviewjsSyncTransferSiteJs task jalviewjsPrepareSite { @@ -2061,7 +2130,6 @@ task jalviewjsServer { group "JalviewJS" def filename = "jalviewjsTest.html" description "Starts a webserver on localhost to test the website. See ${filename} to access local site on most recently used port." - dependsOn jalviewjsSitePath def htmlFile = "${jalviewDirAbsolutePath}/${filename}" doLast { @@ -2070,19 +2138,23 @@ task jalviewjsServer { def start = port def running = false def url + def urlcore while(port < start+1000 && !running) { try { def doc_root = new File("${jalviewDirAbsolutePath}/${jalviewjsSiteDir}") def jalviewjsServer = factory.start(doc_root, port) running = true url = jalviewjsServer.getResourceUrl(jalviewjs_server_resource) + urlcore = jalviewjsServer.getResourceUrl(jalviewjsJalviewCoreHtmlFile) println("SERVER STARTED with document root ${doc_root}.") println("Go to "+url+" . Run gradle --stop to stop (kills all gradle daemons).") println("For debug: "+url+"?j2sdebug") + println("For core: "+urlcore) file(htmlFile).text = """ -

Jalview JS Test. <${url}>

-

Jalview JS Test with debug. <${url}?j2sdebug<

+

JalviewJS Test. <${url}>

+

JalviewJS Test with debug. <${url}?j2sdebug<

+

${jalviewjsJalviewTemplateName} Core Test. <${urlcore}>

""" } catch (Exception e) { @@ -2130,10 +2202,20 @@ task jalviewjsIDE_j2sFile { } -task jalviewjsIDE_BuildAllCores { +task jalviewjsIDE_SyncCore { group "00 JalviewJS in Eclipse" - description "Build the core js lib closures listed in the classlists dir" - dependsOn jalviewjsNoTranspileBuildAllCores + description "Build the core js lib closures listed in the classlists dir and publish core html from template" + dependsOn jalviewjsSyncCore +} + + +task jalviewjsIDE_PrepareSite { + group "00 JalviewJS in Eclipse" + description "Sync libs and resources to site dir, but not closure cores" + dependsOn jalviewjsSyncAllLibs + dependsOn jalviewjsSyncResources + dependsOn jalviewjsSyncSiteResources + dependsOn jalviewjsSyncBuildProperties } @@ -2141,7 +2223,7 @@ task jalviewjsIDE_AssembleSite { group "00 JalviewJS in Eclipse" description "Assembles the Eclipse transpiled site and unzips supporting zipfiles" dependsOn jalviewjsIDE_CopyTransferSiteJs - dependsOn jalviewjsNoTranspilePrepareSite + dependsOn jalviewjsPrepareSite } @@ -2168,8 +2250,7 @@ task eclipseSynchronizationTask { // buildship runs this at build time task eclipseAutoBuildTask { - dependsOn jalviewjsNoTranspileSyncTransferSiteJs - dependsOn jalviewjsNoTranspilePrepareSite + dependsOn jalviewjsIDE_PrepareSite }