diff options
Diffstat (limited to 'documentation')
-rw-r--r-- | documentation/ref-manual/migration.xml | 286 |
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> |