diff options
Diffstat (limited to 'poky/documentation')
-rw-r--r-- | poky/documentation/README | 4 | ||||
-rw-r--r-- | poky/documentation/conf.py | 2 | ||||
-rw-r--r-- | poky/documentation/dev-manual/common-tasks.rst | 2 | ||||
-rw-r--r-- | poky/documentation/kernel-dev/common.rst | 84 | ||||
-rw-r--r-- | poky/documentation/kernel-dev/intro.rst | 8 | ||||
-rw-r--r-- | poky/documentation/migration-guides/release-4.0.rst | 1 | ||||
-rw-r--r-- | poky/documentation/migration-guides/release-notes-4.0.3.rst | 314 | ||||
-rw-r--r-- | poky/documentation/ref-manual/features.rst | 2 | ||||
-rw-r--r-- | poky/documentation/ref-manual/system-requirements.rst | 59 | ||||
-rw-r--r-- | poky/documentation/sdk-manual/appendix-customizing.rst | 14 | ||||
-rw-r--r-- | poky/documentation/sdk-manual/appendix-obtain.rst | 18 | ||||
-rw-r--r-- | poky/documentation/sdk-manual/extensible.rst | 66 | ||||
-rw-r--r-- | poky/documentation/sdk-manual/working-projects.rst | 13 |
13 files changed, 446 insertions, 141 deletions
diff --git a/poky/documentation/README b/poky/documentation/README index 6f6a8ec842..6333f0496a 100644 --- a/poky/documentation/README +++ b/poky/documentation/README @@ -129,6 +129,10 @@ Also install the "inkscape" package from your distribution. Inkscape is need to convert SVG graphics to PNG (for EPUB export) and to PDF (for PDF export). +Additionally install "fncychap.sty" TeX font if you want to build PDFs. Debian +and Ubuntu have it in "texlive-latex-extra" package while RedHat distributions +and OpenSUSE have it in "texlive-fncychap" package for example. + To build the documentation locally, run: $ cd documentation diff --git a/poky/documentation/conf.py b/poky/documentation/conf.py index 2a017569f7..07a15ce7de 100644 --- a/poky/documentation/conf.py +++ b/poky/documentation/conf.py @@ -98,7 +98,7 @@ extlinks = { 'yocto_bugs': ('https://bugzilla.yoctoproject.org%s', None), 'yocto_ab': ('https://autobuilder.yoctoproject.org%s', None), 'yocto_docs': ('https://docs.yoctoproject.org%s', None), - 'yocto_git': ('https://git.yoctoproject.org/cgit/cgit.cgi%s', None), + 'yocto_git': ('https://git.yoctoproject.org%s', None), 'yocto_sstate': ('http://sstate.yoctoproject.org%s', None), 'oe_home': ('https://www.openembedded.org%s', None), 'oe_lists': ('https://lists.openembedded.org%s', None), diff --git a/poky/documentation/dev-manual/common-tasks.rst b/poky/documentation/dev-manual/common-tasks.rst index 8be3c7c0e8..b08a55331d 100644 --- a/poky/documentation/dev-manual/common-tasks.rst +++ b/poky/documentation/dev-manual/common-tasks.rst @@ -6527,7 +6527,7 @@ newest sstate cache file for each package:: This command will ask you to confirm the deletions it identifies. -Note:: +.. note:: The duplicated sstate cache files of one package must have the same architecture, which means that sstate cache files with multiple diff --git a/poky/documentation/kernel-dev/common.rst b/poky/documentation/kernel-dev/common.rst index dc3345a520..16ef6453bd 100644 --- a/poky/documentation/kernel-dev/common.rst +++ b/poky/documentation/kernel-dev/common.rst @@ -52,8 +52,8 @@ image and ready to make modifications as described in the ":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`" section: -1. *Initialize the BitBake Environment:* Before building an extensible - SDK, you need to initialize the BitBake build environment by sourcing +1. *Initialize the BitBake Environment:* + you need to initialize the BitBake build environment by sourcing the build environment script (i.e. :ref:`structure-core-script`):: $ cd poky @@ -120,67 +120,10 @@ section: NOTE: Starting bitbake server... $ -5. *Build the Extensible SDK:* Use BitBake to build the extensible SDK - specifically for use with images to be run using QEMU:: +5. *Build the Clean Image:* The final step in preparing to work on the + kernel is to build an initial image using ``bitbake``:: - $ cd poky/build - $ bitbake core-image-minimal -c populate_sdk_ext - - Once - the build finishes, you can find the SDK installer file (i.e. - ``*.sh`` file) in the following directory:: - - poky/build/tmp/deploy/sdk - - For this example, the installer file is named - ``poky-glibc-x86_64-core-image-minimal-i586-toolchain-ext-&DISTRO;.sh``. - -6. *Install the Extensible SDK:* Use the following command to install - the SDK. For this example, install the SDK in the default - ``poky_sdk`` directory:: - - $ cd poky/build/tmp/deploy/sdk - $ ./poky-glibc-x86_64-core-image-minimal-i586-toolchain-ext-&DISTRO;.sh - Poky (Yocto Project Reference Distro) Extensible SDK installer version &DISTRO; - ============================================================================ - Enter target directory for SDK (default: poky_sdk): - You are about to install the SDK to "/home/scottrif/poky_sdk". Proceed [Y/n]? Y - Extracting SDK......................................done - Setting it up... - Extracting buildtools... - Preparing build system... - Parsing recipes: 100% |#################################################################| Time: 0:00:52 - Initializing tasks: 100% |############## ###############################################| Time: 0:00:04 - Checking sstate mirror object availability: 100% |######################################| Time: 0:00:00 - Parsing recipes: 100% |#################################################################| Time: 0:00:33 - Initializing tasks: 100% |##############################################################| Time: 0:00:00 - done - SDK has been successfully set up and is ready to be used. - Each time you wish to use the SDK in a new shell session, you need to source the environment setup script e.g. - $ . /home/scottrif/poky_sdk/environment-setup-i586-poky-linux - - -7. *Set Up a New Terminal to Work With the Extensible SDK:* You must set - up a new terminal to work with the SDK. You cannot use the same - BitBake shell used to build the installer. - - After opening a new shell, run the SDK environment setup script as - directed by the output from installing the SDK:: - - $ source poky_sdk/environment-setup-i586-poky-linux - "SDK environment now set up; additionally you may now run devtool to perform development tasks. - Run devtool --help for further details. - - .. note:: - - If you get a warning about attempting to use the extensible SDK in - an environment set up to run BitBake, you did not use a new shell. - -8. *Build the Clean Image:* The final step in preparing to work on the - kernel is to build an initial image using ``devtool`` in the new - terminal you just set up and initialized for SDK work:: - - $ devtool build-image + $ bitbake core-image-minimal Parsing recipes: 100% |##########################################| Time: 0:00:05 Parsing of 830 .bb files complete (0 cached, 830 parsed). 1299 targets, 47 skipped, 0 masked, 0 errors. WARNING: No packages to add, building image core-image-minimal unmodified @@ -192,7 +135,6 @@ section: NOTE: Executing SetScene Tasks NOTE: Executing RunQueue Tasks NOTE: Tasks Summary: Attempted 2866 tasks of which 2604 didn't need to be rerun and all succeeded. - NOTE: Successfully built core-image-minimal. You can find output files in /home/scottrif/poky_sdk/tmp/deploy/images/qemux86 If you were building for actual hardware and not for emulation, you could flash @@ -202,7 +144,7 @@ section: Wiki page. At this point you have set up to start making modifications to the -kernel by using the extensible SDK. For a continued example, see the +kernel. For a continued example, see the ":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`" section. @@ -744,7 +686,7 @@ Using ``devtool`` to Patch the Kernel ===================================== The steps in this procedure show you how you can patch the kernel using -the extensible SDK and ``devtool``. +``devtool``. .. note:: @@ -766,8 +708,7 @@ console. The example is a continuation of the setup procedure found in the ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" Section. 1. *Check Out the Kernel Source Files:* First you must use ``devtool`` - to checkout the kernel source code in its workspace. Be sure you are - in the terminal set up to do work with the extensible SDK. + to checkout the kernel source code in its workspace. .. note:: @@ -867,7 +808,7 @@ the ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" Se the results of your ``printk`` statements as part of the output when you scroll down the console window. -6. *Stage and commit your changes*: Within your eSDK terminal, change +6. *Stage and commit your changes*: Change your working directory to where you modified the ``calibrate.c`` file and use these Git commands to stage and commit your changes:: @@ -878,8 +819,7 @@ the ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" Se 7. *Export the Patches and Create an Append File:* To export your commits as patches and create a ``.bbappend`` file, use the following - command in the terminal used to work with the extensible SDK. This - example uses the previously established layer named ``meta-mylayer``. + command. This example uses the previously established layer named ``meta-mylayer``. :: $ devtool finish linux-yocto ~/meta-mylayer @@ -907,8 +847,8 @@ Using Traditional Kernel Development to Patch the Kernel ======================================================== The steps in this procedure show you how you can patch the kernel using -traditional kernel development (i.e. not using ``devtool`` and the -extensible SDK as described in the +traditional kernel development (i.e. not using ``devtool`` +as described in the ":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`" section). diff --git a/poky/documentation/kernel-dev/intro.rst b/poky/documentation/kernel-dev/intro.rst index b9ce7f241c..4ff4dc7d35 100644 --- a/poky/documentation/kernel-dev/intro.rst +++ b/poky/documentation/kernel-dev/intro.rst @@ -114,13 +114,13 @@ general information and references for further information. a build host ready to use the Yocto Project. 2. *Set Up Your Host Development System for Kernel Development:* It is - recommended that you use ``devtool`` and an extensible SDK for kernel + recommended that you use ``devtool`` for kernel development. Alternatively, you can use traditional kernel development methods with the Yocto Project. Either way, there are steps you need to take to get the development environment ready. - Using ``devtool`` and the eSDK requires that you have a clean build - of the image and that you are set up with the appropriate eSDK. For + Using ``devtool`` requires that you have a clean build + of the image. For more information, see the ":ref:`kernel-dev/common:getting ready to develop using \`\`devtool\`\``" section. @@ -134,7 +134,7 @@ general information and references for further information. 3. *Make Changes to the Kernel Source Code if applicable:* Modifying the kernel does not always mean directly changing source files. However, if you have to do this, you make the changes to the files in the - eSDK's Build Directory if you are using ``devtool``. For more + Yocto's Build Directory if you are using ``devtool``. For more information, see the ":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`" section. diff --git a/poky/documentation/migration-guides/release-4.0.rst b/poky/documentation/migration-guides/release-4.0.rst index 6584963be8..fe1efaec1f 100644 --- a/poky/documentation/migration-guides/release-4.0.rst +++ b/poky/documentation/migration-guides/release-4.0.rst @@ -7,3 +7,4 @@ Release 4.0 (kirkstone) release-notes-4.0 release-notes-4.0.1 release-notes-4.0.2 + release-notes-4.0.3 diff --git a/poky/documentation/migration-guides/release-notes-4.0.3.rst b/poky/documentation/migration-guides/release-notes-4.0.3.rst new file mode 100644 index 0000000000..e2a212cb62 --- /dev/null +++ b/poky/documentation/migration-guides/release-notes-4.0.3.rst @@ -0,0 +1,314 @@ +Release notes for Yocto-4.0.3 (Kirkstone) +----------------------------------------- + +Security Fixes in Yocto-4.0.3 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- binutils: fix :cve:`2019-1010204` +- busybox: fix :cve:`2022-30065` +- cups: ignore :cve:`2022-26691` +- curl: Fix :cve:`2022-32205`, :cve:`2022-32206`, :cve:`2022-32207` and :cve:`2022-32208` +- dpkg: fix :cve:`2022-1664` +- ghostscript: fix :cve:`2022-2085` +- harfbuzz: fix :cve:`2022-33068` +- libtirpc: fix :cve:`2021-46828` +- lua: fix :cve:`2022-33099` +- nasm: ignore :cve:`2020-18974` +- qemu: fix :cve:`2022-35414` +- qemu: ignore :cve:`2021-20255` and :cve:`2019-12067` +- tiff: fix :cve:`2022-1354`, :cve:`2022-1355`, :cve:`2022-2056`, :cve:`2022-2057` and :cve:`2022-2058` +- u-boot: fix :cve:`2022-34835` +- unzip: fix :cve:`2022-0529` and :cve:`2022-0530` + + +Fixes in Yocto-4.0.3 +~~~~~~~~~~~~~~~~~~~~ + +- alsa-state: correct license +- at: take tarballs from debian +- base.bbclass: Correct the test for obsolete license exceptions +- base/reproducible: Change Source Date Epoch generation methods +- bin_package: install into base_prefix +- bind: Remove legacy python3 PACKAGECONFIG code +- bind: upgrade to 9.18.4 +- binutils: stable 2.38 branch updates +- build-appliance-image: Update to kirkstone head revision +- cargo_common.bbclass: enable bitbake vendoring for externalsrc +- coreutils: Tweak packaging variable names for coreutils-dev +- curl: backport openssl fix CN check error code +- cve-check: hook cleanup to the BuildCompleted event, not CookerExit +- cve-extra-exclusions: Clean up and ignore three CVEs (2xqemu and nasm) +- devtool: finish: handle patching when S points to subdir of a git repo +- devtool: ignore pn- overrides when determining SRC_URI overrides +- docs: BB_HASHSERVE_UPSTREAM: update to new host +- dropbear: break dependency on base package for -dev package +- efivar: fix import functionality +- encodings: update to 1.0.6 +- epiphany: upgrade to 42.3 +- externalsrc.bbclass: support crate fetcher on externalsrc +- font-util: update 1.3.2 -> 1.3.3 +- gcc-runtime: Fix build when using gold +- gcc-runtime: Fix missing MLPREFIX in debug mappings +- gcc-runtime: Pass -nostartfiles when building dummy libstdc++.so +- gcc: Backport a fix for gcc bug 105039 +- git: upgrade to v2.35.4 +- glib-2.0: upgrade to 2.72.3 +- glib-networking: upgrade to 2.72.1 +- glibc : stable 2.35 branch updates +- glibc-tests: Avoid reproducibility issues +- glibc-tests: not clear BBCLASSEXTEND +- glibc: revert one upstream change to work around broken DEBUG_BUILD build +- glibc: stable 2.35 branch updates +- gnupg: upgrade to 2.3.7 +- go: upgrade to v1.17.12 +- gobject-introspection-data: Disable cache for g-ir-scanner +- gperf: Add a patch to work around reproducibility issues +- gperf: Switch to upstream patch +- gst-devtools: upgrade to 1.20.3 +- gstreamer1.0-libav: upgrade to 1.20.3 +- gstreamer1.0-omx: upgrade to 1.20.3 +- gstreamer1.0-plugins-bad: upgrade to 1.20.3 +- gstreamer1.0-plugins-base: upgrade to 1.20.3 +- gstreamer1.0-plugins-good: upgrade to 1.20.3 +- gstreamer1.0-plugins-ugly: upgrade to 1.20.3 +- gstreamer1.0-python: upgrade to 1.20.3 +- gstreamer1.0-rtsp-server: upgrade to 1.20.3 +- gstreamer1.0-vaapi: upgrade to 1.20.3 +- gstreamer1.0: upgrade to 1.20.3 +- gtk-doc: Remove hardcoded buildpath +- harfbuzz: Fix compilation with clang +- initramfs-framework: move storage mounts to actual rootfs +- initscripts: run umountnfs as a KILL script +- insane.bbclass: host-user-contaminated: Correct per package home path +- insane: Fix buildpaths test to work with special devices +- kernel-arch: Fix buildpaths leaking into external module compiles +- kernel-devsrc: fix reproducibility and buildpaths QA warning +- kernel-devsrc: ppc32: fix reproducibility +- kernel-uboot.bbclass: Use vmlinux.initramfs when INITRAMFS_IMAGE_BUNDLE set +- kernel.bbclass: pass LD also in savedefconfig +- libffi: fix native build being not portable +- libgcc: Fix standalone target builds with usrmerge distro feature +- libmodule-build-perl: Use env utility to find perl interpreter +- libsoup: upgrade to 3.0.7 +- libuv: upgrade to 1.44.2 +- linux-firmware: upgrade to 20220708 +- linux-firwmare: restore WHENCE_CHKSUM variable +- linux-yocto-rt/5.15: update to -rt48 (and fix -stable merge) +- linux-yocto/5.10: fix build_OID_registry/conmakehash buildpaths warning +- linux-yocto/5.10: fix buildpaths issue with gen-mach-types +- linux-yocto/5.10: fix buildpaths issue with pnmtologo +- linux-yocto/5.10: update to v5.10.135 +- linux-yocto/5.15: drop obselete GPIO sysfs ABI +- linux-yocto/5.15: fix build_OID_registry buildpaths warning +- linux-yocto/5.15: fix buildpaths issue with gen-mach-types +- linux-yocto/5.15: fix buildpaths issue with pnmtologo +- linux-yocto/5.15: fix qemuppc buildpaths warning +- linux-yocto/5.15: fix reproducibility issues +- linux-yocto/5.15: update to v5.15.59 +- log4cplus: upgrade to 2.0.8 +- lttng-modules: Fix build failure for kernel v5.15.58 +- lttng-modules: upgrade to 2.13.4 +- lua: Fix multilib buildpath reproducibility issues +- mkfontscale: upgrade to 1.2.2 +- oe-selftest-image: Ensure the image has sftp as well as dropbear +- oe-selftest: devtool: test modify git recipe building from a subdir +- oeqa/runtime/scp: Disable scp test for dropbear +- oeqa/runtime: add test that the kernel has CONFIG_PREEMPT_RT enabled +- oeqa/sdk: drop the nativesdk-python 2.x test +- openssh: Add openssh-sftp-server to openssh RDEPENDS +- openssh: break dependency on base package for -dev package +- openssl: update to 3.0.5 +- package.bbclass: Avoid stripping signed kernel modules in splitdebuginfo +- package.bbclass: Fix base directory for debugsource files when using externalsrc +- package.bbclass: Fix kernel source handling when not using externalsrc +- package_manager/ipk: do not pipe stderr to stdout +- packagegroup-core-ssh-dropbear: Add openssh-sftp-server recommendation +- patch: handle if S points to a subdirectory of a git repo +- perf: fix reproducibility in 5.19+ +- perf: fix reproduciblity in older releases of Linux +- perf: sort-pmuevents: really keep array terminators +- perl: don't install Makefile.old into perl-ptest +- poky.conf: bump version for 4.0.3 +- pulseaudio: add m4-native to DEPENDS +- python3: Backport patch to fix an issue in subinterpreters +- qemu: Add PACKAGECONFIG for brlapi +- qemu: Avoid accidental librdmacm linkage +- qemu: Avoid accidental libvdeplug linkage +- qemu: Fix slirp determinism issue +- qemu: add PACKAGECONFIG for capstone +- recipetool/devtool: Fix python egg whitespace issues in PACKAGECONFIG +- ref-manual: variables: remove sphinx directive from literal block +- rootfs-postcommands.bbclass: move host-user-contaminated.txt to ${S} +- ruby: add PACKAGECONFIG for capstone +- rust: fix issue building cross-canadian tools for aarch64 on x86_64 +- sanity.bbclass: Add ftps to accepted URI protocols for mirrors sanity +- selftest/runtime_test/virgl: Disable for all almalinux +- sstatesig: Include all dependencies in SPDX task signatures +- strace: set COMPATIBLE_HOST for riscv32 +- systemd: Added base_bindir into pkg_postinst:udev-hwdb. +- udev-extraconf/initrdscripts/parted: Rename mount.blacklist -> mount.ignorelist +- udev-extraconf/mount.sh: add LABELs to mountpoints +- udev-extraconf/mount.sh: ignore lvm in automount +- udev-extraconf/mount.sh: only mount devices on hotplug +- udev-extraconf/mount.sh: save mount name in our tmp filecache +- udev-extraconf: fix some systemd automount issues +- udev-extraconf: force systemd-udevd to use shared MountFlags +- udev-extraconf: let automount base directory configurable +- udev-extraconf:mount.sh: fix a umount issue +- udev-extraconf:mount.sh: fix path mismatching issues +- vala: Fix on target wrapper buildpaths issue +- vala: upgrade to 0.56.2 +- vim: upgrade to 9.0.0063 +- waffle: correctly request wayland-scanner executable +- webkitgtk: upgrade to 2.36.4 +- weston: upgrade to 10.0.1 +- wic/plugins/rootfs: Fix NameError for 'orig_path' +- wic: fix WicError message +- wireless-regdb: upgrade to 2022.06.06 +- xdpyinfo: upgrade to 1.3.3 +- xev: upgrade to 1.2.5 +- xf86-input-synaptics: upgrade to 1.9.2 +- xmodmap: upgrade to 1.0.11 +- xorg-app: Tweak handling of compression changes in SRC_URI +- xserver-xorg: upgrade to 21.1.4 +- xwayland: upgrade to 22.1.3 +- yocto-bsps/5.10: fix buildpaths issue with gen-mach-types +- yocto-bsps/5.10: fix buildpaths issue with pnmtologo +- yocto-bsps/5.15: fix buildpaths issue with gen-mach-types +- yocto-bsps/5.15: fix buildpaths issue with pnmtologo +- yocto-bsps: buildpaths fixes +- yocto-bsps: update to v5.10.130 +- yocto-bsps: buildpaths fixes +- yocto-bsps: update to v5.15.54 + + +Known Issues in Yocto-4.0.3 +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- N/A + + +Contributors to Yocto-4.0.3 +~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +- Ahmed Hossam +- Alejandro Hernandez Samaniego +- Alex Kiernan +- Alexander Kanavin +- Bruce Ashfield +- Chanho Park +- Christoph Lauer +- David Bagonyi +- Dmitry Baryshkov +- He Zhe +- Hitendra Prajapati +- Jose Quaresma +- Joshua Watt +- Kai Kang +- Khem Raj +- Lee Chee Yang +- Lucas Stach +- Markus Volk +- Martin Jansa +- Maxime Roussin-BĂ©langer +- Michael Opdenacker +- Mihai Lindner +- Ming Liu +- Mingli Yu +- Muhammad Hamza +- Naveen +- Pascal Bach +- Paul Eggleton +- Pavel Zhukov +- Peter Bergin +- Peter Kjellerstedt +- Peter Marko +- Pgowda +- Raju Kumar Pothuraju +- Richard Purdie +- Robert Joslyn +- Ross Burton +- Sakib Sajal +- Shruthi Ravichandran +- Steve Sakoman +- Sundeep Kokkonda +- Thomas Roos +- Tom Hochstein +- Wentao Zhang +- Yi Zhao +- Yue Tao +- gr embeter +- leimaohui +- wangmy + + +Repositories / Downloads for Yocto-4.0.3 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +poky + +- Repository Location: https://git.yoctoproject.org/git/poky +- Branch: :yocto_git:`kirkstone </poky/log/?h=kirkstone>` +- Tag: :yocto_git:`yocto-4.0.3 </poky/log/?h=yocto-4.0.3>` +- Git Revision: :yocto_git:`387ab5f18b17c3af3e9e30dc58584641a70f359f </poky/commit/?id=387ab5f18b17c3af3e9e30dc58584641a70f359f>` +- Release Artefact: poky-387ab5f18b17c3af3e9e30dc58584641a70f359f +- sha: fe674186bdb0684313746caa9472134fc19e6f1443c274fe02c06cb1e675b404 +- Download Locations: + http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.3/poky-387ab5f18b17c3af3e9e30dc58584641a70f359f.tar.bz2 + http://mirrors.kernel.org/yocto/yocto/yocto-4.0.3/poky-387ab5f18b17c3af3e9e30dc58584641a70f359f.tar.bz2 + +openembedded-core + +- Repository Location: https://git.openembedded.org/openembedded-core +- Branch: :oe_git:`kirkstone </openembedded-core/log/?h=kirkstone>` +- Tag: :oe_git:`yocto-4.0.3 </openembedded-core/log/?h=yocto-4.0.3>` +- Git Revision: :oe_git:`2cafa6ed5f0aa9df5a120b6353755d56c7c7800d </openembedded-core/commit/?id=2cafa6ed5f0aa9df5a120b6353755d56c7c7800d>` +- Release Artefact: oecore-2cafa6ed5f0aa9df5a120b6353755d56c7c7800d +- sha: 5181d3e8118c6112936637f01a07308b715e0e3d12c7eba338556747dfcabe92 +- Download Locations: + http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.3/oecore-2cafa6ed5f0aa9df5a120b6353755d56c7c7800d.tar.bz2 + http://mirrors.kernel.org/yocto/yocto/yocto-4.0.3/oecore-2cafa6ed5f0aa9df5a120b6353755d56c7c7800d.tar.bz2 + +meta-mingw + +- Repository Location: https://git.yoctoproject.org/git/meta-mingw +- Branch: :yocto_git:`kirkstone </meta-mingw/log/?h=kirkstone>` +- Tag: :yocto_git:`yocto-4.0.3 </meta-mingw/log/?h=yocto-4.0.3>` +- Git Revision: :yocto_git:`a90614a6498c3345704e9611f2842eb933dc51c1 </meta-mingw/commit/?id=a90614a6498c3345704e9611f2842eb933dc51c1>` +- Release Artefact: meta-mingw-a90614a6498c3345704e9611f2842eb933dc51c1 +- sha: 49f9900bfbbc1c68136f8115b314e95d0b7f6be75edf36a75d9bcd1cca7c6302 +- Download Locations: + http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.3/meta-mingw-a90614a6498c3345704e9611f2842eb933dc51c1.tar.bz2 + http://mirrors.kernel.org/yocto/yocto/yocto-4.0.3/meta-mingw-a90614a6498c3345704e9611f2842eb933dc51c1.tar.bz2 + +meta-gplv2 + +- Repository Location: https://git.yoctoproject.org/git/meta-gplv2 +- Branch: :yocto_git:`kirkstone </meta-gplv2/log/?h=kirkstone>` +- Tag: :yocto_git:`yocto-4.0.3 </meta-gplv2/log/?h=yocto-4.0.3>` +- Git Revision: :yocto_git:`d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a </meta-gplv2/commit/?id=d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a>` +- Release Artefact: meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a +- sha: c386f59f8a672747dc3d0be1d4234b6039273d0e57933eb87caa20f56b9cca6d +- Download Locations: + http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.3/meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a.tar.bz2 + http://mirrors.kernel.org/yocto/yocto/yocto-4.0.3/meta-gplv2-d2f8b5cdb285b72a4ed93450f6703ca27aa42e8a.tar.bz2 + +bitbake + +- Repository Location: https://git.openembedded.org/bitbake +- Branch: :oe_git:`2.0 </bitbake/log/?h=2.0>` +- Tag: :oe_git:`yocto-4.0.3 </bitbake/log/?h=yocto-4.0.3>` +- Git Revision: :oe_git:`b8fd6f5d9959d27176ea016c249cf6d35ac8ba03 </bitbake/commit/?id=b8fd6f5d9959d27176ea016c249cf6d35ac8ba03>` +- Release Artefact: bitbake-b8fd6f5d9959d27176ea016c249cf6d35ac8ba03 +- sha: 373818b1dee2c502264edf654d6d8f857b558865437f080e02d5ba6bb9e72cc3 +- Download Locations: + http://downloads.yoctoproject.org/releases/yocto/yocto-4.0.3/bitbake-b8fd6f5d9959d27176ea016c249cf6d35ac8ba03.tar.bz2 + http://mirrors.kernel.org/yocto/yocto/yocto-4.0.3/bitbake-b8fd6f5d9959d27176ea016c249cf6d35ac8ba03.tar.bz2 + +yocto-docs + +- Repository Location: https://git.yoctoproject.org/git/yocto-docs +- Branch: :yocto_git:`kirkstone </yocto-docs/log/?h=kirkstone>` +- Tag: :yocto_git:`yocto-4.0.3 </yocto-docs/log/?h=yocto-4.0.3>` +- Git Revision: :yocto_git:`d9b3dcf65ef25c06f552482aba460dd16862bf96 </yocto-docs/commit/?id=d9b3dcf65ef25c06f552482aba460dd16862bf96>` + diff --git a/poky/documentation/ref-manual/features.rst b/poky/documentation/ref-manual/features.rst index 17521ac2a8..8dfe29d66a 100644 --- a/poky/documentation/ref-manual/features.rst +++ b/poky/documentation/ref-manual/features.rst @@ -62,6 +62,8 @@ Project metadata: - *keyboard:* Hardware has a keyboard +- *numa:* Hardware has non-uniform memory access + - *pcbios:* Support for booting through BIOS - *pci:* Hardware has a PCI bus diff --git a/poky/documentation/ref-manual/system-requirements.rst b/poky/documentation/ref-manual/system-requirements.rst index 6cf88f2a98..62da1bfaaa 100644 --- a/poky/documentation/ref-manual/system-requirements.rst +++ b/poky/documentation/ref-manual/system-requirements.rst @@ -45,14 +45,8 @@ distributions: - Fedora 35 -- CentOS 7.x - -- CentOS 8.x - - AlmaLinux 8.5 -- Debian GNU/Linux 9.x (Stretch) - - Debian GNU/Linux 10.x (Buster) - Debian GNU/Linux 11.x (Bullseye) @@ -120,12 +114,6 @@ supported Ubuntu or Debian Linux distribution: $ sudo apt build-dep qemu $ sudo apt remove oss4-dev - - For Debian-8, ``python3-git`` and ``pylint3`` are no longer - available via ``apt``. - :: - - $ sudo pip3 install GitPython pylint==1.9.5 - - *Essentials:* Packages needed to build an image on a headless system:: $ sudo apt install &UBUNTU_HOST_PACKAGES_ESSENTIAL; @@ -133,15 +121,9 @@ supported Ubuntu or Debian Linux distribution: - *Documentation:* Packages needed if you are going to build out the Yocto Project documentation manuals:: - $ sudo apt install make python3-pip + $ sudo apt install make python3-pip inkscape texlive-latex-extra &PIP3_HOST_PACKAGES_DOC; - .. note:: - - It is currently not possible to build out documentation from Debian 8 - (Jessie) because of outdated ``pip3`` and ``python3``. ``python3-sphinx`` - is too outdated. - Fedora Packages --------------- @@ -156,7 +138,7 @@ supported Fedora Linux distribution: - *Documentation:* Packages needed if you are going to build out the Yocto Project documentation manuals:: - $ sudo dnf install make python3-pip which + $ sudo dnf install make python3-pip which inkscape texlive-fncychap &PIP3_HOST_PACKAGES_DOC; openSUSE Packages @@ -173,42 +155,15 @@ supported openSUSE Linux distribution: - *Documentation:* Packages needed if you are going to build out the Yocto Project documentation manuals:: - $ sudo zypper install make python3-pip which + $ sudo zypper install make python3-pip which inkscape texlive-fncychap &PIP3_HOST_PACKAGES_DOC; -CentOS-7 Packages ------------------ - -Here are the required packages by function given a -supported CentOS-7 Linux distribution: - -- *Essentials:* Packages needed to build an image for a headless - system:: - - $ sudo yum install &CENTOS7_HOST_PACKAGES_ESSENTIAL; - - .. note:: - - - Extra Packages for Enterprise Linux (i.e. ``epel-release``) is - a collection of packages from Fedora built on RHEL/CentOS for - easy installation of packages not included in enterprise Linux - by default. You need to install these packages separately. - - - The ``makecache`` command consumes additional Metadata from - ``epel-release``. - -- *Documentation:* Packages needed if you are going to build out the - Yocto Project documentation manuals:: - - $ sudo yum install make python3-pip which - &PIP3_HOST_PACKAGES_DOC; - -CentOS-8 Packages ------------------ +AlmaLinux-8 Packages +-------------------- Here are the required packages by function given a -supported CentOS-8 Linux distribution: +supported AlmaLinux-8 Linux distribution: - *Essentials:* Packages needed to build an image for a headless system:: @@ -231,7 +186,7 @@ supported CentOS-8 Linux distribution: - *Documentation:* Packages needed if you are going to build out the Yocto Project documentation manuals:: - $ sudo dnf install make python3-pip which + $ sudo dnf install make python3-pip which inkscape texlive-fncychap &PIP3_HOST_PACKAGES_DOC; Required Git, tar, Python, make and gcc Versions diff --git a/poky/documentation/sdk-manual/appendix-customizing.rst b/poky/documentation/sdk-manual/appendix-customizing.rst index 9a76cc59d6..23a437eb9d 100644 --- a/poky/documentation/sdk-manual/appendix-customizing.rst +++ b/poky/documentation/sdk-manual/appendix-customizing.rst @@ -1,11 +1,17 @@ .. SPDX-License-Identifier: CC-BY-SA-2.0-UK -****************************** -Customizing the Extensible SDK -****************************** +*************************************************** +Customizing the Extensible SDK standalone installer +*************************************************** This appendix describes customizations you can apply to the extensible -SDK. +SDK when using in the standalone installer version. + +.. note:: + + It is also possible to use the Extensible SDK functionality directly in a + Yocto build, avoiding separate installer artefacts. Please refer to + ":ref:`sdk-manual/extensible:Installing the Extensible SDK`" Configuring the Extensible SDK ============================== diff --git a/poky/documentation/sdk-manual/appendix-obtain.rst b/poky/documentation/sdk-manual/appendix-obtain.rst index ece378c75e..7a09a83af8 100644 --- a/poky/documentation/sdk-manual/appendix-obtain.rst +++ b/poky/documentation/sdk-manual/appendix-obtain.rst @@ -4,8 +4,22 @@ Obtaining the SDK ***************** +Working with the SDK components directly in a Yocto build +========================================================= + +Please refer to section +":ref:`sdk-manual/extensible:Setting up the Extensible SDK environment directly in a Yocto build`" + +Note that to use this feature effectively either a powerful build +machine, or a well-functioning sstate cache infrastructure is required: +otherwise significant time could be spent waiting for components to be built +by BitBake from source code. + +Working with standalone SDK Installers +====================================== + Locating Pre-Built SDK Installers -================================= +--------------------------------- You can use existing, pre-built toolchains by locating and running an SDK installer script that ships with the Yocto Project. Using this @@ -72,7 +86,7 @@ Follow these steps to locate and hand-install the toolchain: section for more information. Building an SDK Installer -========================= +------------------------- As an alternative to locating and downloading an SDK installer, you can build the SDK installer. Follow these steps: diff --git a/poky/documentation/sdk-manual/extensible.rst b/poky/documentation/sdk-manual/extensible.rst index ed9e43a2d8..0df6519b8e 100644 --- a/poky/documentation/sdk-manual/extensible.rst +++ b/poky/documentation/sdk-manual/extensible.rst @@ -41,6 +41,42 @@ functionality. Installing the Extensible SDK ============================= +Two ways to install the Extensible SDK +-------------------------------------- + +Extensible SDK can be installed in two different ways, and both have +their own pros and cons: + +1. *Setting up the Extensible SDK environment directly in a Yocto build*. This +avoids having to produce, test, distribute and maintain separate SDK installer +archives, which can get very large. There is only one environment for the regular +Yocto build and the SDK and less code paths where things can go not according to plan. +It's easier to update the SDK: it simply means updating the Yocto layers with +git fetch or layer management tooling. The SDK extensibility is better than in the +second option: just run ``bitbake`` again to add more things to the sysroot, or add layers +if even more things are required. + +2. *Setting up the Extensible SDK from a standalone installer*. This has the benefit of +having a single, self-contained archive that includes all the needed binary artifacts. +So nothing needs to be rebuilt, and there is no need to provide a well-functioning +binary artefact cache over the network for developers with underpowered laptops. + +Setting up the Extensible SDK environment directly in a Yocto build +------------------------------------------------------------------- + +1. Set up all the needed layers and a Yocto build directory, e.g. a regular Yocto + build where ``bitbake`` can be executed. + +2. Run: + $ bitbake meta-ide-support + $ bitbake -c populate_sysroot gtk+3 + (or any other target or native item that the application developer would need) + $ bitbake populate-sysroots + + +Setting up the Extensible SDK from a standalone installer +--------------------------------------------------------- + The first thing you need to do is install the SDK on your :term:`Build Host` by running the ``*.sh`` installation script. @@ -136,7 +172,12 @@ Running the Extensible SDK Environment Setup Script =================================================== Once you have the SDK installed, you must run the SDK environment setup -script before you can actually use the SDK. This setup script resides in +script before you can actually use the SDK. + +When using a SDK directly in a Yocto build, you will find the script in +``tmp/deploy/images/qemux86-64/`` in your build directory. + +When using a standalone SDK installer, this setup script resides in the directory you chose when you installed the SDK, which is either the default ``poky_sdk`` directory or the directory you chose during installation. @@ -154,6 +195,11 @@ script is for an IA-based target machine using i586 tuning:: SDK environment now set up; additionally you may now run devtool to perform development tasks. Run devtool --help for further details. +When using the environment script directly in a Yocto build, it can +be run similarly: + + $ source tmp/deploy/images/qemux86-64/environment-setup-core2-64-poky-linux + Running the setup script defines many environment variables needed in order to use the SDK (e.g. ``PATH``, :term:`CC`, @@ -1215,9 +1261,23 @@ need to link to libGL but you are not sure which recipe provides libGL. You can use the following command to find out:: $ devtool search libGL mesa + A free implementation of the OpenGL API + +Once you know the recipe +(i.e. ``mesa`` in this example), you can install it. + +When using the extensible SDK directly in a Yocto build +------------------------------------------------------- + +In this scenario, the Yocto build tooling, e.g. ``bitbake`` +is directly accessible to build additional items, and it +can simply be executed directly: + + $ bitbake mesa + $ bitbake populate-sysroots -A free implementation of the OpenGL API Once you know the recipe -(i.e. ``mesa`` in this example), you can install it:: +When using a standalone installer for the Extensible SDK +-------------------------------------------------------- $ devtool sdk-install mesa diff --git a/poky/documentation/sdk-manual/working-projects.rst b/poky/documentation/sdk-manual/working-projects.rst index 7f8d9b8491..91d8d6ad93 100644 --- a/poky/documentation/sdk-manual/working-projects.rst +++ b/poky/documentation/sdk-manual/working-projects.rst @@ -88,9 +88,13 @@ project: $ source /opt/poky/&DISTRO;/environment-setup-i586-poky-linux + Another example is sourcing the environment setup directly in a Yocto + build:: + + $ source tmp/deploy/images/qemux86-64/environment-setup-core2-64-poky-linux + 3. *Create the configure Script:* Use the ``autoreconf`` command to - generate the ``configure`` script. - :: + generate the ``configure`` script:: $ autoreconf @@ -279,6 +283,11 @@ example: $ source /opt/poky/&DISTRO;/environment-setup-i586-poky-linux + Another example is sourcing the environment setup directly in a Yocto + build:: + + $ source tmp/deploy/images/qemux86-64/environment-setup-core2-64-poky-linux + 3. *Create the Makefile:* For this example, the Makefile contains two lines that can be used to set the :term:`CC` variable. One line is identical to the value that is set when you run the SDK environment |