diff --git a/LUFA/Build/lufa.avrdude.in b/LUFA/Build/lufa.avrdude.in
index 4c43d183dd22de47b7b7660e5cae4357b71fbcb6..52cb44b8d7ed9eeecf412a32e041e1f2baf4f449 100644
--- a/LUFA/Build/lufa.avrdude.in
+++ b/LUFA/Build/lufa.avrdude.in
@@ -60,3 +60,6 @@ program: $(TARGET).hex $(MAKEFILE_LIST)
 program-ee: $(TARGET).eep $(MAKEFILE_LIST)
 	@echo $(MSG_AVRDUDE_CMD) Programming device \"$(MCU)\" with settings \"$(AVRDUDE_EEP_FLAGS)\" using \"$(AVRDUDE_PROGRAMMER)\" on port \"$(AVRDUDE_PORT)\"
 	avrdude -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER) $(AVRDUDE_EEP_FLAGS)
+
+# Phony build targets for this module
+.PHONY: program program-ee
\ No newline at end of file
diff --git a/LUFA/Build/lufa.build.in b/LUFA/Build/lufa.build.in
index bcf539d73a8b1ed4d8d9042b6697f4dc55b443a7..a8569a6ce303706f1108fb51e15c60e559e01540 100644
--- a/LUFA/Build/lufa.build.in
+++ b/LUFA/Build/lufa.build.in
@@ -7,7 +7,7 @@
 #
 
 LUFA_BUILD_MODULES        += BUILD
-LUFA_BUILD_TARGETS        += size checksource all elf hex lss gcc_version clean
+LUFA_BUILD_TARGETS        += size all elf hex lss clean
 LUFA_BUILD_MANDATORY_VARS += TARGET ARCH MCU SRC F_USB LUFA_PATH
 LUFA_BUILD_OPTIONAL_VARS  += BOARD OPTIMIZATION C_STANDARD CPP_STANDARD F_CPU C_FLAGS CPP_FLAGS ASM_FLAGS CC_FLAGS LD_FLAGS
 
@@ -20,13 +20,11 @@ LUFA_BUILD_OPTIONAL_VARS  += BOARD OPTIMIZATION C_STANDARD CPP_STANDARD F_CPU C_
 # -----------------------------------------------------------------------------
 # TARGETS:
 #
-#    size                      - List application size
-#    checksource               - Check existance of listed input source files
+#    size                      - List built application size
 #    all                       - Build application and list size
 #    elf                       - Build application ELF debug object file
 #    hex                       - Build application HEX object files
 #    lss                       - Build application LSS assembly listing file
-#    gcc_version               - Print version of GCC used
 #    clean                     - Remove output files
 #
 # MANDATORY PARAMETERS:
@@ -155,12 +153,11 @@ end:
 gcc_version:
 	@$(CROSS)gcc --version
 
-checksource:
-	@for f in $(SRC) $(CPPSRC) $(ASRC); do \
-		if [ -f $$f ]; then \
-			echo "Found Source File: $$f" ; \
-		else \
-			echo "Source File Not Found: $$f" ; \
+check_source:
+	@for f in $(SRC); do \
+		if [ ! -f $$f ]; then \
+			echo "Error: Source file not found: $$f"; \
+			exit 1; \
 		fi; \
 	 done
 
@@ -170,8 +167,15 @@ size:
 	    $(CROSS)size $(SIZE_MCU_FLAG) $(SIZE_FORMAT_FLAG) $(TARGET).elf ; 2>/dev/null; \
 	 fi
 
-.PHONY: begin gcc_version elf hex lss size end
-all: begin gcc_version elf hex lss size end
+clean:
+	@echo $(MSG_REMOVE_CMD) Removing object files \"$(strip $(notdir $(OBJECT_FILES)))\"
+	rm -f $(OBJECT_FILES)
+	@echo $(MSG_REMOVE_CMD) Removing dependency files \"$(strip $(notdir $(DEPENDENCY_FILES)))\"
+	rm -f $(DEPENDENCY_FILES)
+	@echo $(MSG_REMOVE_CMD) Removing output files \"$(TARGET).elf $(TARGET).hex $(TARGET).eep $(TARGET).map $(TARGET).lss\"
+	rm -f $(TARGET).elf $(TARGET).hex $(TARGET).eep $(TARGET).map $(TARGET).lss
+
+all: begin check_source gcc_version elf hex lss size end
 
 elf: $(TARGET).elf
 hex: $(TARGET).hex $(TARGET).eep
