* device/lib/Makefile.in, device/lib/ds390/Makefile.in,
[fw/sdcc] / device / lib / hc08 / Makefile.in
1 # libc/hc08 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 -mhc08
12 SAS = $(TOPDIR)/bin/as6808
13
14 # override PORTDIR defined by super (parent) makefile
15 override PORTDIR = ../build/hc08
16
17 include $(srcdir)/../incl.mk
18
19 HC08_FLOAT = $(COMMON_FLOAT)
20
21 HC08_INT = $(COMMON_INT) \
22   _divsint.c \
23   _modsint.c \
24   _moduint.c
25
26 HC08_LONG = $(COMMON_LONG)
27
28 HC08_SDCC = $(COMMON_SDCC) \
29   _itoa.c \
30   _ltoa.c \
31   _spx.c \
32   _startup.c \
33   _strlen.c \
34   _memmove.c \
35   _heap.c \
36   sprintf.c \
37   vprintf.c
38
39 HC08SOURCES = $(addprefix ../,$(HC08_FLOAT) $(HC08_INT) $(HC08_LONG) $(HC08_SDCC))
40 HC08OBJECTS = $(patsubst %.c,%.rel,$(HC08_FLOAT) $(HC08_INT) $(HC08_LONG) $(HC08_SDCC))
41
42 OBJ = _ret.rel _divuint.rel _divulong.rel _mulint.rel _mullong.rel
43
44 LIB = hc08.lib
45 CC = $(SCC)
46 AS = $(SAS)
47 ASFLAGS = -plosgff
48
49 CFLAGS = -I$(srcdir)/../../include -I. --std-c99
50
51 all: $(PORTDIR)/$(LIB)
52
53 $(PORTDIR)/$(LIB): $(OBJ) $(HC08OBJECTS) Makefile
54 ifeq ($(LIB_TYPE), SDCCLIB)
55         rm -f $@; \
56         ../../../bin/sdcclib -a $@ $(OBJ) $(HC08OBJECTS)
57 else ifeq ($(LIB_TYPE), AR)
58         ar -Scq $@ $(OBJ) $(HC08OBJECTS)
59 else ifeq ($(LIB_TYPE), RANLIB)
60         ar -Scq $@ $(OBJ) $(HC08OBJECTS)
61         $(top_builddir)/bin/asranlib $@
62 else
63         rm -f $@
64         for i in $(basename $(OBJ) $(HC08OBJECTS)); do echo $$i >>$@; done
65         cp $(OBJ) $(HC08OBJECTS) $(PORTDIR)
66 endif
67
68 %.rel: %.c
69         $(CC) $(CFLAGS) -c $<
70
71 %.rel: ../%.c
72         $(CC) $(CFLAGS) -c $<
73
74 clean:
75         rm -f *.rel *.sym *.lst *~ $(CLEANSPEC) *.dump* *.asm *.lib
76
77 distclean: clean
78         rm -f Makefile