All of lore.kernel.org
 help / color / mirror / Atom feed
From: Antonin Godard <antonin.godard@bootlin.com>
To: docs@lists.yoctoproject.org
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>,
	 Antonin Godard <antonin.godard@bootlin.com>
Subject: [PATCH 1/4] ref-manual/variables.rst: add missing documentation for BUILD_* variables
Date: Mon, 17 Mar 2025 17:03:28 +0100	[thread overview]
Message-ID: <20250317-cc-vars-v1-1-25edbadfd054@bootlin.com> (raw)
In-Reply-To: <20250317-cc-vars-v1-0-25edbadfd054@bootlin.com>

These toolchain variables are used in a native context. Some of the
BUILD_* variables missed documentation. Also, some of the base commands
were also not there so document them (FC and READELF).

Some of existing BUILD_* variable documentation were missing the note
about their usage in a native context, so add it too so that all BUILD_*
variables are documented the same way.

[YOCTO #15719]

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
---
 documentation/ref-manual/variables.rst | 107 +++++++++++++++++++++++++
 1 file changed, 107 insertions(+)

diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst
index 861b04eaa..24b3f7db9 100644
--- a/documentation/ref-manual/variables.rst
+++ b/documentation/ref-manual/variables.rst
@@ -985,6 +985,24 @@ system and gives an overview of their function and contents.
       variable is a useful pointer in case a bug in the software being
       built needs to be manually reported.
 
+   :term:`BUILD_AR`
+      Specifies the architecture-specific archiver for the build host,
+      derived in part from :term:`BUILD_PREFIX`::
+
+         BUILD_AR = "${BUILD_PREFIX}ar"
+
+      When building in the ``-native`` context, :term:`AR` is set to the value
+      of this variable by default.
+
+   :term:`BUILD_AS`
+      Specifies the architecture-specific assembler for the build host,
+      derived in part from from :term:`BUILD_PREFIX`::
+
+         BUILD_AS = "${BUILD_PREFIX}ar"
+
+      When building in the ``-native`` context, :term:`AS` is set to the value
+      of this variable by default.
+
    :term:`BUILD_ARCH`
       Specifies the architecture of the build host (e.g. ``i686``). The
       OpenEmbedded build system sets the value of :term:`BUILD_ARCH` from the
@@ -994,6 +1012,15 @@ system and gives an overview of their function and contents.
       Specifies the architecture-specific assembler flags for the build
       host. By default, the value of :term:`BUILD_AS_ARCH` is empty.
 
+   :term:`BUILD_CC`
+      Specifies the architecture-specific C compiler for the build host,
+      derived in part from :term:`BUILD_PREFIX` and :term:`BUILD_CC_ARCH`::
+
+         BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
+
+      When building in the ``-native`` context, :term:`CC` is set to the value
+      of this variable by default.
+
    :term:`BUILD_CC_ARCH`
       Specifies the architecture-specific C compiler flags for the build
       host. By default, the value of :term:`BUILD_CC_ARCH` is empty.
@@ -1011,12 +1038,31 @@ system and gives an overview of their function and contents.
       :term:`CFLAGS` is set to the value of this variable by
       default.
 
+   :term:`BUILD_CPP`
+      Specifies the C preprocessor command (to both the C and the C++ compilers)
+      when building for the build host, derived in part from
+      :term:`BUILD_PREFIX` and :term:`BUILD_CC_ARCH`::
+
+         BUILD_CPP = "${BUILD_PREFIX}gcc ${BUILD_CC_ARCH} -E"
+
+      When building in the ``-native`` context, :term:`CPP` is set to the value
+      of this variable by default.
+
    :term:`BUILD_CPPFLAGS`
       Specifies the flags to pass to the C preprocessor (i.e. to both the C
       and the C++ compilers) when building for the build host. When
       building in the ``-native`` context, :term:`CPPFLAGS`
       is set to the value of this variable by default.
 
+   :term:`BUILD_CXX`
+      Specifies the architecture-specific C++ compiler for the build host,
+      derived in part from :term:`BUILD_PREFIX` and :term:`BUILD_CC_ARCH`::
+
+         BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}"
+
+      When building in the ``-native`` context, :term:`CXX` is set to the value
+      of this variable by default.
+
    :term:`BUILD_CXXFLAGS`
       Specifies the flags to pass to the C++ compiler when building for the
       build host. When building in the ``-native`` context,
@@ -1029,12 +1075,18 @@ system and gives an overview of their function and contents.
       value of :term:`BUILD_CC_ARCH`, assuming
       :term:`BUILD_CC_ARCH` is set.
 
+      When building in the ``-native`` context, :term:`FC` is set to the value
+      of this variable by default.
+
    :term:`BUILD_LD`
       Specifies the linker command for the build host. By default,
       :term:`BUILD_LD` points to the GNU linker (ld) and passes as arguments
       the value of :term:`BUILD_LD_ARCH`, assuming
       :term:`BUILD_LD_ARCH` is set.
 
+      When building in the ``-native`` context, :term:`LD` is set to the value
+      of this variable by default.
+
    :term:`BUILD_LD_ARCH`
       Specifies architecture-specific linker flags for the build host. By
       default, the value of :term:`BUILD_LD_ARCH` is empty.
