]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - support/make/msp/msp.rules
Allow the build directory to be customized
[tinyos-2.x.git] / support / make / msp / msp.rules
index 73027a0d0aa9cd0de4f1f9fc8fe539295c2dc8f2..f1d4e6aef511774e44179fc6b5d1580c3e204432 100644 (file)
@@ -22,6 +22,12 @@ define MSP_HELP
 endef
 HELP += $(MSP_HELP)
 
+ifdef MAKE_DEPUTY_FLAG
+        NCC_SAFE_TINYOS_FLAG = -safe
+else
+        NCC_SAFE_TINYOS_FLAG =
+endif
+
 #MSP_NESC_TARGET ?= msp430
 #MSP_GCC ?= msp430-gcc
 #MSP_MCU ?= msp430x149
@@ -34,7 +40,7 @@ NCC = ncc
 LIBS = -lm
 
 AMADDR = ActiveMessageAddressC\$$addr
-BUILDDIR = build/$(PLATFORM)
+BUILDDIR ?= build/$(PLATFORM)
 MAIN_EXE = $(BUILDDIR)/main.exe
 MAIN_IHEX = $(BUILDDIR)/main.ihex
 INSTALL_IHEX = $(MAIN_IHEX).out$(if $(NODEID),-$(NODEID),)
@@ -60,8 +66,9 @@ $(if $(PROGRAM),,$(call TOSMake_include,msp/$(DEFAULT_PROGRAM).extra))
 ifneq ($(wildcard $(VOLUME_FILE)), )
 exe0: $(BUILDDIR)/StorageVolumes.h
 
+VOLUME_ALLOCATOR_FLAGS ?= 
 $(BUILDDIR)/StorageVolumes.h: $(VOLUME_FILE)
-       $(VOLUME_ALLOCATOR) $(PLATFORMDIR) <$(VOLUME_FILE) >$@ || rm -f $@
+       $(VOLUME_ALLOCATOR) $(VOLUME_ALLOCATOR_FLAGS) $(PLATFORMDIR) <$(VOLUME_FILE) >$@ || rm -f $@
 
 PFLAGS += -I$(BUILDDIR)
 endif
@@ -89,7 +96,7 @@ exe: exe0 bytes FORCE
 
 exe0: builddir $(BUILD_EXTRA_DEPS) FORCE
        @echo "    compiling $(COMPONENT) to a $(PLATFORM) binary"
-       $(NCC) -o $(MAIN_EXE) $(OPTFLAGS) $(PFLAGS) $(CFLAGS) $(WIRING_CHECK_FLAGS) $(COMPONENT).nc $(LIBS) $(LDFLAGS)
+       $(NCC) -o $(MAIN_EXE) $(NCC_SAFE_TINYOS_FLAG) $(OPTFLAGS) $(PFLAGS) $(CFLAGS) $(WIRING_CHECK_FLAGS) $(COMPONENT).nc $(LIBS) $(LDFLAGS)
 ifdef WIRING_CHECK_FILE
        @nescc-wiring $(WIRING_CHECK_FILE)
 endif