OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [doc/] [html/] [cdl-guide/] [ref.library.html] - Diff between revs 28 and 174

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 28 Rev 174
<!-- 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
>library</TITLE
>library</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="legal_values"
TITLE="legal_values"
HREF="ref.legal-values.html"><LINK
HREF="ref.legal-values.html"><LINK
REL="NEXT"
REL="NEXT"
TITLE="make"
TITLE="make"
HREF="ref.make.html"></HEAD
HREF="ref.make.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.legal-values.html"
HREF="ref.legal-values.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.make.html"
HREF="ref.make.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.LIBRARY"><SPAN
NAME="REF.LIBRARY"><SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>library</SPAN
>library</SPAN
></H1
></H1
><DIV
><DIV
CLASS="REFNAMEDIV"
CLASS="REFNAMEDIV"
><A
><A
NAME="AEN4667"
NAME="AEN4667"
></A
></A
><H2
><H2
>Name</H2
>Name</H2
>Property <SPAN
>Property <SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>library</SPAN
>library</SPAN
>&nbsp;--&nbsp;Specify which library should contain the object files
>&nbsp;--&nbsp;Specify which library should contain the object files
generated by building this package.</DIV
generated by building this package.</DIV
><DIV
><DIV
CLASS="REFSYNOPSISDIV"
CLASS="REFSYNOPSISDIV"
><A
><A
NAME="AEN4671"><H2
NAME="AEN4671"><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 &lt;name&gt; {
>cdl_package &lt;name&gt; {
    library &lt;library name&gt;
    library &lt;library name&gt;
    &#8230;
    &#8230;
}</PRE
}</PRE
></TD
></TD
></TR
></TR
></TABLE
></TABLE
></DIV
></DIV
><DIV
><DIV
CLASS="REFSECT1"
CLASS="REFSECT1"
><A
><A
NAME="AEN4673"
NAME="AEN4673"
></A
></A
><H2
><H2
>Description</H2
>Description</H2
><P
><P
>By default all object files that get built for all packages end up in
>By default all object files that get built for all packages end up in
a single library, <TT
a single library, <TT
CLASS="FILENAME"
CLASS="FILENAME"
>libtarget.a</TT
>libtarget.a</TT
>. This makes things
>. This makes things
easier for the typical application developer because it is only
easier for the typical application developer because it is only
necessary to link with a single library, rather than with separate
necessary to link with a single library, rather than with separate
libraries for each package. It is possible to specify an alternative
libraries for each package. It is possible to specify an alternative
library for specific files as an option to the <SPAN
library for specific files as an option to the <SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>compile</SPAN
>compile</SPAN
> and
> and
<SPAN
<SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>make_object</SPAN
>make_object</SPAN
> properties, and there is one library <A
> properties, and there is one library <A
HREF="build.html"
HREF="build.html"
><TT
><TT
CLASS="FILENAME"
CLASS="FILENAME"
>libextras.a</TT
>libextras.a</TT
></A
></A
> which serves a
> which serves a
specific purpose in the build system. The <SPAN
specific purpose in the build system. The <SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>library</SPAN
>library</SPAN
> property allows an
> property allows an
alternative library to be specified for all the object files that will
alternative library to be specified for all the object files that will
be generated for a given package.</P
be generated for a given package.</P
><P
><P
>The use of the <SPAN
>The use of the <SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>library</SPAN
>library</SPAN
> property should be avoided, since it makes
> property should be avoided, since it makes
things more difficult for application developers. The property is
things more difficult for application developers. The property is
intended only for special cases, for example if there are legal
intended only for special cases, for example if there are legal
objections to mingling object files from different packages in a
objections to mingling object files from different packages in a
single library. It could also be used to work around name clash
single library. It could also be used to work around name clash
problems if two packages happen to define an exported symbol with the
problems if two packages happen to define an exported symbol with the
same name, but any attempt to use multiple libraries in this way is
same name, but any attempt to use multiple libraries in this way is
error-prone and should be avoided.</P
error-prone and should be avoided.</P
><P
><P
>The <SPAN
>The <SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>library</SPAN
>library</SPAN
> property takes a single argument, the name of a library,
> property takes a single argument, the name of a library,
which should follow the standard naming convention of
which should follow the standard naming convention of
<TT
<TT
CLASS="LITERAL"
CLASS="LITERAL"
>lib&lt;something&gt;.a</TT
>lib&lt;something&gt;.a</TT
>. A <SPAN
>. A <SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>library</SPAN
>library</SPAN
> property can
> property can
only occur in the body of a <TT
only occur in the body of a <TT
CLASS="LITERAL"
CLASS="LITERAL"
>cdl_package</TT
>cdl_package</TT
> command and applies to all
> command and applies to all
object files generated for that package (except where explicitly
object files generated for that package (except where explicitly
overwritten with a <TT
overwritten with a <TT
CLASS="LITERAL"
CLASS="LITERAL"
>-library=</TT
>-library=</TT
> option to one of the
> option to one of the
build-related properties). A <TT
build-related properties). A <TT
CLASS="LITERAL"
CLASS="LITERAL"
>cdl_package</TT
>cdl_package</TT
> body can contain at most
> body can contain at most
one <SPAN
one <SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>library</SPAN
>library</SPAN
> property.</P
> property.</P
></DIV
></DIV
><DIV
><DIV
CLASS="REFSECT1"
CLASS="REFSECT1"
><A
><A
NAME="AEN4692"
NAME="AEN4692"
></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 &lt;SOME_PACKAGE&gt; {
>cdl_package &lt;SOME_PACKAGE&gt; {
    &#8230;
    &#8230;
    library  libSomePackage.a
    library  libSomePackage.a
}</PRE
}</PRE
></TD
></TD
></TR
></TR
></TABLE
></TABLE
></DIV
></DIV
><DIV
><DIV
CLASS="REFSECT1"
CLASS="REFSECT1"
><A
><A
NAME="AEN4695"
NAME="AEN4695"
></A
></A
><H2
><H2
>See Also</H2
>See Also</H2
><P
><P
>Properties <A
>Properties <A
HREF="ref.compile.html"
HREF="ref.compile.html"
><SPAN
><SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>compile</SPAN
>compile</SPAN
></A
></A
>,
>,
<A
<A
HREF="ref.make.html"
HREF="ref.make.html"
><SPAN
><SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>make</SPAN
>make</SPAN
></A
></A
>, and
>, and
<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
>,
>,
command <A
command <A
HREF="ref.cdl-package.html"
HREF="ref.cdl-package.html"
><TT
><TT
CLASS="LITERAL"
CLASS="LITERAL"
>cdl_package</TT
>cdl_package</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.legal-values.html"
HREF="ref.legal-values.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.make.html"
HREF="ref.make.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"
><SPAN
><SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>legal_values</SPAN
>legal_values</SPAN
></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"
><SPAN
><SPAN
CLASS="PROPERTY"
CLASS="PROPERTY"
>make</SPAN
>make</SPAN
></TD
></TD
></TR
></TR
></TABLE
></TABLE
></DIV
></DIV
></BODY
></BODY
></HTML
></HTML
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.