Tag for the LUFA-120730-BETA release.
[pub/USBasp.git] / LUFA / DoxygenPages / ExportingLibrary.txt
index 0f45c23..d4c1cbe 100644 (file)
-/** \file\r
- *\r
- *  This file contains special DoxyGen information for the generation of the main page and other special\r
- *  documentation pages. It is not a project source file.\r
- */\r
-\r
-/** \page Page_ExportingLibrary Exporting the Library for IDE Use\r
- *\r
- *  While LUFA was designed to allow for easy compilation in a makefile driven environment,\r
- *  it is possible to export the library into a form suitable for drop-in use inside of an\r
- *  IDE.\r
- *\r
- *  \section Sec_LibraryExport Exporting the Library\r
- *  An export of the library is at its most basic, a direct copy of the main "LUFA" source folder from the\r
- *  root download folder; this contains the library core which can be re-used within external projects.\r
- *  However, as many IDEs attempt to automatically compile all included source files, it is neccesary to\r
- *  exclude some directories and files from the library core export to allow for easier integration into\r
- *  an IDE project.\r
- *\r
- *  \subsection SSec_ManualExport Manual Export\r
- *  To manually export the library core, copy over the main LUFA library folder from the LUFA root directory,\r
- *  renaming as desired. Within the library core folder, the following directories should be removed or\r
- *  excluded from your IDE import:\r
- *   - Documentation/\r
- *   - DoxygenPages/\r
- *   - CodeTemplates/\r
- *\r
- *  If required, files from the CodeTemplates/ subdirectory may be copied to your IDE project as needed.\r
- *\r
- *  The resulting copy of the library may then be imported into your chosen IDE according to the instructions\r
- *  shown in \ref Sec_LibraryImport.\r
- *\r
- *  \subsection SSec_AutomaticExport Automatic Export\r
- *  If desired, the steps indicated in \ref SSec_ManualExport may be automatically performed, by running the\r
- *  command <b><code>make export_tar</code></b> from the command line. This will generate two .tar files in the\r
- *  current directory, named <code>LUFA_XXXXXX.tar</code> and <code>LUFA_XXXXXX_Code_Templates.tar</code> (where "XXXXXX" is\r
- *  the version of the library being exported). The first archive contains the exported LUFA core with the\r
- *  non-required files removed, while the second contains an archived copy of the code template files for the\r
- *  current LUFA version.\r
- *\r
- *  The resulting archived copy of the library may then be extracted to your chosen IDE project source directory\r
- *  and imported according to the instructions shown in \ref Sec_LibraryImport.\r
- *\r
- *  \section Sec_LibraryImport Importing the Library\r
- *  An exported copy of the library may be imported wholesale into an IDE project, if the instructions detailed\r
- *  in \ref Sec_LibraryExport are followed.\r
- *\r
- *  Specific instructions for importing an exported version of LUFA into various IDEs are listed below.\r
- *\r
- *  \subsection SSec_AS56_Import Importing into AVRStudio 5/Atmel Studio 6\r
- *  To import LUFA into a new or existing project, the following steps must be followed.\r
- *\r
- *  \subsubsection SSSec_AS56_Import_Step1 Copy over the exported library\r
- *  Copy over the exported library archive created via the steps listed in \ref Sec_LibraryExport to your AS5/AS6\r
- *  project directory.\r
- *\r
- *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step1.png\r
- *\r
- *  \subsubsection SSSec_AS56_Import_Step2 Extract exported library\r
- *  Extract out the contents of the archive to a new folder. This may be any name you wish, however keep in mind\r
- *  that this name will need to be referenced within your user application under most circumstances. It is\r
- *  suggested that this folder be named "LUFA", or "LUFA" followed by the version string for easy reference.\r
- *\r
- *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step2.png\r
- *\r
- *  \subsubsection SSSec_AS56_Import_Step3 Add the library files\r
- *  Open your AVRStudio 5/Atmel Studio 6 project. From the "Solution Explorer" pane, click the "Show All Files"\r
- *  button on the toolbar to display ghosted icons of files and folders located in the project source directory\r
- *  that are not currently added to the project.\r
- *\r
- *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step3.png\r
- *\r
- *  Right-click the ghosted version of the extracted LUFA export folder in the Solution Explorer pane, and\r
- *  choose the "Add to Project" option from the context menu. This will add the entire LUFA source tree to the\r
- *  current project.\r
- *\r
- *  \subsubsection SSSec_AS56_Import_Step4 Open Project Toolchain Properties\r
- *  In the Solution Explorer pane, click the project node, and press the "Properties" button in the toolbar to\r
- *  open the Project Properties window. This window allows you to configure the various project global compiler,\r
- *  assembler and linker options.\r
- *\r
- *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step4.png\r
- * \r
- *  Click the "Toolchain" tab on the left side of the Project Properties window.\r
- *\r
- *  \subsubsection SSSec_AS56_Import_Step5 Configure Project Toolchain Properties\r
- *\r
- *  In the GNU C Compiler section, open the "Symbols" page. Click the "Add Item" button to the top-right of the\r
- *  "Defined Symbols" section to add new symbols.\r
- *\r
- *  At a minimum, you will need to define the following symbols (for more information on these symbols, see\r
- *  \ref Page_ConfiguringApps):\r
- *   - ARCH\r
- *   - F_CPU\r
- *   - F_USB\r
- *   - BOARD\r
- *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step5_1.png\r
- *\r
- *  Next, open the GNU C Compiler section's "Optimization" page. Ensure that the option to prepare functions for\r
- *  garbage collection is enabled.\r
- *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step5_2.png\r
- *\r
- *  Finally, in the GNU C Linker section, open the "Optimization" page. Ensure that the option to garbage collect\r
- *  unused sections is selected.\r
- *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step5_3.png\r
- */\r
+/** \file
+ *
+ *  This file contains special DoxyGen information for the generation of the main page and other special
+ *  documentation pages. It is not a project source file.
+ */
+
+/** \page Page_ExportingLibrary Exporting the Library for IDE Use
+ *
+ *  While LUFA was designed to allow for easy compilation in a makefile driven environment,
+ *  it is possible to export the library into a form suitable for drop-in use inside of an
+ *  IDE.
+ *
+ *  \section Sec_LibraryExport Exporting the Library
+ *  An export of the library is at its most basic, a direct copy of the main "LUFA" source folder from the
+ *  root download folder; this contains the library core which can be re-used within external projects.
+ *  However, as many IDEs attempt to automatically compile all included source files, it is neccesary to
+ *  exclude some directories and files from the library core export to allow for easier integration into
+ *  an IDE project.
+ *
+ *  \subsection SSec_ManualExport Manual Export
+ *  To manually export the library core, copy over the main LUFA library folder from the LUFA root directory,
+ *  renaming as desired. Within the library core folder, the following directories should be removed or
+ *  excluded from your IDE import:
+ *   - Documentation/
+ *   - DoxygenPages/
+ *   - CodeTemplates/
+ *
+ *  If required, files from the CodeTemplates/ subdirectory may be copied to your IDE project as needed.
+ *
+ *  The resulting copy of the library may then be imported into your chosen IDE according to the instructions
+ *  shown in \ref Sec_LibraryImport.
+ *
+ *  \subsection SSec_AutomaticExport Automatic Export
+ *  If desired, the steps indicated in \ref SSec_ManualExport may be automatically performed, by running the
+ *  command <b><code>make export_tar</code></b> from the command line. This will generate two .tar files in the
+ *  current directory, named <code>LUFA_YYMMDD.tar</code> and <code>LUFA_YYMMDD_Code_Templates.tar</code> (where
+ *  "YYMMDD" is the version of the library being exported). The first archive contains the exported LUFA core
+ *  with the non-required files removed, while the second contains an archived copy of the code template files 
+ *  for the current LUFA version.
+ *
+ *  The resulting archived copy of the library may then be extracted to your chosen IDE project source directory
+ *  and imported according to the instructions shown in \ref Sec_LibraryImport.
+ *
+ *  \section Sec_LibraryImport Importing the Library
+ *  An exported copy of the library may be imported wholesale into an IDE project, if the instructions detailed
+ *  in \ref Sec_LibraryExport are followed.
+ *
+ *  Specific instructions for importing an exported version of LUFA into various IDEs are listed below.
+ *
+ *  \subsection SSec_AS56_Import Importing into AVRStudio 5/Atmel Studio 6
+ *  To import LUFA into a new or existing project, the following steps must be followed.
+ *
+ *  \subsubsection SSSec_AS56_Import_Step1 Copy over the exported library
+ *  Copy over the exported library archive created via the steps listed in \ref Sec_LibraryExport to your AS5/AS6
+ *  project directory.
+ *
+ *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step1.png
+ *
+ *  \subsubsection SSSec_AS56_Import_Step2 Extract exported library
+ *  Extract out the contents of the archive to a new folder. This may be any name you wish, however keep in mind
+ *  that this name will need to be referenced within your user application under most circumstances. It is
+ *  suggested that this folder be named "LUFA", or "LUFA" followed by the version string for easy reference.
+ *
+ *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step2.png
+ *
+ *  \subsubsection SSSec_AS56_Import_Step3 Add the library files
+ *  Open your AVRStudio 5/Atmel Studio 6 project. From the "Solution Explorer" pane, click the "Show All Files"
+ *  button on the toolbar to display ghosted icons of files and folders located in the project source directory
+ *  that are not currently added to the project.
+ *
+ *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step3.png
+ *
+ *  Right-click the ghosted version of the extracted LUFA export folder in the Solution Explorer pane, and
+ *  choose the "Add to Project" option from the context menu. This will add the entire LUFA source tree to the
+ *  current project.
+ *
+ *  \subsubsection SSSec_AS56_Import_Step4 Open Project Toolchain Properties
+ *  In the Solution Explorer pane, click the project node, and press the "Properties" button in the toolbar to
+ *  open the Project Properties window. This window allows you to configure the various project global compiler,
+ *  assembler and linker options.
+ *
+ *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step4.png
+ * 
+ *  Click the "Toolchain" tab on the left side of the Project Properties window.
+ *
+ *  \subsubsection SSSec_AS56_Import_Step5 Configure Project Toolchain Properties
+ *
+ *  In the GNU C Compiler section, open the "Symbols" page. Click the "Add Item" button to the top-right of the
+ *  "Defined Symbols" section to add new symbols.
+ *
+ *  At a minimum, you will need to define the following symbols (for more information on these symbols, see
+ *  \ref Page_ConfiguringApps):
+ *   - ARCH
+ *   - F_CPU
+ *   - F_USB
+ *   - BOARD
+ *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step5_1.png
+ *
+ *  Next, open the GNU C Compiler section's "Optimization" page. Ensure that the option to prepare functions for
+ *  garbage collection is enabled.
+ *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step5_2.png
+ *
+ *  Finally, in the GNU C Linker section, open the "Optimization" page. Ensure that the option to garbage collect
+ *  unused sections is selected.
+ *  \image html Images/AS5_AS6_Import/AS5_AS6_Import_Step5_3.png
+ */