migration-1.4.rst 8.2 KB

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