1 .PHONY: all objdir clean realclean distclean
11 TARGET_TYPE = staticlib
34 include $(_CF_DIR)crossplatform.mk
35 include $(_CF_DIR)default.cf
37 # POST-INCLUDES VARIABLES
39 OBJ = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/
43 TARGET = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecBootstrap$(A)
74 bootstrap/expression.c \
75 bootstrap/firstPass.c \
79 bootstrap/loadSymbols.c \
87 bootstrap/shortcuts.c \
91 LIBS += $(SHAREDLIB) $(EXECUTABLE) $(LINKOPT)
93 ifndef STATIC_LIBRARY_TARGET
98 $(if $(DEBIAN_PACKAGE),$(CPPFLAGS),) $(if $(DEBUG), -D_DEBUG,) \
99 $(if $(DEBUG), -g, -O2 -ffast-math) $(FORCE_32_BIT) $(FPIC) -w \
107 CECFLAGS += -cpp $(_CPP)
109 ifndef STATIC_LIBRARY_TARGET
110 OFLAGS += $(FORCE_32_BIT)
116 all: objdir $(TARGET)
119 $(if $(wildcard $(OBJ)),,$(call mkdirq,$(OBJ)))
121 $(TARGET): $(SOURCES) $(RESOURCES) | objdir $(SYMBOLS) $(OBJECTS)
122 $(AR) rcs $(TARGET) $(OBJECTS) $(LIBS)
126 $(OBJ)ast.o: bootstrap/ast.c
127 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/ast.c -o $(OBJ)ast.o
129 $(OBJ)copy.o: bootstrap/copy.c
130 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/copy.c -o $(OBJ)copy.o
132 $(OBJ)dbpass.o: bootstrap/dbpass.c
133 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/dbpass.c -o $(OBJ)dbpass.o
135 $(OBJ)ec.main.o: bootstrap/ec.main.c
136 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/ec.main.c -o $(OBJ)ec.main.o
138 $(OBJ)ecdefs.o: bootstrap/ecdefs.c
139 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/ecdefs.c -o $(OBJ)ecdefs.o
141 $(OBJ)expression.o: bootstrap/expression.c
142 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/expression.c -o $(OBJ)expression.o
144 $(OBJ)firstPass.o: bootstrap/firstPass.c
145 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/firstPass.c -o $(OBJ)firstPass.o
147 $(OBJ)freeAst.o: bootstrap/freeAst.c
148 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/freeAst.c -o $(OBJ)freeAst.o
150 $(OBJ)grammar.o: bootstrap/grammar.c
151 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/grammar.c -o $(OBJ)grammar.o
153 $(OBJ)lexer.o: bootstrap/lexer.c
154 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/lexer.c -o $(OBJ)lexer.o
156 $(OBJ)loadSymbols.o: bootstrap/loadSymbols.c
157 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/loadSymbols.c -o $(OBJ)loadSymbols.o
159 $(OBJ)output.o: bootstrap/output.c
160 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/output.c -o $(OBJ)output.o
162 $(OBJ)pass0.o: bootstrap/pass0.c
163 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass0.c -o $(OBJ)pass0.o
165 $(OBJ)pass1.o: bootstrap/pass1.c
166 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass1.c -o $(OBJ)pass1.o
168 $(OBJ)pass15.o: bootstrap/pass15.c
169 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass15.c -o $(OBJ)pass15.o
171 $(OBJ)pass16.o: bootstrap/pass16.c
172 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass16.c -o $(OBJ)pass16.o
174 $(OBJ)pass2.o: bootstrap/pass2.c
175 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass2.c -o $(OBJ)pass2.o
177 $(OBJ)pass3.o: bootstrap/pass3.c
178 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass3.c -o $(OBJ)pass3.o
180 $(OBJ)shortcuts.o: bootstrap/shortcuts.c
181 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/shortcuts.c -o $(OBJ)shortcuts.o
183 $(OBJ)type.o: bootstrap/type.c
184 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/type.c -o $(OBJ)type.o
186 $(OBJ)bsl.o: ../bsl.c
187 $(CC) $(CFLAGS) $(FVISIBILITY) -c ../bsl.c -o $(OBJ)bsl.o
190 $(call rmq,$(TARGET))
191 $(call rmq,$(OBJECTS))