<!-- Copyright (C) 2003 Red Hat, Inc. -->
|
<!-- Copyright (C) 2003 Red Hat, Inc. -->
|
<!-- This material may be distributed only subject to the terms -->
|
<!-- This material may be distributed only subject to the terms -->
|
<!-- and conditions set forth in the Open Publication License, v1.0 -->
|
<!-- and conditions set forth in the Open Publication License, v1.0 -->
|
<!-- or later (the latest version is presently available at -->
|
<!-- or later (the latest version is presently available at -->
|
<!-- http://www.opencontent.org/openpub/). -->
|
<!-- http://www.opencontent.org/openpub/). -->
|
<!-- Distribution of the work or derivative of the work in any -->
|
<!-- Distribution of the work or derivative of the work in any -->
|
<!-- standard (paper) book form is prohibited unless prior -->
|
<!-- standard (paper) book form is prohibited unless prior -->
|
<!-- permission is obtained from the copyright holder. -->
|
<!-- permission is obtained from the copyright holder. -->
|
<HTML
|
<HTML
|
><HEAD
|
><HEAD
|
><TITLE
|
><TITLE
|
>cdl_package</TITLE
|
>cdl_package</TITLE
|
><meta name="MSSmartTagsPreventParsing" content="TRUE">
|
><meta name="MSSmartTagsPreventParsing" content="TRUE">
|
<META
|
<META
|
NAME="GENERATOR"
|
NAME="GENERATOR"
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
|
"><LINK
|
"><LINK
|
REL="HOME"
|
REL="HOME"
|
TITLE="The eCos Component Writer's Guide"
|
TITLE="The eCos Component Writer's Guide"
|
HREF="cdl-guide.html"><LINK
|
HREF="cdl-guide.html"><LINK
|
REL="UP"
|
REL="UP"
|
TITLE="CDL Language Specification"
|
TITLE="CDL Language Specification"
|
HREF="reference.html"><LINK
|
HREF="reference.html"><LINK
|
REL="PREVIOUS"
|
REL="PREVIOUS"
|
TITLE="cdl_component"
|
TITLE="cdl_component"
|
HREF="ref.cdl-component.html"><LINK
|
HREF="ref.cdl-component.html"><LINK
|
REL="NEXT"
|
REL="NEXT"
|
TITLE="cdl_interface"
|
TITLE="cdl_interface"
|
HREF="ref.cdl-interface.html"></HEAD
|
HREF="ref.cdl-interface.html"></HEAD
|
><BODY
|
><BODY
|
CLASS="REFENTRY"
|
CLASS="REFENTRY"
|
BGCOLOR="#FFFFFF"
|
BGCOLOR="#FFFFFF"
|
TEXT="#000000"
|
TEXT="#000000"
|
LINK="#0000FF"
|
LINK="#0000FF"
|
VLINK="#840084"
|
VLINK="#840084"
|
ALINK="#0000FF"
|
ALINK="#0000FF"
|
><DIV
|
><DIV
|
CLASS="NAVHEADER"
|
CLASS="NAVHEADER"
|
><TABLE
|
><TABLE
|
SUMMARY="Header navigation table"
|
SUMMARY="Header navigation table"
|
WIDTH="100%"
|
WIDTH="100%"
|
BORDER="0"
|
BORDER="0"
|
CELLPADDING="0"
|
CELLPADDING="0"
|
CELLSPACING="0"
|
CELLSPACING="0"
|
><TR
|
><TR
|
><TH
|
><TH
|
COLSPAN="3"
|
COLSPAN="3"
|
ALIGN="center"
|
ALIGN="center"
|
>The <SPAN
|
>The <SPAN
|
CLASS="APPLICATION"
|
CLASS="APPLICATION"
|
>eCos</SPAN
|
>eCos</SPAN
|
> Component Writer's Guide</TH
|
> Component Writer's Guide</TH
|
></TR
|
></TR
|
><TR
|
><TR
|
><TD
|
><TD
|
WIDTH="10%"
|
WIDTH="10%"
|
ALIGN="left"
|
ALIGN="left"
|
VALIGN="bottom"
|
VALIGN="bottom"
|
><A
|
><A
|
HREF="ref.cdl-component.html"
|
HREF="ref.cdl-component.html"
|
ACCESSKEY="P"
|
ACCESSKEY="P"
|
>Prev</A
|
>Prev</A
|
></TD
|
></TD
|
><TD
|
><TD
|
WIDTH="80%"
|
WIDTH="80%"
|
ALIGN="center"
|
ALIGN="center"
|
VALIGN="bottom"
|
VALIGN="bottom"
|
></TD
|
></TD
|
><TD
|
><TD
|
WIDTH="10%"
|
WIDTH="10%"
|
ALIGN="right"
|
ALIGN="right"
|
VALIGN="bottom"
|
VALIGN="bottom"
|
><A
|
><A
|
HREF="ref.cdl-interface.html"
|
HREF="ref.cdl-interface.html"
|
ACCESSKEY="N"
|
ACCESSKEY="N"
|
>Next</A
|
>Next</A
|
></TD
|
></TD
|
></TR
|
></TR
|
></TABLE
|
></TABLE
|
><HR
|
><HR
|
ALIGN="LEFT"
|
ALIGN="LEFT"
|
WIDTH="100%"></DIV
|
WIDTH="100%"></DIV
|
><H1
|
><H1
|
><A
|
><A
|
NAME="REF.CDL-PACKAGE"><TT
|
NAME="REF.CDL-PACKAGE"><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
></H1
|
></H1
|
><DIV
|
><DIV
|
CLASS="REFNAMEDIV"
|
CLASS="REFNAMEDIV"
|
><A
|
><A
|
NAME="AEN3272"
|
NAME="AEN3272"
|
></A
|
></A
|
><H2
|
><H2
|
>Name</H2
|
>Name</H2
|
>Command <TT
|
>Command <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
> -- Define a package, a component that can be distributed</DIV
|
> -- Define a package, a component that can be distributed</DIV
|
><DIV
|
><DIV
|
CLASS="REFSYNOPSISDIV"
|
CLASS="REFSYNOPSISDIV"
|
><A
|
><A
|
NAME="AEN3276"><H2
|
NAME="AEN3276"><H2
|
>Synopsis</H2
|
>Synopsis</H2
|
><TABLE
|
><TABLE
|
BORDER="5"
|
BORDER="5"
|
BGCOLOR="#E0E0F0"
|
BGCOLOR="#E0E0F0"
|
WIDTH="70%"
|
WIDTH="70%"
|
><TR
|
><TR
|
><TD
|
><TD
|
><PRE
|
><PRE
|
CLASS="SYNOPSIS"
|
CLASS="SYNOPSIS"
|
>cdl_package <name> {
|
>cdl_package <name> {
|
…
|
…
|
}</PRE
|
}</PRE
|
></TD
|
></TD
|
></TR
|
></TR
|
></TABLE
|
></TABLE
|
></DIV
|
></DIV
|
><DIV
|
><DIV
|
CLASS="REFSECT1"
|
CLASS="REFSECT1"
|
><A
|
><A
|
NAME="AEN3278"
|
NAME="AEN3278"
|
></A
|
></A
|
><H2
|
><H2
|
>Description</H2
|
>Description</H2
|
><P
|
><P
|
>A package is a unit of distribution. It is also a configuration option
|
>A package is a unit of distribution. It is also a configuration option
|
in that users can choose whether or not a particular package is loaded
|
in that users can choose whether or not a particular package is loaded
|
into the configuration, and which version of that package should be
|
into the configuration, and which version of that package should be
|
loaded. It is also a component in that it can contain additional
|
loaded. It is also a component in that it can contain additional
|
components and options in a hierarchy.</P
|
components and options in a hierarchy.</P
|
><P
|
><P
|
>The top-level <SPAN
|
>The top-level <SPAN
|
CLASS="APPLICATION"
|
CLASS="APPLICATION"
|
>CDL</SPAN
|
>CDL</SPAN
|
> script for a package should begin with a <TT
|
> script for a package should begin with a <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
>
|
>
|
command. This can contain most of the properties that can be used in a
|
command. This can contain most of the properties that can be used in a
|
<TT
|
<TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_option</TT
|
>cdl_option</TT
|
> command, and a number of additional ones which apply to a
|
> command, and a number of additional ones which apply to a
|
package as a whole. It is also possible to include <TT
|
package as a whole. It is also possible to include <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_component</TT
|
>cdl_component</TT
|
>,
|
>,
|
<TT
|
<TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_interface</TT
|
>cdl_interface</TT
|
> and <TT
|
> and <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_option</TT
|
>cdl_option</TT
|
> commands in the body of a package.
|
> commands in the body of a package.
|
However all configuration entities that occur at the top level of the
|
However all configuration entities that occur at the top level of the
|
script containing the <TT
|
script containing the <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
> command are automatically placed
|
> command are automatically placed
|
below that package in the configuration hierarchy, so putting them
|
below that package in the configuration hierarchy, so putting them
|
inside the body has no effect.</P
|
inside the body has no effect.</P
|
><P
|
><P
|
>The following properties cannot be used in the body of a <TT
|
>The following properties cannot be used in the body of a <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
>
|
>
|
command:</P
|
command:</P
|
><P
|
><P
|
></P
|
></P
|
><DIV
|
><DIV
|
CLASS="VARIABLELIST"
|
CLASS="VARIABLELIST"
|
><DL
|
><DL
|
><DT
|
><DT
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>flavor</SPAN
|
>flavor</SPAN
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Packages always have the flavor <TT
|
>Packages always have the flavor <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>booldata</TT
|
>booldata</TT
|
>.</P
|
>.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>default_value</SPAN
|
>default_value</SPAN
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>The value of a package is its version number. This is specified at the
|
>The value of a package is its version number. This is specified at the
|
time the package is loaded into the configuration, and cannot be
|
time the package is loaded into the configuration, and cannot be
|
calculated afterwards. Typically the most recent version of the
|
calculated afterwards. Typically the most recent version of the
|
package will be loaded.</P
|
package will be loaded.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>legal_values</SPAN
|
>legal_values</SPAN
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>The legal values list for a given package is determined by which
|
>The legal values list for a given package is determined by which
|
versions of that package are installed in the component repository,
|
versions of that package are installed in the component repository,
|
and cannot be further constrained in the CDL scripts.</P
|
and cannot be further constrained in the CDL scripts.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>calculated</SPAN
|
>calculated</SPAN
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>The value of a package is always selected at the time that it is
|
>The value of a package is always selected at the time that it is
|
loaded into the configuration, and cannot be re-calculated afterwards.</P
|
loaded into the configuration, and cannot be re-calculated afterwards.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>script</SPAN
|
>script</SPAN
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>This would be redundant since the CDL script containing the
|
>This would be redundant since the CDL script containing the
|
<TT
|
<TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
> command acts as that package's script.</P
|
> command acts as that package's script.</P
|
></DD
|
></DD
|
></DL
|
></DL
|
></DIV
|
></DIV
|
><P
|
><P
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
> is implemented as a Tcl command that takes two
|
> is implemented as a Tcl command that takes two
|
arguments, a name and a body. The name must be a valid C preprocessor
|
arguments, a name and a body. The name must be a valid C preprocessor
|
identifier: a sequence of upper or lower case letters, digits or
|
identifier: a sequence of upper or lower case letters, digits or
|
underscores, starting with a non-digit character; identifiers
|
underscores, starting with a non-digit character; identifiers
|
beginning with an underscore should normally be avoided because they
|
beginning with an underscore should normally be avoided because they
|
may clash with system packages or with identifiers reserved for use by
|
may clash with system packages or with identifiers reserved for use by
|
the compiler. Packages should always have unique names within a given
|
the compiler. Packages should always have unique names within a given
|
component repository. For a recommended naming convention see <A
|
component repository. For a recommended naming convention see <A
|
HREF="package.contents.html"
|
HREF="package.contents.html"
|
>the Section called <I
|
>the Section called <I
|
>Package Contents and Layout</I
|
>Package Contents and Layout</I
|
> in Chapter 2</A
|
> in Chapter 2</A
|
>.</P
|
>.</P
|
><P
|
><P
|
>The second argument to <TT
|
>The second argument to <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
> is a body of properties and other
|
> is a body of properties and other
|
commands, typically surrounded by braces so that the Tcl interpreter
|
commands, typically surrounded by braces so that the Tcl interpreter
|
treats it as a single argument. This body will be processed by a
|
treats it as a single argument. This body will be processed by a
|
recursive invocation of the Tcl interpreter, extended with additional
|
recursive invocation of the Tcl interpreter, extended with additional
|
commands for the various properties that are allowed inside a
|
commands for the various properties that are allowed inside a
|
<TT
|
<TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_package</TT
|
>cdl_package</TT
|
>. The valid commands are:</P
|
>. The valid commands are:</P
|
><P
|
><P
|
></P
|
></P
|
><DIV
|
><DIV
|
CLASS="VARIABLELIST"
|
CLASS="VARIABLELIST"
|
><DL
|
><DL
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.active-if.html"
|
HREF="ref.active-if.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>active_if</SPAN
|
>active_if</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Allow additional control over the active state of this package.</P
|
>Allow additional control over the active state of this package.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.cdl-component.html"
|
HREF="ref.cdl-component.html"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_component</TT
|
>cdl_component</TT
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Define a component which should appear immediately below this package
|
>Define a component which should appear immediately below this package
|
in the configuration hierarchy.</P
|
in the configuration hierarchy.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.cdl-interface.html"
|
HREF="ref.cdl-interface.html"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_interface</TT
|
>cdl_interface</TT
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Define an interface which should appear immediately below this
|
>Define an interface which should appear immediately below this
|
package in the configuration hierarchy.</P
|
package in the configuration hierarchy.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.cdl-option.html"
|
HREF="ref.cdl-option.html"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_option</TT
|
>cdl_option</TT
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Define an option which should appear immediately below
|
>Define an option which should appear immediately below
|
this package in the configuration hierarchy.</P
|
this package in the configuration hierarchy.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.compile.html"
|
HREF="ref.compile.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>compile</SPAN
|
>compile</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>List the source files that should be built for this package.</P
|
>List the source files that should be built for this package.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.define.html"
|
HREF="ref.define.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>define</SPAN
|
>define</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Specify additional <TT
|
>Specify additional <TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>#define</TT
|
>#define</TT
|
> symbols that should go
|
> symbols that should go
|
into the package's configuration header file.</P
|
into the package's configuration header file.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.define-format.html"
|
HREF="ref.define-format.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>define_format</SPAN
|
>define_format</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Control how the package's value will appear in the global
|
>Control how the package's value will appear in the global
|
configuration header file <TT
|
configuration header file <TT
|
CLASS="FILENAME"
|
CLASS="FILENAME"
|
>pkgconf/system.h</TT
|
>pkgconf/system.h</TT
|
></P
|
></P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.define-header.html"
|
HREF="ref.define-header.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>define_header</SPAN
|
>define_header</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Specify the configuration header file that will be generated for this package.</P
|
>Specify the configuration header file that will be generated for this package.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.define-proc.html"
|
HREF="ref.define-proc.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>define_proc</SPAN
|
>define_proc</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Use a fragment of Tcl code to output additional data to
|
>Use a fragment of Tcl code to output additional data to
|
configuration header files.</P
|
configuration header files.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.description.html"
|
HREF="ref.description.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>description</SPAN
|
>description</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Provide a textual description for this component.</P
|
>Provide a textual description for this component.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.display.html"
|
HREF="ref.display.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>display</SPAN
|
>display</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Provide a short string describing this component.</P
|
>Provide a short string describing this component.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.doc.html"
|
HREF="ref.doc.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>doc</SPAN
|
>doc</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>The location of on-line documentation for this component.</P
|
>The location of on-line documentation for this component.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.hardware.html"
|
HREF="ref.hardware.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>hardware</SPAN
|
>hardware</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>This package is tied to specific hardware.</P
|
>This package is tied to specific hardware.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.if-define.html"
|
HREF="ref.if-define.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>if_define</SPAN
|
>if_define</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Output a common preprocessor construct to a configuration header file. </P
|
>Output a common preprocessor construct to a configuration header file. </P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.implements.html"
|
HREF="ref.implements.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>implements</SPAN
|
>implements</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Enabling this component provides one instance of a more general
|
>Enabling this component provides one instance of a more general
|
interface. </P
|
interface. </P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.include-dir.html"
|
HREF="ref.include-dir.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>include_dir</SPAN
|
>include_dir</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Specify the desired location of this package's exported header files in
|
>Specify the desired location of this package's exported header files in
|
the install tree.</P
|
the install tree.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.include-files.html"
|
HREF="ref.include-files.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>include_files</SPAN
|
>include_files</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>List the header files that are exported by this package.</P
|
>List the header files that are exported by this package.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.library.html"
|
HREF="ref.library.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>library</SPAN
|
>library</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Specify which library should contain the object files
|
>Specify which library should contain the object files
|
generated by building this package.</P
|
generated by building this package.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.make.html"
|
HREF="ref.make.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>make</SPAN
|
>make</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>An additional custom build step associated with this component, resulting
|
>An additional custom build step associated with this component, resulting
|
in a target that should not go directly into a library.</P
|
in a target that should not go directly into a library.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.make-object.html"
|
HREF="ref.make-object.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>make_object</SPAN
|
>make_object</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>An additional custom build step associated with this component, resulting
|
>An additional custom build step associated with this component, resulting
|
in an object file that should go into a library.</P
|
in an object file that should go into a library.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.no-define.html"
|
HREF="ref.no-define.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>no_define</SPAN
|
>no_define</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Suppress the normal generation of the package's
|
>Suppress the normal generation of the package's
|
<TT
|
<TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>#define</TT
|
>#define</TT
|
> in the global configuration header file
|
> in the global configuration header file
|
<TT
|
<TT
|
CLASS="FILENAME"
|
CLASS="FILENAME"
|
>pkgconf/system.h</TT
|
>pkgconf/system.h</TT
|
>.</P
|
>.</P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.parent.html"
|
HREF="ref.parent.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>parent</SPAN
|
>parent</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>Control the location of this package in the configuration hierarchy. </P
|
>Control the location of this package in the configuration hierarchy. </P
|
></DD
|
></DD
|
><DT
|
><DT
|
><A
|
><A
|
HREF="ref.requires.html"
|
HREF="ref.requires.html"
|
><SPAN
|
><SPAN
|
CLASS="PROPERTY"
|
CLASS="PROPERTY"
|
>requires</SPAN
|
>requires</SPAN
|
></A
|
></A
|
></DT
|
></DT
|
><DD
|
><DD
|
><P
|
><P
|
>List constraints that the configuration should satisfy if this package is
|
>List constraints that the configuration should satisfy if this package is
|
active.</P
|
active.</P
|
></DD
|
></DD
|
></DL
|
></DL
|
></DIV
|
></DIV
|
></DIV
|
></DIV
|
><DIV
|
><DIV
|
CLASS="REFSECT1"
|
CLASS="REFSECT1"
|
><A
|
><A
|
NAME="AEN3468"
|
NAME="AEN3468"
|
></A
|
></A
|
><H2
|
><H2
|
>Example</H2
|
>Example</H2
|
><TABLE
|
><TABLE
|
BORDER="5"
|
BORDER="5"
|
BGCOLOR="#E0E0F0"
|
BGCOLOR="#E0E0F0"
|
WIDTH="70%"
|
WIDTH="70%"
|
><TR
|
><TR
|
><TD
|
><TD
|
><PRE
|
><PRE
|
CLASS="PROGRAMLISTING"
|
CLASS="PROGRAMLISTING"
|
>cdl_package CYGPKG_INFRA {
|
>cdl_package CYGPKG_INFRA {
|
display "Infrastructure"
|
display "Infrastructure"
|
include_dir cyg/infra
|
include_dir cyg/infra
|
description "
|
description "
|
Common types and useful macros.
|
Common types and useful macros.
|
Tracing and assertion facilities.
|
Tracing and assertion facilities.
|
Package startup options."
|
Package startup options."
|
|
|
compile startup.cxx prestart.cxx pkgstart.cxx userstart.cxx \
|
compile startup.cxx prestart.cxx pkgstart.cxx userstart.cxx \
|
dummyxxmain.cxx null.cxx simple.cxx fancy.cxx buffer.cxx \
|
dummyxxmain.cxx null.cxx simple.cxx fancy.cxx buffer.cxx \
|
diag.cxx tcdiag.cxx memcpy.c memset.c delete.cxx
|
diag.cxx tcdiag.cxx memcpy.c memset.c delete.cxx
|
} </PRE
|
} </PRE
|
></TD
|
></TD
|
></TR
|
></TR
|
></TABLE
|
></TABLE
|
></DIV
|
></DIV
|
><DIV
|
><DIV
|
CLASS="REFSECT1"
|
CLASS="REFSECT1"
|
><A
|
><A
|
NAME="AEN3471"
|
NAME="AEN3471"
|
></A
|
></A
|
><H2
|
><H2
|
>See Also</H2
|
>See Also</H2
|
><P
|
><P
|
>Command <A
|
>Command <A
|
HREF="ref.cdl-option.html"
|
HREF="ref.cdl-option.html"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_option</TT
|
>cdl_option</TT
|
></A
|
></A
|
>,
|
>,
|
command <A
|
command <A
|
HREF="ref.cdl-component.html"
|
HREF="ref.cdl-component.html"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_component</TT
|
>cdl_component</TT
|
></A
|
></A
|
>,
|
>,
|
command <A
|
command <A
|
HREF="ref.cdl-interface.html"
|
HREF="ref.cdl-interface.html"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_interface</TT
|
>cdl_interface</TT
|
></A
|
></A
|
>.</P
|
>.</P
|
></DIV
|
></DIV
|
><DIV
|
><DIV
|
CLASS="NAVFOOTER"
|
CLASS="NAVFOOTER"
|
><HR
|
><HR
|
ALIGN="LEFT"
|
ALIGN="LEFT"
|
WIDTH="100%"><TABLE
|
WIDTH="100%"><TABLE
|
SUMMARY="Footer navigation table"
|
SUMMARY="Footer navigation table"
|
WIDTH="100%"
|
WIDTH="100%"
|
BORDER="0"
|
BORDER="0"
|
CELLPADDING="0"
|
CELLPADDING="0"
|
CELLSPACING="0"
|
CELLSPACING="0"
|
><TR
|
><TR
|
><TD
|
><TD
|
WIDTH="33%"
|
WIDTH="33%"
|
ALIGN="left"
|
ALIGN="left"
|
VALIGN="top"
|
VALIGN="top"
|
><A
|
><A
|
HREF="ref.cdl-component.html"
|
HREF="ref.cdl-component.html"
|
ACCESSKEY="P"
|
ACCESSKEY="P"
|
>Prev</A
|
>Prev</A
|
></TD
|
></TD
|
><TD
|
><TD
|
WIDTH="34%"
|
WIDTH="34%"
|
ALIGN="center"
|
ALIGN="center"
|
VALIGN="top"
|
VALIGN="top"
|
><A
|
><A
|
HREF="cdl-guide.html"
|
HREF="cdl-guide.html"
|
ACCESSKEY="H"
|
ACCESSKEY="H"
|
>Home</A
|
>Home</A
|
></TD
|
></TD
|
><TD
|
><TD
|
WIDTH="33%"
|
WIDTH="33%"
|
ALIGN="right"
|
ALIGN="right"
|
VALIGN="top"
|
VALIGN="top"
|
><A
|
><A
|
HREF="ref.cdl-interface.html"
|
HREF="ref.cdl-interface.html"
|
ACCESSKEY="N"
|
ACCESSKEY="N"
|
>Next</A
|
>Next</A
|
></TD
|
></TD
|
></TR
|
></TR
|
><TR
|
><TR
|
><TD
|
><TD
|
WIDTH="33%"
|
WIDTH="33%"
|
ALIGN="left"
|
ALIGN="left"
|
VALIGN="top"
|
VALIGN="top"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_component</TT
|
>cdl_component</TT
|
></TD
|
></TD
|
><TD
|
><TD
|
WIDTH="34%"
|
WIDTH="34%"
|
ALIGN="center"
|
ALIGN="center"
|
VALIGN="top"
|
VALIGN="top"
|
><A
|
><A
|
HREF="reference.html"
|
HREF="reference.html"
|
ACCESSKEY="U"
|
ACCESSKEY="U"
|
>Up</A
|
>Up</A
|
></TD
|
></TD
|
><TD
|
><TD
|
WIDTH="33%"
|
WIDTH="33%"
|
ALIGN="right"
|
ALIGN="right"
|
VALIGN="top"
|
VALIGN="top"
|
><TT
|
><TT
|
CLASS="LITERAL"
|
CLASS="LITERAL"
|
>cdl_interface</TT
|
>cdl_interface</TT
|
></TD
|
></TD
|
></TR
|
></TR
|
></TABLE
|
></TABLE
|
></DIV
|
></DIV
|
></BODY
|
></BODY
|
></HTML
|
></HTML
|
|
|