1.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
2
3Release 2.7 (warrior)
4=====================
5
6This section provides migration information for moving to the Yocto
7Project 2.7 Release (codename "warrior") from the prior release.
8
9.. _migration-2.7-bitbake-changes:
10
11BitBake Changes
12---------------
13
14The following changes have been made to BitBake:
15
16-  BitBake now checks anonymous Python functions and pure Python
17   functions (e.g. ``def funcname:``) in the metadata for tab
18   indentation. If found, BitBake produces a warning.
19
20-  BitBake now checks
21   :term:`BBFILE_COLLECTIONS` for duplicate
22   entries and triggers an error if any are found.
23
24.. _migration-2.7-eclipse-support-dropped:
25
26Eclipse Support Removed
27-----------------------
28
29Support for the Eclipse IDE has been removed. Support continues for
30those releases prior to 2.7 that did include support. The 2.7 release
31does not include the Eclipse Yocto plugin.
32
33.. _migration-2.7-qemu-native-splits-system-and-user-mode-parts:
34
35``qemu-native`` Splits the System and User-Mode Parts
36-----------------------------------------------------
37
38The system and user-mode parts of ``qemu-native`` are now split.
39``qemu-native`` provides the user-mode components and
40``qemu-system-native`` provides the system components. If you have
41recipes that depend on QEMU's system emulation functionality at build
42time, they should now depend upon ``qemu-system-native`` instead of
43``qemu-native``.
44
45.. _migration-2.7-upstream-tracking.inc-removed:
46
47The ``upstream-tracking.inc`` File Has Been Removed
48---------------------------------------------------
49
50The previously deprecated ``upstream-tracking.inc`` file is now removed.
51Any ``UPSTREAM_TRACKING*`` variables are now set in the corresponding
52recipes instead.
53
54Remove any references you have to the ``upstream-tracking.inc`` file in
55your configuration.
56
57.. _migration-2.7-distro-features-libc-removed:
58
59The ``DISTRO_FEATURES_LIBC`` Variable Has Been Removed
60------------------------------------------------------
61
62The ``DISTRO_FEATURES_LIBC`` variable is no longer used. The ability to
63configure glibc using kconfig has been removed for quite some time
64making the ``libc-*`` features set no longer effective.
65
66Remove any references you have to ``DISTRO_FEATURES_LIBC`` in your own
67layers.
68
69.. _migration-2.7-license-values:
70
71License Value Corrections
72-------------------------
73
74The following corrections have been made to the
75:term:`LICENSE` values set by recipes:
76
77- *socat*: Corrected :term:`LICENSE` to be "GPLv2" rather than "GPLv2+".
78- *libgfortran*: Set license to "GPL-3.0-with-GCC-exception".
79- *elfutils*: Removed "Elfutils-Exception" and set to "GPLv2" for shared libraries
80
81.. _migration-2.7-packaging-changes:
82
83Packaging Changes
84-----------------
85
86This section provides information about packaging changes.
87
88-  ``bind``: The ``nsupdate`` binary has been moved to the
89   ``bind-utils`` package.
90
91-  Debug split: The default debug split has been changed to create
92   separate source packages (i.e. ``package_name-dbg`` and
93   ``package_name-src``). If you are currently using ``dbg-pkgs`` in
94   :term:`IMAGE_FEATURES` to bring in debug
95   symbols and you still need the sources, you must now also add
96   ``src-pkgs`` to :term:`IMAGE_FEATURES`. Source packages remain in the
97   target portion of the SDK by default, unless you have set your own
98   value for :term:`SDKIMAGE_FEATURES` that
99   does not include ``src-pkgs``.
100
101-  Mount all using ``util-linux``: ``/etc/default/mountall`` has moved
102   into the -mount sub-package.
103
104-  Splitting binaries using ``util-linux``: ``util-linux`` now splits
105   each binary into its own package for fine-grained control. The main
106   ``util-linux`` package pulls in the individual binary packages using
107   the :term:`RRECOMMENDS` and
108   :term:`RDEPENDS` variables. As a result, existing
109   images should not see any changes assuming
110   :term:`NO_RECOMMENDATIONS` is not set.
111
112-  ``netbase/base-files``: ``/etc/hosts`` has moved from ``netbase`` to
113   ``base-files``.
114
115-  ``tzdata``: The main package has been converted to an empty meta
116   package that pulls in all ``tzdata`` packages by default.
117
118-  ``lrzsz``: This package has been removed from
119   ``packagegroup-self-hosted`` and
120   ``packagegroup-core-tools-testapps``. The X/Y/ZModem support is less
121   likely to be needed on modern systems. If you are relying on these
122   packagegroups to include the ``lrzsz`` package in your image, you now
123   need to explicitly add the package.
124
125.. _migration-2.7-removed-recipes:
126
127Removed Recipes
128---------------
129
130The following recipes have been removed:
131
132- *gcc*: Drop version 7.3 recipes. Version 8.3 now remains.
133- *linux-yocto*: Drop versions 4.14 and 4.18 recipes. Versions 4.19 and 5.0 remain.
134- *go*: Drop version 1.9 recipes. Versions 1.11 and 1.12 remain.
135- *xvideo-tests*: Became obsolete.
136- *libart-lgpl*: Became obsolete.
137- *gtk-icon-utils-native*: These tools are now provided by gtk+3-native
138- *gcc-cross-initial*: No longer needed. gcc-cross/gcc-crosssdk is now used instead.
139- *gcc-crosssdk-initial*: No longer needed. gcc-cross/gcc-crosssdk is now used instead.
140- *glibc-initial*: Removed because the benefits of having it for site_config are currently outweighed by the cost of building the recipe.
141
142.. _migration-2.7-removed-classes:
143
144Removed Classes
145---------------
146
147The following classes have been removed:
148
149- *distutils-tools*: This class was never used.
150- *bugzilla.bbclass*: Became obsolete.
151- *distrodata*: This functionally has been replaced by a more modern tinfoil-based implementation.
152
153.. _migration-2.7-miscellaneous-changes:
154
155Miscellaneous Changes
156---------------------
157
158The following miscellaneous changes occurred:
159
160-  The ``distro`` subdirectory of the Poky repository has been removed
161   from the top-level ``scripts`` directory.
162
163-  Perl now builds for the target using
164   `perl-cross <https://arsv.github.io/perl-cross/>`_ for better
165   maintainability and improved build performance. This change should
166   not present any problems unless you have heavily customized your Perl
167   recipe.
168
169-  ``arm-tunes``: Removed the "-march" option if mcpu is already added.
170
171-  ``update-alternatives``: Convert file renames to
172   :term:`PACKAGE_PREPROCESS_FUNCS`
173
174-  ``base/pixbufcache``: Obsolete ``sstatecompletions`` code has been
175   removed.
176
177-  :ref:`ref-classes-native` class: :term:`RDEPENDS` handling has been enabled.
178
179-  ``inetutils``: This recipe has rsh disabled.
180
181
182