diff --git a/LUFA/Build/lufa.build.in b/LUFA/Build/lufa.build.in index 0e1a4501e7..91c54f969c 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 check-source symbol-sizes all lib elf hex lss clean +LUFA_BUILD_TARGETS += size check-source symbol-sizes all lib elf hex lss clean mostlyclean 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 OBJDIR LUFA_BUILD_PROVIDED_VARS += @@ -32,7 +32,10 @@ LUFA_BUILD_PROVIDED_MACROS += # elf - Build application ELF debug object file # hex - Build application HEX object files # lss - Build application LSS assembly listing file -# clean - Remove output files +# clean - Remove all project intermediatary and binary +# output files +# mostlyclean - Remove intermediatary output files, but +# preserve binaries # # MANDATORY PARAMETERS: # @@ -211,11 +214,13 @@ symbol-sizes: $(TARGET).elf @echo $(MSG_NM_CMD) Extracting \"$<\" symbols with decimal byte sizes $(CROSS)-nm --size-sort --demangle --radix=d $< -clean: +mostlyclean: @echo $(MSG_REMOVE_CMD) Removing object files of \"$(TARGET)\" rm -f $(OBJECT_FILES) @echo $(MSG_REMOVE_CMD) Removing dependency files of \"$(TARGET)\" rm -f $(DEPENDENCY_FILES) + +clean: mostlyclean @echo $(MSG_REMOVE_CMD) Removing output files of \"$(TARGET)\" rm -f $(TARGET).elf $(TARGET).hex $(TARGET).eep $(TARGET).map $(TARGET).lss $(TARGET).sym $(TARGET).a @@ -271,4 +276,4 @@ $(OBJDIR)/%.o: %.S $(MAKEFILE_LIST) -include $(DEPENDENCY_FILES) # Phony build targets for this module -.PHONY: build_begin build_end gcc-version check-source size symbol-sizes lib elf hex lss clean +.PHONY: build_begin build_end gcc-version check-source size symbol-sizes lib elf hex lss clean mostlyclean diff --git a/LUFA/DoxygenPages/BuildSystem.txt b/LUFA/DoxygenPages/BuildSystem.txt index 9a460d30ae..1b26381bc7 100644 --- a/LUFA/DoxygenPages/BuildSystem.txt +++ b/LUFA/DoxygenPages/BuildSystem.txt @@ -12,6 +12,9 @@ * application makefile. The system is written in GNU Make, and each module is independant of * one-another. * + * For details on the prerequisites needed for Linux and Windows machines to be able to use the LUFA + * build system, see \ref Sec_Prerequisites. + * * To use a LUFA build system module, simply add an include to your project makefile: * \code * include $(LUFA_PATH)/Build/lufa.core.in @@ -97,6 +100,10 @@ * clean * Remove all intermediatary files and binary output files. * + * + * mostlyclean + * Remove all intermediatary files but preserve any binary output files. + * * * * \section SSec_BuildModule_BUILD_MandatoryParams Mandatory Parameters diff --git a/makefile b/makefile index 898353c0da..8005f442a6 100644 --- a/makefile +++ b/makefile @@ -9,9 +9,9 @@ # Makefile to build the LUFA library, projects and demos. # Call with "make all" to rebuild everything, "make clean" to clean everything, -# "make clean_list" to remove all intermediatary files but preserve any binaries, -# "make doxygen" to document everything with Doxygen (if installed) and -# "make clean_doxygen" to remove generated Doxygen documentation from everything. +# "make mostlyclean" to remove all intermediatary files but preserve any binaries, +# "make doxygen" to document everything with Doxygen (if installed). Call +# "make help" for additional target build information within a specific project. all: %: