Merge branch 'develop' of https://source.jalview.org/git/jalview into develop
authorBen Soares <bsoares@dundee.ac.uk>
Tue, 18 Jun 2019 09:52:27 +0000 (10:52 +0100)
committerBen Soares <bsoares@dundee.ac.uk>
Tue, 18 Jun 2019 09:52:27 +0000 (10:52 +0100)
1  2 
build.gradle
gradle.properties

diff --combined build.gradle
@@@ -55,7 -55,7 +55,7 @@@ ext 
    // TODO: consider allowing this expression to  be overridden by -P arg
    getdownWebsiteDir = jalviewDir + '/' + getdown_website_dir + '/' + JAVA_VERSION
    getdownAppDir = getdownWebsiteDir + '/' + getdown_app_dir
-   getdownJ11libDir = getdownWebsiteDir + '/' + getdown_j11lib_dir
+   //getdownJ11libDir = getdownWebsiteDir + '/' + getdown_j11lib_dir
    getdownResourceDir = getdownWebsiteDir + '/' + getdown_resource_dir
    getdownLauncher = jalviewDir + '/' + getdown_launcher
    getdownFilesDir = jalviewDir + '/' + getdown_files_dir + '/' + JAVA_VERSION + '/'
@@@ -72,14 -72,18 +72,18 @@@ def additional_compiler_args = [
  def getdown_alt_java_min_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_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
@@@ -88,6 -92,7 +92,7 @@@
    compile_target_compatibility = 11
    getdown_alt_java_min_version = getdown_alt_java11_min_version
    getdown_alt_multi_java_location = getdown_alt_java11_txt_multi_java_location
+   eclipse_java_runtime_name = "JavaSE-11"
    additional_compiler_args += [
      '--module-path', ext.modules_compileClasspath.asPath,
      '--add-modules', j11modules
@@@ -106,7 -111,6 +111,6 @@@ sourceSets 
  
      resources {
        srcDirs "$jalviewDir/$resourceDir"
-       srcDirs "$jalviewDir/$libDistDir"
      }
  
      jar.destinationDir = file("$jalviewDir/$packageDir")
      } else {
        compileClasspath += files(sourceSets.main.java.outputDir)
      }
-     //compileClasspath += sourceSets.main.compileClasspath
-     //compileClasspath += files( sourceSets.main.resources.srcDirs)
+     
      compileClasspath += fileTree(dir: "$jalviewDir/$utilsDir", include: ["**/*.jar"])
      compileClasspath += fileTree(dir: "$jalviewDir/$libDir", include: ["*.jar"])
  
@@@ -211,15 -214,18 +214,18 @@@ eclipse 
          }
          cp.entries.removeAll(removeTheseToo)
          
+         print ("CP="+cp.inspect())
+         
          cp.entries += new Output("bin/main")
          cp.entries += new Library(fileReference(helpParentDir))
          cp.entries += new Library(fileReference(resourceDir))
          
          HashMap<String, Boolean> addedLibPath = new HashMap<>();
