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