[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Axiom-developer] Re: Please join!
From: |
Waldek Hebisch |
Subject: |
Re: [Axiom-developer] Re: Please join! |
Date: |
Sun, 22 Apr 2007 22:29:29 +0200 (CEST) |
Bill Page wrote:
> On April 22, 2007 2:02 PM Alfredo Portes
>
> > Is Waldek branch able to compile in Windows or is it missing
> > anything significant from build-improvements to achieve this?
> >
>
> It is not possible (yet) to compile wh-sandbox on Windows.
> I am working on it. Any help would be appreciated.
>
Could you write what problems do you see? Gaby wrote that on
Windows one needs realtive paths -- this part in not merged
into wh-sandbox (mechanical merge gives me build failures on
Linux and the changes conflict with other patches that I am
working on, so this will take some time).
Algebra and interp directories in wh-sandbox are significantly
differenet than in build-improvements, but I hope that there
is little (or maybe no) differences (beyond paths issues) affecting
portability.
In other subdirectories of src the diff below summarizes unmerged parts:
Index: src/hyper/ChangeLog.build-improvements
===================================================================
--- src/hyper/ChangeLog.build-improvements (wersja 509)
+++ src/hyper/ChangeLog.build-improvements (kopia robocza)
@@ -1,3 +1,15 @@
+2007-04-09 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet (${HYPER}/pages/ht.db): Tell htadd that we're
+ building a system database.
+ * Makefile.in: Regenerate.
+
+2006-12-08 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet (${HYPER}/pages/ht.db): Beware of relative
+ directories.
+ * Makefile.in: Regenerate.
+
2006-11-26 Gabriel Dos Reis <address@hidden>
* ReadBitmap.pamphlet: Include axiom-c-macros.h
Index: src/doc/Makefile.pamphlet
===================================================================
--- src/doc/Makefile.pamphlet (wersja 509)
+++ src/doc/Makefile.pamphlet (kopia robocza)
@@ -136,11 +136,11 @@
We need to document the commands.
<<*>>=
IN=$(axiom_src_srcdir)/doc
-MID=${INT}/doc
+MID=./$(top_builddir)/int/doc
OUT=$(axiom_target_bindir)
STY=${OUT}/tex
DVI=$(axiom_target_docdir)
-DOC=${INT}/doc
+DOC=./$(top_builddir)/int/doc
subdir = src/doc/
Index: src/doc/ChangeLog.build-improvements
===================================================================
--- src/doc/ChangeLog.build-improvements (wersja 509)
+++ src/doc/ChangeLog.build-improvements (kopia robocza)
@@ -1,3 +1,8 @@
+2006-12-09 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet (MID, DOC): Adjust definition.
+ * Makefile.in: Regenerate.
+
2006-11-24 Gabriel Dos Reis <address@hidden>
* Makefile.pamphlet (all-doc): New phony target.
Index: src/lisp/Makefile.pamphlet
===================================================================
--- src/lisp/Makefile.pamphlet (wersja 509)
+++ src/lisp/Makefile.pamphlet (kopia robocza)
@@ -2,7 +2,7 @@
\documentclass{article}
\usepackage{axiom}
-\title{\File{src/lisp/Makefile}}
+\title{\File{src/lisp/Makefile} Pamphlet}
\author{The Axiom Team}
\begin{document}
@@ -18,49 +18,14 @@
\section{The Makefile}
The purpose of this Makefile is to create a fresh Lisp image, [[$(OUT)/lisp]],
-for use in make [[boot]]. To that end, it augments a existing Lisp
-image, at the moment GCL, with some specific C-routines.
+for use to make \Tool{interpsys} and \Tool{AXIOMsys}. To that end,
+it augments an existing Lisp image, at the moment \Tool{GCL}, with
+some specific C-routines.
-If GCL is not existing in the build environment, we build one and install
-it a separate directory and carry on the build process has if it had
-existed.
-
-\section{Configure and Make GCL}
-We enable several features of GCL.
-The [[--enable-readline]] uses GNU readline for the prompts. It has been
-removed and replaced with clef which is Axiom's version of readline.
-The [[--enable-maxpage]] is set to allow the image to grow 4 times
-what it would by default.
-The [[--enable-vssize]] allows virtual stack to grow by twice the normal size.
-The [[--enable-statsysbfd]] uses a static system bfd library for loading and
-relocating object files.
-
-We would like to have the following done for all GCL (either built from Axiom
-sources or system-installed).
-Finally we load some routines for performance reasons. [[lsp/sys-proclaim]]
-contains common lisp proclaim statements for the various GCL lisp routines.
-[[cmpnew/gcl_collectfn]] contains modifications to the common lisp compiler
-to collect compile-time type information which will be written to [[.fn]]
-files as common lisp structs. These [[.fn]] files can be loaded and turned
-into common lisp proclaim statements which the compiler can use to generate
-faster code, mostly fast-path function calls. The call to [[compiler::emit-fn]]
-enables the [[.fn]] file generation whenever compile-file is called. We
-default this code into the image so it is always avaiable.
-
-\begin{verbatim}
- echo '(progn (load "cmpnew/gcl_collectfn.lsp")' \
- ' (load "lsp/sys-proclaim.lisp")' \
- ' (compiler::emit-fn t)' \
- ' (system::save-system "${OUT}/lisp"))' \
- | $(GCL))
-\end{verbatim}
-
\section{The Makefile}
-\subsection{GCL already installed or built}
-
-<<build lisp for boot>>=
-## Create a fresh image for building Boot
+<<build augmented lisp>>=
+## Create a fresh image for building interpsys and AXIOMsys
## These objects files are the C runtime support
## and must be compiled into the Lisp image,
## as they must be present in the final interpreter
@@ -70,8 +35,9 @@
$(build_libdir)/cfuns-c.o \
$(build_libdir)/sockio-c.o
-$(OUT)/lisp$(EXEEXT): $(AXIOM_LISP)
- echo '(compiler::link nil "${OUT}/lisp" ' \
+$(OUT)/lisp$(EXEEXT):
+ @axiom_gcl_rsym_hack@
+ echo '(compiler::link (quote ("../boot/initial-env.lisp")) "lisp" ' \
' (format nil "(progn (let ((*load-path* (cons ~S *load-path*))'\
' (si::*load-types* ~S))' \
' (compiler::emit-fn t))' \
@@ -79,8 +45,9 @@
' (si::sgc-on t))' \
' (setq compiler::*default-system-p* t))"' \
' si::*system-directory* (quote (list ".lsp")))' \
- ' "$(lisp_c_objects)")' \
+ ' "$(lisp_c_objects) @axiom_c_runtime_extra@")' \
| $(AXIOM_LISP)
+ $(INSTALL_PROGRAM) lisp$(EXEEXT) $(OUT)
@
@@ -91,7 +58,7 @@
pamphlets = Makefile.pamphlet
-build_libdir = $(abs_top_builddir)/src/lib
+build_libdir = ./$(top_builddir)/src/lib
lisp_DEPENDENCIES = $(build_libdir)/cfuns-c.o \
$(build_libdir)/sockio-c.o \
@@ -102,14 +69,12 @@
all-ax all-lisp: $(OUT)/lisp$(EXEEXT)
-<<build lisp for boot>>
+<<build augmented lisp>>
-# Build GCL takes quite a while, so we don't remove the
-# diretcory in mostlyclean. Rather, we do that in clean.
mostlyclean-local:
+ -rm -f $(OUT)/lisp$(EXEEXT)
clean-local: mostlyclean
- -rm -f $(OUT)/lisp$(EXEEXT)
distclean-local: clean-local
-rm -f Makefile
Index: src/lisp/ChangeLog.build-improvements
===================================================================
--- src/lisp/ChangeLog.build-improvements (wersja 509)
+++ src/lisp/ChangeLog.build-improvements (kopia robocza)
@@ -1,3 +1,35 @@
+2007-03-26 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet ($(OUT)/lisp$(EXEEXT)): Dont' depend on
+ $(AXIOM_LISP). Load ../boot/initial-env.lisp before saving to
+ disk. Remove obsolete GCL build description.
+ (mostlyclean-local): Remove saved Lisp image.
+ * Makefile.in: Regenerate.
+
+2007-03-04 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet ($(OUT)/lisp$(EXEEXT)): Conditionally depend
+ on GCL.
+ * Makefile.in: Regenerate.
+
+2006-12-10 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet ($(OUT)/lisp$(EXEEXT)): Run GCL/rsym hack
+ work-around commands if necessary.
+ * Makefile.in: Regenerate.
+
+2006-12-09 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet ($(OUT)/lisp$(EXEEXT)): Add extra libraries if
+ necessary.
+ * Makefile.in: Regenerate.
+
+2006-12-06 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet ($(OUT)/lisp$(EXEEXT)): Build "lisp" image in
+ the build directory, then copy over to the destination dir.
+ * Makefile.in: Regenerate.
+
2006-12-02 Gabriel Dos Reis <address@hidden>
* Makefile.pamphlet (lisp_c_objects): New variable.
Index: src/etc/Makefile.pamphlet
===================================================================
--- src/etc/Makefile.pamphlet (wersja 509)
+++ src/etc/Makefile.pamphlet (kopia robocza)
@@ -2,7 +2,7 @@
\documentclass{article}
\usepackage{axiom}
-\title{\$SPAD/src/etc Makefile}
+\title{\File{src/etc/Makefile} Pamphlet}
\author{Timothy Daly \and Gabriel Dos~Reis}
\begin{document}
@@ -26,24 +26,26 @@
@
\section{The databases}
+
The databases are built in this Makefile even though the prerequisits
are actually made during the previous step in the algebra directory.
This allows us to use a simple wildcard to express the fact that
-all of the [[algreba/*.NRLIB/code.$(OBJEXT)]] files are required in order to
build
+all of the [[algreba/*.NRLIB/code.\$(OBJEXT)]] files are required in
+order to build
the databases. If any if any of these are changed, the databases must
be re-built.
<<dbcomplete>>=
$(DATABASES): ${INT}/algebra/*.NRLIB/code.$(OBJEXT)
@ echo 4 rebuilding databases...
- @ $(INSTALL_DATA) $(axiom_src_docdir)/gloss.text ${INT}/algebra
- @ $(INSTALL_DATA) $(axiom_src_docdir)/gloss.text ${INT}/algebra
- @ $(INSTALL_DATA) $(axiom_src_docdir)/topics.data ${INT}/algebra
- @ $(INSTALL_DATA) $(axiom_src_docdir)/topics.data ${INT}/algebra
- @ (cd ${INT}/algebra ; \
+ @ $(INSTALL_DATA) $(axiom_src_docdir)/gloss.text ../algebra
+ @ $(INSTALL_DATA) $(axiom_src_docdir)/gloss.text ../algebra
+ @ $(INSTALL_DATA) $(axiom_src_docdir)/topics.data ../algebra
+ @ $(INSTALL_DATA) $(axiom_src_docdir)/topics.data ../algebra
+ @ (cd ../algebra ; \
echo ')lisp (make-databases "" nil)' | ${INTERPSYS} )
- @ $(INSTALL_DATA) ${INT}/algebra/*.daase $(axiom_targetdir)/algebra
- @ $(INSTALL_DATA) ${INT}/algebra/libdb.text $(axiom_targetdir)/algebra
- @ $(INSTALL_DATA) ${INT}/algebra/comdb.text $(axiom_targetdir)/algebra
+ @ $(INSTALL_DATA) ../algebra/*.daase $(axiom_targetdir)/algebra
+ @ $(INSTALL_DATA) ../algebra/libdb.text $(axiom_targetdir)/algebra
+ @ $(INSTALL_DATA) ../algebra/comdb.text $(axiom_targetdir)/algebra
@ $(mkinstalldirs) $(axiom_targetdir)/algebra/USERS.DAASE \
$(axiom_targetdir)/algebra/DEPENDENTS.DAASE
@ $(INSTALL_DATA) ${INT}/algebra/USERS.DAASE/index.KAF \
@@ -54,6 +56,7 @@
@
\section{\Tool{summary}}
+
<<summary>>=
$(axiom_target_libdir)/summary: $(srcdir)/summary
$(INSTALL_DATA) $< $@
@@ -61,6 +64,7 @@
@
\section{\File{copyright}}
+
<<copyright>>=
$(axiom_target_libdir)/copyright: $(srcdir)/copyright
$(INSTALL_DATA) $< $@
@@ -88,6 +92,7 @@
e.g. %s -so Integer
will give the source file name written to stdout
\end{verbatim}
+
<<asq>>=
bin_PROGRAMS = asq$(EXEEXT)
asq_sources = asq.c
@@ -104,7 +109,10 @@
@
<<*>>=
-INTERPSYS=$(axiom_build_bindir)/interpsys
+INTERPSYS= \
+ AXIOM="$(AXIOM)" \
+ DAASE="$(axiom_src_datadir)" \
+ ../interp/interpsys$(EXEEXT)
DATABASES_SHORT=compress.daase interp.daase browse.daase category.daase \
operation.daase libdb.text comdb.text USERS.DAASE/index.KAF \
DEPENDENTS.DAASE/index.KAF
Index: src/etc/ChangeLog.build-improvements
===================================================================
--- src/etc/ChangeLog.build-improvements (wersja 509)
+++ src/etc/ChangeLog.build-improvements (kopia robocza)
@@ -1,3 +1,24 @@
+2007-04-01 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet (INTERPSYS): Adjust path.
+ * Makefile.in: Regenerate.
+
+2007-03-24 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet: Fix typos.
+ * Makefile.in: Regenerate.
+
+2006-12-09 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet (INTERPSYS): Point DAASE to the databases
+ cached in source.
+ * Makefile.in: Regenerate.
+
+2006-12-09 Gabriel Dos Reis <address@hidden>
+
+ * Makefile.pamphlet (INT): Define here.
+ * Makefile.in: Regenerate.
+
2006-11-26 Gabriel Dos Reis <address@hidden>
* asq.c.pamphlet: Include axiom-c-macros.h.
--
Waldek Hebisch
address@hidden
- [Axiom-developer] Re: Please join!, (continued)
- [Axiom-developer] Re: Please join!, Alfredo Portes, 2007/04/22
- RE: [Axiom-developer] Re: Please join!, Bill Page, 2007/04/22
- [Axiom-developer] Re: Versions with database support, Martin Rubey, 2007/04/22
- Re: [Axiom-developer] Re: Please join!, Alfredo Portes, 2007/04/22
- RE: [Axiom-developer] Re: Please join!, Bill Page, 2007/04/22
- Re: [Axiom-developer] Re: Please join!, Alfredo Portes, 2007/04/22
- RE: [Axiom-developer] Re: Please join!, Bill Page, 2007/04/22
- Re: [Axiom-developer] Re: Please join!, Alfredo Portes, 2007/04/22
- RE: [Axiom-developer] Re: Please join!, Bill Page, 2007/04/22
- Re: [Axiom-developer] Re: Please join!, Gabriel Dos Reis, 2007/04/27
- Re: [Axiom-developer] Re: Please join!,
Waldek Hebisch <=
- RE: [Axiom-developer] Re: Please join!, Bill Page, 2007/04/23
- RE: [Axiom-developer] Re: Please join!, Bill Page, 2007/04/22
- Re: [Axiom-developer] Re: Please join!, Waldek Hebisch, 2007/04/22
- [Axiom-developer] Saturn and Windows (was: Please join!), Bill Page, 2007/04/22
- Re: Please join! Re: [Axiom-developer] Re: Axiom HyperDoc Replacement, Ralf Hemmecke, 2007/04/21
- Re: Please join! Re: [Axiom-developer] Re: Axiom HyperDoc Replacement, Martin Rubey, 2007/04/22
- Re: Please join! Re: [Axiom-developer] Re: Axiom HyperDoc Replacement, Ralf Hemmecke, 2007/04/22
- Re: Please join! Re: [Axiom-developer] Re: Axiom HyperDoc Replacement, Alfredo Portes, 2007/04/22
- Re: Please join! Re: [Axiom-developer] Re: Axiom HyperDoc Replacement, Ralf Hemmecke, 2007/04/22
- Re: Please join! Re: [Axiom-developer] Re: Axiom HyperDoc Replacement, Andrey G. Grozin, 2007/04/22