axiom-developer
[Top][All Lists]
Advanced

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

Re: [Axiom-developer] Axiom on FreeBSD - current patch set


From: root
Subject: Re: [Axiom-developer] Axiom on FreeBSD - current patch set
Date: Fri, 13 Aug 2004 01:23:41 -0400

This patch was implemented somewhat differently than coded here.
See the individual issues below, marked with >>> in the first columns --t


===================================================================
RCS file: /cvsroot/axiom/axiom/Makefile.pamphlet,v
retrieving revision 1.25
diff -u -d -B -b -r1.25 Makefile.pamphlet
--- Makefile.pamphlet   21 Jul 2004 02:59:33 -0000      1.25
+++ Makefile.pamphlet   8 Aug 2004 10:06:16 -0000
@@ -186,7 +186,7 @@
 CCLBASE=${OBJ}/${SYS}/ccl/ccllisp
 INSTALL=/usr/local/axiom
 COMMAND=${INSTALL}/mnt/${SYS}/bin/axiom

>>> This change was not applied here (mostly because it breaks all
>>> of the other systems. This will force me to use the configure
>>> command (and become more intimate with bash). In any case, at
>>> the moment this is unchanged.

-TANGLE=${SPADBIN}/lib/notangle
+TANGLE=notangle
 
 NOISE="-o ${TMP}/trace"
 
@@ -268,6 +268,7 @@
        @mkdir -p ${OBJ}/noweb
        @mkdir -p ${TMP}
        @mkdir -p ${MNT}/${SYS}/bin/lib

>>> This change also needs to be done differently and has not yet
>>> been applied. The configure command can easily disable this
>>> stanza by doing a "touch noweb", which causes make to conclude
>>> that noweb already exists. In any case, at the moment this is
>>> unchanged.

+ifneq "${SYS}" "freebsd"
        @( cd ${OBJ}/noweb ; \
        tar -zxf ${ZIPS}/noweb-2.10a.tgz ; \
        cd ${OBJ}/noweb/src ; \
@@ -279,6 +280,7 @@
        ${MAKE} BIN=${MNT}/${SYS}/bin/lib LIB=${MNT}/${SYS}/bin/lib \
                 MAN=${MNT}/${SYS}/bin/man \
                 TEXINPUTS=${MNT}/${SYS}/bin/tex all install >${TMP}/trace )
+endif
        @echo The file marks the fact that noweb has been made > noweb
 
 nowebclean:
@@ -406,7 +408,13 @@
        @echo 78 installing Axiom in ${INSTALL}
        @mkdir -p ${INSTALL}
        @cp -pr ${MNT} ${INSTALL}

>>> This change has been applied and backported to the other systems.

-       @echo AXIOM=${INSTALL}/mnt/${SYS} >${COMMAND}
+       @echo '#!/bin/sh -' >${COMMAND}
+       @echo AXIOM=${INSTALL}/mnt/${SYS} >>${COMMAND}
+       @echo export AXIOM >>${COMMAND}
+       @echo DAASE='$${AXIOM}' >>${COMMAND}
+       @echo export DAASE >>${COMMAND}
+       @echo PATH='$${PATH}':'$${AXIOM}/bin' >>${COMMAND}
+       @echo export PATH >>${COMMAND}
        @cat ${SRC}/etc/axiom >>${COMMAND}
        @chmod +x ${COMMAND}
        @echo 79 Axiom installation finished.
@@ -550,6 +558,11 @@
 optimizations for function calling in Axiom. This is handled automatically
 by changing this variable.


>>> This patch was not applied. Since GCL is never built for your
>>> freebsd system there is no reason to change the GCLVERSION variable.
 
+If GCLVERSION is ``gcl-system'', then no GCL is not built locally,
+and it is assumed that the ``gcl'' command is available off the
+path. If this GCL is unsuitable for building Axiom, then very bad
+things will happen.
+
 NOTE WELL: IF YOU CHANGE THIS YOU SHOULD ERASE THE lsp/Makefile FILE.
 This will cause the build to remake the lsp/Makefile from the
 lsp/Makefile.pamphlet file and get the correct version. If you
@@ -562,7 +575,8 @@
 #GCLVERSION=gcl-2.6.1
 #GCLVERSION=gcl-2.6.2
 #GCLVERSION=gcl-2.6.2a
-GCLVERSION=gcl-2.6.3
+#GCLVERSION=gcl-2.6.3
+GCLVERSION=gcl-system
 @
 
 \subsection{Makefile.axposf1v3}
@@ -858,6 +872,53 @@
 <<clean>>
 
 @

>>> This change was applied but had the side-effect of pushing a stanza
>>> from the generated Makefile to the generated Makefile.freebsd (or
>>> Makefile.linux) as that was the correct way to fix the problem.
>>> So the actual version differs slightly from the version you have here.
>>> In particular, the 'all:' stanza is now a chunk and there is a new
>>> 'install.${SYS}' chunk not listed here.

+\subsection{Makefile.freebsd}
+Annoyingly enough it seems that GCL uses a default extension of .lsp
+rather than .lisp so we add the {\bf LISP} variable here. We need to
+depend on the default extension behavior because the system build
+will load either the interpreted or compiled form of a file depending
+on which is available. This varies at different stages of the build.
+<<Makefile.freebsd>>=
+# System dependent Makefile for the freebsd platform
+# Platform variable
+PLF:=FREEBSDplatform
+# C compiler flags
+CCF:="-O -pipe -fno-strength-reduce -Wall -D_GNU_SOURCE -D${PLF} 
-I/usr/X11R6/include -I/usr/local/include"
+# Loader flags
+LDF:="-L/usr/X11R6/lib -L/usr/local/lib"
+# C compiler to use
+CC:=gcc 
+AWK=awk
+RANLIB=ranlib
+TOUCH=touch
+TAR=tar
+AXIOMXLROOT=${AXIOM}/compiler
+O=o
+BYE=bye
+LISP=lsp
+DAASE=${SRC}/share
+# where the libXpm.a library lives
+XLIB=/usr/X11R6/lib
+
+ENV=PLF=${PLF} CCF=${CCF} LDF=${LDF} CC=${CC} AWK=${AWK} RANLIB=${RANLIB} \
+    TOUCH=${TOUCH} TAR=${TAR} AXIOMXLROOT=${AXIOMXLROOT} O=${O} BYE=${BYE} \
+    LISP=${LISP} DAASE=${DAASE} XLIB=${XLIB} TANGLE=${TANGLE}
+
+all: rootdirs srcsetup lspdir srcdir
+       @echo 45 Makefile.freebsd called
+       @echo 46 Environment : ${ENV} 
+       @echo 47 finished system build on `date` | tee >lastBuildDate
+
+<<rootdirs>>
+<<noweb>>
+<<literate commands>>
+<<srcsetup>>
+<<src>>
+<<lsp>>
+<<document>>
+<<clean>>
+
+@
 \subsection{Makefile.linux}
 Annoyingly enough it seems that GCL uses a default extension of .lsp
 rather than .lisp so we add the {\bf LISP} variable here. We need to




reply via email to

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