[Top][All Lists]
[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.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Axiom-developer] 20080528.01.tpd.patch (configure/readme rewrite),
daly <=