[Top][All Lists]

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

[Gcl-devel] Re: [Axiom-developer] Axiom Availability Announcement

From: Camm Maguire
Subject: [Gcl-devel] Re: [Axiom-developer] Axiom Availability Announcement
Date: 04 Sep 2003 10:54:26 -0400
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings all!

Just a quick note to say that I've put together a preliminary
axiom.deb and uploaded it last night into unstable.  It will likely
take a few days before being approved, but after that point the
autobuilders should let us know how portable we are!  Doubtless many
changes will be needed to the package that now exists, so comments
most appreciated.

A few notes:

1) I made several changes to GCL.  At a users request, GCL is now
   following the linux release naming conventions -- x.y.z where y is
   *even* denotes stable releases, and y odd refers to development/cvs
   snapshot releases.  So the latest stable GCL we're working on is
   2.6.1, which can be obtained via CVS with the flag -r
   Version_2_6_1.  ftp.gnu.org is *still* down, so this isn't an
   "official" release.  Nevertheless, I've uploaded a 2.6.1 gcl deb to
   the unstable Debian distribution last night to see where we stand.
   So the sources/binary can also be retrieved from

   Among the changes were modifications designed to enable axiom to be
   built with gcl installed externally.  This now works, at least for
   me, with the following two minor patches to the axiom source
   (currently in the Debian .diff:)


--- axiom-0.0.0cvs.orig/lsp/Makefile.pamphlet
+++ axiom-0.0.0cvs/lsp/Makefile.pamphlet
@@ -152,17 +152,7 @@
        @echo 1 building ${LSP} ${GCLVERSION}
-       @echo 2 building ${GCLVERSION}
-       @tar -zxf ${ZIPS}/${GCLVERSION}.tgz
+       echo "(compiler::link nil \"${OUT}/lisp\" \"\" 
\"${OBJ}/${SYS}/lib/cfuns-c.o ${OBJ}/${SYS}/lib/sockio-c.o 
${OBJ}/${SYS}/lib/libspad.a\")" | gcl
        @echo 13 finished system build on `date` | tee >gcldir
 ccldir: ${LSP}/ccl/Makefile

--- axiom-0.0.0cvs.orig/src/interp/util.lisp.pamphlet
+++ axiom-0.0.0cvs/src/interp/util.lisp.pamphlet
@@ -68,7 +68,7 @@
   ;; perform system initializations for building a starter system
-  (let ((collectfn (concatenate 'string (string lsp) "/cmpnew/collectfn")))
+  (let ((collectfn (concatenate 'string si::*system-directory* 
    (unless (probe-file (concatenate 'string collectfn ".o"))
      (compile-file collectfn))
    (load collectfn)
        More on (compiler::link ...) below.

2)  The current axiom .deb, also available at incoming.debian.org,
    basically consists of the mnt/linux and obj/linux trees copied
    wholesale (with a few minor exceptions), and a shell script
    wrapper called 'axiom' to set the path and execute interpsys.  I
    added a placeholder manpage to conform to Debian policy, but this
    brought to my attention the question of (user) documentation -- is
    there any?

3)  Unfortunately, there are still 5 Debian platforms on which GCL can
    not natively relocate objects (mips(el), alpha, ia64, hppa).  On
    these boxes, one must use (compiler::link...) to build images.
    This can also be used on the other platforms, but save-system is
    easier to use, and we hope to make it available everywhere in the

    So if we want axiom on these machines, we need to add a little
    code following the example in the patch above at the image dumping
    point, i.e. bootsys, depsys, and interpsys.  The arguments to link
        a list of compiled lisp object file pathnames, preferably
        a pathname for the output image
        (optional) a string of lisp code to be run at the end of the
            normal lisp initialization.
        (optional) a string of non-lisp objects and libraries to be
            placed on the command line
        (optional) a flag indicating if the user module initialization
            code should be run (defaults to 't)

    Lisp modules used in this call must be compiled with the :system-p
    flag to compile file set to 't.  This is most easily done with
    (setq compiler::*default-system-p* t) before compiling.

    I can look into making some patches, but as these should be arch
    specific, I wanted to consult how this could best be done in
    axiom's build system.  I.e. axiom has no 'configure' script.

Take care,

root <address@hidden> writes:

> *,
> Axiom exists as free and open source software.
> The first version of the Axiom sources has been uploaded to the CVS at
> http://savannah.gnu.org/projects/axiom. Congrats to all involved.
> Many thanks to the Numerical Algorithms Group, the CAISS Institute at
> City College of New York and to the people of these mailing lists.
> This version contains (almost) all of the algebra, the interpreter,
> and the spad compiler. This is the heart of Axiom. The graphics,
> hyperdoc, documentation, numerical code, Axiom Journal papers,
> openmath, and CATS test suite are in my source tree but are not ready
> for distribution yet. I'll announce these parts as they become
> available.
> A gzipped-tar file of the sources will be available soon.
> Debian apt and Redhat rpm files are under discussion.
> The CVS version can be downloaded by anonymous CVS:
> cvs -d:pserver:address@hidden:/cvsroot/savannah login
> cvs -z3 -d:pserver:address@hidden:/cvsroot/savannah co axiom
> NOTE: when prompted for a password for anoncvs simply press the Enter key
> The primary documentation is in the Makefile.dvi file.
> To build the system in a directory (e.g. /SPAD) you do:
> cd /SPAD
> export AXIOM=/SPAD/mnt/linux
> make
> The executable is (currently) found by doing:
> export PATH=/SPAD/obj/linux/bin:/SPAD/mnt/linux/bin:$PATH
> interpsys
> The build takes about 2 hours and 15 minutes on a 2Ghz/1Gb machine.
> You might want to do the build in an emacs shell buffer so you can
> save the console output in case of trouble.
> So far the build works properly on Redhat GNU/Linux 9. If you build it
> on another system please let us know. A port to Windows is in process.
> This is an alpha version of the system so expect (and report) bugs.
> The savannah website has a bug reporting tool.
> The algebra runs but has not yet been tested. This version has been
> uploaded so we can all test from the same base. When reporting bugs
> please use this version number printed at the top of your Axiom session.
> It will look something like:
>   Thursday, August 28, 2003, 2:31am
> This version is a complete rebuild of Axiom. Many changes have been made.
> First, the system has been rewritten using literate programming.
> Each file is in "pamphlet" format (which is basically Latex with
> two extra tags). The reason for this is explained in the top-level
> Makefile.dvi file.
> Second, the system has been ported to GCL. This is the first of many
> common lisp ports where Axiom will exist.
> Third, the makefile tree has been rewritten. Most of the documentation
> that exists at the moment is in the various Makefile.dvi files.
> Fourth, the algebra is built from scratch rather than pre-existing files.
> The tenkan.org website and CVS is now obsolete and will be removed. 
> Please use savannah for future development.
> Much work needs to be done. Click on the homepage link to see some of
> the future tasks.
> Questions, comments, and snide remarks can be sent to me at:
> Tim Daly
> address@hidden
> address@hidden
> _______________________________________________
> Axiom-developer mailing list
> address@hidden
> http://mail.nongnu.org/mailman/listinfo/axiom-developer

Camm Maguire                                            address@hidden
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah

reply via email to

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