# -----------------------------------------------------------------------------\r
\r
# Sanity-check values of mandatory user-supplied variables\r
-ARCH ?= $(error Makefile ARCH value not set.)\r
-LUFA_PATH ?= $(error Makefile LUFA_PATH value not set.)\r
+ARCH ?= $(error Makefile ARCH value not set)\r
+LUFA_PATH ?= $(error Makefile LUFA_PATH value not set)\r
+\r
+ifeq ($(ARCH),)\r
+ $(error Makefile ARCH option cannot be blank)\r
+endif\r
\r
# Allow LUFA_ROOT_PATH to be overridden elsewhere to support legacy LUFA makefiles\r
-LUFA_ROOT_PATH ?= $(LUFA_PATH)\r
+LUFA_ROOT_PATH ?= $(patsubst %/,%,$(LUFA_PATH))\r
\r
# Construct LUFA module source variables\r
LUFA_SRC_USB = $(LUFA_ROOT_PATH)/Drivers/USB/Core/$(ARCH)/Device_$(ARCH).c \\r
LUFA_SRC_SERIAL = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/Serial_$(ARCH).c\r
LUFA_SRC_TWI = $(LUFA_ROOT_PATH)/Drivers/Peripheral/$(ARCH)/TWI_$(ARCH).c\r
\r
+ifeq ($(ARCH), UC3)\r
+ LUFA_SRC_PLATFORM = $(LUFA_PATH)/Platform/UC3/Exception.S $(LUFA_PATH)/Platform/UC3/InterruptManagement.c\r
+else\r
+ LUFA_SRC_PLATFORM =\r
+endif\r
+\r
# Build a list of all available module sources\r
LUFA_SRC_ALL_FILES = $(LUFA_SRC_USB) \\r
$(LUFA_SRC_USBCLASS) \\r
$(LUFA_SRC_TEMPERATURE) \\r
$(LUFA_SRC_SERIAL) \\r
- $(LUFA_SRC_TWI)
\ No newline at end of file
+ $(LUFA_SRC_TWI) \\r
+ $(LUFA_SRC_PLATFORM)
\ No newline at end of file