You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
218 lines
4.8 KiB
Makefile
218 lines
4.8 KiB
Makefile
12 years ago
|
#
|
||
|
# makefile for CC65 runtime library
|
||
|
#
|
||
|
|
||
|
.SUFFIXES: .o .s .c
|
||
|
|
||
|
#--------------------------------------------------------------------------
|
||
|
# Programs and flags
|
||
|
|
||
|
SYS = none
|
||
|
|
||
|
AS = ../../bin/ca65
|
||
|
CC = ../../bin/cc65
|
||
|
LD = ../../bin/ld65
|
||
|
|
||
|
AFLAGS = -t $(SYS) --forget-inc-paths -I../asminc --cpu $(CPU)
|
||
|
CFLAGS = -Osir -g -T -t $(SYS) --forget-inc-paths -I . -I ../../include --cpu $(CPU)
|
||
|
|
||
|
#--------------------------------------------------------------------------
|
||
|
# Rules
|
||
|
|
||
|
%.o: %.c
|
||
|
@$(CC) $(CFLAGS) $<
|
||
|
@$(AS) -g -o $@ $(AFLAGS) $(*).s
|
||
|
|
||
|
%.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
|
||
|
|
||
|
# 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 = zerobss.o copydata.o
|
||
|
#_cwd.o \
|
||
|
# _environ.o \
|
||
|
# _fdesc.o \
|
||
|
# _file.o \
|
||
|
# _fopen.o \
|
||
|
# _heap.o \
|
||
|
# _heapadd.o \
|
||
|
# _heapblocksize.o\
|
||
|
# _heapmaxavail.o \
|
||
|
# _heapmemavail.o \
|
||
|
# _oserror.o \
|
||
|
# _printf.o \
|
||
|
# _seterrno.o \
|
||
|
# _swap.o \
|
||
|
# _sys.o \
|
||
|
# abs.o \
|
||
|
# atexit.o \
|
||
|
# atoi.o \
|
||
|
# calloc.o \
|
||
|
# chdir.o \
|
||
|
# copydata.o \
|
||
|
# creat.o \
|
||
|
# ctime.o \
|
||
|
# divt.o \
|
||
|
# errno.o \
|
||
|
# fclose.o \
|
||
|
# fmisc.o \
|
||
|
# fopen.o \
|
||
|
# fprintf.o \
|
||
|
# fread.o \
|
||
|
# free.o \
|
||
|
# fscanf.o \
|
||
|
# fwrite.o \
|
||
|
# getcpu.o \
|
||
|
# getcwd.o \
|
||
|
# getenv.o \
|
||
|
# interrupt.o \
|
||
|
# isalnum.o \
|
||
|
# isalpha.o \
|
||
|
# isblank.o \
|
||
|
# iscntrl.o \
|
||
|
# isdigit.o \
|
||
|
# isgraph.o \
|
||
|
# islower.o \
|
||
|
# isprint.o \
|
||
|
# ispunct.o \
|
||
|
# isspace.o \
|
||
|
# isupper.o \
|
||
|
# isxdigit.o \
|
||
|
# itoa.o \
|
||
|
# labs.o \
|
||
|
# longjmp.o \
|
||
|
# ltoa.o \
|
||
|
# malloc.o \
|
||
|
# maperrno.o \
|
||
|
# memchr.o \
|
||
|
# memcmp.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 \
|
||
|
# snprintf.o \
|
||
|
# sprintf.o \
|
||
|
# sscanf.o \
|
||
|
# strcat.o \
|
||
|
# strchr.o \
|
||
|
# strcmp.o \
|
||
|
# strcoll.o \
|
||
|
# strcpy.o \
|
||
|
# strcspn.o \
|
||
|
# strdup.o \
|
||
|
# strerror.o \
|
||
|
# stricmp.o \
|
||
|
# strlen.o \
|
||
|
# strlower.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 \
|
||
|
# toupper.o \
|
||
|
# uname.o \
|
||
|
# ungetc.o \
|
||
|
# unlink.o \
|
||
|
# utscopy.o \
|
||
|
# vfprintf.o \
|
||
|
# vfscanf.o \
|
||
|
# vprintf.o \
|
||
|
# vscanf.o \
|
||
|
# vsnprintf.o \
|
||
|
# vsprintf.o \
|
||
|
# vsscanf.o \
|
||
|
# zerobss.o
|
||
|
|
||
|
|
||
|
#--------------------------------------------------------------------------
|
||
|
# Targets
|
||
|
|
||
|
.PHONY: all clean zap
|
||
|
|
||
|
all: $(C_OBJS) $(S_OBJS)
|
||
|
|
||
|
clean:
|
||
|
@$(RM) *~ *.lst
|
||
|
@$(RM) $(C_OBJS:.o=.s)
|
||
|
@$(RM) $(C_OBJS)
|
||
|
@$(RM) $(S_OBJS)
|
||
|
|
||
|
zap: clean
|
||
|
|