From 0ee3614e0f637192e818446e3efccfd04e5ee8b4 Mon Sep 17 00:00:00 2001 From: Antonin Godard Date: Tue, 10 Dec 2024 11:00:19 +0100 Subject: Gather dependencies in poky.yaml.in MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit We used to have packages here and there in system-requirements.rst for each distro. Instead, gather all the dependencies in poky.yaml.in so we have an overview of what we provide for each distro. Use yaml ">" to list the dependencies in alphabetical order, one entry per line, which makes them easier to read and compare among distros. Rename UBUNTU_… variables to UBUNTU_DEBIAN_…, since these are used for both distros. (From yocto-docs rev: e365a6d5c59f72f4e6a81a0267cbfcda61502d45) Signed-off-by: Antonin Godard (cherry picked from commit 1ed6118b7cf1b5dcbfca753c83fa30fb97bf44ad) Signed-off-by: Antonin Godard Signed-off-by: Steve Sakoman --- documentation/brief-yoctoprojectqs/index.rst | 2 +- documentation/poky.yaml.in | 213 ++++++++++++++++++++--- documentation/ref-manual/system-requirements.rst | 22 ++- 3 files changed, 202 insertions(+), 35 deletions(-) (limited to 'documentation') diff --git a/documentation/brief-yoctoprojectqs/index.rst b/documentation/brief-yoctoprojectqs/index.rst index c5400e4ac8..3d249eefaa 100644 --- a/documentation/brief-yoctoprojectqs/index.rst +++ b/documentation/brief-yoctoprojectqs/index.rst @@ -78,7 +78,7 @@ You must install essential host packages on your build host. The following command installs the host packages based on an Ubuntu distribution:: - $ sudo apt install &UBUNTU_HOST_PACKAGES_ESSENTIAL; + $ sudo apt install &UBUNTU_DEBIAN_HOST_PACKAGES_ESSENTIAL; .. note:: diff --git a/documentation/poky.yaml.in b/documentation/poky.yaml.in index 66f758fe85..117307effb 100644 --- a/documentation/poky.yaml.in +++ b/documentation/poky.yaml.in @@ -1,3 +1,7 @@ +# +# Macros used in the documentation +# + DISTRO : "5.1" DISTRO_NAME_NO_CAP : "styhead" DISTRO_NAME : "Styhead" @@ -10,31 +14,6 @@ BITBAKE_SERIES : "" YOCTO_DL_URL : "https://downloads.yoctoproject.org" YOCTO_AB_URL : "https://autobuilder.yoctoproject.org" YOCTO_RELEASE_DL_URL : "&YOCTO_DL_URL;/releases/yocto/yocto-&DISTRO;" -UBUNTU_HOST_PACKAGES_ESSENTIAL : "gawk wget git diffstat unzip texinfo gcc \ - build-essential chrpath socat cpio python3 python3-pip python3-pexpect \ - xz-utils debianutils iputils-ping python3-git python3-jinja2 \ - python3-subunit zstd liblz4-tool file locales libacl1" -FEDORA_HOST_PACKAGES_ESSENTIAL : "gawk make wget tar bzip2 gzip python3 unzip perl patch \ - diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath \ - ccache perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue perl-bignum socat \ - python3-pexpect findutils which file cpio python python3-pip xz python3-GitPython \ - python3-jinja2 rpcgen perl-FindBin perl-File-Compare \ - perl-File-Copy perl-locale zstd lz4 hostname glibc-langpack-en libacl" -OPENSUSE_HOST_PACKAGES_ESSENTIAL : "python gcc gcc-c++ git chrpath make wget python-xml \ - diffstat makeinfo python-curses patch socat python3 python3-curses tar python3-pip \ - python3-pexpect xz which python3-Jinja2 rpcgen \ - zstd lz4 bzip2 gzip hostname libacl1 - \n\ $ sudo pip3 install GitPython" -ALMALINUX_HOST_PACKAGES_ESSENTIAL : "-y epel-release - \n\ $ sudo yum install dnf-plugins-core - \n\ $ sudo dnf config-manager --set-enabled crb - \n\ $ sudo dnf makecache - \n\ $ sudo dnf install gawk make wget tar bzip2 gzip python3 unzip perl patch \ - diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath ccache \ - socat perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3-pip \ - python3-GitPython python3-jinja2 python3-pexpect xz which \ - rpcgen zstd lz4 cpio glibc-langpack-en libacl" -PIP3_HOST_PACKAGES_DOC : "$ sudo pip3 install sphinx sphinx_rtd_theme pyyaml" MIN_PYTHON_VERSION : "3.8.0" MIN_TAR_VERSION : "1.28" MIN_GIT_VERSION : "1.8.3.1" @@ -46,3 +25,187 @@ MIN_DISK_SPACE : "90" MIN_DISK_SPACE_RM_WORK : "40" # RAM (Gbytes) needed to generate qemux86-64 core-image-sato on Ubuntu 22.04 (x86-64) on a 4 core system MIN_RAM : "8" + +# +# Dependencies +# + +# Shared between distros +PIP3_HOST_PACKAGES_DOC: sphinx sphinx_rtd_theme pyyaml + +UBUNTU_DEBIAN_HOST_PACKAGES_ESSENTIAL: >- + build-essential + chrpath + cpio + debianutils + diffstat + file + gawk + gcc + git + iputils-ping + libacl1 + liblz4-tool + locales + python3 + python3-git + python3-jinja2 + python3-pexpect + python3-pip + python3-subunit + socat + texinfo + unzip + wget + xz-utils + zstd + +UBUNTU_DEBIAN_HOST_PACKAGES_DOC: >- + git + inkscape + make + python3-saneyaml + python3-sphinx-rtd-theme + sphinx + texlive-latex-extra + +FEDORA_HOST_PACKAGES_ESSENTIAL: >- + bzip2 + ccache + chrpath + cpio + cpp + diffstat + diffutils + file + findutils + gawk + gcc + gcc-c++ + git + glibc-devel + glibc-langpack-en + gzip + hostname + libacl + lz4 + make + patch + perl + perl-Data-Dumper + perl-File-Compare + perl-File-Copy + perl-FindBin + perl-Text-ParseWords + perl-Thread-Queue + perl-bignum + perl-locale + python + python3 + python3-GitPython + python3-jinja2 + python3-pexpect + python3-pip + rpcgen + socat + tar + texinfo + unzip + wget + which + xz + zstd + +FEDORA_HOST_PACKAGES_DOC: >- + git + inkscape + make + python3-pip + texlive-fncychap + which + +OPENSUSE_HOST_PACKAGES_ESSENTIAL: >- + bzip2 + chrpath + diffstat + gcc + gcc-c++ + git + gzip + hostname + libacl1 + lz4 + make + makeinfo + patch + python + python-curses + python-xml + python3 + python3-Jinja2 + python3-curses + python3-pexpect + python3-pip + rpcgen + socat + tar + wget + which + xz + zstd + +OPENSUSE_PIP3_HOST_PACKAGES_ESSENTIAL: GitPython + +OPENSUSE_HOST_PACKAGES_DOC: >- + git + inkscape + make + python3-pip + texlive-fncychap + which + +ALMALINUX_HOST_PACKAGES_ESSENTIAL: >- + bzip2 + ccache + chrpath + cpio + cpp + diffstat + diffutils + gawk + gcc + gcc-c++ + git + glibc-devel + glibc-langpack-en + gzip + libacl + lz4 + make + patch + perl + perl-Data-Dumper + perl-Text-ParseWords + perl-Thread-Queue + python3 + python3-GitPython + python3-jinja2 + python3-pexpect + python3-pip + rpcgen + socat + tar + texinfo + unzip + wget + which + xz + zstd + +ALMALINUX_HOST_PACKAGES_DOC: >- + git + inkscape + make + python3-pip + texlive-fncychap + which diff --git a/documentation/ref-manual/system-requirements.rst b/documentation/ref-manual/system-requirements.rst index 43c3c5834b..0b40c3f5e5 100644 --- a/documentation/ref-manual/system-requirements.rst +++ b/documentation/ref-manual/system-requirements.rst @@ -150,7 +150,7 @@ Ubuntu and Debian Here are the packages needed to build an image on a headless system with a supported Ubuntu or Debian Linux distribution:: - $ sudo apt install &UBUNTU_HOST_PACKAGES_ESSENTIAL; + $ sudo apt install &UBUNTU_DEBIAN_HOST_PACKAGES_ESSENTIAL; You also need to ensure you have the ``en_US.UTF-8`` locale enabled:: @@ -181,8 +181,7 @@ If this is not the case, you can reconfigure the ``locales`` package to add it Here are the packages needed to build Project documentation manuals:: - $ sudo apt install git make inkscape texlive-latex-extra - $ sudo apt install sphinx python3-saneyaml python3-sphinx-rtd-theme + $ sudo apt install &UBUNTU_DEBIAN_HOST_PACKAGES_DOC; Fedora Packages --------------- @@ -194,8 +193,8 @@ with a supported Fedora Linux distribution:: Here are the packages needed to build Project documentation manuals:: - $ sudo dnf install git make python3-pip which inkscape texlive-fncychap - &PIP3_HOST_PACKAGES_DOC; + $ sudo dnf install &FEDORA_HOST_PACKAGES_DOC; + $ sudo pip3 install &PIP3_HOST_PACKAGES_DOC; openSUSE Packages ----------------- @@ -204,11 +203,12 @@ Here are the packages needed to build an image on a headless system with a supported openSUSE distribution:: $ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL; + $ sudo pip3 install &OPENSUSE_PIP3_HOST_PACKAGES_ESSENTIAL; Here are the packages needed to build Project documentation manuals:: - $ sudo zypper install git make python3-pip which inkscape texlive-fncychap - &PIP3_HOST_PACKAGES_DOC; + $ sudo zypper install &OPENSUSE_HOST_PACKAGES_DOC; + $ sudo pip3 install &PIP3_HOST_PACKAGES_DOC; AlmaLinux Packages @@ -217,6 +217,10 @@ AlmaLinux Packages Here are the packages needed to build an image on a headless system with a supported AlmaLinux distribution:: + $ sudo dnf install -y epel-release + $ sudo yum install dnf-plugins-core + $ sudo dnf config-manager --set-enabled crb + $ sudo dnf makecache $ sudo dnf install &ALMALINUX_HOST_PACKAGES_ESSENTIAL; .. note:: @@ -234,8 +238,8 @@ with a supported AlmaLinux distribution:: Here are the packages needed to build Project documentation manuals:: - $ sudo dnf install git make python3-pip which inkscape texlive-fncychap - &PIP3_HOST_PACKAGES_DOC; + $ sudo dnf install &ALMALINUX_HOST_PACKAGES_DOC; + $ sudo pip3 install &PIP3_HOST_PACKAGES_DOC; .. _system-requirements-buildtools: -- cgit v1.2.3-54-g00ecf