X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/9ab445518a01e9b10b5d3e1c99f45d81d874278b..b8807e9928ec39cb271e28fe3c6a58c60719a60b:/LUFA/DoxygenPages/BuildSystem.txt diff --git a/LUFA/DoxygenPages/BuildSystem.txt b/LUFA/DoxygenPages/BuildSystem.txt index 61087a5ce..c30a88bb4 100644 --- a/LUFA/DoxygenPages/BuildSystem.txt +++ b/LUFA/DoxygenPages/BuildSystem.txt @@ -12,9 +12,12 @@ * 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 + * include $(LUFA_PATH)/Build/lufa_core.mk * \endcode * * And the associated build module targets will be added to your project's build makefile automatically. @@ -38,6 +41,7 @@ * \li \subpage Page_BuildModule_CPPCHECK - Static Code Analysis * \li \subpage Page_BuildModule_DFU - Device Programming * \li \subpage Page_BuildModule_DOXYGEN - Automated Source Code Documentation + * \li \subpage Page_BuildModule_HID - Device Programming * \li \subpage Page_BuildModule_SOURCES - LUFA Module Source Code Variables */ @@ -49,7 +53,7 @@ * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.build.in + * include $(LUFA_PATH)/Build/lufa_build.mk * \endcode * * \section SSec_BuildModule_BUILD_Requirements Requirements @@ -69,6 +73,14 @@ * Display a size-sorted list of symbols from the compiled application, in decimal bytes. * * + * check-source + * Display a list of input SRC source files which cannot be found (if any). + * + * + * lib + * Build and archive all source files into a library A binary file. + * + * * all * Build and link the application into ELF debug and HEX binary files. * @@ -88,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 @@ -139,6 +155,14 @@ * Version of the C++ standard to apply when compiling C++ source files (see GCC manual). * * + * DEBUG_FORMAT + * Format of the debug information to embed in the generated object files (see GCC manual). + * + * + * DEBUG_LEVEL + * Level of the debugging information to embed in the generated object files (see GCC manual). + * + * * F_CPU * Speed of the processor CPU clock, in Hz. * @@ -156,7 +180,7 @@ * * * CC_FLAGS - * Common flags to pass to the compiler, assembler and linker, after the automatically generated flags. + * Common flags to pass to the C/C++ compiler and assembler, after the automatically generated flags. * * * LD_FLAGS @@ -165,11 +189,15 @@ * * OBJDIR * Directory to place the generated object and dependency files. If set to "." the same folder as the source file will be used. - * \note When this option is enabled, all source filenames must be unique. + * \note When this option is enabled, all source filenames must be unique. + * + * + * OBJECT_FILES + * List of additional object files that should be linked into the resulting binary. * * * - * \section SSec_BuildModule_BUILD_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_BUILD_ProvidedVariables Module Provided Variables * * * @@ -192,7 +220,7 @@ * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.core.in + * include $(LUFA_PATH)/Build/lufa_core.mk * \endcode * * \section SSec_BuildModule_CORE_Requirements Requirements @@ -248,7 +276,7 @@ * *
* - * \section SSec_BuildModule_CORE_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_CORE_ProvidedVariables Module Provided Variables * * * @@ -272,7 +300,7 @@ * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.atprogram.in + * include $(LUFA_PATH)/Build/lufa_atprogram.mk * \endcode * * \section SSec_BuildModule_ATPROGRAM_Requirements Requirements @@ -323,7 +351,7 @@ * *
* - * \section SSec_BuildModule_ATPROGRAM_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_ATPROGRAM_ProvidedVariables Module Provided Variables * * * @@ -347,7 +375,7 @@ * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.avrdude.in + * include $(LUFA_PATH)/Build/lufa_avrdude.mk * \endcode * * \section SSec_BuildModule_AVRDUDE_Requirements Requirements @@ -399,7 +427,7 @@ * *
* - * \section SSec_BuildModule_AVRDUDE_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_AVRDUDE_ProvidedVariables Module Provided Variables * * * @@ -423,7 +451,7 @@ * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.cppcheck.in + * include $(LUFA_PATH)/Build/lufa_cppcheck.mk * \endcode * * \section SSec_BuildModule_CPPCHECK_Requirements Requirements @@ -491,7 +519,7 @@ * *
* - * \section SSec_BuildModule_CPPCHECK_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_CPPCHECK_ProvidedVariables Module Provided Variables * * * @@ -512,11 +540,12 @@ * * The DFU programming utility LUFA build system module, providing targets to reprogram an * Atmel processor FLASH and EEPROM memories with a project's compiled binary output files. - * This module requires a DFU class bootloader to be running in the target. + * This module requires a DFU class bootloader to be running in the target, compatible with + * the DFU bootloader protocol as published by Atmel. * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.dfu.in + * include $(LUFA_PATH)/Build/lufa_dfu.mk * \endcode * * \section SSec_BuildModule_DFU_Requirements Requirements @@ -567,7 +596,7 @@ * *
* - * \section SSec_BuildModule_DFU_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_DFU_ProvidedVariables Module Provided Variables * * * @@ -592,7 +621,7 @@ * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.doxygen.in + * include $(LUFA_PATH)/Build/lufa_doxygen.mk * \endcode * * \section SSec_BuildModule_DOXYGEN_Requirements Requirements @@ -636,7 +665,7 @@ * *
* - * \section SSec_BuildModule_DOXYGEN_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_DOXYGEN_ProvidedVariables Module Provided Variables * * * @@ -653,6 +682,87 @@ *
*/ + /** \page Page_BuildModule_HID The HID build module + * + * The HID programming utility LUFA build system module, providing targets to reprogram an + * Atmel processor's FLASH memory with a project's compiled binary output file. This module + * requires a HID class bootloader to be running in the target, using a protocol compatible + * with the PJRC "HalfKay" protocol (http://www.pjrc.com/teensy/halfkay_protocol.html). + * + * To use this module in your application makefile, add the following code: + * \code + * include $(LUFA_PATH)/Build/lufa_hid.mk + * \endcode + * + * \section SSec_BuildModule_HID_Requirements Requirements + * This module requires either the hid_bootloader_cli utility from the included LUFA HID + * class bootloader API subdirectory, or the teensy_loader_cli utility from PJRC + * (http://www.pjrc.com/teensy/loader_cli.html) to be available in your system's PATH + * variable. + * + * \section SSec_BuildModule_HID_Targets Targets + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
hidProgram the device FLASH memory with the application's executable data using hid_bootloader_cli.
hid-eeProgram the device EEPROM memory with the application's EEPROM data using hid_bootloader_cli and + * a temporary AVR application programmed into the target's FLASH. + * \note This will erase the currently loaded application in the target.
teensyProgram the device FLASH memory with the application's executable data using teensy_loader_cli.
teensy-eeProgram the device EEPROM memory with the application's EEPROM data using teensy_loader_cli and + * a temporary AVR application programmed into the target's FLASH. + * \note This will erase the currently loaded application in the target.
+ * + * \section SSec_BuildModule_HID_MandatoryParams Mandatory Parameters + * + * + * + * + * + * + * + * + * + * + *
MCUName of the Atmel processor model (e.g. at90usb1287).
TARGETName of the application output file prefix (e.g. TestApplication).
+ * + * \section SSec_BuildModule_HID_OptionalParams Optional Parameters + * + * + * + * + * + *
None
+ * + * \section SSec_BuildModule_HID_ProvidedVariables Module Provided Variables + * + * + * + * + * + *
None
+ * + * \section SSec_BuildModule_HID_ProvidedMacros Module Provided Macros + * + * + * + * + * + *
None
+ */ + /** \page Page_BuildModule_SOURCES The SOURCES build module * * The SOURCES LUFA build system module, providing variables listing the various LUFA source files @@ -662,7 +772,7 @@ * * To use this module in your application makefile, add the following code: * \code - * include $(LUFA_PATH)/Build/lufa.sources.in + * include $(LUFA_PATH)/Build/lufa_sources.mk * \endcode * * \section SSec_BuildModule_SOURCES_Requirements Requirements @@ -697,7 +807,7 @@ * * * - * \section SSec_BuildModule_SOURCES_ProvideVariables Module Provided Variables + * \section SSec_BuildModule_SOURCES_ProvidedVariables Module Provided Variables * * *