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