X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Frules.mk;h=ff0357eebba8e26f92d5377f492efcd3978c1eb0;hb=f6ea622f4d360194bbd4d0953f18271cbcfcd69e;hp=ef364d1d601dede45c326c5281047d5eab4c7aa2;hpb=0e9db20f6fb7f4ec21edaae6c9270317ee5dcfd9;p=bertos.git diff --git a/bertos/rules.mk b/bertos/rules.mk index ef364d1d..ff0357ee 100644 --- a/bertos/rules.mk +++ b/bertos/rules.mk @@ -63,7 +63,7 @@ tags: .PHONY: check check: $L "Running testsuite" - $Q ./run_tests.sh + $Q bertos/run_tests.sh define build_target @@ -111,6 +111,28 @@ ifneq ($$(strip $$($(1)_LDSCRIPT)),) $(1)_LDFLAGS += -Wl,-T$$($(1)_LDSCRIPT) endif +# Debug stuff +ifeq ($$($(1)_DEBUG),1) + # AVR is an harvard processor + # and needs debug module + # to be compiled in program memory + ifeq ($$(findstring avr, $$($(1)_CROSS)),avr) + $(1)_DEBUGSRC = $(1)_PCSRC + else + $(1)_DEBUGSRC = $(1)_CSRC + endif + + $$($(1)_DEBUGSRC) += bertos/drv/kdebug.c + + # Also add formatwr.c (printf) if not already present + ifneq ($$(findstring formatwr.c, $$($$($(1)_DEBUGSRC))),formatwr.c) + $$($(1)_DEBUGSRC) += bertos/mware/formatwr.c + endif + + $(1)_CFLAGS += -D_DEBUG + $(1)_CXXFLAGS += -D_DEBUG +endif + $(1)_CC = $$($(1)_CROSS)$$(CC) $(1)_CXX = $$($(1)_CROSS)$$(CXX) $(1)_AS = $$($(1)_CROSS)$$(AS) @@ -254,7 +276,7 @@ $(foreach t,$(TRG),$(eval $(call build_target,$(t)))) # NOTE: moc totally sucks and can generate empty files for some error conditions, # leading to puzzling linker errors. Kill 'em and abort build. %_moc.cpp: %.h - $(MOC) -o $@ $< + $(QT_MOC) -o $@ $< if [ ! -s $< ]; then \ rm -f $@; \ exit 1; \