#\r
# -----------------------------------------------------------------------------\r
\r
-# Output Messages\r
-MSG_BUILD_BEGIN = Begin compilation of project \"$(TARGET)\"...\r
-MSG_BUILD_END = Finished building project \"$(TARGET)\"...\r
-MSG_COMPILE_CMD = ' [CC] :'\r
-MSG_REMOVE_CMD = ' [RM] :'\r
-MSG_LINKER_CMD = ' [LNK] :'\r
-MSG_SIZE_CMD = ' [SIZE] :'\r
-MSG_OBJCPY_CMD = ' [OBJCPY] :'\r
-MSG_OBJDMP_CMD = ' [OBJDMP] :'\r
-\r
-# Sanity check the user MCU, TARGET, ARCH, SRC, F_USB and LUFA_PATH makefile options\r
+# Sanity-check values of mandatory user-supplied variables\r
MCU ?= $(error Makefile MCU value not set.)\r
TARGET ?= $(error Makefile TARGET value not set.)\r
ARCH ?= $(error Makefile ARCH value not set.)\r
F_USB ?= $(error Makefile F_USB value not set.)\r
LUFA_PATH ?= $(error Makefile LUFA_PATH value not set.)\r
\r
-# Default values of user-supplied variables\r
+# Default values of optionally user-supplied variables\r
BOARD ?= NONE\r
OPTIMIZATION ?= s\r
F_CPU ?=\r
ASM_FLAGS ?=\r
CC_FLAGS ?=\r
\r
+# Output Messages\r
+MSG_BUILD_BEGIN = Begin compilation of project \"$(TARGET)\"...\r
+MSG_BUILD_END = Finished building project \"$(TARGET)\"...\r
+MSG_COMPILE_CMD = ' [CC] :'\r
+MSG_REMOVE_CMD = ' [RM] :'\r
+MSG_LINKER_CMD = ' [LNK] :'\r
+MSG_SIZE_CMD = ' [SIZE] :'\r
+MSG_OBJCPY_CMD = ' [OBJCPY] :'\r
+MSG_OBJDMP_CMD = ' [OBJDMP] :'\r
+\r
# Convert input source file list to differentiate them by type\r
C_SOURCE = $(filter %.c, $(SRC))\r
CPP_SOURCE = $(filter %.cpp, $(SRC))\r