diff runtime/lib/gc/basic/llvmdc.mak @ 569:926a03711ca8

Split runtime into three parts again.
author Christian Kamm <kamm incasoftware de>
date Wed, 03 Sep 2008 22:07:04 +0200
parents d81f36377866
children 20c065c46b38
line wrap: on
line diff
--- a/runtime/lib/gc/basic/llvmdc.mak	Tue Sep 02 19:14:37 2008 +0200
+++ b/runtime/lib/gc/basic/llvmdc.mak	Wed Sep 03 22:07:04 2008 +0200
@@ -10,7 +10,8 @@
 #	make clean
 #		Delete unneeded files created by build process
 
-LIB_TARGET=libtango-gc-basic.a
+LIB_TARGET_BC=libtango-gc-basic-bc.a
+LIB_TARGET_NATIVE=libtango-gc-basic.a
 LIB_MASK=libtango-gc-basic*.a
 
 CP=cp -f
@@ -33,6 +34,10 @@
 
 CC=gcc
 LC=llvm-ar rsv
+LCC=llc
+LLINK=llvm-link
+CLC=ar rsv
+LD=llvm-ld
 DC=llvmdc
 
 LIB_DEST=..
@@ -60,7 +65,7 @@
 
 targets : lib doc
 all     : lib doc
-lib     : basic.lib
+lib     : basic.lib basic.nlib
 doc     : basic.doc
 
 ######################################################
@@ -78,12 +83,21 @@
 
 ######################################################
 
-basic.lib : $(LIB_TARGET)
+basic.lib : $(LIB_TARGET_BC)
+basic.nlib : $(LIB_TARGET_NATIVE)
 
-$(LIB_TARGET) : $(ALL_OBJS)
+$(LIB_TARGET_BC) : $(ALL_OBJS)
 	$(RM) $@
 	$(LC) $@ $(ALL_OBJS)
 
+
+$(LIB_TARGET_NATIVE) : $(ALL_OBJS)
+	$(RM) $@ $@.bc $@.s $@.o
+	$(LLINK) -o=$@.bc $(ALL_OBJS)
+	$(LCC) -o=$@.s $@.bc
+	$(CC) -c -o $@.o $@.s
+	$(CLC) $@ $@.o
+
 basic.doc : $(ALL_DOCS)
 	echo No documentation available.