@@ -206,13 +210,8 @@ lss: $(TARGET).lss
 	@echo $(MSG_OBJDMP_CMD) Extracting LSS file data from \"$<\"
 	$(CROSS)objdump -h -S -z $< > $@
 
-clean:
-	@echo $(MSG_REMOVE_CMD) Removing object files \"$(strip $(notdir $(OBJECT_FILES)))\"
-	rm -f $(OBJECT_FILES)
-	@echo $(MSG_REMOVE_CMD) Removing dependency files \"$(strip $(notdir $(DEPENDENCY_FILES)))\"
-	rm -f $(DEPENDENCY_FILES)
-	@echo $(MSG_REMOVE_CMD) Removing output files \"$(TARGET).elf $(TARGET).hex $(TARGET).eep $(TARGET).map $(TARGET).lss\"
-	rm -f $(TARGET).elf $(TARGET).hex $(TARGET).eep $(TARGET).map $(TARGET).lss
-
 # Include build dependency files
--include $(DEPENDENCY_FILES)
\ No newline at end of file
+-include $(DEPENDENCY_FILES)
+
+# Phony build targets for this module
+.PHONY: begin end gcc_version check_source size elf hex lss clean
\ No newline at end of file
diff --git a/LUFA/Build/lufa.core.in b/LUFA/Build/lufa.core.in
index 4ce92219cdef02826acf698df09ecde5683e57c0..d111aad715ec48fc9e97bbd2348bfb2e31b5f0bb 100644
--- a/LUFA/Build/lufa.core.in
+++ b/LUFA/Build/lufa.core.in
@@ -100,3 +100,6 @@ list_mandatory:
 	
 list_optional:
 	@echo Optional Variables for Included Modules: $(SORTED_LUFA_OPTIONAL_VARS)
+
+# Phony build targets for this module
+.PHONY: help list_modules list_targets list_mandatory list_optional
\ No newline at end of file
diff --git a/LUFA/Build/lufa.dfu.in b/LUFA/Build/lufa.dfu.in
index 565e848aa7e00c00cde099693e9c5d938f992bff..91922d0cb15f4fd78d92453a682f0bff0f4ba6b2 100644
--- a/LUFA/Build/lufa.dfu.in
+++ b/LUFA/Build/lufa.dfu.in
@@ -70,4 +70,7 @@ dfu: $(TARGET).hex $(MAKEFILE_LIST)
 dfu-ee: $(TARGET).eep $(MAKEFILE_LIST)
 	@echo $(MSG_DFU_CMD) Programming EEPROM with dfu-programmer using \"$(TARGET).eep\"
 	dfu-programmer $(MCU) eeprom-flash $(TARGET).eep
-	dfu-programmer $(MCU) reset
\ No newline at end of file
+	dfu-programmer $(MCU) reset
+	
+# Phony build targets for this module
+.PHONY: flip flip-ee dfu dfu-ee
\ No newline at end of file
diff --git a/LUFA/Build/lufa.doxygen.in b/LUFA/Build/lufa.doxygen.in
index 7d4f8ae3194118c020b43ec84c3cc1089a39d54f..0a6ad6e258463d9da97ab40740bdb8a1ab687f67 100644
--- a/LUFA/Build/lufa.doxygen.in
+++ b/LUFA/Build/lufa.doxygen.in
@@ -50,10 +50,15 @@ MSG_DOXYGEN_CMD         := ' [DOXYGEN] :'
 BASE_DOXYGEN_CMD = ( cat Doxygen.conf $(DOXYGEN_OVERRIDE_PARAMS:%=; echo "%") ) | doxygen -
 ifeq ($(DOXYGEN_FAIL_ON_WARNING), Y)
    DOXYGEN_CMD = if ( $(BASE_DOXYGEN_CMD) 2>&1 | grep -v "warning: ignoring unsupported tag" ;); then exit 1; fi;
-else
+else ifeq ($(DOXYGEN_FAIL_ON_WARNING), N)
    DOXYGEN_CMD = $(BASE_DOXYGEN_CMD)
+else
+	$(error DOXYGEN_FAIL_ON_WARNING must be Y or N.)
 endif
 
 doxygen:
 	@echo $(MSG_DOXYGEN_CMD) Configuration file \"$(DOXYGEN_CONF)\" with parameters \"$(DOXYGEN_OVERRIDE_PARAMS)\"
 	$(DOXYGEN_CMD)
+
+# Phony build targets for this module
+.PHONY: doxygen
\ No newline at end of file