X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=build.gradle;h=23326433529b8e8309b6a7a87397806e9fecf288;hb=9c93d8688181b15cae619659144e3f1310d22933;hp=16c31b384824fc67c64d205f31f7a58de6e8ecf1;hpb=199ad468f742cf47b913ef6f5719efe6992c77dc;p=jalview.git diff --git a/build.gradle b/build.gradle index 16c31b3..2332643 100644 --- a/build.gradle +++ b/build.gradle @@ -123,7 +123,7 @@ ext { reportRsyncCommand = true break - case ~/^SCRATCH(|-\w*)$/: + case ~/^SCRATCH(|-[-\w]*)$/: getdown_channel_name = CHANNEL getdownDir = getdown_channel_name + "/" + JAVA_VERSION getdown_app_base = getdown_channel_base + "/" + getdownDir @@ -153,8 +153,10 @@ ext { getdownLauncher = jalviewDir + '/' + getdown_launcher getdownFilesDir = jalviewDir + '/' + getdown_files_dir + '/' + JAVA_VERSION + '/' getdownFilesInstallDir = getdownFilesDir+"/"+getdown_install_dir + /* compile without modules -- using classpath libraries modules_compileClasspath = fileTree(dir: "$jalviewDir/$j11modDir", include: ["*.jar"]) modules_runtimeClasspath = modules_compileClasspath + */ gitHash = "" gitBranch = "" } @@ -163,6 +165,7 @@ 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 @@ -175,6 +178,7 @@ if (JAVA_VERSION.equals("1.8")) { 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")) { @@ -184,12 +188,15 @@ if (JAVA_VERSION.equals("1.8")) { 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 @@ -197,12 +204,15 @@ if (JAVA_VERSION.equals("1.8")) { 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") } @@ -590,10 +600,13 @@ task convertBuildingMD(type: Exec) { pandoc = System.getProperty("user.home")+"/buildtools/pandoc/bin/pandoc" } - if (pandoc != null && file(pandoc).exists()) { - commandLine pandoc, '-s', '-o', buildingHTML, '--metadata', 'pagetitle="Building Jalview from Source"', '--toc', '-H', css, buildingMD - } else { - commandLine "true" + doFirst { + if (pandoc != null && file(pandoc).exists()) { + commandLine pandoc, '-s', '-o', buildingHTML, '--metadata', 'pagetitle="Building Jalview from Source"', '--toc', '-H', css, buildingMD + } else { + println("Cannot find pandoc. Skipping convert building.md to HTML") + throw new StopExecutionException() + } } ignoreExitValue true @@ -717,7 +730,7 @@ task compileLinkCheck(type: JavaCompile) { outputs.file("$jalviewDir/$utilsDir/BufferedLineReader.class") } -def helplinkscheckeroutputfile = file("$jalviewDir/$utilsDir/HelpLinksChecker.out") +def helplinkscheckertouchfile = file("$jalviewDir/$utilsDir/HelpLinksChecker.touch") task linkCheck(type: JavaExec) { dependsOn prepare, compileLinkCheck classpath = files("$jalviewDir/$utilsDir") @@ -726,14 +739,20 @@ task linkCheck(type: JavaExec) { def help = "$classes/$helpDir" args = [ "$classes/$helpDir", "-nointernet" ] - doFirst { - helplinkscheckeroutputfile.createNewFile() - standardOutput new FileOutputStream(helplinkscheckeroutputfile, false) + doLast { + helplinkscheckertouchfile.createNewFile() } - outputs.file(helplinkscheckeroutputfile) + inputs.dir("$classes/$helpDir") + outputs.file(helplinkscheckertouchfile) } +// import the pubhtmlhelp target +ant.properties.basedir = "$jalviewDir" +ant.properties.helpBuildDir = jalviewDirAbsolutePath+"/$classes/$helpDir" +ant.importBuild "$utilsDir/publishHelp.xml" + + task cleanPackageDir(type: Delete) { delete fileTree("$jalviewDir/$packageDir").include("*.jar") } @@ -833,14 +852,19 @@ task getdownWebsite() { copy { from buildProperties rename(buildPropertiesFile, getdown_build_properties) - into project.ext.getdownWebsiteDir + into project.ext.getdownAppDir } - getdownWebsiteResourceFilenames += getdown_build_properties + getdownWebsiteResourceFilenames += getdown_app_dir+"/"+getdown_build_properties // go through properties looking for getdown_txt_... def props = project.properties.sort { it.key } - props.put("getdown_txt_java_min_version", getdown_alt_java_min_version) - props.put("getdown_txt_multi_java_location", getdown_alt_multi_java_location) + if (getdown_alt_java_min_version.length() > 0) { + props.put("getdown_txt_java_min_version", getdown_alt_java_min_version) + } + if (getdown_alt_java_max_version.length() > 0) { + props.put("getdown_txt_java_max_version", getdown_alt_java_max_version) + } + props.put("getdown_txt_multi_java_location", getdown_alt_multi_java_location) props.put("getdown_txt_appbase", getdown_app_base) props.each{ prop, val -> @@ -996,7 +1020,7 @@ task getdown() { def fromDir = getdownWebsiteDir + (getdownWebsiteDir.endsWith("/")?"":"/") def toDir = getdown_rsync_dest + "/" + getdownDir + (getdownDir.endsWith("/")?"":"/") println "LIKELY RSYNC COMMAND:" - println "rsync -avh --delete '$fromDir' '$toDir'" + println "mkdir -p '$toDir'\nrsync -avh --delete '$fromDir' '$toDir'" if (RUNRSYNC == "true") { exec { commandLine "mkdir", "-p", toDir @@ -1130,3 +1154,70 @@ clean { delete install4jConf } +task sourceDist (type: Tar) { + + def VERSION_UNDERSCORES = JALVIEW_VERSION.replaceAll("\\.", "_") + archiveFileName = project.name + "_" + VERSION_UNDERSCORES + ".tar.gz" + + compression Compression.GZIP + + from jalviewDir + into project.name + + + exclude (".*") + exclude ("**/.*") + exclude ("*.class") + exclude ("**/*.class") + include (eclipse_extra_jdt_prefs_file) + include ("AUTHORS") + include ("CITATION") + include ("FEATURETODO") + include ("JAVA-11-README") + include ("FEATURETODO") + include ("LICENSE") + include ("README") + include ("RELEASE") + include ("THIRDPARTYLIBS") + include ("build.gradle") + include ("gradle.properties") + include ("$sourceDir/*.java") + include ("$sourceDir/**/*.java") + include ("$sourceDir/**/*.cdr") + include ("$j8libDir/**/*.jar") + include ("$j11libDir/**/*.jar") + include ("$resourceDir/**/*") + include ("$helpDir/**/*") + include ("$schemaDir/**/*") + include ("$utilsDir/**/*") + include ("$docDir/**/*") + include ("$examplesDir/**/*") + include ("getdown/**/*") + //include ("jalview-jalopy.xml") + //include ("JalviewApplet.jpx") + //include ("JalviewX.jpx") + //include ("nbbuild.xml") + //include ("nbproject/genfiles.properties") + //include ("nbproject/project.properties") + //include ("nbproject/project.xml") + + exclude ("appletlib") + exclude ("**/*locales") + exclude ("*locales/**") + exclude ("utils/InstallAnywhere") + exclude (libDir) + exclude (getdown_files_dir) + exclude (getdown_website_dir) + + // exluding these as not using jars as modules yet + exclude ("$j11modDir/**/*.jar") + +} + +task helppages { + dependsOn copyHelp + dependsOn pubhtmlhelp + + inputs.dir("$classes/$helpDir") + outputs.file("build/distribution/help/helpTOC.html") +}