[FE training-materials-updates] slides/buildroot-whats-new: update for 2015.08 -> 2017.08

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Mon Oct 16 16:15:06 CEST 2017


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

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

commit c48c4c83f4b576718a036fbe6a697afb9d293153
Author: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Date:   Mon Oct 16 16:14:49 2017 +0200

    slides/buildroot-whats-new: update for 2015.08 -> 2017.08
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>


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

c48c4c83f4b576718a036fbe6a697afb9d293153
 slides/buildroot-whats-new/buildroot-whats-new.tex | 322 +++++++--------------
 1 file changed, 110 insertions(+), 212 deletions(-)

diff --git a/slides/buildroot-whats-new/buildroot-whats-new.tex b/slides/buildroot-whats-new/buildroot-whats-new.tex
index 094fd5d..6d79392 100644
--- a/slides/buildroot-whats-new/buildroot-whats-new.tex
+++ b/slides/buildroot-whats-new/buildroot-whats-new.tex
@@ -7,7 +7,7 @@
   \item Always mentions changes that could cause backward
     compatibility problems
   \item The following slides summarize the major new features added in
-    each release between 2014.05 and 2016.05.
+    each release between 2015.08 and 2017.08.
   \item All new Buildroot versions come with new packages, and many
     updates to the existing packages
     \begin{itemize}
@@ -17,217 +17,6 @@
   \end{itemize}
 \end{frame}
 
