axiom-developer
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Axiom-developer] 20080528.01.tpd.patch (configure/readme rewrite)


From: daly
Subject: [Axiom-developer] 20080528.01.tpd.patch (configure/readme rewrite)
Date: Wed, 28 May 2008 17:06:31 -0500

Rewrite the readme and configure files.
The configure script now just gives instructions for setting the 
AXIOM and PATH shell script variables.

========================================================================
diff --git a/changelog b/changelog
index 360115d..b3a1125 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,5 @@
+20080528 tpd configure rewrite
+20080528 tpd readme rewrite
 20080527 tpd Makefile add fedora9 stanza
 20080527 tpd faq 47: Axiom won't build on Fedora 9 (SELinux)
 20080526 tpd Makefile add fedora8-64 stanza
diff --git a/configure b/configure
index e2633f0..042b446 100755
--- a/configure
+++ b/configure
@@ -1,167 +1,43 @@
-# The sysname function uses uname -s to try to decode what kind of
-# system to build. Currently the return value of uname is mapped as
-#       Linux          --> linux
-#       MINGW32_NT-5.1 --> windows
-#       SunOS          --> Solaris9
-#       Fedora Core 3  --> fedora3
-#       freebsd        --> freebsd
-#
-# The solaris platform needs patch->gpatch, awk->gawk, tar->gtar
-
-sysname () {
-if [ -f /etc/redhat-release ] ;
- then 
-  SYSNAME=`cat /etc/redhat-release` 
-  if [ "$SYSNAME" = "Fedora Core release 3 (Heidelberg)" ] ; 
-   then SYSNAME=fedora3
-  else if [ "$SYSNAME" = "Fedora Core release 5 (Bordeaux)" ] ; 
-   then SYSNAME=fedora5
-   fi
-  fi
-  echo SYSNAME=$SYSNAME
-fi
-if [ ! "$SYSNAME" = "fedora3" ] ;
- then 
-  if [ ! "$SYSNAME" = "fedora5" ] ;
-   then
-    SYSNAME=`uname -s`
-    echo $SYSNAME 
-    if [ "$SYSNAME" = "Linux" ] ; then SYSNAME=linux
-    elif  [ "$SYSNAME" = "MINGW32_NT-5.1" ] ; then SYSNAME=windows
-    elif  [ "$SYSNAME" = "SunOS" ] ; then SYSNAME=solaris9
-    elif  [ "$SYSNAME" = "freebsd" ] ; then SYSNAME=freebsd
-    else
-      echo Your system name is $SYSNAME
-      echo We do not know how to build for this kind of system
-      echo Send a note to address@hidden about it
-      echo
-      exit 0
-    fi
-  fi
-fi
-
-}
-
-# This function checks for the gawk command. 
-# If it exists then AWKNAME is the complete pathname
-
-checkgawk() {
-AWKNAME=`which gawk 2>>trace`
-if [ -n "$AWKNAME" ] ; then
- if [ -x $AWKNAME ] ; then 
-  echo 
- fi
-fi
-}
-
-# This function checks for the nawk command. 
-# If it exists then AWKNAME is the complete pathname
-
-checknawk() {
-AWKNAME=`which nawk 2>>trace`
-if [ -n "$AWKNAME" ] ; then
- if [ -x $AWKNAME ] ; then 
-  echo 
- fi
-fi
-}
-
-# This function checks for the awk command. 
-# If it exists then AWKNAME is the complete pathname
-
-checkawk() {
-AWKNAME=`which awk 2>>trace`
-if [ -n "$AWKNAME" ] ; then
- if [ -x $AWKNAME ] ; then 
-  echo 
- fi
-fi
-}
-
-# This function uses the check*awk functions to decide 
-# whether the system can build noweb. If one of gawk, nawk or awk
-# are not found we fail.
-needAwk ()
-{
-checkgawk
-if [ -z "$AWKNAME" ] ; then
-  checknawk
-  if [ -z "$AWKNAME" ] ; then
-    checkawk
-    if [ -z "$AWKNAME" ] ; then
-      echo We need the commands gawk, nawk, or awk
-      exit 0
-    fi
-  fi
-fi
-}
-
-# The mustSet function tells the user what needs to be typed on the 
-# command line. If any extra variables need to be set we add them here.
-# Currently the only thing we check if for the presence of gawk, which
-# is the default in the Makefile. If gawk does not exist we can use 
-# either nawk or awk but the user has to specify that on the command line.
-
-# We check the system we are using with the uname command and try to
-# generate the appropriate value. We fail otherwise.
-
-# We generate the appropriate command line that the user should use.
-
-mustSet() {
+echo Axiom is known to build on the following systems:
 echo
-echo ===================================================
-echo You must set your AXIOM and PATH variables. Type:
+echo SYSNAME ---- SYSTEM
+echo =========================================================
+echo redhat72 --- RedHat 7.2 linux
+echo redhat9 ---- RedHat 9 linux
+echo debian ----- Debian linux
+echo opensuse --- OpenSuse linux
+echo ubuntu ----- Ubuntu linux
+echo fedora3 ---- Fedora Core 3 linux
+echo fedora5 ---- Fedora 5 linux
+echo fedora6 ---- Fedora 6 linux
+echo fedora7 ---- Fedora 7 linux
+echo fedora8 ---- Fedora 8 linux
+echo fedora9 ---- Fedora 9 linux
+echo fedora8-64 - Fedora 8 linux on 64 bit platform
+echo fedora64 --- Fedora generic 64 bit build
+echo gentoo ----- Gentoo generic build
+echo linux ------ generic linux
+echo macosxppc -- Mac OSX 10.4 with XCode installed
+echo 
+echo To use this information to build Axiom, decide which system is
+echo closest to your configuration and look under the SYSNAME column.
+echo 
+echo Assuming you put Axiom in /home/me/axiom you would type:
+echo 
+echo export AXIOM=/home/me/axiom/mnt/SYSNAME
+echo export PATH=\$AXIOM/bin:\$PATH
+echo make
+echo 
+echo Note: On macosxppc type \"make AWK=awk\" instead
+echo 
+echo If the system fails to build the likely cause is SELinux.
+echo See the faq.
 echo
-echo To build the rest of the system type:
-echo
-echo export AXIOM=`pwd`/mnt/$SYSNAME
-echo 'export PATH=$AXIOM/bin:$PATH'
-if [ "$SYSNAME" = "freebsd" ] ; then
-  echo Note that freebsd usually has noweb available
-  echo If you wish to use the standard version you must type
-  echo touch noweb 
-  echo If you wish to use a pre-installed GCL you must type
-  echo make GCLVERSION=gcl-system
-fi
-if [ "$SYSNAME" = "solaris9" ] ; 
- then echo make AWK=gawk TAR=gtar PATCH=gpatch
-elif [ "`basename $AWKNAME`" = "gawk"  ] ; 
- then echo make
- else echo make AWK=$AWKNAME
-fi
-echo
-echo configure finished.
-}
-
-#########################################################################
-# This is the main line of configure logic.
-# (1) We test to see if we understand this system name. So far
-#     the recognized strings from uname -s are translated as:
-#       Linux          --> linux
-#       MINGW32_NT-5.1 --> windows
-#       SunOS          --> Solaris9
-#       Fedora Core 3  --> fedora3
-#       freebsd        --> freebsd
-# (1) We test for the AWK variable. We need one of gawk, nawk, or awk
-#     in order to build the noweb software.
-# (2) Then we output the final message for the user.
-#
-# The solaris platform needs patch->gpatch, awk->gawk, tar->gtar
-#########################################################################
-
-sysname
-needAwk
+echo For new information and details see
+echo http://axiom.axiom-developer.org
+echo 
+echo For binary downloads see
+echo http://axiom.axiom-developer.org/axiom-website/download.html
+echo 
+echo Mail bug reports to address@hidden
 
