1 .PHONY: all objdir clean realclean distclean
11 TARGET_TYPE = staticlib
35 include $(_CF_DIR)crossplatform.mk
36 include $(_CF_DIR)default.cf
38 # POST-INCLUDES VARIABLES
40 OBJ = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/
44 TARGET = obj/$(CONFIG).$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/$(LP)ecBootstrap$(A)
75 bootstrap/expression.c \
76 bootstrap/firstPass.c \
80 bootstrap/loadSymbols.c \
88 bootstrap/shortcuts.c \
92 LIBS += $(SHAREDLIB) $(EXECUTABLE) $(LINKOPT)
94 ifndef STATIC_LIBRARY_TARGET
99 $(if $(DEBUG), -g, -O2 -ffast-math) $(FPIC) -w \
107 CECFLAGS += -cpp $(_CPP)
111 all: objdir $(TARGET)
114 $(if $(wildcard $(OBJ)),,$(call mkdir,$(OBJ)))
116 $(TARGET): $(SOURCES) $(RESOURCES) | objdir $(SYMBOLS) $(OBJECTS)
117 $(AR) rcs $(TARGET) $(OBJECTS) $(LIBS)
121 $(OBJ)ast.o: bootstrap/ast.c
122 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/ast.c -o $(OBJ)ast.o
124 $(OBJ)copy.o: bootstrap/copy.c
125 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/copy.c -o $(OBJ)copy.o
127 $(OBJ)dbpass.o: bootstrap/dbpass.c
128 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/dbpass.c -o $(OBJ)dbpass.o
130 $(OBJ)ec.main.o: bootstrap/ec.main.c
131 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/ec.main.c -o $(OBJ)ec.main.o
133 $(OBJ)ecdefs.o: bootstrap/ecdefs.c
134 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/ecdefs.c -o $(OBJ)ecdefs.o
136 $(OBJ)expression.o: bootstrap/expression.c
137 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/expression.c -o $(OBJ)expression.o
139 $(OBJ)firstPass.o: bootstrap/firstPass.c
140 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/firstPass.c -o $(OBJ)firstPass.o
142 $(OBJ)freeAst.o: bootstrap/freeAst.c
143 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/freeAst.c -o $(OBJ)freeAst.o
145 $(OBJ)grammar.o: bootstrap/grammar.c
146 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/grammar.c -o $(OBJ)grammar.o
148 $(OBJ)lexer.o: bootstrap/lexer.c
149 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/lexer.c -o $(OBJ)lexer.o
151 $(OBJ)loadSymbols.o: bootstrap/loadSymbols.c
152 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/loadSymbols.c -o $(OBJ)loadSymbols.o
154 $(OBJ)output.o: bootstrap/output.c
155 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/output.c -o $(OBJ)output.o
157 $(OBJ)pass0.o: bootstrap/pass0.c
158 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/pass0.c -o $(OBJ)pass0.o
160 $(OBJ)pass1.o: bootstrap/pass1.c
161 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/pass1.c -o $(OBJ)pass1.o
163 $(OBJ)pass15.o: bootstrap/pass15.c
164 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/pass15.c -o $(OBJ)pass15.o
166 $(OBJ)pass16.o: bootstrap/pass16.c
167 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/pass16.c -o $(OBJ)pass16.o
169 $(OBJ)pass2.o: bootstrap/pass2.c
170 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/pass2.c -o $(OBJ)pass2.o
172 $(OBJ)pass3.o: bootstrap/pass3.c
173 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/pass3.c -o $(OBJ)pass3.o
175 $(OBJ)shortcuts.o: bootstrap/shortcuts.c
176 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/shortcuts.c -o $(OBJ)shortcuts.o
178 $(OBJ)type.o: bootstrap/type.c
179 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c bootstrap/type.c -o $(OBJ)type.o
181 $(OBJ)bsl.o: ../bsl.c
182 $(CC) $(CFLAGS) $(PRJ_CFLAGS) $(FVISIBILITY) -c ../bsl.c -o $(OBJ)bsl.o
186 $(call rm,$(OBJECTS))