]> git.sur5r.net Git - cc65/blob - libsrc/common/Makefile
Merged the sine/cosine routines into one file, because they're often used
[cc65] / libsrc / common / Makefile
1 # -*- makefile -*-
2 #
3 # makefile for CC65's common library
4 #
5
6 .SUFFIXES: .o .s .c
7
8 #--------------------------------------------------------------------------
9 # Programs and flags
10
11 SYS     = none
12
13 AS      = ../../src/ca65/ca65
14 CC      = ../../src/cc65/cc65
15 LD      = ../../src/ld65/ld65
16
17 AFLAGS  = -t $(SYS) -I../../asminc
18 CFLAGS  = -Osir -g -T -t $(SYS) --forget-inc-paths -I . -I ../../include
19
20 #--------------------------------------------------------------------------
21 # Rules
22
23 %.o:    %.c
24         @$(CC) $(CFLAGS) $<
25         @$(AS) -g -o $@ $(AFLAGS) $(*).s
26
27 %.o:    %.s
28         @$(AS) -g -o $@ $(AFLAGS) $<
29
30 #--------------------------------------------------------------------------
31 # Rules to help us see what code the compiler and assembler make.
32
33 %.s :   %.c
34         @$(CC) $(CFLAGS) -S $<
35
36 %.lst : %.s
37         @$(AS) $(AFLAGS) -l -o /dev/null $<
38
39 #--------------------------------------------------------------------------
40 # Object files
41
42 # From C source-files
43 C_OBJS =        _afailed.o              \
44                 _hextab.o               \
45                 _poserror.o             \
46                 _scanf.o                \
47                 abort.o                 \
48                 asctime.o               \
49                 bsearch.o               \
50                 errormsg.o              \
51                 fdopen.o                \
52                 fgetc.o                 \
53                 fgetpos.o               \
54                 fgets.o                 \
55                 fputc.o                 \
56                 fputs.o                 \
57                 freopen.o               \
58                 fseek.o                 \
59                 fsetpos.o               \
60                 ftell.o                 \
61                 getchar.o               \
62                 gets.o                  \
63                 gmtime.o                \
64                 locale.o                \
65                 localtime.o             \
66                 mktime.o                \
67                 perror.o                \
68                 pmemalign.o             \
69                 puts.o                  \
70                 qsort.o                 \
71                 realloc.o               \
72                 rewind.o                \
73                 sleep.o                 \
74                 strftime.o              \
75                 strtok.o                \
76                 strtol.o                \
77                 strtoul.o               \
78                 strxfrm.o               \
79                 system.o                \
80                 timezone.o
81
82 # From assembly source-files
83 S_OBJS =        _cwd.o          \
84                 _environ.o      \
85                 _fdesc.o        \
86                 _file.o         \
87                 _fopen.o        \
88                 _heap.o         \
89                 _heapadd.o      \
90                 _heapblocksize.o\
91                 _heapmaxavail.o \
92                 _heapmemavail.o \
93                 _oserror.o      \
94                 _printf.o       \
95                 _seterrno.o     \
96                 _swap.o         \
97                 _sys.o          \
98                 abs.o           \
99                 atexit.o        \
100                 atoi.o          \
101                 calloc.o        \
102                 cc65_sincos.o   \
103                 chdir.o         \
104                 copydata.o      \
105                 creat.o         \
106                 ctime.o         \
107                 divt.o          \
108                 errno.o         \
109                 fclose.o        \
110                 fmisc.o         \
111                 fopen.o         \
112                 fprintf.o       \
113                 fread.o         \
114                 free.o          \
115                 fscanf.o        \
116                 fwrite.o        \
117                 getcpu.o        \
118                 getcwd.o        \
119                 getenv.o        \
120                 isalnum.o       \
121                 isalpha.o       \
122                 isblank.o       \
123                 iscntrl.o       \
124                 isdigit.o       \
125                 isgraph.o       \
126                 islower.o       \
127                 isprint.o       \
128                 ispunct.o       \
129                 isspace.o       \
130                 isupper.o       \
131                 isxdigit.o      \
132                 itoa.o          \
133                 labs.o          \
134                 longjmp.o       \
135                 ltoa.o          \
136                 malloc.o        \
137                 maperrno.o      \
138                 memchr.o        \
139                 memcmp.o        \
140                 memcpy.o        \
141                 memmove.o       \
142                 memset.o        \
143                 mkdir.o         \
144                 modfree.o       \
145                 modload.o       \
146                 oserrcheck.o    \
147                 printf.o        \
148                 putchar.o       \
149                 putenv.o        \
150                 rand.o          \
151                 raise.o         \
152                 remove.o        \
153                 rename.o        \
154                 rmdir.o         \
155                 scanf.o         \
156                 searchenv.o     \
157                 setjmp.o        \
158                 signal.o        \
159                 sigtable.o      \
160                 snprintf.o      \
161                 sprintf.o       \
162                 sscanf.o        \
163                 strcat.o        \
164                 strchr.o        \
165                 strcmp.o        \
166                 strcoll.o       \
167                 strcpy.o        \
168                 strcspn.o       \
169                 strdup.o        \
170                 strerror.o      \
171                 stricmp.o       \
172                 strlen.o        \
173                 strlower.o      \
174                 strncat.o       \
175                 strncmp.o       \
176                 strncpy.o       \
177                 strnicmp.o      \
178                 stroserr.o      \
179                 strpbrk.o       \
180                 strrchr.o       \
181                 strspn.o        \
182                 strstr.o        \
183                 strtoimax.o     \
184                 strtoumax.o     \
185                 strupper.o      \
186                 time.o          \
187                 tolower.o       \
188                 toupper.o       \
189                 uname.o         \
190                 ungetc.o        \
191                 unlink.o        \
192                 utscopy.o       \
193                 vfprintf.o      \
194                 vfscanf.o       \
195                 vprintf.o       \
196                 vscanf.o        \
197                 vsnprintf.o     \
198                 vsprintf.o      \
199                 vsscanf.o       \
200                 zerobss.o
201
202
203 #--------------------------------------------------------------------------
204 # Targets
205
206 .PHONY: all clean zap
207
208 all:    $(C_OBJS) $(S_OBJS)
209
210 clean:
211         @$(RM) *~ *.lst
212         @$(RM) $(C_OBJS:.o=.s)
213         @$(RM) $(C_OBJS)
214         @$(RM) $(S_OBJS)
215
216 zap:    clean
217