blob: 6db2a035b8a855a3e6f83ac8df1d32e9e73407b9 [file] [log] [blame]
Andrew Geissler517393d2023-01-13 08:55:19 -06001.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
2
Andrew Geissler09036742021-06-25 14:25:14 -05003Release 1.4 (dylan)
4===================
Andrew Geisslerc9f78652020-09-18 14:11:35 -05005
6This section provides migration information for moving to the Yocto
Andrew Geissler3b8a17c2021-04-15 15:55:55 -05007Project 1.4 Release (codename "dylan") from the prior release.
Andrew Geisslerc9f78652020-09-18 14:11:35 -05008
9.. _migration-1.4-bitbake:
10
11BitBake
12-------
13
14Differences include the following:
15
16- *Comment Continuation:* If a comment ends with a line continuation
Andrew Geissler4c19ea12020-10-27 13:52:24 -050017 (\\) character, then the next line must also be a comment. Any
Andrew Geisslerc9f78652020-09-18 14:11:35 -050018 instance where this is not the case, now triggers a warning. You must
19 either remove the continuation character, or be sure the next line is
20 a comment.
21
22- *Package Name Overrides:* The runtime package specific variables
23 :term:`RDEPENDS`,
24 :term:`RRECOMMENDS`,
25 :term:`RSUGGESTS`,
26 :term:`RPROVIDES`,
27 :term:`RCONFLICTS`,
28 :term:`RREPLACES`, :term:`FILES`,
29 :term:`ALLOW_EMPTY`, and the pre, post, install,
30 and uninstall script functions ``pkg_preinst``, ``pkg_postinst``,
31 ``pkg_prerm``, and ``pkg_postrm`` should always have a package name
32 override. For example, use ``RDEPENDS_${PN}`` for the main package
Andrew Geissler09036742021-06-25 14:25:14 -050033 instead of :term:`RDEPENDS`. BitBake uses more strict checks when it
Andrew Geisslerc9f78652020-09-18 14:11:35 -050034 parses recipes.
35
36.. _migration-1.4-build-behavior:
37
38Build Behavior
39--------------
40
41Differences include the following:
42
43- *Shared State Code:* The shared state code has been optimized to
44 avoid running unnecessary tasks. For example, the following no longer
Andrew Geisslerc926e172021-05-07 16:11:35 -050045 populates the target sysroot since that is not necessary::
Andrew Geisslerc9f78652020-09-18 14:11:35 -050046
47 $ bitbake -c rootfs some-image
48
49 Instead, the system just needs to extract the
50 output package contents, re-create the packages, and construct the
51 root filesystem. This change is unlikely to cause any problems unless
52 you have missing declared dependencies.
53
54- *Scanning Directory Names:* When scanning for files in
55 :term:`SRC_URI`, the build system now uses
56 :term:`FILESOVERRIDES` instead of
57 :term:`OVERRIDES` for the directory names. In
Andrew Geissler09036742021-06-25 14:25:14 -050058 general, the values previously in :term:`OVERRIDES` are now in
59 :term:`FILESOVERRIDES` as well. However, if you relied upon an additional
60 value you previously added to :term:`OVERRIDES`, you might now need to
61 add it to :term:`FILESOVERRIDES` unless you are already adding it through
Andrew Geisslerc9f78652020-09-18 14:11:35 -050062 the :term:`MACHINEOVERRIDES` or
63 :term:`DISTROOVERRIDES` variables, as
64 appropriate. For more related changes, see the
Andrew Geissler09036742021-06-25 14:25:14 -050065 ":ref:`migration-guides/migration-1.4:variables`" section.
Andrew Geisslerc9f78652020-09-18 14:11:35 -050066
67.. _migration-1.4-proxies-and-fetching-source:
68
69Proxies and Fetching Source
70---------------------------
71
72A new ``oe-git-proxy`` script has been added to replace previous methods
73of handling proxies and fetching source from Git. See the
74``meta-yocto/conf/site.conf.sample`` file for information on how to use
75this script.
76
77.. _migration-1.4-custom-interfaces-file-netbase-change:
78
79Custom Interfaces File (netbase change)
80---------------------------------------
81
82If you have created your own custom ``etc/network/interfaces`` file by
83creating an append file for the ``netbase`` recipe, you now need to
84create an append file for the ``init-ifupdown`` recipe instead, which
85you can find in the :term:`Source Directory` at
86``meta/recipes-core/init-ifupdown``. For information on how to use
87append files, see the
Andrew Geissler517393d2023-01-13 08:55:19 -060088":ref:`dev-manual/layers:appending other layers metadata with your layer`"
Andrew Geisslerc9f78652020-09-18 14:11:35 -050089section in the Yocto Project Development Tasks Manual.
90
91.. _migration-1.4-remote-debugging:
92
93Remote Debugging
94----------------
95
96Support for remote debugging with the Eclipse IDE is now separated into
97an image feature (``eclipse-debug``) that corresponds to the
98``packagegroup-core-eclipse-debug`` package group. Previously, the
99debugging feature was included through the ``tools-debug`` image
100feature, which corresponds to the ``packagegroup-core-tools-debug``
101package group.
102
103.. _migration-1.4-variables:
104
105Variables
106---------
107
108The following variables have changed:
109
Andrew Geissler09036742021-06-25 14:25:14 -0500110- :term:`SANITY_TESTED_DISTROS`: This variable now uses a distribution
Andrew Geisslerc9f78652020-09-18 14:11:35 -0500111 ID, which is composed of the host distributor ID followed by the
112 release. Previously,
113 :term:`SANITY_TESTED_DISTROS` was
114 composed of the description field. For example, "Ubuntu 12.10"
115 becomes "Ubuntu-12.10". You do not need to worry about this change if
116 you are not specifically setting this variable, or if you are
117 specifically setting it to "".
118
Andrew Geissler09036742021-06-25 14:25:14 -0500119- :term:`SRC_URI`: The ``${``\ :term:`PN`\ ``}``,
Andrew Geisslerc9f78652020-09-18 14:11:35 -0500120 ``${``\ :term:`PF`\ ``}``,
121 ``${``\ :term:`P`\ ``}``, and ``FILE_DIRNAME`` directories
122 have been dropped from the default value of the
123 :term:`FILESPATH` variable, which is used as the
124 search path for finding files referred to in
125 :term:`SRC_URI`. If you have a recipe that relied upon
126 these directories, which would be unusual, then you will need to add
127 the appropriate paths within the recipe or, alternatively, rearrange
Andrew Geissler4c19ea12020-10-27 13:52:24 -0500128 the files. The most common locations are still covered by ``${``\ :term:`BP`\ ``}``,
129 ``${``\ :term:`BPN`\ ``}``, and "files", which all remain in the default value of
Andrew Geisslerc9f78652020-09-18 14:11:35 -0500130 :term:`FILESPATH`.
131
132.. _migration-target-package-management-with-rpm:
133
134Target Package Management with RPM
135----------------------------------
136
137If runtime package management is enabled and the RPM backend is
138selected, Smart is now installed for package download, dependency
139resolution, and upgrades instead of Zypper. For more information on how
Andrew Geisslerc926e172021-05-07 16:11:35 -0500140to use Smart, run the following command on the target::
Andrew Geisslerc9f78652020-09-18 14:11:35 -0500141
142 smart --help
143
144.. _migration-1.4-recipes-moved:
145
146Recipes Moved
147-------------
148
149The following recipes were moved from their previous locations because
150they are no longer used by anything in the OpenEmbedded-Core:
151
152- ``clutter-box2d``: Now resides in the ``meta-oe`` layer.
153
154- ``evolution-data-server``: Now resides in the ``meta-gnome`` layer.
155
156- ``gthumb``: Now resides in the ``meta-gnome`` layer.
157
158- ``gtkhtml2``: Now resides in the ``meta-oe`` layer.
159
160- ``gupnp``: Now resides in the ``meta-multimedia`` layer.
161
162- ``gypsy``: Now resides in the ``meta-oe`` layer.
163
164- ``libcanberra``: Now resides in the ``meta-gnome`` layer.
165
166- ``libgdata``: Now resides in the ``meta-gnome`` layer.
167
168- ``libmusicbrainz``: Now resides in the ``meta-multimedia`` layer.
169
170- ``metacity``: Now resides in the ``meta-gnome`` layer.
171
172- ``polkit``: Now resides in the ``meta-oe`` layer.
173
174- ``zeroconf``: Now resides in the ``meta-networking`` layer.
175
176.. _migration-1.4-removals-and-renames:
177
178Removals and Renames
179--------------------
180
181The following list shows what has been removed or renamed:
182
183- ``evieext``: Removed because it has been removed from ``xserver``
184 since 2008.
185
186- *Gtk+ DirectFB:* Removed support because upstream Gtk+ no longer
187 supports it as of version 2.18.
188
189- ``libxfontcache / xfontcacheproto``: Removed because they were
190 removed from the Xorg server in 2008.
191
192- ``libxp / libxprintapputil / libxprintutil / printproto``: Removed
193 because the XPrint server was removed from Xorg in 2008.
194
195- ``libxtrap / xtrapproto``: Removed because their functionality was
196 broken upstream.
197
198- *linux-yocto 3.0 kernel:* Removed with linux-yocto 3.8 kernel being
199 added. The linux-yocto 3.2 and linux-yocto 3.4 kernels remain as part
200 of the release.
201
202- ``lsbsetup``: Removed with functionality now provided by
203 ``lsbtest``.
204
205- ``matchbox-stroke``: Removed because it was never more than a
206 proof-of-concept.
207
208- ``matchbox-wm-2 / matchbox-theme-sato-2``: Removed because they are
209 not maintained. However, ``matchbox-wm`` and ``matchbox-theme-sato``
210 are still provided.
211
212- ``mesa-dri``: Renamed to ``mesa``.
213
214- ``mesa-xlib``: Removed because it was no longer useful.
215
216- ``mutter``: Removed because nothing ever uses it and the recipe is
217 very old.
218
219- ``orinoco-conf``: Removed because it has become obsolete.
220
221- ``update-modules``: Removed because it is no longer used. The
222 kernel module ``postinstall`` and ``postrm`` scripts can now do the
223 same task without the use of this script.
224
225- ``web``: Removed because it is not maintained. Superseded by
226 ``web-webkit``.
227
228- ``xf86bigfontproto``: Removed because upstream it has been disabled
229 by default since 2007. Nothing uses ``xf86bigfontproto``.
230
231- ``xf86rushproto``: Removed because its dependency in ``xserver``
232 was spurious and it was removed in 2005.
233
234- ``zypper / libzypp / sat-solver``: Removed and been functionally
235 replaced with Smart (``python-smartpm``) when RPM packaging is used
236 and package management is enabled on the target.
237