summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--application-devel/debian-packages/pres_debian_packages_en.tex4
-rw-r--r--distribution/Kconfig9
-rw-r--r--distribution/yocto-advanced/Kconfig5
-rw-r--r--distribution/yocto-advanced/Makefile1
-rw-r--r--distribution/yocto-advanced/pres_yocto-advanced.tex11
-rw-r--r--distribution/yocto-basic/Kconfig5
-rw-r--r--distribution/yocto-basic/Makefile1
-rw-r--r--distribution/yocto-basic/pres_yocto-basic.tex11
-rw-r--r--distribution/yocto-intro/Kconfig5
-rw-r--r--distribution/yocto-intro/Makefile1
-rw-r--r--distribution/yocto-intro/pres_yocto-intro.tex109
-rw-r--r--lx-trainer-vm.xml183
12 files changed, 341 insertions, 4 deletions
diff --git a/application-devel/debian-packages/pres_debian_packages_en.tex b/application-devel/debian-packages/pres_debian_packages_en.tex
index 719a6ec..bae8a19 100644
--- a/application-devel/debian-packages/pres_debian_packages_en.tex
+++ b/application-devel/debian-packages/pres_debian_packages_en.tex
@@ -1,5 +1,4 @@
% on the following slides, include icon in the left sidebar
-\def\lximg{/usr/share/lx/icons/fueller.png}
\input{configpres}
@@ -7,9 +6,6 @@
\title{Building Debian Packages}
\maketitle
-% stop displaying 'fueller.png' on the following slides
-\def\lximg{none}
-
\subsection{Basics}
\begin{frame}
\frametitle{Debian Packages}
diff --git a/distribution/Kconfig b/distribution/Kconfig
index 53f5ccb..761d6cf 100644
--- a/distribution/Kconfig
+++ b/distribution/Kconfig
@@ -9,3 +9,12 @@ if ELBE
source "distribution/elbe-internals/Kconfig"
source "distribution/elbe-example/Kconfig"
endif
+
+menuconfig YOCTO
+ bool "Yocto build system"
+
+if YOCTO
+ source "distribution/yocto-intro/Kconfig"
+ source "distribution/yocto-basic/Kconfig"
+ source "distribution/yocto-advanced/Kconfig"
+endif
diff --git a/distribution/yocto-advanced/Kconfig b/distribution/yocto-advanced/Kconfig
new file mode 100644
index 0000000..36aa179
--- /dev/null
+++ b/distribution/yocto-advanced/Kconfig
@@ -0,0 +1,5 @@
+config YOCTO_ADVANCED
+ bool "Yocto Advanced"
+ default y
+ help
+ Building an ARM BSP Image and customize it with an RT Kernel
diff --git a/distribution/yocto-advanced/Makefile b/distribution/yocto-advanced/Makefile
new file mode 100644
index 0000000..1fcc766
--- /dev/null
+++ b/distribution/yocto-advanced/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_YOCTO_ADVANCED) = pres_yocto-advanced.pdf
diff --git a/distribution/yocto-advanced/pres_yocto-advanced.tex b/distribution/yocto-advanced/pres_yocto-advanced.tex
new file mode 100644
index 0000000..8d044f3
--- /dev/null
+++ b/distribution/yocto-advanced/pres_yocto-advanced.tex
@@ -0,0 +1,11 @@
+\input{configpres}
+
+\title{YOCTO - Advanced}
+\maketitle
+
+\begin{frame}
+\frametitle{What is Yocto?}
+bla
+\end{frame}
+
+\input{tailpres}
diff --git a/distribution/yocto-basic/Kconfig b/distribution/yocto-basic/Kconfig
new file mode 100644
index 0000000..e5c8959
--- /dev/null
+++ b/distribution/yocto-basic/Kconfig
@@ -0,0 +1,5 @@
+config YOCTO_BASIC
+ bool "Yocto Basics"
+ default y
+ help
+ Building an x86 Image, Toochain and ADT, adding own Packages
diff --git a/distribution/yocto-basic/Makefile b/distribution/yocto-basic/Makefile
new file mode 100644
index 0000000..e6aa4d1
--- /dev/null
+++ b/distribution/yocto-basic/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_YOCTO_BASIC) = pres_yocto-basic.pdf
diff --git a/distribution/yocto-basic/pres_yocto-basic.tex b/distribution/yocto-basic/pres_yocto-basic.tex
new file mode 100644
index 0000000..f10b6e3
--- /dev/null
+++ b/distribution/yocto-basic/pres_yocto-basic.tex
@@ -0,0 +1,11 @@
+\input{configpres}
+
+\title{YOCTO - Basics}
+\maketitle
+
+\begin{frame}
+\frametitle{What is Yocto?}
+bla
+\end{frame}
+
+\input{tailpres}
diff --git a/distribution/yocto-intro/Kconfig b/distribution/yocto-intro/Kconfig
new file mode 100644
index 0000000..b148d33
--- /dev/null
+++ b/distribution/yocto-intro/Kconfig
@@ -0,0 +1,5 @@
+config YOCTO_INTRO
+ bool "What is yocto?"
+ default y
+ help
+ Overview and basic information about YOCTO
diff --git a/distribution/yocto-intro/Makefile b/distribution/yocto-intro/Makefile
new file mode 100644
index 0000000..3541e18
--- /dev/null
+++ b/distribution/yocto-intro/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_YOCTO_INTRO) = pres_yocto-intro.pdf
diff --git a/distribution/yocto-intro/pres_yocto-intro.tex b/distribution/yocto-intro/pres_yocto-intro.tex
new file mode 100644
index 0000000..c7d30e9
--- /dev/null
+++ b/distribution/yocto-intro/pres_yocto-intro.tex
@@ -0,0 +1,109 @@
+\input{configpres}
+
+\title{YOCTO - Intro}
+\maketitle
+
+\begin{frame}
+\frametitle{Yocto is \dots}
+\begin{itemize}
+ \item an Ecosystem (not a single open-source project)
+ \item a collection of embedded projects and tooling
+ \item a place for Industry to publish BSPs
+ \item NOT an embedded Linux distribution
+\end{itemize}
+\dots used to build a Linux system from source in about an hour \footnote{quad i7, 16GB
+ RAM, fast disks, needed}
+\end{frame}
+
+\begin{frame}
+\frametitle{the Yocto project family}
+\begin{description}
+ \item[Poky] reference build system
+ \item[BitBake] build-engine
+ \item[Hob] graphical user interface for BitBake
+ \item[OpenEmbedded Core] shared base layer of recipes and classes
+ \item[ADT] development environment for user-space applications
+ \item[Eclipse IDE Plugin] integration of ADT into the Eclipse IDE
+ \item[EGLIBC] embedded variant of the GNU C library
+ \item[Matchbox] X-Windows-based open source graphical UI for embedded devices
+\end{description}
+\end{frame}
+
+\begin{frame}
+\frametitle{Poky is \dots}
+the Yocto key project; a reference distribution consisting of
+\begin{itemize}
+ \item a build system for Linux (openembedded + customized busybox,
+ psplash, alsa-state, formfactor, uclibc and tiny-init)
+ \item Yocto Linux kernel
+ \item build recipes for common open-source software
+ \item toolchains for several architectures
+ \item documentation
+\end{itemize}
+release cycle: 6 months
+\end{frame}
+
+\begin{frame}
+\frametitle{statistics}
+\begin{description}
+\item[Generated] 2014-08-19 18:16:11 (in 228 seconds)
+\item[Generator] GitStats (version 2013.12.07)
+\item[Report Period] 2005-08-31 12:45:47 to 2014-08-18 16:21:54
+\item[Age] 3275 days, 2498 active days (76.27%)
+\item[Total Files] 4775
+\item[Total Lines of Code] 743995 (15398000 added, 14654005 removed)
+\item[Total Commits] 30841
+
+(average 12.3 commits per active day, 9.4 per all days)
+\item[Authors] 475
+\end{description}
+\end{frame}
+
+\begin{frame}[fragile]
+\frametitle{who made Yocto?}
+commits by domain
+\begin{verbatim}
+intel.com 9201 (29.83%)
+linux.intel.com 5882 (19.07%)
+openedhand.com 5423 (17.58%)
+windriver.com 2827 (9.17%)
+linuxfoundation.org 2625 (8.51%)
+gmail.com 1904 (6.17%)
+mentor.com 626 (2.03%)
+ossystems.com.br 206 (0.67%)
+dominion.thruhere.net 187 (0.61%)
+freescale.com 159 (0.52%)
+\end{verbatim}
+\end{frame}
+
+\begin{frame}
+\frametitle{OpenEmbedded}
+\begin{itemize}
+ \item open-source project providing a cross-build framework for embedded Linux
+ \item recipes for toolchain, bootloader, kernel, lttng, user-space packages
+\end{itemize}
+\end{frame}
+
+\begin{frame}
+\frametitle{Yocto pincipals}
+\begin{itemize}
+ \item validated collection of software (toolchain, kernel, user-space)
+ \item customize blueprints for your own needs
+ \item distinguishing between app and system developers
+ \item layer model for modular development, reuse, and customizations
+\end{itemize}
+\end{frame}
+
+
+\begin{frame}
+\frametitle{cross-build vs. binary distribution}
+\begin{itemize}
+ \item men-power needed for building an own distribution?
+ \item security tracking?
+ \item optimizations needed on all binaries?
+ \item cross-compile wanted?
+\end{itemize}
+\end{frame}
+
+
+\input{tailpres}
diff --git a/lx-trainer-vm.xml b/lx-trainer-vm.xml
new file mode 100644
index 0000000..02260a4
--- /dev/null
+++ b/lx-trainer-vm.xml
@@ -0,0 +1,183 @@
+<ns0:RootFileSystem xmlns:ns0="https://www.linutronix.de/projects/Elbe" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" created="2009-05-20T08:50:56" revision="6" xsi:schemaLocation="https://www.linutronix.de/projects/Elbe dbsfed.xsd">
+ <initvm>
+ <buildtype>amd64</buildtype>
+ <mirror>
+ <primary_host>ftp.de.debian.org</primary_host>
+ <primary_path>/debian</primary_path>
+ <primary_proto>http</primary_proto>
+ <url-list>
+ <url>
+ <binary>
+ http://debian.linutronix.de/elbe-testing wheezy main
+ </binary>
+ <source>
+ http://debian.linutronix.de/elbe-testing wheezy main
+ </source>
+ </url>
+ </url-list>
+ </mirror>
+ <noauth/>
+ <suite>wheezy</suite>
+ </initvm>
+ <project>
+ <name>lx-training</name>
+ <version>1</version>
+ <description>
+ can be used for linutronix trainigs. use as usb hd or
+ use this command to generate a vmware image:
+ qemu-img convert -O vmdk lx-trainer.img lx-trainer.vmdk
+ </description>
+ <buildtype>i386</buildtype>
+ <mirror>
+ <primary_host>ftp.de.debian.org</primary_host>
+ <primary_path>/debian</primary_path>
+ <primary_proto>http</primary_proto>
+ <url-list>
+ <url>
+ <binary>
+ http://ftp.de.debian.org/debian jessie contrib non-free
+ </binary>
+ <source>
+ http://ftp.de.debian.org/debian jessie contrib non-free
+ </source>
+ </url>
+ <url>
+ <binary>
+ http://debian.linutronix.de/elbe-testing jessie main
+ </binary>
+ <source>
+ http://debian.linutronix.de/elbe-testing jessie main
+ </source>
+ </url>
+ </url-list>
+ </mirror>
+ <noauth/>
+ <suite>jessie</suite>
+ </project>
+ <target>
+ <hostname>lx-training</hostname>
+ <domain>tec.linutronix.de</domain>
+ <passwd>root</passwd>
+ <console>ttyS0,115200</console>
+ <images>
+ <msdoshd>
+ <name>lx-trainer.img</name>
+ <size>32GiB</size>
+ <grub-install/>
+ <partition>
+ <size>remain</size>
+ <label>rfs</label>
+ </partition>
+ </msdoshd>
+ </images>
+ <fstab>
+ <bylabel>
+ <label>rfs</label>
+ <mountpoint>/</mountpoint>
+ <fs>
+ <type>ext4</type>
+ <tune2fs>-i 0</tune2fs>
+ </fs>
+ </bylabel>
+ <bylabel>
+ <label>lxhome</label>
+ <mountpoint>/home</mountpoint>
+ <fs>
+ <type>ext4</type>
+ <tune2fs>-i 0</tune2fs>
+ </fs>
+ </bylabel>
+ <bydev>
+ <source>none</source>
+ <mountpoint>/sys/kernel/debug</mountpoint>
+ <fs>
+ <type>debugfs</type>
+ </fs>
+ </bydev>
+ </fstab>
+ <finetuning>
+ <rm>var/cache/apt/archives/*.deb</rm>
+ <adduser passwd="devel" shell="/bin/bash">devel</adduser>
+ <command>wget https://sourcery.mentor.com/sgpp/lite/arm/portal/package8739/public/arm-none-linux-gnueabi/arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2</command>
+ <command>tar xjf arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 -C /opt</command>
+ <command>rm arm-2011.03-41-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2</command>
+ <command>wget http://ftp.halifax.rwth-aachen.de/eclipse//technology/epp/downloads/release/luna/R/eclipse-cpp-luna-R-linux-gtk.tar.gz</command>
+ <command>tar xzf eclipse-cpp-luna-R-linux-gtk.tar.gz -C /opt</command>
+ <command>rm eclipse-cpp-luna-R-linux-gtk.tar.gz</command>
+ <command>git clone -b daisy git://git.yoctoproject.org/poky.git /opt/poky-daisy</command>
+ <command>git clone -b daisy git://git.yoctoproject.org/meta-ti /opt/poky-daisy/</command>
+ <command>git clone -b daisy git://git.yoctoproject.org/meta-fsl-arm /opt/poky-daisy/</command>
+ </finetuning>
+ <pkg-list>
+ <pkg>grub-pc</pkg>
+ <pkg>linux-image-686-pae</pkg>
+ <pkg>linux-image-686-pae-dbg</pkg>
+ <pkg>linux-headers-686-pae</pkg>
+ <pkg>linux-tools</pkg>
+ <pkg>firmware-linux</pkg>
+
+ <pkg>openssh-client</pkg>
+ <pkg>openssh-server</pkg>
+ <pkg>apache2</pkg>
+ <pkg>nfs-kernel-server</pkg>
+ <pkg>tftpd-hpa</pkg>
+
+ <pkg>less</pkg>
+ <pkg>bash</pkg>
+ <pkg>vim-nox</pkg>
+ <pkg>emacs-nox</pkg>
+ <pkg>mc</pkg>
+ <pkg>unzip</pkg>
+ <pkg>texinfo</pkg>
+ <pkg>chrpath</pkg>
+ <pkg>libsdl1.2-dev</pkg>
+ <pkg>diffstat</pkg>
+ <pkg>quilt</pkg>
+ <pkg>git</pkg>
+ <pkg>gitk</pkg>
+ <pkg>wireshark</pkg>
+ <pkg>xxxterm</pkg>
+
+ <pkg>build-essential</pkg>
+ <pkg>autoconf</pkg>
+ <pkg>automake</pkg>
+ <pkg>u-boot-tools</pkg>
+ <pkg>libncurses5-dev</pkg>
+
+ <pkg>bootchart2</pkg>
+ <pkg>pybootchartgui</pkg>
+ <pkg>kexec-tools</pkg>
+ <pkg>mtd-utils</pkg>
+ <pkg>qemu-system</pkg>
+ <pkg>qemu-user</pkg>
+
+ <pkg>elbe</pkg>
+ <pkg>reprepro</pkg>
+ <pkg>devscripts</pkg>
+ <pkg>dh-make</pkg>
+
+ <pkg>acl</pkg>
+ <pkg>attr</pkg>
+ <pkg>tomoyo-tools</pkg>
+ <pkg>selinux-basics</pkg>
+ <pkg>selinux-utils</pkg>
+ <pkg>selinux-policy-default</pkg>
+ <pkg>selinux-policy-dev</pkg>
+ <pkg>openvpn</pkg>
+ <pkg>easy-rsa</pkg>
+
+ <pkg>openjdk-7-jdk</pkg>
+
+ <pkg>lightdm</pkg>
+ <pkg>mate-desktop-environment-extras</pkg>
+ <pkg>mate-gnome-main-menu-applet</pkg>
+ <pkg>mate-themes</pkg>
+ <pkg>pluma</pkg>
+ <pkg>xterm</pkg>
+ <pkg>xinit</pkg>
+ <pkg>locales</pkg>
+ <pkg>xserver-xorg</pkg>
+ <pkg>network-manager-gnome</pkg>
+ </pkg-list>
+ </target>
+</ns0:RootFileSystem>