summaryrefslogtreecommitdiffstats
path: root/documentation
diff options
context:
space:
mode:
Diffstat (limited to 'documentation')
-rw-r--r--documentation/ref-manual/migration.xml286
1 files changed, 284 insertions, 2 deletions
diff --git a/documentation/ref-manual/migration.xml b/documentation/ref-manual/migration.xml
index 466081d526..9b6711558e 100644
--- a/documentation/ref-manual/migration.xml
+++ b/documentation/ref-manual/migration.xml
@@ -3619,7 +3619,7 @@ $ runqemu qemux86-64 tmp/deploy/images/qemux86-64/core-image-minimal-qemux86-64.
3619 3619
3620 <para> 3620 <para>
3621 The 3621 The
3622 <link linkend='var-KERNEL_IMAGE_BASE_NAME'><filename>KERNEL_IMAGE_BASE_NAME</filename></link> 3622 <filename>KERNEL_IMAGE_BASE_NAME</filename>
3623 variable no longer uses the 3623 variable no longer uses the
3624 <link linkend='var-KERNEL_IMAGETYPE'><filename>KERNEL_IMAGETYPE</filename></link> 3624 <link linkend='var-KERNEL_IMAGETYPE'><filename>KERNEL_IMAGETYPE</filename></link>
3625 variable to create the image's base name. 3625 variable to create the image's base name.
@@ -5687,7 +5687,289 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message</ulink>.
5687 Yocto Project 2.6 Release from the prior release. 5687 Yocto Project 2.6 Release from the prior release.
5688 </para> 5688 </para>
5689 5689
5690 <section id='migration-2.5-automatic-testing-changes'> 5690 <section id='migration-2.6-gcc-changes'>
5691 <title>GCC 8.2 is Now Used by Default</title>
5692
5693 <para>
5694 The GNU Compiler Collection version 8.2 is now used by default
5695 for compilation.
5696 For more information on what has changed in the GCC 8.x release,
5697 see
5698 <ulink url='https://gcc.gnu.org/gcc-8/changes.html'></ulink>.
5699 </para>
5700
5701 <para>
5702 If you still need to compile with version 7.x, GCC 7.3 is
5703 also provided.
5704 You can select this version by setting the
5705 and can be selected by setting the
5706 <link linkend='var-GCCVERSION'><filename>GCCVERSION</filename></link>
5707 variable to "7.%" in your configuration.
5708 </para>
5709 </section>
5710
5711 <section id='migration-2.6-removed-recipes'>
5712 <title>Removed Recipes</title>
5713
5714 <para>
5715 The following recipes have been removed:
5716 <literallayout class='monospaced'>
5717 <emphasis><filename>beecrypt</filename>:</emphasis> No longer needed since moving to <filename>rpm4</filename>.
5718 <emphasis><filename>bigreqsproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5719 <emphasis><filename>calibrateproto</filename>:</emphasis> Removed in favor of <filename>xinput</filename>.
5720 <emphasis><filename>compositeproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5721 <emphasis><filename>damageproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5722 <emphasis><filename>dmxproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5723 <emphasis><filename>dri2proto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5724 <emphasis><filename>dri3proto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5725 <emphasis><filename>eee-acpi-scripts</filename>:</emphasis> Became obsolete.
5726 <emphasis><filename>fixesproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5727 <emphasis><filename>fontsproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5728 <emphasis><filename>fstests</filename>:</emphasis> Became obsolete.
5729 <emphasis><filename>gccmakedep</filename>:</emphasis> No longer used.
5730 <emphasis><filename>glproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5731 <emphasis><filename>gnome-desktop3</filename>:</emphasis> No longer needed. This recipe has moved to <filename>meta-oe</filename>.
5732 <emphasis><filename>icon-naming-utils</filename>:</emphasis> No longer used since the Sato theme was removed in 2016.
5733 <emphasis><filename>inputproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5734 <emphasis><filename>kbproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5735 <emphasis><filename>libusb-compat</filename>:</emphasis> Became obsolete.
5736 <emphasis><filename>libuser</filename>:</emphasis> Became obsolete.
5737 <emphasis><filename>libnfsidmap</filename>:</emphasis> No longer an external requirement since <filename>nfs-utils</filename> 2.2.1. <filename>libnfsidmap</filename> is now integrated.
5738 <emphasis><filename>libxcalibrate</filename>:</emphasis> No longer needed with <filename>xinput</filename>
5739 <emphasis><filename>mktemp</filename>:</emphasis> Became obsolete. The <filename>mktemp</filename> command is provided by both <filename>busybox</filename> and <filename>coreutils</filename>.
5740 <emphasis><filename>ossp-uuid</filename>:</emphasis> Is not being maintained and has mostly been replaced by <filename>uuid.h</filename> in <filename>util-linux</filename>.
5741 <emphasis><filename>pax-utils</filename>:</emphasis> No longer needed. Previous QA tests that did use this recipe are now done at build time.
5742 <emphasis><filename>pcmciautils</filename>:</emphasis> Became obsolete.
5743 <emphasis><filename>pixz</filename>:</emphasis> No longer needed. <filename>xz</filename> now supports multi-threaded compression.
5744 <emphasis><filename>presentproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5745 <emphasis><filename>randrproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5746 <emphasis><filename>recordproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5747 <emphasis><filename>renderproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5748 <emphasis><filename>resourceproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5749 <emphasis><filename>scrnsaverproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5750 <emphasis><filename>trace-cmd</filename>:</emphasis> Became obsolete. <filename>perf</filename> replaced this recipe's functionally.
5751 <emphasis><filename>videoproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5752 <emphasis><filename>wireless-tools</filename>:</emphasis> Became obsolete. Superseded by <filename>iw</filename>.
5753 <emphasis><filename>xcmiscproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5754 <emphasis><filename>xextproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5755 <emphasis><filename>xf86dgaproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5756 <emphasis><filename>xf86driproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5757 <emphasis><filename>xf86miscproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5758 <emphasis><filename>xf86-video-omapfb</filename>:</emphasis> Became obsolete. Use kernel modesetting driver instead.
5759 <emphasis><filename>xf86-video-omap</filename>:</emphasis> Became obsolete Use kernel modesetting driver instead.
5760 <emphasis><filename>xf86vidmodeproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5761 <emphasis><filename>xineramaproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5762 <emphasis><filename>xproto</filename>:</emphasis> Replaced by <filename>xorgproto</filename>.
5763 <emphasis><filename>yasm</filename>:</emphasis> No longer needed since previous usages are now satisfied by <filename>nasm</filename>.
5764 </literallayout>
5765 </para>
5766 </section>
5767
5768 <section id='migration-2.6-packaging-changes'>
5769 <title>Packaging Changes</title>
5770
5771 <para>
5772 The following packaging changes have been made:
5773 <itemizedlist>
5774 <listitem><para>
5775 <emphasis><filename>cmake</filename>:</emphasis>
5776 <filename>cmake.m4</filename> and
5777 <filename>toolchain</filename> files have been moved to the
5778 main package.
5779 </para></listitem>
5780 <listitem><para>
5781 <emphasis><filename>iptables</filename>:</emphasis>
5782 The <filename>iptables</filename> modules have been split
5783 into separate packages.
5784 </para></listitem>
5785 <listitem><para>
5786 <emphasis><filename>alsa-lib</filename>:</emphasis>
5787 <filename>libasound</filename> is now in the main
5788 <filename>alsa-lib</filename> package instead of
5789 <filename>libasound</filename>.
5790 </para></listitem>
5791 <listitem><para>
5792 <emphasis><filename>glibc</filename>:</emphasis>
5793 <filename>libnss-db</filename> is now in its own package
5794 along with a <filename>/var/db/makedbs.sh</filename>
5795 script to update databases.
5796 </para></listitem>
5797 <listitem><para>
5798 <emphasis><filename>python</filename> and <filename>python3</filename>:</emphasis>
5799 These have been removed from the main package entirely.
5800 You must install specific packages or
5801 <filename>python-modules</filename> for everything.
5802 </para></listitem>
5803 <listitem><para>
5804 <emphasis><filename>systemtap</filename>:</emphasis>
5805 Moved <filename>systemtap-exporter</filename> into its own
5806 package.
5807 </para></listitem>
5808 </itemizedlist>
5809 </para>
5810 </section>
5811
5812 <section id='migration-2.6-xorg-protocol-dependencies'>
5813 <title>XOrg Protocol dependencies</title>
5814
5815 <para>
5816 The "*proto" upstream repositories have been combined into one
5817 "xorgproto" repository.
5818 Thus, the corresponding recipes have also been combined into a
5819 single <filename>xorgproto</filename> recipe.
5820 Any recipes that depend upon the older <filename>*proto</filename>
5821 recipes need to be changed to depend on the newer
5822 <filename>xorgproto</filename> recipe instead.
5823 </para>
5824
5825 <para>
5826 For names of recipes removed because of this repository change,
5827 see the
5828 <link linkend="migration-2.6-removed-recipes">Removed Recipes</link>
5829 section.
5830 </para>
5831 </section>
5832
5833 <section id='migration-2.6-distutils-distutils3-fetching-dependencies'>
5834 <title><filename>distutils</filename> and <filename>distutils3</filename> Now Prevent Fetching Dependencies During the <filename>do_configure</filename> Task</title>
5835
5836 <para>
5837 Previously, it was possible for Python recipes that inherited
5838 the
5839 <link linkend='ref-classes-distutils'><filename>distutils</filename></link>
5840 and
5841 <link linkend='ref-classes-distutils3'><filename>distutils3</filename></link>
5842 classes to fetch code during the
5843 <link linkend='ref-tasks-configure'><filename>do_configure</filename></link>
5844 task to satisfy dependencies mentioned in
5845 <filename>setup.py</filename> if those dependencies were not
5846 provided in the sysroot (i.e. recipes providing the dependencies
5847 were missing from
5848 <link linkend='var-DEPENDS'><filename>DEPENDS</filename></link>).
5849 <note>
5850 This dependency affects classes beyond just the two mentioned
5851 (i.e. <filename>distutils</filename> and
5852 <filename>distutils3</filename>).
5853 Any recipe that inherits <filename>distutils*</filename>
5854 classes are affected.
5855 For example, the <filename>setuptools</filename> and
5856 <filename>setuptools3</filename> recipes are affected since
5857 they inherit the <filename>distutils*</filename> classes.
5858 </note>
5859 </para>
5860
5861 <para>
5862 Fetching these types of dependencies that are not provided in the
5863 sysroot negatively affects the ability to reproduce builds.
5864 This type of fetching is now explicitly disabled.
5865 Consequently, any missing dependencies in Python recipes that
5866 use these classes now result in an error during the
5867 <filename>do_configure</filename> task.
5868 </para>
5869 </section>
5870
5871 <section id='migration-2.6-linux-yocto-configuration-audit-issues-now-correctly-reported'>
5872 <title><filename>linux-yocto</filename> Configuration Audit Issues Now Correctly Reported</title>
5873
5874 <para>
5875 Due to a bug, the kernel configuration audit functionality was
5876 not writing out any resulting warnings during the build.
5877 This issue is now corrected.
5878 You might notice these warnings now if you have a custom kernel
5879 configuration with a <filename>linux-yocto</filename> style
5880 kernel recipe.
5881 </para>
5882 </section>
5883
5884 <section id='migration-2.6-image-kernel-artifact-naming-changes'>
5885 <title>Image/Kernel Artifact Naming Changes</title>
5886
5887 <para>
5888 The following changes have been made:
5889 <itemizedlist>
5890 <listitem><para>
5891 Name variables (e.g.
5892 <link linkend='var-IMAGE_NAME'><filename>IMAGE_NAME</filename></link>)
5893 use a new <filename>IMAGE_VERSION_SUFFIX</filename>
5894 variable instead of
5895 <link linkend='var-DATETIME'><filename>DATETIME</filename></link>.
5896 Using <filename>IMAGE_VERSION_SUFFIX</filename> allows
5897 easier and more direct changes.</para>
5898
5899 <para>The <filename>IMAGE_VERSION_SUFFIX</filename>
5900 variable is set in the
5901 <filename>bitbake.conf</filename> configuration file as
5902 follows:
5903 <literallayout class='monospaced'>
5904 IMAGE_VERSION_SUFFIX = "-${DATETIME}"
5905 </literallayout>
5906 </para></listitem>
5907 <listitem><para>
5908 Several variables have changed names for consistency:
5909 <literallayout class='monospaced'>
5910 Old Variable Name New Variable Name
5911 ========================================================
5912 KERNEL_IMAGE_BASE_NAME <link linkend='var-KERNEL_IMAGE_NAME'>KERNEL_IMAGE_NAME</link>
5913 KERNEL_IMAGE_SYMLINK_NAME <link linkend='var-KERNEL_IMAGE_LINK_NAME'>KERNEL_IMAGE_LINK_NAME</link>
5914 MODULE_TARBALL_BASE_NAME <link linkend='var-MODULE_TARBALL_NAME'>MODULE_TARBALL_NAME</link>
5915 MODULE_TARBALL_SYMLINK_NAME <link linkend='var-MODULE_TARBALL_LINK_NAME'>MODULE_TARBALL_LINK_NAME</link>
5916 INITRAMFS_BASE_NAME <link linkend='var-INITRAMFS_NAME'>INITRAMFS_NAME</link>
5917 </literallayout>
5918 </para></listitem>
5919 <listitem><para>
5920 The <filename>MODULE_IMAGE_BASE_NAME</filename> variable
5921 has been removed.
5922 The module tarball name is now controlled directly with the
5923 <link linkend='var-MODULE_TARBALL_NAME'><filename>MODULE_TARBALL_NAME</filename></link>
5924 variable.
5925 </para></listitem>
5926 <listitem><para>
5927 The
5928 <link linkend='var-KERNEL_DTB_NAME'><filename>KERNEL_DTB_NAME</filename></link>
5929 and
5930 <link linkend='var-KERNEL_DTB_LINK_NAME'><filename>KERNEL_DTB_LINK_NAME</filename></link>
5931 variables have been introduced to control kernel Device
5932 Tree Binary (DTB) artifact names instead of mangling
5933 <filename>KERNEL_IMAGE_*</filename> variables.
5934 </para></listitem>
5935 <listitem><para>
5936 The
5937 <link linkend='var-KERNEL_FIT_NAME'><filename>KERNEL_FIT_NAME</filename></link>
5938 and
5939 <link linkend='var-KERNEL_FIT_LINK_NAME'><filename>KERNEL_FIT_LINK_NAME</filename></link>
5940 variables have been introduced to specify the name of
5941 flattened image tree (FIT) kernel images similar to other
5942 deployed artifacts.
5943 </para></listitem>
5944 <listitem><para>
5945 The
5946 <link linkend='var-MODULE_TARBALL_NAME'><filename>MODULE_TARBALL_NAME</filename></link>
5947 and
5948 <link linkend='var-MODULE_TARBALL_LINK_NAME'><filename>MODULE_TARBALL_LINK_NAME</filename></link>
5949 variable values no longer include the "module-" prefix or
5950 ".tgz" suffix.
5951 These parts are now hardcoded so that the values are
5952 consistent with other artifact naming variables.
5953 </para></listitem>
5954 <listitem><para>
5955 Added the
5956 <link linkend='var-INITRAMFS_LINK_NAME'><filename>INITRAMFS_LINK_NAME</filename></link>
5957 variable so that the symlink can be controlled similarly
5958 to other artifact types.
5959 </para></listitem>
5960 <listitem><para>
5961 <link linkend='var-INITRAMFS_NAME'><filename>INITRAMFS_NAME</filename></link>
5962 now uses
5963 "${PKGE}-${PKGV}-${PKGR}-${MACHINE}${IMAGE_VERSION_SUFFIX}"
5964 instead of
5965 "${PV}-${PR}-${MACHINE}-${DATETIME}", which
5966 makes it consistent with other variables.
5967 </para></listitem>
5968 </itemizedlist>
5969 </para>
5970 </section>
5971
5972 <section id='migration-2.6-automatic-testing-changes'>
5691 <title>Automatic Testing Changes</title> 5973 <title>Automatic Testing Changes</title>
5692 5974
5693 <para> 5975 <para>