* Makefile.in, configure.in, configure,
[fw/sdcc] / device / lib / z80 / Makefile.in
index 0be6444d33c2120bf30dac5b1eeac4ada4afdb23..cf98fbfec31a5abbe2c3a56c60552c300b36f8cf 100644 (file)
@@ -2,12 +2,17 @@
 
 VPATH  = @srcdir@
 srcdir = @srcdir@
+top_builddir = @top_builddir@
+
+LIB_TYPE     = @LIB_TYPE@
 
 TOPDIR = ../../..
 
 SCC = $(TOPDIR)/bin/sdcc -mz80
 SAS = $(TOPDIR)/bin/as-z80
 
+PORTDIR = ../build/z80
+
 OBJ = div.o divsigned.o mod.o mul.o mulchar.o putchar.o shift.o stubs.o crt0_rle.o heap.o fstubs.o memmove.o strlen.o
 
 LIB = z80.lib
@@ -17,11 +22,25 @@ ASFLAGS = -plosgff
 
 CFLAGS = -I$(srcdir)/../../include -I. --std-c89
 
-all: $(LIB) crt0.o
-
-$(LIB): $(OBJ) Makefile _dummy
-       rm -f $(LIB)
-       for i in $(OBJ); do echo $$i >> $(LIB); done
+all: $(PORTDIR)/$(LIB) $(PORTDIR)/crt0.o
+
+$(PORTDIR)/crt0.o: crt0.o
+       cp crt0.o $(PORTDIR)/crt0.o
+
+$(PORTDIR)/$(LIB): $(OBJ) Makefile _dummy
+ifeq ($(LIB_TYPE), SDCCLIB)
+       rm -f $@; \
+       ../../../bin/sdcclib -a $@ $(OBJ)
+else ifeq ($(LIB_TYPE), AR)
+       ar -Scq $@ $(OBJ)
+else ifeq ($(LIB_TYPE), RANLIB)
+       ar -Scq $@ $(OBJ)
+       $(top_builddir)/bin/asranlib $@
+else
+       rm -f $@; \
+       for i in $(basename $(OBJ)); do echo $$i >>$@; done
+       cp $(OBJ) $(PORTDIR)
+endif
 
 .c.o:
        $(CC) $(CFLAGS) -c $<