• Home
  • Raw
  • Download

Lines Matching full:components

22 as to how the source code and various components are organized. The
31 Clang, and LLDB) is organized into *components*, which define the
75 *components*. Every component is typically grouped into its own
80 LLVM primarily uses the following types of components:
82 - *Libraries* - Library components define a distinct API which can be
94 Components are described using ``LLVMBuild.txt`` files in the directories
147 Each file may define multiple components. Each component is described by a
149 name is ignored, but each section name must be unique. Typically components
150 are just number in order for files with multiple components
160 Components **may not** define any properties other than those expected
168 below. Most components will define additional properties which may be
178 The name of the logical parent of the component. Components are
180 organize groups of components. The parents have no semantics as far
184 Components may reference the root pseudo component using ``$ROOT`` to
187 Components may define the following properties:
191 If specified, a list of names of components which *must* be built
192 prior to this one. This should only be exactly those components which
197 ``Group`` and ``LibraryGroup`` components have no semantics for the
205 Group components exist purely to allow additional arbitrary structuring
206 of the logical components tree. For example, one might define a
207 ``Libraries`` group to hold all of the root library components.
209 ``Group`` components have no additionally properties.
213 Library components define an individual library which should be built
216 Components with this type use the following properties:
226 components which must also be linked in whenever this library is
229 of all ``required_libraries`` for the components the tool needs.
233 If given, a list of the names of ``LibraryGroup`` components which
235 components. For example, the ``X86`` target might define a library
236 group for all of the ``X86`` components. That library group might
247 ``LibraryGroup`` components are a mechanism to allow easy definition of
248 useful sets of related components. In particular, we use them to easily
251 Components with this type use the following properties:
263 ``TargetGroup`` components are an extension of ``LibraryGroup``\s,
269 Components with this type use the ``LibraryGroup`` properties in
290 ``Tool`` components define standalone command line tools which should be
293 Components with this type use the following properties:
298 components which this tool is required to be linked with.
306 required by the linked components (i.e., the transitive closure of
310 components must be built prior to linking -- they do not also need
315 ``BuildTool`` components are like ``Tool`` components, except that the
321 ``BuildTool`` components currently use the exact same properties as
322 ``Tool`` components, the type distinction is only used to differentiate