diff options
-rw-r--r-- | documentation/ref-manual/migration-3.3.rst | 139 | ||||
-rw-r--r-- | documentation/ref-manual/migration.rst | 1 |
2 files changed, 140 insertions, 0 deletions
diff --git a/documentation/ref-manual/migration-3.3.rst b/documentation/ref-manual/migration-3.3.rst new file mode 100644 index 0000000000..dcd7b56453 --- /dev/null +++ b/documentation/ref-manual/migration-3.3.rst | |||
@@ -0,0 +1,139 @@ | |||
1 | Moving to the Yocto Project 3.3 Release | ||
2 | ======================================= | ||
3 | |||
4 | This section provides migration information for moving to the Yocto | ||
5 | Project 3.3 Release from the prior release. | ||
6 | |||
7 | |||
8 | .. _migration-3.3-minimum-system-requirements: | ||
9 | |||
10 | Minimum system requirements | ||
11 | --------------------------- | ||
12 | |||
13 | You will now need at least Python 3.6 installed on your build host. Most recent | ||
14 | distributions provide this, but should you be building on a distribution that | ||
15 | does not have it, you can use the ``buildtools-tarball`` (easily installable | ||
16 | using ``scripts/install-buildtools``) - see | ||
17 | :ref:`ref-manual/system-requirements:required git, tar, python and gcc versions` | ||
18 | for details. | ||
19 | |||
20 | |||
21 | .. _migration-3.3-removed-recipes: | ||
22 | |||
23 | Removed recipes | ||
24 | --------------- | ||
25 | |||
26 | The following recipes have been removed: | ||
27 | |||
28 | - ``go-dep``: obsolete with the advent of go modules | ||
29 | - ``gst-validate``: replaced by ``gst-devtools`` | ||
30 | - ``linux-yocto``: removed 5.8 version recipes (5.4 / 5.10 still provided) | ||
31 | - ``vulkan-demos``: replaced by ``vulkan-samples`` | ||
32 | |||
33 | |||
34 | .. _migration-3.3-common-license-only-versions: | ||
35 | |||
36 | Single version common license file naming | ||
37 | ----------------------------------------- | ||
38 | |||
39 | Some license files in ``meta/files/common-licenses`` have been renamed to match | ||
40 | current SPDX naming conventions: | ||
41 | |||
42 | - AGPL-3.0 -> AGPL-3.0-only | ||
43 | - GPL-1.0 -> GPL-1.0-only | ||
44 | - GPL-2.0 -> GPL-2.0-only | ||
45 | - GPL-3.0 -> GPL-3.0-only | ||
46 | - LGPL-2.0 -> LGPL-2.0-only | ||
47 | - LGPL-2.1 -> LGPL-2.1-only | ||
48 | - LGPL-3.0 -> LGPL-3.0-only | ||
49 | |||
50 | Additionally, corresponding "-or-later" suffixed files have been added e.g. | ||
51 | ``GPL-2.0-or-later``. | ||
52 | |||
53 | It is not required that you change :term:`LICENSE` values as there are mappings | ||
54 | from the original names in place; however, in rare cases where you have a recipe | ||
55 | which sets :term:`LIC_FILES_CHKSUM` to point to file(s) in | ||
56 | ``meta/files/common-licenses`` (which in any case is not recommended) you will | ||
57 | need to update those. | ||
58 | |||
59 | |||
60 | .. _migration-3.3-python3targetconfig: | ||
61 | |||
62 | New ``python3targetconfig`` class | ||
63 | --------------------------------- | ||
64 | |||
65 | A new :ref:`python3targetconfig <ref-classes-python3targetconfig>` class has been | ||
66 | created for situations where you would previously have inherited the | ||
67 | ``python3native`` class but need access to target configuration data (such as | ||
68 | correct installation directories). Recipes where this situation applies should | ||
69 | be changed to inherit ``python3targetconfig`` instead of ``python3native``. This | ||
70 | also adds a dependency on target ``python3``, so it should only be used where | ||
71 | appropriate in order to avoid unnecessarily lengthening builds. | ||
72 | |||
73 | Some example recipes where this change has been made: ``gpgme``, ``libcap-ng``, | ||
74 | ``python3-pycairo``. | ||
75 | |||
76 | |||
77 | .. _migration-3.3-bitbake: | ||
78 | |||
79 | BitBake changes | ||
80 | --------------- | ||
81 | |||
82 | - BitBake is now configured to use a default ``umask`` of ``022`` for all tasks | ||
83 | (specified via a new :term:`BB_DEFAULT_UMASK` variable). If needed, ``umask`` can | ||
84 | still be set on a per-task basis via the ``umask`` varflag on the task | ||
85 | function, but that is unlikely to be necessary in most cases. | ||
86 | |||
87 | - If a version specified in :term:`PREFERRED_VERSION` is not available this | ||
88 | will now trigger a warning instead of just a note, making such issues more | ||
89 | visible. | ||
90 | |||
91 | |||
92 | .. _migration-3.3-packaging: | ||
93 | |||
94 | Packaging changes | ||
95 | ----------------- | ||
96 | |||
97 | The following packaging changes have been made; in all cases the main package | ||
98 | still depends upon the split out packages so you should not need to do anything | ||
99 | unless you want to take advantage of the improved granularity: | ||
100 | |||
101 | - ``dbus``: ``-common`` and ``-tools`` split out | ||
102 | - ``iproute2``: split ``ip`` binary to its own package | ||
103 | - ``net-tools``: split ``mii-tool`` into its own package | ||
104 | - ``procps``: split ``ps`` and ``sysctl`` into their own packages | ||
105 | - ``rpm``: split build and extra functionality into separate packages | ||
106 | - ``sudo``: split ``sudo`` binary into ``sudo-sudo`` and libs into ``sudo-lib`` | ||
107 | - ``systemtap``: examples, python scripts and runtime material split out | ||
108 | - ``util-linux``: ``libuuid`` has been split out to its own | ||
109 | ``util-linux-libuuid`` recipe (and corresponding packages) to avoid circular | ||
110 | dependencies if ``libgcrypt`` support is enabled in ``util-linux``. | ||
111 | (``util-linux`` depends upon ``util-linux-libuuid``.) | ||
112 | |||
113 | |||
114 | .. _migration-3.3-misc: | ||
115 | |||
116 | Miscellaneous changes | ||
117 | --------------------- | ||
118 | |||
119 | - The default poky :term:`DISTRO_VERSION` value now uses the core metadata's | ||
120 | git hash (i.e. :term:`METADATA_REVISION`) rather than the date (i.e. | ||
121 | :term:`DATE`) to reduce one small source of non-reproducibility. You can | ||
122 | of course specify your own :term:`DISTRO_VERSION` value as desired | ||
123 | (particularly if you create your own custom distro configuration). | ||
124 | - ``adwaita-icon-theme`` version 3.34.3 has been added back, and is selected | ||
125 | as the default via :term:`PREFERRED_VERSION` in | ||
126 | ``meta/conf/distro/include/default-versions.inc`` due to newer versions | ||
127 | not working well with ``librsvg`` 2.40. ``librsvg`` is not practically | ||
128 | upgradeable at the moment as it has been ported to Rust, and Rust is not | ||
129 | (yet) in OE-Core, but this will change in a future release. | ||
130 | - ``ffmpeg`` is now configured to disable GPL-licensed portions by default | ||
131 | to make it harder to accidentally violate the GPL. To explicitly enable GPL | ||
132 | licensed portions, add ``gpl`` to :term:`PACKAGECONFIG` for ``ffmpeg`` | ||
133 | using a bbappend (or use ``PACKAGECONFIG_append_pn-ffmpeg = " gpl"`` in | ||
134 | your configuration.) | ||
135 | - ``connman`` is now set to conflict with ``systemd-networkd`` as they | ||
136 | overlap functionally and may interfere with each other at runtime. | ||
137 | - Canonical SPDX license names are now used in image license manifests in | ||
138 | order to avoid aliases of the same license from showing up together (e.g. | ||
139 | ``GPLv2`` and ``GPL-2.0``) | ||
diff --git a/documentation/ref-manual/migration.rst b/documentation/ref-manual/migration.rst index 8d64a7daab..a01d4ee143 100644 --- a/documentation/ref-manual/migration.rst +++ b/documentation/ref-manual/migration.rst | |||
@@ -28,4 +28,5 @@ notes for a given release. | |||
28 | migration-3.0 | 28 | migration-3.0 |
29 | migration-3.1 | 29 | migration-3.1 |
30 | migration-3.2 | 30 | migration-3.2 |
31 | migration-3.3 | ||
31 | 32 | ||