8 OBJCOPY
=$(CROSS
)objcopy
10 LDFLAGS
=-static
-s
--no-gc-sections
-N
-L
$(LIBDIR
)
11 CFLAGS
=-Wall
-I.
-Iinclude
-gstabs
-mlong-calls
-fno-builtin
-Os
-mc33pe
12 ASFLAGS
=-c
-xassembler-with-cpp
-Wa
,--gstabs
-medda32
-mc33pe
-mc33_ext
14 C_STRING_OPERATIONS
= \
21 src
/string
/isalnum.o \
22 src
/string
/isalpha.o \
23 src
/string
/isascii.o \
24 src
/string
/isblank.o \
25 src
/string
/iscntrl.o \
26 src
/string
/isdigit.o \
27 src
/string
/islower.o \
28 src
/string
/isprint.o \
29 src
/string
/ispunct.o \
30 src
/string
/isspace.o \
31 src
/string
/isupper.o \
32 src
/string
/isxdigit.o \
33 src
/string
/memccpy.o \
37 src
/string
/memmove.o \
40 src
/string
/strcasecmp.o \
45 src
/string
/strcspn.o \
47 src
/string
/strlcat.o \
48 src
/string
/strlcpy.o \
50 src
/string
/strncasecmp.o \
51 src
/string
/strncat.o \
52 src
/string
/strncmp.o \
53 src
/string
/strncpy.o \
54 src
/string
/strpbrk.o \
55 src
/string
/strrchr.o \
61 src
/string
/toascii.o \
62 src
/string
/tolower.o \
70 C_STD_LIB_OPERATIONS
= \
75 src
/stdlib
/bsearch.o \
83 src
/stdlib
/snprintf.o \
84 src
/stdlib
/sprintf.o \
86 src
/stdlib
/strtoul.o \
88 src
/stdlib
/uprintf.o \
90 src
/stdlib
/vprintf.o \
91 src
/stdlib
/vsnprintf.o \
92 src
/stdlib
/vsprintf.o \
101 $(GCC
) -M
$(CFLAGS
) $< > $(<:.c
=.d
)
102 $(GCC
) $(CFLAGS
) -c
$< -o
$(<:.c
=.o
)
104 lib
/libc.a
: $(C_STRING_OPERATIONS
) $(C_BSD_OPERATIONS
) $(C_STD_LIB_OPERATIONS
)
105 $(AR
) q lib
/libc.a
$^
108 rm -rf
$(TARGETS
) *.o
*.elf
*.d
109 rm -rf src
/string
/*.d src
/string
/*.o
110 rm -rf src
/stdlib
/*.d src
/stdlib
/*.o
111 rm -rf src
/bsd
/*.d src
/bsd
/*.o
113 -include $(wildcard *.d
) dummy