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