[jsword-svn] r2304 - in trunk: bibledesktop bibledesktop/etc/installer/win32 bibledesktop-web bibledesktop-web/src/main/webapp jsword-web/src/main/webapp

dmsmith at crosswire.org dmsmith at crosswire.org
Mon Mar 11 18:47:10 MST 2013


Author: dmsmith
Date: 2013-03-11 18:47:10 -0700 (Mon, 11 Mar 2013)
New Revision: 2304

Modified:
   trunk/bibledesktop-web/build.xml
   trunk/bibledesktop-web/src/main/webapp/download.html
   trunk/bibledesktop/build.xml
   trunk/bibledesktop/etc/installer/win32/BibleDesktop.nsi
   trunk/bibledesktop/etc/installer/win32/README.txt
   trunk/jsword-web/src/main/webapp/devt.html
   trunk/jsword-web/src/main/webapp/svn.html
   trunk/jsword-web/src/main/webapp/template.xsl
Log:
build improvements

Modified: trunk/bibledesktop/build.xml
===================================================================
--- trunk/bibledesktop/build.xml	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/bibledesktop/build.xml	2013-03-12 01:47:10 UTC (rev 2304)
@@ -160,27 +160,34 @@
     </target>
 
 	<!-- Build the Windows installers from the installed/signed jars -->
-	<target	name="package.windows">
-		<mkdir dir="${dest.install.pkg.dir}"/>
+	<target	name="package.windows"
+			depends="nsis.task"
+	        if="nsis.available">
+		<property name="dest.install.nsis.dir" value="${dest.install.pkg.dir}/nsis"/>
+		<mkdir dir="${dest.install.nsis.dir}"/>
+
 		<!-- Copy the files needed for the distribution -->
 		<copy	verbose="${verbose.copy}"
-				todir="${dest.install.pkg.dir}"
+				todir="${dest.install.nsis.dir}"
 				preservelastmodified="true">
 			<fileset dir="${etc.dir}/bin" includes="*.bat"/>
 			<fileset dir="${etc.dir}/installer/win32">
 				<include name="*.ico"/>
-				<include name="gpl.txt"/>
 				<include name="BibleDesktop.exe"/>
 			</fileset>
+			<fileset file="${etc.dir}/license/gpl.txt"/>
+			<fileset dir="${lib.dir}">
+				<patternset refid="patternset.runtime"/>
+			</fileset>
 		</copy>
 
 		<!-- Ensure that line endings are consistent with the windows platform -->
-		<fixcrlf srcdir="${dest.install.pkg.dir}" eol="crlf">
+		<fixcrlf srcdir="${dest.install.nsis.dir}" eol="crlf">
 			<include name="**/*.bat"/>
 		</fixcrlf>
 
 		<copy	verbose="${verbose.copy}"
-				todir="${dest.install.pkg.dir}"
+				todir="${dest.install.nsis.dir}"
 				preservelastmodified="true"
 				filtering="true">
 			<fileset dir="${etc.dir}/installer/win32">
@@ -190,14 +197,12 @@
 				<filter token="release.version" value="${release.version}"/>
 			</filterset>
 		</copy>
-		<!--
-		<nsis verbosity="1" script="${dest.install.pkg.dir}/BibleDesktop.nsi"/>
-		<nsis verbosity="1" script="${dest.install.pkg.dir}/PortableBibleDesktop.nsi"/>
-		<nsis verbosity="1" script="${dest.install.pkg.dir}/BibleDesktopSetup.nsi"/>
-		-->
-		<delete file="${dest.install.pkg.dir}/BibleDesktop.nsi"/>
-		<delete file="${dest.install.pkg.dir}/PortableBibleDesktop.nsi"/>
-		<delete file="${dest.install.pkg.dir}/BibleDesktopSetup.nsi"/>
+		<nsis verbosity="1" script="${dest.install.nsis.dir}/BibleDesktop.nsi"/>
+		<nsis verbosity="1" script="${dest.install.nsis.dir}/PortableBibleDesktop.nsi"/>
+		<nsis verbosity="1" script="${dest.install.nsis.dir}/BibleDesktopSetup.nsi"/>
+		<delete file="${dest.install.nsis.dir}/BibleDesktop.nsi"/>
+		<delete file="${dest.install.nsis.dir}/PortableBibleDesktop.nsi"/>
+		<delete file="${dest.install.nsis.dir}/BibleDesktopSetup.nsi"/>
 	</target>
 
 </project>

