Skip to content

Component Overview

The SLC component description file (.slcc) describes a collection of source files and other data that makes up a discrete piece of software, such as a peripheral driver, a wireless stack, or a crypto library. Components can be associated with an SDK, an SDK extension, or with a project. In all cases, the parent directory of the component file must be added to the search path in the respective .slcs/.slce/.slcp file for the component to be discovered by the dependency solver. A component directly referenced from a project is called a standalone component.

The id of a component must be unique within a SDK or SDK extension. The id of a standalone component directly referenced from a project must be distinct from any id used in all SDKs and SDK extensions the project makes use of. The prefixes clone_ and custom_ are reserved for use by projects to make it possible to guarantee no conflicts in the present or future.

All paths to files referenced within a component file are relative to their parent SDK/extension root path, or relative to the component file itself for standalone components.

Components may depend on other components using the feature string concept. Components may provide, require and conflict with features.

Components may use configuration headers to expose configurable settings to the user, and template files to produce project-specific output based on their own state and the state of other components.

Back to top