2.5 Release Notes WIP

From Yocto Project
Jump to navigationJump to search

New Features / Enhancements



  • Linux kernel 4.15/4.14/4.12, gcc 7.3, glibc 2.27 and ~240 other recipe upgrades
  • Simplified enabling binary reproducible builds
  • Support for installing multiple kernels at runtime and selecting between them
  • Support for the meson build system (imported from meta-oe)
  • Reworked EFI boot support
  • Replaced outdated man with man-db
  • Refreshed patches across a number of recipes


  • A shared state mirror is now being published on yoctoproject.org in order to accelerate builds where compatible. You will need to configure the build system to point to these - details in the auto-generated local.conf (or meta-poky/local.conf.sample).
  • Added support for 32-bit and 64-bit RISC-V architectures (riscv32 and riscv64 respectively)
  • bitbake-layers improvements:
* add-layer/remove-layer: add support for adding and removing multiple layers at once
* show-recipes/show-appends: support specifying more than one recipe
  • devtool improvements:
- devtool: add a 'latest-version' command
- devtool upgrade: improve performance and show progress when adding files
- devtool upgrade: provide useful defaults for version/commit when upgrading recipes
- devtool upgrade now automatically handles a change in source subdirectory in the upstream archive
- devtool upgrade will now handle and report license checksum changes
- devtool find-recipe and edit-recipe now always work with any recipe
- devtool finish ensure repository is clean before proceeding
- devtool finish now has a dry-run option so you can see the changes that will be made before applying them
- devtool finish: add --force-patch-refresh to allow refreshing patch context
- devtool can now deal with conditional patches (added by way of an override)
- devtool search will now also look in the recipe cache, so it can show unbuilt recipes in the results
  • core-image-minimal-initramfs now uses initramfs-framework for initialization
  • initramfs-live-boot-tiny: Create the initramfs-live-boot-tiny recipe
  • initramfs-live-install: Add aarch64 arch to COMPATIBLE_HOST.
  • initramfs-framework: Add exec module
  • image-live.bbclass: print warn when initramfs is invalid
  • initramfs-framework: rootfs: add support for LABEL
  • init-install.sh: support multiple kernels and don't assume vmlinuz
  • init-install-efi.sh: Update to support installing multiple kernels
  • wic: Introduce --fsuuid and have --use-uuid make use of UUID too
  • wic: add 'part-name' argument for naming GPT partitions
  • wic: When using --use-uuid make sure that we update the fstab with PARTUUID
  • wic: Update canned-wks for systemd to use UUID everywhere
  • wic: Add post operation hook for SourcePlugin
  • wic: add wks file to make use of exclude-path functionality (useful for splitting a single image into multiple partitions)
  • classes/populate_sdk_ext: support wic in eSDK
  • New recipes: gst-validate, meson, libpipeline, systemd-bootconf, glide, musl-utils, libtest-needs-perl
  • Restructured python/python3 packaging and replaced it with autopackaging
  • Added pypi class to simplify python recipes that fetch from pypi.org (from meta-python)
  • Added ptest-perl class and use to enable ptest functionality for a number of perl recipes
  • cmake: allow the generator to be changed and default to Ninja for faster builds for cmake-using recipes
  • cmake: allow target names for compile & install to be overridden
  • cmake: always put cmake package files in -dev packages
  • kern-tools: make fuzzy matching optional
  • kexec-tools: add systemd support for kdump
  • useradd-staticids: explain how to fix the the problem
  • scripts/contrib/bbvars.py: Rewrite to use tinfoil
  • site/microblaze-linux: Add MicroBlaze linux site info
  • classes/cross: Add addto_recipe_sysroot task to cross recipes
  • distrodata: make upstream version check more useful for git upstreams
  • distrodata: add a utility script to compare list of recipes
  • runqemu: Allow the user to override the Kernel option
  • runqemu: Allow the user to override the device tree option
  • Ensure that rootfs gets mounted ro when read-only-rootfs is active ****
  • qemu: use upstream swtpm support
  • coreutils: add PACKAGECONFIG for single-binary
  • conf/machine/include/microblaze: Add MicroBlaze architecture includes
  • kernel: Add support for multiple kernel packages
  • systemtap_git.inc: Add microblazeel as a supported architecture
  • siteinfo: add support for ARM64 ILP32
  • libarchive: Enable xz and lzo by default
  • buildhistory-diff: add support for colourising the output
  • tune-i686: Add new tune for better support of 686-class CPUs.
  • scripts/oe-depends-dot: add it to handle dot files
  • connman: Implement subnet route in session
  • common-licenses: Add BSD-1-Clause
  • kernel-uboot: support Image kernel type for arm64
  • buildhistory_analysis: colourise more output
  • image_types: add support for modern f2fs flash filesystem
  • linux-firmware: package all ibt-17-x-x.sfi/ddc firmware
  • grub-efi: add configfile as default built-in
  • bitbake: Rework runall task and add runonly option
  • bitbake: contrib/dump_cache.py: make it dump everything
  • bitbake: sort -g task graph (dot) file output for easier comparisons
  • icecc-create-env: Allow multiple tool aliases
  • icecc.bbclass: Add Icecream support to SDK
  • icecc-create-env: Allow logging to a file
  • icecc-create-env: Add extra tools option
  • icecc.bbclass: Add ICECC_ENV_DEBUG variable
  • toolchain-shar-extract: Add post-relocate scripts
  • sdk.py: run postinst intercepts
  • oe-pkgdata-util: Add support for RPROVIDES
  • oe-pkgdata-util: add --long option to list-pkg-files to show sizes
  • cve-check: allow recipes to override their version
  • sstatesig: Add recipe wildcard
  • oe-init-build-env: search 'bitbake' outside of oe-core
  • linux-yocto/4.12: add stratix10 SoC development board
  • systemd: add systemd-bootconf recipe
  • systemd-boot: add package that installs to boot
  • godep.bbclass: Add helper class to enable go-dep tool
  • libtirpc: Extend to native and nativesdk recipes
  • diffutils: allow native & nativesdk builds
  • libmnl: enable native
  • libcroco: enable nativesdk builds
  • glide.bbclass: Add class to easy Glide use
  • reproducible_build_simple.bbclass: simple environment for reproducible binaries
  • reproducible_build.bbclass: support for binary reproducibility
  • systemtap: supports mips starting with version 3.1
  • xf86-video-intel: enable graphic and audio support for CFL-S Sku
  • linux-yocto/4.12: intel-socfpga, intel-pmc-core and ish support for CoffeeLake board
  • linux-yocto/4.12: coffeeLake-s graphics and audio support
  • linux-yocto/4.12: pinctrl backports
  • image: add image-combined-dbg helper class
  • crosstap: replace script with new python based implementation
  • sstate.bbclass: Add progress bars when removing from the sysroots
  • waf.bbclass: Add compile progress
  • bin_package: error out if source directory doesn't actually contain anything