Modified: trunk/bibledesktop/etc/installer/win32/BibleDesktop.nsi
===================================================================
--- trunk/bibledesktop/etc/installer/win32/BibleDesktop.nsi	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/bibledesktop/etc/installer/win32/BibleDesktop.nsi	2013-03-12 01:47:10 UTC (rev 2304)
@@ -113,9 +113,9 @@
   MessageBox MB_OK "${PRODUCT_NAME} uses Java ${JRE_VERSION} or later, it will now be downloaded and installed."
 
   StrCpy $2 "$TEMP\Java Runtime Environment.exe"
-  ; Obtain from http://nsis.sourceforge.net/InetLoad_plug-in
-  ; and put inetload.dll from zip file in NSIS plugins directory
-  InetLoad::load /POPUP "Getting Java for ${PRODUCT_NAME}" ${JRE_URL} $2
+  ; Obtain from http://nsis.sourceforge.net/Inetc_plug-in
+  ; and put inetc.dll from zip file in NSIS plugins directory
+  Inetc::get /POPUP "Getting Java for ${PRODUCT_NAME}" ${JRE_URL} $2
   Pop $R0 ;Get the return value
   StrCmp $R0 "OK" +5
   ;NSISdl::download /TIMEOUT=30000 ${JRE_URL} $2

Modified: trunk/bibledesktop/etc/installer/win32/README.txt
===================================================================
--- trunk/bibledesktop/etc/installer/win32/README.txt	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/bibledesktop/etc/installer/win32/README.txt	2013-03-12 01:47:10 UTC (rev 2304)
@@ -1,3 +1,14 @@
+NSIS on MacOSX
+Install macports.
+sudo port install nsis
+download inetc plugin and put it in /opt/local/share/nsis/plugins
+create /etc/launchd.conf and put in there something like:
+setenv PATH /opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbi
+n:/sbin:/usr/local/bin:/Users/dm/bin:/usr/local/git/bin
+
+NSIS on Linux
+Some distributions have mingw32-nsis. If so use that. Else follow the pain below.
+
 Building NSIS to run on Linux
 sudo yum install texinfo bison flex
 

Modified: trunk/bibledesktop-web/build.xml
===================================================================
--- trunk/bibledesktop-web/build.xml	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/bibledesktop-web/build.xml	2013-03-12 01:47:10 UTC (rev 2304)
@@ -40,15 +40,13 @@
 				<exclude name="*-doc.zip" />
 				<exclude name="*-src.zip" />
 				<exclude name="webstart" />
-				<exclude name="BibleDesktopSetup.exe" />
-				<exclude name="BibleDesktop.app.zip" />
+				<exclude name="nsis" />
 			</fileset>
 		</copy>
 		<copy todir="${package.bd.dir}">
 			<fileset dir="${dest.install.web.dir}">
 				<include name="webstart" />
-				<include name="BibleDesktopSetup.exe" />
-				<include name="BibleDesktop.app.zip" />
+				<include name="nsis" />
 			</fileset>
 		</copy>
 		<copy todir="${package.jsword.dir}">

Modified: trunk/bibledesktop-web/src/main/webapp/download.html
===================================================================
--- trunk/bibledesktop-web/src/main/webapp/download.html	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/bibledesktop-web/src/main/webapp/download.html	2013-03-12 01:47:10 UTC (rev 2304)
@@ -34,7 +34,7 @@
           <br/><br/>See note below if you are runing Vista.</td>
   </tr>
   <tr>
