[Openmcl-cvs-notifications] r10728 - in /trunk/source/lisp-kernel/linuxx8632: ./ Makefile

gb at clozure.com gb at clozure.com
Sat Sep 13 03:14:15 EDT 2008


Author: gb
Date: Sat Sep 13 03:14:15 2008
New Revision: 10728

Log:
New file.  Kernel compiles and links on 32-bit x86 Linux; hard to
test much until we have a heap image.

Added:
    trunk/source/lisp-kernel/linuxx8632/
    trunk/source/lisp-kernel/linuxx8632/Makefile

Added: trunk/source/lisp-kernel/linuxx8632/Makefile
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/lisp-kernel/linuxx8632/Makefile (added)
+++ trunk/source/lisp-kernel/linuxx8632/Makefile Sat Sep 13 03:14:15 2008
@@ -1,0 +1,85 @@
+#
+#   Copyright (C) 2008 Clozure Associates and contributors
+#   This file is part of Clozure CL.  =

+#
+#   Clozure CL is licensed under the terms of the Lisp Lesser GNU Public
+#   License , known as the LLGPL and distributed with Clozure CL as the
+#   file "LICENSE".  The LLGPL consists of a preamble and the LGPL,
+#   which is distributed with Clozure CL as the file "LGPL".  Where these
+#   conflict, the preamble takes precedence.  =

+#
+#   Clozure CL is referenced in the preamble as the "LIBRARY."
+#
+#   The LLGPL is also available online at
+#   http://opensource.franz.com/preamble.html
+
+
+VPATH =3D ../
+RM =3D /bin/rm
+AS =3D as
+M4 =3D m4
+ASFLAGS =3D --32
+M4FLAGS =3D -DLINUX -DX86 -DX8632 -DHAVE_TLS
+CDEFINES =3D -DLINUX -D_REENTRANT -DX86 -DX8632 -D_GNU_SOURCE -DHAVE_TLS -=
DUSE_FUTEX #-DDISABLE_EGC
+CDEBUG =3D -g
+COPT =3D #-O2
+
+# If the linker supports a "--hash-style=3D" option, use traditional
+# SysV hash tables.  (If it doesn't support that option, assume
+# that traditional hash tables will be used by default.)
+ld_has_hash_style =3D $(shell $(LD) --help | grep "hash-style=3D")
+ifeq ($(ld_has_hash_style),)
+HASH_STYLE=3D
+else
+HASH_STYLE=3D"-Wl,--hash-style=3Dsysv"
+endif
+
+
+.s.o:
+	$(M4) $(M4FLAGS) -I../ $< | $(AS)  $(ASFLAGS) -o $@
+.c.o:
+	$(CC) -c $< $(CDEFINES) $(CDEBUG) $(COPT) -m32 -o $@
+
+SPOBJ =3D pad.o x86-spjump32.o x86-spentry32.o x86-subprims32.o
+ASMOBJ =3D x86-asmutils32.o imports.o
+
+COBJ  =3D pmcl-kernel.o gc-common.o x86-gc.o bits.o  x86-exceptions.o \
+	image.o thread_manager.o lisp-debug.o memory.o unix-calls.o
+
+DEBUGOBJ =3D lispdcmd.o plprint.o plsym.o xlbt.o x86_print.o
+KERNELOBJ=3D $(COBJ) x86-asmutils32.o  imports.o
+
+SPINC =3D	lisp.s m4macros.m4 x86-constants.s x86-macros.s errors.s x86-uuo=
.s \
+	x86-constants32.s
+
+CHEADERS =3D area.h bits.h x86-constants.h lisp-errors.h gc.h lisp.h \
+	lisp-exceptions.h lisp_globals.h macros.h memprotect.h image.h \
+	Threads.h x86-constants32.h x86-exceptions.h lisptypes.h
+
+
+KSPOBJ =3D $(SPOBJ)
+all:	../../lx86cl
+
+
+OSLIBS =3D -ldl -lm -lpthread
+LINK_SCRIPT =3D # ./elf_x86_32.x
+USE_LINK_SCRIPT =3D # -T $(LINK_SCRIPT)
+
+../../lx86cl:	$(KSPOBJ) $(KERNELOBJ) $(DEBUGOBJ) Makefile  $(LINK_SCRIPT)
+	$(CC)  -m32 $(CDEBUG)  -Wl,--export-dynamic $(HASH_STYLE) -o $@ $(USE_LIN=
K_SCRIPT) $(KSPOBJ) $(KERNELOBJ) $(DEBUGOBJ) $(OSLIBS)
+
+
+$(SPOBJ): $(SPINC)
+$(ASMOBJ): $(SPINC)
+$(COBJ): $(CHEADERS)
+$(DEBUGOBJ): $(CHEADERS) lispdcmd.h
+
+
+cclean:
+	$(RM) -f $(KERNELOBJ) $(DEBUGOBJ) ../../lx86cl
+
+clean:	cclean
+	$(RM) -f $(SPOBJ)
+
+strip:	../../lx86cl
+	strip -g ../../lx86cl



More information about the Openmcl-cvs-notifications mailing list