+# -*- makefile -*-
#
-# makefile for CC65 runtime library
+# makefile for CC65's common library
#
.SUFFIXES: .o .s .c
%.o: %.s
@$(AS) -g -o $@ $(AFLAGS) $<
+#--------------------------------------------------------------------------
+# Rules to help us see what code the compiler and assembler make.
+
+%.s : %.c
+ @$(CC) $(CFLAGS) -S $<
+
+%.lst : %.s
+ @$(AS) $(AFLAGS) -l -o /dev/null $<
+
#--------------------------------------------------------------------------
# Object files
-C_OBJS = _afailed.o \
- _hextab.o \
- _poserror.o \
- _scanf.o \
- abort.o \
- asctime.o \
- bsearch.o \
- errormsg.o \
- fdopen.o \
- fgetc.o \
- fgetpos.o \
- fgets.o \
- fputc.o \
- fputs.o \
- freopen.o \
- fseek.o \
- fsetpos.o \
- ftell.o \
- getchar.o \
- gets.o \
- gmtime.o \
- locale.o \
- localtime.o \
- mktime.o \
- perror.o \
- puts.o \
- qsort.o \
- realloc.o \
- rewind.o \
- scanf.o \
- sleep.o \
- strftime.o \
- strxfrm.o \
- strtok.o \
- system.o \
+# From C source-files
+C_OBJS = _afailed.o \
+ _hextab.o \
+ _poserror.o \
+ _scanf.o \
+ abort.o \
+ asctime.o \
+ bsearch.o \
+ errormsg.o \
+ fdopen.o \
+ fgetc.o \
+ fgetpos.o \
+ fgets.o \
+ fputc.o \
+ fputs.o \
+ freopen.o \
+ fseek.o \
+ fsetpos.o \
+ ftell.o \
+ getchar.o \
+ gets.o \
+ gmtime.o \
+ locale.o \
+ localtime.o \
+ mktime.o \
+ perror.o \
+ pmemalign.o \
+ puts.o \
+ qsort.o \
+ realloc.o \
+ rewind.o \
+ sleep.o \
+ strftime.o \
+ strtok.o \
+ strtol.o \
+ strtoul.o \
+ strxfrm.o \
+ system.o \
timezone.o
-
+# From assembly source-files
S_OBJS = _cwd.o \
+ _environ.o \
_fdesc.o \
_file.o \
_fopen.o \
_heap.o \
- _heapadd.o \
+ _heapadd.o \
_heapblocksize.o\
_heapmaxavail.o \
_heapmemavail.o \
fwrite.o \
getcpu.o \
getcwd.o \
+ getenv.o \
isalnum.o \
isalpha.o \
isblank.o \
memcpy.o \
memmove.o \
memset.o \
+ mkdir.o \
modfree.o \
modload.o \
oserrcheck.o \
printf.o \
putchar.o \
+ putenv.o \
rand.o \
raise.o \
remove.o \
rename.o \
+ rmdir.o \
+ scanf.o \
+ searchenv.o \
setjmp.o \
signal.o \
sigtable.o \
strncat.o \
strncmp.o \
strncpy.o \
+ strnicmp.o \
stroserr.o \
strpbrk.o \
strrchr.o \
strspn.o \
strstr.o \
+ strtoimax.o \
+ strtoumax.o \
strupper.o \
time.o \
tolower.o \
vfscanf.o \
vprintf.o \
vscanf.o \
+ vsnprintf.o \
vsprintf.o \
vsscanf.o \
zerobss.o
all: $(C_OBJS) $(S_OBJS)
clean:
- @rm -f *~
- @rm -f $(C_OBJS:.o=.s)
- @rm -f $(C_OBJS)
- @rm -f $(S_OBJS)
+ @$(RM) *~ *.lst
+ @$(RM) $(C_OBJS:.o=.s)
+ @$(RM) $(C_OBJS)
+ @$(RM) $(S_OBJS)
zap: clean