1 .PHONY: all objdir clean realclean distclean
8 TARGET_TYPE = staticlib
10 OBJ = obj/$(CONFIG).$(PLATFORM)/
14 TARGET = obj/$(CONFIG).$(PLATFORM)/$(LP)ecBootstrap$(A)
45 bootstrap/expression.c \
46 bootstrap/firstPass.c \
50 bootstrap/loadSymbols.c \
58 bootstrap/shortcuts.c \
67 # CROSS-PLATFORM MAGIC
69 include ../../../crossplatform.mk
70 include ../../../include.mk
74 CFLAGS += -fmessage-length=0 -O2 -ffast-math $(FORCE_32_BIT) $(FPIC) -w \
75 -DYYTOKENTYPE -DECERE_STATIC
79 ECFLAGS = -nolinenumbers
81 LIBS = $(SHAREDLIB) $(EXECUTABLE) $(LINKOPT)
90 $(if $(wildcard $(OBJ)),,$(call mkdirq,$(OBJ)))
92 $(TARGET): $(SOURCES) $(RESOURCES) | objdir $(SYMBOLS) $(OBJECTS)
93 $(AR) rcs $(TARGET) $(OBJECTS) $(LIBS)
95 $(OBJ)ast.o: bootstrap/ast.c
96 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/ast.c -o $(OBJ)ast.o
98 $(OBJ)copy.o: bootstrap/copy.c
99 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/copy.c -o $(OBJ)copy.o
101 $(OBJ)dbpass.o: bootstrap/dbpass.c
102 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/dbpass.c -o $(OBJ)dbpass.o
104 $(OBJ)ec.main.o: bootstrap/ec.main.c
105 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/ec.main.c -o $(OBJ)ec.main.o
107 $(OBJ)ecdefs.o: bootstrap/ecdefs.c
108 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/ecdefs.c -o $(OBJ)ecdefs.o
110 $(OBJ)expression.o: bootstrap/expression.c
111 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/expression.c -o $(OBJ)expression.o
113 $(OBJ)firstPass.o: bootstrap/firstPass.c
114 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/firstPass.c -o $(OBJ)firstPass.o
116 $(OBJ)freeAst.o: bootstrap/freeAst.c
117 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/freeAst.c -o $(OBJ)freeAst.o
119 $(OBJ)grammar.o: bootstrap/grammar.c
120 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/grammar.c -o $(OBJ)grammar.o
122 $(OBJ)lexer.o: bootstrap/lexer.c
123 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/lexer.c -o $(OBJ)lexer.o
125 $(OBJ)loadSymbols.o: bootstrap/loadSymbols.c
126 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/loadSymbols.c -o $(OBJ)loadSymbols.o
128 $(OBJ)output.o: bootstrap/output.c
129 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/output.c -o $(OBJ)output.o
131 $(OBJ)pass0.o: bootstrap/pass0.c
132 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass0.c -o $(OBJ)pass0.o
134 $(OBJ)pass1.o: bootstrap/pass1.c
135 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass1.c -o $(OBJ)pass1.o
137 $(OBJ)pass15.o: bootstrap/pass15.c
138 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass15.c -o $(OBJ)pass15.o
140 $(OBJ)pass16.o: bootstrap/pass16.c
141 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass16.c -o $(OBJ)pass16.o
143 $(OBJ)pass2.o: bootstrap/pass2.c
144 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass2.c -o $(OBJ)pass2.o
146 $(OBJ)pass3.o: bootstrap/pass3.c
147 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/pass3.c -o $(OBJ)pass3.o
149 $(OBJ)shortcuts.o: bootstrap/shortcuts.c
150 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/shortcuts.c -o $(OBJ)shortcuts.o
152 $(OBJ)type.o: bootstrap/type.c
153 $(CC) $(CFLAGS) $(FVISIBILITY) -c bootstrap/type.c -o $(OBJ)type.o
155 $(OBJ)bsl.o: ../bsl.c
156 $(CC) $(CFLAGS) $(FVISIBILITY) -c ../bsl.c -o $(OBJ)bsl.o
159 $(call rmq,$(TARGET))
160 $(call rmq,$(OBJECTS))