diff options
author | Kinsey Moore <kinsey.moore@oarcorp.com> | 2023-02-07 16:02:47 -0600 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2023-02-09 08:52:36 +0100 |
commit | cb375249c59bf7542c4115668dcfbcd7d50d41de (patch) | |
tree | f52273a69161b447342bdecac64cbfe26b8fee3b | |
parent | user/hosts/posix.rst: Update Ubuntu instructions to 22.x (diff) | |
download | rtems-docs-cb375249c59bf7542c4115668dcfbcd7d50d41de.tar.bz2 |
eng: Add ObjectsItem details
This adds a section on adding ObjectsItems.
-rw-r--r-- | eng/build-system.rst | 29 | ||||
-rw-r--r-- | eng/req/items.rst | 8 |
2 files changed, 35 insertions, 2 deletions
diff --git a/eng/build-system.rst b/eng/build-system.rst index 6974aa8..89d27b2 100644 --- a/eng/build-system.rst +++ b/eng/build-system.rst @@ -489,3 +489,32 @@ Add a link to the new library item using a relative UID: links: - role: build-dependency uid: libnew + +Add an Object +------------- + +Build objects logically separate relatively independent segments of +functionality (for example a device driver, an architecture-dependent feature, +etc.). Let *new* be the name of the new object. You can add the new object +with: + +.. code-block:: none + + $ vi spec/build/cpukit/objnew.yml + +Define the attributes of your new object according to +:ref:`SpecTypeBuildObjectsItemType`. + +Edit corresponding group item: + +.. code-block:: none + + $ vi spec/build/cpukit/grp.yml + +Add a link to the new objects item using a relative UID: + +.. code-block:: yaml + + links: + - role: build-dependency + uid: objnew diff --git a/eng/req/items.rst b/eng/req/items.rst index 19e8726..35cde23 100644 --- a/eng/req/items.rst +++ b/eng/req/items.rst @@ -649,8 +649,12 @@ Build Objects Item Type This type refines the :ref:`SpecTypeBuildItemType` through the ``build-type`` attribute if the value is ``objects``. This set of attributes specifies a set -of object files used to build static libraries or test programs. All explicit -attributes shall be specified. The explicit attributes for this type are: +of object files used to build static libraries or test programs. Objects Items +must not be included on multiple paths through the build dependency graph with +identical build options. Violating this can cause race conditions in the build +system due to duplicate installs and multiple instances of build tasks. All +explicit attributes shall be specified. The explicit attributes for this type +are: cflags The attribute value shall be a list. Each list element shall be a |