cf98fbfec31a5abbe2c3a56c60552c300b36f8cf
[fw/sdcc] / device / lib / z80 / Makefile.in
1 # libc/z80 Makefile
2
3 VPATH  = @srcdir@
4 srcdir = @srcdir@
5 top_builddir = @top_builddir@
6
7 LIB_TYPE     = @LIB_TYPE@
8
9 TOPDIR = ../../..
10
11 SCC = $(TOPDIR)/bin/sdcc -mz80
12 SAS = $(TOPDIR)/bin/as-z80
13
14 PORTDIR = ../build/z80
15
16 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
17
18 LIB = z80.lib
19 CC = $(SCC)
20 AS = $(SAS)
21 ASFLAGS = -plosgff
22
23 CFLAGS = -I$(srcdir)/../../include -I. --std-c89
24
25 all: $(PORTDIR)/$(LIB) $(PORTDIR)/crt0.o
26
27 $(PORTDIR)/crt0.o: crt0.o
28         cp crt0.o $(PORTDIR)/crt0.o
29
30 $(PORTDIR)/$(LIB): $(OBJ) Makefile _dummy
31 ifeq ($(LIB_TYPE), SDCCLIB)
32         rm -f $@; \
33         ../../../bin/sdcclib -a $@ $(OBJ)
34 else ifeq ($(LIB_TYPE), AR)
35         ar -Scq $@ $(OBJ)
36 else ifeq ($(LIB_TYPE), RANLIB)
37         ar -Scq $@ $(OBJ)
38         $(top_builddir)/bin/asranlib $@
39 else
40         rm -f $@; \
41         for i in $(basename $(OBJ)); do echo $$i >>$@; done
42         cp $(OBJ) $(PORTDIR)
43 endif
44
45 .c.o:
46         $(CC) $(CFLAGS) -c $<
47
48 .s.o:
49         $(AS) $(ASFLAGS) $@ $<
50
51 _dummy:
52
53 clean:
54         rm -f *.o *.sym *.lst *~ $(CLEANSPEC) *.dump* *.asm *.lib
55
56 distclean: clean
57         rm -f Makefile