X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=build.gradle;h=535f3b9f4b6961c63a270958b813eb93cdc67e1c;hb=54dfce251873f378d86ae2c937c6dadd32226671;hp=52c0385b6459302c6a85d1971d40debe3b003e26;hpb=6f830d8a3d9347f9cf31b41f0b05a33ec74bc0b8;p=jalview.git diff --git a/build.gradle b/build.gradle index 52c0385..535f3b9 100644 --- a/build.gradle +++ b/build.gradle @@ -1274,16 +1274,14 @@ task helppages { def jalviewjsBuildDir def jalviewjsSiteDir -def jalviewjsTransferSiteJsDir +def jalviewjsTransferSiteJSDir def jalviewjsTransferSiteLibDir -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" + jalviewjsTransferSiteJSDir = "${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_js" jalviewjsTransferSiteLibDir = "${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_lib" - jalviewjsTransferSiteCoreDir = "${jalviewjsBuildDir}/tmp/${jalviewjs_site_dir}_core" } def eclipseWorkspace @@ -1331,9 +1329,8 @@ task jalviewjsSetEclipseWorkspace { println("ECLIPSE WORKSPACE: "+eclipseWorkspace.getPath()) } - //inputs.property(propKey, eclipseWsDir) // eclipseWsDir only gets set once this task runs, so will be out-of-date + inputs.property(propKey, eclipseWsDir) outputs.file(propsFileName) - outputs.upToDateWhen { eclipseWorkspace.exists() } } @@ -1497,14 +1494,14 @@ task jalviewjsCreateJ2sSettings(type: WriteProperties) { if (val != null) { if (prop == siteDirProperty) { if (!(val.startsWith('/') || val.startsWith("file://") )) { - val = "${jalviewDir}/${jalviewjsTransferSiteJsDir}/${val}" + val = "${jalviewDir}/${jalviewjsTransferSiteJSDir}/${val}" } setSiteDir = true } property(prop,val) } if (!setSiteDir) { // default site location, don't override specifically set property - property(siteDirProperty,"${jalviewDir}/${jalviewjsTransferSiteJsDir}") + property(siteDirProperty,"${jalviewDir}/${jalviewjsTransferSiteJSDir}") } } inputs.properties(j2s_props) @@ -1537,26 +1534,6 @@ task jalviewjsSyncLib (type: Sync) { inputs.files inputFiles } -task jalviewjsSyncCore (type: Sync) { - dependsOn jalviewjsSitePath - dependsOn "jalviewjsBuildAllCores" - def inputFiles = fileTree(dir: "${jalviewDir}/${jalviewjsTransferSiteCoreDir}") - def outputDir = "${jalviewDir}/${jalviewjsSiteDir}" - - from inputFiles - into outputDir - def outputFiles = [] - rename { filename -> - outputFiles += "${outputDir}/${filename}" - null - } - preserve { - include "**" - } - outputs.files outputFiles - inputs.files inputFiles -} - task jalviewjsSyncResources (type: Sync) { dependsOn jalviewjsSitePath def inputFiles = fileTree(dir: "${jalviewDir}/${resourceDir}") @@ -1620,8 +1597,7 @@ task jalviewjsProjectImport(type: Exec) { dependsOn jalviewjsEclipsePaths dependsOn jalviewjsEclipseSetup - //def projdir = eclipseWorkspace.getPath()+"/.metadata/.plugins/org.eclipse.core.resources/.projects/jalview/org.eclipse.jdt.core" - def projdir = eclipseWorkspace.getPath()+"/.metadata/.plugins/org.eclipse.core.resources/.projects/jalview" + def projdir = eclipseWorkspace.getPath()+"/.metadata/.plugins/org.eclipse.core.resources/.projects/jalview/org.eclipse.jdt.core" executable(eclipseBinary) args(["-nosplash", "--launcher.suppressErrors", "-application", "com.seeq.eclipse.importprojects.headlessimport", "-data", eclipseWorkspace.getPath(), "-import", jalviewDirAbsolutePath]) if (eclipseDebug) { @@ -1630,9 +1606,7 @@ task jalviewjsProjectImport(type: Exec) { args += [ "--launcher.appendVmargs", "-vmargs", "-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=${jalviewDirAbsolutePath}/${jalviewjsBuildDir}/${jalviewjs_eclipse_tmp_dropins_dir}" ] inputs.file("${jalviewDir}/.project") - outputs.upToDateWhen { - file(projdir).exists() - } + outputs.upToDateWhen { file(projdir).exists() } } task jalviewjsTranspile(type: Exec) { @@ -1653,7 +1627,7 @@ task jalviewjsTranspile(type: Exec) { stdout = new ByteArrayOutputStream() stderr = new ByteArrayOutputStream() - def logOutFileName = "${jalviewDirAbsolutePath}/${jalviewjsBuildDir}/${jalviewjs_j2s_transpile_stdout}" + def logOutFileName = "${jalviewDirAbsolutePath}/${jalviewjsBuildDir}/${jalviewjs_j2s_stdout}" def logOutFile = file(logOutFileName) logOutFile.createNewFile() logOutFile.text = """ROOT: ${jalviewjs_eclipse_root} @@ -1695,25 +1669,25 @@ DEBUG: ${eclipseDebug} doLast { if (stdout.toString().contains("Error processing ")) { // j2s did not complete transpile - throw new GradleException("Error during transpilation:\n${stderr}\nSee eclipse transpile log file '${jalviewDir}/${jalviewjsBuildDir}/${jalviewjs_j2s_transpile_stdout}'") + throw new GradleException("Error during transpilation:\n${stderr}\nSee eclipse transpile log file '${jalviewDir}/${jalviewjsBuildDir}/${jalviewjs_j2s_stdout}'") } } inputs.dir("${jalviewDir}/${sourceDir}") - outputs.dir("${jalviewDir}/${jalviewjsTransferSiteJsDir}") - outputs.upToDateWhen( { file("${jalviewDir}/${jalviewjsTransferSiteJsDir}${jalviewjs_server_resource}").exists() } ) + outputs.dir("${jalviewDir}/${jalviewjsTransferSiteJSDir}") + outputs.upToDateWhen( { file("${jalviewDir}/${jalviewjsTransferSiteJSDir}${jalviewjs_server_resource}").exists() } ) } -// this Copy version of TransferSiteJs will delete anything else in the target dir -task jalviewjsCopyTransferSiteJs(type: Copy) { +// this Copy version of TransferSite will delete anything else in the target dir +task jalviewjsCopyTransferSite(type: Copy) { dependsOn jalviewjsTranspile - from "${jalviewDir}/${jalviewjsTransferSiteJsDir}" + from "${jalviewDir}/${jalviewjsTransferSiteJSDir}" into "${jalviewDir}/${jalviewjsSiteDir}" } // this Sync version of TransferSite is used by buildship to keep the website automatically up to date when a file changes -task jalviewjsSyncTransferSiteJs(type: Sync) { - from "${jalviewDir}/${jalviewjsTransferSiteJsDir}" +task jalviewjsSyncTransferSite(type: Sync) { + from "${jalviewDir}/${jalviewjsTransferSiteJSDir}" include "**/*.*" into "${jalviewDir}/${jalviewjsSiteDir}" preserve { @@ -1721,15 +1695,15 @@ task jalviewjsSyncTransferSiteJs(type: Sync) { } } -jalviewjsSyncLib.mustRunAfter jalviewjsCopyTransferSiteJs -jalviewjsSyncResources.mustRunAfter jalviewjsCopyTransferSiteJs -jalviewjsSyncSiteResources.mustRunAfter jalviewjsCopyTransferSiteJs -jalviewjsSyncBuildProperties.mustRunAfter jalviewjsCopyTransferSiteJs +jalviewjsSyncLib.mustRunAfter jalviewjsCopyTransferSite +jalviewjsSyncResources.mustRunAfter jalviewjsCopyTransferSite +jalviewjsSyncSiteResources.mustRunAfter jalviewjsCopyTransferSite +jalviewjsSyncBuildProperties.mustRunAfter jalviewjsCopyTransferSite -jalviewjsSyncLib.mustRunAfter jalviewjsSyncTransferSiteJs -jalviewjsSyncResources.mustRunAfter jalviewjsSyncTransferSiteJs -jalviewjsSyncSiteResources.mustRunAfter jalviewjsSyncTransferSiteJs -jalviewjsSyncBuildProperties.mustRunAfter jalviewjsSyncTransferSiteJs +jalviewjsSyncLib.mustRunAfter jalviewjsSyncTransferSite +jalviewjsSyncResources.mustRunAfter jalviewjsSyncTransferSite +jalviewjsSyncSiteResources.mustRunAfter jalviewjsSyncTransferSite +jalviewjsSyncBuildProperties.mustRunAfter jalviewjsSyncTransferSite task jalviewjsPrepareSite { group "JalviewJS" @@ -1738,21 +1712,18 @@ task jalviewjsPrepareSite { dependsOn jalviewjsSyncResources dependsOn jalviewjsSyncSiteResources dependsOn jalviewjsSyncBuildProperties - dependsOn jalviewjsSyncCore } task jalviewjsBuildSite { group "JalviewJS" description "Builds the whole website including transpiled code" - dependsOn jalviewjsCopyTransferSiteJs + dependsOn jalviewjsCopyTransferSite dependsOn jalviewjsPrepareSite } task cleanJalviewjsSite { doFirst { - delete "${jalviewDir}/${jalviewjsTransferSiteJsDir}" - delete "${jalviewDir}/${jalviewjsTransferSiteLibDir}" - delete "${jalviewDir}/${jalviewjsTransferSiteCoreDir}" + delete "${jalviewDir}/${jalviewjsTransferSiteJSDir}" delete "${jalviewDir}/${jalviewjsSiteDir}" } } @@ -1840,12 +1811,12 @@ task jalviewjs { } -task jalviewjsIDE_CopyTransferSiteJs(type: Copy) { - from "${jalviewDir}/${jalviewjsTransferSiteJsDir}" +task jalviewjsIDE_CopyTransferSite(type: Copy) { + from "${jalviewDir}/${jalviewjsTransferSiteJSDir}" into "${jalviewDir}/${jalviewjsSiteDir}" } -task jalviewjsIDE_j2sFile { +task jalviewjsIDE_j2s { group "00 JalviewJS in Eclipse" description "Creates the .j2s file" dependsOn jalviewjsCreateJ2sSettings @@ -1854,7 +1825,7 @@ task jalviewjsIDE_j2sFile { task jalviewjsIDE_AssembleSite { group "00 JalviewJS in Eclipse" description "Assembles the Eclipse transpiled site and unzips supporting zipfiles" - dependsOn jalviewjsIDE_CopyTransferSiteJs + dependsOn jalviewjsIDE_CopyTransferSite dependsOn jalviewjsPrepareSite } @@ -1873,153 +1844,11 @@ task jalviewjsIDE_Server { // buildship runs this at import task eclipseSynchronizationTask { dependsOn eclipseSetup - dependsOn jalviewjsIDE_j2sFile + dependsOn jalviewjsIDE_j2s } // buildship runs this at build time task eclipseAutoBuildTask { - dependsOn jalviewjsSyncTransferSiteJs + dependsOn jalviewjsSyncTransferSite dependsOn jalviewjsPrepareSite } - - - - - - - - -// closure - -def jalviewjsCallCore(FileCollection list, String prefixFile, String suffixFile, String jsfile, String zjsfile, File logOutFile, Boolean logOutConsole) { - - def stdout = new ByteArrayOutputStream() - def stderr = new ByteArrayOutputStream() - - def coreFile = file(jsfile) - def msg = "" - msg = "Generating ${jsfile}" - println(msg) - logOutFile.createNewFile() - logOutFile.append(msg+"\n") - - def coreTop = file(prefixFile) - def coreBottom = file(suffixFile) - coreFile.getParentFile().mkdirs() - coreFile.createNewFile() - coreFile.write( coreTop.text ) - list.each { - f -> - if (f.exists()) { - def t = f.text - t.replaceAll("Clazz\\.","Clazz_") - t.replaceAll("Class__","Clazz._") - coreFile.append( t ) - } else { - msg = "...file "+f.getPath()+" does not exist, skipping" - println(msg) - logOutFile.append(msg+"\n") - } - } - coreFile.append( coreBottom.text ) - - msg = "Generating ${zjsfile}" - println(msg) - logOutFile.append(msg+"\n") - def logOutFOS = new FileOutputStream(logOutFile, true) // true == append - def logErrFOS = logOutFOS - - javaexec { - classpath = files(["${jalviewDir}/tools/closure_compiler.jar"]) - args = [ "--js", jsfile, "--js_output_file", zjsfile ] - - msg = "\nRunning '"+commandLine.join(' ')+"'\n" - println(msg) - logOutFile.append(msg+"\n") - - if (logOutConsole) { - standardOutput = new org.apache.tools.ant.util.TeeOutputStream( - new org.apache.tools.ant.util.TeeOutputStream( - logOutFOS, - stdout), - standardOutput) - errorOutput = new org.apache.tools.ant.util.TeeOutputStream( - new org.apache.tools.ant.util.TeeOutputStream( - logErrFOS, - stderr), - errorOutput) - } else { - standardOutput = new org.apache.tools.ant.util.TeeOutputStream( - logOutFOS, - stdout) - errorOutput = new org.apache.tools.ant.util.TeeOutputStream( - logErrFOS, - stderr) - } - } - msg = "--" - println(msg) - logOutFile.append(msg+"\n") -} - - - -task jalviewjsBuildAllCores { - group "JalviewJS" - description "Build the core js lib closures" - - dependsOn jalviewjsSitePath - dependsOn jalviewjsTransferUnzipLib - dependsOn jalviewjsTranspile - - def j2sDir = "${jalviewDir}/${jalviewjsTransferSiteJsDir}/${jalviewjs_j2s_subdir}" - def jsDir = "${jalviewDir}/${jalviewjsTransferSiteLibDir}/${jalviewjs_js_subdir}" - def outputDir = "${jalviewDir}/${jalviewjsTransferSiteCoreDir}/${jalviewjs_j2s_subdir}/core" - def prefixFile = "${jsDir}/core/coretop2.js" - def suffixFile = "${jsDir}/core/corebottom2.js" - - inputs.file prefixFile - inputs.file suffixFile - - def classlists = [] - fileTree(dir: "${jalviewDir}/${jalviewjs_classlists_dir}", include: "*.txt").each { - file -> - def name = file.getName() - ".txt" - - def filelist = [] - file.eachLine { - line -> - filelist += line - } - def list = fileTree(dir: j2sDir, includes: filelist) - - def coreFileName = "core${name}.js" - def jsfile = "${outputDir}/${coreFileName}" - def coreZFileName = "core${name}.z.js" - def zjsfile = "${outputDir}/${coreZFileName}" - - classlists += [ - 'jsfile': jsfile, - 'zjsfile': zjsfile, - 'list': list - ] - - inputs.file(file) - inputs.files(list) - outputs.file(jsfile) - outputs.file(zjsfile) - } - - - doFirst { - def logOutFile = file("${jalviewDirAbsolutePath}/${jalviewjsBuildDir}/${jalviewjs_j2s_closure_stdout}") - logOutFile.getParentFile().mkdirs() - logOutFile.createNewFile() - 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")) - } - } - -}