X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/082537f5bd6b0620ff9b712b9370e5d0c01a61e3..6e29655b5473c6f8235b72654f9aae9cfeb9b078:/LUFA/Build/lufa.atprogram.in diff --git a/LUFA/Build/lufa.atprogram.in b/LUFA/Build/lufa.atprogram.in index 48d1e5c1f..59fedcd43 100644 --- a/LUFA/Build/lufa.atprogram.in +++ b/LUFA/Build/lufa.atprogram.in @@ -1,89 +1,89 @@ -# -# LUFA Library -# Copyright (C) Dean Camera, 2012. -# -# dean [at] fourwalledcubicle [dot] com -# www.lufa-lib.org -# - -LUFA_BUILD_MODULES += ATPROGRAM -LUFA_BUILD_TARGETS += atprogram atprogram-ee -LUFA_BUILD_MANDATORY_VARS += MCU TARGET -LUFA_BUILD_OPTIONAL_VARS += ATPROGRAM_PROGRAMMER ATPROGRAM_INTERFACE ATPROGRAM_PORT - -# ----------------------------------------------------------------------------- -# LUFA ATPROGRAM Programmer Buildsystem Makefile Module. -# ----------------------------------------------------------------------------- -# DESCRIPTION: -# Provides a set of targets to re-program a device using the Atmel atprogram -# utility in AVR Studio 5.x and Atmel Studio 6.0 onwards. -# ----------------------------------------------------------------------------- -# TARGETS: -# -# atprogram - Program target FLASH with application using -# atprogram -# atprogram-ee - Program target EEPROM with application data -# using atprogram -# -# MANDATORY PARAMETERS: -# -# MCU - Microcontroller device model name -# TARGET - Application name -# -# OPTIONAL PARAMETERS: -# -# ATPROGRAM_PROGRAMMER - Name of programming hardware to use -# ATPROGRAM_INTERFACE - Name of programming interface to use -# ATPROGRAM_PORT - Name of communication port to use -# -# ----------------------------------------------------------------------------- - -# Sanity-check values of mandatory user-supplied variables -MCU ?= $(error Makefile MCU value not set) -TARGET ?= $(error Makefile TARGET value not set) - -ifeq ($(MCU),) - $(error Makefile MCU option cannot be blank) -endif -ifeq ($(TARGET),) - $(error Makefile TARGET option cannot be blank) -endif - -# Default values of optionally user-supplied variables -ATPROGRAM_PROGRAMMER ?= jtagice3 -ATPROGRAM_INTERFACE ?= jtag -ATPROGRAM_PORT ?= - -# Output Messages -MSG_ATPROGRAM_CMD := ' [ATPRGRM] :' - -# Construct base atprogram command flags -BASE_ATPROGRAM_FLAGS := --tool $(ATPROGRAM_PROGRAMMER) --interface $(ATPROGRAM_INTERFACE) --device $(MCU) -ifneq ($(ATPROGRAM_PORT),) - BASE_ATPROGRAM_FLAGS += --port $(ATPROGRAM_PORT) -endif - -# Construct the flags to use for the various memory spaces -ifeq ($(ARCH), AVR8) - ATPROGRAM_FLASH_FLAGS := --chiperase --flash - ATPROGRAM_EEPROM_FLAGS := --eeprom -else ifeq ($(ARCH), XMEGA) - ATPROGRAM_FLASH_FLAGS := --erase --flash - ATPROGRAM_EEPROM_FLAGS := --eeprom -else ifeq ($(ARCH), UC3) - ATPROGRAM_FLASH_FLAGS := --erase - ATPROGRAM_EEPROM_FLAGS := --eeprom -else - $(error Unsupported architecture "$(ARCH)") -endif - -atprogram: $(TARGET).elf $(MAKEFILE_LIST) - @echo $(MSG_ATPROGRAM_CMD) Programming device \"$(MCU)\" FLASH using \"$(ATPROGRAM_PROGRAMMER)\" - atprogram $(BASE_ATPROGRAM_FLAGS) program $(ATPROGRAM_FLASH_FLAGS) --file $< - -atprogram-ee: $(TARGET).elf $(MAKEFILE_LIST) - @echo $(MSG_ATPROGRAM_CMD) Programming device \"$(MCU)\" EEPROM using \"$(ATPROGRAM_PROGRAMMER)\" - atprogram $(BASE_ATPROGRAM_FLAGS) program $(ATPROGRAM_EEPROM_FLAGS) --file $< - -# Phony build targets for this module -.PHONY: atprogram atprogram-ee +# +# LUFA Library +# Copyright (C) Dean Camera, 2012. +# +# dean [at] fourwalledcubicle [dot] com +# www.lufa-lib.org +# + +LUFA_BUILD_MODULES += ATPROGRAM +LUFA_BUILD_TARGETS += atprogram atprogram-ee +LUFA_BUILD_MANDATORY_VARS += MCU TARGET +LUFA_BUILD_OPTIONAL_VARS += ATPROGRAM_PROGRAMMER ATPROGRAM_INTERFACE ATPROGRAM_PORT + +# ----------------------------------------------------------------------------- +# LUFA ATPROGRAM Programmer Buildsystem Makefile Module. +# ----------------------------------------------------------------------------- +# DESCRIPTION: +# Provides a set of targets to re-program a device using the Atmel atprogram +# utility in AVR Studio 5.x and Atmel Studio 6.0 onwards. +# ----------------------------------------------------------------------------- +# TARGETS: +# +# atprogram - Program target FLASH with application using +# atprogram +# atprogram-ee - Program target EEPROM with application data +# using atprogram +# +# MANDATORY PARAMETERS: +# +# MCU - Microcontroller device model name +# TARGET - Application name +# +# OPTIONAL PARAMETERS: +# +# ATPROGRAM_PROGRAMMER - Name of programming hardware to use +# ATPROGRAM_INTERFACE - Name of programming interface to use +# ATPROGRAM_PORT - Name of communication port to use +# +# ----------------------------------------------------------------------------- + +# Sanity-check values of mandatory user-supplied variables +MCU ?= $(error Makefile MCU value not set) +TARGET ?= $(error Makefile TARGET value not set) + +ifeq ($(MCU),) + $(error Makefile MCU option cannot be blank) +endif +ifeq ($(TARGET),) + $(error Makefile TARGET option cannot be blank) +endif + +# Default values of optionally user-supplied variables +ATPROGRAM_PROGRAMMER ?= jtagice3 +ATPROGRAM_INTERFACE ?= jtag +ATPROGRAM_PORT ?= + +# Output Messages +MSG_ATPROGRAM_CMD := ' [ATPRGRM] :' + +# Construct base atprogram command flags +BASE_ATPROGRAM_FLAGS := --tool $(ATPROGRAM_PROGRAMMER) --interface $(ATPROGRAM_INTERFACE) --device $(MCU) +ifneq ($(ATPROGRAM_PORT),) + BASE_ATPROGRAM_FLAGS += --port $(ATPROGRAM_PORT) +endif + +# Construct the flags to use for the various memory spaces +ifeq ($(ARCH), AVR8) + ATPROGRAM_FLASH_FLAGS := --chiperase --flash + ATPROGRAM_EEPROM_FLAGS := --eeprom +else ifeq ($(ARCH), XMEGA) + ATPROGRAM_FLASH_FLAGS := --erase --flash + ATPROGRAM_EEPROM_FLAGS := --eeprom +else ifeq ($(ARCH), UC3) + ATPROGRAM_FLASH_FLAGS := --erase + ATPROGRAM_EEPROM_FLAGS := --eeprom +else + $(error Unsupported architecture "$(ARCH)") +endif + +atprogram: $(TARGET).elf $(MAKEFILE_LIST) + @echo $(MSG_ATPROGRAM_CMD) Programming device \"$(MCU)\" FLASH using \"$(ATPROGRAM_PROGRAMMER)\" + atprogram $(BASE_ATPROGRAM_FLAGS) program $(ATPROGRAM_FLASH_FLAGS) --file $< + +atprogram-ee: $(TARGET).elf $(MAKEFILE_LIST) + @echo $(MSG_ATPROGRAM_CMD) Programming device \"$(MCU)\" EEPROM using \"$(ATPROGRAM_PROGRAMMER)\" + atprogram $(BASE_ATPROGRAM_FLAGS) program $(ATPROGRAM_EEPROM_FLAGS) --file $< + +# Phony build targets for this module +.PHONY: atprogram atprogram-ee