-\begin{frame}{In 2014.05 (1)}
-  \begin{itemize}
-  \item {\bf Architectures:}
-    \begin{itemize}
-    \item Support for MIPS o32 ABI on MIPS-64 targets has
-      been removed (too exotic)
-    \item Support for the ARM A12 variant and Intel corei7
-    \end{itemize}
-  \item {\bf Defconfigs:} Minnowboard and Altera SoCkit added, QEMU
-    updates.
-  \item {\bf Bootloaders:} Grub2 and gummiboot support, syslinux
-    support extended.
-  \item Kconfig handling for minimum kernel headers version required
-    for packages. Now packages needing specific kernel header features
-    can specify these requirements in Kconfig.
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2014.05 (2)}
-  \begin{itemize}
-  \item {\bf Toolchains:}
-    \begin{itemize}
-    \item GCC 4.9. Glibc 2.19.
-    \item Support for the musl C
-      library for internal and external toolchains.
-    \item GCC 4.8-R3 support for ARC
-    \item Internal toolchain support for Aarch64 and
-      Microblaze
-    \item Toolchain tuple vendor name can now be
-      customized.
-    \item Updated external Linaro ARM/Aarch64
-      toolchains.
-    \item Added external Linaro ARMEB toolchain.
-    \item A GDB gdbinit file is now generated for external toolchains
-      to automatically set the correct sysroot.
-    \end{itemize}
-  \item {\bf Infrastructure:}
-    \begin{itemize}
-    \item Support for (but disabled as it leads to
-      unreproducible builds) toplevel parallel builds.
-    \item Python package infrastructure extended to support Python 3.x
-    \item Perl and virtual package infrastructure support added.
-    \item \code{PRE_*_HOOKS} support for all build steps.
-    \end{itemize}
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2014.08 (1)}
-  \begin{itemize}
-  \item {\bf Architectures:}
-    \begin{itemize}
-    \item Powerpc64 BE/LE added, AVR32 deprecated.
-    \item Improved altivec / SPE /atomic instructions
-      handling. Additional PowerPC CPU variants added.
-    \end{itemize}
-  \item {\bf Defconfigs:} Atmel SAMA5D3, Congatec QMX6, Lego ev3,
-    TS-5x00, qemu-system-xtensa, qemu-aarch64-virt added. A number
-    of tweaks to existing ones. lpc32xx defconfigs removed.
-  \item {\bf Toolchain:}
-    \begin{itemize}
-    \item Microblaze support for internal musl toolchain.
-    \item Default to GCC 4.8 for internal toolchain, remove deprecated
-      4.3 and 4.6 versions.
-    \item External CodeSourcery / Linaro toolchain updates
-    \item Option to copy gconv libraries for external toolchains.
-    \end{itemize}
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2014.08 (2)}
-  \begin{itemize}
-  \item {\bf Infrastructure:}
-    \begin{itemize}
-    \item \code{graph-depends} improvements
-    \item Download handling is now done using helper scripts.
-    \item Integrity of downloads can now be verified using hashes
-    \item Legal-info: License info of local or overridden packages
-      are saved as well. Toolchain packages are also taken into
-      account.
-    \item autotools: Static linking with libtool / v1.5 improvements
-    \item Gettextize support, similar to autoreconf
-    \item kconfig package infrastructure added
-    \end{itemize}
-  \item User manual restructured / reworked
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2014.11}
-  \begin{itemize}
-  \item {\bf Toolchains:}
-    \begin{itemize}
-    \item Use \code{-mcpu} / \code{-march} instead of \code{-mtune}
-    \item Support additional ARC and sparc variants
-    \item Updated Code sourcery and Linaro external toolchains
-    \end{itemize}
-  \item {\bf Defconfigs:} Freescale iMX6DL SabreSD, Minnowboard MAX,
-    QEMU powerpc64 pseries added and a number of updates to the
-    existing configurations.
-  \item {\bf Infrastructure:}
-    \begin{itemize}
-    \item Buildroot is now less noisy when built with the silent
-      option (\code{make -s})
-    \item A number of package infrastructure variables have been
-      renamed from \code{*_OPT} to \code{*_OPTS} for consistency
-    \item Option to choose what shell /bin/sh points to
-    \end{itemize}
-  \item {\bf Documentation:}
-    \begin{itemize}
-    \item Various updates to the user manual
-    \item The asciidoc documentation handling has now been extended so
-      it can be used by \code{BR2_EXTERNAL}
-    \end{itemize}
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2015.02 (1)}
-  \begin{itemize}
-  \item {\bf Static/shared library handling reworked}
-    \begin{itemize}
-    \item This is now a tristate (shared only / shared and static /
-      static only)
-    \item Default is now shared only to speed up the
-      build. \code{BR2_PREFER_STATIC_LIB} is now called
-      \code{BR2_STATIC_LIBS}
-    \end{itemize}
-  \item {\bf Toolchain:}
-    \begin{itemize}
-    \item The toolchain (internal and external) will now warn when an
-      unsafe library or header path is used
-    \item If \code{BR2_COMPILER_PARANOID_UNSAFE_PATH} is enabled under
-      build options this instead becomes an error.
-    \end{itemize}
-  \item {\bf Architectures:} Freescale E5500 and E6500 PowerPC support
-    added, deprecated MIPS 1/2/3/4 support removed.
-  \item {\bf Defconfigs:} Freescale p2020ds, MIPS creator CI20,
-    Raspberrypi with DT, UDOO Quad
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2015.02 (2)}
-  \begin{itemize}
-  \item \code{make <foo>_defconfig} now saves the path to the
-    defconfig in the \code{.config}, so a \code{make savedefconfig}
-    automatically updates it
-  \item Infrastructure for packages using the Erlang rebar tool has
-    been added.
-  \item Hashes for a large number of packages have been added. Hashes
-    are now checked for both target and host packages.
-  \item The system menu now has an option to automatically configure a
-    network interface through DHCP at bootup.
-  \item The default filesystem skeleton now uses a separate
-    \code{tmpfs} for \code{/run} instead of a symlink to \code{/tmp/}
-    for security reasons / to protect against conflicts with user
-    generated temporary files.
-  \item \code{BR2_EXTERNAL} is now exported to post-build and
-    post-image scripts.
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2015.05 (1)}
-  \begin{itemize}
-  \item {\bf Architectures:}
-    \begin{itemize}
-    \item Removed AVR32 support, SuperH64 deprecated
-    \item Added support for steamroller, corei7-avx and core-avx2 x86
-      variants.
-    \end{itemize}
-  \item {\bf Toolchains:}
-    \begin{itemize}
-    \item IPv6 and Largefile support now enforced for
-      uClibc. Corresponding Kconfig symbols removed.
-    \item External CodeSourcery AMD64 2014.05 added
-    \item musl-cross 1.1.6 added
-    \item CodeSourcery SuperH 2 and Xilinx Microblaze v2/14.3 removed
-    \item Distro-class external toolchains are now detected and
-      blacklisted
-    \item Internal toolchain support for Nios2 added, Blackfin
-      removed.
-    \item Aarch64 and sh musl support.
-    \item uClibc-ng support added
-    \item Libatomic is now handled for internal and external
-      toolchains.
-    \item Link time optimization (LTO) support.
-    \end{itemize}
-  \end{itemize}
-\end{frame}
-
-\begin{frame}{In 2015.05 (2)}
-  \begin{itemize}
-  \item {\bf Defconfigs:} Freescale i.MX28 EVK, i.MX31 PDK and SABRE
-    Auto, Raspberry Pi 2, RIoTboard
-  \item {\bf Infrastructure:}
-    \begin{itemize}
-    \item Hashes for a large number of packages have
-      been added.
-    \item Missing hashes now stop the build unless
-      explicitly disabled.
-    \item Spaces and colons (:) are now supported in package versions.
-    \item Dependencies can now be listed for the patch step
-      (\code{<PKG>_PATCH_DEPENDENCIES}).
-    \item Kconfig and Linux kernel extensions infrastructure has
-      been added.
-    \item Makedevs now has a recursive (r) option
-    \item \code{external-deps}, \code{legal-info}, \code{source},
-      \code{source-check} have been reimplemented using the package
-      infrastructure, so their output/behaviour may differ from
-      earlier (some packages were not included in the past).
-    \end{itemize}
-  \end{itemize}
-\end{frame}
-
 \begin{frame}{In 2015.08}
   \begin{itemize}
   \item {\bf Architectures:} Minimal support for ARM Cortex-M3 and
