[FE training-materials-updates] Make a bunch of improvements to the Buildroot training agenda

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Thu Dec 4 17:20:07 CET 2014


Repository : git://git.free-electrons.com/training-materials.git

On branch  : master
Link       : http://git.free-electrons.com/training-materials/commit/?id=86bb53242b015e7bc19e3610e45698041898b1d4

>---------------------------------------------------------------

commit 86bb53242b015e7bc19e3610e45698041898b1d4
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date:   Thu Dec 4 17:19:17 2014 +0100

    Make a bunch of improvements to the Buildroot training agenda
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>


>---------------------------------------------------------------

86bb53242b015e7bc19e3610e45698041898b1d4
 agenda/buildroot-agenda.tex | 46 ++++++++++++++++++++++++++-------------------
 1 file changed, 27 insertions(+), 19 deletions(-)

diff --git a/agenda/buildroot-agenda.tex b/agenda/buildroot-agenda.tex
index 42fd198..ca9ae66 100644
--- a/agenda/buildroot-agenda.tex
+++ b/agenda/buildroot-agenda.tex
@@ -42,7 +42,8 @@ Buildroot training\\
     Integrating new packages in Buildroot \par
     Advanced package recipe tricks \par
     Board and project support \par
-    Application development with Buildroot \\
+    Application development with Buildroot \par
+    Understanding the Buildroot internals \\
     \hline
 
     {\bf Duration} & {\bf Three} days - 24 hours (8 hours per day).
@@ -50,18 +51,16 @@ Buildroot training\\
     \hline
 
     {\bf Trainer} & {\bf Thomas Petazzoni}. Thomas is a major
-    Buildroot developer 2009, with more than 1600 patches integrated
-    and an active
-    participation to the development process.\\
+    Buildroot developer 2009, with more than 2400 patches integrated
+    and an active participation to the development process.\\
     \hline
 
     {\bf Language} & Oral lectures: English, French.
     \newline Materials: English.\\
     \hline
 
-    {\bf Audience} & Companies interested in using Buildroot to build
-    their
-    embedded Linux system.\\
+    {\bf Audience} & Companies already using or interested in using
+    Buildroot to build their embedded Linux system.\\
     \hline
 
     {\bf Prerequisites} & {\bf Knowledge of embedded Linux} as covered
@@ -85,7 +84,7 @@ Buildroot training\\
     installed in a {\bf free partition of at least 20 GB. Using Linux
       in a virtual machine is not supported}, because of issues
     connecting to real hardware.
-    \item We need Ubuntu Desktop 12.04 (32 or 64 bit, Xubuntu and
+    \item We need Ubuntu Desktop 14.04 (32 or 64 bit, Xubuntu and
     Kubuntu variants are fine). We don't support other
     distributions, because we can't test all possible package versions.
     \item {\bf Connection to the Internet} (direct or through the
@@ -102,6 +101,7 @@ Buildroot training\\
     \hline
 
 \end{tabularx}}
+\normalsize
 
 \feagendatwocolumn
 {Hardware}
@@ -136,6 +136,7 @@ Buildroot training\\
   \begin{itemize}
   \item The general architecture of an embedded Linux system
   \item Build systems vs. binary distributions
+  \item Role of a build system
   \item Comparaison of existing build systems
   \end{itemize}
 }
@@ -152,7 +153,7 @@ Buildroot training\\
 {
   \begin{itemize}
   \item Getting and setting up Buildroot
-  \item Configuring a basic system with Buildroot
+  \item Configuring and building a basic system with Buildroot
   \item Running the system on a hardware platform and in the Qemu
     emulator, with the root filesystem over NFS or the root filesystem
     flashed
@@ -173,11 +174,12 @@ Buildroot training\\
 {
   \begin{itemize}
   \item The different choices for using toolchains in Buildroot
+  \item Overview of the toolchain options
   \item Using existing binary toolchains, such as Sourcery CodeBench
     toolchains, understanding {\em multilib} capabilities and
     integration of toolchains in Buildroot
-  \item Generating custom toolchains with Buildroot and {\em Crosstool-ng}
-  \item Details on using and configuring {\em Crosstool-ng}
+  \item Generating custom toolchains with {\em Crosstool-NG}, and
+    re-use them as external toolchains
   \end{itemize}
 }
 {Lab - Toolchains in Buildroot}
@@ -198,11 +200,12 @@ Buildroot training\\
 {
   \begin{itemize}
   \item Understand how Buildroot builds the root filesystem: {\em
-      skeleton} and installation of packages
+      skeleton}, installation of packages, overlays, {\em post-build}
+    and {\em post-image} scripts.
   \item Customization of the root filesystem contents
-  \item Understand the configuration of the {\em console}
-  \item Study the different options for managing the {\tt /dev}
-    directory: static or dynamic, with mdev or udev
+  \item System configuration: {\em console} selection, various {\tt
+      /dev} management methods, the different {\tt init}
+    implementations, etc.
   \item Understand how Buildroot generates filesystem images
   \end{itemize}
 }
@@ -210,8 +213,9 @@ Buildroot training\\
 {
   \begin{itemize}
   \item Generate Buildroot systems with different {\tt /dev}
-    management options and test them on an hardware platform.
-  \item Customize the root filesystem contents
+    management options and test them on a hardware platform.
+  \item Customize the root filesystem contents using a {\em rootfs
+      overlay} and {\em post-build} scripts.
   \end{itemize}
 }
 \\
@@ -221,9 +225,11 @@ Buildroot training\\
   \begin{itemize}
   \item How to integrate new packages in the Buildroot configuration
     system
-  \item Understand the different package infrastructures (for {\em
+  \item Understand the different package infrastructures: for {\em
       generic} packages, {\em autotools} packages, {\em CMake}
-    packages and {\em Python} packages)
+    packages and {\em Python} packages.
+  \item Writing a package \code{Config.in} file: how to express
+    dependencies on other packages, on toolchain options, etc.
   \item Details on writing a package recipe: describing the package
     source code location, download method, configuration, build and
     installation steps, handling dependencies, etc.
@@ -273,6 +279,8 @@ Buildroot training\\
   \item Handling root filesystem customization (post-build script,
     skeleton, etc.)
   \item How to version control project-specific changes
+  \item Usage of the \code{BR2_EXTERNAL} feature to store those
+    customizations
   \end{itemize}
 }
 {Lab - Board and project support}



More information about the training-materials-updates mailing list