[LON-CAPA-cvs] cvs: loncom /build readme.html

raeburn raeburn@source.lon-capa.org
Tue, 01 Mar 2011 03:43:32 -0000


raeburn		Tue Mar  1 03:43:32 2011 EDT

  Modified files:              
    /loncom/build	readme.html 
  Log:
  - Updated with entry for make aboutVERSION.
  
  
Index: loncom/build/readme.html
diff -u loncom/build/readme.html:1.23 loncom/build/readme.html:1.24
--- loncom/build/readme.html:1.23	Sun Jan  9 19:01:23 2011
+++ loncom/build/readme.html	Tue Mar  1 03:43:32 2011
@@ -1,7 +1,7 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <!-- The LearningOnline Network with CAPA -->
-<!-- $Id: readme.html,v 1.23 2011/01/09 19:01:23 raeburn Exp $ -->
+<!-- $Id: readme.html,v 1.24 2011/03/01 03:43:32 raeburn Exp $ -->
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
@@ -11,7 +11,7 @@
 <h1>LON-CAPA Software Developer Guide</h1>
 <p>
 Created: <i>January 17, 2001</i>
-<br />Last updated: <i>January 9, 2011</i>
+<br />Last updated: <i>February 28, 2011</i>
 </p>
 <ol>
 <li><a href="#Using_CVS">Using CVS</a>
@@ -28,6 +28,7 @@
 <li><a href="#makebuild">Compiling the software (make build)</a></li>
 <li><a href="#loncapafiles">Adding/removing files from the LON-CAPA
 installation (doc/loncapafiles/loncapafiles.lpml)</a></li>
+<li><a href="#makeaboutVERSION">Updating the LON-CAPA Version number</a></li>
 <li><a href="#configversusnonconfig">Configurable files versus
 non-configurable files</a></li>
 <li><a href="#makeinstall">Updating the non-configurable files on your
@@ -467,7 +468,49 @@
 The <tt>lpml_parse.pl</tt>-<tt>loncapafiles.lpml</tt> 
 combination has been highly efficient and error-free.
 </p>
-</li><li><a name="configversusnonconfig" />
+</li>
+<li><a name="makeaboutVERSION" />
+    <h2>Updating files containing version number on your machine (make aboutVERSION)</h2>
+<strong>Commands</strong>
+<p><font color="#008800"><tt>
+cd loncom/build
+<br />make aboutVERSION
+</tt></font></p>
+<p>
+<strong>General description of what happens</strong>
+</p>
+<p>
+This is the actual make target code.
+</p>
+<pre>
+<!-- LONCAPA MAKETARGET=aboutVERSION START -->
+aboutVERSION:
+        cat $(SOURCE)/loncom/license/about.html | \
+        perl -e '$$d=`date +"%Y%m%d%H"`;chomp($$d);while(<>){s/(\<\!\-\- VERSION \-\-\>|\d+\.\d+\.CVS_HEAD\-\d{10})/$(SHOWVERSION)-$$d/; print;}' > \
+        $(SOURCE)/loncom/license/about.html.new
+        mv -v $(SOURCE)/loncom/license/about.html.new \
+        $(SOURCE)/loncom/license/about.html
+        cat $(SOURCE)/loncom/loncapa_apache.conf | \
+        perl -e '$$d=`date +"%Y%m%d%H"`;chomp($$d);while(<>){s/(\<\!\-\- VERSION \-\-\>|\d+\.\d+\.CVS_HEAD\-\d{10})/$(SHOWVERSION)-$$d/; print;}' > \
+        $(SOURCE)/loncom/loncapa_apache.conf.new
+        mv -v $(SOURCE)/loncom/loncapa_apache.conf.new \
+        $(SOURCE)/loncom/loncapa_apache.conf
+<!-- LONCAPA MAKETARGET=aboutVERSION END -->
+</pre>
+<p>
+The LON-CAPA Version number is updated in the following files:
+<ul>
+<li><tt>loncom/license/about.html</tt></li>
+<li><tt>loncom/loncapa_apache.conf</tt></li>
+</ul>
+</p>
+<p>
+Updating the version information in these files means that visitors to the static HTML page: "About LON-CAPA" on your server will see which version of LON-CAPA you are running.  The same information is also displayed on the dynamic log-in page generated by <tt>lonlogin.pm</tt>.  Furthermore, the version of LON-CAPA running on your server can determine which course roles may be selectable on that server, if a course contains resource(s) and/or parameter(s) which require a specific version (or newer) of LON-CAPA.  It is also possible for Domain Coordinators in another domain to configure their domain to limit hosting of sessions for users from their own domain to LON-CAPA servers in other domains which are running a specific LON-CAPA version (or newer).
+</p>
+<p> On a development server, i.e., one where LON-CAPA is built and installed from a CVS checkout, running make aboutVERSION will cause the version number to be set to something of the form: M.N.CVS_HEAD-YYYYMMDDHH, where M.N will be the version number of the next stable (major) release (e.g., if the current stable release is 3.1; the next release would be 3.2), and YYYYMMDDHH is the datestamp when make aboutVERSION was last run.  Note: make aboutVERSION will update the about.html and loncapa_apache.conf in the installation directory tree; it is not until <tt>make install</tt> is run that files served directly by the web server (or used for configuration) are updated with the versions in that tree.
+</p>
+</li>
+<li><a name="configversusnonconfig" />
     <h2>Configurable files versus non-configurable files</h2>
 <p>
 <strong>Machine-specific information is the difference</strong>