-      <td><a href="/ftpmirror/pub/jsword/release/bibledesktop-latest-bin.tar.gz"><img src="images/duke.png" width="40" height="36" border="0"/></a></td>
+      <td><a href="/ftpmirror/pub/jsword/release/bibledesktop-latest-bin.zip"><img src="images/duke.png" width="40" height="36" border="0"/></a></td>
       <td>Linux, BSD, Unix</td>
       <td>Download, uncompress and run BibleDesktop.sh. See below for note on Linux.</td>
   </tr>
@@ -81,7 +81,7 @@
           <br/><br/>See note below if you are running Vista/7/8.</td>
   </tr>
   <tr>
-      <td><a href="nightly/bibledesktop-latest-bin.tar.gz"><img src="images/duke.png" width="40" height="36" border="0"/></a></td>
+      <td><a href="/ftpmirror/pub/jsword/nightly/bibledesktop-latest-bin.zip"><img src="images/duke.png" width="40" height="36" border="0"/></a></td>
       <td>Linux, BSD, Unix</td>
       <td>Download, uncompress and run BibleDesktop.sh. See below for note on Linux.</td>
   </tr>
@@ -99,12 +99,12 @@
   On Windows Vista, 7 or 8 it may repeatedly ask you permission to run BibleDesktop.
 </p>
 
+<!--
 <h2>Note on WebStart</h2>
 <p>
   WebStart was provided as a simple way to run BibleDesktop. As of Java 6 update 23 a bug in Java caused
   it to stop working. Once this is fixed we will restore WebStart.
 </p>
-<!--
 <p>
   WebStart works on all platforms and does not require an active connection to the internet after the program
   is run for the first time. To use WebStart you will need to have Java on your computer. You can get Java from 
@@ -118,10 +118,13 @@
 
 <h2>Note on Linux</h2>
 <p>
-  Most distributions of Linux pose a challenge to running Java programs:
-  Most do not come with a version of Java that can run BibleDesktop.
-  You will need to
-  <a href="/jsword/linuxjava.html">obtain and install Java</a>
+  Bible Desktop runs well using openJDK, available with most recent Linux distributions.
+</p>
+<p>
+  In the past, most distributions of Linux posed a challenge to running Java programs:
+  Most did not come with a version of Java that could run BibleDesktop.
+  If you are running a Linux distribution that does not have openJDK, you will need to
+  <a href="/jsword/linuxjava.html">obtain and install Oracle's Java</a>
   before trying to run BibleDesktop.
 </p>
 

Modified: trunk/jsword-web/src/main/webapp/devt.html
===================================================================
--- trunk/jsword-web/src/main/webapp/devt.html	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/jsword-web/src/main/webapp/devt.html	2013-03-12 01:47:10 UTC (rev 2304)
@@ -45,17 +45,17 @@
 
 <h3>Source Documentation</h3> 
 <p>
-  The high level design comes in the form of an <a href="java2html/org/crosswire/jsword/examples/APIExamples.java.html">API
+  The high level design comes in the form of an <a href="cobertura/org.crosswire.jsword.examples.APIExamples.html">API
   Primer</a> which describes how to go about reading and formatting data from JSword, using Bibles, Commentaries and Dictionaries
-  (it comes with some decent <a href="api/org/crosswire/jsword/examples/APIExamples.html">JavaDoc</a> too). There is also a <a href="design.html">design
+  (it comes with some decent <a href="javadoc/org/crosswire/jsword/examples/APIExamples.html">JavaDoc</a> too). There is also a <a href="design.html">design
   statement</a> that explains some of the top level design choices. It explains how the Book and Bible interfaces are arranged
   and justifies the design decisions.
 </p>
 
 <p>
