]> git.sur5r.net Git - cc65/blob - src/cc65/make/gcc.mak
Fixed a bug
[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
15 # Default for the compiler lib search path as compiler define
16 CDEFS=-DCC65_INC=\"/usr/lib/cc65/include/\"
17 CFLAGS = -O2 -g -Wall -W -I$(COMMON) $(CDEFS)
18 CC=gcc
19 EBIND=emxbind
20 LDFLAGS=
21
22 # ------------------------------------------------------------------------------
23 # Object files and libraries to link
24
25 OBJS =  anonname.o      \
26         asmcode.o       \
27         asmlabel.o      \
28         asmstmt.o       \
29         casenode.o      \
30         codeent.o       \
31         codegen.o       \
32         codelab.o       \
33         codeinfo.o      \
34         codeopt.o       \
35         codeseg.o       \
36         compile.o       \
37         coptadd.o       \
38         coptc02.o       \
39         coptcmp.o       \
40         coptind.o       \
41         coptneg.o       \
42         coptpush.o      \
43         coptstop.o      \
44         coptsub.o       \
45         copttest.o      \
46         cpu.o           \
47         dataseg.o       \
48         datatype.o      \
49         declare.o       \
50         declattr.o      \
51         error.o         \
52         expr.o          \
53         exprheap.o      \
54         exprnode.o      \
55         funcdesc.o      \
56         function.o      \
57         global.o        \
58         goto.o          \
59         ident.o         \
60         incpath.o       \
61         input.o         \
62         lineinfo.o      \
63         litpool.o       \
64         locals.o        \
65         loop.o          \
66         macrotab.o      \
67         main.o          \
68         opcodes.o       \
69         preproc.o       \
70         pragma.o        \
71         reginfo.o       \
72         scanner.o       \
73         segments.o      \
74         stdfunc.o       \
75         stmt.o          \
76         swstmt.o        \
77         symentry.o      \
78         symtab.o        \
79         textseg.o       \
80         typecmp.o       \
81         util.o
82
83 LIBS =  $(COMMON)/common.a
84
85
86 # ------------------------------------------------------------------------------
87 # Makefile targets
88
89 # Main target - must be first
90 .PHONY: all
91 ifeq (.depend,$(wildcard .depend))
92 all:    $(EXE)
93 include .depend
94 else
95 all:    depend
96         @$(MAKE) -f make/gcc.mak all
97 endif
98
99 $(EXE): $(OBJS) $(LIBS)
100         $(CC) $(LDFLAGS) -o $(EXE) $(CFLAGS) $(OBJS) $(LIBS)
101         @if [ $(OS2_SHELL) ] ;  then $(EBIND) $(EXE) ; fi
102
103 clean:
104         rm -f *~ core *.map
105
106 zap:    clean
107         rm -f *.o $(EXE) .depend
108
109 # ------------------------------------------------------------------------------
110 # Make the dependencies
111
112 .PHONY: depend dep
113 depend dep:     $(OBJS:.o=.c)
114         @echo "Creating dependency information"
115         $(CC) -I$(COMMON) -MM $^ > .depend
116
117
118