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