-  There is also the obligatory <a href="api">JavaDoc</a> tree. Most of the source is fairly well documented,
-  so the JavaDoc ought actually to be useful! There is also a web version of the <a href="java2html">Java Source</a> converted
-  to the web by <a href="http://www.java2html.com">Java2HTML</a>.
+  There is also the obligatory <a href="javadoc">JavaDoc</a> tree. Most of the source is fairly well documented,
+  so the JavaDoc ought actually to be useful! There is also a web version of the <a href="cobertura">Java Source</a> converted
+  to the web by <a href="http://cobertura.sourceforge.net">Cobertura</a>, with test coverage information.
 </p>
 
 <p>
@@ -74,8 +74,8 @@
 <h2>Test Results</h2> 
 <p>
   We are run unit tests automatically on a nightly basis. The unit tests are run with the help of <a href="http://www.junit.org">JUnit</a> and
-  we also get code coverage analysis performed by <a href="http://www.jcoverage.com">JCoverage</a>. So you can easily see
-  the latest <a href="junit">test results</a>, or some <a href="jcoverage">coverage analysis</a> that
+  we also get code coverage analysis performed by <a href="http://cobertura.sourceforge.net">Cobertura</a>. So you can easily see
+  the latest <a href="junit">test results</a>, or some <a href="cobertura">coverage analysis</a> that
   shows how effective the tests are.
 </p>
 
@@ -93,7 +93,7 @@
 
 <ul>
   <li><a href="checkstyle">Coding Standards report</a> generated by <a href="http://checkstyle.sourceforge.net">CheckStyle</a>.</li>
-  <li><a href="http://pmd.sourceforge.net">PMD</a> reports <a href="pmd">common bugs</a> and <a href="cpd/report.txt">needlessly copied code</a>.</li>
+  <li><a href="http://pmd.sourceforge.net">PMD</a> reports <a href="pmd">common bugs</a> and <a href="cpd">needlessly copied code</a>.</li>
   <li><a href="findbugs">Bug report analysis</a> courtesy of <a href="http://findbugs.sourceforge.net">FindBugs</a>.</li>
   <li><a href="jdepend/jdepend-report.html">Dependency analysis</a> generated by <a href="http://www.clarkware.com/software/JDepend.html">JDepend</a>.</li>
   <li><a href="javancss">Non-comment source code</a> report from <a href="http://www.kclee.de/clemens/java/javancss">NCSS</a>.</li>

Modified: trunk/jsword-web/src/main/webapp/svn.html
===================================================================
--- trunk/jsword-web/src/main/webapp/svn.html	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/jsword-web/src/main/webapp/svn.html	2013-03-12 01:47:10 UTC (rev 2304)
@@ -4,13 +4,23 @@
 <html xmlns="http://www.w3.org/1999/xhtml">
 
 <head>
-  <title>JSword - SVN</title>
+  <title>JSword - Source Code Control</title>
 </head>
 <body>
 
 <h1>Source Code Access</h1>
 <p>
-  Our source code is managed with Subversion, aka SVN. SVN is hosted at crosswire. The SVN root is:<br />
+ We are currently in the process of migrating our code from Subversion (SVN) to git.
+ JSword currently is managed with git and the rest is managed with SVN.</p>
+<p>
+  The git root is currently hosted at Github:<br />
+  <code>https://github.com/crosswire/jsword.git</code><br />
+  Anyone can access the code without a password and can be browsed at this url.<br/>
+  Our development is done in <code>trunk</code> and each release is tagged under <code>tags</code>.
+  We will use <code>branches</code> for release maintenance.
+</p>
+<p>
+  The SVN root is:<br />
   <code>https://crosswire.org/svn/jsword</code><br />
   Anyone can access the code without a password and can be browsed at this url.<br/>
   Our development is done in <code>trunk</code> and each release is tagged under <code>tags</code>.
@@ -32,22 +42,28 @@
     </li>
   </ul>
   </li>
