123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- .. SPDX-License-Identifier: CC-BY-SA-2.0-UK
- Moving to the Yocto Project 1.3 Release
- =======================================
- This section provides migration information for moving to the Yocto
- Project 1.3 Release from the prior release.
- .. _1.3-local-configuration:
- Local Configuration
- -------------------
- Differences include changes for
- :term:`SSTATE_MIRRORS` and ``bblayers.conf``.
- .. _migration-1.3-sstate-mirrors:
- SSTATE_MIRRORS
- ~~~~~~~~~~~~~~
- The shared state cache (sstate-cache), as pointed to by
- :term:`SSTATE_DIR`, by default now has two-character
- subdirectories to prevent issues arising from too many files in the same
- directory. Also, native sstate-cache packages, which are built to run on
- the host system, will go into a subdirectory named using the distro ID
- string. If you copy the newly structured sstate-cache to a mirror
- location (either local or remote) and then point to it in
- :term:`SSTATE_MIRRORS`, you need to append "PATH"
- to the end of the mirror URL so that the path used by BitBake before the
- mirror substitution is appended to the path used to access the mirror.
- Here is an example: ::
- SSTATE_MIRRORS = "file://.* http://someserver.tld/share/sstate/PATH"
- .. _migration-1.3-bblayers-conf:
- bblayers.conf
- ~~~~~~~~~~~~~
- The ``meta-yocto`` layer consists of two parts that correspond to the
- Poky reference distribution and the reference hardware Board Support
- Packages (BSPs), respectively: ``meta-yocto`` and ``meta-yocto-bsp``.
- When running BitBake for the first time after upgrading, your
- ``conf/bblayers.conf`` file will be updated to handle this change and
- you will be asked to re-run or restart for the changes to take effect.
- .. _1.3-recipes:
- Recipes
- -------
- Differences include changes for the following:
- .. _migration-1.3-python-function-whitespace:
- Python Function Whitespace
- ~~~~~~~~~~~~~~~~~~~~~~~~~~
- All Python functions must now use four spaces for indentation.
- Previously, an inconsistent mix of spaces and tabs existed, which made
- extending these functions using ``_append`` or ``_prepend`` complicated
- given that Python treats whitespace as syntactically significant. If you
- are defining or extending any Python functions (e.g.
- ``populate_packages``, ``do_unpack``, ``do_patch`` and so forth) in
- custom recipes or classes, you need to ensure you are using consistent
- four-space indentation.
- .. _migration-1.3-proto=-in-src-uri:
- proto= in SRC_URI
- ~~~~~~~~~~~~~~~~~
- Any use of ``proto=`` in :term:`SRC_URI` needs to be
- changed to ``protocol=``. In particular, this applies to the following
- URIs:
- - ``svn://``
- - ``bzr://``
- - ``hg://``
- - ``osc://``
- Other URIs were already using ``protocol=``. This change improves
- consistency.
- .. _migration-1.3-nativesdk:
- nativesdk
- ~~~~~~~~~
- The suffix ``nativesdk`` is now implemented as a prefix, which
- simplifies a lot of the packaging code for ``nativesdk`` recipes. All
- custom ``nativesdk`` recipes, which are relocatable packages that are
- native to :term:`SDK_ARCH`, and any references need to
- be updated to use ``nativesdk-*`` instead of ``*-nativesdk``.
- .. _migration-1.3-task-recipes:
- Task Recipes
- ~~~~~~~~~~~~
- "Task" recipes are now known as "Package groups" and have been renamed
- from ``task-*.bb`` to ``packagegroup-*.bb``. Existing references to the
- previous ``task-*`` names should work in most cases as there is an
- automatic upgrade path for most packages. However, you should update
- references in your own recipes and configurations as they could be
- removed in future releases. You should also rename any custom ``task-*``
- recipes to ``packagegroup-*``, and change them to inherit
- ``packagegroup`` instead of ``task``, as well as taking the opportunity
- to remove anything now handled by ``packagegroup.bbclass``, such as
- providing ``-dev`` and ``-dbg`` packages, setting
- :term:`LIC_FILES_CHKSUM`, and so forth. See the
- ":ref:`packagegroup.bbclass <ref-classes-packagegroup>`" section for
- further details.
- .. _migration-1.3-image-features:
- IMAGE_FEATURES
- ~~~~~~~~~~~~~~
- Image recipes that previously included "apps-console-core" in
- :term:`IMAGE_FEATURES` should now include "splash"
- instead to enable the boot-up splash screen. Retaining
- "apps-console-core" will still include the splash screen but generates a
- warning. The "apps-x11-core" and "apps-x11-games" ``IMAGE_FEATURES``
- features have been removed.
- .. _migration-1.3-removed-recipes:
- Removed Recipes
- ~~~~~~~~~~~~~~~
- The following recipes have been removed. For most of them, it is
- unlikely that you would have any references to them in your own
- :term:`Metadata`. However, you should check your metadata
- against this list to be sure:
- - ``libx11-trim``: Replaced by ``libx11``, which has a negligible
- size difference with modern Xorg.
- - ``xserver-xorg-lite``: Use ``xserver-xorg``, which has a negligible
- size difference when DRI and GLX modules are not installed.
- - ``xserver-kdrive``: Effectively unmaintained for many years.
- - ``mesa-xlib``: No longer serves any purpose.
- - ``galago``: Replaced by telepathy.
- - ``gail``: Functionality was integrated into GTK+ 2.13.
- - ``eggdbus``: No longer needed.
- - ``gcc-*-intermediate``: The build has been restructured to avoid
- the need for this step.
- - ``libgsmd``: Unmaintained for many years. Functionality now
- provided by ``ofono`` instead.
- - *contacts, dates, tasks, eds-tools*: Largely unmaintained PIM
- application suite. It has been moved to ``meta-gnome`` in
- ``meta-openembedded``.
- In addition to the previously listed changes, the ``meta-demoapps``
- directory has also been removed because the recipes in it were not being
- maintained and many had become obsolete or broken. Additionally, these
- recipes were not parsed in the default configuration. Many of these
- recipes are already provided in an updated and maintained form within
- the OpenEmbedded community layers such as ``meta-oe`` and
- ``meta-gnome``. For the remainder, you can now find them in the
- ``meta-extras`` repository, which is in the
- :yocto_git:`Source Repositories <>` at
- http://git.yoctoproject.org/cgit/cgit.cgi/meta-extras/.
- .. _1.3-linux-kernel-naming:
- Linux Kernel Naming
- -------------------
- The naming scheme for kernel output binaries has been changed to now
- include :term:`PE` as part of the filename:
- ::
- KERNEL_IMAGE_BASE_NAME ?= "${KERNEL_IMAGETYPE}-${PE}-${PV}-${PR}-${MACHINE}-${DATETIME}"
- Because the ``PE`` variable is not set by default, these binary files
- could result with names that include two dash characters. Here is an
- example: ::
- bzImage--3.10.9+git0+cd502a8814_7144bcc4b8-r0-qemux86-64-20130830085431.bin
|