-if [ "x$AXIOM" = "x" ] ;
- then mustSet
- else 
-  if [ ! "`dirname $AXIOM`" = "`pwd`/mnt" ]
-    then mustSet
-    else 
-     echo Configure complete. Now type
-     echo
-     echo make
-     echo
-  fi
-fi
-  
diff --git a/readme b/readme
index 27bb2cf..c4da06b 100644
--- a/readme
+++ b/readme
@@ -1,23 +1,31 @@
-You've unpacked the Axiom source code to some directory. In this document
-we'll call that directory /spad. Note that the path cannot contain uppercase
-characters. This is a porting limitation as not all systems can handle
-dual case characters.
+You've unpacked the Axiom source code to some directory. In this
+document we'll call that directory /home/me/axiom. Note that the path
+cannot contain uppercase characters or spaces. This is a porting
+limitation as not all systems can handle dual case characters.
 
 =======================================================================
-================= CONFIGURING AXIOM ===================================
+================= MAKING AXIOM ========================================
 =======================================================================
 
-Type:
-./configure
+Axiom builds a system-specific version based on a string we'll call
+the SYSNAME. Currently recognized SYSNAME strings can be found on the
+Axiom website at:
+<http://axiom.axiom-developer.org/axiom-website/download.html>
 
-=======================================================================
-================= MAKING AXIOM ========================================
-=======================================================================
+Replace SYSNAME below with the likely name of your system.
+
+We also assume that you downloaded AXIOM to someplace. Suppose
+that place is /home/me/axiom, then:
 
-cd /spad                           << where you unpacked the sources
-export AXIOM=/spad/mnt/linux       << which axiom to build
-make                               << build the system
-                                   << a system build takes 2+ hours at 2Ghz
+cd /home/me/axiom                         << where you unpacked the sources
+export AXIOM=/home/me/axiom/mnt/SYSNAME   << which axiom to build
+export PATH=$AXIOM/bin:$PATH
+make                                      << build the system
+
+A system build takes 2+ hours at 2Ghz machine.
+
+A recent cause of likely build failures is SELinux.
+See the faq file for possible solutions.
 
 When the make completes you'll have an executable called $AXIOM/bin/axiom
 
@@ -39,9 +47,8 @@ make INSTALL=/home/me/myaxiom COMMAND=/home/me/bin/myaxiom 
install
 
 =====================================================================
 
-Documentation can be found at various places in the system.
-At the moment most of the documentation is for developers.
-There is a users guide being developed. It will be online when complete.
+Documentation can be found at various places in the system or on the
+Axiom website: <http://axiom.axiom-developer.org>
 
 There is a book (available on Amazon.com):
 Jenks, Richard D. and Sutor, Robert S. "Axiom, The Scientific Computation
@@ -66,7 +73,9 @@ Questions and comments should be sent to:
 address@hidden
 
 Tim Daly
address@hidden
address@hidden
+
+=====================================================================
 
 Philosophy
 
@@ -529,7 +538,7 @@ Steps in the build process
 
 The sequence of steps necessary to build a clean Axiom is simply:
 
-  export AXIOM=(path-including-this-directory)/mnt/linux
+  export AXIOM=(path-including-this-directory)/mnt/SYSNAME
   make
 
 If this fails check the FAQ for possible problems and their fixes.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]