-         def allPaths = sourceSets.test.compileClasspath + sourceSets.main.compileClasspath
-         sourceSets.main.compileClasspath.each{
-           //if ((it.isDirectory() || ! it.exists()) && ! (it.equals(sourceSets.main.java.outputDir))) {
-           //no longer want to add outputDir as eclipse is using its own output dir in bin/main
+         
+         // changing from sourcesets.main.classpath to specific Java version lib
+         //sourceSets.main.compileClasspath.each{
+         fileTree("$jalviewDir/$libDistDir").include("**/*.jar").include("*.jar").each {
+           //don't want to add outputDir as eclipse is using its own output dir in bin/main
            if (it.isDirectory() || ! it.exists()) {
              // don't add dirs to classpath
              return
            }
          }
  
-         sourceSets.test.compileClasspath.each{
+         // changing from sourcesets.main.classpath to specific Java version lib
+         //sourceSets.test.compileClasspath.each{
+         fileTree(dir: "$jalviewDir/$utilsDir", include: ["**/*.jar"]).each {
            //if ((it.isDirectory() || ! it.exists()) && ! (it.equals(sourceSets.main.java.outputDir))) {
            //no longer want to add outputDir as eclipse is using its own output dir in bin/main
            if (it.isDirectory() || ! it.exists()) {
  
    jdt {
      // for the IDE, use java 11 compatibility
-     sourceCompatibility = 11
-     targetCompatibility = 11
-     javaRuntimeName = "JavaSE-11"
+     sourceCompatibility = compile_source_compatibility
+     targetCompatibility = compile_target_compatibility
+     javaRuntimeName = eclipse_java_runtime_name
  
      file {
        withProperties { props ->
@@@ -411,48 -419,46 +419,46 @@@ cleanTest 
    delete cloverInstrDir
  }
  
+ // format is a string like date.format("dd MMMM yyyy")
  def getDate(format) {
    def date = new Date()
    return date.format(format)
  }
  
- task setGitHash(type: Exec) {
-   workingDir = jalviewDir
-   commandLine "git", "rev-parse", "--short", "HEAD"
-   standardOutput = new ByteArrayOutputStream()
-   project.ext.gitHash = {
-     return standardOutput.toString().trim()
+ task setGitVals {
+   def hashStdOut = new ByteArrayOutputStream()
+   exec {
+     commandLine "git", "rev-parse", "--short", "HEAD"
+     standardOutput = hashStdOut
+     ignoreExitValue true
    }
- }
  
- task setGitBranch(type: Exec) {
-   workingDir = jalviewDir
-   commandLine "git", "rev-parse", "--abbrev-ref", "HEAD"
-   standardOutput = new ByteArrayOutputStream()
-   project.ext.gitBranch = {
-     return standardOutput.toString().trim()
+   def branchStdOut = new ByteArrayOutputStream()
+   exec {
+     commandLine "git", "rev-parse", "--abbrev-ref", "HEAD"
+     standardOutput = branchStdOut
+     ignoreExitValue true
    }
- }
  
- task setGitVals {
-   dependsOn setGitHash
-   dependsOn setGitBranch
+   project.ext.gitHash = hashStdOut.toString().trim()
+   project.ext.gitBranch = branchStdOut.toString().trim()
+   outputs.upToDateWhen { false }
  }
  
  task createBuildProperties(type: WriteProperties) {
    dependsOn setGitVals
    inputs.dir("$jalviewDir/$sourceDir")
+   inputs.dir("$classes")
    inputs.dir("$jalviewDir/$resourceDir")
    outputFile "$classes/$buildPropertiesFile"
    // taking time specific comment out to allow better incremental builds
-   //comment "--Jalview Build Details--\n"+getDate("yyyy-MM-dd HH:mm:ss")
-   comment "--Jalview Build Details--\n"+getDate("yyyy-MM-dd")
-   property "BUILD_DATE", getDate("dd MMMM yyyy")
+   comment "--Jalview Build Details--\n"+getDate("yyyy-MM-dd HH:mm:ss")
+   //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+"]"
    outputs.file(outputFile)
-   outputs.dir("$classes")
  }
  
  def buildingHTML = "$jalviewDir/$docDir/building.html"
@@@ -465,20 -471,13 +471,20 @@@ task convertBuildingMD(type: Exec) 
    def buildingMD = "$jalviewDir/$docDir/building.md"
    def css = "$jalviewDir/$docDir/github.css"
  
 -  def pandoc = pandoc_exec
 +  def pandoc = null
 +  pandoc_exec.split(",").each {
 +    if (file(it.trim()).exists()) {
 +      pandoc = it.trim()
 +      return true
 +    }
 +  }
 +
    def hostname = "hostname".execute().text.trim()
 -  if (! file(pandoc).exists() && hostname.equals("jv-bamboo")) {
 +  if ((pandoc == null || ! file(pandoc).exists()) && hostname.equals("jv-bamboo")) {
      pandoc = System.getProperty("user.home")+"/buildtools/pandoc/bin/pandoc"
    }
  
 -  if (file(pandoc).exists()) {
 +  if (pandoc != null && file(pandoc).exists()) {
      commandLine pandoc, '-s', '-o', buildingHTML, '--metadata', 'pagetitle="Building Jalview from Source"', '--toc', '-H', css, buildingMD
    } else {
      commandLine "true"
diff --combined gradle.properties
@@@ -1,5 -1,6 +1,6 @@@
  jalviewDir = .
  
+ #JAVA_VERSION = 1.8
  JAVA_VERSION = 11
  JALVIEW_VERSION = DEVELOPMENT
  INSTALLATION = Source
@@@ -15,9 -16,6 +16,6 @@@ jalview_keydig = SHA
  
  testngGroups = Functional
  
- javac_source = 11
- javac_target = 11
  j8libDir = j8lib
  j11libDir = j11lib
  resourceDir = resources
@@@ -50,7 -48,7 +48,7 @@@ getdown_local = fals
  getdown_website_dir = getdown/website
  getdown_resource_dir = resource
  getdown_app_dir = dist
- getdown_j11lib_dir = j11lib
+ #getdown_j11lib_dir = j11lib
  getdown_files_dir = getdown/files
  getdown_launcher = getdown/lib/getdown-launcher.jar
  getdown_core = getdown/lib/getdown-core-1.8.3-SNAPSHOT.jar
@@@ -111,6 -109,6 +109,6 @@@ JSIGN_SH = ech
  
  eclipse_extra_jdt_prefs_file = .settings/org.eclipse.jdt.core.jalview.prefs
  
 -pandoc_exec = /usr/local/bin/pandoc
 +pandoc_exec = /usr/local/bin/pandoc,/usr/bin/pandoc
  dev = false