@@ -303,3 +92,112 @@
     defconfigs were added for m68k, eXtensa-nommu and ColdFire.
   \end{itemize}
 \end{frame}
+
+\begin{frame}{2016.08}
+  \begin{itemize}
+  \item {\bf Toolchains}: Fortran support, {\em eglibc} removed,
+    Blackfin and Microblaze support in the internal toolchain backend.
+  \item {\bf Infrastrcture}:
+    \begin{itemize}
+    \item Addition of \code{BR2_REPRODUCIBLE} which makes the build more
+      reproducible. This is still work in progress.
+    \item Support for Git sub-module fetching
+    \item Script running inside the {\em fakeroot} environment
+    \end{itemize}
+  \item {\bf Defconfigs}: Arcturus uCP1020, Blackfin GDB simulator,
+    Linksprite pcDuino, Minnow Board Max graphical demo, NXP i.MX25
+    PDK, i.MX51 EVK, i.MX6UL Pico, i.MX7 sabresd, QEMU MIPS32r6{,el}
+    and MIPS64r6{,el} malta, Roseapple Pi, Samsung Snow chromebook,
+    Toradex Apalis i.MX6 COM, TS-4800, x86-64 PC BIOS and EFI demos
+  \item {\bf New packages}: Docker, Alljoyn, TI GPU support, SDL2,
+    many Python packages, Xen, etc.
+  \end{itemize}
+\end{frame}
+
+\begin{frame}{2016.11}
+  \begin{itemize}
+  \item {\bf Infrastructure}:
+    \begin{itemize}
+    \item multiple \code{BR2_EXTERNAL} trees are supported
+    \item \code{<pkg>_DL_OPTS}
+    \item \code{<pkg>-show-rdepends}, to list reverse dependencies
+    \item \code{<pkg>-graph-rdepends}, to graph reverse dependencies
+    \item \code{linux-tools} package to build Linux kernel tools
+    \end{itemize}
+  \item {\bf Architecture}: improved MIPS core selection, SH64 support
+    removed
+  \item {\bf Toolchain}: support for Musl on PowerPC64LE, improved
+    MIPS64/MIPS64r6 toolchains. GCC now always built with TLS support.
+  \item {\bf Defconfigs}: WaRP7, Solidrun's MX6 Cubox/Hummingboard,
+    TS-4900, Grinn's liteBoard, Udoo MX6Q/DL, Qemu ARM noMMU,
+    BeagleBone Qt5 demo, Digilent Zybo, FriendlyARM Nanopi NEO.
+  \item {\bf New packages}: ARM Trusted Firmware, AMD GPU drivers,
+    XVisor, RabbitMQ, Python packages, etc.
+  \end{itemize}
+\end{frame}
+
+\begin{frame}{2017.02}
+  \begin{itemize}
+  \item This is the first {\bf Long Term Support} release, supported
+    during one year
+  \item {\bf Infrastructure}:
+    \begin{itemize}
+    \item Reproducible builds improvements
+    \item \code{waf-package} infrastructure
+    \end{itemize}
+  \item {\bf Architecture}: OpenRISC support added, merge of ARM and
+    ARM64, support of ARM64 core selection.
+  \item {\bf Toolchain}: major rework of external toolchain support
+    (now split in several packages), gdb 7.11 by default
+  \item {\bf Defconfigs}: Freescale i.MX23EVK, Qemu OpenRISC
+    emulation, Qemu NIOS2 emulation, Grinn chiliBoard, Freescale
+    i.MX6Q SabreSD, BeagleBoard X15, OrangePi One, ARC HS38 HAPS
+  \item {\bf New packages}: MariaDB, Hiredis, Python packages, etc.
+  \end{itemize}
+\end{frame}
+
+\begin{frame}{2017.05}
+  \begin{itemize}
+  \item {\bf Infrastructure}
+    \begin{itemize}
+    \item Check architectures of installed binaries
+    \item Removed automatic {\em ext2} size calculation
+    \item Wrapper script for {\em genimage}
+    \item Runtime testing infrastructure, defconfigs tested in
+      Gitlab-CI, {\em check-package}
+    \item SPDX license codes used everywhere
+    \end{itemize}
+  \item {\bf Toolchains}: glibc 2.25, uClibc-ng 1.0.24, binutils 2.27
+    by default
+  \item {\bf Architecture}: support for the C-SKY architecture
+  \item {\bf Defconfigs}: AT91sam9x5ek dev/mmc/mmc-dev, banana pro,
+    Nationalchip gx6605s, MIPS creator ci40, nexbox a95x, 64bit
+    defconfig for RaspberryPi 3, stm32f429-disc1
+  \item {\bf New packages}: GhostScript, GStreamer VA-API, RPi
+    firmwares, {\em s6} suite of programs, etc.
+  \end{itemize}
+\end{frame}
+
+\begin{frame}{2017.08}
+  \begin{itemize}
+  \item {\bf Infrastructure}:
+    \begin{itemize}
+    \item Skeleton split in multiple packages:
+      \code{skeleton-init-{sysv,systemd,none,common}} and
+      \code{skeleton-custom}
+    \item Support for read-only rootfs with systemd
+    \item Major revamp of the {\em gettext} handling
+    \item \code{host/usr/} moved into \code{host/}
+    \item Support for license files hashes
+    \item Relocatable SDK, and RPATH cleaning in the target
+    \end{itemize}
+  \item {\bf Architecture}: ARM big/LITTLE, improved MIPS support
+  \item {\bf Toolchain}: gcc 6.x and binutils 2.28 by default, added
+    support for gcc 7.x, binutils 2.29 and gdb 8.0.
+  \item {\bf Defconfigs}: A13 Olinuxino, Engicam platforms (i.CoreM6
+    Solo/Dual/DualLite/Quad, RQS SOM, GEAM6UL SOM, Is.IoT MX6UL
+    SOM), Nano Pi M1 (Plus), OrangePi Zero and Plus
+  \item {\bf New packages}: Azure IOT SDK, Erlang and Python packages,
+    SELinux refpolicy, etc.
+  \end{itemize}
+\end{frame}




More information about the training-materials-updates mailing list