ext {
jalviewDirAbsolutePath = file(jalviewDir).getAbsolutePath()
+ jalviewDirRelativePath = jalviewDir
// local build environment properties
def localProps = "${jalviewDirAbsolutePath}/local.properties"
}
}
-
// this property set when running Eclipse headlessly
j2sHeadlessBuildProperty = string("net.sf.j2s.core.headlessbuild")
// this property set by Eclipse
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}")
- classes = string("${jalviewDir}/${classesDir}")
+ classesDir = string("${jalviewDir}/${classes_dir}")
if (clover.equals("true")) {
use_clover = true
- classes = string("${buildDir}/${cloverClassesDir}")
+ classesDir = string("${buildDir}/${cloverClassesDir}")
} else {
use_clover = false
- classes = string("${jalviewDir}/${classesDir}")
+ classesDir = string("${jalviewDir}/${classes_dir}")
}
+ classes = classesDir
+
getdownWebsiteDir = string("${jalviewDir}/${getdown_website_dir}/${JAVA_VERSION}")
getdownDir = string("")
reportRsyncCmd = false
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 = string("${jalviewDir}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${classesDir}/${build_properties_file}")
break
case "RELEASE":
getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}")
getdown_app_base = string("${getdown_channel_base}/${getdownDir}")
getdown_app_dir = getdown_app_dir_release
- buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${classesDir}/${build_properties_file}")
reportRsyncCommand = true
break
exit
} else {
packageDir = string("${ARCHIVEDIR}/${packageDir}")
- buildProperties = string("${ARCHIVEDIR}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${ARCHIVEDIR}/${classes_dir}/${build_properties_file}")
buildDist = false
}
reportRsyncCommand = true
exit
} else {
packageDir = string("${ARCHIVEDIR}/${packageDir}")
- buildProperties = string("${ARCHIVEDIR}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${ARCHIVEDIR}/${classes_dir}/${build_properties_file}")
buildDist = false
}
reportRsyncCommand = true
getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}")
getdown_app_base = string("${getdown_channel_base}/${getdownDir}")
getdown_app_dir = getdown_app_dir_alt
- buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${classesDir}/${build_properties_file}")
reportRsyncCommand = true
break
getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}")
getdown_app_base = string("${getdown_channel_base}/${getdownDir}")
getdown_app_dir = getdown_app_dir_alt
- buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${classesDir}/${build_properties_file}")
reportRsyncCommand = true
break
getdownDir = string("${getdown_channel_name}/${JAVA_VERSION}")
getdown_app_base = string("${getdown_channel_base}/${getdownDir}")
getdown_app_dir = getdown_app_dir_alt
- buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${classesDir}/${build_properties_file}")
reportRsyncCommand = true
break
case "LOCAL":
getdown_app_base = file(getdownWebsiteDir).toURI().toString()
getdown_app_dir = getdown_app_dir_alt
- buildProperties = string("${jalviewDir}/${classesDir}/${build_properties_file}")
+ buildProperties = string("${classesDir}/${build_properties_file}")
getdownLauncher = string("${jalviewDir}/${getdown_lib_dir}/${getdown_launcher_local}")
break
buildingHTML = string("${jalviewDir}/${docDir}/building.html")
- helpFile = string("${classes}/${helpDir}/help.jhm")
+ helpFile = string("${classesDir}/${help_dir}/help.jhm")
+ helpParentDir = string("${jalviewDir}/${help_parent_dir}")
+ helpDir = string("${help_dir}")
+ helpSourceDir = string("${helpParentDir}/${helpDir}")
relativeBuildDir = file(jalviewDirAbsolutePath).toPath().relativize(buildDir.toPath())
jalviewjsJalviewCoreName = string(jalviewjs_core_name)
jalviewjsCoreClasslists = []
jalviewjsJalviewTemplateName = string(jalviewjs_name)
+ jalviewjsJ2sSettingsFileName = string("${jalviewDir}/${jalviewjs_j2s_settings}")
+ jalviewjsJ2sProps = null
eclipseWorkspace = null
eclipseBinary = string("")
sourceSets {
main {
java {
- srcDirs "${jalviewDir}/${sourceDir}"
- outputDir = file(project.classes)
+ srcDirs sourceDir
+ outputDir = file(classesDir)
}
resources {
- srcDirs "${jalviewDir}/${resourceDir}"
+ srcDirs resourceDir
}
jar.destinationDir = file("${jalviewDir}/${packageDir}")
test {
java {
- srcDirs "${jalviewDir}/${testSourceDir}"
+ srcDirs testSourceDir
outputDir = file("${jalviewDir}/${testOutputDir}")
}
HashMap<String, Boolean> alreadyAddedSrcPath = new HashMap<>();
cp.entries.each { entry ->
if (entry.kind == 'src') {
- if (alreadyAddedSrcPath.getAt(entry.path) || !(entry.path == sourceDir || entry.path == testSourceDir)) {
+ if (alreadyAddedSrcPath.getAt(entry.path) || !(entry.path == bareSourceDir || entry.path == bareTestSourceDir)) {
removeTheseToo += entry
} else {
alreadyAddedSrcPath.putAt(entry.path, true)
}
cp.entries.removeAll(removeTheseToo)
- if (file("${jalviewDir}/${eclipse_bin_dir}/main").isDirectory()) {
- cp.entries += new Output("${eclipse_bin_dir}/main")
- }
- if (file(helpParentDir).isDirectory()) {
- cp.entries += new Library(fileReference(helpParentDir))
+ cp.entries += new Output("${eclipse_bin_dir}/main")
+ if (file(helpSourceDir).isDirectory()) {
+ cp.entries += new Library(fileReference(helpSourceDir))
}
if (file(resourceDir).isDirectory()) {
cp.entries += new Library(fileReference(resourceDir))
if (IN_ECLIPSE) {
// Don't want these to be activated if in headless build
- //synchronizationTasks "eclipseConfiguration"
+ synchronizationTasks "eclipseSynchronizationTask"
autoBuildTasks "eclipseAutoBuildTask"
}
}
task cloverInstr() {
// only instrument source, we build test classes as normal
- inputs.files files (sourceSets.main.allJava) // , fileTree(dir:"$jalviewDir/$testSourceDir", include: ["**/*.java"]))
+ inputs.files files (sourceSets.main.allJava) // , fileTree(dir: testSourceDir, include: ["**/*.java"]))
outputs.dir cloverInstrDir
doFirst {
task createBuildProperties(type: WriteProperties) {
dependsOn setGitVals
- inputs.dir("${jalviewDir}/${sourceDir}")
- inputs.dir("${jalviewDir}/${resourceDir}")
+ inputs.dir(sourceDir)
+ inputs.dir(resourceDir)
file(buildProperties).getParentFile().mkdirs()
outputFile (buildProperties)
// taking time specific comment out to allow better incremental builds
task syncDocs(type: Sync) {
dependsOn convertBuildingMD
- def syncDir = "${classes}/${docDir}"
+ def syncDir = "${classesDir}/${docDir}"
from fileTree("${jalviewDir}/${docDir}")
into syncDir
task copyHelp(type: Copy) {
- def inputDir = "${jalviewDir}/${helpParentDir}/${helpDir}"
- def outputDir = "${classes}/${helpDir}"
+ def inputDir = helpSourceDir
+ def outputDir = "${classesDir}/${helpDir}"
from(inputDir) {
exclude '**/*.gif'
exclude '**/*.jpg'
task syncLib(type: Sync) {
- def syncDir = "${classes}/${libDistDir}"
+ def syncDir = "${classesDir}/${libDistDir}"
from fileTree("${jalviewDir}/${libDistDir}")
into syncDir
}
task syncResources(type: Sync) {
- from "${jalviewDir}/${resourceDir}"
+ from resourceDir
include "**/*.*"
- into "${classes}"
+ into "${classesDir}"
preserve {
include "**"
}
dependsOn copyHelp
classpath = sourceSets.main.compileClasspath
main = "com.sun.java.help.search.Indexer"
- workingDir = "${classes}/${helpDir}"
+ workingDir = "${classesDir}/${helpDir}"
def argDir = "html"
args = [ argDir ]
inputs.dir("${workingDir}/${argDir}")
- outputs.dir("${classes}/doc")
- outputs.dir("${classes}/help")
+ outputs.dir("${classesDir}/doc")
+ outputs.dir("${classesDir}/help")
outputs.file("${workingDir}/JavaHelpSearch/DOCS")
outputs.file("${workingDir}/JavaHelpSearch/DOCS.TAB")
outputs.file("${workingDir}/JavaHelpSearch/OFFSETS")
classpath = files("${jalviewDir}/${utilsDir}")
main = "HelpLinksChecker"
workingDir = jalviewDir
- def help = "${classes}/${helpDir}"
- args = [ "${classes}/${helpDir}", "-nointernet" ]
+ def help = "${classesDir}/${helpDir}"
+ args = [ "${classesDir}/${helpDir}", "-nointernet" ]
def outFOS = new FileOutputStream(helpLinksCheckerOutFile, false) // false == don't append
def errFOS = outFOS
outFOS,
errorOutput)
- inputs.dir("${classes}/${helpDir}")
+ inputs.dir("${classesDir}/${helpDir}")
outputs.file(helpLinksCheckerOutFile)
}
// import the pubhtmlhelp target
ant.properties.basedir = "${jalviewDir}"
-ant.properties.helpBuildDir = "${jalviewDirAbsolutePath}/${classes}/${helpDir}"
+ant.properties.helpBuildDir = "${jalviewDirAbsolutePath}/${classes_dir}/${helpDir}"
ant.importBuild "${utilsDir}/publishHelp.xml"
exclude "**/*.jar"
exclude "**/*.jar.*"
- inputs.dir("${classes}")
+ inputs.dir(classesDir)
outputs.file("${jalviewDir}/${packageDir}/${archiveName}")
}
task copyJars(type: Copy) {
- from fileTree(dir: "${classes}", include: "**/*.jar").files
+ from fileTree(dir: classesDir, include: "**/*.jar").files
into "${jalviewDir}/${packageDir}"
}
dependsOn copyHelp
dependsOn pubhtmlhelp
- inputs.dir("${classes}/${helpDir}")
- outputs.dir("${helpOutputDir}")
+ inputs.dir("${classesDir}/${helpDir}")
+ outputs.dir("${buildDir}/distributions/${helpDir}")
}
//inputs.property(propKey, eclipseWsDir) // eclipseWsDir only gets set once this task runs, so will be out-of-date
outputs.file(propsFileName)
- outputs.upToDateWhen { eclipseWorkspace.exists() }
+ outputs.upToDateWhen { eclipseWorkspace.exists() && propsFile.exists() }
}
group "JalviewJS"
description "Create the .j2s file from the j2s.* properties"
- outputFile ("${jalviewDir}/${jalviewjs_j2s_settings}")
- def j2s_props = project.properties.findAll { it.key.startsWith("j2s.") }.sort { it.key }
+ jalviewjsJ2sProps = project.properties.findAll { it.key.startsWith("j2s.") }.sort { it.key }
def siteDirProperty = "j2s.site.directory"
def setSiteDir = false
- j2s_props.each { prop, val ->
+ jalviewjsJ2sProps.each { prop, val ->
if (val != null) {
if (prop == siteDirProperty) {
if (!(val.startsWith('/') || val.startsWith("file://") )) {
property(prop,val)
}
if (!setSiteDir) { // default site location, don't override specifically set property
- property(siteDirProperty,"${jalviewDir}/${jalviewjsTransferSiteJsDir}")
+ property(siteDirProperty,"${jalviewDirRelativePath}/${jalviewjsTransferSiteJsDir}")
}
}
- inputs.properties(j2s_props)
- outputs.file(outputFile)
+ outputFile = jalviewjsJ2sSettingsFileName
+
+ if (! IN_ECLIPSE) {
+ inputs.properties(jalviewjsJ2sProps)
+ outputs.file(jalviewjsJ2sSettingsFileName)
+ }
}
task jalviewjsSyncResources (type: Sync) {
- def inputFiles = fileTree(dir: "${jalviewDir}/${resourceDir}")
+ def inputFiles = fileTree(dir: resourceDir)
def outputDir = "${jalviewDir}/${jalviewjsSiteDir}/${jalviewjs_j2s_subdir}"
from inputFiles
// _all core
def allClasslistName = "_all"
def allJsFiles = fileTree(dir: j2sDir, include: "**/*.js")
- //allJsFiles += fileTree(dir: libJ2sDir, include: "**/*.js")
- //allJsFiles += fileTree(dir: swingJ2sDir, include: "**/*.js")
+ allJsFiles += fileTree(
+ dir: libJ2sDir,
+ include: "**/*.js",
+ excludes: [
+ // these exlusions are files that the closure-compiler produces errors for. Should fix them
+ "**/org/jmol/jvxl/readers/IsoIntersectFileReader.js",
+ "**/org/jmol/export/JSExporter.js"
+ ]
+ )
+ allJsFiles += fileTree(
+ dir: swingJ2sDir,
+ include: "**/*.js",
+ excludes: [
+ // these exlusions are files that the closure-compiler produces errors for. Should fix them
+ "**/sun/misc/Unsafe.js",
+ "**/swingjs/jquery/jquery-editable-select.js",
+ "**/swingjs/jquery/j2sComboBox.js",
+ "**/sun/misc/FloatingDecimal.js"
+ ]
+ )
def allClasslist = [
'jsfile': "${outputDir}/core${allClasslistName}.js",
'zjsfile': "${outputDir}/core${allClasslistName}.z.js",
}
def htmlText = """
<p><a href="${url}">JalviewJS Test. <${url}></a></p>
- <p><a href="${url}?j2sdebug">JalviewJS Test with debug. <${url}?j2sdebug<</a></p>
+ <p><a href="${url}?j2sdebug">JalviewJS Test with debug. <${url}?j2sdebug></a></p>
+ <p><a href="${url}?j2sverbose">JalviewJS Test with verbose. <${url}?j2sdebug></a></p>
"""
jalviewjsCoreClasslists.each { cl ->
def urlcore = jalviewjsServer.getResourceUrl(file(cl.outputfile).getName())
// buildship runs this at import
-task eclipseConfiguration {
- dependsOn eclipseSetup
+task eclipseSynchronizationTask {
+ //dependsOn eclipseSetup
dependsOn jalviewjsIDE_j2sFile
}