-  <li><strong>common-swing</strong> - Like org.crosswire.common but specific to swing.</li>
-  <li><strong>bibledesktop</strong> - A GUI that exposes JSword functionality.</li>
+  <li><strong>bibledesktop</strong> - Consists of two parts:
+  <ul>
+    <li><em>org.crosswire.bibledesktop</em> - A GUI that exposes JSword functionality.</li>
+    <li><em>org.crosswire.common.swing</em> - Like org.crosswire.common but specific to swing.</li>
+  </ul>
+  </li>
   <li><strong>jsword-web</strong> - The code and html for the <a href="/jsword">JSword website</a>. This project also contains the ant build.xml file that is used for nightly builds.</li>
   <li><strong>bibledesktop-web</strong> - The code and html for the <a href="/bibledesktop">BibleDesktop website</a>.</li>
-  <li><strong>jsword-support</strong> - Quality Assurance tools that we use before checking in code and that we run nightly.</li>
   <li><strong>jsword-limbo</strong> - Code that we could not part with. It is either code that we no longer use or code that we were thinking of using.</li>
   <li><strong>biblemapper</strong> - Provides an analytical view of a Bible. Currently this is not used.</li>
-  <li><strong>javatar</strong> - 3rd party code that we could not use directly via Java WebStart. It is here only to build a jar that works with WebStart</li>
 </ol>
-<p>To get started you will need the first project, and to do BibleDesktop development you also need the next two projects.
-   For each of the projects you wish to use, cd to the directory you wish to check out and then do a SVN checkout following this form:<br/> 
-   The project to checkout is <code>jsword</code>, so if you are using the command line you would
-   <code>svn checkout https://crosswire.org/svn/jsword/trunk/jsword jsword</code>.<br />
+<p>To get started you will need the first project, and to do BibleDesktop development you also need the bibledesktop project.
+   For the <code>jsword</code> project do a git clone using the following form:<br/>
+   <code>git clone https://github.com/crosswire/jsword.git</code>.
 </p>
 <p>
-  For detailed instruction on how to use Eclipse as a SVN client see:
+   For each of the other subprojects you wish to use, cd to the directory you wish to check out and then do a SVN checkout following this form:<br/> 
+   For the <code>bibledesktop</code> project, so if you are using the command line you would<br />
+   <code>svn checkout https://crosswire.org/svn/jsword/trunk/bibledesktop bibledesktop</code>.<br />
+</p>
+<p>
+  For detailed instruction on how to use Eclipse as a git/SVN client see:
   <a href="Eclipse.html">Using Eclipse with JSword</a>
 </p>
 

Modified: trunk/jsword-web/src/main/webapp/template.xsl
===================================================================
--- trunk/jsword-web/src/main/webapp/template.xsl	2013-03-11 16:41:07 UTC (rev 2303)
+++ trunk/jsword-web/src/main/webapp/template.xsl	2013-03-12 01:47:10 UTC (rev 2304)
@@ -101,16 +101,16 @@
             <li><a href="devt.html">Introduction</a></li>
             <li><a href="writingcode.html">Writing Code</a></li>
             <li><a href="design.html">Design</a></li>
-            <li><a href="java2html/org/crosswire/jsword/examples/APIExamples.java.html">API Primer</a></li>
-            <li><a href="api/org/crosswire/common/config/package-summary.html">Config API</a></li>
-            <li><a href="api">JavaDoc</a></li>
-            <li><a href="java2html">Java-Source</a></li>
+            <li><a href="cobertura/org.crosswire.jsword.examples.APIExamples.html">API Primer</a></li>
+            <!-- li><a href="javadoc/org/crosswire/common/config/package-summary.html">Config API</a></li -->
+            <li><a href="javadoc">JavaDoc</a></li>
+            <li><a href="cobertura">Java Source</a></li>
           </ul>
           <p>Nightly Build</p>
           <ul>
             <li><a href="buildlog.txt">Build Log</a></li>
             <!-- li><a href="junit">Test-Results</a></li -->
-            <!-- li><a href="jcoverage">Test-Coverage</a></li -->
+            <li><a href="cobertura">Test-Coverage</a></li>
             <li><a href="checkstyle">CheckStyle</a></li>
             <li><a href="pmd">PMD</a></li>
             <li><a href="cpd">CPD</a></li>




More information about the jsword-svn mailing list