JAL-3394 Variable-ise output folders -- will work better with sub-project/modularised...
authorBen Soares <bsoares@dundee.ac.uk>
Fri, 24 Jan 2020 10:54:00 +0000 (10:54 +0000)
committerBen Soares <bsoares@dundee.ac.uk>
Fri, 24 Jan 2020 10:54:00 +0000 (10:54 +0000)
build.gradle
utils/install4j/install4j8_template.install4j

index efa2e6e..ad49dfc 100644 (file)
@@ -1295,6 +1295,8 @@ task installers(type: com.install4j.gradle.Install4jTask) {
     filesMd5 = filesMd5.substring(0,8)
   }
   def install4jTemplateVersion = "${JALVIEW_VERSION}_F${filesMd5}_C${gitHash}"
+  // make install4jBuildDir relative to jalviewDir
+  def install4jBuildDir = "${install4j_build_dir}/${JAVA_VERSION}"
 
   variables = [
     'OSX_KEYSTORE': OSX_KEYSTORE,
@@ -1315,14 +1317,17 @@ task installers(type: com.install4j.gradle.Install4jTask) {
     'LINUX_JAVA_VM_TGZ': linuxJavaVMTgz,
     'COPYRIGHT_MESSAGE': install4j_copyright_message,
     'MACOS_BUNDLE_ID': install4j_macOS_bundle_id,
+    'GETDOWN_WEBSITE_DIR': getdown_website_dir,
+    'GETDOWN_FILES_DIR': getdown_files_dir,
     '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,
     'INFO_PLIST_FILE_ASSOCIATIONS_FILE': install4j_info_plist_file_associations,
+    'BUILD_DIR': install4jBuildDir,
   ]
 
-  destination = "${jalviewDir}/${install4j_build_dir}/${JAVA_VERSION}"
+  destination = "${jalviewDir}/${install4jBuildDir}"
   buildSelected = true
 
   if (install4j_faster.equals("true") || CHANNEL.startsWith("DEVELOP") || CHANNEL.startsWith("LOCAL")) {
index 6508ed7..08dd02e 100644 (file)
@@ -8,6 +8,8 @@
       <envVar name="JAVA_HOME" />
     </searchSequence>
     <variables>
+      <variable name="JALVIEW_DIR" value="../.." />
+      <variable name="BUILD_DIR" value="${compiler:JALVIEW_DIR}/build/install4j" />
       <variable name="OSX_KEYSTORE" />
       <variable name="JSIGN_SH" value="echo" />
       <variable name="JRE_DIR" value="jre" description="The folder under the app folder that the JRE will be either copied or unpacked into" />
       <variable name="LINUX_JAVA_VM_TGZ" value="~/buildtools/jre/tgz/jre-${compiler:JAVA_INTEGER_VERSION}-linux-x64.tar.gz" />
       <variable name="COPYRIGHT_MESSAGE" value="..." />
       <variable name="MACOS_BUNDLE_ID" value="org.jalview.jalview-desktop" />
+      <variable name="GETDOWN_WEBSITE_DIR" value="getdown/website" />
+      <variable name="GETDOWN_FILES_DIR" value="getdown/files" />
       <variable name="GETDOWN_RESOURCE_DIR" value="resource" />
-      <variable name="GETDOWN_DIST_DIR" value="alt" />
+      <variable name="GETDOWN_DIST_DIR" value="dist" />
       <variable name="GETDOWN_ALT_DIR" value="alt" />
       <variable name="GETDOWN_INSTALL_DIR" value="install" />
       <variable name="INFO_PLIST_FILE_ASSOCIATIONS_FILE" value="file_associations_auto-Info_plist.xml" />
-      <variable name="BUILD_DIR" value="../../build/install4j" />
     </variables>
     <codeSigning macEnabled="true" macPkcs12File="${compiler:OSX_KEYSTORE}" />
   </application>
       <mountPoint id="2107" root="2106" />
     </mountPoints>
     <entries>
-      <dirEntry mountPoint="454" file="../../getdown/files/${compiler:JAVA_VERSION}" uninstallMode="2" overrideOverwriteMode="true" overrideUninstallMode="true" subDirectory="files" />
-      <dirEntry mountPoint="736" file="../../getdown/website/${compiler:JAVA_VERSION}" uninstallMode="2" overrideOverwriteMode="true" overrideUninstallMode="true" subDirectory="files" />
+      <dirEntry mountPoint="454" file="${compiler:JALVIEW_DIR}/${compiler:GETDOWN_FILES_DIR}/${compiler:JAVA_VERSION}" uninstallMode="2" overrideOverwriteMode="true" overrideUninstallMode="true" subDirectory="files" />
+      <dirEntry mountPoint="736" file="${compiler:JALVIEW_DIR}/${compiler:GETDOWN_WEBSITE_DIR}/${compiler:JAVA_VERSION}" uninstallMode="2" overrideOverwriteMode="true" overrideUninstallMode="true" subDirectory="files" />
       <dirEntry mountPoint="884" file="${compiler:MACOS_JAVA_VM_DIR}" fileMode="755" overrideFileMode="true" overrideUninstallMode="true" entryMode="subdir" subDirectory="${compiler:JRE_DIR}" />
       <dirEntry mountPoint="885" file="${compiler:WINDOWS_JAVA_VM_DIR}" fileMode="755" overrideFileMode="true" overrideUninstallMode="true" entryMode="subdir" subDirectory="${compiler:JRE_DIR}" />
-      <dirEntry mountPoint="1875" file="../../getdown/website/${compiler:JAVA_VERSION}/${compiler:GETDOWN_DIST_DIR}" overwriteMode="1" uninstallMode="2" overrideFileMode="true" overrideOverwriteMode="true" overrideUninstallMode="true" entryMode="subdir" subDirectory="${compiler:GETDOWN_DIST_DIR}" overrideDirMode="true" />
+      <dirEntry mountPoint="1875" file="${compiler:JALVIEW_DIR}/${compiler:GETDOWN_WEBSITE_DIR}/${compiler:JAVA_VERSION}/${compiler:GETDOWN_DIST_DIR}" overwriteMode="1" uninstallMode="2" overrideFileMode="true" overrideOverwriteMode="true" overrideUninstallMode="true" entryMode="subdir" subDirectory="${compiler:GETDOWN_DIST_DIR}" overrideDirMode="true" />
       <dirEntry mountPoint="2107" file="Uninstall Old Jalview.app" fileMode="755" overrideFileMode="true" entryMode="subdir" subDirectory="Uninstall Old Jalview.app" overrideDirMode="true" />
     </entries>
     <components>
     </components>
   </files>
   <launchers>
-    <launcher name="Offline Jalview Launcher" id="737" menuName="${compiler:sys.shortName}" icnsFile="../../resources/images/jalview_logos.icns" customMacBundleIdentifier="true" macBundleIdentifier="${compiler:MACOS_BUNDLE_ID}" fileset="734" useCustomMacosExecutableName="true" customMacosExecutableName="${compiler:sys.shortName}">
-      <executable name="${compiler:sys.shortName}" iconSet="true" iconFile="../../resources/images/jalview_logos.ico" executableDir="." redirectStdout="true" executableMode="gui" singleInstance="true" checkConsoleParameter="true" dpiAware="false">
+    <launcher name="Offline Jalview Launcher" id="737" menuName="${compiler:sys.shortName}" icnsFile="${compiler:JALVIEW_DIR}/resources/images/jalview_logos.icns" customMacBundleIdentifier="true" macBundleIdentifier="${compiler:MACOS_BUNDLE_ID}" fileset="734" useCustomMacosExecutableName="true" customMacosExecutableName="${compiler:sys.shortName}">
+      <executable name="${compiler:sys.shortName}" iconSet="true" iconFile="${compiler:JALVIEW_DIR}/resources/images/jalview_logos.ico" executableDir="." redirectStdout="true" executableMode="gui" singleInstance="true" checkConsoleParameter="true" dpiAware="false">
         <versionInfo include="true" fileDescription="${compiler:sys.shortName}" legalCopyright="${compiler:COPYRIGHT_MESSAGE}" internalName="${compiler:sys.shortName}" productName="${compiler:sys.shortName}" />
       </executable>
-      <splashScreen width="640" height="480" bitmapFile="../../resources/images/jalview_logo_background_fade-640x480.png" textOverlay="true">
+      <splashScreen width="640" height="480" bitmapFile="${compiler:JALVIEW_DIR}/resources/images/jalview_logo_background_fade-640x480.png" textOverlay="true">
         <text>
           <statusLine x="85" y="81" text="${compiler:sys.shortName}" fontSize="18" />
           <versionLine x="85" y="109" text="version ${compiler:sys.version}" />
       </macStaticAssociationActions>
       <infoPlist>${compiler:file("${compiler:INFO_PLIST_FILE_ASSOCIATIONS_FILE}")}</infoPlist>
       <iconImageFiles>
-        <file path="../../resources/images/JalviewLogo_Huge.png" />
+        <file path="${compiler:JALVIEW_DIR}/resources/images/JalviewLogo_Huge.png" />
       </iconImageFiles>
     </launcher>
     <launcher name="Jalview package" id="1876" menuName="${compiler:sys.shortName} ${compiler:JALVIEW_VERSION}" fileset="1873">
       </macStaticAssociationActions>
       <infoPlist>${compiler:file("${compiler:INFO_PLIST_FILE_ASSOCIATIONS_FILE}")}</infoPlist>
       <iconImageFiles>
-        <file path="../../resources/images/JalviewLogo_Huge.png" />
+        <file path="${compiler:JALVIEW_DIR}/resources/images/JalviewLogo_Huge.png" />
       </iconImageFiles>
     </launcher>
   </launchers>
   <installerGui autoUpdateDescriptorUrl="https://www.jalview.org/install4j/updates.xml">
     <applications>
-      <application id="installer" beanClass="com.install4j.runtime.beans.applications.InstallerApplication" styleId="35" customIcnsFile="../../resources/images/jalview_logos.icns" customIcoFile="../../resources/images/jalview_logos.ico">
+      <application id="installer" beanClass="com.install4j.runtime.beans.applications.InstallerApplication" styleId="35" customIcnsFile="${compiler:JALVIEW_DIR}/resources/images/jalview_logos.icns" customIcoFile="${compiler:JALVIEW_DIR}/resources/images/jalview_logos.ico">
         <serializedBean>
           <property name="useCustomIcon" type="boolean" value="true" />
         </serializedBean>
                 <property name="imageEdgeBorder" type="boolean" value="true" />
                 <property name="imageFile">
                   <object class="com.install4j.api.beans.ExternalFile">
-                    <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+                    <string>${compiler:JALVIEW_DIR}/resources/images/jalview_logo_background_fade-640x480.png</string>
                   </object>
                 </property>
                 <property name="insets">
                     <property name="imageEdgeBorder" type="boolean" value="true" />
                     <property name="imageFile">
                       <object class="com.install4j.api.beans.ExternalFile">
-                        <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+                        <string>${compiler:JALVIEW_DIR}/resources/images/jalview_logo_background_fade-640x480.png</string>
                       </object>
                     </property>
                     <property name="insets">
@@ -482,12 +485,12 @@ return console.askOkCancel(message, true);
                   </property>
                   <property name="icon">
                     <object class="com.install4j.api.beans.ExternalFile">
-                      <string>../../resources/images/jalview_logos.ico</string>
+                      <string>${compiler:JALVIEW_DIR}/resources/images/jalview_logos.ico</string>
                     </object>
                   </property>
                   <property name="unixIconFile">
                     <object class="com.install4j.api.beans.ExternalFile">
-                      <string>../../resources/images/JalviewLogo_Huge.png</string>
+                      <string>${compiler:JALVIEW_DIR}/resources/images/JalviewLogo_Huge.png</string>
                     </object>
                   </property>
                 </serializedBean>
@@ -505,12 +508,12 @@ return console.askOkCancel(message, true);
                   <property name="name" type="string">${compiler:sys.fullName}</property>
                   <property name="unixIconFile">
                     <object class="com.install4j.api.beans.ExternalFile">
-                      <string>../../resources/images/JalviewLogo_Huge.png</string>
+                      <string>${compiler:JALVIEW_DIR}/resources/images/JalviewLogo_Huge.png</string>
                     </object>
                   </property>
                   <property name="winIconFile">
                     <object class="com.install4j.api.beans.ExternalFile">
-                      <string>../../resources/images/jalview_logos.ico</string>
+                      <string>${compiler:JALVIEW_DIR}/resources/images/jalview_logos.ico</string>
                     </object>
                   </property>
                 </serializedBean>
@@ -585,7 +588,7 @@ return console.askOkCancel(message, true);
                 <property name="imageEdgeBorder" type="boolean" value="true" />
                 <property name="imageFile">
                   <object class="com.install4j.api.beans.ExternalFile">
-                    <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+                    <string>${compiler:JALVIEW_DIR}/resources/images/jalview_logo_background_fade-640x480.png</string>
                   </object>
                 </property>
                 <property name="insets">
@@ -858,7 +861,7 @@ return console.askYesNo(message, true);
               </property>
               <property name="imageFile">
                 <object class="com.install4j.api.beans.ExternalFile">
-                  <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+                  <string>${compiler:JALVIEW_DIR}/resources/images/jalview_logo_background_fade-640x480.png</string>
                 </object>
               </property>
               <property name="imageOverlap" type="boolean" value="true" />