* device/lib/Makefile.in, device/lib/ds390/Makefile.in,
[fw/sdcc] / device / lib / gbz80 / 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 -mgbz80
12 SAS = $(TOPDIR)/bin/as-gbz80
13
14 # override PORTDIR defined by super (parent) makefile
15 override PORTDIR = ../build/gbz80
16
17 include $(srcdir)/../incl.mk
18
19 Z80_FLOAT = $(COMMON_FLOAT)
20
21 Z80_INT = $(COMMON_INT)
22
23 Z80_LONG = $(COMMON_LONG) \
24   _divulong.c \
25   _mullong.c
26
27 Z80_SDCC = $(COMMON_SDCC) \
28   _itoa.c \
29   _ltoa.c \
30   _startup.c \
31   sprintf.c \
32   vprintf.c
33
34 Z80SOURCES = $(addprefix ../,$(Z80_FLOAT) $(Z80_INT) $(Z80_LONG) $(Z80_SDCC))
35 Z8OBJECTS = $(patsubst %.c,%.o,$(Z80_FLOAT) $(Z80_INT) $(Z80_LONG) $(Z80_SDCC))
36
37 OBJ = div.o mul.o putchar.o printf.o shift.o stubs.o crt0_rle.o heap.o fstubs.o
38
39 LIB = gbz80.lib
40 CC = $(SCC)
41 AS = $(SAS)
42 CFLAGS = -I$(srcdir)/../../include -I. --std-c99
43
44 all: $(PORTDIR)/$(LIB) crt0.o
45
46 $(PORTDIR)/$(LIB): $(OBJ) $(Z8OBJECTS) Makefile
47 ifeq ($(LIB_TYPE), SDCCLIB)
48         rm -f $@; \
49         ../../../bin/sdcclib -a $@ $(OBJ) $(Z8OBJECTS)
50 else ifeq ($(LIB_TYPE), AR)
51         ar -Scq $@ $(OBJ)
52 else ifeq ($(LIB_TYPE), RANLIB)
53         ar -Scq $@ $(OBJ) $(Z8OBJECTS)
54         $(top_builddir)/bin/asranlib $@
55 else
56         rm -f $@
57         for i in $(basename $(OBJ) $(Z8OBJECTS)); do echo $$i >>$@; done
58         cp $(OBJ) $(Z8OBJECTS) $(PORTDIR)
59 endif
60
61 %.o: %.c
62         $(CC) $(CFLAGS) -c $<
63
64 %.o: ../%.c
65         $(CC) $(CFLAGS) -c $<
66
67 clean:
68         rm -f *.o *.sym *.lst *~ $(CLEANSPEC) *.dump* *.asm *.lib
69
70 distclean: clean
71         rm -f Makefile