-ffreestanding -fno-builtin -fno-stack-protector \
-Wall -Wstrict-prototypes ${DEBUG_FLAGS}
+CFLAGS += $(CPPFLAGS)
# Note: FIRMWARE_ARCH is defined by the Chromium OS ebuild.
ifeq (${FIRMWARE_ARCH}, arm)
CC ?= armv7a-cros-linux-gnueabi-gcc
${BUILD}/%.o: %.c
@${PRINTF} " CC $(subst ${BUILD}/,,$@)\n"
- ${Q}${CC} ${CFLAGS} ${INCLUDES} -c -o $@ $<
+ ${Q}${CC} ${CFLAGS} ${LDFLAGS} ${INCLUDES} -c -o $@ $<
${BUILD}/%.o: ${BUILD}/%.c
@${PRINTF} " CC $(subst ${BUILD}/,,$@)\n"
- ${Q}${CC} ${CFLAGS} ${INCLUDES} -c -o $@ $<
+ ${Q}${CC} ${CFLAGS} ${LDFLAGS} ${INCLUDES} -c -o $@ $<
# Rules to recompile a single source file for library and test
# TODO: is there a tidier way to do this?
${BUILD}/%_for_lib.o: CFLAGS += -DFOR_LIBRARY
${BUILD}/%_for_lib.o: %.c
@${PRINTF} " CC-for-lib $(subst ${BUILD}/,,$@)\n"
- ${Q}${CC} ${CFLAGS} ${INCLUDES} -c -o $@ $<
+ ${Q}${CC} ${CFLAGS} ${LDFLAGS} ${INCLUDES} -c -o $@ $<
${BUILD}/%_for_test.o: CFLAGS += -DFOR_TEST
${BUILD}/%_for_test.o: %.c
@${PRINTF} " CC-for-test $(subst ${BUILD}/,,$@)\n"
- ${Q}${CC} ${CFLAGS} ${INCLUDES} -c -o $@ $<
+ ${Q}${CC} ${CFLAGS} ${LDFLAGS} ${INCLUDES} -c -o $@ $<
# TODO: C++ files don't belong in vboot reference at all. Convert to C.
${BUILD}/%.o: %.cc
@${PRINTF} " CXX $(subst ${BUILD}/,,$@)\n"
- ${Q}${CXX} ${CFLAGS} ${INCLUDES} -c -o $@ $<
+ ${Q}${CXX} ${CFLAGS} ${LDFLAGS} ${INCLUDES} -c -o $@ $<
# ----------------------------------------------------------------------------
# Here are the special tweaks to the generic rules.