Add the complete implementation of the folder selection page
[bertos.git] / bertos / rules.mk
index cf08e348b23adf00ba635b9889be694cd7ab401c..eed0fe5093ea0aa32cb95186c281c6ab27562a8f 100644 (file)
@@ -62,9 +62,9 @@ tags:
 
 # Run testsuite
 .PHONY: check
-check:
+check: $(OUTDIR)/libunittest.a
        $L "Running testsuite"
-       $Q bertos/run_tests.sh
+       $Q test/run_tests.sh
 
 define build_target
 
@@ -140,12 +140,12 @@ ifeq ($$($(1)_DEBUG),1)
         $(1)_CXXFLAGS += -D_DEBUG
 endif
 
-$(1)_CC      = $$($(1)_CROSS)$$(CC)
-$(1)_CXX     = $$($(1)_CROSS)$$(CXX)
-$(1)_AS      = $$($(1)_CROSS)$$(AS)
-$(1)_AR      = $$($(1)_CROSS)$$(AR)
-$(1)_OBJCOPY = $$($(1)_CROSS)$$(OBJCOPY)
-$(1)_STRIP   = $$($(1)_CROSS)$$(STRIP)
+$(1)_CC      ?= $$($(1)_CROSS)$$(CC)
+$(1)_CXX     ?= $$($(1)_CROSS)$$(CXX)
+$(1)_AS      ?= $$($(1)_CROSS)$$(AS)
+$(1)_AR      ?= $$($(1)_CROSS)$$(AR)
+$(1)_OBJCOPY ?= $$($(1)_CROSS)$$(OBJCOPY)
+$(1)_STRIP   ?= $$($(1)_CROSS)$$(STRIP)
 
 $(1)_COBJ    = $$(foreach file,$$($(1)_CSRC:%.c=%.o),$$(OBJDIR)/$(1)/$$(file))
 $(1)_CXXOBJ  = $$(foreach file,$$($(1)_CXXSRC:%.cpp=%.o),$$(OBJDIR)/$(1)/$$(file))
@@ -166,16 +166,16 @@ endif
 # would whine if we passed it C-only flags.  Checking for the presence of
 # "++" in the name is a kludge that seems to work mostly.
 ifeq (++,$$(findstring ++,$$($(1)_CC)))
-        REAL_CFLAGS = $$(CXXFLAGS)
+        $(1)_REAL_CFLAGS = $$(CXXFLAGS)
 else
-        REAL_CFLAGS = $$(CFLAGS)
+       $(1)_REAL_CFLAGS = $$(CFLAGS)
 endif
 
 # Compile: instructions to create assembler and/or object files from C source
 $$($(1)_COBJ) : $$(OBJDIR)/$(1)/%.o : %.c
        $L "$(1): Compiling $$< (C)"
        @$$(MKDIR_P) $$(dir $$@)
-       $Q $$($(1)_CC) -c $$(REAL_CFLAGS) $$($(1)_CFLAGS) $$($(1)_CPPFLAGS) $$(CPPFLAGS) $$< -o $$@
+       $Q $$($(1)_CC) -c $$($(1)_REAL_CFLAGS) $$($(1)_CFLAGS) $$($(1)_CPPFLAGS) $$(CPPFLAGS) $$< -o $$@
 
 # Compile: instructions to create assembler and/or object files from C++ source
 $$($(1)_CXXOBJ) : $$(OBJDIR)/$(1)/%.o : %.cpp
@@ -284,8 +284,8 @@ $$(OUTDIR)/$(1).rom: $$(OUTDIR)/$(1).elf
 
 endef
 
-# Generate build rules for all targets
-$(foreach t,$(TRG),$(eval $(call build_target,$(t))))
+# Generate build rules for all targets and libunittest
+$(foreach t,$(TRG) libunittest,$(eval $(call build_target,$(t))))
 
 # Generate Qt's moc files from headers
 # NOTE: moc totally sucks and can generate empty files for some error conditions,