Hi Tim! How do I get the sources to reproduce this?
As you might recall, we may have an old unresolved skew in the handling
of these extensions. I put in place a #'compiler::link function a long
time ago to support adding these sorts of files without having to patch
GCL, and thereby enabling a build against an externally installed gcl.
In sum, in the Debian package I replace your gcl build under the
makefile target gcldir in lsp/Makefile.pamphlet with
gcldir:
@echo 2 building ${GCLVERSION}
- @tar -zxf ${ZIPS}/${GCLVERSION}.tgz
-<<gcl-2.6.8pre7.h.linux.defs.patch>>
-<<gcl-2.6.8pre7.o.read.d.patch>>
-<<gcl-2.6.8pre7.unixport.initgcl.lsp.in.patch>>
-<<gcl-2.6.8pre7.unixport.makefile.patch>>
-<<gcl-2.6.8pre7.collectfn.fix>>
-<<gclConfigureMake>>
+ echo '(compiler::link (list (compile-file "${BOOKS}/tangle.lisp"))
"${OUT}/lisp" (format nil "(progn (let ((*load-path* (cons ~S
*load-path*))(si::*load-types* ~S)) (compiler::emit-fn t))(when (fboundp (quote
si::sgc-on)) (si::sgc-on t))#-native-reloc(setq compiler::*default-system-p*
t))" si::*system-directory* (quote (list #+native-reloc".o" ".lsp")))
"${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
Let me break out the link call with commentary:
(compiler::link ;;create a new lisp image ld and C objects prior to save-system
(list (compile-file "${BOOKS}/tangle.lisp")) ;;list of compiled lisp
files
"${OUT}/lisp" ;; output image name
(format nil ;; a command to run before the final save-system
"(progn
(let ((*load-path* (cons ~S *load-path*))(si::*load-types* ~S))
(compiler::emit-fn t))
(when (fboundp (quote si::sgc-on)) (si::sgc-on t))
#-native-reloc(setq compiler::*default-system-p* t))"
si::*system-directory* (quote (list #+native-reloc".o"
".lsp")))
;; a string of C objects and libraries
"${OBJ}/${SYS}/lib/cfuns-c.o ${OBJ}/${SYS}/lib/sockio-c.o
${OBJ}/${SYS}/lib/libspad.a"
)
I can explain how this works in detail if you are interested. If you'd
like to use it, that should simplify things quite a bit. If not, we can
still get the method based on patching GCL's makefiles to work -- it is
just that any edits to these files will require an update to the
patches, and this is somewhat fragile. Should you wish to pursue this,
please point me at the sources and I'll try to spot the failure.
Take care,
[email protected] writes:
> Camm,
>
> The build fails loading the Axiom extensions. The log is at
> http://daly.axiom-developer.org/cygwinfail.txt
>
> If you recall there are two files, cfuns-c.o and sockio-c.o
> which are linked into the GCL image. The related patches are
> listed at the top of the cygwinfail.txt file.
>
> You made a change in the makefile related to library loads
> so it was unclear to me where libspad.a should be added.
>
> Tim
>
>
>
>
--
Camm Maguire [email protected]
==========================================================================
"The earth is but one country, and mankind its citizens." -- Baha'u'llah
_______________________________________________
Gcl-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/gcl-devel