GCCINC=-T ldscripts/$(mcu).x
CCEXTRA?=
-CC=msp430-gcc -Wall -Os -g -mmcu=$(mcu) -D$(mcu) -D$(platform) -Dplatform=$(platform) -DGCC $(GCCINC) -I include -I platforms $(CCEXTRA)
+CC=msp430-gcc -Wall -Os -fno-strict-aliasing -g -mmcu=$(mcu) -D$(mcu) -D$(platform) -Dplatform=$(platform) -DGCC $(GCCINC) -I include -I platforms $(CCEXTRA)
# Available Applications
# ======================
# jtagarm7 -- ARM7TDMI JTAG
# ejtag -- MIPS JTAG
# jtagxscale -- XScale JTAG
+# openocd -- OpenOCD bitbang device
# Microcontrollers:
# chipcon -- Chipcon radio 8051 debugging
# XScale PXA255 JTAG
# config = monitor jtagxscale
+# OpenOCD bit-bang device
+#config = monitor openocd
+
# Old Default Config
# config = monitor sbw chipcon nrf ccspi spi jtagarm7 jtag430 jtag430x2 avr
# New default.
-config ?= monitor chipcon ccspi nrf spi jtagarm7 jtag430 jtag430x2 avr
+config ?= monitor chipcon ccspi nrf spi jtagarm7 jtag430 jtag430x2 avr openocd
# Build the needed list of app and lib object files from the config
apps=
hdrs+= jtagxscale.h
endif
+# include openocd app
+ifeq ($(filter openocd, $(config)), openocd)
+ # add in base jtag code if not already
+ ifneq ($(filter apps/jtag/jtag.o, $(apps)), apps/jtag/jtag.o)
+ apps+= apps/jtag/jtag.o
+ hdrs+= jtag.h
+ endif
+ apps+= apps/jtag/openocd.o
+ hdrs+= openocd.h
+endif
+
# include chipcon app
ifeq ($(filter chipcon, $(config)), chipcon)
apps+= apps/chipcon/chipcon.o