[Openmcl-cvs-notifications] r14570 - /trunk/source/lisp-kernel/androidarm/Makefile

gb at clozure.com gb at clozure.com
Mon Jan 10 02:08:53 CST 2011


Author: gb
Date: Mon Jan 10 02:08:53 2011
New Revision: 14570

Log:
Build the lisp kernel as a shared library; build some aux programs
here.

Modified:
    trunk/source/lisp-kernel/androidarm/Makefile

Modified: trunk/source/lisp-kernel/androidarm/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/androidarm/Makefile (original)
+++ trunk/source/lisp-kernel/androidarm/Makefile Mon Jan 10 02:08:53 2011
@@ -13,6 +13,7 @@
 #   The LLGPL is also available online at
 #   http://opensource.franz.com/preamble.html
 =

+LIBBASE =3D 0x04001000
 NDK =3D /usr/local/android-ndk-r5
 HOST =3D darwin-x86
 ANDROIDVERSION =3D android-8
@@ -26,17 +27,17 @@
 AS =3D $(NDKBIN)as
 CC =3D $(NDKBIN)gcc --sysroot $(SYSROOT)
 LD =3D $(NDKBIN)ld
+HOSTCC =3D cc -m32
 M4 =3D m4
 ASFLAGS =3D -mfpu=3Dvfp
-M4FLAGS =3D -DLINUX -DARM -DANDROID
-CDEFINES =3D -DLINUX -DARM -DANDROID -D_REENTRANT -D_GNU_SOURCE -DUSE_FUTEX
+M4FLAGS =3D -DLINUX -DARM -DANDROID -DLIBBASE=3D$(LIBBASE)
+CDEFINES =3D -DLINUX -DARM -DANDROID -D_REENTRANT -D_GNU_SOURCE -DUSE_FUTE=
X -DCCLSHARED
 CDEBUG =3D -g
 COPT =3D #-O2
 # Once in a while, -Wformat says something useful.  The odds are against t=
hat,
 # however.
 WFORMAT =3D -Wno-format
 PLATFORM_H =3D platform-androidarm.h
-
 =

 # If the linker supports a "--hash-style=3D" option, use traditional
 # Sysv hash tables.  (If it doesn't support that option, assume
@@ -53,10 +54,12 @@
 .s.o:
 	$(M4) $(M4FLAGS) -I../ $< | $(AS) $(ASFLAGS) -o $@
 .c.o:
-	$(CC) -include ../$(PLATFORM_H) -I. -I$(NDKINC) -c $<  $(CDEFINES) $(CDEB=
UG) $(COPT) -fpic  $(WFORMAT)  -o $@
+	$(CC) -include ../$(PLATFORM_H) -I. -I$(NDKINC) -c $<  $(CDEFINES) $(CDEB=
UG) $(COPT) $(WFORMAT) -fpic -o $@
+
 =

 # -nostdinc -isystem ${NDK}/usr/gcc-include -isystem $(NDK)/usr/include
-SPOBJ =3D pad.o  arm-spentry.o arm-subprims.o
+SPOBJ =3D pad.o  arm-spentry.o =

+#arm-subprims.o
 ASMOBJ =3D arm-asmutils.o imports.o
 =

 COBJ  =3D pmcl-kernel.o gc-common.o arm-gc.o bits.o  arm-exceptions.o \
@@ -75,20 +78,29 @@
 # Yes:
 =

 KSPOBJ =3D $(SPOBJ)
-all:	../../aarmcl
+all:	../../aarmcl.so ../../aarmcl
+
+aarmcl.o: aarmcl.c
+	$(CC) -g -I$(NDKINC) -c $< -fpic -o $@
 =

 # No:
 =

 # KSPOBJ=3D
 # all:	../../armcl ../../subprims.so
 =

-OSLIBS =3D -ldl -lm -lc $(NDKLIB)/crtbegin_dynamic.o $(NDKLIB)/crtend_andr=
oid.o
+OSLIBS =3D -ldl -lm -lc =

+APPLIBS =3D $(OSLIBS) $(NDKLIB)/crtbegin_dynamic.o $(NDKLIB)/crtend_androi=
d.o
 =

 =

-../../aarmcl:	$(KSPOBJ) $(KERNELOBJ) $(DEBUGOBJ)
-	$(LD) -Bdynamic -e _start  -dynamic-linker /system/bin/linker -nostdlib -=
z nocopyreloc  -o ../../aarmcl  -L $(NDKLIB) pad.o arm-spentry.o arm-subpri=
ms.o pmcl-kernel.o gc-common.o arm-gc.o bits.o arm-exceptions.o image.o thr=
ead_manager.o lisp-debug.o memory.o unix-calls.o arm-asmutils.o imports.o l=
ispdcmd.o plprint.o plsym.o albt.o arm_print.o $(OSLIBS) -T ./armandroid.x
+../../aarmcl.so:	$(KSPOBJ) $(KERNELOBJ) $(DEBUGOBJ) ./armandroid.x ./fixlib
+	$(LD) --shared -Bdynamic -dynamic-linker /system/bin/linker -nostdlib -z =
nocopyreloc  -o ../../aarmcl.so  -L $(NDKLIB) pad.o arm-spentry.o  pmcl-ker=
nel.o gc-common.o arm-gc.o bits.o arm-exceptions.o image.o thread_manager.o=
 lisp-debug.o memory.o unix-calls.o arm-asmutils.o imports.o lispdcmd.o plp=
rint.o plsym.o albt.o arm_print.o $(OSLIBS) -T ./armandroid.x -M
+	./fixlib $(LIBBASE) >> ../../aarmcl.so
 =

+../../aarmcl:	aarmcl.o
+		$(LD) -Bdynamic -e _start  -dynamic-linker /system/bin/linker -nostdlib =
-z nocopyreloc  -o ../../aarmcl -L $(NDKLIB) aarmcl.o $(APPLIBS)
 =

+./fixlib: ./fixlib.c
+	$(HOSTCC) -g $< -o $@
 =

 $(SPOBJ): $(SPINC)
 $(ASMOBJ): $(SPINC)
@@ -97,10 +109,8 @@
 =

 =

 cclean:
-	$(RM) -f $(KERNELOBJ) $(DEBUGOBJ) ../../aarmcl
+	$(RM) -f $(KERNELOBJ) $(DEBUGOBJ) ../../aarmcl ../../aarmcl.so ./fixlib
 =

 clean:	cclean
 	$(RM) -f $(SPOBJ)
 =

-strip:	../../ppccl
-	strip -g ../../ppccl



More information about the Openmcl-cvs-notifications mailing list