Add CPPFLAGS, CFLAGS and LDFLAGS everywhere it's missing.
Unified · Split
| @@ -5,8 +5,10 @@ · 4 unmodified lines | |||
| 5 | TOP ?= . | 5 | TOP ?= . |
| 6 | include $(TOP)/config.mak | 6 | include $(TOP)/config.mak |
| 7 | 7 | ||
| 8 | CFLAGS_P=$(CFLAGS) -pg -static -DCONFIG_TCC_STATIC | 8 | CPPFLAGS_P=$(CPPFLAGS) -DCONFIG_TCC_STATIC |
| 9 | CFLAGS_P=$(CFLAGS) -pg -static | ||
| 9 | LIBS_P= | 10 | LIBS_P= |
| 11 | LDFLAGS_P=$(LDFLAGS) | ||
| 10 | 12 | ||
| 11 | ifneq ($(GCC_MAJOR),2) | 13 | ifneq ($(GCC_MAJOR),2) |
| 12 | CFLAGS+=-fno-strict-aliasing | 14 | CFLAGS+=-fno-strict-aliasing |
| @@ -171,11 +173,11 @@ all: $(PROGS) $(TCCLIBS) $(TCCDOCS) · 158 unmodified lines | |||
| 171 | 173 | ||
| 172 | # Host Tiny C Compiler | 174 | # Host Tiny C Compiler |
| 173 | tcc$(EXESUF): tcc.o $(LIBTCC) | 175 | tcc$(EXESUF): tcc.o $(LIBTCC) |
| 174 | $(CC) -o $@ $^ $(LIBS) $(CFLAGS) $(LDFLAGS) $(LINK_LIBTCC) | 176 | $(CC) -o $@ $^ $(LIBS) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $(LINK_LIBTCC) |
| 175 | 177 | ||
| 176 | # Cross Tiny C Compilers | 178 | # Cross Tiny C Compilers |
| 177 | %-tcc$(EXESUF): | 179 | %-tcc$(EXESUF): |
| 178 | $(CC) -o $@ tcc.c -DONE_SOURCE $(DEFINES) $(CFLAGS) $(LIBS) $(LDFLAGS) | 180 | $(CC) -o $@ tcc.c -DONE_SOURCE $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LIBS) $(LDFLAGS) |
| 179 | 181 | ||
| 180 | $(I386_CROSS): DEFINES = -DTCC_TARGET_I386 \ | 182 | $(I386_CROSS): DEFINES = -DTCC_TARGET_I386 \ |
| 181 | -DCONFIG_TCCDIR="\"$(tccdir)/i386\"" | 183 | -DCONFIG_TCCDIR="\"$(tccdir)/i386\"" |
| @@ -212,25 +214,25 @@ libtcc.o : NATIVE_DEFINES += -DONE_SOURCE · 30 unmodified lines | |||
| 212 | endif | 214 | endif |
| 213 | 215 | ||
| 214 | $(LIBTCC_OBJ) tcc.o : %.o : %.c $(LIBTCC_INC) | 216 | $(LIBTCC_OBJ) tcc.o : %.o : %.c $(LIBTCC_INC) |
| 215 | $(CC) -o $@ -c $< $(NATIVE_DEFINES) $(CFLAGS) | 217 | $(CC) -o $@ -c $< $(NATIVE_DEFINES) $(CPPFLAGS) $(CFLAGS) |
| 216 | 218 | ||
| 217 | libtcc.a: $(LIBTCC_OBJ) | 219 | libtcc.a: $(LIBTCC_OBJ) |
| 218 | $(AR) rcs $@ $^ | 220 | $(AR) rcs $@ $^ |
| 219 | 221 | ||
| 220 | libtcc.so.1.0: $(LIBTCC_OBJ) | 222 | libtcc.so.1.0: $(LIBTCC_OBJ) |
| 221 | $(CC) -shared -Wl,-soname,$@ -o $@ $^ | 223 | $(CC) -shared -Wl,-soname,$@ -o $@ $^ $(LDFLAGS) |
| 222 | 224 | ||
| 223 | libtcc.so.1.0: CFLAGS+=-fPIC | 225 | libtcc.so.1.0: CFLAGS+=-fPIC |
| 224 | 226 | ||
| 225 | # profiling version | 227 | # profiling version |
| 226 | tcc_p$(EXESUF): $(NATIVE_FILES) | 228 | tcc_p$(EXESUF): $(NATIVE_FILES) |
| 227 | $(CC) -o $@ $< $(NATIVE_DEFINES) $(CFLAGS_P) $(LIBS_P) | 229 | $(CC) -o $@ $< $(NATIVE_DEFINES) $(CPPFLAGS_P) $(CFLAGS_P) $(LIBS_P) $(LDFLAGS_P) |
| 228 | 230 | ||
| 229 | # windows utilities | 231 | # windows utilities |
| 230 | tiny_impdef$(EXESUF): win32/tools/tiny_impdef.c | 232 | tiny_impdef$(EXESUF): win32/tools/tiny_impdef.c |
| 231 | $(CC) -o $@ $< $(CFLAGS) | 233 | $(CC) -o $@ $< $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) |
| 232 | tiny_libmaker$(EXESUF): win32/tools/tiny_libmaker.c | 234 | tiny_libmaker$(EXESUF): win32/tools/tiny_libmaker.c |
| 233 | $(CC) -o $@ $< $(CFLAGS) | 235 | $(CC) -o $@ $< $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) |
| 234 | 236 | ||
| 235 | # TinyCC runtime libraries | 237 | # TinyCC runtime libraries |
| 236 | libtcc1.a : FORCE | 238 | libtcc1.a : FORCE |
| @@ -238,7 +240,7 @@ libtcc1.a : FORCE · 1 unmodified line | |||
| 238 | lib/%/libtcc1.a : FORCE $(PROGS_CROSS) | 240 | lib/%/libtcc1.a : FORCE $(PROGS_CROSS) |
| 239 | @$(MAKE) -C lib cross TARGET=$* | 241 | @$(MAKE) -C lib cross TARGET=$* |
| 240 | bcheck.o : lib/bcheck.c | 242 | bcheck.o : lib/bcheck.c |
| 241 | gcc -c $< -o $@ $(CFLAGS) | 243 | gcc -c $< -o $@ $(CPPFLAGS) $(CFLAGS) |
| 242 | FORCE: | 244 | FORCE: |
| 243 | 245 | ||
| 244 | # install | 246 | # install |
| @@ -85,11 +85,11 @@ endif · 84 unmodified lines | |||
| 85 | $(DIR)/libtcc1.a ../libtcc1.a : $(OBJ) $(XAR) | 85 | $(DIR)/libtcc1.a ../libtcc1.a : $(OBJ) $(XAR) |
| 86 | $(AR) rcs $@ $(OBJ) | 86 | $(AR) rcs $@ $(OBJ) |
| 87 | $(DIR)/%.o : %.c | 87 | $(DIR)/%.o : %.c |
| 88 | $(XCC) -c $< -o $@ $(TGT) | 88 | $(XCC) -c $< -o $@ $(CPPFLAGS) $(TGT) $(CFLAGS) |
| 89 | $(DIR)/%.o : %.S | 89 | $(DIR)/%.o : %.S |
| 90 | $(XCC) -c $< -o $@ $(TGT) | 90 | $(XCC) -c $< -o $@ $(CPPFLAGS) $(TGT) $(CFLAGS) |
| 91 | $(DIR)/%$(EXESUF) : $(TOP)/win32/tools/%.c | 91 | $(DIR)/%$(EXESUF) : $(TOP)/win32/tools/%.c |
| 92 | $(CC) -Os -s -w -o $@ $< $(TGT) | 92 | $(CC) -Os -s -w -o $@ $< $(CPPFLAGS) $(TGT) $(CFLAGS) $(LDFLAGS) |
| 93 | 93 | ||
| 94 | $(OBJ) $(XAR) : $(DIR)/exists | 94 | $(OBJ) $(XAR) : $(DIR)/exists |
| 95 | $(DIR)/exists : | 95 | $(DIR)/exists : |
| @@ -68,13 +68,13 @@ libtest: libtcc_test$(EXESUF) $(LIBTCC1) · 67 unmodified lines | |||
| 68 | ./libtcc_test$(EXESUF) lib_path=.. | 68 | ./libtcc_test$(EXESUF) lib_path=.. |
| 69 | 69 | ||
| 70 | libtcc_test$(EXESUF): libtcc_test.c ../$(LIBTCC) | 70 | libtcc_test$(EXESUF): libtcc_test.c ../$(LIBTCC) |
| 71 | $(CC) -o $@ $^ -I.. $(CFLAGS) $(NATIVE_DEFINES) $(LIBS) $(LINK_LIBTCC) | 71 | $(CC) -o $@ $^ -I.. $(CPPFLAGS) $(CFLAGS) $(NATIVE_DEFINES) $(LIBS) $(LINK_LIBTCC) $(LDFLAGS) |
| 72 | 72 | ||
| 73 | # test.ref - generate using gcc | 73 | # test.ref - generate using gcc |
| 74 | # copy only tcclib.h so GCC's stddef and stdarg will be used | 74 | # copy only tcclib.h so GCC's stddef and stdarg will be used |
| 75 | test.ref: tcctest.c | 75 | test.ref: tcctest.c |
| 76 | cp ../include/tcclib.h . | 76 | cp ../include/tcclib.h . |
| 77 | $(CC) -o tcctest.gcc $< -I. -w $(CFLAGS) $(NATIVE_DEFINES) -std=gnu99 | 77 | $(CC) -o tcctest.gcc $< -I. $(CPPFLAGS) -w $(CFLAGS) $(NATIVE_DEFINES) -std=gnu99 $(LDFLAGS) |
| 78 | ./tcctest.gcc > $@ | 78 | ./tcctest.gcc > $@ |
| 79 | 79 | ||
| 80 | # auto test | 80 | # auto test |
| @@ -149,14 +149,14 @@ speedtest: ex2 ex3 · 68 unmodified lines | |||
| 149 | time $(TCC) -run ../examples/ex3.c 35 | 149 | time $(TCC) -run ../examples/ex3.c 35 |
| 150 | 150 | ||
| 151 | weaktest: test.ref | 151 | weaktest: test.ref |
| 152 | $(TCC) -c tcctest.c -o weaktest.tcc.o | 152 | $(TCC) -c tcctest.c -o weaktest.tcc.o $(CPPFLAGS) $(CFLAGS) |
| 153 | $(CC) -c tcctest.c -o weaktest.gcc.o -I. -w $(CFLAGS) | 153 | $(CC) -c tcctest.c -o weaktest.gcc.o -I. $(CPPFLAGS) -w $(CFLAGS) |
| 154 | objdump -t weaktest.tcc.o | grep ' w ' | sed -e 's/.* \([a-zA-Z0-9_]*\)$$/\1/' | LC_ALL=C sort > weaktest.tcc.o.txt | 154 | objdump -t weaktest.tcc.o | grep ' w ' | sed -e 's/.* \([a-zA-Z0-9_]*\)$$/\1/' | LC_ALL=C sort > weaktest.tcc.o.txt |
| 155 | objdump -t weaktest.gcc.o | grep ' w ' | sed -e 's/.* \([a-zA-Z0-9_]*\)$$/\1/' | LC_ALL=C sort > weaktest.gcc.o.txt | 155 | objdump -t weaktest.gcc.o | grep ' w ' | sed -e 's/.* \([a-zA-Z0-9_]*\)$$/\1/' | LC_ALL=C sort > weaktest.gcc.o.txt |
| 156 | diff weaktest.gcc.o.txt weaktest.tcc.o.txt && echo "Weak Auto Test OK" | 156 | diff weaktest.gcc.o.txt weaktest.tcc.o.txt && echo "Weak Auto Test OK" |
| 157 | 157 | ||
| 158 | ex%: ../examples/ex%.c | 158 | ex%: ../examples/ex%.c |
| 159 | $(CC) -o $@ $< $(CFLAGS) | 159 | $(CC) -o $@ $< $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) |
| 160 | 160 | ||
| 161 | # tiny assembler testing | 161 | # tiny assembler testing |
| 162 | asmtest.ref: asmtest.S | 162 | asmtest.ref: asmtest.S |