]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - support/make/pxa27x/pxa27x.rules
adding support for OpenOCD - jtag for linux
[tinyos-2.x.git] / support / make / pxa27x / pxa27x.rules
index 2a9751797cea5323274b6e89ae895990c6ba7cff..c09f3add028612be1035d206f84782f72092f105 100644 (file)
@@ -12,6 +12,7 @@ define PXA27X_HELP
 
    jflashmm : (default) use the Intel JFLASHMM tool to install
    xflash   : Use the Intel XFLASH tool to install
+   openocd  : Use openocd to install
 
 endef
 HELP += $(PXA27X_HELP)
@@ -25,7 +26,7 @@ NCC = ncc
 LIBS = -lm
 
 AMADDR = ActiveMessageAddressC\$$addr
-BUILDDIR = build/$(PLATFORM)
+BUILDDIR ?= build/$(PLATFORM)
 MAIN_EXE = $(BUILDDIR)/main.exe
 MAIN_BIN = $(BUILDDIR)/main.bin
 INSTALL_BIN = $(MAIN_BIN).out$(if $(NODEID),-$(NODEID),)
@@ -35,13 +36,17 @@ ASSEMBLY_OBJS =  $(BUILDDIR)/asms.o
 #LIBRARY_OBJS  =  $(PLATFORM_DIR)/lib/profile.o $(PLATFORM_DIR)/lib/queue.o
 
 OPTFLAGS ?= -O3 -g
-PFLAGS += -Wall -Wshadow -DDEF_TOS_AM_GROUP=$(DEFAULT_LOCAL_GROUP) $(NESC_FLAGS)
+PFLAGS += -Wall -Wshadow $(NESC_FLAGS)
 PFLAGS += -target=$(PLATFORM) -fnesc-cfile=$(BUILDDIR)/app.c -board=$(SENSORBOARD)
 ifdef MSG_SIZE
 PFLAGS += -DTOSH_DATA_LENGTH=$(MSG_SIZE)
 endif
+ifdef DEFAULT_LOCAL_GROUP
+PFLAGS += -DDEFINED_TOS_AM_GROUP=$(DEFAULT_LOCAL_GROUP)
+endif
+
+DEFAULT_PROGRAM ?= jflashmm
 
-DEFAULT_PROGRAM ?= xflash
 
 BUILDLESS_DEPS += bytes
 
@@ -51,12 +56,19 @@ $(if $(PROGRAM),,$(call TOSMake_include,pxa27x/$(DEFAULT_PROGRAM).extra))
 
 # Build storage file if volumes.xml present
 ifneq ($(wildcard $(VOLUME_FILE)), )
-exe0: $(BUILDDIR)/StorageVolumes.h
+build_storage: $(BUILDDIR)/StorageVolumes.h
+
+exe0: build_storage
 
-$(BUILDDIR)/StorageVolumes.h: $(VOLUME_FILE)
-       $(VOLUME_ALLOCATOR) <$(VOLUME_FILE) >$@
+VOLUME_ALLOCATOR_FLAGS ?= 
+$(BUILDDIR)/StorageVolumes.h: $(VOLUMEFILE)
+       $(VOLUME_ALLOCATOR) $(VOLUME_ALLOCATOR_FLAGS) $(PLATFORMDIR) <$(VOLUMEFILE) >$@ || rm -f $@
 
 PFLAGS += -I$(BUILDDIR)
+else
+
+build_storage: 
+
 endif
 
 ifndef BUILD_DEPS
@@ -70,7 +82,7 @@ setid: FORCE
 
 
 bin: exe FORCE
-       $(XDB_SYMBOL_EXTRACT) $(MAIN_EXE)
+       @cmd () { echo "$$@"; $$@; }; if [ "${PROGRAM}" = "xflash" ]; then $(XDB_SYMBOL_EXTRACT) $(MAIN_EXE); fi
 
 exe: exe0 bytes FORCE
        @: