diff options
author | Nicolas Dechesne <nicolas.dechesne@linaro.org> | 2020-11-20 20:17:33 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-01-04 10:55:00 +0000 |
commit | fa0cb4d34b1073f215fa3c680f2316208739d53d (patch) | |
tree | ba89c1f4289fd6456af4409a6a19caf6548dfb9c /documentation/ref-manual/migration-1.8.rst | |
parent | a038e58f3cd82c56102444bdc5ac76c9f1550a0d (diff) | |
download | poky-fa0cb4d34b1073f215fa3c680f2316208739d53d.tar.gz |
sphinx: import docs
The Yocto Project docs was migrated from Docbook to Sphinx in YP
3.2. This 3.1 is an LTS release, and since 3.1 docs are 'close to'
the docs in 3.2, we agreed to backport sphinx docs onto 3.1.
This first patch brings all changes done in 3.2 until:
7f64574f7 README: include detailed information about sphinx
There are other changes after this commit, but they will be
selectively backported in individual patches.
This patch was generated with the following command:
git cherry-pick -n \
$(git log --reverse --oneline \
ac352ad7f95db7eeacb53c2778caa31800bd7c26..7f64574f7 \
| cut -f1 -d' ')
The following commits were applies in the dunfell docs, but not in
master, so they were first reverted (and squashed into this change). A
commit will reintroduce the content from these patches in the Sphinx
files in a followup patch.
069c27574 Documenation: Prepared for the 3.1.1 release
bd140f0f9 Documentation: Add 3.1.1 version updates missing from previous commit
17cc71a8f Documenation: Prepared for the 3.1.2 release
1a69e2c02 Documenation: Prepared for the 3.1.3 release
8910ac1c7 Documenation: Prepared for the 3.1.4 release
(From yocto-docs rev: c25fe058b88b893b0d146f3ed27320b47cdec236)
Signed-off-by: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'documentation/ref-manual/migration-1.8.rst')
-rw-r--r-- | documentation/ref-manual/migration-1.8.rst | 183 |
1 files changed, 183 insertions, 0 deletions
diff --git a/documentation/ref-manual/migration-1.8.rst b/documentation/ref-manual/migration-1.8.rst new file mode 100644 index 0000000000..d601e6b63b --- /dev/null +++ b/documentation/ref-manual/migration-1.8.rst | |||
@@ -0,0 +1,183 @@ | |||
1 | Moving to the Yocto Project 1.8 Release | ||
2 | ======================================= | ||
3 | |||
4 | This section provides migration information for moving to the Yocto | ||
5 | Project 1.8 Release from the prior release. | ||
6 | |||
7 | .. _migration-1.8-removed-recipes: | ||
8 | |||
9 | Removed Recipes | ||
10 | --------------- | ||
11 | |||
12 | The following recipes have been removed: | ||
13 | |||
14 | - ``owl-video``: Functionality replaced by ``gst-player``. | ||
15 | |||
16 | - ``gaku``: Functionality replaced by ``gst-player``. | ||
17 | |||
18 | - ``gnome-desktop``: This recipe is now available in ``meta-gnome`` and | ||
19 | is no longer needed. | ||
20 | |||
21 | - ``gsettings-desktop-schemas``: This recipe is now available in | ||
22 | ``meta-gnome`` and is no longer needed. | ||
23 | |||
24 | - ``python-argparse``: The ``argparse`` module is already provided in | ||
25 | the default Python distribution in a package named | ||
26 | ``python-argparse``. Consequently, the separate ``python-argparse`` | ||
27 | recipe is no longer needed. | ||
28 | |||
29 | - ``telepathy-python, libtelepathy, telepathy-glib, telepathy-idle, telepathy-mission-control``: | ||
30 | All these recipes have moved to ``meta-oe`` and are consequently no | ||
31 | longer needed by any recipes in OpenEmbedded-Core. | ||
32 | |||
33 | - ``linux-yocto_3.10`` and ``linux-yocto_3.17``: Support for the | ||
34 | linux-yocto 3.10 and 3.17 kernels has been dropped. Support for the | ||
35 | 3.14 kernel remains, while support for 3.19 kernel has been added. | ||
36 | |||
37 | - ``poky-feed-config-opkg``: This recipe has become obsolete and is no | ||
38 | longer needed. Use ``distro-feed-config`` from ``meta-oe`` instead. | ||
39 | |||
40 | - ``libav 0.8.x``: ``libav 9.x`` is now used. | ||
41 | |||
42 | - ``sed-native``: No longer needed. A working version of ``sed`` is | ||
43 | expected to be provided by the host distribution. | ||
44 | |||
45 | .. _migration-1.8-bluez: | ||
46 | |||
47 | BlueZ 4.x / 5.x Selection | ||
48 | ------------------------- | ||
49 | |||
50 | Proper built-in support for selecting BlueZ 5.x in preference to the | ||
51 | default of 4.x now exists. To use BlueZ 5.x, simply add "bluez5" to your | ||
52 | :term:`DISTRO_FEATURES` value. If you had | ||
53 | previously added append files (``*.bbappend``) to make this selection, | ||
54 | you can now remove them. | ||
55 | |||
56 | Additionally, a ``bluetooth`` class has been added to make selection of | ||
57 | the appropriate bluetooth support within a recipe a little easier. If | ||
58 | you wish to make use of this class in a recipe, add something such as | ||
59 | the following: :: | ||
60 | |||
61 | inherit bluetooth | ||
62 | PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)}" | ||
63 | PACKAGECONFIG[bluez4] = "--enable-bluetooth,--disable-bluetooth,bluez4" | ||
64 | PACKAGECONFIG[bluez5] = "--enable-bluez5,--disable-bluez5,bluez5" | ||
65 | |||
66 | .. _migration-1.8-kernel-build-changes: | ||
67 | |||
68 | Kernel Build Changes | ||
69 | -------------------- | ||
70 | |||
71 | The kernel build process was changed to place the source in a common | ||
72 | shared work area and to place build artifacts separately in the source | ||
73 | code tree. In theory, migration paths have been provided for most common | ||
74 | usages in kernel recipes but this might not work in all cases. In | ||
75 | particular, users need to ensure that ``${S}`` (source files) and | ||
76 | ``${B}`` (build artifacts) are used correctly in functions such as | ||
77 | :ref:`ref-tasks-configure` and | ||
78 | :ref:`ref-tasks-install`. For kernel recipes that do not | ||
79 | inherit from ``kernel-yocto`` or include ``linux-yocto.inc``, you might | ||
80 | wish to refer to the ``linux.inc`` file in the ``meta-oe`` layer for the | ||
81 | kinds of changes you need to make. For reference, here is the | ||
82 | `commit <http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes-kernel/linux/linux.inc?id=fc7132ede27ac67669448d3d2845ce7d46c6a1ee>`__ | ||
83 | where the ``linux.inc`` file in ``meta-oe`` was updated. | ||
84 | |||
85 | Recipes that rely on the kernel source code and do not inherit the | ||
86 | module classes might need to add explicit dependencies on the | ||
87 | ``do_shared_workdir`` kernel task, for example: :: | ||
88 | |||
89 | do_configure[depends] += "virtual/kernel:do_shared_workdir" | ||
90 | |||
91 | .. _migration-1.8-ssl: | ||
92 | |||
93 | SSL 3.0 is Now Disabled in OpenSSL | ||
94 | ---------------------------------- | ||
95 | |||
96 | SSL 3.0 is now disabled when building OpenSSL. Disabling SSL 3.0 avoids | ||
97 | any lingering instances of the POODLE vulnerability. If you feel you | ||
98 | must re-enable SSL 3.0, then you can add an append file (``*.bbappend``) | ||
99 | for the ``openssl`` recipe to remove "-no-ssl3" from | ||
100 | :term:`EXTRA_OECONF`. | ||
101 | |||
102 | .. _migration-1.8-default-sysroot-poisoning: | ||
103 | |||
104 | Default Sysroot Poisoning | ||
105 | ------------------------- | ||
106 | |||
107 | ``gcc's`` default sysroot and include directories are now "poisoned". In | ||
108 | other words, the sysroot and include directories are being redirected to | ||
109 | a non-existent location in order to catch when host directories are | ||
110 | being used due to the correct options not being passed. This poisoning | ||
111 | applies both to the cross-compiler used within the build and to the | ||
112 | cross-compiler produced in the SDK. | ||
113 | |||
114 | If this change causes something in the build to fail, it almost | ||
115 | certainly means the various compiler flags and commands are not being | ||
116 | passed correctly to the underlying piece of software. In such cases, you | ||
117 | need to take corrective steps. | ||
118 | |||
119 | .. _migration-1.8-rebuild-improvements: | ||
120 | |||
121 | Rebuild Improvements | ||
122 | -------------------- | ||
123 | |||
124 | Changes have been made to the :ref:`base <ref-classes-base>`, | ||
125 | :ref:`autotools <ref-classes-autotools>`, and | ||
126 | :ref:`cmake <ref-classes-cmake>` classes to clean out generated files | ||
127 | when the :ref:`ref-tasks-configure` task needs to be | ||
128 | re-executed. | ||
129 | |||
130 | One of the improvements is to attempt to run "make clean" during the | ||
131 | ``do_configure`` task if a ``Makefile`` exists. Some software packages | ||
132 | do not provide a working clean target within their make files. If you | ||
133 | have such recipes, you need to set | ||
134 | :term:`CLEANBROKEN` to "1" within the recipe, for example: :: | ||
135 | |||
136 | CLEANBROKEN = "1" | ||
137 | |||
138 | .. _migration-1.8-qa-check-and-validation-changes: | ||
139 | |||
140 | QA Check and Validation Changes | ||
141 | ------------------------------- | ||
142 | |||
143 | The following QA Check and Validation Changes have occurred: | ||
144 | |||
145 | - Usage of ``PRINC`` previously triggered a warning. It now triggers an | ||
146 | error. You should remove any remaining usage of ``PRINC`` in any | ||
147 | recipe or append file. | ||
148 | |||
149 | - An additional QA check has been added to detect usage of ``${D}`` in | ||
150 | :term:`FILES` values where :term:`D` values | ||
151 | should not be used at all. The same check ensures that ``$D`` is used | ||
152 | in ``pkg_preinst/pkg_postinst/pkg_prerm/pkg_postrm`` functions | ||
153 | instead of ``${D}``. | ||
154 | |||
155 | - :term:`S` now needs to be set to a valid value within a | ||
156 | recipe. If ``S`` is not set in the recipe, the directory is not | ||
157 | automatically created. If ``S`` does not point to a directory that | ||
158 | exists at the time the :ref:`ref-tasks-unpack` task | ||
159 | finishes, a warning will be shown. | ||
160 | |||
161 | - :term:`LICENSE` is now validated for correct | ||
162 | formatting of multiple licenses. If the format is invalid (e.g. | ||
163 | multiple licenses are specified with no operators to specify how the | ||
164 | multiple licenses interact), then a warning will be shown. | ||
165 | |||
166 | .. _migration-1.8-miscellaneous-changes: | ||
167 | |||
168 | Miscellaneous Changes | ||
169 | --------------------- | ||
170 | |||
171 | The following miscellaneous changes have occurred: | ||
172 | |||
173 | - The ``send-error-report`` script now expects a "-s" option to be | ||
174 | specified before the server address. This assumes a server address is | ||
175 | being specified. | ||
176 | |||
177 | - The ``oe-pkgdata-util`` script now expects a "-p" option to be | ||
178 | specified before the ``pkgdata`` directory, which is now optional. If | ||
179 | the ``pkgdata`` directory is not specified, the script will run | ||
180 | BitBake to query :term:`PKGDATA_DIR` from the | ||
181 | build environment. | ||
182 | |||
183 | |||