]> git.sur5r.net Git - cc65/blob - src/cc65/make/gcc.mak
dada08c27cb6e6da396307e9865ff7b79986cbe1
[cc65] / src / cc65 / make / gcc.mak
1 #
2 # Makefile for cross-compiler version of CC65.
3 #
4
5
6
7 # ------------------------------------------------------------------------------
8
9 # The executable to build
10 EXE     = cc65
11
12 # Library directories
13 COMMON  = ../common
14 B6502   = b6502
15
16 # Default for the compiler lib search path as compiler define
17 CDEFS=-DCC65_INC=\"/usr/lib/cc65/include/\"
18 CFLAGS = -O2 -g -Wall -I$(COMMON) -I$(B6502) $(CDEFS)
19 CC=gcc
20 EBIND=emxbind
21 LDFLAGS=
22
23 # ------------------------------------------------------------------------------
24 # Object files and libraries to link
25
26 OBJS =  anonname.o      \
27         asmcode.o       \
28         asmlabel.o      \
29         codegen.o       \
30         compile.o       \
31         cpu.o           \
32         datatype.o      \
33         declare.o       \
34         declattr.o      \
35         error.o         \
36         expr.o          \
37         exprheap.o      \
38         exprnode.o      \
39         funcdesc.o      \
40         function.o      \
41         global.o        \
42         goto.o          \
43         ident.o         \
44         incpath.o       \
45         input.o         \
46         litpool.o       \
47         locals.o        \
48         loop.o          \
49         macrotab.o      \
50         main.o          \
51         preproc.o       \
52         pragma.o        \
53         scanner.o       \
54         segname.o       \
55         stdfunc.o       \
56         stmt.o          \
57         symentry.o      \
58         symtab.o        \
59         typecmp.o       \
60         util.o
61
62 LIBS =  $(B6502)/b6502.a        \
63         $(COMMON)/common.a      
64
65
66 # ------------------------------------------------------------------------------
67 # Makefile targets
68
69 # Main target - must be first
70 .PHONY: all
71 ifeq (.depend,$(wildcard .depend))
72 all:    $(EXE)
73 include .depend
74 else
75 all:    depend
76         @$(MAKE) -f make/gcc.mak all
77 endif
78
79 $(EXE): $(OBJS) $(LIBS)
80         $(CC) $(LDFLAGS) -o $(EXE) $(CFLAGS) $(OBJS) $(LIBS)
81         @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
82
83 clean:
84         rm -f *~ core *.map
85
86 zap:    clean
87         rm -f *.o $(EXE) .depend
88
89 # ------------------------------------------------------------------------------
90 # Make the dependencies
91
92 .PHONY: depend dep
93 depend dep:     $(OBJS:.o=.c)
94         @echo "Creating dependency information"
95         $(CC) -I$(COMMON) -I$(B6502) -MM $^ > .depend
96
97