@@ -1045,6 +1097,34 @@ system and gives an overview of their function and contents.
       :term:`LDFLAGS` is set to the value of this variable
       by default.
 
+   :term:`BUILD_NM`
+      Specifies the architecture-specific utility to list symbols from object
+      files for the build host, derived in part from :term:`BUILD_PREFIX`::
+
+         BUILD_NM = "${BUILD_PREFIX}nm"
+
+      When building in the ``-native`` context, :term:`NM` is set to the
+      value of this variable by default.
+
+   :term:`BUILD_OBJCOPY`
+      Specifies the architecture-specific utility to copy object files for the
+      build host, derived in part from :term:`BUILD_PREFIX`::
+
+         BUILD_OBJCOPY = "${BUILD_PREFIX}objcopy"
+
+      When building in the ``-native`` context, :term:`OBJCOPY` is set to the
+      value of this variable by default.
+
+   :term:`BUILD_OBJDUMP`
+      Specifies the architecture-specific utility to display object files
+      information for the build host, derived in part from
+      :term:`BUILD_PREFIX`::
+
+         BUILD_OBJDUMP = "${BUILD_PREFIX}objdump"
+
+      When building in the ``-native`` context, :term:`OBJDUMP` is set to the
+      value of this variable by default.
+
    :term:`BUILD_OPTIMIZATION`
       Specifies the optimization flags passed to the C compiler when
       building for the build host or the SDK. The flags are passed through
@@ -1065,12 +1145,33 @@ system and gives an overview of their function and contents.
       build system uses the :term:`BUILD_PREFIX` value to set the
       :term:`TARGET_PREFIX` when building for :ref:`ref-classes-native` recipes.
 
+   :term:`BUILD_RANLIB`
+      Specifies the architecture-specific utility to generate indexes for
+      archives for the build host, derived in part from :term:`BUILD_PREFIX`::
+
+         BUILD_RANLIB = "${BUILD_PREFIX}ranlib -D"
+
+      When building in the ``-native`` context, :term:`RANLIB` is set to the
+      value of this variable by default.
+
+   :term:`BUILD_READELF`
+      Specifies the architecture-specific utility to display information about
+      ELF files for the build host, derived in part from :term:`BUILD_PREFIX`::
+
+         BUILD_READELF = "${BUILD_PREFIX}readelf"
+
+      When building in the ``-native`` context, :term:`READELF` is set to the
+      value of this variable by default.
+
    :term:`BUILD_STRIP`
       Specifies the command to be used to strip debugging symbols from
       binaries produced for the build host. By default, :term:`BUILD_STRIP`
       points to
       ``${``\ :term:`BUILD_PREFIX`\ ``}strip``.
 
+      When building in the ``-native`` context, :term:`STRIP` is set to the
+      value of this variable by default.
+
    :term:`BUILD_SYS`
       Specifies the system, including the architecture and the operating
       system, to use when building for the build host (i.e. when building
@@ -2818,6 +2919,9 @@ system and gives an overview of their function and contents.
    :term:`FAKEROOTNOENV`
       See :term:`bitbake:FAKEROOTNOENV` in the BitBake manual.
 
+   :term:`FC`
+      The minimal command and arguments used to run the Fortran compiler.
+
    :term:`FEATURE_PACKAGES`
       Defines one or more packages to include in an image when a specific
       item is included in :term:`IMAGE_FEATURES`.
@@ -7289,6 +7393,9 @@ system and gives an overview of their function and contents.
       ":ref:`bitbake-user-manual/bitbake-user-manual-execution:dependencies`" sections in the
       BitBake User Manual for additional information on tasks and dependencies.
 
+   :term:`READELF`
+      The minimal command and arguments to run ``readelf``.
+
    :term:`RECIPE_MAINTAINER`
       This variable defines the name and e-mail address of the maintainer of a
       recipe. Such information can be used by human users submitted changes,

-- 
2.47.0



  reply	other threads:[~2025-03-17 16:03 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-17 16:03 [PATCH 0/4] Document missing toolchain related variables Antonin Godard
2025-03-17 16:03 ` Antonin Godard [this message]
2025-03-17 17:01   ` [docs] [PATCH 1/4] ref-manual/variables.rst: add missing documentation for BUILD_* variables Antonin Godard
2025-03-21 16:22   ` Quentin Schulz
2025-03-26  9:17     ` Antonin Godard
2025-03-26  9:49       ` Quentin Schulz
2025-03-26 10:33         ` Antonin Godard
2025-03-26 11:39           ` Quentin Schulz
2025-03-17 16:03 ` [PATCH 2/4] ref-manual/variables.rst: document missing SDK_*_ARCH variables Antonin Godard
2025-03-17 16:03 ` [PATCH 3/4] ref-manual/variables.rst: document HOST_*_ARCH variables Antonin Godard
2025-03-21 16:25   ` [docs] " Quentin Schulz
2025-03-17 16:03 ` [PATCH 4/4] ref-manual/variables.rst: HOST_CC_ARCH: fix wrong SDK reference Antonin Godard
2025-03-21 16:28   ` [docs] " Quentin Schulz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250317-cc-vars-v1-1-25edbadfd054@bootlin.com \
    --to=antonin.godard@bootlin.com \
    --cc=docs@lists.yoctoproject.org \
    --cc=thomas.petazzoni@bootlin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.