1 <!-- Copyright (C) 2003 Red Hat, Inc. -->
2 <!-- This material may be distributed only subject to the terms -->
3 <!-- and conditions set forth in the Open Publication License, v1.0 -->
4 <!-- or later (the latest version is presently available at -->
5 <!-- http://www.opencontent.org/openpub/). -->
6 <!-- Distribution of the work or derivative of the work in any -->
7 <!-- standard (paper) book form is prohibited unless prior -->
8 <!-- permission is obtained from the copyright holder. -->
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
19 TITLE="The eCos Component Writer's Guide"
20 HREF="cdl-guide.html"><LINK
22 TITLE="CDL Language Specification"
23 HREF="reference.html"><LINK
26 HREF="ref.define-format.html"><LINK
29 HREF="ref.define-proc.html"></HEAD
40 SUMMARY="Header navigation table"
52 > Component Writer's Guide</TH
60 HREF="ref.define-format.html"
74 HREF="ref.define-proc.html"
85 NAME="REF.DEFINE-HEADER"><SPAN
99 > -- Specify the configuration header file that
100 will be generated for a given package.</DIV
102 CLASS="REFSYNOPSISDIV"
114 >cdl_package <name> {
115 define_header <file name>
130 >When the configuration tools generate a build tree, one of the steps
131 is to output each package's configuration data to a header file. For
132 example the kernel's configuration data gets output to
135 >pkgconf/kernel.h</TT
137 each package's source code to <TT
141 appropriate header file and adapt to the choices made by the user.</P
143 >By default the configuration tools will synthesize a file name from
144 the package name. This involves removing any prefix such as
148 >, up to and including the first underscore,
149 and then converting the remainder of the name to lower case. In some
150 cases it may be desirable to use a different header file, for example
151 an existing package may have been ported to <SPAN
154 > and the source code
158 > a particular file for
159 configuration data. In such cases a <SPAN
163 used to specify an alternative filename.</P
168 > property can only be used in the body of a
172 > command. It applies to a package as a whole and cannot
173 be used at a finer grain. The name specified in a <SPAN
177 property will always be interpreted as relative to the
182 of the install tree.</P
190 >For hardware-specific packages such as device drivers and HAL
191 packages, the current scheme of generating a configuration header file
192 name based on the package name may be abandoned. Instead all hardware
193 packages would send their configuration data to a single header file,
196 >pkgconf/hardware.h</TT
198 make it easier for code to obtain details of the current hardware, but
199 obviously there are compatibility issues. For now it is recommended
200 that all hardware packages specify their configuration header file
219 CLASS="PROGRAMLISTING"
220 >cdl_package CYGPKG_HAL_ARM {
221 display "ARM architecture"
225 define_header hal_arm.h
241 HREF="ref.define.html"
248 HREF="ref.define-format.html"
255 HREF="ref.define-proc.html"
262 HREF="ref.if-define.html"
269 HREF="ref.no-define.html"
276 HREF="ref.hardware.html"
288 SUMMARY="Footer navigation table"
299 HREF="ref.define-format.html"
308 HREF="cdl-guide.html"
317 HREF="ref.define-proc.html"
336 HREF="reference.html"