Known Issues

  • Whilst recipes for Go 1.10.x are provided, the default version of Go remains at 1.9.x, as there is a serious bug in Go 1.10 when it comes to using the shared runtime support which causes problems in multiple projects. If you need to you can switch to 1.10 by setting GOVERSION to "1.10%" in your configuration. For more details on the issue upstream see:

https://github.com/golang/go/issues/24640



Migration instructions


For details on changes that you might need to make when migrating to the Yocto Project 2.5 release from previous releases, please see the following manual section:

http://www.yoctoproject.org/docs/2.5/ref-manual/ref-manual.html#moving-to-the-yocto-project-2.5-release



Security Fixes





Recipe Upgrades


  • adwaita-icon-theme: update to 3.26.0
  • alsa-lib: 1.1.4.1 -> 1.1.5
  • alsa-plugins: 1.1.4 -> 1.1.5
  • alsa-tools: 1.1.3 -> 1.1.5
  • alsa-utils: 1.1.4 -> 1.1.5
  • apr: 1.6.2 -> 1.6.3
  • apr-util: 1.6.0 -> 1.6.1
  • assimp: upgrade to version 4.1.0
  • atk: upgrade to version 2.26.1
  • at-spi2-atk: 2.26.0 -> 2.26.1
  • at-spi2-core: 2.26.0 -> 2.26.2
  • avahi: upgrade to 0.7
  • babeltrace: update to 1.5.4
  • bash: 4.4 -> 4.4.12
  • bind: update to 9.10.6
  • binutils: Upgrade to 2.30 release
  • blktrace: 1.1.0+gitX -> 1.2.0+gitX
  • bluez5: 5.46 -> 5.48
  • boost: update to 1.66.0
  • btrfs-tools: update to 4.13.3
  • busybox: 1.24.1 -> 1.27.2
  • cairo: 1.14.10 -> 1.14.12
  • ccache: 3.3.4 -> 3.3.5
  • clutter-gtk-1.0: update to 1.8.4
  • cmake: Upgrade to 3.10.3
  • connman: upgrade 1.34 -> 1.35
  • coreutils: upgrade to 8.29
  • cups: upgrade to 2.2.6
  • curl: upgrade to 7.58.0
  • dbus-test: upgrade to 1.12.2
  • dbus: upgrade to 1.12.2
  • debianutils: update to 4.8.4
  • dnf: update to 2.7.5
  • dtc: update to 1.4.5
  • e2fsprogs: 1.43.5 -> 1.43.8
  • epiphany: upgrade to 3.26.6
  • ethtool: upgrade to 4.13
  • eudev: bump up to version 3.2.5
  • expat: upgrade to 2.2.5
  • expect: update to 5.45.4
  • ffmpeg: update to 3.4.2
  • file: 5.31 -> 5.32
  • fontconfig: update to 2.12.6
  • freetype: upgrade to version 2.9
  • gawk: upgrade to 4.2.0
  • gcc6: Upgrade to 6.4
  • gcc: Upgrade 7.2 -> 7.3
  • gdbm: 1.13 -> 1.14.1
  • gdb: Upgrade to 8.0.1
  • gdk-pixbuf: update to 2.36.11
  • git: 2.13.3 -> 2.16.1
  • glew: update to 2.1.0
  • glib-2.0: upgrade to version 2.54.3
  • glibc: Upgrade to 2.27 release + bugfixes
  • glib-networking: update to 2.54.1
  • gnome-desktop3: Update to 3.26.2
  • gnupg: upgrade to 2.2.4
  • gnutls: update to 3.6.1
  • gobject-introspection: update to 1.54.1
  • go-dep: Upgrade to 0.4.1
  • go: add 1.10.1
  • go: Upgrade 1.9 to 1.9.4 stable release
  • gpgme: 1.9.0 -> 1.10.0
  • gsettings-desktop-schemas: update to 3.24.1
  • gst-examples: upgrade to latest revision
  • gstreamer1.0-libav: upgrade to version 1.12.3
  • gstreamer1.0-omx: upgrade to version 1.12.3
  • gstreamer1.0-plugins-bad: upgrade to version 1.12.3
  • gstreamer1.0-plugins-base: upgrade to version 1.12.3
  • gstreamer1.0-plugins-good: upgrade to version 1.12.3
  • gstreamer1.0-plugins-ugly: upgrade to version 1.12.3
  • gstreamer1.0-python: upgrade to version 1.12.3
  • gstreamer1.0-rtsp-server: upgrade to version 1.12.3
  • gstreamer1.0: upgrade to version 1.12.4
  • gstreamer1.0-vaapi: upgrade to version 1.12.3
  • gtk+3: upgrade to version 3.22.28
  • gtk-doc: update to 1.27
  • gtk-icon-utils-native: upgrade to version 3.22.28
  • gtk+: upgrade to version 2.24.32
  • gzip: 1.8 -> 1.9
  • harfbuzz: upgrade to version 1.7.5
  • hdparm: 9.52 -> 9.53
  • help2man-native: 1.47.4 -> 1.47.5
  • hicolor-icon-theme: update to 0.17
  • i2c-tools: upgrade to 4.0
  • icu: 60.1 -> 60.2
  • icu: update to 60.1
  • iproute2: upgrade to 4.14.1
  • iptables: 1.6.1 -> 1.6.2
  • iputils: update to 20161105
  • iso-codes: update to 3.77
  • iw: 4.9 -> 4.14
  • json-c: update to 0.13
  • json-glib: update to 1.4.2
  • kexec-tools: 2.0.14 -> 2.0.16
  • kmod: 24 -> 25
  • lame: 3.99.5 -> 3.100
  • less: 487 -> 529
  • libassuan: update to 2.5.1
  • libatomic-ops: upgrade to 7.6.2
  • libbsd: update to 0.8.7
  • libcheck: Upgrade to 0.12.0
  • libdnf: update to 0.11.1
  • libdrm: upgrade to 2.4.91
  • libepoxy: update to version 1.5.0
  • liberror-perl: 0.17024 -> 0.17025
  • libevdev: upgrade to version 1.5.8
  • libgcrypt: update from version 1.8.0 to 1.8.2
  • libgudev: update to 232
  • libinput: upgrade to version 1.9.4
  • libjpeg-turbo: upgrade to 1.5.3
  • libmpc: upgrade to 1.1.0
  • libnl: 3.2.29 -> 3.4.0
  • libogg: upgrade to 1.3.3
  • libpciaccess: update to 0.14
  • libpcre2: update to 10.30
  • libpng: Upgrade 1.6.31 -> 1.6.34
  • libproxy: upgrade to 0.4.15
  • librepo: update to 1.8.1
  • librsvg: update to 2.40.20
  • libsdl2: 2.0.5 -> 2.0.8
  • libsolv: upgrade to version 0.6.32
  • libsoup-2.4: upgrade to version 2.60.3
  • libtasn1: upgrade to version 4.13
  • libunistring: update version to 0.9.9
  • libunwind: 1.2 -> 1.2.1
  • liburcu: update to 0.10.1
  • liburi-perl: upgrade 1.72 -> 1.73
  • libva: upgrade to 2.1.0
  • libva-utils: upgrade to 2.1.0
  • libwebp: update to 0.6.1
  • libxcursor: update to 1.1.15 plus sec fixes
  • libxfont2: update to 2.0.3 with sec fix
  • libxfont: update 1.5.4 with sec fix
  • libxkbcommon: update to 0.8.0
  • libxml2: 2.9.4 -> 2.9.7
  • libxml-namespacesupport-perl: upgrade to 1.12.9
  • libxslt: update to 1.1.32
  • lighttpd: update to 1.4.48
  • linux-firmware: upgrade to 4c0bf11 revision
  • linux-libc-headers: update to 4.15.7
  • linux-yocto/4.12: update to v4.12.21
  • linux-yocto/4.14: update to v4.14.30
  • linux-yocto/4.15: update to v4.15.13
  • linux-yocto-dev: update to v4.16-rcX
  • llvm: Upgrade to 6.0 release
  • logrotate: 3.12.3 -> 3.13.0
  • lsbinitscripts: update to 9.79
  • lsb: update to 5.0
  • ltp: bump to release 20180118
  • lttng-modules: update to v2.10.5 for kernel 4.15
  • lttng-ust: upgrade 2.9.1 -> 2.10.1
  • man-db: replace the outdated man implementation
  • man-pages: 4.11 -> 4.14
  • mc: upgrade to 4.8.20
  • mesa: Upgrade to 17.3.8
  • meson: upgrade to 0.44.1
  • mmc-utils: Upgrade to latest revision (7bcad17117)
  • mpg123: update to 1.25.10
  • mtd-utils: Bump revision to 1bfee866
  • musl: Update to latest master (618b18c78e)
  • nasm: upgrade 2.13.01 -> 2.13.03
  • ncurses: 6.0+20170715 -> 6.0+20171125
  • nettle: update to 3.4 and cleanup
  • ninja: Upgrade from 1.7.2 to major release 1.8.2
  • nspr: update to 4.19
  • nss: update to 3.35
  • ofono: upgrade to version 1.22
  • openssh: update to 7.6
  • openssl: update 1.1 version to 1.1.0h
  • openssl: update to 1.0.2o
  • opkg: upgrade to version 0.3.6
  • opkg-utils: upgrade to version 0.3.6
  • orc: upgrade to 0.4.28
  • pango: upgrade to version 1.40.14
  • patch:2.7.5 -> 2.7.6
  • pciutils: upgrade to 3.5.6
  • piglit: upgrade to current git master
  • pigz: 2.3.4 -> 2.4
  • pinentry: update to 1.1.0
  • pkgconf: upgrade to version 1.4.2
  • powertop: update to v2.9
  • prelink_git.bb: Update recipe to newest commit
  • pseudo: update to latest master
  • psmisc: update to 23.0
  • ptest-runner: Upgrade to 2.1.1
  • pulseaudio: 10.0 -> 11.1
  • puzzles: upgrade to latest revision
  • python3-dbus: update to version 1.2.6
  • python3-git: update to 2.1.8
  • python3-native: update to version 3.5.5 to fix security issues
  • python3-numpy: upgrade to 1.13.3
  • python3-pip: update to 9.0.2
  • python3-pycairo: update to 1.15.6
  • python3-pygobject: update to 3.28.1
  • python3-six: update to 1.11.0
  • python3: update to version 3.5.5 to fix security issues
  • python-gitdb: upgrade to v2.0.3
  • python-numpy: update to 1.14.2
  • python-scons: upgrade to v3.0.1
  • python*-setuptools: update to 39.0.0
  • python: Upgrade both python and python-native to 2.7.14
  • qemu: upgrade to 2.11.1
  • quota: upgrade to 4.04
  • rpm: update to 4.14.1
  • rsync: update to 3.1.3
  • ruby: upgrade to 2.5.0
  • screen: upgrade to version 4.6.2
  • shared-mime-info: update to 1.9
  • slang: 2.3.1a -> 2.3.2
  • sqlite3: upgrade to version 3.22.0
  • strace: 4.18 -> 4.20
  • subversion: upgrade 1.9.6 -> 1.9.7
  • sudo: upgrade to 1.8.22
  • sysprof: update to 3.26.1
  • sysstat: upgrade to 11.7.1
  • systemd-bootchart: upgrade to v233
  • systemd-boot: upgrade to 237
  • systemd: upgrade to 237
  • systemtap: 3.1 -> 3.2
  • tar: 1.29 -> 1.30
  • tcl: update to 8.6.8
  • texinfo: upgrade to 6.5
  • tiff: 4.0.8 -> 4.0.9
  • time: 1.7 -> 1.8
  • trace-cmd: update to 2.7
  • tzcode-native: update to 2018d
  • tzdata: update to 2018d
  • u-boot: Upgrade to 2018.01 release
  • usbutils: 008 -> 009
  • util-linux: upgrade to 2.31
  • vala: update to 0.38.8
  • vte: upgrade to version 0.50.2
  • vulkan: upgrade to version 1.0.65.2
  • wayland : Bump to version 1.14.0
  • wayland-protocols: upgrade to 1.13
  • webkitgtk: update to 2.18.6
  • weston: Bump version to 3.0.0
  • wget: update to 1.19.4
  • x264: upgrade to latest revision
  • xdg-utils: update to 1.1.2
  • xf86-input-libinput: update to 0.26.0
  • xkeyboard-config: upgrade to 2.22
  • xorg-xserver: update to 1.19.6