flash: use uncached flash to avoid problems
[nios2ecos.git] / neek / ecos.ecc
blob0c1e0422533a046268f8df905418750ee0ae2aee
1 # eCos saved configuration\r
2 \r
3 # ---- commands --------------------------------------------------------\r
4 # This section contains information about the savefile format.\r
5 # It should not be edited. Any modifications made to this section\r
6 # may make it impossible for the configuration tools to read\r
7 # the savefile.\r
8 \r
9 cdl_savefile_version 1;\r
10 cdl_savefile_command cdl_savefile_version {};\r
11 cdl_savefile_command cdl_savefile_command {};\r
12 cdl_savefile_command cdl_configuration { description hardware template package };\r
13 cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };\r
14 cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };\r
15 cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };\r
16 cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };\r
18 # ---- toplevel --------------------------------------------------------\r
19 # This section defines the toplevel configuration object. The only\r
20 # values that can be changed are the name of the configuration and\r
21 # the description field. It is not possible to modify the target,\r
22 # the template or the set of packages simply by editing the lines\r
23 # below because these changes have wide-ranging effects. Instead\r
24 # the appropriate tools should be used to make such modifications.\r
26 cdl_configuration eCos {\r
27     description "" ;\r
29     # These fields should not be modified.\r
30     hardware    nios2_neek ;\r
31     template    default ;\r
32     package -hardware CYGPKG_HAL_NIOS2 current ;\r
33     package -hardware CYGPKG_HAL_SOPC current ;\r
34     package -hardware CYGPKG_ALTERA_AVALON_UART_COMM current ;\r
35     package -hardware CYGPKG_ALTERA_AVALON_JTAG_UART_COMM current ;\r
36     package -hardware CYGPKG_ALTERA_AVALON_UART current ;\r
37     package -hardware CYGPKG_ALTERA_AVALON_JTAG_UART current ;\r
38     package -hardware CYGPKG_ALTERA_AVALON_TIMER current ;\r
39     package -template CYGPKG_HAL v3_0 ;\r
40     package -template CYGPKG_IO v3_0 ;\r
41     package -template CYGPKG_IO_SERIAL v3_0 ;\r
42     package -template CYGPKG_INFRA v3_0 ;\r
43     package -template CYGPKG_KERNEL v3_0 ;\r
44     package -template CYGPKG_MEMALLOC v3_0 ;\r
45     package -template CYGPKG_ISOINFRA v3_0 ;\r
46     package -template CYGPKG_LIBC v3_0 ;\r
47     package -template CYGPKG_LIBC_I18N v3_0 ;\r
48     package -template CYGPKG_LIBC_SETJMP v3_0 ;\r
49     package -template CYGPKG_LIBC_SIGNALS v3_0 ;\r
50     package -template CYGPKG_LIBC_STARTUP v3_0 ;\r
51     package -template CYGPKG_LIBC_STDIO v3_0 ;\r
52     package -template CYGPKG_LIBC_STDLIB v3_0 ;\r
53     package -template CYGPKG_LIBC_STRING v3_0 ;\r
54     package -template CYGPKG_LIBC_TIME v3_0 ;\r
55     package -template CYGPKG_LIBM v3_0 ;\r
56     package -template CYGPKG_IO_WALLCLOCK v3_0 ;\r
57     package -template CYGPKG_ERROR v3_0 ;\r
58 };\r
60 # ---- conflicts -------------------------------------------------------\r
61 # There are no conflicts.\r
63 # ---- contents --------------------------------------------------------\r
64 # >\r
65 # >\r
66 # Global build options\r
67 # Global build options including control over\r
68 # compiler flags, linker flags and choice of toolchain.\r
69 #\r
70 cdl_component CYGBLD_GLOBAL_OPTIONS {\r
71     # There is no associated value.\r
73     # The following properties are affected by this value\r
74 };\r
76 # >\r
77 # Global command prefix\r
78 # This option specifies the command prefix used when\r
79 # invoking the build tools.\r
80 #\r
81 cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {\r
82     # Flavor: data\r
83     # No user value, uncomment the following line to provide one.\r
84     # user_value nios2-elf\r
85     # value_source default\r
86     # Default value: nios2-elf\r
87 };\r
89 # Start address\r
90 # Start address\r
91 #\r
92 cdl_option CYGBLD_GLOBAL_START_ADDRESS {\r
93     # Flavor: data\r
94     # No user value, uncomment the following line to provide one.\r
95     # user_value 0\r
96     # value_source default\r
97     # Default value: 0\r
98 };\r
100 # Global compiler flags\r
101 # This option controls the global compiler flags which\r
102 # are used to compile all packages by\r
103 # default. Individual packages may define\r
104 # options which override these global flags.\r
106 cdl_option CYGBLD_GLOBAL_CFLAGS {\r
107     # Flavor: data\r
108     # No user value, uncomment the following line to provide one.\r
109     # user_value "-g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -DSYSTEM_BUS_WIDTH=32  -mhw-mul -mno-hw-mulx -mno-hw-div"\r
110     # value_source default\r
111     # Default value: "-g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -DSYSTEM_BUS_WIDTH=32  -mhw-mul -mno-hw-mulx -mno-hw-div"\r
113     # The following properties are affected by this value\r
114     # option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS\r
115     #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") \r
116     # option CYGBLD_INFRA_CFLAGS_PIPE\r
117     #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") \r
118 };\r
120 # Global linker flags\r
121 # This option controls the global linker flags. Individual\r
122 # packages may define options which override these global flags.\r
124 cdl_option CYGBLD_GLOBAL_LDFLAGS {\r
125     # Flavor: data\r
126     # No user value, uncomment the following line to provide one.\r
127     # user_value "-g -nostdlib -Wl,--gc-sections -Wl,-static  -mhw-mul -mno-hw-mulx -mno-hw-div"\r
128     # value_source default\r
129     # Default value: "-g -nostdlib -Wl,--gc-sections -Wl,-static  -mhw-mul -mno-hw-mulx -mno-hw-div"\r
130 };\r
132 # Standard compiler warning flags\r
133 # This option specifies the default warning-related compiler flags used\r
134 # on all eCos platforms.\r
136 cdl_option CYGBLD_GLOBAL_WARNFLAGS {\r
137     # Calculated value:  "-Wall -Wpointer-arith -Wstrict-prototypes -Wundef -Woverloaded-virtual -Wno-write-strings " \r
138     # Flavor: data\r
139     # Current_value: -Wall -Wpointer-arith -Wstrict-prototypes -Wundef -Woverloaded-virtual -Wno-write-strings \r
140 };\r
142 # Build common GDB stub ROM image\r
143 # Unless a target board has specific requirements to the\r
144 # stub implementation, it can use a simple common stub.\r
145 # This option, which gets enabled by platform HALs as\r
146 # appropriate, controls the building of the common stub.\r
148 cdl_option CYGBLD_BUILD_COMMON_GDB_STUBS {\r
149     # Flavor: bool\r
150     # No user value, uncomment the following line to provide one.\r
151     # user_value 0\r
152     # value_source default\r
153     # Default value: 0\r
154     # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
155     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
156     #   --> 0\r
157 };\r
159 # <\r
160 # <\r
161 # eCos HAL\r
162 # doc: ref/the-ecos-hardware-abstraction-layer.html\r
163 # The eCos HAL package provide a porting layer for\r
164 # higher-level parts of the system such as the kernel and the\r
165 # C library. Each installation should have HAL packages for\r
166 # one or more architectures, and for each architecture there\r
167 # may be one or more supported platforms. It is necessary to\r
168 # select one target architecture and one platform for that\r
169 # architecture. There are also a number of configuration\r
170 # options that are common to all HAL packages.\r
172 cdl_package CYGPKG_HAL {\r
173     # Packages cannot be added or removed, nor can their version be changed,\r
174     # simply by editing their value. Instead the appropriate configuration\r
175     # should be used to perform these actions.\r
177     # This value cannot be modified here.\r
178     # Flavor: booldata\r
179     # Current value: 1 v3_0\r
180     # Requires: CYGPKG_INFRA\r
181     #     CYGPKG_INFRA == v3_0\r
182     #   --> 1\r
184     # The following properties are affected by this value\r
185 };\r
187 # >\r
188 # Platform-independent HAL options\r
189 # A number of configuration options are common to most or all\r
190 # HAL packages, for example options controlling how much state\r
191 # should be saved during a context switch. The implementations\r
192 # of these options will vary from architecture to architecture.\r
194 cdl_component CYGPKG_HAL_COMMON {\r
195     # There is no associated value.\r
196 };\r
198 # >\r
199 # Provide eCos kernel support\r
200 # The HAL can be configured to either support the full eCos\r
201 # kernel, or to support only very simple applications which do\r
202 # not require a full kernel. If kernel support is not required\r
203 # then some of the startup, exception, and interrupt handling\r
204 # code can be eliminated.\r
206 cdl_option CYGFUN_HAL_COMMON_KERNEL_SUPPORT {\r
207     # Flavor: bool\r
208     # No user value, uncomment the following line to provide one.\r
209     # user_value 1\r
210     # value_source default\r
211     # Default value: CYGPKG_KERNEL\r
212     #     CYGPKG_KERNEL == v3_0\r
213     #   --> 1\r
214     # Requires: CYGPKG_KERNEL\r
215     #     CYGPKG_KERNEL == v3_0\r
216     #   --> 1\r
217 };\r
219 # HAL exception support\r
220 # When a processor exception occurs, for example an attempt to\r
221 # execute an illegal instruction or to perform a divide by\r
222 # zero, this exception may be handled in a number of different\r
223 # ways. If the target system has gdb support then typically\r
224 # the exception will be handled by gdb code. Otherwise if the\r
225 # HAL exception support is enabled then the HAL will invoke a\r
226 # routine deliver_exception(). Typically this routine will be\r
227 # provided by the eCos kernel, but it is possible for\r
228 # application code to provide its own implementation. If the\r
229 # HAL exception support is not enabled and a processor\r
230 # exception occurs then the behaviour of the system is\r
231 # undefined.\r
233 cdl_option CYGPKG_HAL_EXCEPTIONS {\r
234     # Flavor: bool\r
235     # No user value, uncomment the following line to provide one.\r
236     # user_value 1\r
237     # value_source default\r
238     # Default value: CYGPKG_KERNEL_EXCEPTIONS\r
239     #     CYGPKG_KERNEL_EXCEPTIONS == 1\r
240     #   --> 1\r
241     # Requires: CYGPKG_KERNEL_EXCEPTIONS\r
242     #     CYGPKG_KERNEL_EXCEPTIONS == 1\r
243     #   --> 1\r
245     # The following properties are affected by this value\r
246     # component CYGPKG_KERNEL_EXCEPTIONS\r
247     #     Requires: CYGPKG_HAL_EXCEPTIONS\r
248 };\r
250 # Stop calling constructors early\r
251 # This option supports environments where some constructors\r
252 # must be run in the context of a thread rather than at\r
253 # simple system startup time. A boolean flag named\r
254 # cyg_hal_stop_constructors is set to 1 when constructors\r
255 # should no longer be invoked. It is up to some other\r
256 # package to deal with the rest of the constructors.\r
257 # In the current version this is only possible with the\r
258 # C library.\r
260 cdl_option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG {\r
261     # Flavor: bool\r
262     # No user value, uncomment the following line to provide one.\r
263     # user_value 0\r
264     # value_source default\r
265     # Default value: 0\r
266     # Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS\r
267     #     CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS == 0\r
268     #   --> 0\r
270     # The following properties are affected by this value\r
271     # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS\r
272     #     Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG\r
273 };\r
275 # HAL uses the MMU and allows for CDL manipulation of it's use\r
277 cdl_interface CYGINT_HAL_SUPPORTS_MMU_TABLES {\r
278     # No options implement this inferface\r
279     # This value cannot be modified here.\r
280     # Flavor: data\r
281     # Current_value: 0\r
283     # The following properties are affected by this value\r
284     # option CYGSEM_HAL_INSTALL_MMU_TABLES\r
285     #     ActiveIf: CYGINT_HAL_SUPPORTS_MMU_TABLES\r
286 };\r
288 # Install MMU tables.\r
289 # This option controls whether this application installs\r
290 # its own Memory Management Unit (MMU) tables, or relies on the\r
291 # existing environment to run.\r
293 cdl_option CYGSEM_HAL_INSTALL_MMU_TABLES {\r
294     # This option is not active\r
295     # ActiveIf constraint: CYGINT_HAL_SUPPORTS_MMU_TABLES\r
296     #     CYGINT_HAL_SUPPORTS_MMU_TABLES == 0\r
297     #   --> 0\r
299     # Flavor: bool\r
300     # No user value, uncomment the following line to provide one.\r
301     # user_value 1\r
302     # value_source default\r
303     # Default value:  CYG_HAL_STARTUP != "RAM" \r
304     #     CYG_HAL_STARTUP == ROMRAM\r
305     #   --> 1\r
307     # The following properties are affected by this value\r
308     # option CYGSEM_HAL_STATIC_MMU_TABLES\r
309     #     Requires: CYGSEM_HAL_INSTALL_MMU_TABLES\r
310 };\r
312 # Use static MMU tables.\r
313 # This option defines an environment where any Memory\r
314 # Management Unit (MMU) tables are constant.  Normally used by ROM\r
315 # based environments, this provides a way to save RAM usage which\r
316 # would otherwise be required for these tables.\r
318 cdl_option CYGSEM_HAL_STATIC_MMU_TABLES {\r
319     # Flavor: bool\r
320     # No user value, uncomment the following line to provide one.\r
321     # user_value 0\r
322     # value_source default\r
323     # Default value: 0\r
324     # Requires: CYGSEM_HAL_INSTALL_MMU_TABLES\r
325     #     CYGSEM_HAL_INSTALL_MMU_TABLES == 0\r
326     #   --> 0\r
327 };\r
329 # Route diagnostic output to debug channel\r
330 # If not inheriting the console setup from the ROM monitor,\r
331 # it is possible to redirect diagnostic output to the debug\r
332 # channel by enabling this option. Depending on the debugger\r
333 # used it may also be necessary to select a mangler for the\r
334 # output to be displayed by the debugger.\r
336 cdl_component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN {\r
337     # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE\r
338     #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0\r
339     #   --> 1\r
340     # ActiveIf constraint:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG \r
341     #     CYGPKG_HAL_ARM (unknown) == 0\r
342     #     CYGPKG_HAL_POWERPC_MPC8xx (unknown) == 0\r
343     #     CYGPKG_HAL_V85X_V850 (unknown) == 0\r
344     #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1\r
345     #   --> 1\r
347     # Flavor: bool\r
348     # No user value, uncomment the following line to provide one.\r
349     # user_value 0\r
350     # value_source default\r
351     # Default value:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0\r
352     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
353     #     CYG_HAL_STARTUP == ROMRAM\r
354     #   --> 0\r
356     # The following properties are affected by this value\r
357     # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE\r
358     #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN \r
359 };\r
361 # >\r
362 # Mangler used on diag output\r
363 # It is sometimes necessary to mangle (encode) the\r
364 # diag ASCII text output in order for it to show up at the\r
365 # other end. In particular, GDB may silently ignore raw\r
366 # ASCII text.\r
368 cdl_option CYGSEM_HAL_DIAG_MANGLER {\r
369     # This option is not active\r
370     # The parent CYGDBG_HAL_DIAG_TO_DEBUG_CHAN is disabled\r
372     # Flavor: data\r
373     # No user value, uncomment the following line to provide one.\r
374     # user_value GDB\r
375     # value_source default\r
376     # Default value: GDB\r
377     # Legal values: "GDB" "None"\r
378 };\r
380 # <\r
381 # Grouped libraries for linking\r
382 # This option provides a list of libraries used to satisfy\r
383 # linker dependencies, but necessary for building eCos. It is passed\r
384 # to a GROUP() directive in the linker script, which is analogous\r
385 # to using the "-(" aka "--start-group", and "-)" aka\r
386 # "--end-group" options on the linker command line.\r
387 # It provides a similar function to adding "-llibname" to the\r
388 # linker, but with the added feature that each library in the group\r
389 # is scanned in turn for unresolved symbols, and this process is\r
390 # repeated until there are no more unresolved symbols. This is important\r
391 # for system libraries as there are often mutual dependencies.\r
392 # This option should not be used for adding application specific\r
393 # libraries. That should be done in the application's own makefile\r
394 # or link line.\r
395 # Users wishing to use the GNU Compiler prior to GCC 3.0 will\r
396 # need to remove libsupc++.a from this option.\r
397 # Note that libtarget.a is always required to build eCos.\r
399 cdl_component CYGBLD_HAL_LINKER_GROUPED_LIBS {\r
400     # Flavor: data\r
401     # No user value, uncomment the following line to provide one.\r
402     # user_value "libtarget.a libgcc.a libsupc++.a"\r
403     # value_source default\r
404     # Default value: CYGBLD_HAL_LINKER_GROUPED_LIBS_DEFAULT\r
405     #     CYGBLD_HAL_LINKER_GROUPED_LIBS_DEFAULT == "libtarget.a libgcc.a libsupc++.a"\r
406     #   --> "libtarget.a libgcc.a libsupc++.a"\r
407     # Requires:  is_substr(CYGBLD_HAL_LINKER_GROUPED_LIBS, "libtarget.a") \r
408     #     CYGBLD_HAL_LINKER_GROUPED_LIBS == "libtarget.a libgcc.a libsupc++.a"\r
409     #   --> 1\r
411     # The following properties are affected by this value\r
412     # component CYGBLD_HAL_LINKER_GROUPED_LIBS\r
413     #     Requires:  is_substr(CYGBLD_HAL_LINKER_GROUPED_LIBS, "libtarget.a") \r
414 };\r
416 # >\r
417 # Default setting\r
418 # This option is intended to be used by other eCos packages (including\r
419 # HAL packages) to provide a different default value for\r
420 # CYGBLD_HAL_LINKER_GROUPED_LIBS.\r
421 # This is separated into its own option to continue to\r
422 # allow the user to make customisations to the grouped library\r
423 # list.\r
425 cdl_option CYGBLD_HAL_LINKER_GROUPED_LIBS_DEFAULT {\r
426     # Flavor: data\r
427     # No user value, uncomment the following line to provide one.\r
428     # user_value "libtarget.a libgcc.a libsupc++.a"\r
429     # value_source default\r
430     # Default value: "libtarget.a libgcc.a libsupc++.a"\r
432     # The following properties are affected by this value\r
433     # component CYGBLD_HAL_LINKER_GROUPED_LIBS\r
434     #     DefaultValue: CYGBLD_HAL_LINKER_GROUPED_LIBS_DEFAULT\r
435 };\r
437 # <\r
438 # <\r
439 # HAL interrupt handling\r
440 # A number of configuration options related to interrupt\r
441 # handling are common to most or all HAL packages, even though\r
442 # the implementations will vary from architecture to\r
443 # architecture.\r
445 cdl_component CYGPKG_HAL_COMMON_INTERRUPTS {\r
446     # There is no associated value.\r
447 };\r
449 # >\r
450 # Use separate stack for interrupts\r
451 # When an interrupt occurs this interrupt can be handled either\r
452 # on the current stack or on a separate stack maintained by the\r
453 # HAL. Using a separate stack requires a small number of extra\r
454 # instructions in the interrupt handling code, but it has the\r
455 # advantage that it is no longer necessary to allow extra space\r
456 # in every thread stack for the interrupt handlers. The amount\r
457 # of extra space required depends on the interrupt handlers\r
458 # that are being used.\r
460 cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK {\r
461     # Flavor: bool\r
462     # No user value, uncomment the following line to provide one.\r
463     # user_value 1\r
464     # value_source default\r
465     # Default value: 1\r
466 };\r
468 # Interrupt stack size\r
469 # This configuration option specifies the stack size in bytes\r
470 # for the interrupt stack. Typically this should be a multiple\r
471 # of 16, but the exact requirements will vary from architecture\r
472 # to architecture. The interrupt stack serves two separate\r
473 # purposes. It is used as the stack during system\r
474 # initialization. In addition, if the interrupt system is\r
475 # configured to use a separate stack then all interrupts will\r
476 # be processed on this stack. The exact memory requirements\r
477 # will vary from application to application, and will depend\r
478 # heavily on whether or not other interrupt-related options,\r
479 # for example nested interrupts, are enabled. On most targets,\r
480 # in a configuration with no kernel this stack will also be\r
481 # the stack used to invoke the application, and must obviously\r
482 # be appropriately large in that case.\r
484 cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {\r
485     # Flavor: data\r
486     # No user value, uncomment the following line to provide one.\r
487     # user_value 4096\r
488     # value_source default\r
489     # Default value:  CYGPKG_KERNEL ? 4096 : 32768 \r
490     #     CYGPKG_KERNEL == v3_0\r
491     #   --> 4096\r
492     # Legal values: 128 to 1048576\r
493 };\r
495 # Allow nested interrupts\r
496 # When an interrupt occurs the HAL interrupt handling code can\r
497 # either leave interrupts disabled for the duration of the\r
498 # interrupt handling code, or by doing some extra work it can\r
499 # reenable interrupts before invoking the interrupt handler and\r
500 # thus allow nested interrupts to happen. If all the interrupt\r
501 # handlers being used are small and do not involve any loops\r
502 # then it is usually better to disallow nested interrupts.\r
503 # However if any of the interrupt handlers are more complicated\r
504 # than nested interrupts will usually be required.\r
506 cdl_option CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING {\r
507     # Flavor: bool\r
508     # No user value, uncomment the following line to provide one.\r
509     # user_value 0\r
510     # value_source default\r
511     # Default value: 0\r
512 };\r
514 # Save minimum context on interrupt\r
515 # The HAL interrupt handling code can exploit the calling conventions\r
516 # defined for a given architecture to reduce the amount of state\r
517 # that has to be saved. Generally this improves performance and\r
518 # reduces code size. However it can make source-level debugging\r
519 # more difficult.\r
521 cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {\r
522     # Flavor: bool\r
523     # No user value, uncomment the following line to provide one.\r
524     # user_value 1\r
525     # value_source default\r
526     # Default value: 1\r
528     # The following properties are affected by this value\r
529     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
530     #     Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT\r
531 };\r
533 # Chain all interrupts together\r
534 # Interrupts can be attached to vectors either singly, or be\r
535 # chained together. The latter is necessary if there is no way\r
536 # of discovering which device has interrupted without\r
537 # inspecting the device itself. It can also reduce the amount\r
538 # of RAM needed for interrupt decoding tables and code.\r
540 cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN {\r
541     # Flavor: bool\r
542     # No user value, uncomment the following line to provide one.\r
543     # user_value 0\r
544     # value_source default\r
545     # Default value: 0\r
547     # The following properties are affected by this value\r
548     # option CYGIMP_KERNEL_INTERRUPTS_CHAIN\r
549     #     Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN\r
550 };\r
552 # Ignore spurious [fleeting] interrupts\r
553 # On some hardware, interrupt sources may not be de-bounced or\r
554 # de-glitched.  Rather than try to handle these interrupts (no\r
555 # handling may be possible), this option allows the HAL to simply\r
556 # ignore them.  In most cases, if the interrupt is real it will\r
557 # reoccur in a detectable form.\r
559 cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_IGNORE_SPURIOUS {\r
560     # Flavor: bool\r
561     # No user value, uncomment the following line to provide one.\r
562     # user_value 0\r
563     # value_source default\r
564     # Default value: 0\r
565 };\r
567 # <\r
568 # HAL context switch support\r
569 # A number of configuration options related to thread contexts\r
570 # are common to most or all HAL packages, even though the\r
571 # implementations will vary from architecture to architecture.\r
573 cdl_component CYGPKG_HAL_COMMON_CONTEXT {\r
574     # There is no associated value.\r
576     # The following properties are affected by this value\r
577 };\r
579 # >\r
580 # Use minimum thread context\r
581 # The thread context switch code can exploit the calling\r
582 # conventions defined for a given architecture to reduce the\r
583 # amount of state that has to be saved during a context\r
584 # switch. Generally this improves performance and reduces\r
585 # code size. However it can make source-level debugging more\r
586 # difficult.\r
588 cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {\r
589     # Flavor: bool\r
590     # No user value, uncomment the following line to provide one.\r
591     # user_value 1\r
592     # value_source default\r
593     # Default value: 1\r
595     # The following properties are affected by this value\r
596     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
597     #     Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM\r
598 };\r
600 # <\r
601 # Explicit control over cache behaviour\r
602 # These options let the default behaviour of the caches \r
603 # be easily configurable.\r
605 cdl_component CYGPKG_HAL_CACHE_CONTROL {\r
606     # There is no associated value.\r
607 };\r
609 # >\r
610 # Enable DATA cache on startup\r
611 # Enabling this option will cause the data cache to be enabled\r
612 # as soon as practicable when eCos starts up.  One would choose\r
613 # to disable this if the data cache cannot safely be turned on,\r
614 # such as a case where the cache(s) require additional platform\r
615 # specific setup.\r
617 cdl_component CYGSEM_HAL_ENABLE_DCACHE_ON_STARTUP {\r
618     # Flavor: bool\r
619     # No user value, uncomment the following line to provide one.\r
620     # user_value 1\r
621     # value_source default\r
622     # Default value: 1\r
623 };\r
625 # >\r
626 # DATA cache mode on startup\r
627 # This option controls the mode the cache will be set to\r
628 # when enabled on startup.\r
630 cdl_option CYGSEM_HAL_DCACHE_STARTUP_MODE {\r
631     # Flavor: data\r
632     # No user value, uncomment the following line to provide one.\r
633     # user_value COPYBACK\r
634     # value_source default\r
635     # Default value: COPYBACK\r
636     # Legal values:  "COPYBACK" "WRITETHRU" \r
637 };\r
639 # <\r
640 # Enable INSTRUCTION cache on startup\r
641 # Enabling this option will cause the instruction cache to be enabled\r
642 # as soon as practicable when eCos starts up.  One would choose\r
643 # to disable this if the instruction cache cannot safely be turned on,\r
644 # such as a case where the cache(s) require additional platform\r
645 # specific setup.\r
647 cdl_option CYGSEM_HAL_ENABLE_ICACHE_ON_STARTUP {\r
648     # Flavor: bool\r
649     # No user value, uncomment the following line to provide one.\r
650     # user_value 1\r
651     # value_source default\r
652     # Default value: 1\r
653 };\r
655 # <\r
656 # Source-level debugging support\r
657 # If the source level debugger gdb is to be used for debugging\r
658 # application code then it may be necessary to configure in support\r
659 # for this in the HAL.\r
661 cdl_component CYGPKG_HAL_DEBUG {\r
662     # There is no associated value.\r
663 };\r
665 # >\r
666 # Support for GDB stubs\r
667 # The HAL implements GDB stubs for the target.\r
669 cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS {\r
670     # Implemented by CYGPKG_HAL_NIOS2, active, enabled\r
671     # This value cannot be modified here.\r
672     # Flavor: data\r
673     # Current_value: 1\r
675     # The following properties are affected by this value\r
676     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
677     #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS\r
678 };\r
680 # Include GDB stubs in HAL\r
681 # This option causes a set of GDB stubs to be included into the\r
682 # system. On some target systems the GDB support will be\r
683 # provided by other means, for example by a ROM monitor. On\r
684 # other targets, especially when building a ROM-booting system,\r
685 # the necessary support has to go into the target library\r
686 # itself. When GDB stubs are include in a configuration, HAL\r
687 # serial drivers must also be included.\r
689 cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {\r
690     # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS\r
691     #     CYGINT_HAL_DEBUG_GDB_STUBS == 1\r
692     #   --> 1\r
694     # Flavor: bool\r
695     # No user value, uncomment the following line to provide one.\r
696     # user_value 0\r
697     # value_source default\r
698     # Default value: 0\r
699     # Requires: ! CYGSEM_HAL_USE_ROM_MONITOR\r
700     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
701     #   --> 1\r
702     # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT\r
703     #     CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 1\r
704     #   --> 0\r
705     # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM\r
706     #     CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 1\r
707     #   --> 0\r
708     # Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS \r
709     #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1\r
710     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1\r
711     #   --> 1\r
713     # The following properties are affected by this value\r
714     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN\r
715     #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0\r
716     # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT\r
717     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
718     # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT\r
719     #     DefaultValue: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
720     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT\r
721     #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
722     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT\r
723     #     DefaultValue:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
724     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS\r
725     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
726     # option CYGBLD_BUILD_COMMON_GDB_STUBS\r
727     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
728     # option CYGPKG_HAL_GDB_FILEIO\r
729     #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
730 };\r
732 # Support for external break support in GDB stubs\r
733 # The HAL implements external break (or asynchronous interrupt)\r
734 # in the GDB stubs for the target.\r
736 cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS_BREAK {\r
737     # Implemented by CYGPKG_HAL_NIOS2, active, enabled\r
738     # This value cannot be modified here.\r
739     # Flavor: data\r
740     # Current_value: 1\r
742     # The following properties are affected by this value\r
743     # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT\r
744     #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK\r
745 };\r
747 # Include GDB external break support for stubs\r
748 # This option causes the GDB stub to add a serial interrupt handler\r
749 # which will listen for GDB break packets. This lets you stop the\r
750 # target asynchronously when using GDB, usually by hitting Control+C\r
751 # or pressing the STOP button. This option differs from\r
752 # CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT in that it is used when\r
753 # GDB stubs are present.\r
755 cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT {\r
756     # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK\r
757     #     CYGINT_HAL_DEBUG_GDB_STUBS_BREAK == 1\r
758     #   --> 1\r
760     # Flavor: bool\r
761     # No user value, uncomment the following line to provide one.\r
762     # user_value 0\r
763     # value_source default\r
764     # Default value: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
765     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
766     #   --> 0\r
767     # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
768     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
769     #   --> 0\r
771     # The following properties are affected by this value\r
772     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT\r
773     #     Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT\r
774     # option CYGDBG_HAL_NIOS2_DEBUG_GDB_CTRLC_SUPPORT\r
775     #     Calculated:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT \r
776 };\r
778 # Platform does not support CTRLC\r
780 cdl_interface CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED {\r
781     # No options implement this inferface\r
782     # This value cannot be modified here.\r
783     # Flavor: data\r
784     # Current_value: 0\r
786     # The following properties are affected by this value\r
787     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT\r
788     #     ActiveIf:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 \r
789     # option CYGDBG_HAL_NIOS2_DEBUG_GDB_CTRLC_SUPPORT\r
790     #     ActiveIf:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 \r
791 };\r
793 # Include GDB external break support when no stubs\r
794 # This option adds an interrupt handler for the GDB serial line\r
795 # which will listen for GDB break packets. This lets you stop the\r
796 # target asynchronously when using GDB, usually by hitting Control+C\r
797 # or pressing the STOP button. This option differs from\r
798 # CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT in that it is used when the GDB\r
799 # stubs are NOT present.\r
801 cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT {\r
802     # This option is not active\r
803     # ActiveIf constraint:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
804     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
805     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
806     #   --> 0\r
807     # ActiveIf constraint:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 \r
808     #     CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0\r
809     #   --> 1\r
811     # Flavor: bool\r
812     # No user value, uncomment the following line to provide one.\r
813     # user_value 1\r
814     # value_source default\r
815     # Default value:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
816     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
817     #   --> 1\r
818     # Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT\r
819     #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0\r
820     #   --> 1\r
822     # The following properties are affected by this value\r
823     # option CYGDBG_HAL_NIOS2_DEBUG_GDB_CTRLC_SUPPORT\r
824     #     Calculated:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT \r
825 };\r
827 # Include GDB multi-threading debug support\r
828 # This option enables some extra HAL code which is needed\r
829 # to support multi-threaded source level debugging.\r
831 cdl_option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT {\r
832     # ActiveIf constraint:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT \r
833     #     CYGSEM_HAL_ROM_MONITOR == 0\r
834     #     CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT == 1\r
835     #   --> 1\r
837     # Flavor: bool\r
838     # No user value, uncomment the following line to provide one.\r
839     # user_value 1\r
840     # value_source default\r
841     # Default value: 1\r
843     # The following properties are affected by this value\r
844     # option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT\r
845     #     Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT\r
846 };\r
848 # Number of times to retry sending a $O packet\r
849 # This option controls the number of attempts that eCos programs\r
850 # will make to send a $O packet to a host GDB process.  If it is\r
851 # set non-zero, then the target process will attempt to resend the\r
852 # $O packet data up to this number of retries.  Caution: use of\r
853 # this option is not recommended as it can thoroughly confuse the\r
854 # host GDB process.\r
856 cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES {\r
857     # Flavor: data\r
858     # No user value, uncomment the following line to provide one.\r
859     # user_value 0\r
860     # value_source default\r
861     # Default value: 0\r
862 };\r
864 # Timeout period for GDB packets\r
865 # This option controls the time (in milliseconds) that eCos programs\r
866 # will wait for a response when sending packets to a host GDB process.\r
867 # If this time elapses, then the packet will be resent, up to some\r
868 # maximum number of times (CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES).\r
870 cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_TIMEOUT {\r
871     # Flavor: data\r
872     # No user value, uncomment the following line to provide one.\r
873     # user_value 500\r
874     # value_source default\r
875     # Default value: 500\r
876 };\r
878 # Location of CRC32 table\r
879 # The stubs use a 1 kilobyte CRC table that can either be pregenerated\r
880 # and placed in ROM, or generated at runtime in RAM. Depending on\r
881 # your memory constraints, one of these options may be better.\r
883 cdl_option CYGDBG_HAL_CRCTABLE_LOCATION {\r
884     # Flavor: data\r
885     # No user value, uncomment the following line to provide one.\r
886     # user_value RAM\r
887     # value_source default\r
888     # Default value: RAM\r
889     # Legal values: "ROM" "RAM"\r
890 };\r
892 # <\r
893 # ROM monitor support\r
894 # Support for ROM monitors can be built in to your application. \r
895 # It may also be relevant to build your application as a ROM monitor\r
896 # itself. Such options are contained here if relevant for your chosen\r
897 # platform. The options and ROM monitors available to choose are\r
898 # platform-dependent.\r
900 cdl_component CYGPKG_HAL_ROM_MONITOR {\r
901     # There is no associated value.\r
903     # The following properties are affected by this value\r
904 };\r
906 # >\r
907 # Target has virtual vector support\r
909 cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT {\r
910     # Implemented by CYGPKG_HAL_NIOS2, active, enabled\r
911     # This value cannot be modified here.\r
912     # Flavor: data\r
913     # Current_value: 1\r
915     # The following properties are affected by this value\r
916     # component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT\r
917     #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT\r
918 };\r
920 # Target supports baud rate control via vectors\r
921 # Whether this target supports the __COMMCTL_GETBAUD\r
922 # and __COMMCTL_SETBAUD virtual vector comm control operations.\r
924 cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT {\r
925     # No options implement this inferface\r
926     # This value cannot be modified here.\r
927     # Flavor: data\r
928     # Current_value: 0\r
929 };\r
931 # Enable use of virtual vector calling interface\r
932 # Virtual vector support allows the HAL to let the ROM\r
933 # monitor handle certain operations. The virtual vector table\r
934 # defines a calling interface between applications running in\r
935 # RAM and the ROM monitor.\r
937 cdl_component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT {\r
938     # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT\r
939     #     CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT == 1\r
940     #   --> 1\r
942     # Calculated value: 1\r
943     # Flavor: bool\r
944     # Current value: 1\r
945 };\r
947 # >\r
948 # Inherit console settings from ROM monitor\r
949 # When this option is set, the application will inherit\r
950 # the console as set up by the ROM monitor. This means\r
951 # that the application will use whatever channel and\r
952 # mangling style was used by the ROM monitor when\r
953 # the application was launched.\r
955 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE {\r
956     # This option is not active\r
957     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
958     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
959     #   --> 0\r
961     # Flavor: bool\r
962     # No user value, uncomment the following line to provide one.\r
963     # user_value 0\r
964     # value_source default\r
965     # Default value:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS \r
966     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1\r
967     #   --> 0\r
969     # The following properties are affected by this value\r
970     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN\r
971     #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE\r
972     # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE\r
973     #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN \r
974 };\r
976 # Debug channel is configurable\r
977 # This option is a configuration hint - it is enabled\r
978 # when the HAL initialization code will make use\r
979 # of the debug channel configuration option.\r
981 cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE {\r
982     # Calculated value:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS \r
983     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1\r
984     # Flavor: bool\r
985     # Current value: 1\r
986 };\r
988 # Console channel is configurable\r
989 # This option is a configuration hint - it is enabled\r
990 # when the HAL initialization code will make use\r
991 # of the console channel configuration option.\r
993 cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE {\r
994     # Calculated value:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN \r
995     #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0\r
996     #     CYGDBG_HAL_DIAG_TO_DEBUG_CHAN == 0\r
997     # Flavor: bool\r
998     # Current value: 1\r
999 };\r
1001 # Initialize whole of virtual vector table\r
1002 # This option will cause the whole of the virtual\r
1003 # vector table to be initialized with dummy values on\r
1004 # startup. When this option is enabled, all the\r
1005 # options below must also be enabled - or the\r
1006 # table would be empty when the application\r
1007 # launches.\r
1008 # On targets where older ROM monitors without\r
1009 # virtual vector support may still be in use, it is\r
1010 # necessary for RAM applictions to initialize the\r
1011 # table (since all HAL diagnostics and debug IO\r
1012 # happens via the table).\r
1014 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE {\r
1015     # Flavor: bool\r
1016     # No user value, uncomment the following line to provide one.\r
1017     # user_value 1\r
1018     # value_source default\r
1019     # Default value:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR \r
1020     #     CYG_HAL_STARTUP == ROMRAM\r
1021     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1022     #   --> 1\r
1023     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET\r
1024     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET == 1\r
1025     #   --> 1\r
1026     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US\r
1027     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US == 1\r
1028     #   --> 1\r
1029     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA\r
1030     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA == 1\r
1031     #   --> 1\r
1032     # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS\r
1033     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1\r
1034     #   --> 1\r
1036     # The following properties are affected by this value\r
1037     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT\r
1038     #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1039     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET\r
1040     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1041     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION\r
1042     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE \r
1043     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US\r
1044     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1045     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA\r
1046     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1047     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS\r
1048     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
1049 };\r
1051 # Claim virtual vector table entries by default\r
1052 # By default most virtual vectors will be claimed by\r
1053 # RAM startup configurations, meaning that the RAM\r
1054 # application will provide the services. The\r
1055 # exception is COMMS support (HAL\r
1056 # diagnostics/debugging IO) which is left in the\r
1057 # control of the ROM monitor.\r
1058 # The reasoning behind this is to get as much of the\r
1059 # code exercised during regular development so it\r
1060 # is known to be working the few times a new ROM\r
1061 # monitor or a ROM production configuration is used\r
1062 # - COMMS are excluded only by necessity in order to\r
1063 # avoid breaking an existing debugger connections\r
1064 # (there may be ways around this).\r
1065 # For production RAM configurations this option can\r
1066 # be switched off, causing the appliction to rely on\r
1067 # the ROM monitor for these services, thus\r
1068 # saving some space.\r
1069 # Individual vectors may also be left unclaimed,\r
1070 # controlled by the below options (meaning that the\r
1071 # associated service provided by the ROM monitor\r
1072 # will be used).\r
1074 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT {\r
1075     # This option is not active\r
1076     # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1077     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1\r
1078     #   --> 0\r
1080     # Flavor: bool\r
1081     # No user value, uncomment the following line to provide one.\r
1082     # user_value 1\r
1083     # value_source default\r
1084     # Default value: 1\r
1086     # The following properties are affected by this value\r
1087     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET\r
1088     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1089     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US\r
1090     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1091     # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA\r
1092     #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1093 };\r
1095 # Claim reset virtual vectors\r
1096 # This option will cause the reset and kill_by_reset\r
1097 # virtual vectors to be claimed.\r
1099 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET {\r
1100     # Flavor: bool\r
1101     # No user value, uncomment the following line to provide one.\r
1102     # user_value 1\r
1103     # value_source default\r
1104     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1105     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1\r
1106     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0\r
1107     #   --> 1\r
1109     # The following properties are affected by this value\r
1110     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1111     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET\r
1112 };\r
1114 # Claim version virtual vectors\r
1115 # This option will cause the version\r
1116 # virtual vectors to be claimed.\r
1118 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION {\r
1119     # Flavor: bool\r
1120     # No user value, uncomment the following line to provide one.\r
1121     # user_value 1\r
1122     # value_source default\r
1123     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE \r
1124     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1\r
1125     #   --> 1\r
1126 };\r
1128 # Claim delay_us virtual vector\r
1129 # This option will cause the delay_us\r
1130 # virtual vector to be claimed.\r
1132 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US {\r
1133     # Flavor: bool\r
1134     # No user value, uncomment the following line to provide one.\r
1135     # user_value 1\r
1136     # value_source default\r
1137     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1138     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1\r
1139     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0\r
1140     #   --> 1\r
1142     # The following properties are affected by this value\r
1143     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1144     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US\r
1145 };\r
1147 # Claim data virtual vectors\r
1148 # This option will cause the data virtual vectors\r
1149 # to be claimed. At present there is only one, used\r
1150 # by the RedBoot ethernet driver to share diag output.\r
1152 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA {\r
1153     # Flavor: bool\r
1154     # No user value, uncomment the following line to provide one.\r
1155     # user_value 1\r
1156     # value_source default\r
1157     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT \r
1158     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1\r
1159     #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0\r
1160     #   --> 1\r
1162     # The following properties are affected by this value\r
1163     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1164     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA\r
1165 };\r
1167 # Claim comms virtual vectors\r
1168 # This option will cause the communication tables\r
1169 # that are part of the virtual vectors mechanism to\r
1170 # be claimed. Note that doing this may cause an\r
1171 # existing ROM monitor communication connection to\r
1172 # be closed. For this reason, the option is disabled\r
1173 # per default for normal application\r
1174 # configurations.\r
1176 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS {\r
1177     # Flavor: bool\r
1178     # No user value, uncomment the following line to provide one.\r
1179     # user_value 1\r
1180     # value_source default\r
1181     # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
1182     #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1\r
1183     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
1184     #   --> 1\r
1186     # The following properties are affected by this value\r
1187     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
1188     #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS \r
1189     # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE\r
1190     #     DefaultValue:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS \r
1191     # option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE\r
1192     #     Calculated:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS \r
1193     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1194     #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS\r
1195 };\r
1197 # Do diagnostic IO via virtual vector table\r
1198 # All HAL IO happens via the virtual vector table / comm\r
1199 # tables when those tables are supported by the HAL.\r
1200 # If so desired, the low-level IO functions can\r
1201 # still be provided by the RAM application by\r
1202 # enabling the CLAIM_COMMS option.\r
1204 cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG {\r
1205     # Calculated value: 1\r
1206     # Flavor: bool\r
1207     # Current value: 1\r
1209     # The following properties are affected by this value\r
1210     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN\r
1211     #     ActiveIf:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG \r
1212     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
1213     #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS \r
1214 };\r
1216 # <\r
1217 # Work with a ROM monitor\r
1218 # Support can be enabled for three different varieties of ROM monitor.\r
1219 # This support changes various eCos semantics such as the encoding\r
1220 # of diagnostic output, or the overriding of hardware interrupt\r
1221 # vectors.\r
1222 # Firstly there is "Generic" support which prevents the HAL\r
1223 # from overriding the hardware vectors that it does not use, to\r
1224 # instead allow an installed ROM monitor to handle them. This is\r
1225 # the most basic support which is likely to be common to most\r
1226 # implementations of ROM monitor.\r
1227 # "CygMon" provides support for the Cygnus ROM Monitor.\r
1228 # And finally, "GDB_stubs" provides support when GDB stubs are\r
1229 # included in the ROM monitor or boot ROM.\r
1231 cdl_option CYGSEM_HAL_USE_ROM_MONITOR {\r
1232     # Flavor: booldata\r
1233     # No user value, uncomment the following line to provide one.\r
1234     # user_value 0 0\r
1235     # value_source default\r
1236     # Default value:  CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 \r
1237     #     CYG_HAL_STARTUP == ROMRAM\r
1238     #   --> 0 0\r
1239     # Legal values:  "Generic" "CygMon" "GDB_stubs" \r
1241     # The following properties are affected by this value\r
1242     # option CYGNUM_ROM_MONITOR_EXCEPTIONS_LEN\r
1243     #     Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1244     # option CYGNUM_ROM_MONITOR_EXCEPTIONS_LEN\r
1245     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1246     # option CYGSEM_ROM_MONITOR_TEXT_REGION\r
1247     #     Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1248     # option CYGSEM_ROM_MONITOR_TEXT_REGION\r
1249     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1250     # option CYGNUM_ROM_MONITOR_TEXT_LEN\r
1251     #     Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1252     # option CYGNUM_ROM_MONITOR_TEXT_LEN\r
1253     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1254     # option CYGSEM_ROM_MONITOR_RODATA_REGION\r
1255     #     Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1256     # option CYGSEM_ROM_MONITOR_RODATA_REGION\r
1257     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1258     # option CYGNUM_ROM_MONITOR_RODATA_LEN\r
1259     #     Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1260     # option CYGNUM_ROM_MONITOR_RODATA_LEN\r
1261     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1262     # option CYGSEM_ROM_MONITOR_RWDATA_REGION\r
1263     #     Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1264     # option CYGSEM_ROM_MONITOR_RWDATA_REGION\r
1265     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1266     # option CYGNUM_ROM_MONITOR_RWDATA_LEN\r
1267     #     Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1268     # option CYGNUM_ROM_MONITOR_RWDATA_LEN\r
1269     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1270     # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
1271     #     Requires: ! CYGSEM_HAL_USE_ROM_MONITOR\r
1272     # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT\r
1273     #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS \r
1274     # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE\r
1275     #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR\r
1276     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1277     #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR \r
1278 };\r
1280 # Behave as a ROM monitor\r
1281 # Enable this option if this program is to be used as a ROM monitor,\r
1282 # i.e. applications will be loaded into RAM on the board, and this\r
1283 # ROM monitor may process exceptions generated from the\r
1284 # application. This enables features such as utilizing a separate\r
1285 # interrupt stack when exceptions are generated.\r
1287 cdl_option CYGSEM_HAL_ROM_MONITOR {\r
1288     # Flavor: bool\r
1289     # No user value, uncomment the following line to provide one.\r
1290     # user_value 0\r
1291     # value_source default\r
1292     # Default value: 0\r
1293     # Requires:  CYG_HAL_STARTUP != "RAM" \r
1294     #     CYG_HAL_STARTUP == ROMRAM\r
1295     #   --> 1\r
1297     # The following properties are affected by this value\r
1298     # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT\r
1299     #     ActiveIf:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT \r
1300 };\r
1302 # Size of ROM monitor exception handler\r
1303 # Size of the memory region to be reserved for the ROM monitor\r
1304 # exception handler. This parameter is used for systems built for\r
1305 # "RAM", which are expected to be loaded by a ROM monitor.\r
1307 cdl_option CYGNUM_ROM_MONITOR_EXCEPTIONS_LEN {\r
1308     # This option is not active\r
1309     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
1310     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1311     #   --> 0\r
1313     # Calculated value:  0x2c \r
1314     # Flavor: data\r
1315     # Current_value: 0x0000002C\r
1316     # Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1317     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1318     #   --> 0\r
1319 };\r
1321 # ROM monitor text region\r
1322 # Name of the memory region to be reserved for the ROM monitor\r
1323 # code.This parameter is used for systems built for\r
1324 # "RAM", which are expected to be loaded by a ROM monitor.\r
1326 cdl_option CYGSEM_ROM_MONITOR_TEXT_REGION {\r
1327     # This option is not active\r
1328     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
1329     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1330     #   --> 0\r
1332     # Flavor: data\r
1333     # No user value, uncomment the following line to provide one.\r
1334     # user_value ddr_sdram\r
1335     # value_source default\r
1336     # Default value: ddr_sdram\r
1337     # Legal values:  "ext_flash" "ssram" "ddr_sdram" \r
1338     # Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1339     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1340     #   --> 0\r
1341 };\r
1343 # Size of ROM monitor text region\r
1344 # Size of the memory region to be reserved for the ROM monitor\r
1345 # code.This parameter is used for systems built for\r
1346 # "RAM", which are expected to be loaded by a ROM monitor.\r
1348 cdl_option CYGNUM_ROM_MONITOR_TEXT_LEN {\r
1349     # This option is not active\r
1350     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
1351     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1352     #   --> 0\r
1354     # Flavor: data\r
1355     # No user value, uncomment the following line to provide one.\r
1356     # user_value 0x00020000\r
1357     # value_source default\r
1358     # Default value: 0x00020000\r
1359     # Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1360     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1361     #   --> 0\r
1362 };\r
1364 # ROM monitor rodata region\r
1365 # Name of the memory region to be reserved for the ROM monitor\r
1366 # read only data.This parameter is used for systems built for\r
1367 # "RAM", which are expected to be loaded by a ROM monitor.\r
1369 cdl_option CYGSEM_ROM_MONITOR_RODATA_REGION {\r
1370     # This option is not active\r
1371     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
1372     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1373     #   --> 0\r
1375     # Flavor: data\r
1376     # No user value, uncomment the following line to provide one.\r
1377     # user_value ddr_sdram\r
1378     # value_source default\r
1379     # Default value: ddr_sdram\r
1380     # Legal values:  "ext_flash" "ssram" "ddr_sdram" \r
1381     # Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1382     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1383     #   --> 0\r
1384 };\r
1386 # Size of ROM monitor rodata region\r
1387 # Size of the memory region to be reserved for the ROM monitor\r
1388 # read only data.This parameter is used for systems built for\r
1389 # "RAM", which are expected to be loaded by a ROM monitor.\r
1391 cdl_option CYGNUM_ROM_MONITOR_RODATA_LEN {\r
1392     # This option is not active\r
1393     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
1394     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1395     #   --> 0\r
1397     # Flavor: data\r
1398     # No user value, uncomment the following line to provide one.\r
1399     # user_value 0x00005000\r
1400     # value_source default\r
1401     # Default value: 0x00005000\r
1402     # Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1403     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1404     #   --> 0\r
1405 };\r
1407 # ROM monitor rwdata region\r
1408 # Name of the memory region to be reserved for the ROM monitor\r
1409 # read/write data. Note this includes the stack and heap.This\r
1410 # parameter is used for system built for "RAM", which are\r
1411 # expected to be loaded by a ROM monitor.\r
1413 cdl_option CYGSEM_ROM_MONITOR_RWDATA_REGION {\r
1414     # This option is not active\r
1415     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
1416     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1417     #   --> 0\r
1419     # Flavor: data\r
1420     # No user value, uncomment the following line to provide one.\r
1421     # user_value ddr_sdram\r
1422     # value_source default\r
1423     # Default value: ddr_sdram\r
1424     # Legal values:  "ssram" "ddr_sdram" \r
1425     # Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1426     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1427     #   --> 0\r
1428 };\r
1430 # Size of ROM monitor rwdata region\r
1431 # Size of the memory region to be reserved for the ROM monitor\r
1432 # read/write data. Note this includes the stack and heap.\r
1433 # This parameter is used for systems built for\r
1434 # "RAM", which are expected to be loaded by a ROM monitor.\r
1436 cdl_option CYGNUM_ROM_MONITOR_RWDATA_LEN {\r
1437     # This option is not active\r
1438     # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR\r
1439     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1440     #   --> 0\r
1442     # Flavor: data\r
1443     # No user value, uncomment the following line to provide one.\r
1444     # user_value 0x00110000\r
1445     # value_source default\r
1446     # Default value: 0x00110000\r
1447     # Requires: CYGSEM_HAL_USE_ROM_MONITOR\r
1448     #     CYGSEM_HAL_USE_ROM_MONITOR == 0\r
1449     #   --> 0\r
1450 };\r
1452 # <\r
1453 # Platform defined I/O channels.\r
1454 # Platforms which provide additional I/O channels can implement\r
1455 # this interface, indicating that the function plf_if_init()\r
1456 # needs to be called.\r
1458 cdl_interface CYGINT_HAL_PLF_IF_INIT {\r
1459     # No options implement this inferface\r
1460     # This value cannot be modified here.\r
1461     # Flavor: data\r
1462     # Current_value: 0\r
1463 };\r
1465 # Platform IDE I/O support.\r
1466 # Platforms which provide IDE controllers can implement\r
1467 # this interface, indicating that IDE I/O macros are\r
1468 # available.\r
1470 cdl_interface CYGINT_HAL_PLF_IF_IDE {\r
1471     # No options implement this inferface\r
1472     # This value cannot be modified here.\r
1473     # Flavor: data\r
1474     # Current_value: 0\r
1475 };\r
1477 # File I/O operations via GDB\r
1478 # This option enables support for various file I/O\r
1479 # operations using the GDB remote protocol to communicate\r
1480 # with GDB. The operations are then performed on the\r
1481 # debugging host by proxy. These operations are only\r
1482 # currently available by using a system call interface\r
1483 # to RedBoot. This may change in the future.\r
1485 cdl_option CYGPKG_HAL_GDB_FILEIO {\r
1486     # This option is not active\r
1487     # ActiveIf constraint: CYGSEM_REDBOOT_BSP_SYSCALLS\r
1488     #     CYGSEM_REDBOOT_BSP_SYSCALLS (unknown) == 0\r
1489     #   --> 0\r
1491     # Flavor: bool\r
1492     # No user value, uncomment the following line to provide one.\r
1493     # user_value 0\r
1494     # value_source default\r
1495     # Default value: 0\r
1496     # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS\r
1497     #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0\r
1498     #   --> 0\r
1499 };\r
1501 # Build Compiler sanity checking tests\r
1502 # Enabling this option causes compiler tests to be built.\r
1504 cdl_option CYGPKG_HAL_BUILD_COMPILER_TESTS {\r
1505     # Flavor: bool\r
1506     # No user value, uncomment the following line to provide one.\r
1507     # user_value 0\r
1508     # value_source default\r
1509     # Default value: 0\r
1511     # The following properties are affected by this value\r
1512     # component CYGPKG_HAL_TESTS\r
1513     #     Calculated:   "tests/context tests/basic"\r
1514     #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")\r
1515     #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")\r
1516     #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") \r
1517 };\r
1519 # Common HAL tests\r
1520 # This option specifies the set of tests for the common HAL.\r
1522 cdl_component CYGPKG_HAL_TESTS {\r
1523     # Calculated value:   "tests/context tests/basic"\r
1524     #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")\r
1525     #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")\r
1526     #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") \r
1527     #     CYGINT_HAL_TESTS_NO_CACHES == 0\r
1528     #     CYGPKG_HAL_BUILD_COMPILER_TESTS == 0\r
1529     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
1530     # Flavor: data\r
1531     # Current_value: tests/context tests/basic tests/cache\r
1532 };\r
1534 # >\r
1535 # Interface for cache presence\r
1536 # Some architectures and/or platforms do not have caches. By\r
1537 # implementing this interface, these can disable the various\r
1538 # cache-related tests.\r
1540 cdl_interface CYGINT_HAL_TESTS_NO_CACHES {\r
1541     # No options implement this inferface\r
1542     # This value cannot be modified here.\r
1543     # Flavor: booldata\r
1544     # Current value: 0 0\r
1546     # The following properties are affected by this value\r
1547     # component CYGPKG_HAL_TESTS\r
1548     #     Calculated:   "tests/context tests/basic"\r
1549     #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")\r
1550     #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")\r
1551     #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") \r
1552     # option CYGPKG_KERNEL_TESTS\r
1553     #     Calculated:  \r
1554     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
1555     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
1556     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
1557     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
1558     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
1559     #                 \r
1560 };\r
1562 # <\r
1563 # Nios2 architecture\r
1564 # The Nios2 architecture HAL package provides support\r
1565 # for the Nios II architecture.\r
1567 cdl_package CYGPKG_HAL_NIOS2 {\r
1568     # Packages cannot be added or removed, nor can their version be changed,\r
1569     # simply by editing their value. Instead the appropriate configuration\r
1570     # should be used to perform these actions.\r
1572     # This value cannot be modified here.\r
1573     # Flavor: booldata\r
1574     # Current value: 1 current\r
1576     # The following properties are affected by this value\r
1577 };\r
1579 # >\r
1580 # Additional compiler flags\r
1581 # Extra compilation flags for HAL\r
1582 # These flags are used in addition\r
1583 # to the set of global flags.\r
1585 cdl_option CYGPKG_HAL_NIOS2_CFLAGS_ADD {\r
1586     # Flavor: data\r
1587     # No user value, uncomment the following line to provide one.\r
1588     # user_value "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_timer/inc  -I\$(PREFIX)/include/cyg/hal"\r
1589     # value_source default\r
1590     # Default value: "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_timer/inc  -I\$(PREFIX)/include/cyg/hal"\r
1591 };\r
1593 # Linker script\r
1594 # The LDI file used to construct the linker script. This is generated to match\r
1595 # the memory configuration of the SOPC builder project.\r
1597 cdl_option CYGBLD_LINKER_SCRIPT {\r
1598     # Calculated value:  "include/pkgconf/autogen.ldi" \r
1599     # Flavor: data\r
1600     # Current_value: include/pkgconf/autogen.ldi\r
1601 };\r
1603 # Startup type\r
1604 # Three flavours of startup type are supported. "ROM" is used to boot and\r
1605 # run from read only memory (i.e. flash), "ROMRAM" is used to boot from ROM\r
1606 # and then copy the code to RAM and execute from there. "RAM" is used to \r
1607 # execute in RAM. When the "RAM" option is selected, it is assumed that the\r
1608 # code will be loaded by an external boot monitor, e.g. Redboot.\r
1610 cdl_component CYG_HAL_STARTUP {\r
1611     # Flavor: data\r
1612     # No user value, uncomment the following line to provide one.\r
1613     # user_value ROMRAM\r
1614     # value_source default\r
1615     # Default value: ROMRAM\r
1616     # Legal values: "RAM" "ROM" "ROMRAM"\r
1618     # The following properties are affected by this value\r
1619     # option CYGBLD_BUILD_FLASH_PROGRAMMER\r
1620     #     Calculated: CYG_HAL_STARTUP != "RAM"\r
1621     # option CYGSEM_HAL_USE_ROM_MONITOR\r
1622     #     DefaultValue:  CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 \r
1623     # option CYGSEM_HAL_ROM_MONITOR\r
1624     #     Requires:  CYG_HAL_STARTUP != "RAM" \r
1625     # option CYGHWR_HAL_NIOS2_TEXT_REGION\r
1626     #     LegalValues:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1627     # option CYGHWR_HAL_NIOS2_TEXT_REGION\r
1628     #     LegalValues:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1629     # option CYGHWR_HAL_NIOS2_TEXT_REGION\r
1630     #     LegalValues:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1631     # option CYGHWR_HAL_NIOS2_TEXT_REGION\r
1632     #     DefaultValue:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "ddr_sdram" \r
1633     # option CYGHWR_HAL_NIOS2_RODATA_REGION\r
1634     #     LegalValues:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1635     # option CYGHWR_HAL_NIOS2_RODATA_REGION\r
1636     #     LegalValues:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1637     # option CYGHWR_HAL_NIOS2_RODATA_REGION\r
1638     #     LegalValues:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1639     # option CYGHWR_HAL_NIOS2_RODATA_REGION\r
1640     #     DefaultValue:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "ddr_sdram" \r
1641     # option CYGSEM_HAL_INSTALL_MMU_TABLES\r
1642     #     DefaultValue:  CYG_HAL_STARTUP != "RAM" \r
1643     # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN\r
1644     #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0\r
1645     # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE\r
1646     #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR \r
1647 };\r
1649 # Create flash programming script\r
1650 # This option enables the generation of the flash programming script.\r
1652 cdl_option CYGBLD_BUILD_FLASH_PROGRAMMER {\r
1653     # Calculated value: CYG_HAL_STARTUP != "RAM"\r
1654     #     CYG_HAL_STARTUP == ROMRAM\r
1655     # Flavor: bool\r
1656     # Current value: 1\r
1657 };\r
1659 # Architecture GDB CTRLC support\r
1660 # If either the CTRLC or BREAK support options in hal.h are set\r
1661 # then set our own option to turn on shared generic support for\r
1662 # control C handling.\r
1664 cdl_option CYGDBG_HAL_NIOS2_DEBUG_GDB_CTRLC_SUPPORT {\r
1665     # ActiveIf constraint:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 \r
1666     #     CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0\r
1667     #   --> 1\r
1669     # Calculated value:  CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT || CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT \r
1670     #     CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT == 0\r
1671     #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0\r
1672     # Flavor: bool\r
1673     # Current value: 0\r
1674 };\r
1676 # Number of breakpoints supported by the HAL.\r
1677 # This option determines the number of breakpoints supported by the HAL.\r
1679 cdl_option CYGNUM_HAL_BREAKPOINT_LIST_SIZE {\r
1680     # Flavor: data\r
1681     # No user value, uncomment the following line to provide one.\r
1682     # user_value 25\r
1683     # value_source default\r
1684     # Default value: 25\r
1685 };\r
1687 # Hardware memory configuration\r
1688 # This component defines the memory layout, and also supplies options which\r
1689 # are constrained by the system hardware configuration.\r
1691 cdl_component CYGHWR_MEMORY_LAYOUT {\r
1692     # Calculated value:  "nios2" \r
1693     # Flavor: data\r
1694     # Current_value: nios2\r
1695 };\r
1697 # Number of virtual comm channels in the system\r
1698 # This option defines the number of virtual vector communication\r
1699 # channels. For Nios II there are always two channels available.\r
1700 # The first is the debug communication channel, and the second is\r
1701 # used for console input and output.\r
1703 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {\r
1704     # Calculated value: 2\r
1705     # Flavor: data\r
1706     # Current_value: 2\r
1707 };\r
1709 # Debug comm channel\r
1710 # Set the index of the virtual communication channel used for the\r
1711 # debugger. For Nios II this channel is always the first (i.e. index\r
1712 # zero).\r
1714 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {\r
1715     # Calculated value: 0\r
1716     # Flavor: data\r
1717     # Current_value: 0\r
1718 };\r
1720 # Debug device\r
1721 # The name of the device connected to the debug channel.\r
1723 cdl_option CYGHWR_HAL_NIOS2_VV_DEBUG_DEV {\r
1724     # Flavor: data\r
1725     # No user value, uncomment the following line to provide one.\r
1726     # user_value none\r
1727     # value_source default\r
1728     # Default value: none\r
1729     # Legal values:  "none" \r
1730 };\r
1732 # Diagnostic console comm channel\r
1733 # Set the index of the virtual communication channel used for the\r
1734 # console. For Nios II this channel is always the second (i.e. index\r
1735 # two).\r
1737 cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {\r
1738     # Calculated value: 1\r
1739     # Flavor: data\r
1740     # Current_value: 1\r
1741 };\r
1743 # Diagnostic console device\r
1744 # The name of the device connected to the console channel.\r
1746 cdl_option CYGHWR_HAL_NIOS2_VV_CONSOLE_DEV {\r
1747     # Flavor: data\r
1748     # No user value, uncomment the following line to provide one.\r
1749     # user_value /dev/jtag_uart\r
1750     # value_source default\r
1751     # Default value: /dev/jtag_uart\r
1752     # Legal values:  "/dev/jtag_uart" "none" \r
1753 };\r
1755 # System clock\r
1756 # The name of the device to use as the system clock.\r
1758 cdl_option CYGHWR_HAL_SYSCLK_DEV {\r
1759     # Flavor: data\r
1760     # No user value, uncomment the following line to provide one.\r
1761     # user_value SYS_CLK_TIMER\r
1762     # value_source default\r
1763     # Default value: SYS_CLK_TIMER\r
1764     # Legal values:  "SYS_CLK_TIMER" "HIGH_RES_TIMER" \r
1765 };\r
1767 # Memory layout linker script fragment\r
1768 # The LDI file used to construct the linker script. By default this is generated to match\r
1769 # the memory configuration of the SOPC builder project.\r
1771 cdl_option CYGHWR_MEMORY_LAYOUT_LDI {\r
1772     # Flavor: data\r
1773     # No user value, uncomment the following line to provide one.\r
1774     # user_value <pkgconf/mlt_nios2.ldi>\r
1775     # value_source default\r
1776     # Default value: <pkgconf/mlt_nios2.ldi>\r
1777 };\r
1779 # Memory layout header file\r
1780 # The C header file which describes the memory layout. By default this is generated to match\r
1781 # the memory configuration of the SOPC builder project.\r
1783 cdl_option CYGHWR_MEMORY_LAYOUT_H {\r
1784     # Flavor: data\r
1785     # No user value, uncomment the following line to provide one.\r
1786     # user_value <pkgconf/mlt_nios2.h>\r
1787     # value_source default\r
1788     # Default value: <pkgconf/mlt_nios2.h>\r
1789 };\r
1791 # text region\r
1792 # This option allows you to define the memory region used for the\r
1793 # text section. The names of the available memory regions are the names\r
1794 # assigned in SOPC builder.\r
1796 cdl_option CYGHWR_HAL_NIOS2_TEXT_REGION {\r
1797     # Flavor: data\r
1798     # No user value, uncomment the following line to provide one.\r
1799     # user_value ddr_sdram\r
1800     # value_source default\r
1801     # Default value:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "ddr_sdram" \r
1802     #     CYG_HAL_STARTUP == ROMRAM\r
1803     #   --> ddr_sdram\r
1804     # Legal values:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1805     #     CYG_HAL_STARTUP == ROMRAM\r
1806     #     CYG_HAL_STARTUP == ROMRAM\r
1807     #     CYG_HAL_STARTUP == ROMRAM\r
1808 };\r
1810 # rodata region\r
1811 # This option allows you to define the memory region used for the\r
1812 # read only data section. The names of the available memory regions are\r
1813 # the names assigned in SOPC builder.\r
1815 cdl_option CYGHWR_HAL_NIOS2_RODATA_REGION {\r
1816     # Flavor: data\r
1817     # No user value, uncomment the following line to provide one.\r
1818     # user_value ddr_sdram\r
1819     # value_source default\r
1820     # Default value:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "ddr_sdram" \r
1821     #     CYG_HAL_STARTUP == ROMRAM\r
1822     #   --> ddr_sdram\r
1823     # Legal values:  CYG_HAL_STARTUP == "ROM" ? "ext_flash" : "" CYG_HAL_STARTUP == "ROM" ? "" :  "ssram" CYG_HAL_STARTUP == "ROM" ? "" :  "ddr_sdram" \r
1824     #     CYG_HAL_STARTUP == ROMRAM\r
1825     #     CYG_HAL_STARTUP == ROMRAM\r
1826     #     CYG_HAL_STARTUP == ROMRAM\r
1827 };\r
1829 # rwdata region\r
1830 # This option allows you to define the memory region used for the\r
1831 # read/write data section. The names of the available memory regions are\r
1832 # the names assigned in SOPC builder.\r
1834 cdl_option CYGHWR_HAL_NIOS2_RWDATA_REGION {\r
1835     # Flavor: data\r
1836     # No user value, uncomment the following line to provide one.\r
1837     # user_value ddr_sdram\r
1838     # value_source default\r
1839     # Default value: ddr_sdram\r
1840     # Legal values:  "ssram" "ddr_sdram" \r
1841 };\r
1843 # SOPC builder configuration\r
1844 # The SOPC builder configuration file.\r
1846 cdl_option CYGHWR_NIOS2_PTF {\r
1847     # Calculated value: "c:/workspace/nios2ecos/neek/neek.ptf"\r
1848     # Flavor: data\r
1849     # Current_value: c:/workspace/nios2ecos/neek/neek.ptf\r
1850 };\r
1852 # Nios II CPU\r
1853 # The Name of the CPU being targeted.\r
1855 cdl_option CYGHWR_NIOS2_CPU {\r
1856     # Calculated value: "cpu"\r
1857     # Flavor: data\r
1858     # Current_value: cpu\r
1859 };\r
1861 # <\r
1862 # HAL SOPC drivers\r
1863 # Drivers contained within this package use automatic configuartion \r
1864 # information derived from an associated SOPC builder project.\r
1866 cdl_package CYGPKG_HAL_SOPC {\r
1867     # Packages cannot be added or removed, nor can their version be changed,\r
1868     # simply by editing their value. Instead the appropriate configuration\r
1869     # should be used to perform these actions.\r
1871     # This value cannot be modified here.\r
1872     # Flavor: booldata\r
1873     # Current value: 1 current\r
1875     # The following properties are affected by this value\r
1876 };\r
1878 # >\r
1879 # Detected SOPC devices\r
1880 # This component contains a list all of the devices classes discovered within the\r
1881 # current SOPC builder system. Selecting this component allows this information to\r
1882 # be used in determining which drivers are enabled.\r
1884 cdl_component CYGHWR_DETECTED_SOPC_DEVICES {\r
1885     # Flavor: bool\r
1886     # No user value, uncomment the following line to provide one.\r
1887     # user_value 1\r
1888     # value_source default\r
1889     # Default value: 1\r
1891     # The following properties are affected by this value\r
1892     # package CYGPKG_ALTERA_AVALON_UART_COMM\r
1893     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_uart ")\r
1894     # package CYGPKG_ALTERA_AVALON_JTAG_UART_COMM\r
1895     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_jtag_uart ")\r
1896     # package CYGPKG_ALTERA_AVALON_UART\r
1897     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_uart ")\r
1898     # package CYGPKG_ALTERA_AVALON_JTAG_UART\r
1899     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_jtag_uart ")\r
1900     # package CYGPKG_ALTERA_AVALON_TIMER\r
1901     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_timer ")\r
1902 };\r
1904 # >\r
1905 # List of detected SOPC builder devices\r
1906 # A list of all device classes found in the SOPC builder system.\r
1908 cdl_option CYGHWR_DETECTED_SOPC_DEVICE_LIST {\r
1909     # Calculated value:  " altera_avalon_pll altera_avalon_pipeline_bridge altera_avalon_tri_state_bridge altera_avalon_cy7c1380_ssram altera_avalon_cfi_flash ddr_high_perf altera_avalon_clock_crossing altera_avalon_timer altera_avalon_sysid altera_avalon_performance_counter altera_avalon_jtag_uart altera_avalon_pio altera_avalon_remote_update_cycloneiii eth_ocm " \r
1910     # Flavor: data\r
1911     # Current_value:  altera_avalon_pll altera_avalon_pipeline_bridge altera_avalon_tri_state_bridge altera_avalon_cy7c1380_ssram altera_avalon_cfi_flash ddr_high_perf altera_avalon_clock_crossing altera_avalon_timer altera_avalon_sysid altera_avalon_performance_counter altera_avalon_jtag_uart altera_avalon_pio altera_avalon_remote_update_cycloneiii eth_ocm \r
1913     # The following properties are affected by this value\r
1914     # package CYGPKG_ALTERA_AVALON_UART_COMM\r
1915     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_uart ")\r
1916     # package CYGPKG_ALTERA_AVALON_JTAG_UART_COMM\r
1917     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_jtag_uart ")\r
1918     # package CYGPKG_ALTERA_AVALON_UART\r
1919     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_uart ")\r
1920     # package CYGPKG_ALTERA_AVALON_JTAG_UART\r
1921     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_jtag_uart ")\r
1922     # package CYGPKG_ALTERA_AVALON_TIMER\r
1923     #     ActiveIf: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_timer ")\r
1924 };\r
1926 # <\r
1927 # Altera Avalon UART comm driver\r
1928 # This option enables the comm driver for the\r
1929 # Altera Avalon UART. This allows the device to be used for debug and\r
1930 # console input/output.\r
1932 cdl_package CYGPKG_ALTERA_AVALON_UART_COMM {\r
1933     # Packages cannot be added or removed, nor can their version be changed,\r
1934     # simply by editing their value. Instead the appropriate configuration\r
1935     # should be used to perform these actions.\r
1937     # This option is not active\r
1938     # ActiveIf constraint: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_uart ")\r
1939     #     CYGHWR_DETECTED_SOPC_DEVICES == 1\r
1940     #     CYGHWR_DETECTED_SOPC_DEVICE_LIST == " altera_avalon_pll altera_avalon_pipeline_bridge altera_avalon_tri_state_bridge altera_avalon_cy7c1380_ssram altera_avalon_cfi_flash ddr_high_perf altera_avalon_clock_crossing altera_avalon_timer altera_avalon_sysid altera_avalon_performance_counter altera_avalon_jtag_uart altera_avalon_pio altera_avalon_remote_update_cycloneiii eth_ocm "\r
1941     #   --> 0\r
1943     # This value cannot be modified here.\r
1944     # Flavor: booldata\r
1945     # Current value: 1 current\r
1946 };\r
1948 # >\r
1949 # Additional compiler flags\r
1950 # This option modifies the set of compiler flags for\r
1951 # building the Altera Avalon UART comm driver.\r
1952 # These flags are used in addition\r
1953 # to the set of global flags.\r
1955 cdl_option CYGPKG_ALTERA_AVALON_UART_COMM_CFLAGS_ADD {\r
1956     # This option is not active\r
1957     # The parent CYGPKG_ALTERA_AVALON_UART_COMM is not active\r
1959     # Flavor: data\r
1960     # No user value, uncomment the following line to provide one.\r
1961     # user_value "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
1962     # value_source default\r
1963     # Default value: "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
1964 };\r
1966 # Suppressed compiler flags\r
1967 # This option modifies the set of compiler flags for\r
1968 # building the Altera Avalon UART comm driver. These flags are removed from\r
1969 # the set of global flags if present.\r
1971 cdl_option CYGPKG_ALTERA_AVALON_UART_COMM_CFLAGS_REMOVE {\r
1972     # This option is not active\r
1973     # The parent CYGPKG_ALTERA_AVALON_UART_COMM is not active\r
1975     # Flavor: data\r
1976     # No user value, uncomment the following line to provide one.\r
1977     # user_value ""\r
1978     # value_source default\r
1979     # Default value: ""\r
1980 };\r
1982 # <\r
1983 # Altera Avalon JTAG UART comm driver\r
1984 # This option enables the comm driver for the\r
1985 # Altera Avalon JTAG UART. This allows the device to be used for debug and\r
1986 # console input/output.\r
1988 cdl_package CYGPKG_ALTERA_AVALON_JTAG_UART_COMM {\r
1989     # Packages cannot be added or removed, nor can their version be changed,\r
1990     # simply by editing their value. Instead the appropriate configuration\r
1991     # should be used to perform these actions.\r
1993     # ActiveIf constraint: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_jtag_uart ")\r
1994     #     CYGHWR_DETECTED_SOPC_DEVICES == 1\r
1995     #     CYGHWR_DETECTED_SOPC_DEVICE_LIST == " altera_avalon_pll altera_avalon_pipeline_bridge altera_avalon_tri_state_bridge altera_avalon_cy7c1380_ssram altera_avalon_cfi_flash ddr_high_perf altera_avalon_clock_crossing altera_avalon_timer altera_avalon_sysid altera_avalon_performance_counter altera_avalon_jtag_uart altera_avalon_pio altera_avalon_remote_update_cycloneiii eth_ocm "\r
1996     #   --> 1\r
1998     # This value cannot be modified here.\r
1999     # Flavor: booldata\r
2000     # Current value: 1 current\r
2001 };\r
2003 # >\r
2004 # Additional compiler flags\r
2005 # This option modifies the set of compiler flags for\r
2006 # building the Altera Avalon JTAG UART comm driver.\r
2007 # These flags are used in addition\r
2008 # to the set of global flags.\r
2010 cdl_option CYGPKG_ALTERA_AVALON_JTAG_UART_COMM_CFLAGS_ADD {\r
2011     # Flavor: data\r
2012     # No user value, uncomment the following line to provide one.\r
2013     # user_value "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_jtag_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
2014     # value_source default\r
2015     # Default value: "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_jtag_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
2016 };\r
2018 # Suppressed compiler flags\r
2019 # This option modifies the set of compiler flags for\r
2020 # building the Altera Avalon JTAG UART comm driver. These flags are removed from\r
2021 # the set of global flags if present.\r
2023 cdl_option CYGPKG_ALTERA_AVALON_JTAG_UART_COMM_CFLAGS_REMOVE {\r
2024     # Flavor: data\r
2025     # No user value, uncomment the following line to provide one.\r
2026     # user_value ""\r
2027     # value_source default\r
2028     # Default value: ""\r
2029 };\r
2031 # <\r
2032 # Altera Avalon Timer device driver\r
2033 # This option enables the device drivers for the\r
2034 # Altera Avalon Timer.\r
2036 cdl_package CYGPKG_ALTERA_AVALON_TIMER {\r
2037     # Packages cannot be added or removed, nor can their version be changed,\r
2038     # simply by editing their value. Instead the appropriate configuration\r
2039     # should be used to perform these actions.\r
2041     # ActiveIf constraint: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_timer ")\r
2042     #     CYGHWR_DETECTED_SOPC_DEVICES == 1\r
2043     #     CYGHWR_DETECTED_SOPC_DEVICE_LIST == " altera_avalon_pll altera_avalon_pipeline_bridge altera_avalon_tri_state_bridge altera_avalon_cy7c1380_ssram altera_avalon_cfi_flash ddr_high_perf altera_avalon_clock_crossing altera_avalon_timer altera_avalon_sysid altera_avalon_performance_counter altera_avalon_jtag_uart altera_avalon_pio altera_avalon_remote_update_cycloneiii eth_ocm "\r
2044     #   --> 1\r
2046     # This value cannot be modified here.\r
2047     # Flavor: booldata\r
2048     # Current value: 1 current\r
2049 };\r
2051 # >\r
2052 # Additional compiler flags\r
2053 # This option modifies the set of compiler flags for\r
2054 # building the Altera Avalon Timer driver.\r
2055 # These flags are used in addition\r
2056 # to the set of global flags.\r
2058 cdl_option CYGPKG_ALTERA_AVALON_TIMER_CFLAGS_ADD {\r
2059     # Flavor: data\r
2060     # No user value, uncomment the following line to provide one.\r
2061     # user_value "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_timer/inc -I\$(PREFIX)/include/cyg/hal"\r
2062     # value_source default\r
2063     # Default value: "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_timer/inc -I\$(PREFIX)/include/cyg/hal"\r
2064 };\r
2066 # Suppressed compiler flags\r
2067 # This option modifies the set of compiler flags for\r
2068 # building the Altera Avalon Timer driver. These flags are removed from\r
2069 # the set of global flags if present.\r
2071 cdl_option CYGPKG_ALTERA_AVALON_TIMER_CFLAGS_REMOVE {\r
2072     # Flavor: data\r
2073     # No user value, uncomment the following line to provide one.\r
2074     # user_value ""\r
2075     # value_source default\r
2076     # Default value: ""\r
2077 };\r
2079 # <\r
2080 # <\r
2081 # <\r
2082 # I/O sub-system\r
2083 # doc: ref/io.html\r
2084 # The eCos system is supplied with a number of different\r
2085 # device drivers.  This option enables the basic I/O system\r
2086 # support which is the basis for all drivers.\r
2088 cdl_package CYGPKG_IO {\r
2089     # Packages cannot be added or removed, nor can their version be changed,\r
2090     # simply by editing their value. Instead the appropriate configuration\r
2091     # should be used to perform these actions.\r
2093     # This value cannot be modified here.\r
2094     # Flavor: booldata\r
2095     # Current value: 1 v3_0\r
2096     # Requires: CYGPKG_ERROR\r
2097     #     CYGPKG_ERROR == v3_0\r
2098     #   --> 1\r
2100     # The following properties are affected by this value\r
2101     # package CYGPKG_IO_SERIAL\r
2102     #     ActiveIf: CYGPKG_IO\r
2103     # package CYGPKG_LIBC_STDIO\r
2104     #     Requires: CYGPKG_IO\r
2105 };\r
2107 # >\r
2108 # Debug I/O sub-system\r
2109 # This option enables verbose messages to be displayed on the\r
2110 # system 'diag' device during I/O system initialization.\r
2112 cdl_option CYGDBG_IO_INIT {\r
2113     # Flavor: bool\r
2114     # No user value, uncomment the following line to provide one.\r
2115     # user_value 0\r
2116     # value_source default\r
2117     # Default value: 0\r
2118 };\r
2120 # Basic support for file based I/O\r
2121 # This option control support for simple file I/O primitives. It is only\r
2122 # present if the FILEIO package is not included.\r
2124 cdl_component CYGPKG_IO_FILE_SUPPORT {\r
2125     # ActiveIf constraint: !CYGPKG_IO_FILEIO\r
2126     #     CYGPKG_IO_FILEIO (unknown) == 0\r
2127     #   --> 1\r
2129     # Flavor: bool\r
2130     # No user value, uncomment the following line to provide one.\r
2131     # user_value 1\r
2132     # value_source default\r
2133     # Default value: 1\r
2134 };\r
2136 # >\r
2137 # Number of open files\r
2138 # This option controls the number of open files.\r
2140 cdl_option CYGPKG_IO_NFILE {\r
2141     # Flavor: data\r
2142     # No user value, uncomment the following line to provide one.\r
2143     # user_value 16\r
2144     # value_source default\r
2145     # Default value: 16\r
2146 };\r
2148 # <\r
2149 # Serial device drivers\r
2150 # doc: ref/io.html\r
2151 # This option enables drivers for basic I/O services on\r
2152 # serial devices.\r
2154 cdl_package CYGPKG_IO_SERIAL {\r
2155     # Packages cannot be added or removed, nor can their version be changed,\r
2156     # simply by editing their value. Instead the appropriate configuration\r
2157     # should be used to perform these actions.\r
2159     # ActiveIf constraint: CYGPKG_IO\r
2160     #     CYGPKG_IO == v3_0\r
2161     #   --> 1\r
2163     # This value cannot be modified here.\r
2164     # Flavor: booldata\r
2165     # Current value: 1 v3_0\r
2166     # Requires: CYGPKG_ERROR\r
2167     #     CYGPKG_ERROR == v3_0\r
2168     #   --> 1\r
2170     # The following properties are affected by this value\r
2171     # package CYGPKG_ALTERA_AVALON_UART\r
2172     #     ActiveIf: CYGPKG_IO_SERIAL\r
2173     # package CYGPKG_ALTERA_AVALON_JTAG_UART\r
2174     #     ActiveIf: CYGPKG_IO_SERIAL\r
2175 };\r
2177 # >\r
2178 # Support non-blocking read and write calls\r
2179 # This option enables extra code in the generic serial driver\r
2180 # which allows clients to switch read() and write() call\r
2181 # semantics from blocking to non-blocking.\r
2183 cdl_option CYGOPT_IO_SERIAL_SUPPORT_NONBLOCKING {\r
2184     # Flavor: bool\r
2185     # No user value, uncomment the following line to provide one.\r
2186     # user_value 0\r
2187     # value_source default\r
2188     # Default value: 0\r
2189 };\r
2191 # Driver requires block transfer callback functions\r
2192 # Some low-level drivers can be optimized to transfer blocks\r
2193 # of data instead of a single character at a time. These usually\r
2194 # rely on a hardware FIFO of some sort.\r
2196 cdl_interface CYGINT_IO_SERIAL_BLOCK_TRANSFER {\r
2197     # Implemented by CYGPKG_ALTERA_AVALON_JTAG_UART, inactive, enabled\r
2198     # This value cannot be modified here.\r
2199     # Flavor: data\r
2200     # Current_value: 0\r
2202     # The following properties are affected by this value\r
2203 };\r
2205 # Serial driver supports line status\r
2207 cdl_interface CYGINT_IO_SERIAL_LINE_STATUS_HW {\r
2208     # Implemented by CYGPKG_ALTERA_AVALON_JTAG_UART, inactive, enabled\r
2209     # This value cannot be modified here.\r
2210     # Flavor: data\r
2211     # Current_value: 0\r
2213     # The following properties are affected by this value\r
2214     # option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS\r
2215     #     Requires:  CYGINT_IO_SERIAL_LINE_STATUS_HW > 0 \r
2216     # option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS\r
2217     #     DefaultValue:  0 != CYGINT_IO_SERIAL_LINE_STATUS_HW \r
2218 };\r
2220 # Support line status callbacks\r
2221 # This option indicates that if the serial driver supports it,\r
2222 # serial line status and modem status information should be\r
2223 # propagated to higher layers via callbacks.\r
2225 cdl_option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS {\r
2226     # Flavor: bool\r
2227     # No user value, uncomment the following line to provide one.\r
2228     # user_value 0\r
2229     # value_source default\r
2230     # Default value:  0 != CYGINT_IO_SERIAL_LINE_STATUS_HW \r
2231     #     CYGINT_IO_SERIAL_LINE_STATUS_HW == 0\r
2232     #   --> 0\r
2233     # Requires:  CYGINT_IO_SERIAL_LINE_STATUS_HW > 0 \r
2234     #     CYGINT_IO_SERIAL_LINE_STATUS_HW == 0\r
2235     #   --> 0\r
2237     # The following properties are affected by this value\r
2238     # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW\r
2239     #     Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS\r
2240     # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW\r
2241     #     DefaultValue:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ?  CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 \r
2242 };\r
2244 # Flow control\r
2245 # This component contains options related to flow control.\r
2247 cdl_component CYGPKG_IO_SERIAL_FLOW_CONTROL {\r
2248     # Flavor: bool\r
2249     # No user value, uncomment the following line to provide one.\r
2250     # user_value 0\r
2251     # value_source default\r
2252     # Default value: 0\r
2253     # Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW)\r
2254     #     CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE == 0\r
2255     #     CYGOPT_IO_SERIAL_FLOW_CONTROL_HW == 0\r
2256     #   --> 0\r
2257 };\r
2259 # >\r
2260 # Software flow control\r
2261 # This component enables support of software flow control.\r
2263 cdl_component CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE {\r
2264     # This option is not active\r
2265     # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled\r
2267     # Flavor: bool\r
2268     # No user value, uncomment the following line to provide one.\r
2269     # user_value 1\r
2270     # value_source default\r
2271     # Default value: 1\r
2273     # The following properties are affected by this value\r
2274     # component CYGPKG_IO_SERIAL_FLOW_CONTROL\r
2275     #     Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW)\r
2276     # package CYGPKG_ALTERA_AVALON_JTAG_UART\r
2277     #     Requires: ! CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE\r
2278 };\r
2280 # >\r
2281 # Start character\r
2282 # This option specifies the ascii character used to\r
2283 # indicate that transmission should start.\r
2285 cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XON_CHAR {\r
2286     # This option is not active\r
2287     # The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active\r
2289     # Flavor: data\r
2290     # No user value, uncomment the following line to provide one.\r
2291     # user_value 17\r
2292     # value_source default\r
2293     # Default value: 17\r
2294     # Legal values: 0 to 255\r
2295 };\r
2297 # Stop character\r
2298 # This option specifies the ascii character used to\r
2299 # indicate that transmission should stop.\r
2301 cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XOFF_CHAR {\r
2302     # This option is not active\r
2303     # The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active\r
2305     # Flavor: data\r
2306     # No user value, uncomment the following line to provide one.\r
2307     # user_value 19\r
2308     # value_source default\r
2309     # Default value: 19\r
2310     # Legal values: 0 to 255\r
2311 };\r
2313 # <\r
2314 # Hardware flow control\r
2315 # If the hardware supports it, this option allows hardware\r
2316 # flow control to be enabled. This may be in the form of\r
2317 # either or both of RTS/CTS, or DSR/DTR flow control.\r
2319 cdl_option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW {\r
2320     # This option is not active\r
2321     # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled\r
2322     # ActiveIf constraint:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 \r
2323     #     CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0\r
2324     #   --> 0\r
2326     # Flavor: bool\r
2327     # No user value, uncomment the following line to provide one.\r
2328     # user_value 0\r
2329     # value_source default\r
2330     # Default value:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ?  CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 \r
2331     #     CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0\r
2332     #     CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0\r
2333     #   --> 0\r
2334     # Requires:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 \r
2335     #     CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0\r
2336     #   --> 0\r
2337     # Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS\r
2338     #     CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0\r
2339     #   --> 0\r
2341     # The following properties are affected by this value\r
2342     # component CYGPKG_IO_SERIAL_FLOW_CONTROL\r
2343     #     Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW)\r
2344 };\r
2346 # Serial h/w supports hardware flow control\r
2348 cdl_interface CYGINT_IO_SERIAL_FLOW_CONTROL_HW {\r
2349     # Implemented by CYGPKG_ALTERA_AVALON_JTAG_UART, inactive, enabled\r
2350     # This option is not active\r
2351     # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled\r
2353     # This value cannot be modified here.\r
2354     # Flavor: data\r
2355     # Current_value: 0\r
2357     # The following properties are affected by this value\r
2358     # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW\r
2359     #     ActiveIf:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 \r
2360     # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW\r
2361     #     Requires:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 \r
2362     # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW\r
2363     #     DefaultValue:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ?  CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 \r
2364 };\r
2366 # Default flow control method\r
2367 # This option allows a default flow control method\r
2368 # to be defined. Combinations of flow control methods\r
2369 # may also be set, but this is only possible by\r
2370 # using the cyg_io_set_config() API in source code.\r
2372 cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_DEFAULT {\r
2373     # This option is not active\r
2374     # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled\r
2376     # Flavor: data\r
2377     # No user value, uncomment the following line to provide one.\r
2378     # user_value NONE\r
2379     # value_source default\r
2380     # Default value: NONE\r
2381     # Legal values:  "NONE" "XONXOFF" "RTSCTS" "DSRDTR" \r
2382 };\r
2384 # Rx flow control low water mark\r
2385 # This sets the water mark used for determining\r
2386 # when to disable flow control, expressed\r
2387 # as a percentage of the buffer size. When the\r
2388 # receive buffer size is lower than this percentage,\r
2389 # if the transmitter had previously been throttled, it\r
2390 # will now be informed it can restart.\r
2392 cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT {\r
2393     # This option is not active\r
2394     # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled\r
2396     # Flavor: data\r
2397     # No user value, uncomment the following line to provide one.\r
2398     # user_value 33\r
2399     # value_source default\r
2400     # Default value: 33\r
2401     # Legal values: 1 to 100\r
2403     # The following properties are affected by this value\r
2404     # option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT\r
2405     #     Requires:  CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >=  CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT \r
2406 };\r
2408 # Rx flow control high water mark\r
2409 # This sets the water mark used for determining\r
2410 # when to enable flow control, expressed\r
2411 # as a percentage of the buffer size. When the\r
2412 # receive buffer size exceeds this percentage,\r
2413 # signals are sent to the transmitter to tell it\r
2414 # to throttle tranmission.\r
2416 cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT {\r
2417     # This option is not active\r
2418     # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled\r
2420     # Flavor: data\r
2421     # No user value, uncomment the following line to provide one.\r
2422     # user_value 66\r
2423     # value_source default\r
2424     # Default value: 66\r
2425     # Legal values: 1 to 100\r
2426     # Requires:  CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >=  CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT \r
2427     #     CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT == 0\r
2428     #     CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT == 0\r
2429     #   --> 1\r
2431     # The following properties are affected by this value\r
2432     # option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT\r
2433     #     Requires:  CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >=  CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT \r
2434 };\r
2436 # <\r
2437 # TTY-mode serial device drivers\r
2438 # This option enables a simple terminal-like device driver \r
2439 # that can be used for serial devices that interact with humans,\r
2440 # such as a system console.\r
2442 cdl_component CYGPKG_IO_SERIAL_TTY {\r
2443     # Flavor: bool\r
2444     # No user value, uncomment the following line to provide one.\r
2445     # user_value 1\r
2446     # value_source default\r
2447     # Default value: 1\r
2448 };\r
2450 # >\r
2451 # HAL/diag serial device driver\r
2452 # This option enables the use of the HAL diagnostic channel\r
2453 # via the standard I/O drivers.\r
2455 cdl_component CYGPKG_IO_SERIAL_HALDIAG {\r
2456     # Flavor: bool\r
2457     # No user value, uncomment the following line to provide one.\r
2458     # user_value 1\r
2459     # value_source default\r
2460     # Default value: 1\r
2462     # The following properties are affected by this value\r
2463     # package CYGPKG_LIBC_STDIO\r
2464     #     Requires:  (CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE == "\"/dev/ttydiag\"" ?  CYGPKG_IO_SERIAL_HALDIAG : 1) \r
2465 };\r
2467 # Console device name\r
2468 # This option selects the TTY device to use for the console.\r
2470 cdl_option CYGDAT_IO_SERIAL_TTY_CONSOLE {\r
2471     # Flavor: data\r
2472     # No user value, uncomment the following line to provide one.\r
2473     # user_value "\"/dev/ttydiag\""\r
2474     # value_source default\r
2475     # Default value: "\"/dev/ttydiag\""\r
2477     # The following properties are affected by this value\r
2478     # option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE\r
2479     #     DefaultValue:  CYGDAT_IO_SERIAL_TTY_CONSOLE ? CYGDAT_IO_SERIAL_TTY_CONSOLE : "\"/dev/null\"" \r
2480     # option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE\r
2481     #     DefaultValue:  CYGDAT_IO_SERIAL_TTY_CONSOLE ? CYGDAT_IO_SERIAL_TTY_CONSOLE : "\"/dev/null\"" \r
2482 };\r
2484 # TTY mode HAL/diag channel\r
2485 # This option causes '/dev/ttydiag' to be included in the standard\r
2486 # drivers.\r
2488 cdl_component CYGPKG_IO_SERIAL_TTY_TTYDIAG {\r
2489     # Flavor: bool\r
2490     # No user value, uncomment the following line to provide one.\r
2491     # user_value 1\r
2492     # value_source default\r
2493     # Default value: 1\r
2494 };\r
2496 # TTY mode channel #0\r
2497 # This option causes '/dev/tty0' to be included in the standard \r
2498 # drivers.\r
2500 cdl_component CYGPKG_IO_SERIAL_TTY_TTY0 {\r
2501     # Flavor: bool\r
2502     # No user value, uncomment the following line to provide one.\r
2503     # user_value 0\r
2504     # value_source default\r
2505     # Default value: 0\r
2506 };\r
2508 # >\r
2509 # TTY mode channel #0 device\r
2510 # This option selects the physical device to use for \r
2511 # '/dev/tty0'.\r
2513 cdl_option CYGDAT_IO_SERIAL_TTY_TTY0_DEV {\r
2514     # This option is not active\r
2515     # The parent CYGPKG_IO_SERIAL_TTY_TTY0 is disabled\r
2517     # Flavor: data\r
2518     # No user value, uncomment the following line to provide one.\r
2519     # user_value "\"/dev/ser0\""\r
2520     # value_source default\r
2521     # Default value: "\"/dev/ser0\""\r
2522 };\r
2524 # <\r
2525 # TTY mode channel #1\r
2526 # This option causes '/dev/tty1' to be included in the standard \r
2527 # drivers.\r
2529 cdl_component CYGPKG_IO_SERIAL_TTY_TTY1 {\r
2530     # Flavor: bool\r
2531     # No user value, uncomment the following line to provide one.\r
2532     # user_value 0\r
2533     # value_source default\r
2534     # Default value: 0\r
2535 };\r
2537 # >\r
2538 # TTY mode channel #1 device\r
2539 # This option selects the physical device to use for \r
2540 # '/dev/tty1'.\r
2542 cdl_option CYGDAT_IO_SERIAL_TTY_TTY1_DEV {\r
2543     # This option is not active\r
2544     # The parent CYGPKG_IO_SERIAL_TTY_TTY1 is disabled\r
2546     # Flavor: data\r
2547     # No user value, uncomment the following line to provide one.\r
2548     # user_value "\"/dev/ser1\""\r
2549     # value_source default\r
2550     # Default value: "\"/dev/ser1\""\r
2551 };\r
2553 # <\r
2554 # TTY mode channel #2\r
2555 # This option causes '/dev/tty2' to be included in the standard \r
2556 # drivers.\r
2558 cdl_component CYGPKG_IO_SERIAL_TTY_TTY2 {\r
2559     # Flavor: bool\r
2560     # No user value, uncomment the following line to provide one.\r
2561     # user_value 0\r
2562     # value_source default\r
2563     # Default value: 0\r
2564 };\r
2566 # >\r
2567 # TTY mode channel #2 device\r
2568 # This option selects the physical device to use for \r
2569 # '/dev/tty2'.\r
2571 cdl_option CYGDAT_IO_SERIAL_TTY_TTY2_DEV {\r
2572     # This option is not active\r
2573     # The parent CYGPKG_IO_SERIAL_TTY_TTY2 is disabled\r
2575     # Flavor: data\r
2576     # No user value, uncomment the following line to provide one.\r
2577     # user_value "\"/dev/ser2\""\r
2578     # value_source default\r
2579     # Default value: "\"/dev/ser2\""\r
2580 };\r
2582 # <\r
2583 # TTY mode channel #3\r
2584 # This option causes '/dev/tty3' to be included in the standard \r
2585 # drivers.\r
2587 cdl_component CYGPKG_IO_SERIAL_TTY_TTY3 {\r
2588     # Flavor: bool\r
2589     # No user value, uncomment the following line to provide one.\r
2590     # user_value 0\r
2591     # value_source default\r
2592     # Default value: 0\r
2593 };\r
2595 # >\r
2596 # TTY mode channel #3 device\r
2597 # This option selects the physical device to use for \r
2598 # '/dev/tty3'.\r
2600 cdl_option CYGDAT_IO_SERIAL_TTY_TTY3_DEV {\r
2601     # This option is not active\r
2602     # The parent CYGPKG_IO_SERIAL_TTY_TTY3 is disabled\r
2604     # Flavor: data\r
2605     # No user value, uncomment the following line to provide one.\r
2606     # user_value "\"/dev/ser3\""\r
2607     # value_source default\r
2608     # Default value: "\"/dev/ser3\""\r
2609 };\r
2611 # <\r
2612 # <\r
2613 # Termios compatible TTY drivers\r
2614 # This option enables terminal drivers compatible with\r
2615 # POSIX termios.\r
2617 cdl_component CYGPKG_IO_SERIAL_TERMIOS {\r
2618     # Flavor: bool\r
2619     # No user value, uncomment the following line to provide one.\r
2620     # user_value 0\r
2621     # value_source default\r
2622     # Default value:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO \r
2623     #     CYGPKG_ISOINFRA == v3_0\r
2624     #     CYGPKG_IO_FILEIO (unknown) == 0\r
2625     #     CYGINT_ISO_ERRNO_CODES == 1\r
2626     #     CYGINT_ISO_ERRNO == 1\r
2627     #   --> 0\r
2628     # Requires: CYGPKG_ISOINFRA\r
2629     #     CYGPKG_ISOINFRA == v3_0\r
2630     #   --> 1\r
2631     # Requires: CYGPKG_IO_FILEIO\r
2632     #     CYGPKG_IO_FILEIO (unknown) == 0\r
2633     #   --> 0\r
2634     # Requires: CYGINT_ISO_ERRNO_CODES\r
2635     #     CYGINT_ISO_ERRNO_CODES == 1\r
2636     #   --> 1\r
2637     # Requires: CYGINT_ISO_ERRNO\r
2638     #     CYGINT_ISO_ERRNO == 1\r
2639     #   --> 1\r
2640     # Requires: CYGINT_ISO_MALLOC\r
2641     #     CYGINT_ISO_MALLOC == 1\r
2642     #   --> 1\r
2643 };\r
2645 # >\r
2646 # Interface for termios tty driver file enabling\r
2648 cdl_interface CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY {\r
2649     # Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0, inactive, disabled\r
2650     # Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1, inactive, disabled\r
2651     # Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2, inactive, disabled\r
2652     # Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS3, inactive, disabled\r
2653     # This option is not active\r
2654     # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled\r
2656     # This value cannot be modified here.\r
2657     # Flavor: data\r
2658     # Current_value: 0\r
2660     # The following properties are affected by this value\r
2661     # option CYGBLD_IO_SERIAL_TERMIOS_TERMIOS_TTY\r
2662     #     ActiveIf:  CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY > 0 \r
2663 };\r
2665 # Build termios tty driver file\r
2667 cdl_option CYGBLD_IO_SERIAL_TERMIOS_TERMIOS_TTY {\r
2668     # This option is not active\r
2669     # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled\r
2670     # ActiveIf constraint:  CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY > 0 \r
2671     #     CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY == 0\r
2672     #   --> 0\r
2674     # Calculated value: 1\r
2675     # Flavor: bool\r
2676     # Current value: 1\r
2677 };\r
2679 # Termios TTY channel #0\r
2680 # This option causes '/dev/termios0' to be included in the standard \r
2681 # drivers.\r
2683 cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 {\r
2684     # This option is not active\r
2685     # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled\r
2687     # Flavor: bool\r
2688     # No user value, uncomment the following line to provide one.\r
2689     # user_value 0\r
2690     # value_source default\r
2691     # Default value: 0\r
2692 };\r
2694 # >\r
2695 # Termios TTY channel #0 device\r
2696 # This option selects the physical device to use for \r
2697 # '/dev/termios0'.\r
2699 cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS0_DEV {\r
2700     # This option is not active\r
2701     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is not active\r
2702     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is disabled\r
2704     # Flavor: data\r
2705     # No user value, uncomment the following line to provide one.\r
2706     # user_value "\"/dev/ser0\""\r
2707     # value_source default\r
2708     # Default value: "\"/dev/ser0\""\r
2709 };\r
2711 # <\r
2712 # Termios TTY channel #1\r
2713 # This option causes '/dev/termios1' to be included in the standard \r
2714 # drivers.\r
2716 cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 {\r
2717     # This option is not active\r
2718     # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled\r
2720     # Flavor: bool\r
2721     # No user value, uncomment the following line to provide one.\r
2722     # user_value 0\r
2723     # value_source default\r
2724     # Default value: 0\r
2725 };\r
2727 # >\r
2728 # Termios TTY channel #1 device\r
2729 # This option selects the physical device to use for \r
2730 # '/dev/termios1'.\r
2732 cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS1_DEV {\r
2733     # This option is not active\r
2734     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is not active\r
2735     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is disabled\r
2737     # Flavor: data\r
2738     # No user value, uncomment the following line to provide one.\r
2739     # user_value "\"/dev/ser1\""\r
2740     # value_source default\r
2741     # Default value: "\"/dev/ser1\""\r
2742 };\r
2744 # <\r
2745 # Termios TTY channel #2\r
2746 # This option causes '/dev/termios2' to be included in the standard \r
2747 # drivers.\r
2749 cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 {\r
2750     # This option is not active\r
2751     # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled\r
2753     # Flavor: bool\r
2754     # No user value, uncomment the following line to provide one.\r
2755     # user_value 0\r
2756     # value_source default\r
2757     # Default value: 0\r
2758 };\r
2760 # >\r
2761 # Termios TTY channel #2 device\r
2762 # This option selects the physical device to use for \r
2763 # '/dev/termios2'.\r
2765 cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS2_DEV {\r
2766     # This option is not active\r
2767     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is not active\r
2768     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is disabled\r
2770     # Flavor: data\r
2771     # No user value, uncomment the following line to provide one.\r
2772     # user_value "\"/dev/ser2\""\r
2773     # value_source default\r
2774     # Default value: "\"/dev/ser2\""\r
2775 };\r
2777 # <\r
2778 # Termios TTY channel #3\r
2779 # This option causes '/dev/termios3' to be included in the standard \r
2780 # drivers.\r
2782 cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS3 {\r
2783     # This option is not active\r
2784     # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled\r
2786     # Flavor: bool\r
2787     # No user value, uncomment the following line to provide one.\r
2788     # user_value 0\r
2789     # value_source default\r
2790     # Default value: 0\r
2791 };\r
2793 # >\r
2794 # Termios TTY channel #3 device\r
2795 # This option selects the physical device to use for \r
2796 # '/dev/termios3'.\r
2798 cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS3_DEV {\r
2799     # This option is not active\r
2800     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS3 is not active\r
2801     # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS3 is disabled\r
2803     # Flavor: data\r
2804     # No user value, uncomment the following line to provide one.\r
2805     # user_value "\"/dev/ser3\""\r
2806     # value_source default\r
2807     # Default value: "\"/dev/ser3\""\r
2808 };\r
2810 # <\r
2811 # Support signals\r
2812 # This option selects whether those parts of the termios\r
2813 # interface involving signals is supported. This includes\r
2814 # BRKINT mode, the INTR and QUIT characters, and whether\r
2815 # SIGHUP is sent on terminal close.\r
2817 cdl_option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS {\r
2818     # This option is not active\r
2819     # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled\r
2821     # Flavor: bool\r
2822     # No user value, uncomment the following line to provide one.\r
2823     # user_value 1\r
2824     # value_source default\r
2825     # Default value:  CYGINT_ISO_SIGNAL_NUMBERS != 0 &&  CYGINT_ISO_SIGNAL_IMPL != 0 \r
2826     #     CYGINT_ISO_SIGNAL_NUMBERS == 1\r
2827     #     CYGINT_ISO_SIGNAL_IMPL == 1\r
2828     #   --> 1\r
2829     # Requires: CYGINT_ISO_SIGNAL_NUMBERS\r
2830     #     CYGINT_ISO_SIGNAL_NUMBERS == 1\r
2831     #   --> 1\r
2832     # Requires: CYGINT_ISO_SIGNAL_IMPL\r
2833     #     CYGINT_ISO_SIGNAL_IMPL == 1\r
2834     #   --> 1\r
2835 };\r
2837 # <\r
2838 # Hardware serial device drivers\r
2839 # This option enables the hardware device drivers\r
2840 # for the current platform.\r
2842 cdl_component CYGPKG_IO_SERIAL_DEVICES {\r
2843     # Flavor: bool\r
2844     # No user value, uncomment the following line to provide one.\r
2845     # user_value 0\r
2846     # value_source default\r
2847     # Default value: 0\r
2849     # The following properties are affected by this value\r
2850     # option CYGPKG_IO_SERIAL_TESTS\r
2851     #     Calculated:  CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : "" \r
2852 };\r
2854 # >\r
2855 # Altera Avalon UART serial device driver\r
2856 # This option enables the serial device drivers for the\r
2857 # Altera Avalon UART.\r
2859 cdl_package CYGPKG_ALTERA_AVALON_UART {\r
2860     # Packages cannot be added or removed, nor can their version be changed,\r
2861     # simply by editing their value. Instead the appropriate configuration\r
2862     # should be used to perform these actions.\r
2864     # This option is not active\r
2865     # The parent CYGPKG_IO_SERIAL_DEVICES is disabled\r
2866     # ActiveIf constraint: CYGPKG_IO_SERIAL\r
2867     #     CYGPKG_IO_SERIAL == v3_0\r
2868     #   --> 1\r
2869     # ActiveIf constraint: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_uart ")\r
2870     #     CYGHWR_DETECTED_SOPC_DEVICES == 1\r
2871     #     CYGHWR_DETECTED_SOPC_DEVICE_LIST == " altera_avalon_pll altera_avalon_pipeline_bridge altera_avalon_tri_state_bridge altera_avalon_cy7c1380_ssram altera_avalon_cfi_flash ddr_high_perf altera_avalon_clock_crossing altera_avalon_timer altera_avalon_sysid altera_avalon_performance_counter altera_avalon_jtag_uart altera_avalon_pio altera_avalon_remote_update_cycloneiii eth_ocm "\r
2872     #   --> 0\r
2874     # This value cannot be modified here.\r
2875     # Flavor: booldata\r
2876     # Current value: 1 current\r
2877 };\r
2879 # >\r
2880 # Receive/transmit buffer size\r
2881 # The length of the transmit and receive buffers in bytes.\r
2883 cdl_option CYGDAT_ALT_AVALON_UART_BUF_LEN {\r
2884     # This option is not active\r
2885     # The parent CYGPKG_ALTERA_AVALON_UART is not active\r
2887     # Flavor: data\r
2888     # No user value, uncomment the following line to provide one.\r
2889     # user_value 64\r
2890     # value_source default\r
2891     # Default value: 64\r
2892 };\r
2894 # Additional compiler flags\r
2895 # This option modifies the set of compiler flags for\r
2896 # building the Altera Avalon UART driver.\r
2897 # These flags are used in addition\r
2898 # to the set of global flags.\r
2900 cdl_option CYGPKG_ALTERA_AVALON_UART_CFLAGS_ADD {\r
2901     # This option is not active\r
2902     # The parent CYGPKG_ALTERA_AVALON_UART is not active\r
2904     # Flavor: data\r
2905     # No user value, uncomment the following line to provide one.\r
2906     # user_value "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
2907     # value_source default\r
2908     # Default value: "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
2909 };\r
2911 # Suppressed compiler flags\r
2912 # This option modifies the set of compiler flags for\r
2913 # building the Altera Avalon UART driver. These flags are removed from\r
2914 # the set of global flags if present.\r
2916 cdl_option CYGPKG_ALTERA_AVALON_UART_CFLAGS_REMOVE {\r
2917     # This option is not active\r
2918     # The parent CYGPKG_ALTERA_AVALON_UART is not active\r
2920     # Flavor: data\r
2921     # No user value, uncomment the following line to provide one.\r
2922     # user_value ""\r
2923     # value_source default\r
2924     # Default value: ""\r
2925 };\r
2927 # <\r
2928 # Altera Avalon JTAG UART serial device driver\r
2929 # This option enables the serial device drivers for the\r
2930 # Altera Avalon JTAG UART.\r
2932 cdl_package CYGPKG_ALTERA_AVALON_JTAG_UART {\r
2933     # Packages cannot be added or removed, nor can their version be changed,\r
2934     # simply by editing their value. Instead the appropriate configuration\r
2935     # should be used to perform these actions.\r
2937     # This option is not active\r
2938     # The parent CYGPKG_IO_SERIAL_DEVICES is disabled\r
2939     # ActiveIf constraint: CYGPKG_IO_SERIAL\r
2940     #     CYGPKG_IO_SERIAL == v3_0\r
2941     #   --> 1\r
2942     # ActiveIf constraint: !CYGHWR_DETECTED_SOPC_DEVICES || is_substr (CYGHWR_DETECTED_SOPC_DEVICE_LIST, " altera_avalon_jtag_uart ")\r
2943     #     CYGHWR_DETECTED_SOPC_DEVICES == 1\r
2944     #     CYGHWR_DETECTED_SOPC_DEVICE_LIST == " altera_avalon_pll altera_avalon_pipeline_bridge altera_avalon_tri_state_bridge altera_avalon_cy7c1380_ssram altera_avalon_cfi_flash ddr_high_perf altera_avalon_clock_crossing altera_avalon_timer altera_avalon_sysid altera_avalon_performance_counter altera_avalon_jtag_uart altera_avalon_pio altera_avalon_remote_update_cycloneiii eth_ocm "\r
2945     #   --> 1\r
2947     # This value cannot be modified here.\r
2948     # Flavor: booldata\r
2949     # Current value: 1 current\r
2950     # Requires: ! CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE\r
2951     #     CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE == 0\r
2952     #   --> 1\r
2953 };\r
2955 # >\r
2956 # Receive/transmit buffer size\r
2957 # The length of the transmit and receive buffers in bytes.\r
2959 cdl_option CYGDAT_ALT_AVALON_JTAG_UART_BUF_LEN {\r
2960     # This option is not active\r
2961     # The parent CYGPKG_ALTERA_AVALON_JTAG_UART is not active\r
2963     # Flavor: data\r
2964     # No user value, uncomment the following line to provide one.\r
2965     # user_value 64\r
2966     # value_source default\r
2967     # Default value: 64\r
2968 };\r
2970 # Additional compiler flags\r
2971 # This option modifies the set of compiler flags for\r
2972 # building the Altera Avalon JTAG UART driver.\r
2973 # These flags are used in addition\r
2974 # to the set of global flags.\r
2976 cdl_option CYGPKG_ALTERA_AVALON_JTAG_UART_CFLAGS_ADD {\r
2977     # This option is not active\r
2978     # The parent CYGPKG_ALTERA_AVALON_JTAG_UART is not active\r
2980     # Flavor: data\r
2981     # No user value, uncomment the following line to provide one.\r
2982     # user_value "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_jtag_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
2983     # value_source default\r
2984     # Default value: "-I`cygpath -u \$\$QUARTUS_ROOTDIR`/../ip/altera/sopc_builder_ip/altera_avalon_jtag_uart/inc -I\$(PREFIX)/include/cyg/hal"\r
2985 };\r
2987 # Suppressed compiler flags\r
2988 # This option modifies the set of compiler flags for\r
2989 # building the Altera Avalon JTAG UART driver. These flags are removed from\r
2990 # the set of global flags if present.\r
2992 cdl_option CYGPKG_ALTERA_AVALON_JTAG_UART_CFLAGS_REMOVE {\r
2993     # This option is not active\r
2994     # The parent CYGPKG_ALTERA_AVALON_JTAG_UART is not active\r
2996     # Flavor: data\r
2997     # No user value, uncomment the following line to provide one.\r
2998     # user_value ""\r
2999     # value_source default\r
3000     # Default value: ""\r
3001 };\r
3003 # <\r
3004 # <\r
3005 # Build extra serial tests\r
3006 # This option enables the building of some extra tests which\r
3007 # can be used when testing / debugging serial drivers. These\r
3008 # are not built by default since they do not use the dedicated\r
3009 # testing infrastructure.\r
3011 cdl_option CYGBLD_IO_SERIAL_EXTRA_TESTS {\r
3012     # Flavor: bool\r
3013     # No user value, uncomment the following line to provide one.\r
3014     # user_value 0\r
3015     # value_source default\r
3016     # Default value: 0\r
3017 };\r
3019 # Serial device driver build options\r
3020 # Package specific build options including control over\r
3021 # compiler flags used only in building this package,\r
3022 # and details of which tests are built.\r
3024 cdl_component CYGPKG_IO_SERIAL_OPTIONS {\r
3025     # There is no associated value.\r
3026 };\r
3028 # >\r
3029 # Additional compiler flags\r
3030 # This option modifies the set of compiler flags for\r
3031 # building the serial device drivers. These flags are used in addition\r
3032 # to the set of global flags.\r
3034 cdl_option CYGPKG_IO_SERIAL_CFLAGS_ADD {\r
3035     # Flavor: data\r
3036     # No user value, uncomment the following line to provide one.\r
3037     # user_value ""\r
3038     # value_source default\r
3039     # Default value: ""\r
3040 };\r
3042 # Suppressed compiler flags\r
3043 # This option modifies the set of compiler flags for\r
3044 # building the serial device drivers. These flags are removed from\r
3045 # the set of global flags if present.\r
3047 cdl_option CYGPKG_IO_SERIAL_CFLAGS_REMOVE {\r
3048     # Flavor: data\r
3049     # No user value, uncomment the following line to provide one.\r
3050     # user_value ""\r
3051     # value_source default\r
3052     # Default value: ""\r
3053 };\r
3055 # Serial device driver tests\r
3056 # This option specifies the set of tests for the serial device drivers.\r
3058 cdl_option CYGPKG_IO_SERIAL_TESTS {\r
3059     # Calculated value:  CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : "" \r
3060     #     CYGPKG_IO_SERIAL_DEVICES == 0\r
3061     # Flavor: data\r
3062     # Current_value: \r
3063 };\r
3065 # <\r
3066 # Enable serial device select support\r
3067 # This option enables support for the select() API function on all\r
3068 # serial devices.\r
3070 cdl_option CYGPKG_IO_SERIAL_SELECT_SUPPORT {\r
3071     # This option is not active\r
3072     # ActiveIf constraint: CYGPKG_IO_FILEIO\r
3073     #     CYGPKG_IO_FILEIO (unknown) == 0\r
3074     #   --> 0\r
3076     # Flavor: bool\r
3077     # No user value, uncomment the following line to provide one.\r
3078     # user_value 1\r
3079     # value_source default\r
3080     # Default value: 1\r
3081     # Requires:  CYGFUN_IO_FILEIO_SELECT == 1 \r
3082     #     CYGFUN_IO_FILEIO_SELECT (unknown) == 0\r
3083     #   --> 0\r
3084 };\r
3086 # Serial testing specification\r
3088 cdl_component CYGPKG_IO_SERIAL_TEST_SPECS {\r
3089     # Calculated value: 1\r
3090     # Flavor: bool\r
3091     # Current value: 1\r
3092 };\r
3094 # >\r
3095 # Skip 9600 baud testing\r
3097 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_9600 {\r
3098     # No options implement this inferface\r
3099     # This value cannot be modified here.\r
3100     # Flavor: data\r
3101     # Current_value: 0\r
3102 };\r
3104 # Skip 14400 baud testing\r
3106 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_14400 {\r
3107     # No options implement this inferface\r
3108     # This value cannot be modified here.\r
3109     # Flavor: data\r
3110     # Current_value: 0\r
3111 };\r
3113 # Skip 19200 baud testing\r
3115 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_19200 {\r
3116     # No options implement this inferface\r
3117     # This value cannot be modified here.\r
3118     # Flavor: data\r
3119     # Current_value: 0\r
3120 };\r
3122 # Skip 38400 baud testing\r
3124 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_38400 {\r
3125     # No options implement this inferface\r
3126     # This value cannot be modified here.\r
3127     # Flavor: data\r
3128     # Current_value: 0\r
3129 };\r
3131 # Skip 57600 baud testing\r
3133 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_57600 {\r
3134     # No options implement this inferface\r
3135     # This value cannot be modified here.\r
3136     # Flavor: data\r
3137     # Current_value: 0\r
3138 };\r
3140 # Skip 115200 baud testing\r
3142 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_115200 {\r
3143     # No options implement this inferface\r
3144     # This value cannot be modified here.\r
3145     # Flavor: data\r
3146     # Current_value: 0\r
3147 };\r
3149 # Skip even-parity testing\r
3151 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_EVEN {\r
3152     # No options implement this inferface\r
3153     # This value cannot be modified here.\r
3154     # Flavor: data\r
3155     # Current_value: 0\r
3156 };\r
3158 # Skip odd-parity testing\r
3160 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_ODD {\r
3161     # No options implement this inferface\r
3162     # This value cannot be modified here.\r
3163     # Flavor: data\r
3164     # Current_value: 0\r
3165 };\r
3167 # Skip 2-stop bit testing\r
3169 cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_STOP_2 {\r
3170     # No options implement this inferface\r
3171     # This value cannot be modified here.\r
3172     # Flavor: data\r
3173     # Current_value: 0\r
3174 };\r
3176 # <\r
3177 # <\r
3178 # <\r
3179 # Infrastructure\r
3180 # Common types and useful macros.\r
3181 # Tracing and assertion facilities.\r
3182 # Package startup options.\r
3184 cdl_package CYGPKG_INFRA {\r
3185     # Packages cannot be added or removed, nor can their version be changed,\r
3186     # simply by editing their value. Instead the appropriate configuration\r
3187     # should be used to perform these actions.\r
3189     # This value cannot be modified here.\r
3190     # Flavor: booldata\r
3191     # Current value: 1 v3_0\r
3193     # The following properties are affected by this value\r
3194     # package CYGPKG_HAL\r
3195     #     Requires: CYGPKG_INFRA\r
3196 };\r
3198 # >\r
3199 # Asserts & Tracing\r
3200 # The eCos source code contains a significant amount of\r
3201 # internal debugging support, in the form of assertions and\r
3202 # tracing.\r
3203 # Assertions check at runtime that various conditions are as\r
3204 # expected; if not, execution is halted.\r
3205 # Tracing takes the form of text messages that are output\r
3206 # whenever certain events occur, or whenever functions are\r
3207 # called or return.\r
3208 # The most important property of these checks and messages is\r
3209 # that they are not required for the program to run.\r
3210 # It is prudent to develop software with assertions enabled,\r
3211 # but disable them when making a product release, thus\r
3212 # removing the overhead of that checking.\r
3213 # It is possible to enable assertions and tracing\r
3214 # independently.\r
3215 # There are also options controlling the exact behaviour of\r
3216 # the assertion and tracing facilities, thus giving users\r
3217 # finer control over the code and data size requirements.\r
3219 cdl_component CYGPKG_INFRA_DEBUG {\r
3220     # Flavor: bool\r
3221     # No user value, uncomment the following line to provide one.\r
3222     # user_value 0\r
3223     # value_source default\r
3224     # Default value: 0\r
3226     # The following properties are affected by this value\r
3227     # option CYGNUM_INFRA_EMPTY_DELETE_THRESHOLD\r
3228     #     ActiveIf: CYGPKG_INFRA_DEBUG\r
3229     # component CYGFUN_KERNEL_THREADS_STACK_CHECKING\r
3230     #     ActiveIf: CYGPKG_INFRA_DEBUG\r
3231     # component CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT\r
3232     #     DefaultValue:  0 != CYGPKG_INFRA_DEBUG \r
3233     # option CYGPKG_KERNEL_TESTS\r
3234     #     Calculated:  \r
3235     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
3236     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
3237     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
3238     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
3239     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
3240     #                 \r
3241 };\r
3243 # >\r
3244 # Use asserts\r
3245 # If this option is defined, asserts in the code are tested.\r
3246 # Assert functions (CYG_ASSERT()) are defined in\r
3247 # 'include/cyg/infra/cyg_ass.h' within the 'install' tree.\r
3248 # If it is not defined, these result in no additional\r
3249 # object code and no checking of the asserted conditions.\r
3251 cdl_component CYGDBG_USE_ASSERTS {\r
3252     # This option is not active\r
3253     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3255     # Flavor: bool\r
3256     # No user value, uncomment the following line to provide one.\r
3257     # user_value 1\r
3258     # value_source default\r
3259     # Default value: 1\r
3260     # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL \r
3261     #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0\r
3262     #   --> 0\r
3264     # The following properties are affected by this value\r
3265     # component CYGFUN_KERNEL_THREADS_STACK_CHECKING\r
3266     #     ActiveIf: CYGDBG_USE_ASSERTS\r
3267     # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG\r
3268     #     Requires: CYGDBG_USE_ASSERTS\r
3269     # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG\r
3270     #     DefaultValue:  0 != CYGDBG_USE_ASSERTS \r
3271     # option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL\r
3272     #     Requires: CYGDBG_USE_ASSERTS\r
3273 };\r
3275 # >\r
3276 # Preconditions\r
3277 # This option allows individual control of preconditions.\r
3278 # A precondition is one type of assert, which it is\r
3279 # useful to control separately from more general asserts.\r
3280 # The function is CYG_PRECONDITION(condition,msg).\r
3282 cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS {\r
3283     # This option is not active\r
3284     # The parent CYGDBG_USE_ASSERTS is not active\r
3286     # Flavor: bool\r
3287     # No user value, uncomment the following line to provide one.\r
3288     # user_value 1\r
3289     # value_source default\r
3290     # Default value: 1\r
3291 };\r
3293 # Postconditions\r
3294 # This option allows individual control of postconditions.\r
3295 # A postcondition is one type of assert, which it is\r
3296 # useful to control separately from more general asserts.\r
3297 # The function is CYG_POSTCONDITION(condition,msg).\r
3299 cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS {\r
3300     # This option is not active\r
3301     # The parent CYGDBG_USE_ASSERTS is not active\r
3303     # Flavor: bool\r
3304     # No user value, uncomment the following line to provide one.\r
3305     # user_value 1\r
3306     # value_source default\r
3307     # Default value: 1\r
3308 };\r
3310 # Loop invariants\r
3311 # This option allows individual control of loop invariants.\r
3312 # A loop invariant is one type of assert, which it is\r
3313 # useful to control separately from more general asserts,\r
3314 # particularly since a loop invariant is typically evaluated\r
3315 # a great many times when used correctly.\r
3316 # The function is CYG_LOOP_INVARIANT(condition,msg).\r
3318 cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS {\r
3319     # This option is not active\r
3320     # The parent CYGDBG_USE_ASSERTS is not active\r
3322     # Flavor: bool\r
3323     # No user value, uncomment the following line to provide one.\r
3324     # user_value 1\r
3325     # value_source default\r
3326     # Default value: 1\r
3327 };\r
3329 # Use assert text\r
3330 # All assertions within eCos contain a text message\r
3331 # which should give some information about the condition\r
3332 # being tested.\r
3333 # These text messages will end up being embedded in the\r
3334 # application image and hence there is a significant penalty\r
3335 # in terms of image size.\r
3336 # It is possible to suppress the use of these messages by\r
3337 # disabling this option.\r
3338 # This results in smaller code size, but there is less\r
3339 # human-readable information if an assertion actually gets\r
3340 # triggered.\r
3342 cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE {\r
3343     # This option is not active\r
3344     # The parent CYGDBG_USE_ASSERTS is not active\r
3346     # Flavor: bool\r
3347     # No user value, uncomment the following line to provide one.\r
3348     # user_value 1\r
3349     # value_source default\r
3350     # Default value: 1\r
3351 };\r
3353 # <\r
3354 # Use tracing\r
3355 # If this option is defined, tracing operations\r
3356 # result in output or logging, depending on other options.\r
3357 # This may have adverse effects on performance, if the time\r
3358 # taken to output message overwhelms the available CPU\r
3359 # power or output bandwidth.\r
3360 # Trace functions (CYG_TRACE()) are defined in\r
3361 # 'include/cyg/infra/cyg_trac.h' within the 'install' tree.\r
3362 # If it is not defined, these result in no additional\r
3363 # object code and no trace information.\r
3365 cdl_component CYGDBG_USE_TRACING {\r
3366     # This option is not active\r
3367     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3369     # Flavor: bool\r
3370     # No user value, uncomment the following line to provide one.\r
3371     # user_value 0\r
3372     # value_source default\r
3373     # Default value: 0\r
3374     # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL \r
3375     #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0\r
3376     #   --> 0\r
3378     # The following properties are affected by this value\r
3379     # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE\r
3380     #     ActiveIf: CYGDBG_USE_TRACING\r
3381     # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP\r
3382     #     ActiveIf: CYGDBG_USE_TRACING\r
3383     # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT\r
3384     #     ActiveIf: CYGDBG_USE_TRACING\r
3385     # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT\r
3386     #     ActiveIf: CYGDBG_USE_TRACING\r
3387     # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT\r
3388     #     ActiveIf: CYGDBG_USE_TRACING\r
3389     # option CYGDBG_KERNEL_TRACE_TIMESLICE\r
3390     #     ActiveIf: CYGDBG_USE_TRACING\r
3391     # component CYGPKG_LIBM_TRACE\r
3392     #     Requires: CYGDBG_USE_TRACING\r
3393 };\r
3395 # >\r
3396 # Trace function reports\r
3397 # This option allows individual control of\r
3398 # function entry/exit tracing, independent of\r
3399 # more general tracing output.\r
3400 # This may be useful to remove clutter from a\r
3401 # trace log.\r
3403 cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS {\r
3404     # This option is not active\r
3405     # The parent CYGDBG_USE_TRACING is not active\r
3406     # The parent CYGDBG_USE_TRACING is disabled\r
3408     # Flavor: bool\r
3409     # No user value, uncomment the following line to provide one.\r
3410     # user_value 1\r
3411     # value_source default\r
3412     # Default value: 1\r
3413 };\r
3415 # Use trace text\r
3416 # All trace calls within eCos contain a text message\r
3417 # which should give some information about the circumstances.\r
3418 # These text messages will end up being embedded in the\r
3419 # application image and hence there is a significant penalty\r
3420 # in terms of image size.\r
3421 # It is possible to suppress the use of these messages by\r
3422 # disabling this option.\r
3423 # This results in smaller code size, but there is less\r
3424 # human-readable information available in the trace output,\r
3425 # possibly only filenames and line numbers.\r
3427 cdl_option CYGDBG_INFRA_DEBUG_TRACE_MESSAGE {\r
3428     # This option is not active\r
3429     # The parent CYGDBG_USE_TRACING is not active\r
3430     # The parent CYGDBG_USE_TRACING is disabled\r
3432     # Flavor: bool\r
3433     # No user value, uncomment the following line to provide one.\r
3434     # user_value 1\r
3435     # value_source default\r
3436     # Default value: 1\r
3437 };\r
3439 # <\r
3440 # Trace output implementations\r
3442 cdl_interface CYGINT_INFRA_DEBUG_TRACE_IMPL {\r
3443     # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL, inactive, disabled\r
3444     # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE, inactive, disabled\r
3445     # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY, inactive, disabled\r
3446     # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER, inactive, enabled\r
3447     # This option is not active\r
3448     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3450     # This value cannot be modified here.\r
3451     # Flavor: data\r
3452     # Current_value: 0\r
3454     # The following properties are affected by this value\r
3455     # component CYGDBG_USE_ASSERTS\r
3456     #     Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL \r
3457     # component CYGDBG_USE_TRACING\r
3458     #     Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL \r
3459 };\r
3461 # Null output\r
3462 # A null output module which is useful when\r
3463 # debugging interactively; the output routines\r
3464 # can be breakpointed rather than have them actually\r
3465 # 'print' something.\r
3467 cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL {\r
3468     # This option is not active\r
3469     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3471     # Flavor: bool\r
3472     # No user value, uncomment the following line to provide one.\r
3473     # user_value 0\r
3474     # value_source default\r
3475     # Default value: 0\r
3476 };\r
3478 # Simple output\r
3479 # An output module which produces simple output\r
3480 # from tracing and assertion events.\r
3482 cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE {\r
3483     # This option is not active\r
3484     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3486     # Flavor: bool\r
3487     # No user value, uncomment the following line to provide one.\r
3488     # user_value 0\r
3489     # value_source default\r
3490     # Default value: 0\r
3492     # The following properties are affected by this value\r
3493     # option CYGDBG_KERNEL_TRACE_TIMESLICE\r
3494     #     Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE\r
3495 };\r
3497 # Fancy output\r
3498 # An output module which produces fancy output\r
3499 # from tracing and assertion events.\r
3501 cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY {\r
3502     # This option is not active\r
3503     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3505     # Flavor: bool\r
3506     # No user value, uncomment the following line to provide one.\r
3507     # user_value 0\r
3508     # value_source default\r
3509     # Default value: 0\r
3511     # The following properties are affected by this value\r
3512     # option CYGDBG_KERNEL_TRACE_TIMESLICE\r
3513     #     Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY\r
3514 };\r
3516 # Buffered tracing\r
3517 # An output module which buffers output\r
3518 # from tracing and assertion events. The stored\r
3519 # messages are output when an assert fires, or\r
3520 # CYG_TRACE_PRINT() (defined in <cyg/infra/cyg_trac.h>)\r
3521 # is called.\r
3522 # Of course, there will only be stored messages\r
3523 # if tracing per se (CYGDBG_USE_TRACING)\r
3524 # is enabled above.\r
3526 cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER {\r
3527     # This option is not active\r
3528     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3530     # Flavor: bool\r
3531     # No user value, uncomment the following line to provide one.\r
3532     # user_value 1\r
3533     # value_source default\r
3534     # Default value: 1\r
3535 };\r
3537 # >\r
3538 # Trace buffer size\r
3539 # The size of the trace buffer. This counts the number\r
3540 # of trace records stored. When the buffer fills it\r
3541 # either wraps, stops recording, or generates output.\r
3543 cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE {\r
3544     # This option is not active\r
3545     # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active\r
3546     # ActiveIf constraint: CYGDBG_USE_TRACING\r
3547     #     CYGDBG_USE_TRACING == 0\r
3548     #   --> 0\r
3550     # Flavor: data\r
3551     # No user value, uncomment the following line to provide one.\r
3552     # user_value 32\r
3553     # value_source default\r
3554     # Default value: 32\r
3555     # Legal values: 5 to 65535\r
3556 };\r
3558 # Wrap trace buffer when full\r
3559 # When the trace buffer has filled with records it\r
3560 # starts again at the beginning. Hence only the last\r
3561 # CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will\r
3562 # be recorded.\r
3564 cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP {\r
3565     # This option is not active\r
3566     # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active\r
3567     # ActiveIf constraint: CYGDBG_USE_TRACING\r
3568     #     CYGDBG_USE_TRACING == 0\r
3569     #   --> 0\r
3571     # Flavor: bool\r
3572     # No user value, uncomment the following line to provide one.\r
3573     # user_value 1\r
3574     # value_source default\r
3575     # Default value: 1\r
3576 };\r
3578 # Halt trace buffer when full\r
3579 # When the trace buffer has filled with records it\r
3580 # stops recording. Hence only the first\r
3581 # CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will\r
3582 # be recorded.\r
3584 cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT {\r
3585     # This option is not active\r
3586     # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active\r
3587     # ActiveIf constraint: CYGDBG_USE_TRACING\r
3588     #     CYGDBG_USE_TRACING == 0\r
3589     #   --> 0\r
3591     # Flavor: bool\r
3592     # No user value, uncomment the following line to provide one.\r
3593     # user_value 0\r
3594     # value_source default\r
3595     # Default value: 0\r
3596 };\r
3598 # Print trace buffer when full\r
3599 # When the trace buffer has filled with records it\r
3600 # prints the contents of the buffer. The buffer is then\r
3601 # emptied and the system continues.\r
3603 cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT {\r
3604     # This option is not active\r
3605     # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active\r
3606     # ActiveIf constraint: CYGDBG_USE_TRACING\r
3607     #     CYGDBG_USE_TRACING == 0\r
3608     #   --> 0\r
3610     # Flavor: bool\r
3611     # No user value, uncomment the following line to provide one.\r
3612     # user_value 0\r
3613     # value_source default\r
3614     # Default value: 0\r
3615 };\r
3617 # Print trace buffer on assert fail\r
3618 # When an assertion fails the trace buffer will be \r
3619 # printed to the default diagnostic device.\r
3621 cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT {\r
3622     # This option is not active\r
3623     # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active\r
3624     # ActiveIf constraint: CYGDBG_USE_TRACING\r
3625     #     CYGDBG_USE_TRACING == 0\r
3626     #   --> 0\r
3628     # Flavor: bool\r
3629     # No user value, uncomment the following line to provide one.\r
3630     # user_value 1\r
3631     # value_source default\r
3632     # Default value: 1\r
3633 };\r
3635 # <\r
3636 # Use function names\r
3637 # All trace and assert calls within eCos contain a\r
3638 # reference to the builtin macro '__PRETTY_FUNCTION__',\r
3639 # which evaluates to a string containing\r
3640 # the name of the current function.\r
3641 # This is useful when reading a trace log.\r
3642 # It is possible to suppress the use of the function name\r
3643 # by disabling this option.\r
3644 # This results in smaller code size, but there is less\r
3645 # human-readable information available in the trace output,\r
3646 # possibly only filenames and line numbers.\r
3648 cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO {\r
3649     # This option is not active\r
3650     # The parent CYGPKG_INFRA_DEBUG is disabled\r
3652     # Flavor: bool\r
3653     # No user value, uncomment the following line to provide one.\r
3654     # user_value 1\r
3655     # value_source default\r
3656     # Default value: 1\r
3657 };\r
3659 # <\r
3660 # Startup options\r
3661 # Some packages require a startup routine to be called.\r
3662 # This can be carried out by application code, by supplying\r
3663 # a routine called cyg_package_start() which calls the\r
3664 # appropriate package startup routine(s).\r
3665 # Alternatively, this routine can be constructed automatically\r
3666 # and configured to call the startup routines of your choice.\r
3668 cdl_component CYGPKG_INFRA_STARTUP {\r
3669     # There is no associated value.\r
3670 };\r
3672 # >\r
3673 # Start uITRON subsystem\r
3674 # Generate a call to initialize the\r
3675 # uITRON compatibility subsystem\r
3676 # within the system version of cyg_package_start().\r
3677 # This enables compatibility with uITRON.\r
3678 # You must configure uITRON with the correct tasks before\r
3679 # starting the uItron subsystem.\r
3680 # If this is disabled, and you want to use uITRON,\r
3681 # you must call cyg_uitron_start() from your own\r
3682 # cyg_package_start() or cyg_userstart().\r
3684 cdl_option CYGSEM_START_UITRON_COMPATIBILITY {\r
3685     # This option is not active\r
3686     # ActiveIf constraint: CYGPKG_UITRON\r
3687     #     CYGPKG_UITRON (unknown) == 0\r
3688     #   --> 0\r
3690     # Flavor: bool\r
3691     # No user value, uncomment the following line to provide one.\r
3692     # user_value 0\r
3693     # value_source default\r
3694     # Default value: 0\r
3695     # Requires: CYGPKG_UITRON\r
3696     #     CYGPKG_UITRON (unknown) == 0\r
3697     #   --> 0\r
3698 };\r
3700 # <\r
3701 # Smaller slower memcpy()\r
3702 # Enabling this option causes the implementation of\r
3703 # the standard memcpy() routine to reduce code\r
3704 # size at the expense of execution speed. This\r
3705 # option is automatically enabled with the use of\r
3706 # the -Os option to the compiler. Also note that\r
3707 # the compiler will try to use its own builtin\r
3708 # version of memcpy() if possible, ignoring the\r
3709 # implementation in this package, unless given\r
3710 # the -fno-builtin compiler option.\r
3712 cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY {\r
3713     # Flavor: bool\r
3714     # No user value, uncomment the following line to provide one.\r
3715     # user_value 0\r
3716     # value_source default\r
3717     # Default value: 0\r
3718 };\r
3720 # Smaller slower memset()\r
3721 # Enabling this option causes the implementation of\r
3722 # the standard memset() routine to reduce code\r
3723 # size at the expense of execution speed. This\r
3724 # option is automatically enabled with the use of\r
3725 # the -Os option to the compiler. Also note that\r
3726 # the compiler will try to use its own builtin\r
3727 # version of memset() if possible, ignoring the\r
3728 # implementation in this package, unless given\r
3729 # the -fno-builtin compiler option.\r
3731 cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMSET {\r
3732     # Flavor: bool\r
3733     # No user value, uncomment the following line to provide one.\r
3734     # user_value 0\r
3735     # value_source default\r
3736     # Default value: 0\r
3737 };\r
3739 # Provide empty C++ delete functions\r
3740 # To deal with virtual destructors, where the correct delete()\r
3741 # function must be called for the derived class in question, the\r
3742 # underlying delete is called when needed, from destructors.  This\r
3743 # is regardless of whether the destructor is called by delete itself.\r
3744 # So there is a reference to delete() from all destructors.  The\r
3745 # default builtin delete() attempts to call free() if there is\r
3746 # one defined.  So, if you have destructors, and you have free(),\r
3747 # as in malloc() and free(), any destructor counts as a reference\r
3748 # to free().  So the dynamic memory allocation code is linked\r
3749 # in regardless of whether it gets explicitly called. This\r
3750 # increases code and data size needlessly.\r
3751 # To defeat this undesirable behaviour, we define empty versions\r
3752 # of delete and delete[].  But doing this prevents proper use\r
3753 # of dynamic memory in C++ programs via C++'s new and delete\r
3754 # operators.\r
3755 # Therefore, this option is provided\r
3756 # for explicitly disabling the provision of these empty functions,\r
3757 # so that new and delete can be used, if that is what is required.\r
3759 cdl_option CYGFUN_INFRA_EMPTY_DELETE_FUNCTIONS {\r
3760     # Flavor: bool\r
3761     # No user value, uncomment the following line to provide one.\r
3762     # user_value 1\r
3763     # value_source default\r
3764     # Default value: 1\r
3765 };\r
3767 # Threshold for valid number of delete calls\r
3768 # Some users don't know about the empty delete function and then\r
3769 # wonder why their C++ classes are leaking memory. If\r
3770 # INFRA_DEBUG is enabled we keep a counter for the number of\r
3771 # times delete is called. If it goes above this threshold we throw\r
3772 # an assertion failure. This should point heavy users of\r
3773 # delete in the right direction without upsetting those who want\r
3774 # an empty delete function. \r
3776 cdl_option CYGNUM_INFRA_EMPTY_DELETE_THRESHOLD {\r
3777     # This option is not active\r
3778     # ActiveIf constraint: CYGPKG_INFRA_DEBUG\r
3779     #     CYGPKG_INFRA_DEBUG == 0\r
3780     #   --> 0\r
3782     # Flavor: data\r
3783     # No user value, uncomment the following line to provide one.\r
3784     # user_value 100\r
3785     # value_source default\r
3786     # Default value: 100\r
3787 };\r
3789 # Provide dummy abort() function\r
3790 # This option controls the inclusion of a dummy abort() function.\r
3791 # Parts of the C and C++ compiler runtime systems contain references\r
3792 # to abort(), particulary in the C++ exception handling code. It is\r
3793 # not possible to eliminate these references, so this dummy function\r
3794 # in included to satisfy them. It is not expected that this function\r
3795 # will ever be called, so its current behaviour is to simply loop.\r
3797 cdl_option CYGFUN_INFRA_DUMMY_ABORT {\r
3798     # Flavor: bool\r
3799     # No user value, uncomment the following line to provide one.\r
3800     # user_value 0\r
3801     # value_source default\r
3802     # Default value:  CYGINT_ISO_EXIT == 0 \r
3803     #     CYGINT_ISO_EXIT == 1\r
3804     #   --> 0\r
3805     # Requires: !CYGINT_ISO_EXIT\r
3806     #     CYGINT_ISO_EXIT == 1\r
3807     #   --> 0\r
3808 };\r
3810 # Reset platform at end of test case execution\r
3811 # If this option is set then test case programs will reset the platform\r
3812 # when they terminate, as opposed to the default which is to just hang\r
3813 # in a loop.\r
3815 cdl_option CYGSEM_INFRA_RESET_ON_TEST_EXIT {\r
3816     # Flavor: bool\r
3817     # No user value, uncomment the following line to provide one.\r
3818     # user_value 0\r
3819     # value_source default\r
3820     # Default value: 0\r
3821 };\r
3823 # Provide dummy strlen() function\r
3824 # This option controls the inclusion of a dummy strlen() function.\r
3825 # Parts of the C and C++ compiler runtime systems contain references\r
3826 # to strlen(), particulary in the C++ exception handling code. It is\r
3827 # not possible to eliminate these references, so this dummy function\r
3828 # in included to satisfy them. While it is not expected that this function\r
3829 # will ever be called, it is functional but uses the simplest, smallest\r
3830 # algorithm. There is a faster version of strlen() in the C library.\r
3832 cdl_option CYGFUN_INFRA_DUMMY_STRLEN {\r
3833     # Flavor: bool\r
3834     # No user value, uncomment the following line to provide one.\r
3835     # user_value 0\r
3836     # value_source default\r
3837     # Default value:  CYGINT_ISO_STRING_STRFUNCS == 0 \r
3838     #     CYGINT_ISO_STRING_STRFUNCS == 1\r
3839     #   --> 0\r
3840     # Requires: !CYGINT_ISO_STRING_STRFUNCS\r
3841     #     CYGINT_ISO_STRING_STRFUNCS == 1\r
3842     #   --> 0\r
3843 };\r
3845 # Make all compiler warnings show as errors\r
3846 # Enabling this option will cause all compiler warnings to show\r
3847 # as errors and bring the library build to a halt. This is used\r
3848 # to ensure that the code base is warning free, and thus ensure\r
3849 # that newly introduced warnings stand out and get fixed before\r
3850 # they show up as weird run-time behavior.\r
3852 cdl_option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS {\r
3853     # Flavor: bool\r
3854     # No user value, uncomment the following line to provide one.\r
3855     # user_value 0\r
3856     # value_source default\r
3857     # Default value: 0\r
3858     # Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") \r
3859     #     CYGBLD_GLOBAL_CFLAGS == "-g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -DSYSTEM_BUS_WIDTH=32  -mhw-mul -mno-hw-mulx -mno-hw-div"\r
3860     #   --> 0\r
3861 };\r
3863 # Make compiler and assembler communicate by pipe\r
3864 # Enabling this option will cause the compiler to feed the\r
3865 # assembly output the the assembler via a pipe instead of\r
3866 # via a temporary file. This normally reduces the build\r
3867 # time.\r
3869 cdl_option CYGBLD_INFRA_CFLAGS_PIPE {\r
3870     # Flavor: bool\r
3871     # No user value, uncomment the following line to provide one.\r
3872     # user_value 0\r
3873     # value_source default\r
3874     # Default value: 0\r
3875     # Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") \r
3876     #     CYGBLD_GLOBAL_CFLAGS == "-g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -DSYSTEM_BUS_WIDTH=32  -mhw-mul -mno-hw-mulx -mno-hw-div"\r
3877     #   --> 0\r
3878 };\r
3880 # Infra build options\r
3881 # Package specific build options including control over\r
3882 # compiler flags used only in building this package.\r
3884 cdl_component CYGPKG_INFRA_OPTIONS {\r
3885     # There is no associated value.\r
3886 };\r
3888 # >\r
3889 # Additional compiler flags\r
3890 # This option modifies the set of compiler flags for\r
3891 # building the eCos infra package. These flags are used\r
3892 # in addition to the set of global flags.\r
3894 cdl_option CYGPKG_INFRA_CFLAGS_ADD {\r
3895     # Flavor: data\r
3896     # No user value, uncomment the following line to provide one.\r
3897     # user_value ""\r
3898     # value_source default\r
3899     # Default value: ""\r
3900 };\r
3902 # Suppressed compiler flags\r
3903 # This option modifies the set of compiler flags for\r
3904 # building the eCos infra package. These flags are removed from\r
3905 # the set of global flags if present.\r
3907 cdl_option CYGPKG_INFRA_CFLAGS_REMOVE {\r
3908     # Flavor: data\r
3909     # No user value, uncomment the following line to provide one.\r
3910     # user_value ""\r
3911     # value_source default\r
3912     # Default value: ""\r
3913 };\r
3915 # Suppressed linker flags\r
3916 # This option modifies the set of linker flags for\r
3917 # building the eCos infra package tests. These flags are removed from\r
3918 # the set of global flags if present.\r
3920 cdl_option CYGPKG_INFRA_LDFLAGS_REMOVE {\r
3921     # Flavor: data\r
3922     # No user value, uncomment the following line to provide one.\r
3923     # user_value -Wl,--gc-sections\r
3924     # value_source default\r
3925     # Default value: -Wl,--gc-sections\r
3926 };\r
3928 # Additional linker flags\r
3929 # This option modifies the set of linker flags for\r
3930 # building the eCos infra package tests. These flags are added to\r
3931 # the set of global flags if present.\r
3933 cdl_option CYGPKG_INFRA_LDFLAGS_ADD {\r
3934     # Flavor: data\r
3935     # No user value, uncomment the following line to provide one.\r
3936     # user_value -Wl,--fatal-warnings\r
3937     # value_source default\r
3938     # Default value: -Wl,--fatal-warnings\r
3939 };\r
3941 # Infra package tests\r
3943 cdl_component CYGPKG_INFRA_TESTS {\r
3944     # Calculated value:  "tests/cxxsupp tests/diag_sprintf1 tests/diag_sprintf2" \r
3945     # Flavor: data\r
3946     # Current_value: tests/cxxsupp tests/diag_sprintf1 tests/diag_sprintf2\r
3947 };\r
3949 # >\r
3950 # Number of times a test runs\r
3951 # This option controls the number of times tests will execute their\r
3952 # basic function.  Not all tests will honor this setting, but those\r
3953 # that do will execute the test N times before terminating.  A value\r
3954 # less than 0 indicates to run forever.\r
3956 cdl_option CYGNUM_TESTS_RUN_COUNT {\r
3957     # Flavor: data\r
3958     # No user value, uncomment the following line to provide one.\r
3959     # user_value 1\r
3960     # value_source default\r
3961     # Default value: 1\r
3962 };\r
3964 # <\r
3965 # <\r
3966 # <\r
3967 # eCos kernel\r
3968 # doc: ref/kernel.html\r
3969 # This package contains the core functionality of the eCos\r
3970 # kernel. It relies on functionality provided by various HAL\r
3971 # packages and by the eCos infrastructure. In turn the eCos\r
3972 # kernel provides support for other packages such as the device\r
3973 # drivers and the uITRON compatibility layer.\r
3975 cdl_package CYGPKG_KERNEL {\r
3976     # Packages cannot be added or removed, nor can their version be changed,\r
3977     # simply by editing their value. Instead the appropriate configuration\r
3978     # should be used to perform these actions.\r
3980     # This value cannot be modified here.\r
3981     # Flavor: booldata\r
3982     # Current value: 1 v3_0\r
3984     # The following properties are affected by this value\r
3985     # option CYGFUN_HAL_COMMON_KERNEL_SUPPORT\r
3986     #     Requires: CYGPKG_KERNEL\r
3987     # option CYGFUN_HAL_COMMON_KERNEL_SUPPORT\r
3988     #     DefaultValue: CYGPKG_KERNEL\r
3989     # option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE\r
3990     #     DefaultValue:  CYGPKG_KERNEL ? 4096 : 32768 \r
3991     # option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE\r
3992     #     ActiveIf: CYGPKG_KERNEL\r
3993     # option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE\r
3994     #     ActiveIf: CYGPKG_KERNEL\r
3995     # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE\r
3996     #     ActiveIf: CYGPKG_KERNEL\r
3997     # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE\r
3998     #     Requires: CYGPKG_KERNEL\r
3999     # option CYGSEM_MEMALLOC_ALLOCATOR_SEPMETA_THREADAWARE\r
4000     #     ActiveIf: CYGPKG_KERNEL\r
4001     # option CYGFUN_MEMALLOC_KAPI\r
4002     #     ActiveIf: CYGPKG_KERNEL\r
4003     # option CYGSEM_LIBC_I18N_PER_THREAD_MB\r
4004     #     ActiveIf: CYGPKG_KERNEL\r
4005     # option CYGSEM_LIBC_SIGNALS_THREAD_SAFE\r
4006     #     Requires: CYGPKG_KERNEL\r
4007     # option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT\r
4008     #     DefaultValue:  0 == CYGPKG_KERNEL && 0 == \r
4009     #                                 CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
4010     # component CYGSEM_LIBC_STARTUP_MAIN_THREAD\r
4011     #     Requires: CYGPKG_KERNEL\r
4012     # component CYGSEM_LIBC_STARTUP_MAIN_THREAD\r
4013     #     DefaultValue:  0 != CYGPKG_KERNEL && 0 ==  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
4014     # option CYGSEM_LIBC_EXIT_STOPS_SYSTEM\r
4015     #     Requires: CYGPKG_KERNEL\r
4016     # option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS\r
4017     #     ActiveIf: CYGPKG_KERNEL\r
4018     # option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK\r
4019     #     ActiveIf: CYGPKG_KERNEL\r
4020     # option CYGPKG_WALLCLOCK_EMULATE\r
4021     #     Requires: CYGPKG_KERNEL\r
4022     # option CYGIMP_WALLCLOCK_NONE\r
4023     #     DefaultValue:  !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS \r
4024     # option CYGPKG_IO_WALLCLOCK_TESTS\r
4025     #     Calculated:  CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : "" \r
4026 };\r
4028 # >\r
4029 # Kernel interrupt handling\r
4030 # doc: ref/kernel-interrupts.html\r
4031 # The majority of configuration options related to interrupt\r
4032 # handling are in the HAL packages, since usually the code has\r
4033 # to be platform-specific. There are a number of options\r
4034 # provided within the kernel related to slightly higher-level\r
4035 # concepts, for example Delayed Service Routines.\r
4037 cdl_component CYGPKG_KERNEL_INTERRUPTS {\r
4038     # There is no associated value.\r
4040     # The following properties are affected by this value\r
4041     # option CYGDBG_KERNEL_INSTRUMENT_INTR\r
4042     #     ActiveIf: CYGPKG_KERNEL_INTERRUPTS\r
4043 };\r
4045 # >\r
4046 # Use delayed service routines (DSRs)\r
4047 # In eCos the recommended way to handle device interrupts is to\r
4048 # do a minimum amount of work inside the low level interrupt\r
4049 # handler itself, and instead do as much as possible in a\r
4050 # Delayed Service Routine or DSR. If an application does not\r
4051 # make use of DSRs directly or indirectly then it is possible\r
4052 # to disable the DSR support completely, which reduces the\r
4053 # overheads of context switches and interrupt handling. Note\r
4054 # that the kernel real-time clock makes use of DSRs, as do many\r
4055 # of the device drivers. \r
4057 cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS {\r
4058     # Flavor: bool\r
4059     # No user value, uncomment the following line to provide one.\r
4060     # user_value 1\r
4061     # value_source default\r
4062     # Default value: 1\r
4064     # The following properties are affected by this value\r
4065     # option CYGVAR_KERNEL_COUNTERS_CLOCK\r
4066     #     Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS\r
4067 };\r
4069 # >\r
4071 cdl_interface CYGINT_KERNEL_INTERRUPTS_DSRS {\r
4072     # Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST, active, enabled\r
4073     # Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE, active, disabled\r
4074     # This value cannot be modified here.\r
4075     # Flavor: data\r
4076     # Current_value: 1\r
4077     # Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS\r
4078     #     CYGINT_KERNEL_INTERRUPTS_DSRS == 1\r
4079     #   --> 1\r
4081     # The following properties are affected by this value\r
4082     # interface CYGINT_KERNEL_INTERRUPTS_DSRS\r
4083     #     Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS\r
4084 };\r
4086 # Use linked lists for DSRs\r
4087 # When DSR support is enabled the kernel must keep track of all\r
4088 # the DSRs that are pending. This information can be kept in a\r
4089 # fixed-size table or in a linked list. The list implementation\r
4090 # requires that the kernel disable interrupts for a very short\r
4091 # period of time outside interrupt handlers, but there is no\r
4092 # possibility of a table overflow occurring.\r
4094 cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST {\r
4095     # Flavor: bool\r
4096     # No user value, uncomment the following line to provide one.\r
4097     # user_value 1\r
4098     # value_source default\r
4099     # Default value: 1\r
4100 };\r
4102 # >\r
4103 # Schedule DSRs in FIFO order\r
4104 # When this option is set, DSRs are scheduled\r
4105 # in the natural FIFO (first in, first out) order,\r
4106 # otherwise they are scheduled in LIFO (last in, first\r
4107 # out) order. Applications should not rely on any\r
4108 # particular order of scheduling of DSRs. LIFO\r
4109 # scheduling is kept for backward compatibility only and\r
4110 # is not recommended as it may lead to high (up to 2\r
4111 # times higher then FIFO) IRQ-to-DSR latencies at some\r
4112 # (typically rare) conditions. If unsure, leave this set.\r
4114 cdl_option CYGSEM_KERNEL_INTERRUPTS_DSRS_LIST_FIFO {\r
4115     # Flavor: bool\r
4116     # No user value, uncomment the following line to provide one.\r
4117     # user_value 1\r
4118     # value_source default\r
4119     # Default value: 1\r
4120 };\r
4122 # <\r
4123 # Use fixed-size table for DSRs\r
4124 # When DSR support is enabled the kernel must keep track of all\r
4125 # the DSRs that are pending. This information can be kept in a\r
4126 # fixed-size table or in a linked list. The table\r
4127 # implementation involves a very small risk of overflow at\r
4128 # run-time if a given interrupt source is able to have more\r
4129 # than one pending DSR. However it has the advantage that\r
4130 # the kernel does not need to disable interrupts outside\r
4131 # interrupt handlers.\r
4133 cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE {\r
4134     # Flavor: bool\r
4135     # No user value, uncomment the following line to provide one.\r
4136     # user_value 0\r
4137     # value_source default\r
4138     # Default value: 0\r
4139 };\r
4141 # >\r
4142 # Number of entries in fixed-size DSR table\r
4143 # When DSR support is enabled the kernel must keep track of all\r
4144 # the DSRs that are pending. One approach involves a fixed-size\r
4145 # table, which involves a very small risk of overflow at\r
4146 # run-time. By increasing the table size it is possible to reduce\r
4147 # this risk.\r
4149 cdl_option CYGNUM_KERNEL_INTERRUPTS_DSRS_TABLE_SIZE {\r
4150     # This option is not active\r
4151     # The parent CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE is disabled\r
4153     # Flavor: data\r
4154     # No user value, uncomment the following line to provide one.\r
4155     # user_value 32\r
4156     # value_source default\r
4157     # Default value: 32\r
4158     # Legal values: 2 to 1024\r
4159 };\r
4161 # <\r
4162 # Chain all interrupts together\r
4163 # Interrupts can be attached to vectors either singly, or be\r
4164 # chained together. The latter is necessary if there is no way\r
4165 # of discovering which device has interrupted without\r
4166 # inspecting the device itself. It can also reduce the amount\r
4167 # of RAM needed for interrupt decoding tables and code.\r
4169 cdl_option CYGIMP_KERNEL_INTERRUPTS_CHAIN {\r
4170     # Flavor: bool\r
4171     # No user value, uncomment the following line to provide one.\r
4172     # user_value 0\r
4173     # value_source default\r
4174     # Default value: 0\r
4175     # Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN\r
4176     #     CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN == 0\r
4177     #   --> 0\r
4178 };\r
4180 # <\r
4181 # <\r
4182 # Exception handling\r
4183 # doc: ref/kernel-exceptions.html\r
4184 # In the context of the eCos kernel exceptions are unexpected\r
4185 # events detected by the hardware, for example an attempt to\r
4186 # execute an illegal instruction. There is no relation with\r
4187 # other forms of exception, for example the catch and throw\r
4188 # facilities of languages like C++. It is possible to disable\r
4189 # all support for exceptions and thus save some memory.\r
4191 cdl_component CYGPKG_KERNEL_EXCEPTIONS {\r
4192     # Flavor: bool\r
4193     # No user value, uncomment the following line to provide one.\r
4194     # user_value 1\r
4195     # value_source default\r
4196     # Default value: 1\r
4197     # Requires: CYGPKG_HAL_EXCEPTIONS\r
4198     #     CYGPKG_HAL_EXCEPTIONS == 1\r
4199     #   --> 1\r
4201     # The following properties are affected by this value\r
4202     # option CYGPKG_HAL_EXCEPTIONS\r
4203     #     Requires: CYGPKG_KERNEL_EXCEPTIONS\r
4204     # option CYGPKG_HAL_EXCEPTIONS\r
4205     #     DefaultValue: CYGPKG_KERNEL_EXCEPTIONS\r
4206 };\r
4208 # >\r
4209 # Decode exception types in kernel\r
4210 # On targets where several different types of exception are\r
4211 # possible, for example executing an illegal instruction and\r
4212 # division by zero, it is possible for the kernel to do some\r
4213 # decoding of the exception type and deliver the different\r
4214 # types of exception to different handlers in the application\r
4215 # code. Alternatively the kernel can simply pass all\r
4216 # exceptions directly to application code, leaving the\r
4217 # decoding to be done by the application\r
4219 cdl_option CYGSEM_KERNEL_EXCEPTIONS_DECODE {\r
4220     # Flavor: bool\r
4221     # No user value, uncomment the following line to provide one.\r
4222     # user_value 0\r
4223     # value_source default\r
4224     # Default value: 0\r
4226     # The following properties are affected by this value\r
4227     # component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS\r
4228     #     Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE\r
4229 };\r
4231 # Use global exception handlers\r
4232 # In the context of the eCos kernel exceptions are\r
4233 # unexpected events detected by the hardware, for\r
4234 # example an attempt to execute an illegal\r
4235 # instruction. If the kernel is configured\r
4236 # to support exceptions then two implementations are\r
4237 # possible. The default implementation involves a single set\r
4238 # of exception handlers that are in use for the entire\r
4239 # system. The alternative implementation allows different\r
4240 # exception handlers to be specified for each thread.\r
4242 cdl_option CYGSEM_KERNEL_EXCEPTIONS_GLOBAL {\r
4243     # Flavor: bool\r
4244     # No user value, uncomment the following line to provide one.\r
4245     # user_value 1\r
4246     # value_source default\r
4247     # Default value: 1\r
4249     # The following properties are affected by this value\r
4250     # component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS\r
4251     #     Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL\r
4252 };\r
4254 # <\r
4255 # Kernel schedulers\r
4256 # doc: ref/kernel-overview.html#KERNEL-OVERVIEW-SCHEDULERS\r
4257 # The eCos kernel provides a choice of schedulers. In addition\r
4258 # there are a number of configuration options to control the\r
4259 # detailed behaviour of these schedulers.\r
4261 cdl_component CYGPKG_KERNEL_SCHED {\r
4262     # There is no associated value.\r
4264     # The following properties are affected by this value\r
4265     # option CYGDBG_KERNEL_INSTRUMENT_SCHED\r
4266     #     ActiveIf: CYGPKG_KERNEL_SCHED\r
4267 };\r
4269 # >\r
4270 # Number of schedulers in this configuration\r
4272 cdl_interface CYGINT_KERNEL_SCHEDULER {\r
4273     # Implemented by CYGSEM_KERNEL_SCHED_MLQUEUE, active, enabled\r
4274     # Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled\r
4275     # This value cannot be modified here.\r
4276     # Flavor: data\r
4277     # Current_value: 1\r
4278     # Requires: 1 == CYGINT_KERNEL_SCHEDULER\r
4279     #     CYGINT_KERNEL_SCHEDULER == 1\r
4280     #   --> 1\r
4282     # The following properties are affected by this value\r
4283     # interface CYGINT_KERNEL_SCHEDULER\r
4284     #     Requires: 1 == CYGINT_KERNEL_SCHEDULER\r
4285 };\r
4287 # Non-zero if the active schedule only has unique priorities\r
4288 # Not all schedulers allow mutiple threads to use the same\r
4289 # priority. That property is signalled via this option, allowing\r
4290 # scheduler and tests to behave accordingly.\r
4292 cdl_interface CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES {\r
4293     # Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled\r
4294     # This value cannot be modified here.\r
4295     # Flavor: data\r
4296     # Current_value: 0\r
4298     # The following properties are affected by this value\r
4299     # component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL\r
4300     #     Requires:  CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 \r
4301 };\r
4303 # Multi-level queue scheduler\r
4304 # The multi-level queue scheduler supports multiple priority\r
4305 # levels and multiple threads at each priority level.\r
4306 # Preemption between priority levels is automatic. Timeslicing\r
4307 # within a given priority level is controlled by a separate\r
4308 # configuration option.\r
4310 cdl_component CYGSEM_KERNEL_SCHED_MLQUEUE {\r
4311     # Flavor: bool\r
4312     # No user value, uncomment the following line to provide one.\r
4313     # user_value 1\r
4314     # value_source default\r
4315     # Default value: 1\r
4317     # The following properties are affected by this value\r
4318     # option CYGPRI_KERNEL_SCHED_IMPL_HXX\r
4319     #     Calculated:   CYGSEM_KERNEL_SCHED_BITMAP  ? "<cyg/kernel/bitmap.hxx>"  : CYGSEM_KERNEL_SCHED_MLQUEUE ? "<cyg/kernel/mlqueue.hxx>" : CYGSEM_KERNEL_SCHED_LOTTERY ? "<cyg/kernel/lottery.hxx>" : "!!!-- Configuration broken - no scheduler selected --!!!"\r
4320     # component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL\r
4321     #     ActiveIf:  CYGSEM_KERNEL_SCHED_MLQUEUE \r
4322 };\r
4324 # >\r
4325 # Output timeslices when tracing\r
4326 # When tracing is enabled, output trace messages every\r
4327 # timeslice. This can be quite verbose so is disabled by\r
4328 # default.\r
4330 cdl_option CYGDBG_KERNEL_TRACE_TIMESLICE {\r
4331     # This option is not active\r
4332     # ActiveIf constraint: CYGDBG_USE_TRACING\r
4333     #     CYGDBG_USE_TRACING == 0\r
4334     #   --> 0\r
4336     # Flavor: bool\r
4337     # No user value, uncomment the following line to provide one.\r
4338     # user_value 0\r
4339     # value_source default\r
4340     # Default value: 0\r
4341     # Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE\r
4342     #     CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE == 0\r
4343     #   --> 1\r
4344     # Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY\r
4345     #     CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY == 0\r
4346     #   --> 1\r
4347 };\r
4349 # <\r
4350 # Bitmap scheduler\r
4351 # The bitmap scheduler supports multiple priority levels but\r
4352 # only one thread can exist at each priority level. This means\r
4353 # that scheduling decisions are very simple and hence the\r
4354 # scheduler is efficient. Preemption between priority levels is\r
4355 # automatic. Timeslicing within a given priority level is\r
4356 # irrelevant since there can be only one thread at each\r
4357 # priority level.\r
4359 cdl_option CYGSEM_KERNEL_SCHED_BITMAP {\r
4360     # Flavor: bool\r
4361     # No user value, uncomment the following line to provide one.\r
4362     # user_value 0\r
4363     # value_source default\r
4364     # Default value: 0\r
4365     # Requires: !CYGPKG_KERNEL_SMP_SUPPORT\r
4366     #     CYGPKG_KERNEL_SMP_SUPPORT == 0\r
4367     #   --> 1\r
4369     # The following properties are affected by this value\r
4370     # option CYGPRI_KERNEL_SCHED_IMPL_HXX\r
4371     #     Calculated:   CYGSEM_KERNEL_SCHED_BITMAP  ? "<cyg/kernel/bitmap.hxx>"  : CYGSEM_KERNEL_SCHED_MLQUEUE ? "<cyg/kernel/mlqueue.hxx>" : CYGSEM_KERNEL_SCHED_LOTTERY ? "<cyg/kernel/lottery.hxx>" : "!!!-- Configuration broken - no scheduler selected --!!!"\r
4372     # component CYGSEM_KERNEL_SCHED_TIMESLICE\r
4373     #     Requires: !CYGSEM_KERNEL_SCHED_BITMAP\r
4374 };\r
4376 # Scheduler header file\r
4377 # This option sets a preprocessor symbol which names the header\r
4378 # file for the selected scheduler.  It is used internally by the\r
4379 # common scheduler code to include the correct header file.\r
4381 cdl_option CYGPRI_KERNEL_SCHED_IMPL_HXX {\r
4382     # Calculated value:   CYGSEM_KERNEL_SCHED_BITMAP  ? "<cyg/kernel/bitmap.hxx>"  : CYGSEM_KERNEL_SCHED_MLQUEUE ? "<cyg/kernel/mlqueue.hxx>" : CYGSEM_KERNEL_SCHED_LOTTERY ? "<cyg/kernel/lottery.hxx>" : "!!!-- Configuration broken - no scheduler selected --!!!"\r
4383     #     CYGSEM_KERNEL_SCHED_BITMAP == 0\r
4384     #     CYGSEM_KERNEL_SCHED_MLQUEUE == 1\r
4385     #     CYGSEM_KERNEL_SCHED_LOTTERY (unknown) == 0\r
4386     # Flavor: data\r
4387     # Current_value: <cyg/kernel/mlqueue.hxx>\r
4388 };\r
4390 # Number of priority levels\r
4391 # This option controls the number of priority levels that are\r
4392 # available. For some types of scheduler including the bitmap\r
4393 # scheduler this may impose an upper bound on the number of\r
4394 # threads in the system. For other schedulers such as the\r
4395 # mlqueue scheduler the number of threads is independent from\r
4396 # the number of priority levels. Note that the lowest priority\r
4397 # level is normally used only by the idle thread, although\r
4398 # application threads can run at this priority if necessary.\r
4400 cdl_component CYGNUM_KERNEL_SCHED_PRIORITIES {\r
4401     # Flavor: data\r
4402     # No user value, uncomment the following line to provide one.\r
4403     # user_value 32\r
4404     # value_source default\r
4405     # Default value: 32\r
4406     # Legal values: 1 to 32\r
4408     # The following properties are affected by this value\r
4409     # option CYGIMP_IDLE_THREAD_YIELD\r
4410     #     ActiveIf: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1)\r
4411     # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY\r
4412     #     LegalValues: 0 to  CYGNUM_KERNEL_SCHED_PRIORITIES - 1 \r
4413 };\r
4415 # >\r
4416 # Bitmap size\r
4417 # This option automatically defines the size of bitmap\r
4418 # used to track occupied priority levels.\r
4420 cdl_option CYGNUM_KERNEL_SCHED_BITMAP_SIZE {\r
4421     # Calculated value: "CYGNUM_KERNEL_SCHED_PRIORITIES"\r
4422     # Flavor: data\r
4423     # Current_value: CYGNUM_KERNEL_SCHED_PRIORITIES\r
4424 };\r
4426 # Dequeue highest priority threads first\r
4427 # With this option enabled, threads queued in a thread queue\r
4428 # will be dequeued in priority order, rather than first in,\r
4429 # first out (FIFO). Threads of equal priority are dequeued\r
4430 # oldest first. The only exception is the scheduler run \r
4431 # queues where order is less important as each is already\r
4432 # sorted by priority. Note that this makes the thread queueing\r
4433 # less deterministic.\r
4435 cdl_option CYGIMP_KERNEL_SCHED_SORTED_QUEUES {\r
4436     # Flavor: bool\r
4437     # No user value, uncomment the following line to provide one.\r
4438     # user_value 0\r
4439     # value_source default\r
4440     # Default value: 0\r
4441 };\r
4443 # <\r
4444 # Scheduler timeslicing\r
4445 # Some schedulers including the mlqueue scheduler support\r
4446 # timeslicing. This means that the kernel will check regularly\r
4447 # whether or not there is another runnable thread with the\r
4448 # same priority, and if there is such a thread there will be\r
4449 # an automatic context switch. Not all applications require\r
4450 # timeslicing, for example because every thread performs a\r
4451 # blocking operation regularly. For these applications it is\r
4452 # possible to disable timeslicing, which reduces the overheads\r
4453 # associated with timer interrupts.\r
4455 cdl_component CYGSEM_KERNEL_SCHED_TIMESLICE {\r
4456     # Flavor: bool\r
4457     # No user value, uncomment the following line to provide one.\r
4458     # user_value 1\r
4459     # value_source default\r
4460     # Default value: 1\r
4461     # Requires: !CYGSEM_KERNEL_SCHED_BITMAP\r
4462     #     CYGSEM_KERNEL_SCHED_BITMAP == 0\r
4463     #   --> 1\r
4464     # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4465     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
4466     #   --> 1\r
4467 };\r
4469 # >\r
4470 # Number of clock ticks between timeslices\r
4471 # Assuming timeslicing is enabled, how frequently should it\r
4472 # take place? The value of this option corresponds to the\r
4473 # number of clock ticks that should occur before a timeslice\r
4474 # takes place, so increasing the value reduces the frequency\r
4475 # of timeslices.\r
4477 cdl_option CYGNUM_KERNEL_SCHED_TIMESLICE_TICKS {\r
4478     # Flavor: data\r
4479     # No user value, uncomment the following line to provide one.\r
4480     # user_value 5\r
4481     # value_source default\r
4482     # Default value: 5\r
4483     # Legal values: 1 to 65535\r
4484 };\r
4486 # Support runtime enable of timeslice per-thread\r
4487 # This option makes timslicing a per-thread runtime\r
4488 # option. When enabled, threads may have timeslicing\r
4489 # turned on or off dynamically. This is generally used\r
4490 # by higher level APIs (such as POSIX) to implement\r
4491 # differing scheduling policies.\r
4493 cdl_option CYGSEM_KERNEL_SCHED_TIMESLICE_ENABLE {\r
4494     # Flavor: bool\r
4495     # No user value, uncomment the following line to provide one.\r
4496     # user_value 0\r
4497     # value_source default\r
4498     # Default value: false\r
4499     #     false (unknown) == 0\r
4500     #   --> 0\r
4501 };\r
4503 # <\r
4504 # Enable ASR support\r
4505 # This component controls support for Asynchronous Service\r
4506 # Routines (ASRs). This is a function that may be called\r
4507 # from the scheduler when it has just exited the scheduler\r
4508 # lock. This is primarily for use by API compatibility layers.\r
4510 cdl_component CYGSEM_KERNEL_SCHED_ASR_SUPPORT {\r
4511     # Flavor: bool\r
4512     # No user value, uncomment the following line to provide one.\r
4513     # user_value 0\r
4514     # value_source default\r
4515     # Default value: false\r
4516     #     false (unknown) == 0\r
4517     #   --> 0\r
4518 };\r
4520 # >\r
4521 # Make ASR function global\r
4522 # This option controls whether the ASR function is shared by\r
4523 # all threads, or whether each thread may have its own ASR\r
4524 # function.\r
4526 cdl_option CYGSEM_KERNEL_SCHED_ASR_GLOBAL {\r
4527     # This option is not active\r
4528     # The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled\r
4530     # Flavor: bool\r
4531     # No user value, uncomment the following line to provide one.\r
4532     # user_value 0\r
4533     # value_source default\r
4534     # Default value: true\r
4535     #     true (unknown) == 0\r
4536     #   --> 0\r
4537 };\r
4539 # Make ASR data global\r
4540 # This option controls whether the ASR data is shared by\r
4541 # all threads, or whether each thread may have its own ASR\r
4542 # data. This is independent of the previous option because\r
4543 # it may be useful to pass per-thread data to a shared ASR\r
4544 # function.\r
4546 cdl_option CYGSEM_KERNEL_SCHED_ASR_DATA_GLOBAL {\r
4547     # This option is not active\r
4548     # The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled\r
4550     # Flavor: bool\r
4551     # No user value, uncomment the following line to provide one.\r
4552     # user_value 0\r
4553     # value_source default\r
4554     # Default value: true\r
4555     #     true (unknown) == 0\r
4556     #   --> 0\r
4557 };\r
4559 # <\r
4560 # <\r
4561 # SMP support\r
4563 cdl_component CYGPKG_KERNEL_SMP_SUPPORT {\r
4564     # Flavor: bool\r
4565     # No user value, uncomment the following line to provide one.\r
4566     # user_value 0\r
4567     # value_source default\r
4568     # Default value: 0\r
4569     # Requires: CYGPKG_HAL_SMP_SUPPORT\r
4570     #     CYGPKG_HAL_SMP_SUPPORT (unknown) == 0\r
4571     #   --> 0\r
4573     # The following properties are affected by this value\r
4574     # option CYGSEM_KERNEL_SCHED_BITMAP\r
4575     #     Requires: !CYGPKG_KERNEL_SMP_SUPPORT\r
4576     # option CYGPKG_KERNEL_TESTS\r
4577     #     Calculated:  \r
4578     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
4579     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
4580     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
4581     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
4582     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
4583     #                 \r
4584 };\r
4586 # Counters and clocks\r
4587 # doc: ref/kernel-counters.html\r
4588 # The counter objects provided by the kernel provide an\r
4589 # abstraction of the clock facility that is generally provided.\r
4590 # Application code can associate alarms with counters, where an\r
4591 # alarm is identified by the number of ticks until it triggers,\r
4592 # the action to be taken on triggering, and whether or not the\r
4593 # alarm should be repeated.\r
4595 cdl_component CYGPKG_KERNEL_COUNTERS {\r
4596     # There is no associated value.\r
4597 };\r
4599 # >\r
4600 # Provide real-time clock\r
4601 # On all current target systems the kernel can provide a\r
4602 # real-time clock. This clock serves two purposes. First it is\r
4603 # necessary to support clock and alarm related functions.\r
4604 # Second it is needed to implement timeslicing in some of the\r
4605 # schedulers including the mlqueue scheduler. If the\r
4606 # application does not require any of these facilities then it\r
4607 # is possible to disable the real time clock support\r
4608 # completely.\r
4610 cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK {\r
4611     # Flavor: bool\r
4612     # No user value, uncomment the following line to provide one.\r
4613     # user_value 1\r
4614     # value_source default\r
4615     # Default value: 1\r
4616     # Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS\r
4617     #     CYGIMP_KERNEL_INTERRUPTS_DSRS == 1\r
4618     #   --> 1\r
4620     # The following properties are affected by this value\r
4621     # component CYGSEM_KERNEL_SCHED_TIMESLICE\r
4622     #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4623     # option CYGNUM_KERNEL_COUNTERS_CLOCK_ISR_PRIORITY\r
4624     #     ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4625     # option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY\r
4626     #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4627     # option CYGFUN_KERNEL_THREADS_TIMER\r
4628     #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4629     # option CYGDBG_KERNEL_INSTRUMENT_CLOCK\r
4630     #     ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4631     # option CYGDBG_KERNEL_INSTRUMENT_ALARM\r
4632     #     ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4633     # option CYGDBG_KERNEL_INSTRUMENT_SMP\r
4634     #     ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4635     # component CYGPKG_HAL_TESTS\r
4636     #     Calculated:   "tests/context tests/basic"\r
4637     #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")\r
4638     #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")\r
4639     #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "") \r
4640     # option CYGSEM_LIBC_TIME_CLOCK_WORKING\r
4641     #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4642 };\r
4644 # Interrupt priority for the real-time clock\r
4645 # The implementation of the kernel's real-time clock typically\r
4646 # involves installing an interrupt handler on a suitable hardware\r
4647 # timer. This option controls the priority level used for that\r
4648 # interrupt. On most platforms the value is not important because \r
4649 # the clock ISR leaves most of the work to be done by the DSR. \r
4650 # However some processors have interrupt controllers with special\r
4651 # requirements for the interrupt priorities, in which case\r
4652 # application developers must be able to manipulate the clock's\r
4653 # priority.\r
4655 cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_ISR_PRIORITY {\r
4656     # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4657     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
4658     #   --> 1\r
4660     # Flavor: data\r
4661     # No user value, uncomment the following line to provide one.\r
4662     # user_value 1\r
4663     # value_source default\r
4664     # Default value:  is_loaded(CYGNUM_HAL_KERNEL_COUNTERS_CLOCK_ISR_DEFAULT_PRIORITY) ?\r
4665     #                                 CYGNUM_HAL_KERNEL_COUNTERS_CLOCK_ISR_DEFAULT_PRIORITY : 1 \r
4666     #     CYGNUM_HAL_KERNEL_COUNTERS_CLOCK_ISR_DEFAULT_PRIORITY (unknown) == 0\r
4667     #     CYGNUM_HAL_KERNEL_COUNTERS_CLOCK_ISR_DEFAULT_PRIORITY (unknown) == 0\r
4668     #   --> 1\r
4669 };\r
4672 cdl_interface CYGINT_KERNEL_COUNTERS {\r
4673     # Implemented by CYGIMP_KERNEL_COUNTERS_SINGLE_LIST, active, enabled\r
4674     # Implemented by CYGIMP_KERNEL_COUNTERS_MULTI_LIST, active, disabled\r
4675     # This value cannot be modified here.\r
4676     # Flavor: data\r
4677     # Current_value: 1\r
4678     # Requires: 1 == CYGINT_KERNEL_COUNTERS\r
4679     #     CYGINT_KERNEL_COUNTERS == 1\r
4680     #   --> 1\r
4682     # The following properties are affected by this value\r
4683     # interface CYGINT_KERNEL_COUNTERS\r
4684     #     Requires: 1 == CYGINT_KERNEL_COUNTERS\r
4685 };\r
4687 # Implement counters using a single list\r
4688 # There are two different implementations of the counter\r
4689 # objects. The first implementation stores all alarms in a\r
4690 # single linked list. The alternative implementation uses a\r
4691 # table of linked lists. A single list is more efficient in\r
4692 # terms of memory usage and is generally adequate when the\r
4693 # application only makes use of a small number of alarms.\r
4695 cdl_option CYGIMP_KERNEL_COUNTERS_SINGLE_LIST {\r
4696     # Flavor: bool\r
4697     # No user value, uncomment the following line to provide one.\r
4698     # user_value 1\r
4699     # value_source default\r
4700     # Default value: 1\r
4701 };\r
4703 # Implement counters using a table of lists\r
4704 # There are two different implementations of the counter\r
4705 # objects. The first implementation stores all alarms in a\r
4706 # single linked list. The alternative implementation uses a\r
4707 # table of linked lists, with the size of the table being a\r
4708 # separate configurable option. For more complicated\r
4709 # operations it is better to have a table of lists since this\r
4710 # reduces the amount of computation whenever the timer goes\r
4711 # off. Assuming a table size of 8 (the default value) on\r
4712 # average the timer code will only need to check 1/8 of the\r
4713 # pending alarms instead of all of them.\r
4715 cdl_component CYGIMP_KERNEL_COUNTERS_MULTI_LIST {\r
4716     # Flavor: bool\r
4717     # No user value, uncomment the following line to provide one.\r
4718     # user_value 0\r
4719     # value_source default\r
4720     # Default value: 0\r
4721 };\r
4723 # >\r
4724 # Size of counter list table\r
4725 # If counters are implemented using an array of linked lists\r
4726 # then this option controls the size of the array. A larger\r
4727 # size reduces the amount of computation that needs to take\r
4728 # place whenever the timer goes off, but requires extra\r
4729 # memory.\r
4731 cdl_option CYGNUM_KERNEL_COUNTERS_MULTI_LIST_SIZE {\r
4732     # This option is not active\r
4733     # The parent CYGIMP_KERNEL_COUNTERS_MULTI_LIST is disabled\r
4735     # Flavor: data\r
4736     # No user value, uncomment the following line to provide one.\r
4737     # user_value 8\r
4738     # value_source default\r
4739     # Default value: 8\r
4740     # Legal values: 1 to 1024\r
4741 };\r
4743 # <\r
4744 # Sort the counter list\r
4745 # Sorting the counter lists reduces the amount of work that\r
4746 # has to be done when a counter tick is processed, since the\r
4747 # next alarm to expire is always at the front of the list.\r
4748 # However, it makes adding an alarm to the list more expensive\r
4749 # since a search must be done for the correct place to put it.\r
4750 # Many alarms are used to implement timeouts, which seldom trigger,\r
4751 # so it is worthwhile optimizing this case. For this reason\r
4752 # sorted list are disabled by default.\r
4754 cdl_option CYGIMP_KERNEL_COUNTERS_SORT_LIST {\r
4755     # Flavor: bool\r
4756     # No user value, uncomment the following line to provide one.\r
4757     # user_value 0\r
4758     # value_source default\r
4759     # Default value: 0\r
4760 };\r
4762 # Measure real-time [clock] interrupt latency\r
4763 # Measure the interrupt latency as seen by the real-time clock\r
4764 # timer interrupt.  This requires hardware support, defined by\r
4765 # the HAL_CLOCK_LATENCY() macro.\r
4767 cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY {\r
4768     # Flavor: bool\r
4769     # No user value, uncomment the following line to provide one.\r
4770     # user_value 0\r
4771     # value_source default\r
4772     # Default value: 0\r
4773     # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4774     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
4775     #   --> 1\r
4777     # The following properties are affected by this value\r
4778     # option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY\r
4779     #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY\r
4780     # option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY\r
4781     #     DefaultValue: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY\r
4782 };\r
4784 # Measure real-time [clock] DSR latency\r
4785 # Measure the DSR latency as seen by the real-time clock\r
4786 # timer interrupt.  This requires hardware support, defined by\r
4787 # the HAL_CLOCK_LATENCY() macro.\r
4789 cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY {\r
4790     # Flavor: bool\r
4791     # No user value, uncomment the following line to provide one.\r
4792     # user_value 0\r
4793     # value_source default\r
4794     # Default value: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY\r
4795     #     CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0\r
4796     #   --> 0\r
4797     # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY\r
4798     #     CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0\r
4799     #   --> 0\r
4800 };\r
4802 # RTC resolution\r
4803 # This option automatically defines the tuple which is used to\r
4804 # initialize the RTC resolution, consisting of a numerator and\r
4805 # denominator. The values of the numerator and denominator are\r
4806 # defined by the HAL.\r
4808 cdl_option CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION {\r
4809     # Calculated value: "{CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR}"\r
4810     # Flavor: data\r
4811     # Current_value: {CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR}\r
4812 };\r
4814 # RTC period\r
4815 # This option defines the RTC period to be used in\r
4816 # setting the system clock hardware. It is essentially\r
4817 # an alias for CYGNUM_HAL_RTC_PERIOD, which is defined\r
4818 # in the HAL.\r
4820 cdl_option CYGNUM_KERNEL_COUNTERS_RTC_PERIOD {\r
4821     # Calculated value: "CYGNUM_HAL_RTC_PERIOD"\r
4822     # Flavor: data\r
4823     # Current_value: CYGNUM_HAL_RTC_PERIOD\r
4824 };\r
4826 # <\r
4827 # Thread-related options\r
4828 # There are a number of configuration options related to the\r
4829 # implementation of threads, for example whether or not the\r
4830 # eCos kernel supports per-thread data.\r
4832 cdl_component CYGPKG_KERNEL_THREADS {\r
4833     # There is no associated value.\r
4835     # The following properties are affected by this value\r
4836     # option CYGDBG_KERNEL_INSTRUMENT_THREAD\r
4837     #     ActiveIf: CYGPKG_KERNEL_THREADS\r
4838 };\r
4840 # >\r
4841 # Allow per-thread timers\r
4842 # This option controls whether or not the kernel should support\r
4843 # per-thread clock and alarm related functions. Also some of\r
4844 # the synchronization primitives such as semaphore and\r
4845 # condition variable timed wait operations require per-thread\r
4846 # timer support. If none of these facilities are required then\r
4847 # the option can be disabled.\r
4849 cdl_option CYGFUN_KERNEL_THREADS_TIMER {\r
4850     # Flavor: bool\r
4851     # No user value, uncomment the following line to provide one.\r
4852     # user_value 1\r
4853     # value_source default\r
4854     # Default value: 1\r
4855     # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
4856     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
4857     #   --> 1\r
4859     # The following properties are affected by this value\r
4860     # option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT\r
4861     #     Requires: CYGFUN_KERNEL_THREADS_TIMER\r
4862     # option CYGSEM_LIBC_TIME_CLOCK_WORKING\r
4863     #     Requires: CYGFUN_KERNEL_THREADS_TIMER\r
4864 };\r
4866 # Support optional name for each thread\r
4867 # Threads may optionally be supplied with a name string that is\r
4868 # used to identify them during debugging. This name is only\r
4869 # present if `this option is defined. Disabling it reduces both\r
4870 # code and data size.\r
4872 cdl_option CYGVAR_KERNEL_THREADS_NAME {\r
4873     # Flavor: bool\r
4874     # No user value, uncomment the following line to provide one.\r
4875     # user_value 1\r
4876     # value_source default\r
4877     # Default value: 1\r
4878 };\r
4880 # Keep track of all threads using a linked list\r
4881 # Threads may optionally be placed on a housekeeping list so\r
4882 # that all threads may be located easily. This is useful mainly\r
4883 # in conjunction with source-level debugging.\r
4885 cdl_option CYGVAR_KERNEL_THREADS_LIST {\r
4886     # Flavor: bool\r
4887     # No user value, uncomment the following line to provide one.\r
4888     # user_value 1\r
4889     # value_source default\r
4890     # Default value: 1\r
4892     # The following properties are affected by this value\r
4893     # option CYGFUN_KERNEL_ALL_THREADS_STACK_CHECKING\r
4894     #     Requires: CYGVAR_KERNEL_THREADS_LIST\r
4895     # option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT\r
4896     #     Requires: CYGVAR_KERNEL_THREADS_LIST\r
4897 };\r
4899 # Keep track of the base of each thread's stack\r
4900 # This option makes the kernel keep track of the lower limit on\r
4901 # each thread's stack. It allows the kernel to adjust the lower\r
4902 # limit, thus making space for per-thread data. Note that it\r
4903 # does not imply any form of run-time stack overflow checking.\r
4905 cdl_option CYGFUN_KERNEL_THREADS_STACK_LIMIT {\r
4906     # Flavor: bool\r
4907     # No user value, uncomment the following line to provide one.\r
4908     # user_value 1\r
4909     # value_source default\r
4910     # Default value: 1\r
4912     # The following properties are affected by this value\r
4913     # component CYGVAR_KERNEL_THREADS_DATA\r
4914     #     Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT\r
4915 };\r
4917 # Check thread stacks for overflows\r
4918 # This option enables a variety of checks for stack overflow\r
4919 # including signatures at the top and base of thread stacks,\r
4920 # which are asserted for correctness whenever a thread switches.\r
4922 cdl_component CYGFUN_KERNEL_THREADS_STACK_CHECKING {\r
4923     # This option is not active\r
4924     # ActiveIf constraint: CYGPKG_INFRA_DEBUG\r
4925     #     CYGPKG_INFRA_DEBUG == 0\r
4926     #   --> 0\r
4927     # ActiveIf constraint: CYGDBG_USE_ASSERTS\r
4928     #     CYGDBG_USE_ASSERTS == 0\r
4929     #   --> 0\r
4931     # Flavor: bool\r
4932     # No user value, uncomment the following line to provide one.\r
4933     # user_value 1\r
4934     # value_source default\r
4935     # Default value: 1\r
4936 };\r
4938 # >\r
4939 # Check all threads whenever possible\r
4940 # This option enables more active checking of all threads for\r
4941 # wrongdoing.  In theory, checking threads other than the old and new\r
4942 # executing threads in a thread-switch is pointless, because no other\r
4943 # thread has run, so no other stack can be exceeded.  But errors such\r
4944 # as memory scribbling, dangling pointers, overlapping use of store\r
4945 # or errors accessing objects adjacent to a stack which can be very\r
4946 # hard to find can be detected this way, saving debug time.\r
4948 cdl_option CYGFUN_KERNEL_ALL_THREADS_STACK_CHECKING {\r
4949     # This option is not active\r
4950     # The parent CYGFUN_KERNEL_THREADS_STACK_CHECKING is not active\r
4952     # Flavor: bool\r
4953     # No user value, uncomment the following line to provide one.\r
4954     # user_value 0\r
4955     # value_source default\r
4956     # Default value: 0\r
4957     # Requires: CYGVAR_KERNEL_THREADS_LIST\r
4958     #     CYGVAR_KERNEL_THREADS_LIST == 1\r
4959     #   --> 1\r
4960 };\r
4962 # Signature size in bytes, at stack top and bottom\r
4963 # This is the size of the area reserved for a signature at the top\r
4964 # and bottom of all stacks.  It also provides a buffer zone for\r
4965 # detecting overflow before external objects are corrupted, hence the\r
4966 # ability to vary it here.  But if you are short of stack, increasing\r
4967 # this value will make the overflow more, not less likely, of course.\r
4969 cdl_option CYGNUM_KERNEL_THREADS_STACK_CHECK_DATA_SIZE {\r
4970     # This option is not active\r
4971     # The parent CYGFUN_KERNEL_THREADS_STACK_CHECKING is not active\r
4973     # Flavor: data\r
4974     # No user value, uncomment the following line to provide one.\r
4975     # user_value 32\r
4976     # value_source default\r
4977     # Default value: 32\r
4978     # Legal values: 8 to 512\r
4979 };\r
4981 # <\r
4982 # Measure stack usage\r
4983 # This option allows measurement of each thread's stack by initializing\r
4984 # it to a predefined value at thread creation time. Later use of the\r
4985 # cyg_thread_measure_stack_usage() function allows the maximum stack\r
4986 # usage of the thread so far to be obtained. Note that this is not\r
4987 # necessarily the true maximum stack usage that the thread will ever\r
4988 # use since all that has been measured is the stack usage corresponding\r
4989 # to the code path followed this time, and not the code path that may\r
4990 # be followed in future.\r
4992 cdl_component CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT {\r
4993     # Flavor: bool\r
4994     # No user value, uncomment the following line to provide one.\r
4995     # user_value 0\r
4996     # value_source default\r
4997     # Default value:  0 != CYGPKG_INFRA_DEBUG \r
4998     #     CYGPKG_INFRA_DEBUG == 0\r
4999     #   --> 0\r
5000 };\r
5002 # >\r
5003 # Output stack usage on thread exit\r
5004 # This will output the measured stack usage on the diagnostic\r
5005 # output when a thread exits.\r
5007 cdl_option CYGDBG_KERNEL_THREADS_STACK_MEASUREMENT_VERBOSE_EXIT {\r
5008     # This option is not active\r
5009     # The parent CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT is disabled\r
5011     # Flavor: bool\r
5012     # No user value, uncomment the following line to provide one.\r
5013     # user_value 0\r
5014     # value_source default\r
5015     # Default value: 0\r
5016 };\r
5018 # <\r
5019 # Support for per-thread data\r
5020 # doc: ref/kernel-thread-data.html\r
5021 # It is possible for the kernel to support per-thread data, in\r
5022 # other words an area of memory specific to each thread which\r
5023 # can be used to store data for that thread. This per-thread\r
5024 # data can be used by applications or by other packages such as\r
5025 # the ISO C library.\r
5027 cdl_component CYGVAR_KERNEL_THREADS_DATA {\r
5028     # Flavor: bool\r
5029     # No user value, uncomment the following line to provide one.\r
5030     # user_value 1\r
5031     # value_source default\r
5032     # Default value: 1\r
5033     # Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT\r
5034     #     CYGFUN_KERNEL_THREADS_STACK_LIMIT == 1\r
5035     #   --> 1\r
5037     # The following properties are affected by this value\r
5038     # option CYGSEM_LIBC_I18N_PER_THREAD_MB\r
5039     #     Requires: CYGVAR_KERNEL_THREADS_DATA\r
5040     # option CYGSEM_LIBC_I18N_PER_THREAD_MB\r
5041     #     DefaultValue:  CYGVAR_KERNEL_THREADS_DATA != 0 \r
5042     # option CYGSEM_LIBC_PER_THREAD_RAND\r
5043     #     Requires: CYGVAR_KERNEL_THREADS_DATA\r
5044     # option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK\r
5045     #     Requires: CYGVAR_KERNEL_THREADS_DATA\r
5046     # option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK\r
5047     #     DefaultValue: CYGVAR_KERNEL_THREADS_DATA\r
5048     # option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE\r
5049     #     Requires: CYGVAR_KERNEL_THREADS_DATA\r
5050     # option CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS\r
5051     #     Requires: CYGVAR_KERNEL_THREADS_DATA\r
5052     # option CYGSEM_ERROR_PER_THREAD_ERRNO\r
5053     #     Requires: CYGVAR_KERNEL_THREADS_DATA\r
5054 };\r
5056 # >\r
5057 # Number of words of per-thread data\r
5058 # It is possible for the kernel to support per-thread data, in\r
5059 # other words an area of memory specific to each thread which\r
5060 # can be used to store data for that thread. This per-thread\r
5061 # data can be used by applications or by other packages such as\r
5062 # the ISO C library. This configuration option controls the\r
5063 # number of words of per-thread data that the kernel will\r
5064 # allow. In the current implementation a bitmask is used to identify\r
5065 # used per-thread data slots and so the maximum legal value must\r
5066 # remain 32.\r
5068 cdl_option CYGNUM_KERNEL_THREADS_DATA_MAX {\r
5069     # Flavor: data\r
5070     # No user value, uncomment the following line to provide one.\r
5071     # user_value 6\r
5072     # value_source default\r
5073     # Default value: 6\r
5074     # Legal values: 4 to 32\r
5075 };\r
5077 # Bitmap of preallocated slots of thread data\r
5078 # Per thread data options. Per thread data support is based loosely\r
5079 # on that defined by POSIX. Each thread has an array of slots, up to\r
5080 # CYGNUM_KERNEL_THREADS_DATA_MAX, that may contain data. Some of the\r
5081 # slots have been preallocated to specific packages. Others may be\r
5082 # allocated dynamically.\r
5084 cdl_component CYGNUM_KERNEL_THREADS_DATA_ALL {\r
5085     # Calculated value: 15\r
5086     # Flavor: data\r
5087     # Current_value: 15\r
5088 };\r
5090 # >\r
5091 # Slot 0 preallocated for the kernel\r
5092 # This option defines the index of a per-thread data\r
5093 # slot which is reserved by\r
5094 # the eCos kernel\r
5095 # for private use.\r
5097 cdl_option CYGNUM_KERNEL_THREADS_DATA_KERNEL {\r
5098     # Calculated value: 0\r
5099     # Flavor: data\r
5100     # Current_value: 0\r
5101 };\r
5103 # Slot 1 preallocated for uITRON\r
5104 # This option defines the index of a per-thread data\r
5105 # slot which is reserved by\r
5106 # the uITRON compatibility layer\r
5107 # for private use.\r
5109 cdl_option CYGNUM_KERNEL_THREADS_DATA_ITRON {\r
5110     # Calculated value: 1\r
5111     # Flavor: data\r
5112     # Current_value: 1\r
5113 };\r
5115 # Slot 2 preallocated for errno\r
5116 # This option defines the index of a per-thread data\r
5117 # slot which is reserved for use by an errno variable.\r
5119 cdl_option CYGNUM_KERNEL_THREADS_DATA_ERRNO {\r
5120     # Calculated value: 2\r
5121     # Flavor: data\r
5122     # Current_value: 2\r
5123 };\r
5125 # Slot 3 preallocated for POSIX\r
5126 # This option defines the index of a per-thread data\r
5127 # slot which is reserved by\r
5128 # POSIX\r
5129 # for private use.\r
5131 cdl_option CYGNUM_KERNEL_THREADS_DATA_POSIX {\r
5132     # Calculated value: 3\r
5133     # Flavor: data\r
5134     # Current_value: 3\r
5135 };\r
5137 # <\r
5138 # <\r
5139 # Thread destructors\r
5140 # doc: ref/kernel-thread-destructors.html\r
5141 # This option enables support for registered destructor functions to\r
5142 # be called on thread exit.\r
5144 cdl_component CYGPKG_KERNEL_THREADS_DESTRUCTORS {\r
5145     # Flavor: bool\r
5146     # No user value, uncomment the following line to provide one.\r
5147     # user_value 0\r
5148     # value_source default\r
5149     # Default value: 0\r
5150 };\r
5152 # >\r
5153 # Number of possible destructors\r
5154 # This option gives the number of possible destructors allowed.\r
5155 # Increasing this will increase the size of every\r
5156 # thread control structure if per-thread destructors are\r
5157 # enabled.\r
5159 cdl_option CYGNUM_KERNEL_THREADS_DESTRUCTORS {\r
5160     # This option is not active\r
5161     # The parent CYGPKG_KERNEL_THREADS_DESTRUCTORS is disabled\r
5163     # Flavor: data\r
5164     # No user value, uncomment the following line to provide one.\r
5165     # user_value 8\r
5166     # value_source default\r
5167     # Default value: 8\r
5168     # Legal values: 1 to 65535\r
5169 };\r
5171 # Per-thread destructors\r
5172 # Enabling this option makes the thread destructors a per-thread\r
5173 # property, with each thread having its own list of destructors.\r
5174 # Disabling this option makes the thread destructor list\r
5175 # global so all threads have the same destructors.\r
5177 cdl_option CYGSEM_KERNEL_THREADS_DESTRUCTORS_PER_THREAD {\r
5178     # This option is not active\r
5179     # The parent CYGPKG_KERNEL_THREADS_DESTRUCTORS is disabled\r
5181     # Flavor: bool\r
5182     # No user value, uncomment the following line to provide one.\r
5183     # user_value 1\r
5184     # value_source default\r
5185     # Default value: 1\r
5186 };\r
5188 # <\r
5189 # Stack size for the idle thread\r
5190 # This configuration option specifies the stack size in bytes\r
5191 # for the idle thread. Unless the HAL is configured to use a\r
5192 # separate interrupt stack this size must be sufficient to meet\r
5193 # the requirements of all interrupt handlers - these\r
5194 # requirements are cumulative if nested interrupted are\r
5195 # enabled. Depending on the target architecture, the stack size\r
5196 # typically has to be a multiple of eight or sixteen bytes.\r
5197 # This will be overridden where it is used if the\r
5198 # architectural HAL requires a minimum stack size\r
5199 # to handle interrupts correctly.\r
5201 cdl_option CYGNUM_KERNEL_THREADS_IDLE_STACK_SIZE {\r
5202     # Flavor: data\r
5203     # No user value, uncomment the following line to provide one.\r
5204     # user_value 2048\r
5205     # value_source default\r
5206     # Default value: 2048\r
5207     # Legal values: 512 to 65536\r
5208 };\r
5210 # Maximal suspend count\r
5211 # This option provides for an assertion that the count value for\r
5212 # counted thread suspends do not exceed set limits.  This is to help\r
5213 # with debugging, to allow a runaway loop, for example, to be\r
5214 # detected more easily.\r
5215 # If the option is not defined, no assert is included.  Whether asserts\r
5216 # are themselves included depends on infrastructure configury in\r
5217 # infra.h\r
5219 cdl_option CYGNUM_KERNEL_MAX_SUSPEND_COUNT_ASSERT {\r
5220     # Flavor: data\r
5221     # No user value, uncomment the following line to provide one.\r
5222     # user_value 500\r
5223     # value_source default\r
5224     # Default value: 500\r
5225 };\r
5227 # Maximal wake count\r
5228 # This option provides for an assertion that the count value for\r
5229 # counted thread wakeups do not exceed set limits.  This is to\r
5230 # help with debugging, to allow a runaaway loop, for example, to\r
5231 # be detected more easily.\r
5232 # If the option is not defined, no assert is included.  Whether asserts\r
5233 # are themselves included depends on infrastructure configury in\r
5234 # infra.h\r
5236 cdl_option CYGNUM_KERNEL_MAX_COUNTED_WAKE_COUNT_ASSERT {\r
5237     # Flavor: data\r
5238     # No user value, uncomment the following line to provide one.\r
5239     # user_value 500\r
5240     # value_source default\r
5241     # Default value: 500\r
5242 };\r
5244 # Idle thread must always yield\r
5245 # If the scheduler configuration only has a single priority\r
5246 # level, then the idle thread must yield each time around its loop.\r
5248 cdl_option CYGIMP_IDLE_THREAD_YIELD {\r
5249     # This option is not active\r
5250     # ActiveIf constraint: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1)\r
5251     #     CYGNUM_KERNEL_SCHED_PRIORITIES == 32\r
5252     #   --> 0\r
5254     # Calculated value: 1\r
5255     # Flavor: bool\r
5256     # Current value: 1\r
5257 };\r
5259 # <\r
5260 # Synchronization primitives\r
5261 # The eCos kernel supports a number of different\r
5262 # synchronization primitives such as mutexes, semaphores,\r
5263 # condition variables, and message boxes. There are\r
5264 # configuration options to control the exact behaviour of some\r
5265 # of these synchronization primitives.\r
5267 cdl_component CYGPKG_KERNEL_SYNCH {\r
5268     # There is no associated value.\r
5270     # The following properties are affected by this value\r
5271     # option CYGDBG_KERNEL_INSTRUMENT_MUTEX\r
5272     #     ActiveIf: CYGPKG_KERNEL_SYNCH\r
5273     # option CYGDBG_KERNEL_INSTRUMENT_CONDVAR\r
5274     #     ActiveIf: CYGPKG_KERNEL_SYNCH\r
5275     # option CYGDBG_KERNEL_INSTRUMENT_BINSEM\r
5276     #     ActiveIf: CYGPKG_KERNEL_SYNCH\r
5277     # option CYGDBG_KERNEL_INSTRUMENT_CNTSEM\r
5278     #     ActiveIf: CYGPKG_KERNEL_SYNCH\r
5279     # option CYGDBG_KERNEL_INSTRUMENT_MBOXT\r
5280     #     ActiveIf: CYGPKG_KERNEL_SYNCH\r
5281 };\r
5283 # >\r
5284 # Priority inversion protection protocols\r
5285 # doc: ref/kernel-mutexes.html\r
5286 # This component controls the protocols used to protect mutexes against\r
5287 # priority inversion. If this option is enabled it defines which\r
5288 # algorithm is used to implement this protection. At present only\r
5289 # one such algorithm is defined: "SIMPLE". The implementation\r
5290 # will only work in the mlqueue scheduler, and it does not handle the\r
5291 # rare case of nested mutexes completely correctly. However it is\r
5292 # both fast and deterministic.\r
5294 cdl_component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL {\r
5295     # ActiveIf constraint:  CYGSEM_KERNEL_SCHED_MLQUEUE \r
5296     #     CYGSEM_KERNEL_SCHED_MLQUEUE == 1\r
5297     #   --> 1\r
5299     # Flavor: booldata\r
5300     # No user value, uncomment the following line to provide one.\r
5301     # user_value 1 SIMPLE\r
5302     # value_source default\r
5303     # Default value: 1 SIMPLE\r
5304     # Legal values:  "SIMPLE" \r
5305     # Requires:  CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 \r
5306     #     CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0\r
5307     #   --> 1\r
5308 };\r
5310 # >\r
5311 # Enable priority inheritance protocol\r
5312 # This option enables priority inheritance protocol. This protocol\r
5313 # causes the owner of a mutex to be executed at the highest priority\r
5314 # of the threads waiting for access to the mutex.\r
5316 cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT {\r
5317     # Flavor: bool\r
5318     # No user value, uncomment the following line to provide one.\r
5319     # user_value 1\r
5320     # value_source default\r
5321     # Default value: 1\r
5323     # The following properties are affected by this value\r
5324     # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT\r
5325     #     DefaultValue:  CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ?\r
5326     #                             "INHERIT" :\r
5327     #                             CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ?\r
5328     #                             "CEILING" : "NONE" \r
5329 };\r
5331 # Enable priority ceiling protocol\r
5332 # This option enables priority ceiling protocol. This protocol\r
5333 # causes the owner of a mutex to be executed at a  priority\r
5334 # associated with the mutex.\r
5336 cdl_component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING {\r
5337     # Flavor: bool\r
5338     # No user value, uncomment the following line to provide one.\r
5339     # user_value 1\r
5340     # value_source default\r
5341     # Default value: 1\r
5343     # The following properties are affected by this value\r
5344     # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY\r
5345     #     ActiveIf: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING\r
5346     # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT\r
5347     #     DefaultValue:  CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ?\r
5348     #                             "INHERIT" :\r
5349     #                             CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ?\r
5350     #                             "CEILING" : "NONE" \r
5351 };\r
5353 # >\r
5354 # Default priority ceiling\r
5355 # This option defines the default priority ceiling to be\r
5356 # used if the chosen default priority inversion protocol is\r
5357 # priority ceoptioniling protocol. The default value for this is zero,\r
5358 # making all such mutexes boost threads to the maximum priority.\r
5360 cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY {\r
5361     # ActiveIf constraint: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING\r
5362     #     CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING == 1\r
5363     #   --> 1\r
5365     # Flavor: data\r
5366     # No user value, uncomment the following line to provide one.\r
5367     # user_value 0\r
5368     # value_source default\r
5369     # Default value: 0\r
5370     # Legal values: 0 to  CYGNUM_KERNEL_SCHED_PRIORITIES - 1 \r
5371     #     CYGNUM_KERNEL_SCHED_PRIORITIES == 32\r
5372 };\r
5374 # <\r
5375 # No priority inversion protocol\r
5376 # This option enables the ability to have no priority inversion protocol.\r
5377 # It is equivalent to disabling the priority inversion protocol at\r
5378 # the top level, but is necessary for the runtime and default\r
5379 # selection options.\r
5381 cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE {\r
5382     # Flavor: bool\r
5383     # No user value, uncomment the following line to provide one.\r
5384     # user_value 1\r
5385     # value_source default\r
5386     # Default value: 1\r
5387 };\r
5389 # Default priority inversion protocol\r
5390 # This option defines the default inversion protocol used for mutexes that\r
5391 # are created without an explicit protocol being specified. The protocol\r
5392 # chosen by default is to use priority inheritance if it is present otherwise\r
5393 # priority ceiling, or none if neither is present.\r
5395 cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT {\r
5396     # ActiveIf constraint:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 \r
5397     #     CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT == 3\r
5398     #   --> 1\r
5400     # Flavor: data\r
5401     # No user value, uncomment the following line to provide one.\r
5402     # user_value INHERIT\r
5403     # value_source default\r
5404     # Default value:  CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ?\r
5405     #                             "INHERIT" :\r
5406     #                             CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ?\r
5407     #                             "CEILING" : "NONE" \r
5408     #     CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT == 1\r
5409     #     CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING == 1\r
5410     #   --> INHERIT\r
5411     # Legal values:  "INHERIT" "CEILING" "NONE" \r
5412 };\r
5414 # Specify mutex priority inversion protocol at runtime\r
5415 # This option controls whether the priority inversion protocol used by\r
5416 # a mutex can be specified when that mutex is created.\r
5418 cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC {\r
5419     # ActiveIf constraint:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 \r
5420     #     CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT == 3\r
5421     #   --> 1\r
5423     # Flavor: bool\r
5424     # No user value, uncomment the following line to provide one.\r
5425     # user_value 1\r
5426     # value_source default\r
5427     # Default value: 1\r
5428 };\r
5430 # Number of protocols selected\r
5432 cdl_interface CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT {\r
5433     # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT, active, enabled\r
5434     # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING, active, enabled\r
5435     # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE, active, enabled\r
5436     # This value cannot be modified here.\r
5437     # Flavor: data\r
5438     # Current_value: 3\r
5440     # The following properties are affected by this value\r
5441     # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT\r
5442     #     ActiveIf:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 \r
5443     # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC\r
5444     #     ActiveIf:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 \r
5445 };\r
5447 # <\r
5448 # Use mboxt_plain mbox implementation\r
5449 # Use the plain mboxt implementation instead of the mboxt2\r
5450 # implementation. The mboxt2 version is designed to provide\r
5451 # semantics compatible with UITRON, the plain implementation\r
5452 # is adquate in most other situations.\r
5454 cdl_option CYGIMP_MBOX_USE_MBOXT_PLAIN {\r
5455     # Flavor: bool\r
5456     # No user value, uncomment the following line to provide one.\r
5457     # user_value 1\r
5458     # value_source default\r
5459     # Default value: 1\r
5460 };\r
5462 # Message box blocking put support\r
5463 # doc: ref/kernel-mail-boxes.html\r
5464 # Message boxes can support three different versions of the\r
5465 # put-message operation. The first is tryput(), which will fail\r
5466 # if the message box is already full. The other two are the\r
5467 # ordinary put() function which will block if the message box\r
5468 # is full, and a timed put() operation which will block for\r
5469 # upto a certain length of time if the message box is currently\r
5470 # full. The blocking versions require extra memory in the\r
5471 # message box data structure and extra code in the other\r
5472 # message box functions, so they can be disabled if the\r
5473 # application does not require them. If this option is enabled\r
5474 # then the system will always provide the blocking put()\r
5475 # function, and it will also provide the timed put() function\r
5476 # if thread timers are enabled.\r
5478 cdl_option CYGMFN_KERNEL_SYNCH_MBOXT_PUT_CAN_WAIT {\r
5479     # Flavor: bool\r
5480     # No user value, uncomment the following line to provide one.\r
5481     # user_value 1\r
5482     # value_source default\r
5483     # Default value: 1\r
5484 };\r
5486 # Message box queue size\r
5487 # doc: ref/kernel-mail-boxes.html\r
5488 # This configuration option controls the number of messages\r
5489 # that can be queued in a message box before a non-blocking\r
5490 # put() operation will fail or a blocking put() operation will\r
5491 # block. The cost in memory is one pointer per message box for\r
5492 # each possible message.\r
5494 cdl_option CYGNUM_KERNEL_SYNCH_MBOX_QUEUE_SIZE {\r
5495     # Flavor: data\r
5496     # No user value, uncomment the following line to provide one.\r
5497     # user_value 10\r
5498     # value_source default\r
5499     # Default value: 10\r
5500     # Legal values: 1 to 65535\r
5501 };\r
5503 # Condition variable timed-wait support\r
5504 # doc: ref/kernel-condition-variables.html\r
5505 # This option enables the condition variable timed wait\r
5506 # facility.\r
5508 cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT {\r
5509     # Flavor: bool\r
5510     # No user value, uncomment the following line to provide one.\r
5511     # user_value 1\r
5512     # value_source default\r
5513     # Default value: 1\r
5514     # Requires: CYGFUN_KERNEL_THREADS_TIMER\r
5515     #     CYGFUN_KERNEL_THREADS_TIMER == 1\r
5516     #   --> 1\r
5517 };\r
5519 # Condition variable explicit mutex wait support\r
5520 # doc: ref/kernel-condition-variables.html\r
5521 # This option enables the condition variable explicit mutex wait\r
5522 # facility. By default condition variables in eCos are created with\r
5523 # a statically associated mutex. This option permits wait (and timed wait\r
5524 # if CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT is enabled) to provide a\r
5525 # different mutex as an argument. This makes no difference to the semantics\r
5526 # the wait operation except that a different mutex will be used during it.\r
5528 cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_WAIT_MUTEX {\r
5529     # Flavor: bool\r
5530     # No user value, uncomment the following line to provide one.\r
5531     # user_value 1\r
5532     # value_source default\r
5533     # Default value: 1\r
5534 };\r
5536 # Avoid inlines in mqueue implementation\r
5537 # With this option disabled, the 'mqueue' message queue implementation\r
5538 # provides most of its implementation via inlines. However this can\r
5539 # adversely affect code size in application that make lots of mqueue\r
5540 # calls from different places, so enabling this option provides\r
5541 # non-inline versions to be used instead.\r
5543 cdl_option CYGIMP_KERNEL_SYNCH_MQUEUE_NOT_INLINE {\r
5544     # Flavor: bool\r
5545     # No user value, uncomment the following line to provide one.\r
5546     # user_value 0\r
5547     # value_source default\r
5548     # Default value: 0\r
5549 };\r
5551 # <\r
5552 # Kernel instrumentation\r
5553 # The current release of the kernel contains an initial version\r
5554 # of instrumentation support. The various parts of the kernel\r
5555 # will invoke instrumentation routines whenever appropriate\r
5556 # events occur, and these will be stored in a circular buffer\r
5557 # for later reference.\r
5559 cdl_component CYGPKG_KERNEL_INSTRUMENT {\r
5560     # Flavor: bool\r
5561     # No user value, uncomment the following line to provide one.\r
5562     # user_value 0\r
5563     # value_source default\r
5564     # Default value: 0\r
5566     # The following properties are affected by this value\r
5567     # option CYGPKG_KERNEL_TESTS\r
5568     #     Calculated:  \r
5569     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
5570     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
5571     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
5572     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
5573     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
5574     #                 \r
5575 };\r
5577 # >\r
5578 # Use buffer provided by the application\r
5579 # In most circumstances the kernel should provide the\r
5580 # instrumentation circular buffer itself. Occasionally\r
5581 # application code may wish to provide the buffer instead,\r
5582 # giving the application code more convenient access to the\r
5583 # buffer. This also makes it possible to put the circular\r
5584 # buffer in special areas of memory, for example a region that\r
5585 # is shared with the host.\r
5587 cdl_option CYGVAR_KERNEL_INSTRUMENT_EXTERNAL_BUFFER {\r
5588     # This option is not active\r
5589     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5591     # Flavor: bool\r
5592     # No user value, uncomment the following line to provide one.\r
5593     # user_value 0\r
5594     # value_source default\r
5595     # Default value: 0\r
5596 };\r
5598 # Size of instrumentation buffer size\r
5599 # If kernel instrumentation is enabled then the instrumentation\r
5600 # data goes into a circular buffer. A larger buffer allows\r
5601 # more data to be stored, but at a significant cost in memory.\r
5602 # The value of this option corresponds to the number of entries\r
5603 # in the table, and typically each entry will require 16 bytes\r
5604 # of memory.\r
5606 cdl_option CYGNUM_KERNEL_INSTRUMENT_BUFFER_SIZE {\r
5607     # This option is not active\r
5608     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5610     # Flavor: data\r
5611     # No user value, uncomment the following line to provide one.\r
5612     # user_value 256\r
5613     # value_source default\r
5614     # Default value: 256\r
5615     # Legal values: 16 to 0x100000\r
5616 };\r
5618 # Wrap instrument buffer\r
5619 # When the instrumentation buffer is full it can either be restarted\r
5620 # from the beginning, overwriting older data, or it can stop at the\r
5621 # end. The former is useful if you want to look at the last entries\r
5622 # made while the latter is useful if you want to look at the first\r
5623 # few.\r
5625 cdl_option CYGDBG_KERNEL_INSTRUMENT_BUFFER_WRAP {\r
5626     # This option is not active\r
5627     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5629     # Flavor: bool\r
5630     # No user value, uncomment the following line to provide one.\r
5631     # user_value 1\r
5632     # value_source default\r
5633     # Default value: 1\r
5634 };\r
5636 # Perform selective instrumentation\r
5637 # The kernel can either collect all instrumentation events, or\r
5638 # it can filter out events at runtime based on a set of flags.\r
5639 # For example it would be possible to decide at runtime that\r
5640 # only scheduler and interrupt instrumentation flags are of\r
5641 # interest and that all other flags should be ignored. This\r
5642 # flag mechanism involves extra code and processor cycle\r
5643 # overhead in the instrumentation code, so it can be disabled\r
5644 # if the application developer is interested in all\r
5645 # instrumentation events.\r
5647 cdl_option CYGDBG_KERNEL_INSTRUMENT_FLAGS {\r
5648     # This option is not active\r
5649     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5651     # Flavor: bool\r
5652     # No user value, uncomment the following line to provide one.\r
5653     # user_value 1\r
5654     # value_source default\r
5655     # Default value: 1\r
5656 };\r
5658 # Instrument the scheduler\r
5659 # It is possible to perform selective instrumentation at\r
5660 # run-time. It is also possible to disable instrumentation\r
5661 # in various kernel components at compile-time, thus\r
5662 # reducing the code size overheads. This option controls\r
5663 # whether or not instrumentation support is compiled into\r
5664 # the scheduling code.\r
5666 cdl_option CYGDBG_KERNEL_INSTRUMENT_SCHED {\r
5667     # This option is not active\r
5668     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5669     # ActiveIf constraint: CYGPKG_KERNEL_SCHED\r
5670     #     CYGPKG_KERNEL_SCHED == 1\r
5671     #   --> 1\r
5673     # Flavor: bool\r
5674     # No user value, uncomment the following line to provide one.\r
5675     # user_value 1\r
5676     # value_source default\r
5677     # Default value: 1\r
5678 };\r
5680 # Instrument thread operations\r
5681 # It is possible to perform selective instrumentation at\r
5682 # run-time. It is also possible to disable instrumentation\r
5683 # in various kernel components at compile-time, thus\r
5684 # reducing the code size overheads. This option controls\r
5685 # whether or not instrumentation support is compiled into\r
5686 # the code that manipulates threads.\r
5688 cdl_option CYGDBG_KERNEL_INSTRUMENT_THREAD {\r
5689     # This option is not active\r
5690     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5691     # ActiveIf constraint: CYGPKG_KERNEL_THREADS\r
5692     #     CYGPKG_KERNEL_THREADS == 1\r
5693     #   --> 1\r
5695     # Flavor: bool\r
5696     # No user value, uncomment the following line to provide one.\r
5697     # user_value 1\r
5698     # value_source default\r
5699     # Default value: 1\r
5700 };\r
5702 # Instrument interrupts\r
5703 # It is possible to perform selective instrumentation at\r
5704 # run-time. It is also possible to disable instrumentation\r
5705 # in various kernel components at compile-time, thus\r
5706 # reducing the code size overheads. This option controls\r
5707 # whether or not instrumentation support is compiled into\r
5708 # the interrupt handling code.\r
5710 cdl_option CYGDBG_KERNEL_INSTRUMENT_INTR {\r
5711     # This option is not active\r
5712     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5713     # ActiveIf constraint: CYGPKG_KERNEL_INTERRUPTS\r
5714     #     CYGPKG_KERNEL_INTERRUPTS == 1\r
5715     #   --> 1\r
5717     # Flavor: bool\r
5718     # No user value, uncomment the following line to provide one.\r
5719     # user_value 1\r
5720     # value_source default\r
5721     # Default value: 1\r
5722 };\r
5724 # Instrument mutex operations\r
5725 # It is possible to perform selective instrumentation at\r
5726 # run-time. It is also possible to disable instrumentation\r
5727 # in various kernel components at compile-time, thus\r
5728 # reducing the code size overheads. This option controls\r
5729 # whether or not instrumentation support is compiled into\r
5730 # the mutex code.\r
5732 cdl_option CYGDBG_KERNEL_INSTRUMENT_MUTEX {\r
5733     # This option is not active\r
5734     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5735     # ActiveIf constraint: CYGPKG_KERNEL_SYNCH\r
5736     #     CYGPKG_KERNEL_SYNCH == 1\r
5737     #   --> 1\r
5739     # Flavor: bool\r
5740     # No user value, uncomment the following line to provide one.\r
5741     # user_value 1\r
5742     # value_source default\r
5743     # Default value: 1\r
5744 };\r
5746 # Instrument condition variable operations\r
5747 # It is possible to perform selective instrumentation at\r
5748 # run-time. It is also possible to disable instrumentation\r
5749 # in various kernel components at compile-time, thus\r
5750 # reducing the code size overheads. This option controls\r
5751 # whether or not instrumentation support is compiled into\r
5752 # the condition variable code.\r
5754 cdl_option CYGDBG_KERNEL_INSTRUMENT_CONDVAR {\r
5755     # This option is not active\r
5756     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5757     # ActiveIf constraint: CYGPKG_KERNEL_SYNCH\r
5758     #     CYGPKG_KERNEL_SYNCH == 1\r
5759     #   --> 1\r
5761     # Flavor: bool\r
5762     # No user value, uncomment the following line to provide one.\r
5763     # user_value 1\r
5764     # value_source default\r
5765     # Default value: 1\r
5766 };\r
5768 # Instrument binary semaphore operations\r
5769 # It is possible to perform selective instrumentation at\r
5770 # run-time. It is also possible to disable instrumentation\r
5771 # in various kernel components at compile-time, thus\r
5772 # reducing the code size overheads. This option controls\r
5773 # whether or not instrumentation support is compiled into\r
5774 # the binary semaphore code.\r
5776 cdl_option CYGDBG_KERNEL_INSTRUMENT_BINSEM {\r
5777     # This option is not active\r
5778     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5779     # ActiveIf constraint: CYGPKG_KERNEL_SYNCH\r
5780     #     CYGPKG_KERNEL_SYNCH == 1\r
5781     #   --> 1\r
5783     # Flavor: bool\r
5784     # No user value, uncomment the following line to provide one.\r
5785     # user_value 1\r
5786     # value_source default\r
5787     # Default value: 1\r
5788 };\r
5790 # Instrument counting semaphore operations\r
5791 # It is possible to perform selective instrumentation at\r
5792 # run-time. It is also possible to disable instrumentation\r
5793 # in various kernel components at compile-time, thus\r
5794 # reducing the code size overheads. This option controls\r
5795 # whether or not instrumentation support is compiled into\r
5796 # the counting semaphore code.\r
5798 cdl_option CYGDBG_KERNEL_INSTRUMENT_CNTSEM {\r
5799     # This option is not active\r
5800     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5801     # ActiveIf constraint: CYGPKG_KERNEL_SYNCH\r
5802     #     CYGPKG_KERNEL_SYNCH == 1\r
5803     #   --> 1\r
5805     # Flavor: bool\r
5806     # No user value, uncomment the following line to provide one.\r
5807     # user_value 1\r
5808     # value_source default\r
5809     # Default value: 1\r
5810 };\r
5812 # Instrument message box operations\r
5813 # It is possible to perform selective instrumentation at\r
5814 # run-time. It is also possible to disable instrumentation\r
5815 # in various kernel components at compile-time, thus\r
5816 # reducing the code size overheads. This option controls\r
5817 # whether or not instrumentation support is compiled into\r
5818 # the message box code.\r
5820 cdl_option CYGDBG_KERNEL_INSTRUMENT_MBOXT {\r
5821     # This option is not active\r
5822     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5823     # ActiveIf constraint: CYGPKG_KERNEL_SYNCH\r
5824     #     CYGPKG_KERNEL_SYNCH == 1\r
5825     #   --> 1\r
5827     # Flavor: bool\r
5828     # No user value, uncomment the following line to provide one.\r
5829     # user_value 1\r
5830     # value_source default\r
5831     # Default value: 1\r
5832 };\r
5834 # Instrument clock operations\r
5835 # It is possible to perform selective instrumentation at\r
5836 # run-time. It is also possible to disable instrumentation\r
5837 # in various kernel components at compile-time, thus\r
5838 # reducing the code size overheads. This option controls\r
5839 # whether or not instrumentation support is compiled into\r
5840 # the real-time clock code.\r
5842 cdl_option CYGDBG_KERNEL_INSTRUMENT_CLOCK {\r
5843     # This option is not active\r
5844     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5845     # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK\r
5846     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
5847     #   --> 1\r
5849     # Flavor: bool\r
5850     # No user value, uncomment the following line to provide one.\r
5851     # user_value 1\r
5852     # value_source default\r
5853     # Default value: 1\r
5854 };\r
5856 # Instrument alarm-related operations\r
5857 # It is possible to perform selective instrumentation at\r
5858 # run-time. It is also possible to disable instrumentation\r
5859 # in various kernel components at compile-time, thus\r
5860 # reducing the code size overheads. This option controls\r
5861 # whether or not instrumentation support is compiled into\r
5862 # the code related to alarm operations.\r
5864 cdl_option CYGDBG_KERNEL_INSTRUMENT_ALARM {\r
5865     # This option is not active\r
5866     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5867     # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK\r
5868     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
5869     #   --> 1\r
5871     # Flavor: bool\r
5872     # No user value, uncomment the following line to provide one.\r
5873     # user_value 1\r
5874     # value_source default\r
5875     # Default value: 1\r
5876 };\r
5878 # Instrument SMP-related operations\r
5879 # It is possible to perform selective instrumentation at\r
5880 # run-time. It is also possible to disable instrumentation\r
5881 # in various kernel components at compile-time, thus\r
5882 # reducing the code size overheads. This option controls\r
5883 # whether or not instrumentation support is compiled into\r
5884 # the code related to SMP operations.\r
5886 cdl_option CYGDBG_KERNEL_INSTRUMENT_SMP {\r
5887     # This option is not active\r
5888     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5889     # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK\r
5890     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
5891     #   --> 1\r
5893     # Flavor: bool\r
5894     # No user value, uncomment the following line to provide one.\r
5895     # user_value 1\r
5896     # value_source default\r
5897     # Default value: 1\r
5898 };\r
5900 # Support application-level instrumentation\r
5901 # It is possible to perform selective instrumentation at\r
5902 # run-time. It is also possible to disable instrumentation\r
5903 # in various kernel components at compile-time, thus\r
5904 # reducing the code size overheads. This option controls\r
5905 # whether or not application-level instrumentation gets\r
5906 # compiled in.\r
5908 cdl_option CYGDBG_KERNEL_INSTRUMENT_USER {\r
5909     # This option is not active\r
5910     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5912     # Flavor: bool\r
5913     # No user value, uncomment the following line to provide one.\r
5914     # user_value 1\r
5915     # value_source default\r
5916     # Default value: 1\r
5917 };\r
5919 # Print user friendly instrument messages\r
5920 # Include code which will convert the instrument type field \r
5921 # into a more human understandable string\r
5923 cdl_component CYGDBG_KERNEL_INSTRUMENT_MSGS {\r
5924     # This option is not active\r
5925     # The parent CYGPKG_KERNEL_INSTRUMENT is disabled\r
5927     # Flavor: bool\r
5928     # No user value, uncomment the following line to provide one.\r
5929     # user_value 1\r
5930     # value_source default\r
5931     # Default value: 1\r
5932 };\r
5934 # >\r
5935 # Rebuild the header file\r
5936 # Make (using a shell script) include/cyg/kernel/instrument_desc.h in\r
5937 # your build tree; this is normally simply copied from the repository.\r
5938 # If you make a permanent change to include/instrmnt.h, such that\r
5939 # instrument_desc.h needs updating, it's up to you to first delete the\r
5940 # master file\r
5941 # ECOS_REPOSITORY/kernel/VERSION/include/instrument_desc.h\r
5942 # in your source repository, make the new version by enabling this\r
5943 # option then copy the new file\r
5944 # back from your build place to its source in\r
5945 # ECOS_REPOSITORY/kernel/VERSION/include/instrument_desc.h\r
5946 # and/or commit this to any version control system that you use.\r
5948 cdl_option CYGDBG_KERNEL_INSTRUMENT_MSGS_BUILD_HEADERFILE {\r
5949     # This option is not active\r
5950     # The parent CYGDBG_KERNEL_INSTRUMENT_MSGS is not active\r
5952     # Flavor: bool\r
5953     # No user value, uncomment the following line to provide one.\r
5954     # user_value 0\r
5955     # value_source default\r
5956     # Default value: 0\r
5957 };\r
5959 # Build the host tool to print out a dump\r
5960 # Generate a host program which can dump the instrumentation\r
5961 # data in a human readable format. You have to somehow get the\r
5962 # instrumentation buffer into a file on the host. 'Exercise for\r
5963 # the reader' as university lecturers tend to say.\r
5965 cdl_component CYGDBG_KERNEL_INSTRUMENT_BUILD_HOST_DUMP {\r
5966     # This option is not active\r
5967     # The parent CYGDBG_KERNEL_INSTRUMENT_MSGS is not active\r
5969     # Flavor: bool\r
5970     # No user value, uncomment the following line to provide one.\r
5971     # user_value 0\r
5972     # value_source default\r
5973     # Default value: 0\r
5974 };\r
5976 # <\r
5977 # <\r
5978 # Source-level debugging support\r
5979 # If the source level debugger gdb is to be used for debugging\r
5980 # application code then it may be necessary to configure in support\r
5981 # for this in the kernel.\r
5983 cdl_component CYGPKG_KERNEL_DEBUG {\r
5984     # There is no associated value.\r
5985 };\r
5987 # >\r
5988 # Include GDB multi-threading debug support\r
5989 # This option enables some extra kernel code which is needed\r
5990 # to support multi-threaded source level debugging.\r
5992 cdl_option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT {\r
5993     # Flavor: bool\r
5994     # No user value, uncomment the following line to provide one.\r
5995     # user_value 1\r
5996     # value_source default\r
5997     # Default value: 1\r
5998     # Requires: CYGVAR_KERNEL_THREADS_LIST\r
5999     #     CYGVAR_KERNEL_THREADS_LIST == 1\r
6000     #   --> 1\r
6001     # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT\r
6002     #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1\r
6003     #   --> 1\r
6005     # The following properties are affected by this value\r
6006     # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT\r
6007     #     ActiveIf:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT \r
6008 };\r
6010 # <\r
6011 # Kernel APIs\r
6012 # The eCos kernel is implemented in C++, so a C++ interface\r
6013 # to the kernel is always available. There is also an optional\r
6014 # C API. Additional API's may be provided in future versions.\r
6016 cdl_component CYGPKG_KERNEL_API {\r
6017     # There is no associated value.\r
6018 };\r
6020 # >\r
6021 # Provide C API\r
6022 # The eCos kernel is implemented in C++, but there is an\r
6023 # optional C API for use by application code. This C API can be\r
6024 # disabled if the application code does not invoke the kernel\r
6025 # directly, but instead uses higher level code such as the\r
6026 # uITRON compatibility layer.\r
6028 cdl_option CYGFUN_KERNEL_API_C {\r
6029     # Flavor: bool\r
6030     # No user value, uncomment the following line to provide one.\r
6031     # user_value 1\r
6032     # value_source default\r
6033     # Default value: 1\r
6035     # The following properties are affected by this value\r
6036     # option CYGPKG_KERNEL_TESTS\r
6037     #     Calculated:  \r
6038     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
6039     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
6040     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
6041     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
6042     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
6043     #                 \r
6044     # option CYGPKG_KERNEL_TESTS\r
6045     #     Calculated:  \r
6046     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
6047     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
6048     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
6049     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
6050     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
6051     #                 \r
6052     # option CYGPKG_KERNEL_TESTS\r
6053     #     Calculated:  \r
6054     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
6055     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
6056     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
6057     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
6058     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
6059     #                 \r
6060     # option CYGPKG_KERNEL_TESTS\r
6061     #     Calculated:  \r
6062     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
6063     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
6064     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
6065     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
6066     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
6067     #                 \r
6068     # option CYGFUN_MEMALLOC_KAPI\r
6069     #     DefaultValue: CYGFUN_KERNEL_API_C\r
6070 };\r
6072 # <\r
6073 # Kernel build options\r
6074 # Package specific build options including control over\r
6075 # compiler flags used only in building this package,\r
6076 # and details of which tests are built.\r
6078 cdl_component CYGPKG_KERNEL_OPTIONS {\r
6079     # There is no associated value.\r
6080 };\r
6082 # >\r
6083 # Additional compiler flags\r
6084 # This option modifies the set of compiler flags for\r
6085 # building the eCos kernel. These flags are used in addition\r
6086 # to the set of global flags.\r
6088 cdl_option CYGPKG_KERNEL_CFLAGS_ADD {\r
6089     # Flavor: data\r
6090     # No user value, uncomment the following line to provide one.\r
6091     # user_value ""\r
6092     # value_source default\r
6093     # Default value: ""\r
6094 };\r
6096 # Suppressed compiler flags\r
6097 # This option modifies the set of compiler flags for\r
6098 # building the eCos kernel. These flags are removed from\r
6099 # the set of global flags if present.\r
6101 cdl_option CYGPKG_KERNEL_CFLAGS_REMOVE {\r
6102     # Flavor: data\r
6103     # No user value, uncomment the following line to provide one.\r
6104     # user_value ""\r
6105     # value_source default\r
6106     # Default value: ""\r
6107 };\r
6109 # Kernel tests\r
6110 # This option specifies the set of tests for the eCos kernel.\r
6112 cdl_option CYGPKG_KERNEL_TESTS {\r
6113     # Calculated value:  \r
6114     #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2" \r
6115     #                     . ((CYGFUN_KERNEL_API_C) ? " tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0" : "")\r
6116     #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")\r
6117     #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")\r
6118     #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")\r
6119     #                 \r
6120     #     CYGFUN_KERNEL_API_C == 1\r
6121     #     CYGPKG_INFRA_DEBUG == 0\r
6122     #     CYGPKG_KERNEL_INSTRUMENT == 0\r
6123     #     CYGFUN_KERNEL_API_C == 1\r
6124     #     CYGPKG_KERNEL_SMP_SUPPORT == 0\r
6125     #     CYGFUN_KERNEL_API_C == 1\r
6126     #     CYGINT_HAL_TESTS_NO_CACHES == 0\r
6127     #     CYGFUN_KERNEL_API_C == 1\r
6128     # Flavor: data\r
6129     # Current_value: tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/bin_sem3 tests/clock0 tests/clock1 tests/clockcnv tests/clocktruth tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kill tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/release tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kflag0 tests/kflag1 tests/kintr0 tests/klock tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/kmutex3 tests/kmutex4 tests/ksched1 tests/ksem0 tests/ksem1 tests/kthread0 tests/kthread1 tests/stress_threads tests/thread_gdb tests/timeslice tests/timeslice2 tests/tm_basic tests/fptest tests/kalarm0 tests/dhrystone tests/kcache1 tests/kcache2\r
6130 };\r
6132 # <\r
6133 # <\r
6134 # Dynamic memory allocation\r
6135 # doc: ref/memalloc.html\r
6136 # This package provides memory allocator infrastructure required for\r
6137 # dynamic memory allocators, including the ISO standard malloc\r
6138 # interface. It also contains some sample implementations.\r
6140 cdl_package CYGPKG_MEMALLOC {\r
6141     # Packages cannot be added or removed, nor can their version be changed,\r
6142     # simply by editing their value. Instead the appropriate configuration\r
6143     # should be used to perform these actions.\r
6145     # This value cannot be modified here.\r
6146     # Flavor: booldata\r
6147     # Current value: 1 v3_0\r
6148 };\r
6150 # >\r
6151 # Memory allocator implementations\r
6152 # This component contains configuration options related to the \r
6153 # various memory allocators available.\r
6155 cdl_component CYGPKG_MEMALLOC_ALLOCATORS {\r
6156     # There is no associated value.\r
6157 };\r
6159 # >\r
6160 # Fixed block allocator\r
6161 # This component contains configuration options related to the \r
6162 # fixed block memory allocator.\r
6164 cdl_component CYGPKG_MEMALLOC_ALLOCATOR_FIXED {\r
6165     # There is no associated value.\r
6166 };\r
6168 # >\r
6169 # Make thread safe\r
6170 # With this option enabled, this allocator will be\r
6171 # made thread-safe. Additionally allocation functions\r
6172 # are made available that allow a thread to wait\r
6173 # until memory is available.\r
6175 cdl_option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE {\r
6176     # ActiveIf constraint: CYGPKG_KERNEL\r
6177     #     CYGPKG_KERNEL == v3_0\r
6178     #   --> 1\r
6180     # Flavor: bool\r
6181     # No user value, uncomment the following line to provide one.\r
6182     # user_value 1\r
6183     # value_source default\r
6184     # Default value: 1\r
6185 };\r
6187 # <\r
6188 # Simple variable block allocator\r
6189 # This component contains configuration options related to the \r
6190 # simple variable block memory allocator. This allocator is not\r
6191 # very fast, and in particular does not scale well with large\r
6192 # numbers of allocations. It is however very compact in terms of\r
6193 # code size and does not have very much overhead per allocation.\r
6195 cdl_component CYGPKG_MEMALLOC_ALLOCATOR_VARIABLE {\r
6196     # There is no associated value.\r
6197 };\r
6199 # >\r
6200 # Make thread safe\r
6201 # With this option enabled, this allocator will be\r
6202 # made thread-safe. Additionally allocation functions\r
6203 # are added that allow a thread to wait until memory\r
6204 # are made available that allow a thread to wait\r
6205 # until memory is available.\r
6207 cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE {\r
6208     # ActiveIf constraint: CYGPKG_KERNEL\r
6209     #     CYGPKG_KERNEL == v3_0\r
6210     #   --> 1\r
6212     # Flavor: bool\r
6213     # No user value, uncomment the following line to provide one.\r
6214     # user_value 1\r
6215     # value_source default\r
6216     # Default value: 1\r
6217 };\r
6219 # Coalesce memory\r
6220 # The variable-block memory allocator can perform coalescing\r
6221 # of memory whenever the application code releases memory back\r
6222 # to the pool. This coalescing reduces the possibility of\r
6223 # memory fragmentation problems, but involves extra code and\r
6224 # processor cycles.\r
6226 cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE {\r
6227     # Flavor: bool\r
6228     # No user value, uncomment the following line to provide one.\r
6229     # user_value 1\r
6230     # value_source default\r
6231     # Default value: 1\r
6233     # The following properties are affected by this value\r
6234     # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE\r
6235     #     Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE\r
6236 };\r
6238 # <\r
6239 # Doug Lea's malloc\r
6240 # This component contains configuration options related to the \r
6241 # port of Doug Lea's memory allocator, normally known as\r
6242 # dlmalloc. dlmalloc has a reputation for being both fast\r
6243 # and space-conserving, as well as resisting fragmentation well.\r
6244 # It is a common choice for a general purpose allocator and\r
6245 # has been used in both newlib and Linux glibc.\r
6247 cdl_component CYGPKG_MEMALLOC_ALLOCATOR_DLMALLOC {\r
6248     # There is no associated value.\r
6249 };\r
6251 # >\r
6252 # Debug build\r
6253 # Doug Lea's malloc implementation has substantial amounts\r
6254 # of internal checking in order to verify the operation\r
6255 # and consistency of the allocator. However this imposes\r
6256 # substantial overhead on each operation. Therefore this\r
6257 # checking may be individually disabled.\r
6259 cdl_option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG {\r
6260     # Flavor: bool\r
6261     # No user value, uncomment the following line to provide one.\r
6262     # user_value 0\r
6263     # value_source default\r
6264     # Default value:  0 != CYGDBG_USE_ASSERTS \r
6265     #     CYGDBG_USE_ASSERTS == 0\r
6266     #   --> 0\r
6267     # Requires: CYGDBG_USE_ASSERTS\r
6268     #     CYGDBG_USE_ASSERTS == 0\r
6269     #   --> 0\r
6270 };\r
6272 # Make thread safe\r
6273 # With this option enabled, this allocator will be\r
6274 # made thread-safe. Additionally allocation functions\r
6275 # are made available that allow a thread to wait\r
6276 # until memory is available.\r
6278 cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE {\r
6279     # ActiveIf constraint: CYGPKG_KERNEL\r
6280     #     CYGPKG_KERNEL == v3_0\r
6281     #   --> 1\r
6283     # Flavor: bool\r
6284     # No user value, uncomment the following line to provide one.\r
6285     # user_value 1\r
6286     # value_source default\r
6287     # Default value: 1\r
6288     # Requires: CYGPKG_KERNEL\r
6289     #     CYGPKG_KERNEL == v3_0\r
6290     #   --> 1\r
6291 };\r
6293 # Support more than one instance\r
6294 # Having this option disabled allows important\r
6295 # implementation structures to be declared as a single\r
6296 # static instance, allowing faster access. However this\r
6297 # would fail if there is more than one instance of\r
6298 # the dlmalloc allocator class. Therefore this option can\r
6299 # be enabled if multiple instances are required. Note: as\r
6300 # a special case, if this allocator is used as the\r
6301 # implementation of malloc, and it can be determined there\r
6302 # is more than one malloc pool, then this option will be\r
6303 # silently enabled.\r
6305 cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_SAFE_MULTIPLE {\r
6306     # Flavor: bool\r
6307     # No user value, uncomment the following line to provide one.\r
6308     # user_value 1\r
6309     # value_source default\r
6310     # Default value: 1\r
6311 };\r
6313 # Use system memmove() and memset()\r
6314 # This may be used to control whether memset() and memmove()\r
6315 # are used within the implementation. The alternative is\r
6316 # to use some macro equivalents, which have been reported\r
6317 # to be faster in some circumstances. The use of "MEMCPY"\r
6318 # in the CDL option name is an anachronism and only\r
6319 # present for backwards compatibility.\r
6321 cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY {\r
6322     # Flavor: bool\r
6323     # No user value, uncomment the following line to provide one.\r
6324     # user_value 1\r
6325     # value_source default\r
6326     # Default value:  (0 != CYGPKG_ISOINFRA) && (0 != CYGINT_ISO_STRING_MEMFUNCS) \r
6327     #     CYGPKG_ISOINFRA == v3_0\r
6328     #     CYGINT_ISO_STRING_MEMFUNCS == 1\r
6329     #   --> 1\r
6330     # Requires: CYGPKG_ISOINFRA\r
6331     #     CYGPKG_ISOINFRA == v3_0\r
6332     #   --> 1\r
6333     # Requires: CYGINT_ISO_STRING_MEMFUNCS\r
6334     #     CYGINT_ISO_STRING_MEMFUNCS == 1\r
6335     #   --> 1\r
6336 };\r
6338 # Minimum alignment of allocated blocks\r
6339 # This option controls the minimum alignment that the\r
6340 # allocated memory blocks are aligned on, specified as\r
6341 # 2^N. Note that using large mininum alignments can lead\r
6342 # to excessive memory wastage.\r
6344 cdl_option CYGNUM_MEMALLOC_ALLOCATOR_DLMALLOC_ALIGNMENT {\r
6345     # Flavor: data\r
6346     # No user value, uncomment the following line to provide one.\r
6347     # user_value 3\r
6348     # value_source default\r
6349     # Default value: 3\r
6350     # Legal values: 3 to 10\r
6351 };\r
6353 # <\r
6354 # Variable block allocator with separate metadata\r
6355 # This component contains configuration options related to the \r
6356 # variable block memory allocator with separate metadata.\r
6358 cdl_component CYGPKG_MEMALLOC_ALLOCATOR_SEPMETA {\r
6359     # There is no associated value.\r
6360 };\r
6362 # >\r
6363 # Make thread safe\r
6364 # With this option enabled, this allocator will be\r
6365 # made thread-safe. Additionally allocation functions\r
6366 # are made available that allow a thread to wait\r
6367 # until memory is available.\r
6369 cdl_option CYGSEM_MEMALLOC_ALLOCATOR_SEPMETA_THREADAWARE {\r
6370     # ActiveIf constraint: CYGPKG_KERNEL\r
6371     #     CYGPKG_KERNEL == v3_0\r
6372     #   --> 1\r
6374     # Flavor: bool\r
6375     # No user value, uncomment the following line to provide one.\r
6376     # user_value 1\r
6377     # value_source default\r
6378     # Default value: 1\r
6379 };\r
6381 # <\r
6382 # <\r
6383 # Kernel C API support for memory allocation\r
6384 # This option must be enabled to provide the extensions required\r
6385 # to support integration into the kernel C API.\r
6387 cdl_option CYGFUN_MEMALLOC_KAPI {\r
6388     # ActiveIf constraint: CYGPKG_KERNEL\r
6389     #     CYGPKG_KERNEL == v3_0\r
6390     #   --> 1\r
6392     # Flavor: bool\r
6393     # No user value, uncomment the following line to provide one.\r
6394     # user_value 1\r
6395     # value_source default\r
6396     # Default value: CYGFUN_KERNEL_API_C\r
6397     #     CYGFUN_KERNEL_API_C == 1\r
6398     #   --> 1\r
6399 };\r
6401 # malloc(0) returns NULL\r
6402 # This option controls the behavior of malloc(0) ( or calloc with\r
6403 # either argument 0 ). It is permitted by the standard to return\r
6404 # either a NULL pointer or a unique pointer. Enabling this option\r
6405 # forces a NULL pointer to be returned.\r
6407 cdl_option CYGSEM_MEMALLOC_MALLOC_ZERO_RETURNS_NULL {\r
6408     # Flavor: bool\r
6409     # No user value, uncomment the following line to provide one.\r
6410     # user_value 0\r
6411     # value_source default\r
6412     # Default value: 0\r
6413 };\r
6415 # Breakpoint site when running out of memory\r
6416 # Whenever the system runs out of memory, it invokes this function\r
6417 # before either going to sleep waiting for memory to become \r
6418 # available or returning failure.\r
6420 cdl_option CYGSEM_MEMALLOC_INVOKE_OUT_OF_MEMORY {\r
6421     # Flavor: bool\r
6422     # No user value, uncomment the following line to provide one.\r
6423     # user_value 0\r
6424     # value_source default\r
6425     # Default value: 0\r
6426 };\r
6428 # malloc() and supporting allocators\r
6429 # This component enables support for dynamic memory\r
6430 # allocation as supplied by the functions malloc(),\r
6431 # free(), calloc() and realloc(). As these\r
6432 # functions are often used, but can have quite an\r
6433 # overhead, disabling them here can ensure they\r
6434 # cannot even be used accidentally when static\r
6435 # allocation is preferred. Within this component are\r
6436 # various allocators that can be selected for use\r
6437 # as the underlying implementation of the dynamic\r
6438 # allocation functions.\r
6440 cdl_component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS {\r
6441     # ActiveIf constraint: CYGPKG_ISOINFRA\r
6442     #     CYGPKG_ISOINFRA == v3_0\r
6443     #   --> 1\r
6445     # Flavor: bool\r
6446     # No user value, uncomment the following line to provide one.\r
6447     # user_value 1\r
6448     # value_source default\r
6449     # Default value: 1\r
6450 };\r
6452 # >\r
6453 # Use external heap definition\r
6454 # This option allows other components in the\r
6455 # system to override the default system\r
6456 # provision of heap memory pools. This should\r
6457 # be set to a header which provides the equivalent\r
6458 # definitions to <pkgconf/heaps.hxx>.\r
6460 cdl_component CYGBLD_MEMALLOC_MALLOC_EXTERNAL_HEAP_H {\r
6461     # Flavor: booldata\r
6462     # No user value, uncomment the following line to provide one.\r
6463     # user_value 0 0\r
6464     # value_source default\r
6465     # Default value: 0 0\r
6466 };\r
6468 # Use external implementation of joining multiple heaps\r
6469 # The default implementation of joining multiple heaps\r
6470 # is fine for the case where there are multiple disjoint\r
6471 # memory regions of the same type. However, in a system\r
6472 # there might be e.g. a small amount of internal SRAM and\r
6473 # a large amount of external DRAM. The SRAM is faster and\r
6474 # the DRAM is slower. An application can implement some \r
6475 # heuristic to choose which pool to allocate from. This\r
6476 # heuristic can be highly application specific.\r
6478 cdl_component CYGBLD_MEMALLOC_MALLOC_EXTERNAL_JOIN_H {\r
6479     # Flavor: booldata\r
6480     # No user value, uncomment the following line to provide one.\r
6481     # user_value 0 0\r
6482     # value_source default\r
6483     # Default value: 0 0\r
6484 };\r
6486 # malloc() allocator implementations\r
6488 cdl_interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS {\r
6489     # Implemented by CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE, active, disabled\r
6490     # Implemented by CYGIMP_MEMALLOC_MALLOC_DLMALLOC, active, enabled\r
6491     # This value cannot be modified here.\r
6492     # Flavor: data\r
6493     # Current_value: 1\r
6494     # Requires:  CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 \r
6495     #     CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1\r
6496     #   --> 1\r
6498     # The following properties are affected by this value\r
6499     # interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS\r
6500     #     Requires:  CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 \r
6501 };\r
6503 # malloc() implementation instantiation data\r
6504 # Memory allocator implementations that are capable of being\r
6505 # used underneath malloc() must be instantiated. The code\r
6506 # to do this is set in this option. It is only intended to\r
6507 # be set by the implementation, not the user.\r
6509 cdl_option CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER {\r
6510     # Flavor: data\r
6511     # No user value, uncomment the following line to provide one.\r
6512     # user_value <cyg/memalloc/dlmalloc.hxx>\r
6513     # value_source default\r
6514     # Default value: <cyg/memalloc/dlmalloc.hxx>\r
6516     # The following properties are affected by this value\r
6517     # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE\r
6518     #     Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/memvar.hxx>" \r
6519     # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC\r
6520     #     Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/dlmalloc.hxx>" \r
6521 };\r
6523 # Simple variable block implementation\r
6524 # This causes malloc() to use the simple\r
6525 # variable block allocator.\r
6527 cdl_option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE {\r
6528     # Flavor: bool\r
6529     # No user value, uncomment the following line to provide one.\r
6530     # user_value 0\r
6531     # value_source default\r
6532     # Default value: 0\r
6533     # Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/memvar.hxx>" \r
6534     #     CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == <cyg/memalloc/dlmalloc.hxx>\r
6535     #   --> 0\r
6536     # Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE\r
6537     #     CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE == 1\r
6538     #   --> 1\r
6539 };\r
6541 # Doug Lea's malloc implementation\r
6542 # This causes malloc() to use a version of Doug Lea's\r
6543 # malloc (dlmalloc) as the underlying implementation.\r
6545 cdl_option CYGIMP_MEMALLOC_MALLOC_DLMALLOC {\r
6546     # Flavor: bool\r
6547     # No user value, uncomment the following line to provide one.\r
6548     # user_value 1\r
6549     # value_source default\r
6550     # Default value: 1\r
6551     # Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  "<cyg/memalloc/dlmalloc.hxx>" \r
6552     #     CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == <cyg/memalloc/dlmalloc.hxx>\r
6553     #   --> 1\r
6554 };\r
6556 # <\r
6557 # Size of the fallback dynamic memory pool in bytes\r
6558 # If *no* heaps are configured in your memory layout,\r
6559 # dynamic memory allocation by\r
6560 # malloc() and calloc() must be from a fixed-size,\r
6561 # contiguous memory pool (note here that it is the\r
6562 # pool that is of a fixed size, but malloc() is still\r
6563 # able to allocate variable sized chunks of memory\r
6564 # from it). This option is the size\r
6565 # of that pool, in bytes. Note that not all of\r
6566 # this is available for programs to\r
6567 # use - some is needed for internal information\r
6568 # about memory regions, and some may be lost to\r
6569 # ensure that memory allocation only returns\r
6570 # memory aligned on word (or double word)\r
6571 # boundaries - a very common architecture\r
6572 # constraint.\r
6574 cdl_option CYGNUM_MEMALLOC_FALLBACK_MALLOC_POOL_SIZE {\r
6575     # Flavor: data\r
6576     # No user value, uncomment the following line to provide one.\r
6577     # user_value 16384\r
6578     # value_source default\r
6579     # Default value: 16384\r
6580     # Legal values: 32 to 0x7fffffff\r
6581 };\r
6583 # Common memory allocator package build options\r
6584 # Package specific build options including control over\r
6585 # compiler flags used only in building this package,\r
6586 # and details of which tests are built.\r
6588 cdl_component CYGPKG_MEMALLOC_OPTIONS {\r
6589     # There is no associated value.\r
6590 };\r
6592 # >\r
6593 # Additional compiler flags\r
6594 # This option modifies the set of compiler flags for\r
6595 # building this package. These flags are used in addition\r
6596 # to the set of global flags.\r
6598 cdl_option CYGPKG_MEMALLOC_CFLAGS_ADD {\r
6599     # Flavor: data\r
6600     # No user value, uncomment the following line to provide one.\r
6601     # user_value ""\r
6602     # value_source default\r
6603     # Default value: ""\r
6604 };\r
6606 # Suppressed compiler flags\r
6607 # This option modifies the set of compiler flags for\r
6608 # building this package. These flags are removed from\r
6609 # the set of global flags if present.\r
6611 cdl_option CYGPKG_MEMALLOC_CFLAGS_REMOVE {\r
6612     # Flavor: data\r
6613     # No user value, uncomment the following line to provide one.\r
6614     # user_value ""\r
6615     # value_source default\r
6616     # Default value: ""\r
6617 };\r
6619 # Tests\r
6620 # This option specifies the set of tests for this package.\r
6622 cdl_option CYGPKG_MEMALLOC_TESTS {\r
6623     # Calculated value:  "tests/dlmalloc1 tests/dlmalloc2 tests/heaptest tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc tests/sepmeta1 tests/sepmeta2" \r
6624     # Flavor: data\r
6625     # Current_value: tests/dlmalloc1 tests/dlmalloc2 tests/heaptest tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc tests/sepmeta1 tests/sepmeta2\r
6626 };\r
6628 # <\r
6629 # <\r
6630 # ISO C and POSIX infrastructure\r
6631 # eCos supports implementations of ISO C libraries and POSIX\r
6632 # implementations. This package provides infrastructure used by\r
6633 # all such implementations.\r
6635 cdl_package CYGPKG_ISOINFRA {\r
6636     # Packages cannot be added or removed, nor can their version be changed,\r
6637     # simply by editing their value. Instead the appropriate configuration\r
6638     # should be used to perform these actions.\r
6640     # This value cannot be modified here.\r
6641     # Flavor: booldata\r
6642     # Current value: 1 v3_0\r
6644     # The following properties are affected by this value\r
6645     # component CYGPKG_IO_SERIAL_TERMIOS\r
6646     #     Requires: CYGPKG_ISOINFRA\r
6647     # component CYGPKG_IO_SERIAL_TERMIOS\r
6648     #     DefaultValue:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO \r
6649     # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY\r
6650     #     Requires: CYGPKG_ISOINFRA\r
6651     # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY\r
6652     #     DefaultValue:  (0 != CYGPKG_ISOINFRA) && (0 != CYGINT_ISO_STRING_MEMFUNCS) \r
6653     # component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS\r
6654     #     ActiveIf: CYGPKG_ISOINFRA\r
6655     # package CYGPKG_LIBC_I18N\r
6656     #     Requires: CYGPKG_ISOINFRA\r
6657     # package CYGPKG_LIBC_SETJMP\r
6658     #     Requires: CYGPKG_ISOINFRA\r
6659     # package CYGPKG_LIBC_SIGNALS\r
6660     #     Requires: CYGPKG_ISOINFRA\r
6661     # package CYGPKG_LIBC_STARTUP\r
6662     #     Requires: CYGPKG_ISOINFRA\r
6663     # package CYGPKG_LIBC_STDIO\r
6664     #     Requires: CYGPKG_ISOINFRA\r
6665     # package CYGPKG_LIBC_STDLIB\r
6666     #     Requires: CYGPKG_ISOINFRA\r
6667     # package CYGPKG_LIBC_STRING\r
6668     #     Requires: CYGPKG_ISOINFRA\r
6669     # package CYGPKG_LIBC_TIME\r
6670     #     Requires: CYGPKG_ISOINFRA\r
6671 };\r
6673 # >\r
6674 # Startup and termination\r
6676 cdl_component CYGPKG_ISO_STARTUP {\r
6677     # There is no associated value.\r
6678 };\r
6680 # >\r
6681 # main() startup implementations\r
6682 # Implementations of this interface arrange for a user-supplied\r
6683 # main() to be called in an ISO compatible environment.\r
6685 cdl_interface CYGINT_ISO_MAIN_STARTUP {\r
6686     # Implemented by CYGPKG_LIBC_STARTUP, active, enabled\r
6687     # This value cannot be modified here.\r
6688     # Flavor: data\r
6689     # Current_value: 1\r
6690     # Requires:  1 >= CYGINT_ISO_MAIN_STARTUP \r
6691     #     CYGINT_ISO_MAIN_STARTUP == 1\r
6692     #   --> 1\r
6694     # The following properties are affected by this value\r
6695     # interface CYGINT_ISO_MAIN_STARTUP\r
6696     #     Requires:  1 >= CYGINT_ISO_MAIN_STARTUP \r
6697 };\r
6699 # environ implementations\r
6700 # Implementations of this interface provide the environ\r
6701 # variable required by POSIX.\r
6703 cdl_interface CYGINT_ISO_ENVIRON {\r
6704     # Implemented by CYGPKG_LIBC_STARTUP, active, enabled\r
6705     # This value cannot be modified here.\r
6706     # Flavor: data\r
6707     # Current_value: 1\r
6708     # Requires:  1 >= CYGINT_ISO_ENVIRON \r
6709     #     CYGINT_ISO_ENVIRON == 1\r
6710     #   --> 1\r
6712     # The following properties are affected by this value\r
6713     # interface CYGINT_ISO_ENVIRON\r
6714     #     Requires:  1 >= CYGINT_ISO_ENVIRON \r
6715 };\r
6717 # <\r
6718 # ctype.h functions\r
6720 cdl_component CYGPKG_ISO_CTYPE_H {\r
6721     # There is no associated value.\r
6722 };\r
6724 # >\r
6725 # Number of implementations of ctype functions\r
6727 cdl_interface CYGINT_ISO_CTYPE {\r
6728     # Implemented by CYGPKG_LIBC_I18N, active, enabled\r
6729     # This value cannot be modified here.\r
6730     # Flavor: data\r
6731     # Current_value: 1\r
6732     # Requires:  1 >= CYGINT_ISO_CTYPE \r
6733     #     CYGINT_ISO_CTYPE == 1\r
6734     #   --> 1\r
6736     # The following properties are affected by this value\r
6737     # interface CYGINT_ISO_CTYPE\r
6738     #     Requires:  1 >= CYGINT_ISO_CTYPE \r
6739     # package CYGPKG_LIBC_STDLIB\r
6740     #     Requires: CYGINT_ISO_CTYPE\r
6741     # option CYGFUN_LIBC_STRING_BSD_FUNCS\r
6742     #     Requires: CYGINT_ISO_CTYPE\r
6743 };\r
6745 # Ctype implementation header\r
6747 cdl_option CYGBLD_ISO_CTYPE_HEADER {\r
6748     # Flavor: booldata\r
6749     # No user value, uncomment the following line to provide one.\r
6750     # user_value 0 0\r
6751     # The inferred value should not be edited directly.\r
6752     inferred_value 1 <cyg/libc/i18n/ctype.inl>\r
6753     # value_source inferred\r
6754     # Default value: 0 0\r
6756     # The following properties are affected by this value\r
6757     # option CYGPKG_LIBC_I18N_NEWLIB_CTYPE\r
6758     #     Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/newlibctype.h>" \r
6759     # option CYGIMP_LIBC_I18N_CTYPE_INLINES\r
6760     #     Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/ctype.inl>" \r
6761 };\r
6763 # <\r
6764 # Error handling\r
6766 cdl_component CYGPKG_ISO_ERRNO {\r
6767     # There is no associated value.\r
6768 };\r
6770 # >\r
6771 # Number of implementations of error codes\r
6773 cdl_interface CYGINT_ISO_ERRNO_CODES {\r
6774     # Implemented by CYGPKG_ERROR, active, enabled\r
6775     # This value cannot be modified here.\r
6776     # Flavor: data\r
6777     # Current_value: 1\r
6778     # Requires:  1 >= CYGINT_ISO_ERRNO_CODES \r
6779     #     CYGINT_ISO_ERRNO_CODES == 1\r
6780     #   --> 1\r
6782     # The following properties are affected by this value\r
6783     # interface CYGINT_ISO_ERRNO_CODES\r
6784     #     Requires:  1 >= CYGINT_ISO_ERRNO_CODES \r
6785     # component CYGPKG_IO_SERIAL_TERMIOS\r
6786     #     Requires: CYGINT_ISO_ERRNO_CODES\r
6787     # component CYGPKG_IO_SERIAL_TERMIOS\r
6788     #     DefaultValue:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO \r
6789     # option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO\r
6790     #     Requires: CYGINT_ISO_ERRNO_CODES\r
6791     # option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO\r
6792     #     Requires: CYGINT_ISO_ERRNO_CODES\r
6793     # package CYGPKG_LIBC_STDIO\r
6794     #     Requires: CYGINT_ISO_ERRNO_CODES\r
6795 };\r
6797 # Error codes implementation header\r
6799 cdl_option CYGBLD_ISO_ERRNO_CODES_HEADER {\r
6800     # Flavor: booldata\r
6801     # No user value, uncomment the following line to provide one.\r
6802     # user_value 0 0\r
6803     # The inferred value should not be edited directly.\r
6804     inferred_value 1 <cyg/error/codes.h>\r
6805     # value_source inferred\r
6806     # Default value: 0 0\r
6808     # The following properties are affected by this value\r
6809     # package CYGPKG_ERROR\r
6810     #     Requires:  CYGBLD_ISO_ERRNO_CODES_HEADER == "<cyg/error/codes.h>" \r
6811 };\r
6813 # Number of implementations of errno variable\r
6815 cdl_interface CYGINT_ISO_ERRNO {\r
6816     # Implemented by CYGPKG_ERROR_ERRNO, active, enabled\r
6817     # This value cannot be modified here.\r
6818     # Flavor: data\r
6819     # Current_value: 1\r
6820     # Requires:  1 >= CYGINT_ISO_ERRNO \r
6821     #     CYGINT_ISO_ERRNO == 1\r
6822     #   --> 1\r
6824     # The following properties are affected by this value\r
6825     # interface CYGINT_ISO_ERRNO\r
6826     #     Requires:  1 >= CYGINT_ISO_ERRNO \r
6827     # component CYGPKG_IO_SERIAL_TERMIOS\r
6828     #     Requires: CYGINT_ISO_ERRNO\r
6829     # component CYGPKG_IO_SERIAL_TERMIOS\r
6830     #     DefaultValue:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO \r
6831     # option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO\r
6832     #     Requires: CYGINT_ISO_ERRNO\r
6833     # option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO\r
6834     #     Requires: CYGINT_ISO_ERRNO\r
6835     # package CYGPKG_LIBC_STDIO\r
6836     #     Requires: CYGINT_ISO_ERRNO\r
6837 };\r
6839 # errno variable implementation header\r
6841 cdl_option CYGBLD_ISO_ERRNO_HEADER {\r
6842     # Flavor: booldata\r
6843     # No user value, uncomment the following line to provide one.\r
6844     # user_value 0 0\r
6845     # The inferred value should not be edited directly.\r
6846     inferred_value 1 <cyg/error/errno.h>\r
6847     # value_source inferred\r
6848     # Default value: 0 0\r
6850     # The following properties are affected by this value\r
6851     # component CYGPKG_ERROR_ERRNO\r
6852     #     Requires:  CYGBLD_ISO_ERRNO_HEADER == "<cyg/error/errno.h>" \r
6853 };\r
6855 # <\r
6856 # Locale-related functions\r
6858 cdl_component CYGPKG_ISO_LOCALE {\r
6859     # There is no associated value.\r
6860 };\r
6862 # >\r
6863 # Number of implementations of locale functions\r
6865 cdl_interface CYGINT_ISO_LOCALE {\r
6866     # Implemented by CYGPKG_LIBC_I18N, active, enabled\r
6867     # This value cannot be modified here.\r
6868     # Flavor: data\r
6869     # Current_value: 1\r
6870     # Requires:  1 >= CYGINT_ISO_LOCALE \r
6871     #     CYGINT_ISO_LOCALE == 1\r
6872     #   --> 1\r
6874     # The following properties are affected by this value\r
6875     # interface CYGINT_ISO_LOCALE\r
6876     #     Requires:  1 >= CYGINT_ISO_LOCALE \r
6877 };\r
6879 # Locale implementation header\r
6881 cdl_option CYGBLD_ISO_LOCALE_HEADER {\r
6882     # Flavor: booldata\r
6883     # No user value, uncomment the following line to provide one.\r
6884     # user_value 0 0\r
6885     # value_source default\r
6886     # Default value: 0 0\r
6887 };\r
6889 # <\r
6890 # Standard I/O-related functionality\r
6892 cdl_component CYGPKG_ISO_STDIO {\r
6893     # There is no associated value.\r
6894 };\r
6896 # >\r
6897 # Number of implementations of stdio file types\r
6899 cdl_interface CYGINT_ISO_STDIO_FILETYPES {\r
6900     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
6901     # This value cannot be modified here.\r
6902     # Flavor: booldata\r
6903     # Current value: 1 1\r
6904     # Requires:  1 >= CYGINT_ISO_STDIO_FILETYPES \r
6905     #     CYGINT_ISO_STDIO_FILETYPES == 1\r
6906     #   --> 1\r
6908     # The following properties are affected by this value\r
6909     # interface CYGINT_ISO_STDIO_FILETYPES\r
6910     #     Requires:  1 >= CYGINT_ISO_STDIO_FILETYPES \r
6911 };\r
6913 # Stdio file types implementation header\r
6915 cdl_option CYGBLD_ISO_STDIO_FILETYPES_HEADER {\r
6916     # Flavor: booldata\r
6917     # No user value, uncomment the following line to provide one.\r
6918     # user_value 0 0\r
6919     # The inferred value should not be edited directly.\r
6920     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
6921     # value_source inferred\r
6922     # Default value: 0 0\r
6924     # The following properties are affected by this value\r
6925     # package CYGPKG_LIBC_STDIO\r
6926     #     Requires:  CYGBLD_ISO_STDIO_FILETYPES_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
6927 };\r
6929 # Stdio standard streams implementations\r
6931 cdl_interface CYGINT_ISO_STDIO_STREAMS {\r
6932     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
6933     # This value cannot be modified here.\r
6934     # Flavor: booldata\r
6935     # Current value: 1 1\r
6936     # Requires:  1 >= CYGINT_ISO_STDIO_STREAMS \r
6937     #     CYGINT_ISO_STDIO_STREAMS == 1\r
6938     #   --> 1\r
6940     # The following properties are affected by this value\r
6941     # interface CYGINT_ISO_STDIO_STREAMS\r
6942     #     Requires:  1 >= CYGINT_ISO_STDIO_STREAMS \r
6943 };\r
6945 # Stdio standard streams implementation header\r
6946 # This header file must define stdin, stdout\r
6947 # and stderr.\r
6949 cdl_option CYGBLD_ISO_STDIO_STREAMS_HEADER {\r
6950     # Flavor: booldata\r
6951     # No user value, uncomment the following line to provide one.\r
6952     # user_value 0 0\r
6953     # The inferred value should not be edited directly.\r
6954     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
6955     # value_source inferred\r
6956     # Default value: 0 0\r
6958     # The following properties are affected by this value\r
6959     # package CYGPKG_LIBC_STDIO\r
6960     #     Requires:  CYGBLD_ISO_STDIO_STREAMS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
6961 };\r
6963 # Number of implementations of stdio file operations\r
6965 cdl_interface CYGINT_ISO_STDIO_FILEOPS {\r
6966     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
6967     # This value cannot be modified here.\r
6968     # Flavor: booldata\r
6969     # Current value: 1 1\r
6970     # Requires:  1 >= CYGINT_ISO_STDIO_FILEOPS \r
6971     #     CYGINT_ISO_STDIO_FILEOPS == 1\r
6972     #   --> 1\r
6974     # The following properties are affected by this value\r
6975     # interface CYGINT_ISO_STDIO_FILEOPS\r
6976     #     Requires:  1 >= CYGINT_ISO_STDIO_FILEOPS \r
6977 };\r
6979 # Stdio file operations implementation header\r
6980 # This header controls the file system operations on a file\r
6981 # such as remove(), rename(), tmpfile(), tmpnam() and associated\r
6982 # constants.\r
6984 cdl_option CYGBLD_ISO_STDIO_FILEOPS_HEADER {\r
6985     # Flavor: booldata\r
6986     # No user value, uncomment the following line to provide one.\r
6987     # user_value 0 0\r
6988     # The inferred value should not be edited directly.\r
6989     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
6990     # value_source inferred\r
6991     # Default value: 0 0\r
6993     # The following properties are affected by this value\r
6994     # package CYGPKG_LIBC_STDIO\r
6995     #     Requires:  CYGBLD_ISO_STDIO_FILEOPS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
6996 };\r
6998 # Number of implementations of stdio file access  functionals\r
7000 cdl_interface CYGINT_ISO_STDIO_FILEACCESS {\r
7001     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
7002     # This value cannot be modified here.\r
7003     # Flavor: booldata\r
7004     # Current value: 1 1\r
7005     # Requires:  1 >= CYGINT_ISO_STDIO_FILEACCESS \r
7006     #     CYGINT_ISO_STDIO_FILEACCESS == 1\r
7007     #   --> 1\r
7009     # The following properties are affected by this value\r
7010     # interface CYGINT_ISO_STDIO_FILEACCESS\r
7011     #     Requires:  1 >= CYGINT_ISO_STDIO_FILEACCESS \r
7012     # option CYGSEM_LIBC_EXIT_CALLS_FFLUSH\r
7013     #     Requires: CYGINT_ISO_STDIO_FILEACCESS\r
7014     # option CYGSEM_LIBC_EXIT_CALLS_FFLUSH\r
7015     #     DefaultValue:  0 != CYGINT_ISO_STDIO_FILEACCESS \r
7016 };\r
7018 # Stdio file access implementation header\r
7019 # This header controls the file access operations\r
7020 # such as fclose(), fflush(), fopen(), freopen(), setbuf(),\r
7021 # setvbuf(), and associated constants.\r
7023 cdl_option CYGBLD_ISO_STDIO_FILEACCESS_HEADER {\r
7024     # Flavor: booldata\r
7025     # No user value, uncomment the following line to provide one.\r
7026     # user_value 0 0\r
7027     # The inferred value should not be edited directly.\r
7028     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
7029     # value_source inferred\r
7030     # Default value: 0 0\r
7032     # The following properties are affected by this value\r
7033     # package CYGPKG_LIBC_STDIO\r
7034     #     Requires:  CYGBLD_ISO_STDIO_FILEACCESS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
7035 };\r
7037 # Number of implementations of stdio formatted I/O\r
7039 cdl_interface CYGINT_ISO_STDIO_FORMATTED_IO {\r
7040     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
7041     # This value cannot be modified here.\r
7042     # Flavor: booldata\r
7043     # Current value: 1 1\r
7044     # Requires:  1 >= CYGINT_ISO_STDIO_FORMATTED_IO \r
7045     #     CYGINT_ISO_STDIO_FORMATTED_IO == 1\r
7046     #   --> 1\r
7048     # The following properties are affected by this value\r
7049     # interface CYGINT_ISO_STDIO_FORMATTED_IO\r
7050     #     Requires:  1 >= CYGINT_ISO_STDIO_FORMATTED_IO \r
7051 };\r
7053 # Stdio formatted I/O implementation header\r
7055 cdl_option CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER {\r
7056     # Flavor: booldata\r
7057     # No user value, uncomment the following line to provide one.\r
7058     # user_value 0 0\r
7059     # The inferred value should not be edited directly.\r
7060     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
7061     # value_source inferred\r
7062     # Default value: 0 0\r
7064     # The following properties are affected by this value\r
7065     # package CYGPKG_LIBC_STDIO\r
7066     #     Requires:  CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
7067 };\r
7069 # Number of implementations of stdio character I/O\r
7071 cdl_interface CYGINT_ISO_STDIO_CHAR_IO {\r
7072     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
7073     # This value cannot be modified here.\r
7074     # Flavor: booldata\r
7075     # Current value: 1 1\r
7076     # Requires:  1 >= CYGINT_ISO_STDIO_CHAR_IO \r
7077     #     CYGINT_ISO_STDIO_CHAR_IO == 1\r
7078     #   --> 1\r
7080     # The following properties are affected by this value\r
7081     # interface CYGINT_ISO_STDIO_CHAR_IO\r
7082     #     Requires:  1 >= CYGINT_ISO_STDIO_CHAR_IO \r
7083 };\r
7085 # Stdio character I/O implementation header\r
7087 cdl_option CYGBLD_ISO_STDIO_CHAR_IO_HEADER {\r
7088     # Flavor: booldata\r
7089     # No user value, uncomment the following line to provide one.\r
7090     # user_value 0 0\r
7091     # The inferred value should not be edited directly.\r
7092     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
7093     # value_source inferred\r
7094     # Default value: 0 0\r
7096     # The following properties are affected by this value\r
7097     # package CYGPKG_LIBC_STDIO\r
7098     #     Requires:  CYGBLD_ISO_STDIO_CHAR_IO_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
7099 };\r
7101 # Number of implementations of stdio direct I/O\r
7103 cdl_interface CYGINT_ISO_STDIO_DIRECT_IO {\r
7104     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
7105     # This value cannot be modified here.\r
7106     # Flavor: booldata\r
7107     # Current value: 1 1\r
7108     # Requires:  1 >= CYGINT_ISO_STDIO_DIRECT_IO \r
7109     #     CYGINT_ISO_STDIO_DIRECT_IO == 1\r
7110     #   --> 1\r
7112     # The following properties are affected by this value\r
7113     # interface CYGINT_ISO_STDIO_DIRECT_IO\r
7114     #     Requires:  1 >= CYGINT_ISO_STDIO_DIRECT_IO \r
7115 };\r
7117 # Stdio direct I/O implementation header\r
7119 cdl_option CYGBLD_ISO_STDIO_DIRECT_IO_HEADER {\r
7120     # Flavor: booldata\r
7121     # No user value, uncomment the following line to provide one.\r
7122     # user_value 0 0\r
7123     # The inferred value should not be edited directly.\r
7124     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
7125     # value_source inferred\r
7126     # Default value: 0 0\r
7128     # The following properties are affected by this value\r
7129     # package CYGPKG_LIBC_STDIO\r
7130     #     Requires:  CYGBLD_ISO_STDIO_DIRECT_IO_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
7131 };\r
7133 # Number of implementations of stdio file positioning\r
7135 cdl_interface CYGINT_ISO_STDIO_FILEPOS {\r
7136     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
7137     # This value cannot be modified here.\r
7138     # Flavor: booldata\r
7139     # Current value: 1 1\r
7140     # Requires:  1 >= CYGINT_ISO_STDIO_FILEPOS \r
7141     #     CYGINT_ISO_STDIO_FILEPOS == 1\r
7142     #   --> 1\r
7144     # The following properties are affected by this value\r
7145     # interface CYGINT_ISO_STDIO_FILEPOS\r
7146     #     Requires:  1 >= CYGINT_ISO_STDIO_FILEPOS \r
7147 };\r
7149 # Stdio file positioning implementation header\r
7151 cdl_option CYGBLD_ISO_STDIO_FILEPOS_HEADER {\r
7152     # Flavor: booldata\r
7153     # No user value, uncomment the following line to provide one.\r
7154     # user_value 0 0\r
7155     # The inferred value should not be edited directly.\r
7156     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
7157     # value_source inferred\r
7158     # Default value: 0 0\r
7160     # The following properties are affected by this value\r
7161     # package CYGPKG_LIBC_STDIO\r
7162     #     Requires:  CYGBLD_ISO_STDIO_FILEPOS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
7163 };\r
7165 # Number of implementations of stdio error handling\r
7167 cdl_interface CYGINT_ISO_STDIO_ERROR {\r
7168     # Implemented by CYGPKG_LIBC_STDIO, active, enabled\r
7169     # This value cannot be modified here.\r
7170     # Flavor: booldata\r
7171     # Current value: 1 1\r
7172     # Requires:  1 >= CYGINT_ISO_STDIO_ERROR \r
7173     #     CYGINT_ISO_STDIO_ERROR == 1\r
7174     #   --> 1\r
7176     # The following properties are affected by this value\r
7177     # interface CYGINT_ISO_STDIO_ERROR\r
7178     #     Requires:  1 >= CYGINT_ISO_STDIO_ERROR \r
7179 };\r
7181 # Stdio error handling implementation header\r
7183 cdl_option CYGBLD_ISO_STDIO_ERROR_HEADER {\r
7184     # Flavor: booldata\r
7185     # No user value, uncomment the following line to provide one.\r
7186     # user_value 0 0\r
7187     # The inferred value should not be edited directly.\r
7188     inferred_value 1 <cyg/libc/stdio/stdio.h>\r
7189     # value_source inferred\r
7190     # Default value: 0 0\r
7192     # The following properties are affected by this value\r
7193     # package CYGPKG_LIBC_STDIO\r
7194     #     Requires:  CYGBLD_ISO_STDIO_ERROR_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
7195 };\r
7197 # POSIX fd-related function implementations\r
7199 cdl_interface CYGINT_ISO_STDIO_POSIX_FDFUNCS {\r
7200     # Implemented by CYGFUN_LIBC_STDIO_OPEN_POSIX_FDFUNCS, inactive, enabled\r
7201     # This value cannot be modified here.\r
7202     # Flavor: booldata\r
7203     # Current value: 0 0\r
7204     # Requires:  1 >=  CYGINT_ISO_STDIO_POSIX_FDFUNCS \r
7205     #     CYGINT_ISO_STDIO_POSIX_FDFUNCS == 0\r
7206     #   --> 1\r
7208     # The following properties are affected by this value\r
7209     # interface CYGINT_ISO_STDIO_POSIX_FDFUNCS\r
7210     #     Requires:  1 >=  CYGINT_ISO_STDIO_POSIX_FDFUNCS \r
7211 };\r
7213 # POSIX fd-related function implementation header\r
7215 cdl_option CYGBLD_ISO_STDIO_POSIX_FDFUNCS_HEADER {\r
7216     # Flavor: booldata\r
7217     # No user value, uncomment the following line to provide one.\r
7218     # user_value 0 0\r
7219     # value_source default\r
7220     # Default value: 0 0\r
7221 };\r
7223 # <\r
7224 # Standard general utility functions\r
7226 cdl_component CYGPKG_ISO_STDLIB {\r
7227     # There is no associated value.\r
7228 };\r
7230 # >\r
7231 # String conversion function implementations\r
7233 cdl_interface CYGINT_ISO_STDLIB_STRCONV {\r
7234     # Implemented by CYGPKG_LIBC_STDLIB, active, enabled\r
7235     # This value cannot be modified here.\r
7236     # Flavor: data\r
7237     # Current_value: 1\r
7238     # Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV \r
7239     #     CYGINT_ISO_STDLIB_STRCONV == 1\r
7240     #   --> 1\r
7242     # The following properties are affected by this value\r
7243     # interface CYGINT_ISO_STDLIB_STRCONV\r
7244     #     Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV \r
7245     # package CYGPKG_LIBC_STDIO\r
7246     #     Requires: CYGINT_ISO_STDLIB_STRCONV\r
7247 };\r
7249 # String conversion function implementation header\r
7251 cdl_option CYGBLD_ISO_STDLIB_STRCONV_HEADER {\r
7252     # Flavor: booldata\r
7253     # No user value, uncomment the following line to provide one.\r
7254     # user_value 0 0\r
7255     # The inferred value should not be edited directly.\r
7256     inferred_value 1 <cyg/libc/stdlib/atox.inl>\r
7257     # value_source inferred\r
7258     # Default value: 0 0\r
7260     # The following properties are affected by this value\r
7261     # option CYGIMP_LIBC_STDLIB_INLINE_ATOX\r
7262     #     Requires:  CYGBLD_ISO_STDLIB_STRCONV_HEADER ==  "<cyg/libc/stdlib/atox.inl>" \r
7263 };\r
7265 # String to FP conversion function implementations\r
7267 cdl_interface CYGINT_ISO_STDLIB_STRCONV_FLOAT {\r
7268     # Implemented by CYGFUN_LIBC_strtod, active, enabled\r
7269     # This value cannot be modified here.\r
7270     # Flavor: data\r
7271     # Current_value: 1\r
7272     # Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT \r
7273     #     CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1\r
7274     #   --> 1\r
7276     # The following properties are affected by this value\r
7277     # interface CYGINT_ISO_STDLIB_STRCONV_FLOAT\r
7278     #     Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT \r
7279     # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT\r
7280     #     Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT\r
7281     # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT\r
7282     #     DefaultValue:  0 != CYGPKG_LIBM &&\r
7283     #                                 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT \r
7284 };\r
7286 # String to FP conversion function implementation header\r
7288 cdl_option CYGBLD_ISO_STDLIB_STRCONV_FLOAT_HEADER {\r
7289     # Flavor: booldata\r
7290     # No user value, uncomment the following line to provide one.\r
7291     # user_value 0 0\r
7292     # value_source default\r
7293     # Default value: 0 0\r
7294 };\r
7296 # Random number generator implementations\r
7298 cdl_interface CYGINT_ISO_RAND {\r
7299     # Implemented by CYGIMP_LIBC_RAND_SIMPLEST, active, disabled\r
7300     # Implemented by CYGIMP_LIBC_RAND_SIMPLE1, active, enabled\r
7301     # Implemented by CYGIMP_LIBC_RAND_KNUTH1, active, disabled\r
7302     # This value cannot be modified here.\r
7303     # Flavor: data\r
7304     # Current_value: 1\r
7305     # Requires:  1 >= CYGINT_ISO_RAND \r
7306     #     CYGINT_ISO_RAND == 1\r
7307     #   --> 1\r
7309     # The following properties are affected by this value\r
7310     # interface CYGINT_ISO_RAND\r
7311     #     Requires:  1 >= CYGINT_ISO_RAND \r
7312 };\r
7314 # Random number generator implementation header\r
7316 cdl_option CYGBLD_ISO_RAND_HEADER {\r
7317     # Flavor: booldata\r
7318     # No user value, uncomment the following line to provide one.\r
7319     # user_value 0 0\r
7320     # value_source default\r
7321     # Default value: 0 0\r
7322 };\r
7324 # Malloc implementations\r
7326 cdl_interface CYGINT_ISO_MALLOC {\r
7327     # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled\r
7328     # This value cannot be modified here.\r
7329     # Flavor: data\r
7330     # Current_value: 1\r
7331     # Requires:  1 >= CYGINT_ISO_MALLOC \r
7332     #     CYGINT_ISO_MALLOC == 1\r
7333     #   --> 1\r
7335     # The following properties are affected by this value\r
7336     # interface CYGINT_ISO_MALLOC\r
7337     #     Requires:  1 >= CYGINT_ISO_MALLOC \r
7338     # component CYGPKG_IO_SERIAL_TERMIOS\r
7339     #     Requires: CYGINT_ISO_MALLOC\r
7340     # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC\r
7341     #     Requires: CYGINT_ISO_MALLOC\r
7342     # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC\r
7343     #     DefaultValue:  0 != CYGINT_ISO_MALLOC \r
7344     # component CYGPKG_LIBC_STDIO_OPEN\r
7345     #     Requires: CYGINT_ISO_MALLOC\r
7346     # component CYGPKG_LIBC_STDIO_OPEN\r
7347     #     DefaultValue:  0 != CYGINT_ISO_MALLOC \r
7348     # option CYGFUN_LIBC_STRING_STRDUP\r
7349     #     ActiveIf: CYGINT_ISO_MALLOC\r
7350 };\r
7352 # Malloc implementation header\r
7354 cdl_option CYGBLD_ISO_MALLOC_HEADER {\r
7355     # Flavor: booldata\r
7356     # No user value, uncomment the following line to provide one.\r
7357     # user_value 0 0\r
7358     # value_source default\r
7359     # Default value: 0 0\r
7360 };\r
7362 # Mallinfo() implementations\r
7364 cdl_interface CYGINT_ISO_MALLINFO {\r
7365     # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled\r
7366     # This value cannot be modified here.\r
7367     # Flavor: data\r
7368     # Current_value: 1\r
7369     # Requires:  1 >= CYGINT_ISO_MALLINFO \r
7370     #     CYGINT_ISO_MALLINFO == 1\r
7371     #   --> 1\r
7373     # The following properties are affected by this value\r
7374     # interface CYGINT_ISO_MALLINFO\r
7375     #     Requires:  1 >= CYGINT_ISO_MALLINFO \r
7376 };\r
7378 # Mallinfo() implementation header\r
7380 cdl_option CYGBLD_ISO_MALLINFO_HEADER {\r
7381     # Flavor: booldata\r
7382     # No user value, uncomment the following line to provide one.\r
7383     # user_value 0 0\r
7384     # value_source default\r
7385     # Default value: 0 0\r
7386 };\r
7388 # Program exit functionality implementations\r
7390 cdl_interface CYGINT_ISO_EXIT {\r
7391     # Implemented by CYGPKG_LIBC_STARTUP, active, enabled\r
7392     # This value cannot be modified here.\r
7393     # Flavor: data\r
7394     # Current_value: 1\r
7395     # Requires:  1 >= CYGINT_ISO_EXIT \r
7396     #     CYGINT_ISO_EXIT == 1\r
7397     #   --> 1\r
7399     # The following properties are affected by this value\r
7400     # interface CYGINT_ISO_EXIT\r
7401     #     Requires:  1 >= CYGINT_ISO_EXIT \r
7402     # option CYGFUN_INFRA_DUMMY_ABORT\r
7403     #     Requires: !CYGINT_ISO_EXIT\r
7404     # option CYGFUN_INFRA_DUMMY_ABORT\r
7405     #     DefaultValue:  CYGINT_ISO_EXIT == 0 \r
7406 };\r
7408 # Program exit functionality implementation header\r
7410 cdl_option CYGBLD_ISO_EXIT_HEADER {\r
7411     # Flavor: booldata\r
7412     # No user value, uncomment the following line to provide one.\r
7413     # user_value 0 0\r
7414     # value_source default\r
7415     # Default value: 0 0\r
7416 };\r
7418 # Program environment implementations\r
7420 cdl_interface CYGINT_ISO_STDLIB_ENVIRON {\r
7421     # Implemented by CYGPKG_LIBC_STDLIB, active, enabled\r
7422     # This value cannot be modified here.\r
7423     # Flavor: data\r
7424     # Current_value: 1\r
7425     # Requires:  1 >= CYGINT_ISO_STDLIB_ENVIRON \r
7426     #     CYGINT_ISO_STDLIB_ENVIRON == 1\r
7427     #   --> 1\r
7429     # The following properties are affected by this value\r
7430     # interface CYGINT_ISO_STDLIB_ENVIRON\r
7431     #     Requires:  1 >= CYGINT_ISO_STDLIB_ENVIRON \r
7432 };\r
7434 # Program environment implementation header\r
7436 cdl_option CYGBLD_ISO_STDLIB_ENVIRON_HEADER {\r
7437     # Flavor: booldata\r
7438     # No user value, uncomment the following line to provide one.\r
7439     # user_value 0 0\r
7440     # value_source default\r
7441     # Default value: 0 0\r
7442 };\r
7444 # system() implementations\r
7446 cdl_interface CYGINT_ISO_STDLIB_SYSTEM {\r
7447     # Implemented by CYGPKG_LIBC_STDLIB, active, enabled\r
7448     # This value cannot be modified here.\r
7449     # Flavor: data\r
7450     # Current_value: 1\r
7451     # Requires:  1 >= CYGINT_ISO_STDLIB_SYSTEM \r
7452     #     CYGINT_ISO_STDLIB_SYSTEM == 1\r
7453     #   --> 1\r
7455     # The following properties are affected by this value\r
7456     # interface CYGINT_ISO_STDLIB_SYSTEM\r
7457     #     Requires:  1 >= CYGINT_ISO_STDLIB_SYSTEM \r
7458 };\r
7460 # system() implementation header\r
7462 cdl_option CYGBLD_ISO_STDLIB_SYSTEM_HEADER {\r
7463     # Flavor: booldata\r
7464     # No user value, uncomment the following line to provide one.\r
7465     # user_value 0 0\r
7466     # value_source default\r
7467     # Default value: 0 0\r
7468 };\r
7470 # bsearch() implementations\r
7472 cdl_interface CYGINT_ISO_BSEARCH {\r
7473     # Implemented by CYGPKG_LIBC_STDLIB, active, enabled\r
7474     # This value cannot be modified here.\r
7475     # Flavor: data\r
7476     # Current_value: 1\r
7477     # Requires:  1 >= CYGINT_ISO_BSEARCH \r
7478     #     CYGINT_ISO_BSEARCH == 1\r
7479     #   --> 1\r
7481     # The following properties are affected by this value\r
7482     # interface CYGINT_ISO_BSEARCH\r
7483     #     Requires:  1 >= CYGINT_ISO_BSEARCH \r
7484 };\r
7486 # bsearch() implementation header\r
7488 cdl_option CYGBLD_ISO_BSEARCH_HEADER {\r
7489     # Flavor: booldata\r
7490     # No user value, uncomment the following line to provide one.\r
7491     # user_value 0 0\r
7492     # value_source default\r
7493     # Default value: 0 0\r
7494 };\r
7496 # qsort() implementations\r
7498 cdl_interface CYGINT_ISO_QSORT {\r
7499     # Implemented by CYGPKG_LIBC_STDLIB, active, enabled\r
7500     # This value cannot be modified here.\r
7501     # Flavor: data\r
7502     # Current_value: 1\r
7503     # Requires:  1 >= CYGINT_ISO_STDLIB_QSORT \r
7504     #     CYGINT_ISO_STDLIB_QSORT (unknown) == 0\r
7505     #   --> 1\r
7507     # The following properties are affected by this value\r
7508 };\r
7510 # qsort() implementation header\r
7512 cdl_option CYGBLD_ISO_QSORT_HEADER {\r
7513     # Flavor: booldata\r
7514     # No user value, uncomment the following line to provide one.\r
7515     # user_value 0 0\r
7516     # value_source default\r
7517     # Default value: 0 0\r
7518 };\r
7520 # abs()/labs() implementations\r
7522 cdl_interface CYGINT_ISO_ABS {\r
7523     # Implemented by CYGPKG_LIBC_STDLIB, active, enabled\r
7524     # This value cannot be modified here.\r
7525     # Flavor: data\r
7526     # Current_value: 1\r
7527     # Requires:  1 >= CYGINT_ISO_STDLIB_ABS \r
7528     #     CYGINT_ISO_STDLIB_ABS (unknown) == 0\r
7529     #   --> 1\r
7531     # The following properties are affected by this value\r
7532     # package CYGPKG_LIBC_TIME\r
7533     #     Requires: CYGINT_ISO_ABS\r
7534 };\r
7536 # abs()/labs() implementation header\r
7538 cdl_option CYGBLD_ISO_STDLIB_ABS_HEADER {\r
7539     # Flavor: booldata\r
7540     # No user value, uncomment the following line to provide one.\r
7541     # user_value 0 0\r
7542     # The inferred value should not be edited directly.\r
7543     inferred_value 1 <cyg/libc/stdlib/abs.inl>\r
7544     # value_source inferred\r
7545     # Default value: 0 0\r
7547     # The following properties are affected by this value\r
7548     # option CYGIMP_LIBC_STDLIB_INLINE_ABS\r
7549     #     Requires:  CYGBLD_ISO_STDLIB_ABS_HEADER ==  "<cyg/libc/stdlib/abs.inl>" \r
7550 };\r
7552 # div()/ldiv() implementations\r
7554 cdl_interface CYGINT_ISO_DIV {\r
7555     # Implemented by CYGPKG_LIBC_STDLIB, active, enabled\r
7556     # This value cannot be modified here.\r
7557     # Flavor: data\r
7558     # Current_value: 1\r
7559     # Requires:  1 >= CYGINT_ISO_STDLIB_DIV \r
7560     #     CYGINT_ISO_STDLIB_DIV (unknown) == 0\r
7561     #   --> 1\r
7563     # The following properties are affected by this value\r
7564     # package CYGPKG_LIBC_TIME\r
7565     #     Requires: CYGINT_ISO_DIV\r
7566 };\r
7568 # div()/ldiv() implementation header\r
7570 cdl_option CYGBLD_ISO_STDLIB_DIV_HEADER {\r
7571     # Flavor: booldata\r
7572     # No user value, uncomment the following line to provide one.\r
7573     # user_value 0 0\r
7574     # The inferred value should not be edited directly.\r
7575     inferred_value 1 <cyg/libc/stdlib/div.inl>\r
7576     # value_source inferred\r
7577     # Default value: 0 0\r
7579     # The following properties are affected by this value\r
7580     # option CYGIMP_LIBC_STDLIB_INLINE_DIV\r
7581     #     Requires:  CYGBLD_ISO_STDLIB_DIV_HEADER ==  "<cyg/libc/stdlib/div.inl>" \r
7582 };\r
7584 # Header defining the implementation's MB_CUR_MAX\r
7586 cdl_option CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER {\r
7587     # Flavor: booldata\r
7588     # No user value, uncomment the following line to provide one.\r
7589     # user_value 0 0\r
7590     # value_source default\r
7591     # Default value: 0 0\r
7593     # The following properties are affected by this value\r
7594     # interface CYGINT_LIBC_I18N_MB_REQUIRED\r
7595     #     Requires:  CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER ==  "<cyg/libc/i18n/mb.h>" \r
7596 };\r
7598 # Multibyte character implementations\r
7600 cdl_interface CYGINT_ISO_STDLIB_MULTIBYTE {\r
7601     # Implemented by CYGPKG_LIBC_I18N, active, enabled\r
7602     # This value cannot be modified here.\r
7603     # Flavor: data\r
7604     # Current_value: 1\r
7605     # Requires:  1 >= CYGINT_ISO_STDLIB_MULTIBYTE \r
7606     #     CYGINT_ISO_STDLIB_MULTIBYTE == 1\r
7607     #   --> 1\r
7609     # The following properties are affected by this value\r
7610     # interface CYGINT_ISO_STDLIB_MULTIBYTE\r
7611     #     Requires:  1 >= CYGINT_ISO_STDLIB_MULTIBYTE \r
7612 };\r
7614 # Multibyte character implementation header\r
7616 cdl_option CYGBLD_ISO_STDLIB_MULTIBYTE_HEADER {\r
7617     # Flavor: booldata\r
7618     # No user value, uncomment the following line to provide one.\r
7619     # user_value 0 0\r
7620     # value_source default\r
7621     # Default value: 0 0\r
7622 };\r
7624 # <\r
7625 # String functions\r
7627 cdl_component CYGPKG_ISO_STRING {\r
7628     # There is no associated value.\r
7629 };\r
7631 # >\r
7632 # Number of implementations of strerror() function\r
7634 cdl_interface CYGINT_ISO_STRERROR {\r
7635     # Implemented by CYGPKG_ERROR_STRERROR, active, enabled\r
7636     # This value cannot be modified here.\r
7637     # Flavor: booldata\r
7638     # Current value: 1 1\r
7639     # Requires:  1 >= CYGINT_ISO_STRERROR \r
7640     #     CYGINT_ISO_STRERROR == 1\r
7641     #   --> 1\r
7643     # The following properties are affected by this value\r
7644     # interface CYGINT_ISO_STRERROR\r
7645     #     Requires:  1 >= CYGINT_ISO_STRERROR \r
7646     # package CYGPKG_LIBC_STDIO\r
7647     #     Requires: CYGINT_ISO_STRERROR\r
7648 };\r
7650 # strerror() implementation header\r
7652 cdl_option CYGBLD_ISO_STRERROR_HEADER {\r
7653     # Flavor: booldata\r
7654     # No user value, uncomment the following line to provide one.\r
7655     # user_value 0 0\r
7656     # The inferred value should not be edited directly.\r
7657     inferred_value 1 <cyg/error/strerror.h>\r
7658     # value_source inferred\r
7659     # Default value: 0 0\r
7661     # The following properties are affected by this value\r
7662     # option CYGPKG_ERROR_STRERROR\r
7663     #     Requires:  CYGBLD_ISO_STRERROR_HEADER == "<cyg/error/strerror.h>" \r
7664 };\r
7666 # memcpy() implementation header\r
7668 cdl_option CYGBLD_ISO_MEMCPY_HEADER {\r
7669     # Flavor: booldata\r
7670     # No user value, uncomment the following line to provide one.\r
7671     # user_value 0 0\r
7672     # value_source default\r
7673     # Default value: 0 0\r
7674 };\r
7676 # memset() implementation header\r
7678 cdl_option CYGBLD_ISO_MEMSET_HEADER {\r
7679     # Flavor: booldata\r
7680     # No user value, uncomment the following line to provide one.\r
7681     # user_value 0 0\r
7682     # value_source default\r
7683     # Default value: 0 0\r
7684 };\r
7686 # Number of implementations of strtok_r() function\r
7688 cdl_interface CYGINT_ISO_STRTOK_R {\r
7689     # Implemented by CYGPKG_LIBC_STRING, active, enabled\r
7690     # This value cannot be modified here.\r
7691     # Flavor: booldata\r
7692     # Current value: 1 1\r
7693     # Requires:  1 >= CYGINT_ISO_STRTOK_R \r
7694     #     CYGINT_ISO_STRTOK_R == 1\r
7695     #   --> 1\r
7697     # The following properties are affected by this value\r
7698     # interface CYGINT_ISO_STRTOK_R\r
7699     #     Requires:  1 >= CYGINT_ISO_STRTOK_R \r
7700 };\r
7702 # strtok_r() implementation header\r
7704 cdl_option CYGBLD_ISO_STRTOK_R_HEADER {\r
7705     # Flavor: booldata\r
7706     # No user value, uncomment the following line to provide one.\r
7707     # user_value 0 0\r
7708     # The inferred value should not be edited directly.\r
7709     inferred_value 1 <cyg/libc/string/string.h>\r
7710     # value_source inferred\r
7711     # Default value: 0 0\r
7713     # The following properties are affected by this value\r
7714     # package CYGPKG_LIBC_STRING\r
7715     #     Requires:  CYGBLD_ISO_STRTOK_R_HEADER ==  "<cyg/libc/string/string.h>" \r
7716 };\r
7718 # Number of implementations of locale-specific string  functions\r
7719 # This covers locale-dependent string functions such as strcoll()\r
7720 # and strxfrm().\r
7722 cdl_interface CYGINT_ISO_STRING_LOCALE_FUNCS {\r
7723     # Implemented by CYGPKG_LIBC_STRING, active, enabled\r
7724     # This value cannot be modified here.\r
7725     # Flavor: booldata\r
7726     # Current value: 1 1\r
7727     # Requires:  1 >= CYGINT_ISO_STRING_LOCALE_FUNCS \r
7728     #     CYGINT_ISO_STRING_LOCALE_FUNCS == 1\r
7729     #   --> 1\r
7731     # The following properties are affected by this value\r
7732     # interface CYGINT_ISO_STRING_LOCALE_FUNCS\r
7733     #     Requires:  1 >= CYGINT_ISO_STRING_LOCALE_FUNCS \r
7734 };\r
7736 # Locale-specific string functions' implementation  header\r
7737 # This covers locale-dependent string functions such as strcoll()\r
7738 # and strxfrm().\r
7740 cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER {\r
7741     # Flavor: booldata\r
7742     # No user value, uncomment the following line to provide one.\r
7743     # user_value 0 0\r
7744     # The inferred value should not be edited directly.\r
7745     inferred_value 1 <cyg/libc/string/string.h>\r
7746     # value_source inferred\r
7747     # Default value: 0 0\r
7749     # The following properties are affected by this value\r
7750     # package CYGPKG_LIBC_STRING\r
7751     #     Requires:  CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER ==  "<cyg/libc/string/string.h>" \r
7752 };\r
7754 # Number of implementations of BSD string functions\r
7756 cdl_interface CYGINT_ISO_STRING_BSD_FUNCS {\r
7757     # Implemented by CYGFUN_LIBC_STRING_BSD_FUNCS, active, enabled\r
7758     # This value cannot be modified here.\r
7759     # Flavor: booldata\r
7760     # Current value: 1 1\r
7761     # Requires:  1 >= CYGINT_ISO_STRING_BSD_FUNCS \r
7762     #     CYGINT_ISO_STRING_BSD_FUNCS == 1\r
7763     #   --> 1\r
7765     # The following properties are affected by this value\r
7766     # interface CYGINT_ISO_STRING_BSD_FUNCS\r
7767     #     Requires:  1 >= CYGINT_ISO_STRING_BSD_FUNCS \r
7768     # option CYGFUN_LIBC_TIME_POSIX\r
7769     #     Requires: CYGINT_ISO_STRING_BSD_FUNCS\r
7770 };\r
7772 # BSD string functions' implementation header\r
7774 cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER {\r
7775     # Flavor: booldata\r
7776     # No user value, uncomment the following line to provide one.\r
7777     # user_value 0 0\r
7778     # The inferred value should not be edited directly.\r
7779     inferred_value 1 <cyg/libc/string/bsdstring.h>\r
7780     # value_source inferred\r
7781     # Default value: 0 0\r
7783     # The following properties are affected by this value\r
7784     # option CYGFUN_LIBC_STRING_BSD_FUNCS\r
7785     #     Requires:  CYGBLD_ISO_STRING_BSD_FUNCS_HEADER ==  "<cyg/libc/string/bsdstring.h>" \r
7786 };\r
7788 # Number of implementations of other mem*() functions\r
7790 cdl_interface CYGINT_ISO_STRING_MEMFUNCS {\r
7791     # Implemented by CYGPKG_LIBC_STRING, active, enabled\r
7792     # This value cannot be modified here.\r
7793     # Flavor: booldata\r
7794     # Current value: 1 1\r
7795     # Requires:  1 >= CYGINT_ISO_STRING_MEMFUNCS \r
7796     #     CYGINT_ISO_STRING_MEMFUNCS == 1\r
7797     #   --> 1\r
7799     # The following properties are affected by this value\r
7800     # interface CYGINT_ISO_STRING_MEMFUNCS\r
7801     #     Requires:  1 >= CYGINT_ISO_STRING_MEMFUNCS \r
7802     # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY\r
7803     #     Requires: CYGINT_ISO_STRING_MEMFUNCS\r
7804     # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY\r
7805     #     DefaultValue:  (0 != CYGPKG_ISOINFRA) && (0 != CYGINT_ISO_STRING_MEMFUNCS) \r
7806     # package CYGPKG_LIBC_STDIO\r
7807     #     Requires: CYGINT_ISO_STRING_MEMFUNCS\r
7808 };\r
7810 # Other mem*() functions' implementation header\r
7812 cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER {\r
7813     # Flavor: booldata\r
7814     # No user value, uncomment the following line to provide one.\r
7815     # user_value 0 0\r
7816     # The inferred value should not be edited directly.\r
7817     inferred_value 1 <cyg/libc/string/string.h>\r
7818     # value_source inferred\r
7819     # Default value: 0 0\r
7821     # The following properties are affected by this value\r
7822     # package CYGPKG_LIBC_STRING\r
7823     #     Requires:  CYGBLD_ISO_STRING_MEMFUNCS_HEADER ==  "<cyg/libc/string/string.h>" \r
7824 };\r
7826 # Number of implementations of other ISO C str*()  functions\r
7827 # This covers the other str*() functions defined by ISO C.\r
7829 cdl_interface CYGINT_ISO_STRING_STRFUNCS {\r
7830     # Implemented by CYGPKG_LIBC_STRING, active, enabled\r
7831     # This value cannot be modified here.\r
7832     # Flavor: booldata\r
7833     # Current value: 1 1\r
7834     # Requires:  1 >= CYGINT_ISO_STRING_STRFUNCS \r
7835     #     CYGINT_ISO_STRING_STRFUNCS == 1\r
7836     #   --> 1\r
7838     # The following properties are affected by this value\r
7839     # interface CYGINT_ISO_STRING_STRFUNCS\r
7840     #     Requires:  1 >= CYGINT_ISO_STRING_STRFUNCS \r
7841     # option CYGFUN_INFRA_DUMMY_STRLEN\r
7842     #     Requires: !CYGINT_ISO_STRING_STRFUNCS\r
7843     # option CYGFUN_INFRA_DUMMY_STRLEN\r
7844     #     DefaultValue:  CYGINT_ISO_STRING_STRFUNCS == 0 \r
7845     # package CYGPKG_LIBC_STDIO\r
7846     #     Requires: CYGINT_ISO_STRING_STRFUNCS\r
7847     # package CYGPKG_LIBC_STDLIB\r
7848     #     Requires: CYGINT_ISO_STRING_STRFUNCS\r
7849 };\r
7851 # Other ISO C str*() functions' implementation  header\r
7852 # This covers the other str*() functions defined by ISO C.\r
7854 cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER {\r
7855     # Flavor: booldata\r
7856     # No user value, uncomment the following line to provide one.\r
7857     # user_value 0 0\r
7858     # The inferred value should not be edited directly.\r
7859     inferred_value 1 <cyg/libc/string/string.h>\r
7860     # value_source inferred\r
7861     # Default value: 0 0\r
7863     # The following properties are affected by this value\r
7864     # package CYGPKG_LIBC_STRING\r
7865     #     Requires:  CYGBLD_ISO_STRING_STRFUNCS_HEADER ==  "<cyg/libc/string/string.h>" \r
7866 };\r
7868 # <\r
7869 # Clock and time functionality\r
7871 cdl_component CYGPKG_ISO_TIME {\r
7872     # There is no associated value.\r
7873 };\r
7875 # >\r
7876 # time_t implementation header\r
7878 cdl_option CYGBLD_ISO_TIME_T_HEADER {\r
7879     # Flavor: booldata\r
7880     # No user value, uncomment the following line to provide one.\r
7881     # user_value 0 0\r
7882     # value_source default\r
7883     # Default value: 0 0\r
7884 };\r
7886 # clock_t implementation header\r
7888 cdl_option CYGBLD_ISO_CLOCK_T_HEADER {\r
7889     # Flavor: booldata\r
7890     # No user value, uncomment the following line to provide one.\r
7891     # user_value 0 0\r
7892     # value_source default\r
7893     # Default value: 0 0\r
7894 };\r
7896 # struct timeval implementation header\r
7898 cdl_option CYGBLD_ISO_STRUCTTIMEVAL_HEADER {\r
7899     # Flavor: booldata\r
7900     # No user value, uncomment the following line to provide one.\r
7901     # user_value 0 0\r
7902     # value_source default\r
7903     # Default value: 0 0\r
7904 };\r
7906 # fnmatch implementation header\r
7908 cdl_option CYGBLD_ISO_FNMATCH_HEADER {\r
7909     # Flavor: booldata\r
7910     # No user value, uncomment the following line to provide one.\r
7911     # user_value 0 0\r
7912     # value_source default\r
7913     # Default value: 0 0\r
7914 };\r
7916 # Number of implementations of POSIX timer types\r
7918 cdl_interface CYGINT_ISO_POSIX_TIMER_TYPES {\r
7919     # No options implement this inferface\r
7920     # This value cannot be modified here.\r
7921     # Flavor: booldata\r
7922     # Current value: 0 0\r
7923     # Requires:  1 >= CYGINT_ISO_POSIX_TIMER_TYPES \r
7924     #     CYGINT_ISO_POSIX_TIMER_TYPES == 0\r
7925     #   --> 1\r
7927     # The following properties are affected by this value\r
7928     # interface CYGINT_ISO_POSIX_TIMER_TYPES\r
7929     #     Requires:  1 >= CYGINT_ISO_POSIX_TIMER_TYPES \r
7930 };\r
7932 # POSIX timer types implementation header\r
7934 cdl_option CYGBLD_ISO_POSIX_TIMER_TYPES_HEADER {\r
7935     # Flavor: booldata\r
7936     # No user value, uncomment the following line to provide one.\r
7937     # user_value 0 0\r
7938     # value_source default\r
7939     # Default value: 0 0\r
7940 };\r
7942 # Number of implementations of POSIX clock types\r
7944 cdl_interface CYGINT_ISO_POSIX_CLOCK_TYPES {\r
7945     # No options implement this inferface\r
7946     # This value cannot be modified here.\r
7947     # Flavor: booldata\r
7948     # Current value: 0 0\r
7949     # Requires:  1 >= CYGINT_ISO_POSIX_CLOCK_TYPES \r
7950     #     CYGINT_ISO_POSIX_CLOCK_TYPES == 0\r
7951     #   --> 1\r
7953     # The following properties are affected by this value\r
7954     # interface CYGINT_ISO_POSIX_CLOCK_TYPES\r
7955     #     Requires:  1 >= CYGINT_ISO_POSIX_CLOCK_TYPES \r
7956 };\r
7958 # POSIX clock types implementation header\r
7960 cdl_option CYGBLD_ISO_POSIX_CLOCK_TYPES_HEADER {\r
7961     # Flavor: booldata\r
7962     # No user value, uncomment the following line to provide one.\r
7963     # user_value 0 0\r
7964     # value_source default\r
7965     # Default value: 0 0\r
7966 };\r
7968 # Number of implementations of ISO C types\r
7970 cdl_interface CYGINT_ISO_C_TIME_TYPES {\r
7971     # Implemented by CYGPKG_LIBC_TIME, active, enabled\r
7972     # This value cannot be modified here.\r
7973     # Flavor: booldata\r
7974     # Current value: 1 1\r
7975     # Requires:  1 >= CYGINT_ISO_C_TIME_TYPES \r
7976     #     CYGINT_ISO_C_TIME_TYPES == 1\r
7977     #   --> 1\r
7979     # The following properties are affected by this value\r
7980     # interface CYGINT_ISO_C_TIME_TYPES\r
7981     #     Requires:  1 >= CYGINT_ISO_C_TIME_TYPES \r
7982 };\r
7984 # ISO C time types implementation header\r
7986 cdl_option CYGBLD_ISO_C_TIME_TYPES_HEADER {\r
7987     # Flavor: booldata\r
7988     # No user value, uncomment the following line to provide one.\r
7989     # user_value 0 0\r
7990     # The inferred value should not be edited directly.\r
7991     inferred_value 1 <cyg/libc/time/time.h>\r
7992     # value_source inferred\r
7993     # Default value: 0 0\r
7995     # The following properties are affected by this value\r
7996     # package CYGPKG_LIBC_TIME\r
7997     #     Requires:  CYGBLD_ISO_C_TIME_TYPES_HEADER == "<cyg/libc/time/time.h>" \r
7998 };\r
8000 # Number of implementations of POSIX timers\r
8002 cdl_interface CYGINT_ISO_POSIX_TIMERS {\r
8003     # No options implement this inferface\r
8004     # This value cannot be modified here.\r
8005     # Flavor: booldata\r
8006     # Current value: 0 0\r
8007     # Requires:  1 >= CYGINT_ISO_POSIX_TIMERS \r
8008     #     CYGINT_ISO_POSIX_TIMERS == 0\r
8009     #   --> 1\r
8011     # The following properties are affected by this value\r
8012     # interface CYGINT_ISO_POSIX_TIMERS\r
8013     #     Requires:  1 >= CYGINT_ISO_POSIX_TIMERS \r
8014 };\r
8016 # POSIX timer implementation header\r
8018 cdl_option CYGBLD_ISO_POSIX_TIMERS_HEADER {\r
8019     # Flavor: booldata\r
8020     # No user value, uncomment the following line to provide one.\r
8021     # user_value 0 0\r
8022     # value_source default\r
8023     # Default value: 0 0\r
8024 };\r
8026 # Number of implementations of POSIX clocks\r
8028 cdl_interface CYGINT_ISO_POSIX_CLOCKS {\r
8029     # No options implement this inferface\r
8030     # This value cannot be modified here.\r
8031     # Flavor: booldata\r
8032     # Current value: 0 0\r
8033     # Requires:  1 >= CYGINT_ISO_POSIX_CLOCKS \r
8034     #     CYGINT_ISO_POSIX_CLOCKS == 0\r
8035     #   --> 1\r
8037     # The following properties are affected by this value\r
8038     # interface CYGINT_ISO_POSIX_CLOCKS\r
8039     #     Requires:  1 >= CYGINT_ISO_POSIX_CLOCKS \r
8040 };\r
8042 # POSIX clocks implementation header\r
8044 cdl_option CYGBLD_ISO_POSIX_CLOCKS_HEADER {\r
8045     # Flavor: booldata\r
8046     # No user value, uncomment the following line to provide one.\r
8047     # user_value 0 0\r
8048     # value_source default\r
8049     # Default value: 0 0\r
8050 };\r
8052 # Number of implementations of ISO C clock functions\r
8054 cdl_interface CYGINT_ISO_C_CLOCK_FUNCS {\r
8055     # Implemented by CYGPKG_LIBC_TIME, active, enabled\r
8056     # This value cannot be modified here.\r
8057     # Flavor: booldata\r
8058     # Current value: 1 1\r
8059     # Requires:  1 >= CYGINT_ISO_C_CLOCK_FUNCS \r
8060     #     CYGINT_ISO_C_CLOCK_FUNCS == 1\r
8061     #   --> 1\r
8063     # The following properties are affected by this value\r
8064     # interface CYGINT_ISO_C_CLOCK_FUNCS\r
8065     #     Requires:  1 >= CYGINT_ISO_C_CLOCK_FUNCS \r
8066 };\r
8068 # ISO C clock functions' implementation header\r
8070 cdl_option CYGBLD_ISO_C_CLOCK_FUNCS_HEADER {\r
8071     # Flavor: booldata\r
8072     # No user value, uncomment the following line to provide one.\r
8073     # user_value 0 0\r
8074     # The inferred value should not be edited directly.\r
8075     inferred_value 1 <cyg/libc/time/time.h>\r
8076     # value_source inferred\r
8077     # Default value: 0 0\r
8079     # The following properties are affected by this value\r
8080     # package CYGPKG_LIBC_TIME\r
8081     #     Requires:  CYGBLD_ISO_C_CLOCK_FUNCS_HEADER ==  "<cyg/libc/time/time.h>" \r
8082 };\r
8084 # Number of implementations of tzset() function\r
8086 cdl_interface CYGINT_ISO_TZSET {\r
8087     # No options implement this inferface\r
8088     # This value cannot be modified here.\r
8089     # Flavor: booldata\r
8090     # Current value: 0 0\r
8091     # Requires:  1 >= CYGINT_ISO_TZSET \r
8092     #     CYGINT_ISO_TZSET == 0\r
8093     #   --> 1\r
8095     # The following properties are affected by this value\r
8096     # interface CYGINT_ISO_TZSET\r
8097     #     Requires:  1 >= CYGINT_ISO_TZSET \r
8098 };\r
8100 # tzset() implementation header\r
8102 cdl_option CYGBLD_ISO_TZSET_HEADER {\r
8103     # Flavor: booldata\r
8104     # No user value, uncomment the following line to provide one.\r
8105     # user_value 0 0\r
8106     # value_source default\r
8107     # Default value: 0 0\r
8108 };\r
8110 # <\r
8111 # Signal functionality\r
8113 cdl_component CYGPKG_ISO_SIGNAL {\r
8114     # There is no associated value.\r
8115 };\r
8117 # >\r
8118 # Number of implementations of signal numbers\r
8120 cdl_interface CYGINT_ISO_SIGNAL_NUMBERS {\r
8121     # Implemented by CYGPKG_LIBC_SIGNALS, active, enabled\r
8122     # This value cannot be modified here.\r
8123     # Flavor: data\r
8124     # Current_value: 1\r
8125     # Requires:  1 >= CYGINT_ISO_SIGNAL_NUMBERS \r
8126     #     CYGINT_ISO_SIGNAL_NUMBERS == 1\r
8127     #   --> 1\r
8129     # The following properties are affected by this value\r
8130     # interface CYGINT_ISO_SIGNAL_NUMBERS\r
8131     #     Requires:  1 >= CYGINT_ISO_SIGNAL_NUMBERS \r
8132     # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS\r
8133     #     Requires: CYGINT_ISO_SIGNAL_NUMBERS\r
8134     # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS\r
8135     #     DefaultValue:  CYGINT_ISO_SIGNAL_NUMBERS != 0 &&  CYGINT_ISO_SIGNAL_IMPL != 0 \r
8136 };\r
8138 # Signal numbering implementation header\r
8139 # This header provides the mapping of signal\r
8140 # names (e.g. SIGBUS) to numbers.\r
8142 cdl_option CYGBLD_ISO_SIGNAL_NUMBERS_HEADER {\r
8143     # Flavor: booldata\r
8144     # No user value, uncomment the following line to provide one.\r
8145     # user_value 0 0\r
8146     # The inferred value should not be edited directly.\r
8147     inferred_value 1 <cyg/libc/signals/signal.h>\r
8148     # value_source inferred\r
8149     # Default value: 0 0\r
8151     # The following properties are affected by this value\r
8152     # package CYGPKG_LIBC_SIGNALS\r
8153     #     Requires:  CYGBLD_ISO_SIGNAL_NUMBERS_HEADER ==  "<cyg/libc/signals/signal.h>" \r
8154 };\r
8156 # Number of signal implementations\r
8158 cdl_interface CYGINT_ISO_SIGNAL_IMPL {\r
8159     # Implemented by CYGPKG_LIBC_SIGNALS, active, enabled\r
8160     # This value cannot be modified here.\r
8161     # Flavor: data\r
8162     # Current_value: 1\r
8163     # Requires:  1 >= CYGINT_ISO_SIGNAL_IMPL \r
8164     #     CYGINT_ISO_SIGNAL_IMPL == 1\r
8165     #   --> 1\r
8167     # The following properties are affected by this value\r
8168     # interface CYGINT_ISO_SIGNAL_IMPL\r
8169     #     Requires:  1 >= CYGINT_ISO_SIGNAL_IMPL \r
8170     # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS\r
8171     #     Requires: CYGINT_ISO_SIGNAL_IMPL\r
8172     # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS\r
8173     #     DefaultValue:  CYGINT_ISO_SIGNAL_NUMBERS != 0 &&  CYGINT_ISO_SIGNAL_IMPL != 0 \r
8174 };\r
8176 # Signals implementation header\r
8178 cdl_option CYGBLD_ISO_SIGNAL_IMPL_HEADER {\r
8179     # Flavor: booldata\r
8180     # No user value, uncomment the following line to provide one.\r
8181     # user_value 0 0\r
8182     # The inferred value should not be edited directly.\r
8183     inferred_value 1 <cyg/libc/signals/signal.h>\r
8184     # value_source inferred\r
8185     # Default value: 0 0\r
8187     # The following properties are affected by this value\r
8188     # package CYGPKG_LIBC_SIGNALS\r
8189     #     Requires:  CYGBLD_ISO_SIGNAL_IMPL_HEADER ==  "<cyg/libc/signals/signal.h>" \r
8190 };\r
8192 # POSIX real time signals feature test macro\r
8193 # This defines the POSIX feature test macro\r
8194 # that indicates that the POSIX real time signals\r
8195 # are present.\r
8197 cdl_interface CYGINT_POSIX_REALTIME_SIGNALS {\r
8198     # No options implement this inferface\r
8199     # This value cannot be modified here.\r
8200     # Flavor: data\r
8201     # Current_value: 0\r
8202     # Requires:  1 >= CYGINT_POSIX_REALTIME_SIGNALS \r
8203     #     CYGINT_POSIX_REALTIME_SIGNALS == 0\r
8204     #   --> 1\r
8206     # The following properties are affected by this value\r
8207     # interface CYGINT_POSIX_REALTIME_SIGNALS\r
8208     #     Requires:  1 >= CYGINT_POSIX_REALTIME_SIGNALS \r
8209 };\r
8211 # <\r
8212 # Non-local jumps functionality\r
8214 cdl_component CYGPKG_ISO_SETJMP {\r
8215     # There is no associated value.\r
8216 };\r
8218 # >\r
8219 # setjmp() / longjmp() implementations\r
8221 cdl_interface CYGINT_ISO_SETJMP {\r
8222     # Implemented by CYGPKG_LIBC_SETJMP, active, enabled\r
8223     # This value cannot be modified here.\r
8224     # Flavor: data\r
8225     # Current_value: 1\r
8226     # Requires:  1 >= CYGINT_ISO_SETJMP \r
8227     #     CYGINT_ISO_SETJMP == 1\r
8228     #   --> 1\r
8230     # The following properties are affected by this value\r
8231     # interface CYGINT_ISO_SETJMP\r
8232     #     Requires:  1 >= CYGINT_ISO_SETJMP \r
8233 };\r
8235 # setjmp() / longjmp() implementation header\r
8237 cdl_option CYGBLD_ISO_SETJMP_HEADER {\r
8238     # Flavor: booldata\r
8239     # No user value, uncomment the following line to provide one.\r
8240     # user_value 0 0\r
8241     # The inferred value should not be edited directly.\r
8242     inferred_value 1 <cyg/libc/setjmp/setjmp.h>\r
8243     # value_source inferred\r
8244     # Default value: 0 0\r
8246     # The following properties are affected by this value\r
8247     # package CYGPKG_LIBC_SETJMP\r
8248     #     Requires:  CYGBLD_ISO_SETJMP_HEADER == "<cyg/libc/setjmp/setjmp.h>" \r
8249 };\r
8251 # sigsetjmp() / siglongjmp() implementations\r
8253 cdl_interface CYGINT_ISO_SIGSETJMP {\r
8254     # No options implement this inferface\r
8255     # This value cannot be modified here.\r
8256     # Flavor: data\r
8257     # Current_value: 0\r
8258     # Requires:  1 >= CYGINT_ISO_SIGSETJMP \r
8259     #     CYGINT_ISO_SIGSETJMP == 0\r
8260     #   --> 1\r
8262     # The following properties are affected by this value\r
8263     # interface CYGINT_ISO_SIGSETJMP\r
8264     #     Requires:  1 >= CYGINT_ISO_SIGSETJMP \r
8265 };\r
8267 # sigsetjmp() / siglongjmp() implementation header\r
8269 cdl_option CYGBLD_ISO_SIGSETJMP_HEADER {\r
8270     # Flavor: booldata\r
8271     # No user value, uncomment the following line to provide one.\r
8272     # user_value 0 0\r
8273     # value_source default\r
8274     # Default value: 0 0\r
8275 };\r
8277 # <\r
8278 # Assertions implementation header\r
8280 cdl_option CYGBLD_ISO_ASSERT_HEADER {\r
8281     # Flavor: booldata\r
8282     # No user value, uncomment the following line to provide one.\r
8283     # user_value 0 0\r
8284     # value_source default\r
8285     # Default value: 0 0\r
8286 };\r
8288 # POSIX file control\r
8289 # This covers the POSIX file control definitions,\r
8290 # normally found in <fcntl.h>\r
8292 cdl_component CYGPKG_ISO_POSIX_FCNTL {\r
8293     # There is no associated value.\r
8294 };\r
8296 # >\r
8297 # POSIX open flags implementation header\r
8299 cdl_option CYGBLD_ISO_OFLAG_HEADER {\r
8300     # Flavor: booldata\r
8301     # No user value, uncomment the following line to provide one.\r
8302     # user_value 0 0\r
8303     # value_source default\r
8304     # Default value: 0 0\r
8305 };\r
8307 # POSIX fcntl() implementations\r
8309 cdl_interface CYGINT_ISO_FCNTL {\r
8310     # No options implement this inferface\r
8311     # This value cannot be modified here.\r
8312     # Flavor: data\r
8313     # Current_value: 0\r
8314     # Requires:  1 >= CYGINT_ISO_FCNTL \r
8315     #     CYGINT_ISO_FCNTL == 0\r
8316     #   --> 1\r
8318     # The following properties are affected by this value\r
8319     # interface CYGINT_ISO_FCNTL\r
8320     #     Requires:  1 >= CYGINT_ISO_FCNTL \r
8321 };\r
8323 # POSIX fcntl() implementation header\r
8325 cdl_option CYGBLD_ISO_FCNTL_HEADER {\r
8326     # Flavor: booldata\r
8327     # No user value, uncomment the following line to provide one.\r
8328     # user_value 0 0\r
8329     # value_source default\r
8330     # Default value: 0 0\r
8331 };\r
8333 # POSIX file open implementations\r
8335 cdl_interface CYGINT_ISO_OPEN {\r
8336     # No options implement this inferface\r
8337     # This value cannot be modified here.\r
8338     # Flavor: data\r
8339     # Current_value: 0\r
8340     # Requires:  1 >= CYGINT_ISO_OPEN \r
8341     #     CYGINT_ISO_OPEN == 0\r
8342     #   --> 1\r
8344     # The following properties are affected by this value\r
8345     # interface CYGINT_ISO_OPEN\r
8346     #     Requires:  1 >= CYGINT_ISO_OPEN \r
8347 };\r
8349 # POSIX file open implementation header\r
8351 cdl_option CYGBLD_ISO_OPEN_HEADER {\r
8352     # Flavor: booldata\r
8353     # No user value, uncomment the following line to provide one.\r
8354     # user_value 0 0\r
8355     # value_source default\r
8356     # Default value: 0 0\r
8357 };\r
8359 # <\r
8360 # <sys/stat.h> definitions implementation header\r
8362 cdl_option CYGBLD_ISO_STAT_DEFS_HEADER {\r
8363     # Flavor: booldata\r
8364     # No user value, uncomment the following line to provide one.\r
8365     # user_value 0 0\r
8366     # value_source default\r
8367     # Default value: 0 0\r
8368 };\r
8370 # POSIX directory reading implementation\r
8372 cdl_interface CYGINT_ISO_DIRENT {\r
8373     # No options implement this inferface\r
8374     # This value cannot be modified here.\r
8375     # Flavor: data\r
8376     # Current_value: 0\r
8377     # Requires:  1 >= CYGINT_ISO_DIRENT \r
8378     #     CYGINT_ISO_DIRENT == 0\r
8379     #   --> 1\r
8381     # The following properties are affected by this value\r
8382     # interface CYGINT_ISO_DIRENT\r
8383     #     Requires:  1 >= CYGINT_ISO_DIRENT \r
8384 };\r
8386 # <dirent.h> definitions implementation header\r
8388 cdl_option CYGBLD_ISO_DIRENT_HEADER {\r
8389     # Flavor: booldata\r
8390     # No user value, uncomment the following line to provide one.\r
8391     # user_value 0 0\r
8392     # value_source default\r
8393     # Default value: 0 0\r
8394 };\r
8396 # POSIX <sys/types.h> contents\r
8397 # This covers the types required by POSIX to be in\r
8398 # <sys/types.h>\r
8400 cdl_component CYGPKG_ISO_POSIX_TYPES {\r
8401     # There is no associated value.\r
8402 };\r
8404 # >\r
8405 # POSIX thread types implementations\r
8407 cdl_interface CYGINT_ISO_PTHREADTYPES {\r
8408     # No options implement this inferface\r
8409     # This value cannot be modified here.\r
8410     # Flavor: data\r
8411     # Current_value: 0\r
8412     # Requires:  1 >= CYGINT_ISO_PTHREADTYPES \r
8413     #     CYGINT_ISO_PTHREADTYPES == 0\r
8414     #   --> 1\r
8416     # The following properties are affected by this value\r
8417     # interface CYGINT_ISO_PTHREADTYPES\r
8418     #     Requires:  1 >= CYGINT_ISO_PTHREADTYPES \r
8419     # interface CYGINT_ISO_PMUTEXTYPES\r
8420     #     Requires:  1 >= CYGINT_ISO_PTHREADTYPES \r
8421 };\r
8423 # POSIX thread types implementation header\r
8425 cdl_option CYGBLD_ISO_PTHREADTYPES_HEADER {\r
8426     # Flavor: booldata\r
8427     # No user value, uncomment the following line to provide one.\r
8428     # user_value 0 0\r
8429     # value_source default\r
8430     # Default value: 0 0\r
8431 };\r
8433 # POSIX mutex types implementations\r
8435 cdl_interface CYGINT_ISO_PMUTEXTYPES {\r
8436     # No options implement this inferface\r
8437     # This value cannot be modified here.\r
8438     # Flavor: data\r
8439     # Current_value: 0\r
8440     # Requires:  1 >= CYGINT_ISO_PTHREADTYPES \r
8441     #     CYGINT_ISO_PTHREADTYPES == 0\r
8442     #   --> 1\r
8443 };\r
8445 # POSIX mutex types implementation header\r
8447 cdl_option CYGBLD_ISO_PMUTEXTYPES_HEADER {\r
8448     # Flavor: booldata\r
8449     # No user value, uncomment the following line to provide one.\r
8450     # user_value 0 0\r
8451     # value_source default\r
8452     # Default value: 0 0\r
8453 };\r
8455 # ssize_t implementation header\r
8457 cdl_option CYGBLD_ISO_SSIZE_T_HEADER {\r
8458     # Flavor: booldata\r
8459     # No user value, uncomment the following line to provide one.\r
8460     # user_value 0 0\r
8461     # value_source default\r
8462     # Default value: 0 0\r
8463 };\r
8465 # Filesystem types implementation header\r
8467 cdl_option CYGBLD_ISO_FSTYPES_HEADER {\r
8468     # Flavor: booldata\r
8469     # No user value, uncomment the following line to provide one.\r
8470     # user_value 0 0\r
8471     # value_source default\r
8472     # Default value: 0 0\r
8473 };\r
8475 # gid_t, pid_t, uid_t implementation header\r
8477 cdl_option CYGBLD_ISO_SCHEDTYPES_HEADER {\r
8478     # Flavor: booldata\r
8479     # No user value, uncomment the following line to provide one.\r
8480     # user_value 0 0\r
8481     # value_source default\r
8482     # Default value: 0 0\r
8483 };\r
8485 # <\r
8486 # Non-POSIX <sys/types.h> contents\r
8487 # This covers the extra types required by non-POSIX\r
8488 # packages to be in <sys/types.h>. These would normally\r
8489 # only be visible if _POSIX_SOURCE is not defined.\r
8491 cdl_component CYGPKG_ISO_EXTRA_TYPES {\r
8492     # There is no associated value.\r
8493 };\r
8495 # >\r
8496 # BSD compatible types\r
8498 cdl_interface CYGINT_ISO_BSDTYPES {\r
8499     # No options implement this inferface\r
8500     # This value cannot be modified here.\r
8501     # Flavor: data\r
8502     # Current_value: 0\r
8503     # Requires:  1 >= CYGINT_ISO_BSDTYPES \r
8504     #     CYGINT_ISO_BSDTYPES == 0\r
8505     #   --> 1\r
8507     # The following properties are affected by this value\r
8508     # interface CYGINT_ISO_BSDTYPES\r
8509     #     Requires:  1 >= CYGINT_ISO_BSDTYPES \r
8510 };\r
8512 # BSD types header\r
8514 cdl_option CYGBLD_ISO_BSDTYPES_HEADER {\r
8515     # Flavor: booldata\r
8516     # No user value, uncomment the following line to provide one.\r
8517     # user_value 0 0\r
8518     # value_source default\r
8519     # Default value: 0 0\r
8520 };\r
8522 # <\r
8523 # Utsname structure\r
8525 cdl_component CYGPKG_ISO_UTSNAME {\r
8526     # There is no associated value.\r
8527 };\r
8529 # >\r
8530 # Utsname header\r
8532 cdl_option CYGBLD_ISO_UTSNAME_HEADER {\r
8533     # Flavor: booldata\r
8534     # No user value, uncomment the following line to provide one.\r
8535     # user_value 0 0\r
8536     # value_source default\r
8537     # Default value: 0 0\r
8538 };\r
8540 # <\r
8541 # POSIX scheduler\r
8543 cdl_component CYGPKG_ISO_SCHED {\r
8544     # There is no associated value.\r
8545 };\r
8547 # >\r
8548 # POSIX scheduler implementations\r
8550 cdl_interface CYGINT_ISO_SCHED_IMPL {\r
8551     # No options implement this inferface\r
8552     # This value cannot be modified here.\r
8553     # Flavor: data\r
8554     # Current_value: 0\r
8555     # Requires:  1 >= CYGINT_ISO_SCHED_IMPL \r
8556     #     CYGINT_ISO_SCHED_IMPL == 0\r
8557     #   --> 1\r
8559     # The following properties are affected by this value\r
8560     # interface CYGINT_ISO_SCHED_IMPL\r
8561     #     Requires:  1 >= CYGINT_ISO_SCHED_IMPL \r
8562 };\r
8564 # POSIX scheduler implementation header\r
8566 cdl_option CYGBLD_ISO_SCHED_IMPL_HEADER {\r
8567     # Flavor: booldata\r
8568     # No user value, uncomment the following line to provide one.\r
8569     # user_value 0 0\r
8570     # value_source default\r
8571     # Default value: 0 0\r
8572 };\r
8574 # <\r
8575 # POSIX semaphores\r
8577 cdl_component CYGPKG_ISO_SEMAPHORES {\r
8578     # There is no associated value.\r
8579 };\r
8581 # >\r
8582 # POSIX semaphore implementations\r
8584 cdl_interface CYGINT_ISO_SEMAPHORES {\r
8585     # No options implement this inferface\r
8586     # This value cannot be modified here.\r
8587     # Flavor: data\r
8588     # Current_value: 0\r
8589     # Requires:  1 >= CYGINT_ISO_SEMAPHORES \r
8590     #     CYGINT_ISO_SEMAPHORES == 0\r
8591     #   --> 1\r
8593     # The following properties are affected by this value\r
8594     # interface CYGINT_ISO_SEMAPHORES\r
8595     #     Requires:  1 >= CYGINT_ISO_SEMAPHORES \r
8596 };\r
8598 # POSIX semaphore implementation header\r
8600 cdl_option CYGBLD_ISO_SEMAPHORES_HEADER {\r
8601     # Flavor: booldata\r
8602     # No user value, uncomment the following line to provide one.\r
8603     # user_value 0 0\r
8604     # value_source default\r
8605     # Default value: 0 0\r
8606 };\r
8608 # <\r
8609 # POSIX message queues\r
8611 cdl_component CYGPKG_ISO_MQUEUE {\r
8612     # There is no associated value.\r
8613 };\r
8615 # >\r
8616 # Implementations\r
8618 cdl_interface CYGINT_ISO_MQUEUE {\r
8619     # No options implement this inferface\r
8620     # This value cannot be modified here.\r
8621     # Flavor: data\r
8622     # Current_value: 0\r
8623     # Requires:  1 >= CYGINT_ISO_MQUEUE \r
8624     #     CYGINT_ISO_MQUEUE == 0\r
8625     #   --> 1\r
8627     # The following properties are affected by this value\r
8628     # interface CYGINT_ISO_MQUEUE\r
8629     #     Requires:  1 >= CYGINT_ISO_MQUEUE \r
8630     # option CYGNUM_ISO_MQUEUE_OPEN_MAX\r
8631     #     ActiveIf: CYGINT_ISO_MQUEUE\r
8632     # option CYGNUM_ISO_MQUEUE_PRIO_MAX\r
8633     #     ActiveIf: CYGINT_ISO_MQUEUE\r
8634 };\r
8636 # Implementation header\r
8638 cdl_option CYGBLD_ISO_MQUEUE_HEADER {\r
8639     # Flavor: booldata\r
8640     # No user value, uncomment the following line to provide one.\r
8641     # user_value 0 0\r
8642     # value_source default\r
8643     # Default value: 0 0\r
8644 };\r
8646 # Maximum number of open message queues\r
8648 cdl_option CYGNUM_ISO_MQUEUE_OPEN_MAX {\r
8649     # This option is not active\r
8650     # ActiveIf constraint: CYGINT_ISO_MQUEUE\r
8651     #     CYGINT_ISO_MQUEUE == 0\r
8652     #   --> 0\r
8654     # Flavor: booldata\r
8655     # No user value, uncomment the following line to provide one.\r
8656     # user_value 0 0\r
8657     # value_source default\r
8658     # Default value:  CYGNUM_POSIX_MQUEUE_OPEN_MAX > 0 ? CYGNUM_POSIX_MQUEUE_OPEN_MAX : 0 \r
8659     #     CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0\r
8660     #     CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0\r
8661     #   --> 0 0\r
8662 };\r
8664 # Maximum number of message priorities\r
8666 cdl_option CYGNUM_ISO_MQUEUE_PRIO_MAX {\r
8667     # This option is not active\r
8668     # ActiveIf constraint: CYGINT_ISO_MQUEUE\r
8669     #     CYGINT_ISO_MQUEUE == 0\r
8670     #   --> 0\r
8672     # Flavor: booldata\r
8673     # No user value, uncomment the following line to provide one.\r
8674     # user_value 1 65535\r
8675     # value_source default\r
8676     # Default value: 1 65535\r
8677 };\r
8679 # <\r
8680 # POSIX threads\r
8682 cdl_component CYGPKG_ISO_PTHREAD {\r
8683     # There is no associated value.\r
8684 };\r
8686 # >\r
8687 # POSIX pthread implementations\r
8689 cdl_interface CYGINT_ISO_PTHREAD_IMPL {\r
8690     # No options implement this inferface\r
8691     # This value cannot be modified here.\r
8692     # Flavor: booldata\r
8693     # Current value: 0 0\r
8694     # Requires:  1 >= CYGINT_ISO_PTHREAD_IMPL \r
8695     #     CYGINT_ISO_PTHREAD_IMPL == 0\r
8696     #   --> 1\r
8698     # The following properties are affected by this value\r
8699     # interface CYGINT_ISO_PTHREAD_IMPL\r
8700     #     Requires:  1 >= CYGINT_ISO_PTHREAD_IMPL \r
8701 };\r
8703 # POSIX pthread implementation header\r
8705 cdl_option CYGBLD_ISO_PTHREAD_IMPL_HEADER {\r
8706     # Flavor: booldata\r
8707     # No user value, uncomment the following line to provide one.\r
8708     # user_value 0 0\r
8709     # value_source default\r
8710     # Default value: 0 0\r
8711 };\r
8713 # POSIX mutex/cond var implementations\r
8715 cdl_interface CYGINT_ISO_PTHREAD_MUTEX {\r
8716     # No options implement this inferface\r
8717     # This value cannot be modified here.\r
8718     # Flavor: booldata\r
8719     # Current value: 0 0\r
8720     # Requires:  1 >= CYGINT_ISO_PTHREAD_MUTEX \r
8721     #     CYGINT_ISO_PTHREAD_MUTEX == 0\r
8722     #   --> 1\r
8724     # The following properties are affected by this value\r
8725     # interface CYGINT_ISO_PTHREAD_MUTEX\r
8726     #     Requires:  1 >= CYGINT_ISO_PTHREAD_MUTEX \r
8727 };\r
8729 # POSIX mutex/cond var implementation header\r
8731 cdl_option CYGBLD_ISO_PTHREAD_MUTEX_HEADER {\r
8732     # Flavor: booldata\r
8733     # No user value, uncomment the following line to provide one.\r
8734     # user_value 0 0\r
8735     # value_source default\r
8736     # Default value: 0 0\r
8737 };\r
8739 # <\r
8740 # Limits\r
8742 cdl_component CYGPKG_ISO_LIMITS {\r
8743     # There is no associated value.\r
8744 };\r
8746 # >\r
8747 # POSIX pthread limits implementations\r
8749 cdl_interface CYGINT_ISO_POSIX_LIMITS {\r
8750     # No options implement this inferface\r
8751     # This value cannot be modified here.\r
8752     # Flavor: data\r
8753     # Current_value: 0\r
8754     # Requires:  1 >= CYGINT_ISO_POSIX_LIMITS \r
8755     #     CYGINT_ISO_POSIX_LIMITS == 0\r
8756     #   --> 1\r
8758     # The following properties are affected by this value\r
8759     # interface CYGINT_ISO_POSIX_LIMITS\r
8760     #     Requires:  1 >= CYGINT_ISO_POSIX_LIMITS \r
8761 };\r
8763 # POSIX pthread limits implementation header\r
8765 cdl_option CYGBLD_ISO_POSIX_LIMITS_HEADER {\r
8766     # Flavor: booldata\r
8767     # No user value, uncomment the following line to provide one.\r
8768     # user_value 0 0\r
8769     # value_source default\r
8770     # Default value: 0 0\r
8771 };\r
8773 # OPEN_MAX implementation header\r
8775 cdl_option CYGBLD_ISO_OPEN_MAX_HEADER {\r
8776     # Flavor: booldata\r
8777     # No user value, uncomment the following line to provide one.\r
8778     # user_value 0 0\r
8779     # value_source default\r
8780     # Default value: 0 0\r
8781 };\r
8783 # LINK_MAX implementation header\r
8785 cdl_option CYGBLD_ISO_LINK_MAX_HEADER {\r
8786     # Flavor: booldata\r
8787     # No user value, uncomment the following line to provide one.\r
8788     # user_value 0 0\r
8789     # value_source default\r
8790     # Default value: 0 0\r
8791 };\r
8793 # NAME_MAX implementation header\r
8795 cdl_option CYGBLD_ISO_NAME_MAX_HEADER {\r
8796     # Flavor: booldata\r
8797     # No user value, uncomment the following line to provide one.\r
8798     # user_value 0 0\r
8799     # value_source default\r
8800     # Default value: 0 0\r
8801 };\r
8803 # PATH_MAX implementation header\r
8805 cdl_option CYGBLD_ISO_PATH_MAX_HEADER {\r
8806     # Flavor: booldata\r
8807     # No user value, uncomment the following line to provide one.\r
8808     # user_value 0 0\r
8809     # value_source default\r
8810     # Default value: 0 0\r
8811 };\r
8813 # <\r
8814 # POSIX termios\r
8816 cdl_component CYGPKG_ISO_TERMIOS {\r
8817     # There is no associated value.\r
8818 };\r
8820 # >\r
8821 # POSIX termios implementations\r
8823 cdl_interface CYGINT_ISO_TERMIOS {\r
8824     # Implemented by CYGPKG_IO_SERIAL_TERMIOS, active, disabled\r
8825     # This value cannot be modified here.\r
8826     # Flavor: data\r
8827     # Current_value: 0\r
8828     # Requires:  1 >= CYGINT_ISO_TERMIOS \r
8829     #     CYGINT_ISO_TERMIOS == 0\r
8830     #   --> 1\r
8832     # The following properties are affected by this value\r
8833     # interface CYGINT_ISO_TERMIOS\r
8834     #     Requires:  1 >= CYGINT_ISO_TERMIOS \r
8835 };\r
8837 # POSIX termios implementation header\r
8839 cdl_option CYGBLD_ISO_TERMIOS_HEADER {\r
8840     # Flavor: booldata\r
8841     # No user value, uncomment the following line to provide one.\r
8842     # user_value 0 0\r
8843     # value_source default\r
8844     # Default value: 0 0\r
8845 };\r
8847 # <\r
8848 # Dynamic load API\r
8850 cdl_component CYGPKG_ISO_DLFCN {\r
8851     # There is no associated value.\r
8852 };\r
8854 # >\r
8855 # Dynamic load implementations\r
8857 cdl_interface CYGINT_ISO_DLFCN {\r
8858     # No options implement this inferface\r
8859     # This value cannot be modified here.\r
8860     # Flavor: data\r
8861     # Current_value: 0\r
8862     # Requires:  1 >= CYGINT_ISO_DLFCN \r
8863     #     CYGINT_ISO_DLFCN == 0\r
8864     #   --> 1\r
8866     # The following properties are affected by this value\r
8867     # interface CYGINT_ISO_DLFCN\r
8868     #     Requires:  1 >= CYGINT_ISO_DLFCN \r
8869 };\r
8871 # Dynamic load implementation header\r
8873 cdl_option CYGBLD_ISO_DLFCN_HEADER {\r
8874     # Flavor: booldata\r
8875     # No user value, uncomment the following line to provide one.\r
8876     # user_value 0 0\r
8877     # value_source default\r
8878     # Default value: 0 0\r
8879 };\r
8881 # <\r
8882 # UNIX standard functions\r
8884 cdl_component CYGPKG_ISO_UNISTD {\r
8885     # There is no associated value.\r
8886 };\r
8888 # >\r
8889 # POSIX timer operations implementations\r
8891 cdl_interface CYGINT_ISO_POSIX_TIMER_OPS {\r
8892     # No options implement this inferface\r
8893     # This value cannot be modified here.\r
8894     # Flavor: booldata\r
8895     # Current value: 0 0\r
8896     # Requires:  1 >= CYGINT_ISO_POSIX_TIMER_OPS \r
8897     #     CYGINT_ISO_POSIX_TIMER_OPS == 0\r
8898     #   --> 1\r
8900     # The following properties are affected by this value\r
8901     # interface CYGINT_ISO_POSIX_TIMER_OPS\r
8902     #     Requires:  1 >= CYGINT_ISO_POSIX_TIMER_OPS \r
8903 };\r
8905 # POSIX timer operations implementation header\r
8907 cdl_option CYGBLD_ISO_POSIX_TIMER_OPS_HEADER {\r
8908     # Flavor: booldata\r
8909     # No user value, uncomment the following line to provide one.\r
8910     # user_value 0 0\r
8911     # value_source default\r
8912     # Default value: 0 0\r
8913 };\r
8915 # POSIX sleep() implementations\r
8917 cdl_interface CYGINT_ISO_POSIX_SLEEP {\r
8918     # No options implement this inferface\r
8919     # This value cannot be modified here.\r
8920     # Flavor: booldata\r
8921     # Current value: 0 0\r
8922     # Requires:  1 >= CYGINT_ISO_POSIX_SLEEP \r
8923     #     CYGINT_ISO_POSIX_SLEEP == 0\r
8924     #   --> 1\r
8926     # The following properties are affected by this value\r
8927     # interface CYGINT_ISO_POSIX_SLEEP\r
8928     #     Requires:  1 >= CYGINT_ISO_POSIX_SLEEP \r
8929 };\r
8931 # POSIX sleep() implementation header\r
8933 cdl_option CYGBLD_ISO_POSIX_SLEEP_HEADER {\r
8934     # Flavor: booldata\r
8935     # No user value, uncomment the following line to provide one.\r
8936     # user_value 0 0\r
8937     # value_source default\r
8938     # Default value: 0 0\r
8939 };\r
8941 # <\r
8942 # select()/poll() functions\r
8944 cdl_component CYGPKG_ISO_SELECT {\r
8945     # There is no associated value.\r
8946 };\r
8948 # >\r
8949 # select() implementations\r
8951 cdl_interface CYGINT_ISO_SELECT {\r
8952     # No options implement this inferface\r
8953     # This value cannot be modified here.\r
8954     # Flavor: booldata\r
8955     # Current value: 0 0\r
8956     # Requires:  1 >= CYGINT_ISO_SELECT \r
8957     #     CYGINT_ISO_SELECT == 0\r
8958     #   --> 1\r
8960     # The following properties are affected by this value\r
8961     # interface CYGINT_ISO_SELECT\r
8962     #     Requires:  1 >= CYGINT_ISO_SELECT \r
8963 };\r
8965 # select() implementation header\r
8967 cdl_option CYGBLD_ISO_SELECT_HEADER {\r
8968     # Flavor: booldata\r
8969     # No user value, uncomment the following line to provide one.\r
8970     # user_value 0 0\r
8971     # value_source default\r
8972     # Default value: 0 0\r
8973 };\r
8975 # poll() implementations\r
8977 cdl_interface CYGINT_ISO_POLL {\r
8978     # No options implement this inferface\r
8979     # This value cannot be modified here.\r
8980     # Flavor: booldata\r
8981     # Current value: 0 0\r
8982     # Requires:  1 >= CYGINT_ISO_POLL \r
8983     #     CYGINT_ISO_POLL == 0\r
8984     #   --> 1\r
8986     # The following properties are affected by this value\r
8987     # interface CYGINT_ISO_POLL\r
8988     #     Requires:  1 >= CYGINT_ISO_POLL \r
8989 };\r
8991 # poll() implementation header\r
8993 cdl_option CYGBLD_ISO_POLL_HEADER {\r
8994     # Flavor: booldata\r
8995     # No user value, uncomment the following line to provide one.\r
8996     # user_value 0 0\r
8997     # value_source default\r
8998     # Default value: 0 0\r
8999 };\r
9001 # <\r
9002 # NetDB utility functions\r
9004 cdl_component CYGPKG_ISO_NETDB {\r
9005     # There is no associated value.\r
9006 };\r
9008 # >\r
9009 # DNS implementations\r
9011 cdl_interface CYGINT_ISO_DNS {\r
9012     # No options implement this inferface\r
9013     # This value cannot be modified here.\r
9014     # Flavor: bool\r
9015     # Current value: 0\r
9016     # Requires:  1 >= CYGINT_ISO_DNS \r
9017     #     CYGINT_ISO_DNS == 0\r
9018     #   --> 1\r
9020     # The following properties are affected by this value\r
9021     # interface CYGINT_ISO_DNS\r
9022     #     Requires:  1 >= CYGINT_ISO_DNS \r
9023 };\r
9025 # DNS implementation header\r
9027 cdl_option CYGBLD_ISO_DNS_HEADER {\r
9028     # Flavor: booldata\r
9029     # No user value, uncomment the following line to provide one.\r
9030     # user_value 0 0\r
9031     # value_source default\r
9032     # Default value: 0 0\r
9033 };\r
9035 # Protocol network database implementations\r
9037 cdl_interface CYGINT_ISO_NETDB_PROTO {\r
9038     # No options implement this inferface\r
9039     # This value cannot be modified here.\r
9040     # Flavor: bool\r
9041     # Current value: 0\r
9042     # Requires:  1 >= CYGINT_ISO_NETDB_PROTO \r
9043     #     CYGINT_ISO_NETDB_PROTO == 0\r
9044     #   --> 1\r
9046     # The following properties are affected by this value\r
9047     # interface CYGINT_ISO_NETDB_PROTO\r
9048     #     Requires:  1 >= CYGINT_ISO_NETDB_PROTO \r
9049 };\r
9051 # Protocol network database implementation header\r
9053 cdl_option CYGBLD_ISO_NETDB_PROTO_HEADER {\r
9054     # Flavor: booldata\r
9055     # No user value, uncomment the following line to provide one.\r
9056     # user_value 0 0\r
9057     # value_source default\r
9058     # Default value: 0 0\r
9059 };\r
9061 # Services network database implementations\r
9063 cdl_interface CYGINT_ISO_NETDB_SERV {\r
9064     # No options implement this inferface\r
9065     # This value cannot be modified here.\r
9066     # Flavor: bool\r
9067     # Current value: 0\r
9068     # Requires:  1 >= CYGINT_ISO_NETDB_SERV \r
9069     #     CYGINT_ISO_NETDB_SERV == 0\r
9070     #   --> 1\r
9072     # The following properties are affected by this value\r
9073     # interface CYGINT_ISO_NETDB_SERV\r
9074     #     Requires:  1 >= CYGINT_ISO_NETDB_SERV \r
9075 };\r
9077 # Services network database implementation header\r
9079 cdl_option CYGBLD_ISO_NETDB_SERV_HEADER {\r
9080     # Flavor: booldata\r
9081     # No user value, uncomment the following line to provide one.\r
9082     # user_value 0 0\r
9083     # value_source default\r
9084     # Default value: 0 0\r
9085 };\r
9087 # <\r
9088 # Build options\r
9089 # Package specific build options including control over\r
9090 # compiler flags used only in building this package,\r
9091 # and details of which tests are built.\r
9093 cdl_component CYGPKG_ISOINFRA_OPTIONS {\r
9094     # There is no associated value.\r
9095 };\r
9097 # >\r
9098 # Additional compiler flags\r
9099 # This option modifies the set of compiler flags for\r
9100 # building the ISO C and POSIX infrastructure package.\r
9101 # These flags are used in addition to the set of global flags.\r
9103 cdl_option CYGPKG_ISOINFRA_CFLAGS_ADD {\r
9104     # Flavor: data\r
9105     # No user value, uncomment the following line to provide one.\r
9106     # user_value ""\r
9107     # value_source default\r
9108     # Default value: ""\r
9109 };\r
9111 # Suppressed compiler flags\r
9112 # This option modifies the set of compiler flags for\r
9113 # building the ISO C and POSIX infrastructure package.\r
9114 # These flags are removed from the set of global flags\r
9115 # if present.\r
9117 cdl_option CYGPKG_ISOINFRA_CFLAGS_REMOVE {\r
9118     # Flavor: data\r
9119     # No user value, uncomment the following line to provide one.\r
9120     # user_value ""\r
9121     # value_source default\r
9122     # Default value: ""\r
9123 };\r
9125 # <\r
9126 # <\r
9127 # ISO C library\r
9128 # doc: ref/libc.html\r
9129 # The packages under this package enable compatibility with the ISO C\r
9130 # standard - ISO/IEC 9899:1990. This allows the user application to use\r
9131 # well known standard C library functions, and in eCos starts a thread\r
9132 # to invoke the user function main(). This package is a top-level placeholder\r
9133 # to contain the implementations.\r
9135 cdl_package CYGPKG_LIBC {\r
9136     # Packages cannot be added or removed, nor can their version be changed,\r
9137     # simply by editing their value. Instead the appropriate configuration\r
9138     # should be used to perform these actions.\r
9140     # This value cannot be modified here.\r
9141     # Flavor: booldata\r
9142     # Current value: 1 v3_0\r
9144     # The following properties are affected by this value\r
9145     # component CYGNUM_LIBM_COMPATIBILITY\r
9146     #     Requires: CYGPKG_LIBC\r
9147 };\r
9149 # >\r
9150 # ISO C library internationalization functions\r
9151 # doc: ref/libc.html\r
9152 # This package provides internationalization functions specified by the\r
9153 # ISO C standard - ISO/IEC 9899:1990. These include locale-related\r
9154 # functionality and <ctype.h> functionality.\r
9156 cdl_package CYGPKG_LIBC_I18N {\r
9157     # Packages cannot be added or removed, nor can their version be changed,\r
9158     # simply by editing their value. Instead the appropriate configuration\r
9159     # should be used to perform these actions.\r
9161     # This value cannot be modified here.\r
9162     # Flavor: booldata\r
9163     # Current value: 1 v3_0\r
9164     # Requires: CYGPKG_ISOINFRA\r
9165     #     CYGPKG_ISOINFRA == v3_0\r
9166     #   --> 1\r
9168     # The following properties are affected by this value\r
9169     # package CYGPKG_LIBC_STDIO\r
9170     #     Requires: CYGPKG_LIBC_I18N\r
9171 };\r
9173 # >\r
9174 # Supported locales\r
9175 # These options determine which locales other than the "C" locale\r
9176 # are supported and hence contribute to the size of the executable.\r
9178 cdl_component CYGPKG_LIBC_I18N_LOCALES {\r
9179     # There is no associated value.\r
9180 };\r
9182 # >\r
9183 # Support for multiple locales required\r
9185 cdl_interface CYGINT_LIBC_I18N_MB_REQUIRED {\r
9186     # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_SJIS, active, disabled\r
9187     # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_JIS, active, disabled\r
9188     # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_EUCJP, active, disabled\r
9189     # This value cannot be modified here.\r
9190     # Flavor: booldata\r
9191     # Current value: 0 0\r
9192     # Requires:  CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER ==  "<cyg/libc/i18n/mb.h>" \r
9193     #     CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER == 0\r
9194     #   --> 0\r
9196     # The following properties are affected by this value\r
9197 };\r
9199 # C-SJIS locale support\r
9200 # This option controls if the "C-SJIS" locale will be\r
9201 # supported by setlocale().  The locale is a hybrid locale\r
9202 # that is mostly the "C" locale with Japanese SJIS multibyte\r
9203 # support added.\r
9205 cdl_option CYGFUN_LIBC_I18N_LOCALE_C_SJIS {\r
9206     # Flavor: bool\r
9207     # No user value, uncomment the following line to provide one.\r
9208     # user_value 0\r
9209     # value_source default\r
9210     # Default value: 0\r
9212     # The following properties are affected by this value\r
9213     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE\r
9214     #     LegalValues:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff \r
9215     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE\r
9216     #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  \r
9217 };\r
9219 # C-JIS locale support\r
9220 # This option controls if the "C-JIS" locale will be\r
9221 # supported by setlocale().  The locale is a hybrid locale\r
9222 # that is mostly the "C" locale with Japanese JIS multibyte\r
9223 # support added.\r
9225 cdl_option CYGFUN_LIBC_I18N_LOCALE_C_JIS {\r
9226     # Flavor: bool\r
9227     # No user value, uncomment the following line to provide one.\r
9228     # user_value 0\r
9229     # value_source default\r
9230     # Default value: 0\r
9232     # The following properties are affected by this value\r
9233     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE\r
9234     #     LegalValues:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff \r
9235     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE\r
9236     #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  \r
9237 };\r
9239 # C-EUCJP locale support\r
9240 # This option controls if the "C-EUCJP" locale will be\r
9241 # supported by setlocale().  The locale is a hybrid locale\r
9242 # that is mostly the "C" locale with Japanese EUCJP multibyte\r
9243 # support added.\r
9245 cdl_option CYGFUN_LIBC_I18N_LOCALE_C_EUCJP {\r
9246     # Flavor: bool\r
9247     # No user value, uncomment the following line to provide one.\r
9248     # user_value 0\r
9249     # value_source default\r
9250     # Default value: 0\r
9252     # The following properties are affected by this value\r
9253     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE\r
9254     #     LegalValues:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff \r
9255     # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE\r
9256     #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  \r
9257 };\r
9259 # <\r
9260 # Newlib's ctype implementation\r
9261 # This option enables the implementation of the ctype functions\r
9262 # that comes with newlib. It is table driven and therefore\r
9263 # exhibits different performance characteristics. It also offers\r
9264 # a limited amount of binary compatibility\r
9265 # with newlib so that programs linked against newlib ctype/locale\r
9266 # do not need to be recompiled when linked with eCos.\r
9268 cdl_option CYGPKG_LIBC_I18N_NEWLIB_CTYPE {\r
9269     # Flavor: bool\r
9270     # No user value, uncomment the following line to provide one.\r
9271     # user_value 0\r
9272     # value_source default\r
9273     # Default value: 0\r
9274     # Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/newlibctype.h>" \r
9275     #     CYGBLD_ISO_CTYPE_HEADER == <cyg/libc/i18n/ctype.inl>\r
9276     #   --> 0\r
9277 };\r
9279 # Per-thread multibyte state\r
9280 # This option controls whether the multibyte character\r
9281 # handling functions mblen(), mbtowc(), and wctomb(),\r
9282 # have their state recorded on a per-thread\r
9283 # basis rather than global. If this option is\r
9284 # disabled, some per-thread space can be saved.\r
9285 # Enabling this option will use three slots\r
9286 # of kernel per-thread data. You should ensure you\r
9287 # have enough slots configured for all your\r
9288 # per-thread data.\r
9290 cdl_option CYGSEM_LIBC_I18N_PER_THREAD_MB {\r
9291     # ActiveIf constraint: CYGPKG_KERNEL\r
9292     #     CYGPKG_KERNEL == v3_0\r
9293     #   --> 1\r
9295     # Flavor: bool\r
9296     # No user value, uncomment the following line to provide one.\r
9297     # user_value 1\r
9298     # value_source default\r
9299     # Default value:  CYGVAR_KERNEL_THREADS_DATA != 0 \r
9300     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
9301     #   --> 1\r
9302     # Requires: CYGVAR_KERNEL_THREADS_DATA\r
9303     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
9304     #   --> 1\r
9305 };\r
9307 # Size of locale name strings\r
9308 # This option controls the maximum size of\r
9309 # locale names and is used, among other things\r
9310 # to instantiate a static string used\r
9311 # as a return value from the\r
9312 # setlocale() function. When requesting the\r
9313 # current locale settings with LC_ALL, a string\r
9314 # must be constructed to contain this data, rather\r
9315 # than just returning a constant string. This\r
9316 # string data is stored in the static string.\r
9317 # This depends on the length of locale names,\r
9318 # hence this option. If just the C locale is\r
9319 # present, this option can be set as low as 2.\r
9321 cdl_option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE {\r
9322     # Flavor: data\r
9323     # No user value, uncomment the following line to provide one.\r
9324     # user_value 2\r
9325     # value_source default\r
9326     # Default value:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))  \r
9327     #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0\r
9328     #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0\r
9329     #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0\r
9330     #   --> 2\r
9331     # Legal values:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2))) to 0x7fffffff \r
9332     #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0\r
9333     #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0\r
9334     #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0\r
9335 };\r
9337 # Inline versions of <ctype.h> functions\r
9338 # This option chooses whether the simple character\r
9339 # classification and conversion functions (e.g.\r
9340 # isupper(), isalpha(), toupper(), etc.)\r
9341 # from <ctype.h> are available as inline\r
9342 # functions. This may improve performance and as\r
9343 # the functions are small, may even improve code\r
9344 # size.\r
9346 cdl_option CYGIMP_LIBC_I18N_CTYPE_INLINES {\r
9347     # Flavor: bool\r
9348     # No user value, uncomment the following line to provide one.\r
9349     # user_value 1\r
9350     # value_source default\r
9351     # Default value: 1\r
9352     # Requires:  CYGBLD_ISO_CTYPE_HEADER ==  "<cyg/libc/i18n/ctype.inl>" \r
9353     #     CYGBLD_ISO_CTYPE_HEADER == <cyg/libc/i18n/ctype.inl>\r
9354     #   --> 1\r
9355 };\r
9357 # C library i18n functions build options\r
9358 # Package specific build options including control over\r
9359 # compiler flags used only in building this package,\r
9360 # and details of which tests are built.\r
9362 cdl_component CYGPKG_LIBC_I18N_OPTIONS {\r
9363     # There is no associated value.\r
9364 };\r
9366 # >\r
9367 # Additional compiler flags\r
9368 # This option modifies the set of compiler flags for\r
9369 # building the C library. These flags are used in addition\r
9370 # to the set of global flags.\r
9372 cdl_option CYGPKG_LIBC_I18N_CFLAGS_ADD {\r
9373     # Flavor: data\r
9374     # No user value, uncomment the following line to provide one.\r
9375     # user_value ""\r
9376     # value_source default\r
9377     # Default value: ""\r
9378 };\r
9380 # Suppressed compiler flags\r
9381 # This option modifies the set of compiler flags for\r
9382 # building the C library. These flags are removed from\r
9383 # the set of global flags if present.\r
9385 cdl_option CYGPKG_LIBC_I18N_CFLAGS_REMOVE {\r
9386     # Flavor: data\r
9387     # No user value, uncomment the following line to provide one.\r
9388     # user_value ""\r
9389     # value_source default\r
9390     # Default value: ""\r
9391 };\r
9393 # C library i18n function tests\r
9394 # This option specifies the set of tests for the C library\r
9395 # i18n functions.\r
9397 cdl_option CYGPKG_LIBC_I18N_TESTS {\r
9398     # Calculated value:  "tests/ctype tests/setlocale tests/i18nmb" \r
9399     # Flavor: data\r
9400     # Current_value: tests/ctype tests/setlocale tests/i18nmb\r
9401 };\r
9403 # <\r
9404 # <\r
9405 # ISO C library setjmp/longjmp functions\r
9406 # doc: ref/libc.html\r
9407 # This package provides non-local jumps based on setjmp() and\r
9408 # longjmp() in <setjmp.h> as specified by the ISO C\r
9409 # standard - ISO/IEC 9899:1990.\r
9411 cdl_package CYGPKG_LIBC_SETJMP {\r
9412     # Packages cannot be added or removed, nor can their version be changed,\r
9413     # simply by editing their value. Instead the appropriate configuration\r
9414     # should be used to perform these actions.\r
9416     # This value cannot be modified here.\r
9417     # Flavor: booldata\r
9418     # Current value: 1 v3_0\r
9419     # Requires: CYGPKG_ISOINFRA\r
9420     #     CYGPKG_ISOINFRA == v3_0\r
9421     #   --> 1\r
9422     # Requires:  CYGBLD_ISO_SETJMP_HEADER == "<cyg/libc/setjmp/setjmp.h>" \r
9423     #     CYGBLD_ISO_SETJMP_HEADER == <cyg/libc/setjmp/setjmp.h>\r
9424     #   --> 1\r
9425 };\r
9427 # >\r
9428 # C library setjmp build options\r
9429 # Package specific build options including control over\r
9430 # compiler flags used only in building this package,\r
9431 # and details of which tests are built.\r
9433 cdl_component CYGPKG_LIBC_SETJMP_OPTIONS {\r
9434     # There is no associated value.\r
9435 };\r
9437 # >\r
9438 # Additional compiler flags\r
9439 # This option modifies the set of compiler flags for\r
9440 # building this package. These flags are used in addition\r
9441 # to the set of global flags.\r
9443 cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_ADD {\r
9444     # Flavor: data\r
9445     # No user value, uncomment the following line to provide one.\r
9446     # user_value ""\r
9447     # value_source default\r
9448     # Default value: ""\r
9449 };\r
9451 # Suppressed compiler flags\r
9452 # This option modifies the set of compiler flags for\r
9453 # building this package. These flags are removed from\r
9454 # the set of global flags if present.\r
9456 cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_REMOVE {\r
9457     # Flavor: data\r
9458     # No user value, uncomment the following line to provide one.\r
9459     # user_value ""\r
9460     # value_source default\r
9461     # Default value: ""\r
9462 };\r
9464 # C library setjmp tests\r
9465 # This option specifies the set of tests for this package.\r
9467 cdl_option CYGPKG_LIBC_SETJMP_TESTS {\r
9468     # Calculated value:  "tests/setjmp" \r
9469     # Flavor: data\r
9470     # Current_value: tests/setjmp\r
9471 };\r
9473 # <\r
9474 # <\r
9475 # ISO C library signal functions\r
9476 # doc: ref/libc.html\r
9477 # This component controls signal functionality,\r
9478 # as implemented in ISO/IEC 9899:1990 chapter 7.7 with\r
9479 # the signal() and raise() functions. As well as\r
9480 # allowing a program to send itself signals, it is\r
9481 # also possible to cause hardware exceptions to\r
9482 # be signalled to the program in a similar way.\r
9484 cdl_package CYGPKG_LIBC_SIGNALS {\r
9485     # Packages cannot be added or removed, nor can their version be changed,\r
9486     # simply by editing their value. Instead the appropriate configuration\r
9487     # should be used to perform these actions.\r
9489     # This value cannot be modified here.\r
9490     # Flavor: booldata\r
9491     # Current value: 1 v3_0\r
9492     # Requires:  CYGBLD_ISO_SIGNAL_NUMBERS_HEADER ==  "<cyg/libc/signals/signal.h>" \r
9493     #     CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == <cyg/libc/signals/signal.h>\r
9494     #   --> 1\r
9495     # Requires:  CYGBLD_ISO_SIGNAL_IMPL_HEADER ==  "<cyg/libc/signals/signal.h>" \r
9496     #     CYGBLD_ISO_SIGNAL_IMPL_HEADER == <cyg/libc/signals/signal.h>\r
9497     #   --> 1\r
9498     # Requires: CYGPKG_ISOINFRA\r
9499     #     CYGPKG_ISOINFRA == v3_0\r
9500     #   --> 1\r
9501 };\r
9503 # >\r
9504 # Thread safe signals\r
9505 # Because signal handlers are global, and not\r
9506 # thread-specific (as mandated by POSIX 1003.1)\r
9507 # it is possible for multiple threads to clash\r
9508 # and corrupt data if setting the same signal\r
9509 # handler at the same time. With this option\r
9510 # enabled, a kernel mutex will be used to protect\r
9511 # the shared data.\r
9513 cdl_option CYGSEM_LIBC_SIGNALS_THREAD_SAFE {\r
9514     # Flavor: bool\r
9515     # No user value, uncomment the following line to provide one.\r
9516     # user_value 1\r
9517     # value_source default\r
9518     # Default value: 1\r
9519     # Requires: CYGPKG_KERNEL\r
9520     #     CYGPKG_KERNEL == v3_0\r
9521     #   --> 1\r
9522 };\r
9524 # Hardware exceptions cause signals\r
9525 # This causes hardware exceptions like\r
9526 # arithmetic exceptions (e.g. divide by zero)\r
9527 # or bad memory accesses to be passed through as\r
9528 # signals. It is thus possible for a program to\r
9529 # handle these exceptions in a generic way using\r
9530 # the appropriate signal handlers. The details of\r
9531 # exactly which exceptions are passed through\r
9532 # under what circumstances depend on the\r
9533 # underlying HAL implementation. Consequently it\r
9534 # must be remembered that signal handlers cannot\r
9535 # be guaranteed to be invoked in the expected\r
9536 # circumstances if you do not know about the\r
9537 # underlying HAL implementation - it is possible\r
9538 # that the architecture is unable to detect that\r
9539 # exception.\r
9541 cdl_component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS {\r
9542     # Flavor: bool\r
9543     # No user value, uncomment the following line to provide one.\r
9544     # user_value 0\r
9545     # value_source default\r
9546     # Default value: 0\r
9547     # Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL\r
9548     #     CYGSEM_KERNEL_EXCEPTIONS_GLOBAL == 1\r
9549     #   --> 1\r
9550     # Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE\r
9551     #     CYGSEM_KERNEL_EXCEPTIONS_DECODE == 0\r
9552     #   --> 0\r
9554     # The following properties are affected by this value\r
9555     # option CYGPKG_LIBC_SIGNALS_TESTS\r
9556     #     Calculated:  \r
9557     #                     "tests/signal1"\r
9558     #                     . ((CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS) ? " tests/signal2" : "")\r
9559     #                 \r
9560 };\r
9562 # >\r
9563 # Chain old exception handlers\r
9564 # When hardware exceptions are generated, it\r
9565 # is possible to chain into the old kernel exception\r
9566 # handler before calling any registered signal\r
9567 # handler. If this is not required, disable this\r
9568 # option and only the signal handler will be\r
9569 # called when this exception occurs. Disabling\r
9570 # this option will also save some space and code\r
9571 # usage.\r
9573 cdl_option CYGSEM_LIBC_SIGNALS_CHAIN_HWEXCEPTIONS {\r
9574     # This option is not active\r
9575     # The parent CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS is disabled\r
9577     # Flavor: bool\r
9578     # No user value, uncomment the following line to provide one.\r
9579     # user_value 1\r
9580     # value_source default\r
9581     # Default value: 1\r
9582 };\r
9584 # <\r
9585 # Inline versions of functions\r
9586 # Some functions can be made inline instead of\r
9587 # being function calls. These can be set here.\r
9589 cdl_component CYGPKG_LIBC_SIGNALS_INLINE {\r
9590     # There is no associated value.\r
9591 };\r
9593 # >\r
9594 # raise()\r
9595 # Enabling this option makes raise() an inline function.\r
9597 cdl_option CYGIMP_LIBC_SIGNALS_RAISE_INLINE {\r
9598     # Flavor: bool\r
9599     # No user value, uncomment the following line to provide one.\r
9600     # user_value 1\r
9601     # value_source default\r
9602     # Default value: 1\r
9603 };\r
9605 # signal()\r
9606 # Enabling this option makes signal() an inline function.\r
9608 cdl_option CYGIMP_LIBC_SIGNALS_SIGNAL_INLINE {\r
9609     # Flavor: bool\r
9610     # No user value, uncomment the following line to provide one.\r
9611     # user_value 1\r
9612     # value_source default\r
9613     # Default value: 1\r
9614 };\r
9616 # <\r
9617 # Error handling\r
9618 # You may or may not want errno to be set by\r
9619 # certain functions. Not using errno could save\r
9620 # both space, code, and avoid worrying about\r
9621 # interactions between multiple threads when\r
9622 # setting it.\r
9624 cdl_component CYGPKG_LIBC_SIGNALS_ERROR_HANDLING {\r
9625     # There is no associated value.\r
9626 };\r
9628 # >\r
9629 # Bad signal fatal\r
9630 # Enabling this option will cause an assertion\r
9631 # failure if the signal handling code is\r
9632 # passed a bad signal. Otherwise an error will\r
9633 # be returned, or in the case of a\r
9634 # hardware-generated exception it will be silently\r
9635 # ignored.\r
9637 cdl_option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL {\r
9638     # Flavor: bool\r
9639     # No user value, uncomment the following line to provide one.\r
9640     # user_value 0\r
9641     # value_source default\r
9642     # Default value: 0\r
9643     # Requires: CYGDBG_USE_ASSERTS\r
9644     #     CYGDBG_USE_ASSERTS == 0\r
9645     #   --> 0\r
9646 };\r
9648 # raise() sets errno\r
9649 # You may or may not want errno to be set by\r
9650 # raise() on error conditions. Not using errno\r
9651 # could save both space, code, and avoid worrying\r
9652 # about interactions between multiple threads when\r
9653 # setting it. Strictly ISO C does not mandate\r
9654 # that errno be set by raise().\r
9656 cdl_option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO {\r
9657     # Flavor: bool\r
9658     # No user value, uncomment the following line to provide one.\r
9659     # user_value 1\r
9660     # value_source default\r
9661     # Default value: 1\r
9662     # Requires: CYGINT_ISO_ERRNO\r
9663     #     CYGINT_ISO_ERRNO == 1\r
9664     #   --> 1\r
9665     # Requires: CYGINT_ISO_ERRNO_CODES\r
9666     #     CYGINT_ISO_ERRNO_CODES == 1\r
9667     #   --> 1\r
9668 };\r
9670 # signal() sets errno\r
9671 # You may or may not want errno to be set by\r
9672 # signal() on error conditions. Not using errno\r
9673 # could save both space, code, and avoid worrying\r
9674 # about interactions between multiple threads when\r
9675 # setting it. Strictly ISO C mandates\r
9676 # that errno be set by signal().\r
9678 cdl_option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO {\r
9679     # Flavor: bool\r
9680     # No user value, uncomment the following line to provide one.\r
9681     # user_value 1\r
9682     # value_source default\r
9683     # Default value: 1\r
9684     # Requires: CYGINT_ISO_ERRNO\r
9685     #     CYGINT_ISO_ERRNO == 1\r
9686     #   --> 1\r
9687     # Requires: CYGINT_ISO_ERRNO_CODES\r
9688     #     CYGINT_ISO_ERRNO_CODES == 1\r
9689     #   --> 1\r
9690 };\r
9692 # <\r
9693 # Tracing\r
9694 # These options control the trace output for the C\r
9695 # library internal signal implementation.\r
9697 cdl_component CYGPKG_LIBC_SIGNALS_TRACING {\r
9698     # There is no associated value.\r
9699 };\r
9701 # >\r
9702 # Default trace level for raise()\r
9703 # This gives the default tracing level for the\r
9704 # raise() function. Higher numbers are more\r
9705 # verbose.\r
9707 cdl_option CYGNUM_LIBC_SIGNALS_RAISE_TRACE_LEVEL {\r
9708     # Flavor: data\r
9709     # No user value, uncomment the following line to provide one.\r
9710     # user_value 0\r
9711     # value_source default\r
9712     # Default value: 0\r
9713     # Legal values: 0 to 1\r
9714 };\r
9716 # Default hardware exception handler trace level\r
9717 # This gives the default tracing level for the\r
9718 # hardware exception handler function (if enabled).\r
9719 # Higher numbers are more verbose.\r
9721 cdl_option CYGNUM_LIBC_SIGNALS_HWHANDLER_TRACE_LEVEL {\r
9722     # Flavor: data\r
9723     # No user value, uncomment the following line to provide one.\r
9724     # user_value 0\r
9725     # value_source default\r
9726     # Default value: 0\r
9727     # Legal values: 0 to 1\r
9728 };\r
9730 # <\r
9731 # C library signal functions build options\r
9732 # Package specific build options including control over\r
9733 # compiler flags used only in building this package,\r
9734 # and details of which tests are built.\r
9736 cdl_component CYGPKG_LIBC_SIGNALS_OPTIONS {\r
9737     # There is no associated value.\r
9738 };\r
9740 # >\r
9741 # Additional compiler flags\r
9742 # This option modifies the set of compiler flags for\r
9743 # building the C library. These flags are used in addition\r
9744 # to the set of global flags.\r
9746 cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_ADD {\r
9747     # Flavor: data\r
9748     # No user value, uncomment the following line to provide one.\r
9749     # user_value ""\r
9750     # value_source default\r
9751     # Default value: ""\r
9752 };\r
9754 # Suppressed compiler flags\r
9755 # This option modifies the set of compiler flags for\r
9756 # building the C library. These flags are removed from\r
9757 # the set of global flags if present.\r
9759 cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_REMOVE {\r
9760     # Flavor: data\r
9761     # No user value, uncomment the following line to provide one.\r
9762     # user_value ""\r
9763     # value_source default\r
9764     # Default value: ""\r
9765 };\r
9767 # C library signal function tests\r
9768 # This option specifies the set of tests for the C library\r
9769 # signal functions.\r
9771 cdl_option CYGPKG_LIBC_SIGNALS_TESTS {\r
9772     # Calculated value:  \r
9773     #                     "tests/signal1"\r
9774     #                     . ((CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS) ? " tests/signal2" : "")\r
9775     #                 \r
9776     #     CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS == 0\r
9777     # Flavor: data\r
9778     # Current_value: tests/signal1\r
9779 };\r
9781 # <\r
9782 # <\r
9783 # ISO environment startup/termination\r
9784 # doc: ref/c-library-startup.html\r
9785 # This package manages the control of the\r
9786 # environment (in the general sense) that an\r
9787 # application would require for full ISO C / POSIX\r
9788 # compatibility, including a main() entry point\r
9789 # supplied with arguments and an environment\r
9790 # (as retrievable by the getenv() function).\r
9791 # It also includes at the other end of things,\r
9792 # what happens when main() returns or exit() is\r
9793 # called.\r
9795 cdl_package CYGPKG_LIBC_STARTUP {\r
9796     # Packages cannot be added or removed, nor can their version be changed,\r
9797     # simply by editing their value. Instead the appropriate configuration\r
9798     # should be used to perform these actions.\r
9800     # This value cannot be modified here.\r
9801     # Flavor: booldata\r
9802     # Current value: 1 v3_0\r
9803     # Requires: CYGPKG_ISOINFRA\r
9804     #     CYGPKG_ISOINFRA == v3_0\r
9805     #   --> 1\r
9806     # Requires:  CYGINT_LIBC_STARTUP_CONTEXT == 1 \r
9807     #     CYGINT_LIBC_STARTUP_CONTEXT == 1\r
9808     #   --> 1\r
9809 };\r
9811 # >\r
9812 # main() can be invoked elsewhere\r
9813 # Implementors of this interface show that they\r
9814 # allow main() to be invoked elsewhere.\r
9816 cdl_interface CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE {\r
9817     # No options implement this inferface\r
9818     # This value cannot be modified here.\r
9819     # Flavor: bool\r
9820     # Current value: 0\r
9822     # The following properties are affected by this value\r
9823     # option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT\r
9824     #     DefaultValue:  0 == CYGPKG_KERNEL && 0 == \r
9825     #                                 CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
9826     # component CYGSEM_LIBC_STARTUP_MAIN_THREAD\r
9827     #     DefaultValue:  0 != CYGPKG_KERNEL && 0 ==  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
9828     # option CYGSEM_LIBC_STARTUP_MAIN_OTHER\r
9829     #     DefaultValue:  0 !=  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
9830     # option CYGSEM_LIBC_STARTUP_MAIN_OTHER\r
9831     #     Requires: CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE\r
9832 };\r
9834 # Arguments to main()\r
9835 # This option allows the setting of the arguments\r
9836 # to the main function. This only has any effect\r
9837 # when cyg_iso_c_start() is used to start the\r
9838 # ISO C compatibility. This will automatically\r
9839 # invoke main() in an ISO C compatible fashion.\r
9840 # This option is in fact used as argv, and so is\r
9841 # an n-tuple of string constants. The final\r
9842 # entry must be NULL. Conventionally if argv[0]\r
9843 # is supplied, it is used to inform the program\r
9844 # of its name.\r
9846 cdl_option CYGDAT_LIBC_ARGUMENTS {\r
9847     # Flavor: data\r
9848     # No user value, uncomment the following line to provide one.\r
9849     # user_value "{(char *)\"\", (char *)NULL}"\r
9850     # value_source default\r
9851     # Default value: "{(char *)\"\", (char *)NULL}"\r
9852 };\r
9854 # Startup context for main()\r
9855 # This component describes the options available for\r
9856 # what context main() is invoked in, such as in a thread\r
9857 # etc.\r
9859 cdl_component CYGPKG_LIBC_STARTUP_CONTEXT {\r
9860     # There is no associated value.\r
9861 };\r
9863 # >\r
9864 # Startup context implementors\r
9866 cdl_interface CYGINT_LIBC_STARTUP_CONTEXT {\r
9867     # Implemented by CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT, active, disabled\r
9868     # Implemented by CYGSEM_LIBC_STARTUP_MAIN_THREAD, active, enabled\r
9869     # Implemented by CYGSEM_LIBC_STARTUP_MAIN_OTHER, active, disabled\r
9870     # This value cannot be modified here.\r
9871     # Flavor: data\r
9872     # Current_value: 1\r
9874     # The following properties are affected by this value\r
9875     # package CYGPKG_LIBC_STARTUP\r
9876     #     Requires:  CYGINT_LIBC_STARTUP_CONTEXT == 1 \r
9877 };\r
9879 # Invoked from initialization context\r
9880 # With this option selected, main() will be\r
9881 # called via cyg_user_start() (unless the program\r
9882 # overrides the default cyg_user_start()). This\r
9883 # means it is run in the context of the system\r
9884 # initialization code, without the eCos kernel\r
9885 # scheduler running, and using the startup stack.\r
9886 # This means that any functions that may require \r
9887 # interactions with a running kernel will not\r
9888 # work (including libc functions, if configured\r
9889 # to be thread safe for example), so you should\r
9890 # restrict yourself to only calling fully\r
9891 # re-entrant functions from within main() in\r
9892 # this case.\r
9894 cdl_option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT {\r
9895     # Flavor: bool\r
9896     # No user value, uncomment the following line to provide one.\r
9897     # user_value 0\r
9898     # value_source default\r
9899     # Default value:  0 == CYGPKG_KERNEL && 0 == \r
9900     #                                 CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
9901     #     CYGPKG_KERNEL == v3_0\r
9902     #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0\r
9903     #   --> 0\r
9904 };\r
9906 # Invoked as eCos thread\r
9907 # With this option selected, main() is invoked from an eCos\r
9908 # thread.\r
9910 cdl_component CYGSEM_LIBC_STARTUP_MAIN_THREAD {\r
9911     # Flavor: bool\r
9912     # No user value, uncomment the following line to provide one.\r
9913     # user_value 1\r
9914     # value_source default\r
9915     # Default value:  0 != CYGPKG_KERNEL && 0 ==  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
9916     #     CYGPKG_KERNEL == v3_0\r
9917     #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0\r
9918     #   --> 1\r
9919     # Requires: CYGPKG_KERNEL\r
9920     #     CYGPKG_KERNEL == v3_0\r
9921     #   --> 1\r
9923     # The following properties are affected by this value\r
9924     # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS\r
9925     #     Requires:  CYGSEM_LIBC_STARTUP_MAIN_THREAD ||  (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) \r
9926 };\r
9928 # >\r
9929 # System provides stack for main()'s thread\r
9930 # This option controls whether the stack of\r
9931 # main()'s thread is provided by the application or\r
9932 # provided by the system. When disabled, the\r
9933 # application must declare a pointer variable\r
9934 # cyg_libc_main_stack which is a pointer to an\r
9935 # appropriately aligned region of memory. The\r
9936 # application must also declare a variable of\r
9937 # type `int' called cyg_libc_main_stack_size\r
9938 # which contains the size of the stack in bytes.\r
9939 # This must be a multiple of 8.\r
9941 cdl_option CYGSEM_LIBC_MAIN_STACK_FROM_SYSTEM {\r
9942     # Flavor: bool\r
9943     # No user value, uncomment the following line to provide one.\r
9944     # user_value 1\r
9945     # value_source default\r
9946     # Default value: 1\r
9947 };\r
9949 # Priority of main()'s thread\r
9950 # This option is used to provide the thread\r
9951 # priority which main()'s thread runs at. Be\r
9952 # sure to check that this number is appropriate\r
9953 # for the kernel scheduler chosen. Different\r
9954 # kernel schedulers impose different restrictions\r
9955 # on the usable priorities.\r
9957 cdl_option CYGNUM_LIBC_MAIN_THREAD_PRIORITY {\r
9958     # Flavor: data\r
9959     # No user value, uncomment the following line to provide one.\r
9960     # user_value 10\r
9961     # value_source default\r
9962     # Default value: 10\r
9963     # Legal values: 0 to 0x7fffffff\r
9964 };\r
9966 # <\r
9967 # Invoked elsewhere\r
9968 # With this option selected, main() must be\r
9969 # invoked by a separate package, or by the user.\r
9971 cdl_option CYGSEM_LIBC_STARTUP_MAIN_OTHER {\r
9972     # Flavor: bool\r
9973     # No user value, uncomment the following line to provide one.\r
9974     # user_value 0\r
9975     # value_source default\r
9976     # Default value:  0 !=  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE \r
9977     #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0\r
9978     #   --> 0\r
9979     # Requires: CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE\r
9980     #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0\r
9981     #   --> 0\r
9983     # The following properties are affected by this value\r
9984     # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS\r
9985     #     Requires:  CYGSEM_LIBC_STARTUP_MAIN_THREAD ||  (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) \r
9986 };\r
9988 # <\r
9989 # Don't allow main()'s stack size to be set\r
9990 # This interface describes whether the stack size\r
9991 # value set in this package is supported by the\r
9992 # implementation that invokes main. If not, that\r
9993 # option is disabled.\r
9995 cdl_interface CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE {\r
9996     # Implemented by CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT, active, disabled\r
9997     # This value cannot be modified here.\r
9998     # Flavor: bool\r
9999     # Current value: 0\r
10001     # The following properties are affected by this value\r
10002     # option CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE\r
10003     #     ActiveIf: !CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE\r
10004 };\r
10006 # main()'s default thread stack size\r
10007 # This option sets the size of the stack used\r
10008 # in the context that invokes main(). For example,\r
10009 # with an eCos kernel, when the cyg_iso_c_start()\r
10010 # function is used to invoke the user-supplied\r
10011 # main() function in an ISO C compatible fashion,\r
10012 # a separate thread is created to call main().\r
10013 # This option controls the size of that thread's\r
10014 # stack, which is allocated in the BSS. It\r
10015 # must be a multiple of 8. Note, a low number\r
10016 # here may be overriden by the HAL if there is\r
10017 # a minimum requirement to process interrupts\r
10018 # etc. This option cannot be set if the implementation\r
10019 # that invokes main() does not use it.\r
10021 cdl_option CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE {\r
10022     # ActiveIf constraint: !CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE\r
10023     #     CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE == 0\r
10024     #   --> 1\r
10026     # Flavor: data\r
10027     # No user value, uncomment the following line to provide one.\r
10028     # user_value 8192\r
10029     # value_source default\r
10030     # Default value: 8192\r
10031     # Legal values: 16 to 0x7fffffff\r
10032 };\r
10034 # Include atexit() function\r
10035 # This option enables the use of the atexit()\r
10036 # function, and ensure that the atexit handlers\r
10037 # are invoked from within exit() as defined in\r
10038 # the ISO C standard.\r
10040 cdl_component CYGFUN_LIBC_ATEXIT {\r
10041     # Flavor: bool\r
10042     # No user value, uncomment the following line to provide one.\r
10043     # user_value 1\r
10044     # value_source default\r
10045     # Default value: 1\r
10046 };\r
10048 # >\r
10049 # Number of functions atexit() supports\r
10050 # This option sets the number of functions\r
10051 # that atexit() has room for. In other words,\r
10052 # the number of separate atexit() calls that\r
10053 # can be made before calling exit() or returning\r
10054 # from main() ( in an environment controlled by\r
10055 # cyg_iso_c_start() ). For strict compliance\r
10056 # with the ISO C standard this should be at\r
10057 # least 32.\r
10059 cdl_option CYGNUM_LIBC_ATEXIT_HANDLERS {\r
10060     # Flavor: data\r
10061     # No user value, uncomment the following line to provide one.\r
10062     # user_value 32\r
10063     # value_source default\r
10064     # Default value: 32\r
10065     # Legal values: 1 to 0x7fffffff\r
10066 };\r
10068 # <\r
10069 # Make exit() call fflush()\r
10070 # This option will ensure that all output\r
10071 # streams are flushed when exitting using\r
10072 # exit() as prescribed by the ISO C standard.\r
10074 cdl_option CYGSEM_LIBC_EXIT_CALLS_FFLUSH {\r
10075     # Flavor: bool\r
10076     # No user value, uncomment the following line to provide one.\r
10077     # user_value 1\r
10078     # value_source default\r
10079     # Default value:  0 != CYGINT_ISO_STDIO_FILEACCESS \r
10080     #     CYGINT_ISO_STDIO_FILEACCESS == 1\r
10081     #   --> 1\r
10082     # Requires: CYGINT_ISO_STDIO_FILEACCESS\r
10083     #     CYGINT_ISO_STDIO_FILEACCESS == 1\r
10084     #   --> 1\r
10085 };\r
10087 # _exit() stops all threads\r
10088 # If this option is enabled then _exit(),\r
10089 # which is called from exit() which itself is\r
10090 # called on return from main(), stops the eCos\r
10091 # scheduler. For strict POSIX 1003.1\r
10092 # compatibility this would be the normal\r
10093 # behaviour. To allow the thread to simply\r
10094 # exit, without affecting other threads, simply\r
10095 # leave this option disabled. If there is no eCos\r
10096 # scheduler, then _exit() simply loops\r
10097 # irrespective of the setting of this option.\r
10099 cdl_option CYGSEM_LIBC_EXIT_STOPS_SYSTEM {\r
10100     # Flavor: bool\r
10101     # No user value, uncomment the following line to provide one.\r
10102     # user_value 0\r
10103     # value_source default\r
10104     # Default value: 0\r
10105     # Requires: CYGPKG_KERNEL\r
10106     #     CYGPKG_KERNEL == v3_0\r
10107     #   --> 1\r
10108 };\r
10110 # Default environment\r
10111 # This option allows the setting of the default\r
10112 # contents of the environment. This is in fact\r
10113 # the contents of the global environment pointer\r
10114 # char **environ defined by POSIX 1003.1. Strings\r
10115 # must be of the form NAME=VALUE, and the final\r
10116 # entry must be NULL.\r
10118 cdl_option CYGDAT_LIBC_DEFAULT_ENVIRONMENT {\r
10119     # Flavor: data\r
10120     # No user value, uncomment the following line to provide one.\r
10121     # user_value "{ NULL }"\r
10122     # value_source default\r
10123     # Default value: "{ NULL }"\r
10124 };\r
10126 # Invoke default static constructors\r
10127 # This option causes the C library to call\r
10128 # static constructors with default priority\r
10129 # from within the context of the main() thread,\r
10130 # working with the co-operation of the HAL.\r
10131 # This may be needed for environments that\r
10132 # expect static constructors to be run in a\r
10133 # thread context. Note that this uses an object\r
10134 # with priority 65534. Therefore do not use\r
10135 # priority 65534 for any other static objects\r
10136 # with this option enabled.\r
10138 cdl_option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS {\r
10139     # Flavor: bool\r
10140     # No user value, uncomment the following line to provide one.\r
10141     # user_value 0\r
10142     # value_source default\r
10143     # Default value: 0\r
10144     # Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG\r
10145     #     CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG == 0\r
10146     #   --> 0\r
10147     # Requires:  CYGSEM_LIBC_STARTUP_MAIN_THREAD ||  (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) \r
10148     #     CYGSEM_LIBC_STARTUP_MAIN_THREAD == 1\r
10149     #     CYGSEM_LIBC_STARTUP_MAIN_OTHER == 0\r
10150     #     CYGPKG_POSIX_PTHREAD (unknown) == 0\r
10151     #   --> 1\r
10153     # The following properties are affected by this value\r
10154     # option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG\r
10155     #     Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS\r
10156 };\r
10158 # ISO environment startup/termination build options\r
10159 # Package specific build options including control over\r
10160 # compiler flags used only in building this package,\r
10161 # and details of which tests are built.\r
10163 cdl_component CYGPKG_LIBC_STARTUP_OPTIONS {\r
10164     # There is no associated value.\r
10165 };\r
10167 # >\r
10168 # Additional compiler flags\r
10169 # This option modifies the set of compiler flags for\r
10170 # building this package. These flags are used in addition\r
10171 # to the set of global flags.\r
10173 cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_ADD {\r
10174     # Flavor: data\r
10175     # No user value, uncomment the following line to provide one.\r
10176     # user_value ""\r
10177     # value_source default\r
10178     # Default value: ""\r
10179 };\r
10181 # Suppressed compiler flags\r
10182 # This option modifies the set of compiler flags for\r
10183 # building this package. These flags are removed from\r
10184 # the set of global flags if present.\r
10186 cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_REMOVE {\r
10187     # Flavor: data\r
10188     # No user value, uncomment the following line to provide one.\r
10189     # user_value ""\r
10190     # value_source default\r
10191     # Default value: ""\r
10192 };\r
10194 # ISO environment startup/termination tests\r
10195 # This option specifies the set of tests for this package.\r
10197 cdl_option CYGPKG_LIBC_STARTUP_TESTS {\r
10198     # Calculated value:  "tests/atexit" \r
10199     # Flavor: data\r
10200     # Current_value: tests/atexit\r
10201 };\r
10203 # <\r
10204 # <\r
10205 # ISO C library standard input/output functions\r
10206 # doc: ref/libc.html\r
10207 # This package provides standard input/output functions associated\r
10208 # with the header file <stdio.h> as specified by the\r
10209 # ISO C standard - ISO/IEC 9899:1990.\r
10211 cdl_package CYGPKG_LIBC_STDIO {\r
10212     # Packages cannot be added or removed, nor can their version be changed,\r
10213     # simply by editing their value. Instead the appropriate configuration\r
10214     # should be used to perform these actions.\r
10216     # This value cannot be modified here.\r
10217     # Flavor: booldata\r
10218     # Current value: 1 v3_0\r
10219     # Requires: CYGPKG_IO\r
10220     #     CYGPKG_IO == v3_0\r
10221     #   --> 1\r
10222     # Requires: CYGPKG_LIBC_I18N\r
10223     #     CYGPKG_LIBC_I18N == v3_0\r
10224     #   --> 1\r
10225     # Requires:  (CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE == "\"/dev/ttydiag\"" ?  CYGPKG_IO_SERIAL_HALDIAG : 1) \r
10226     #     CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE == "\"/dev/ttydiag\""\r
10227     #     CYGPKG_IO_SERIAL_HALDIAG == 1\r
10228     #   --> 1\r
10229     # Requires:  CYGBLD_ISO_STDIO_FILETYPES_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10230     #     CYGBLD_ISO_STDIO_FILETYPES_HEADER == <cyg/libc/stdio/stdio.h>\r
10231     #   --> 1\r
10232     # Requires:  CYGBLD_ISO_STDIO_FILEACCESS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10233     #     CYGBLD_ISO_STDIO_FILEACCESS_HEADER == <cyg/libc/stdio/stdio.h>\r
10234     #   --> 1\r
10235     # Requires:  CYGBLD_ISO_STDIO_FILEPOS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10236     #     CYGBLD_ISO_STDIO_FILEPOS_HEADER == <cyg/libc/stdio/stdio.h>\r
10237     #   --> 1\r
10238     # Requires:  CYGBLD_ISO_STDIO_FILEOPS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10239     #     CYGBLD_ISO_STDIO_FILEOPS_HEADER == <cyg/libc/stdio/stdio.h>\r
10240     #   --> 1\r
10241     # Requires:  CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10242     #     CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == <cyg/libc/stdio/stdio.h>\r
10243     #   --> 1\r
10244     # Requires:  CYGBLD_ISO_STDIO_CHAR_IO_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10245     #     CYGBLD_ISO_STDIO_CHAR_IO_HEADER == <cyg/libc/stdio/stdio.h>\r
10246     #   --> 1\r
10247     # Requires:  CYGBLD_ISO_STDIO_DIRECT_IO_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10248     #     CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == <cyg/libc/stdio/stdio.h>\r
10249     #   --> 1\r
10250     # Requires:  CYGBLD_ISO_STDIO_ERROR_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10251     #     CYGBLD_ISO_STDIO_ERROR_HEADER == <cyg/libc/stdio/stdio.h>\r
10252     #   --> 1\r
10253     # Requires:  CYGBLD_ISO_STDIO_STREAMS_HEADER ==  "<cyg/libc/stdio/stdio.h>" \r
10254     #     CYGBLD_ISO_STDIO_STREAMS_HEADER == <cyg/libc/stdio/stdio.h>\r
10255     #   --> 1\r
10256     # Requires: CYGPKG_ISOINFRA\r
10257     #     CYGPKG_ISOINFRA == v3_0\r
10258     #   --> 1\r
10259     # Requires: CYGINT_ISO_ERRNO_CODES\r
10260     #     CYGINT_ISO_ERRNO_CODES == 1\r
10261     #   --> 1\r
10262     # Requires: CYGINT_ISO_ERRNO\r
10263     #     CYGINT_ISO_ERRNO == 1\r
10264     #   --> 1\r
10265     # Requires: CYGINT_ISO_STRERROR\r
10266     #     CYGINT_ISO_STRERROR == 1\r
10267     #   --> 1\r
10268     # Requires: CYGINT_ISO_STRING_STRFUNCS\r
10269     #     CYGINT_ISO_STRING_STRFUNCS == 1\r
10270     #   --> 1\r
10271     # Requires: CYGINT_ISO_STRING_MEMFUNCS\r
10272     #     CYGINT_ISO_STRING_MEMFUNCS == 1\r
10273     #   --> 1\r
10274     # Requires: CYGINT_ISO_STDLIB_STRCONV\r
10275     #     CYGINT_ISO_STDLIB_STRCONV == 1\r
10276     #   --> 1\r
10278     # The following properties are affected by this value\r
10279     # option CYGSEM_LIBM_USE_STDERR\r
10280     #     Requires: CYGPKG_LIBC_STDIO\r
10281 };\r
10283 # >\r
10284 # Inline versions of <stdio.h> functions\r
10285 # This option chooses whether some of the\r
10286 # particularly simple functions from\r
10287 # <stdio.h> are available as inline\r
10288 # functions. This may improve performance, and as\r
10289 # the functions are small, may even improve code\r
10290 # size.\r
10292 cdl_option CYGIMP_LIBC_STDIO_INLINES {\r
10293     # Flavor: bool\r
10294     # No user value, uncomment the following line to provide one.\r
10295     # user_value 1\r
10296     # value_source default\r
10297     # Default value: 1\r
10298 };\r
10300 # Permitted number of open files\r
10301 # This option controls the guaranteed minimum\r
10302 # number of simultaneously open files. The ISO\r
10303 # C standard requires it to be defined (para\r
10304 # 7.9.1), and if strictly compliant, it must be\r
10305 # at least 8 (para 7.9.3). In practice it can be\r
10306 # as low as 3 - for stdin, stdout and stderr.\r
10308 cdl_option FOPEN_MAX {\r
10309     # Flavor: data\r
10310     # No user value, uncomment the following line to provide one.\r
10311     # user_value 8\r
10312     # value_source default\r
10313     # Default value: 8\r
10314     # Legal values: 3 to 0x7fffffff\r
10315 };\r
10317 # Maximum length of filename\r
10318 # This option defines the maximum allowed size of\r
10319 # a filename in characters. The ISO C standard\r
10320 # requires it to be defined (para 7.9.1).\r
10322 cdl_option FILENAME_MAX {\r
10323     # Flavor: data\r
10324     # No user value, uncomment the following line to provide one.\r
10325     # user_value 16\r
10326     # value_source default\r
10327     # Default value: 16\r
10328     # Legal values: 1 to 0x7fffffff\r
10329 };\r
10331 # Maximum length of filenames for temporary files\r
10332 # This option defines the maximum allowed size of\r
10333 # filenames for temporary files as generated by\r
10334 # tmpnam(). It is measured in characters, and the\r
10335 # ISO C standard requires it to be defined (para \r
10336 # 7.9.1).\r
10338 cdl_option L_tmpnam {\r
10339     # Flavor: data\r
10340     # No user value, uncomment the following line to provide one.\r
10341     # user_value 16\r
10342     # value_source default\r
10343     # Default value: 16\r
10344     # Legal values: 4 to 0x7fffffff\r
10345 };\r
10347 # Unique file names generated by tmpnam()\r
10348 # This option defines the minimum number of\r
10349 # unique file names generated by tmpnam(). The\r
10350 # ISO C standard requires it to be defined (para\r
10351 # 7.9.1) and for ISO compliance it should be at least\r
10352 # 25. Note that TMP_MAX names may not be generated\r
10353 # if L_tmpnam is too small.\r
10355 cdl_option TMP_MAX {\r
10356     # Flavor: data\r
10357     # No user value, uncomment the following line to provide one.\r
10358     # user_value 25\r
10359     # value_source default\r
10360     # Default value: 25\r
10361     # Legal values: 1 to 0x7fffffff\r
10362 };\r
10364 # Buffered I/O\r
10365 # This option controls whether input/output\r
10366 # through the <stdio.h> functions is buffered.\r
10367 # This may save some memory per file. It\r
10368 # is equivalent to putting every file into\r
10369 # non-buffered mode (_IONBF) through setvbuf(),\r
10370 # except now it can never be altered back to\r
10371 # buffered mode. Disabling buffering is strictly \r
10372 # non-compliant with the ISO C standard.\r
10374 cdl_component CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO {\r
10375     # Flavor: bool\r
10376     # No user value, uncomment the following line to provide one.\r
10377     # user_value 1\r
10378     # value_source default\r
10379     # Default value: 1\r
10381     # The following properties are affected by this value\r
10382     # option BUFSIZ\r
10383     #     Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0\r
10384     # option CYGPKG_LIBC_STDIO_FILEIO\r
10385     #     Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO\r
10386 };\r
10388 # >\r
10389 # Default buffer size\r
10390 # This option defines the default size of buffer\r
10391 # used with calls to setbuf(), and is the default\r
10392 # size for buffered streams that have not had\r
10393 # either setbuf() or setvbuf() invoked on them.\r
10394 # It is exactly equivalent to the standard\r
10395 # constant BUFSIZ, except that it is 0 if\r
10396 # CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO is disabled.\r
10397 # The ISO C standard requires this to be defined\r
10398 # (para 7.9.1), and says it must be at least 256\r
10399 # (para 7.9.2).\r
10401 cdl_option CYGNUM_LIBC_STDIO_BUFSIZE {\r
10402     # Flavor: data\r
10403     # No user value, uncomment the following line to provide one.\r
10404     # user_value 256\r
10405     # value_source default\r
10406     # Default value: 256\r
10407     # Legal values: 1 to 0x7fffffff\r
10409     # The following properties are affected by this value\r
10410     # option BUFSIZ\r
10411     #     Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0\r
10412 };\r
10414 # setbuf()/setvbuf() allows dynamic setting\r
10415 # This option controls whether I/O buffers are\r
10416 # implemented dynamically within the stdio\r
10417 # implementation. Otherwise they will be static,\r
10418 # and cannot be changed by setbuf()/setvbuf(). If\r
10419 # they are static (i.e. this option is disabled),\r
10420 # any attempt to use an arbitrary buffer size, or\r
10421 # to pass a user-supplied buffer to setbuf() or\r
10422 # setvbuf() will fail - the buffer is implemented\r
10423 # internally as a static array taking the size\r
10424 # of the configuration option BUFSIZ. The only\r
10425 # exception is if a user buffer is not supplied,\r
10426 # and the buffer size requested is less than\r
10427 # BUFSIZ. In this case, the buffer will\r
10428 # be configured to only use that amount of\r
10429 # buffering. However the unused memory left over\r
10430 # will NOT be freed. If this option is enabled,\r
10431 # then setvbuf() can be used to assign a user supplied\r
10432 # buffer to the stream.\r
10433 # Either setting can be considered to\r
10434 # be compliant with the ISO C standard.\r
10436 cdl_option CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF {\r
10437     # Flavor: bool\r
10438     # No user value, uncomment the following line to provide one.\r
10439     # user_value 1\r
10440     # value_source default\r
10441     # Default value: 1\r
10443     # The following properties are affected by this value\r
10444     # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC\r
10445     #     Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF\r
10446     # option CYGPKG_LIBC_STDIO_FILEIO\r
10447     #     Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF\r
10448 };\r
10450 # setbuf()/setvbuf() uses malloc()\r
10451 # This option controls whether buffers set by setbuf() and\r
10452 # setvbuf() may be allocated using malloc().\r
10454 cdl_option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC {\r
10455     # Flavor: bool\r
10456     # No user value, uncomment the following line to provide one.\r
10457     # user_value 1\r
10458     # value_source default\r
10459     # Default value:  0 != CYGINT_ISO_MALLOC \r
10460     #     CYGINT_ISO_MALLOC == 1\r
10461     #   --> 1\r
10462     # Requires: CYGINT_ISO_MALLOC\r
10463     #     CYGINT_ISO_MALLOC == 1\r
10464     #   --> 1\r
10465     # Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF\r
10466     #     CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF == 1\r
10467     #   --> 1\r
10468 };\r
10470 # <\r
10471 # Default buffer size (BUFSIZ)\r
10473 cdl_option BUFSIZ {\r
10474     # Calculated value: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0\r
10475     #     CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1\r
10476     #     CYGNUM_LIBC_STDIO_BUFSIZE == 256\r
10477     # Flavor: data\r
10478     # Current_value: 256\r
10479 };\r
10481 # Support for ungetc()\r
10482 # This option controls whether ungetc() is\r
10483 # supported. If not, then some space can be\r
10484 # saved, and speed is improved. Note that you\r
10485 # MUST have this defined if you want to use the\r
10486 # scanf() family of functions.\r
10488 cdl_option CYGFUN_LIBC_STDIO_ungetc {\r
10489     # Flavor: bool\r
10490     # No user value, uncomment the following line to provide one.\r
10491     # user_value 1\r
10492     # value_source default\r
10493     # Default value: 1\r
10494 };\r
10496 # Dynamic opening/closing of files\r
10497 # fopen() and fclose() use dynamic memory\r
10498 # allocation routines to allocate memory for\r
10499 # new FILE structure pointers. If a malloc\r
10500 # implementation is available, this option\r
10501 # may be enabled to use\r
10502 # fopen() and fclose(). If disabled, only the\r
10503 # default console streams - stdin, stdout and\r
10504 # stderr - will be available.\r
10506 cdl_component CYGPKG_LIBC_STDIO_OPEN {\r
10507     # Flavor: bool\r
10508     # No user value, uncomment the following line to provide one.\r
10509     # user_value 1\r
10510     # value_source default\r
10511     # Default value:  0 != CYGINT_ISO_MALLOC \r
10512     #     CYGINT_ISO_MALLOC == 1\r
10513     #   --> 1\r
10514     # Requires: CYGINT_ISO_MALLOC\r
10515     #     CYGINT_ISO_MALLOC == 1\r
10516     #   --> 1\r
10517 };\r
10519 # >\r
10520 # POSIX fdopen/fileno functions\r
10521 # This identifies to the rest of the system\r
10522 # whether the POSIX fdopen() and\r
10523 # fileno() functions are implemented.\r
10525 cdl_option CYGFUN_LIBC_STDIO_OPEN_POSIX_FDFUNCS {\r
10526     # This option is not active\r
10527     # ActiveIf constraint: CYGPKG_LIBC_STDIO_FILEIO\r
10528     #     CYGPKG_LIBC_STDIO_FILEIO == 0\r
10529     #   --> 0\r
10531     # Calculated value: 1\r
10532     # Flavor: bool\r
10533     # Current value: 1\r
10534 };\r
10536 # <\r
10537 # Default console device\r
10538 # This option allows you to choose the\r
10539 # default console device. In the current\r
10540 # implementation, all these devices begin\r
10541 # with the prefix /dev/ and are followed by\r
10542 # the name of a device. The name of the device\r
10543 # depends on the device drivers you have\r
10544 # configured in your system. For example,\r
10545 # /dev/ttydiag could be the HAL diagnostic output\r
10546 # pseudo-device, or /dev/tty0 could be your\r
10547 # first serial driver, depending on your\r
10548 # configuration.\r
10550 cdl_option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE {\r
10551     # Flavor: data\r
10552     # No user value, uncomment the following line to provide one.\r
10553     # user_value "\"/dev/ttydiag\""\r
10554     # value_source default\r
10555     # Default value:  CYGDAT_IO_SERIAL_TTY_CONSOLE ? CYGDAT_IO_SERIAL_TTY_CONSOLE : "\"/dev/null\"" \r
10556     #     CYGDAT_IO_SERIAL_TTY_CONSOLE == "\"/dev/ttydiag\""\r
10557     #     CYGDAT_IO_SERIAL_TTY_CONSOLE == "\"/dev/ttydiag\""\r
10558     #   --> "\"/dev/ttydiag\""\r
10560     # The following properties are affected by this value\r
10561     # package CYGPKG_LIBC_STDIO\r
10562     #     Requires:  (CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE == "\"/dev/ttydiag\"" ?  CYGPKG_IO_SERIAL_HALDIAG : 1) \r
10563 };\r
10565 # Floating point support\r
10566 # This component allows floating point support\r
10567 # to be enabled in certain standard I/O\r
10568 # functions.\r
10570 cdl_component CYGPKG_LIBC_STDIO_FLOATING_POINT {\r
10571     # There is no associated value.\r
10572 };\r
10574 # >\r
10575 # printf() family\r
10576 # This option enables the use of floating point\r
10577 # number output in the printf() family (i.e.\r
10578 # printf(), sprintf(), vprintf(), etc.) of\r
10579 # functions. A substantial amount of code space\r
10580 # can be saved if this option is disabled. If it\r
10581 # is disabled then floating point specifiers\r
10582 # (%e, %f, %g) are ignored, and nothing is\r
10583 # output.\r
10585 cdl_option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT {\r
10586     # Flavor: bool\r
10587     # No user value, uncomment the following line to provide one.\r
10588     # user_value 1\r
10589     # value_source default\r
10590     # Default value:  0 != CYGPKG_LIBM \r
10591     #     CYGPKG_LIBM == v3_0\r
10592     #   --> 1\r
10593     # Requires: CYGPKG_LIBM\r
10594     #     CYGPKG_LIBM == v3_0\r
10595     #   --> 1\r
10596 };\r
10598 # scanf() family\r
10599 # This option enables the use of floating point\r
10600 # number conversion in the scanf() family (i.e.\r
10601 # scanf(), sscanf(), vscanf(), etc.) of\r
10602 # functions. A substantial amount of code space\r
10603 # can be saved if this option is disabled. If it\r
10604 # is disabled then floating point specifiers\r
10605 # (%e, %f, %g) are ignored, and nothing is\r
10606 # converted.\r
10608 cdl_option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT {\r
10609     # Flavor: bool\r
10610     # No user value, uncomment the following line to provide one.\r
10611     # user_value 1\r
10612     # value_source default\r
10613     # Default value:  0 != CYGPKG_LIBM &&\r
10614     #                                 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT \r
10615     #     CYGPKG_LIBM == v3_0\r
10616     #     CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1\r
10617     #   --> 1\r
10618     # Requires: CYGPKG_LIBM\r
10619     #     CYGPKG_LIBM == v3_0\r
10620     #   --> 1\r
10621     # Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT\r
10622     #     CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1\r
10623     #   --> 1\r
10624 };\r
10626 # <\r
10627 # Long long support\r
10628 # This option allows various functions in the C Standard I/O\r
10629 # library to support the 'long long' datatype. Doing so\r
10630 # will come with a noticeable code size penalty however.\r
10632 cdl_option CYGFUN_LIBC_STDIO_LONGLONG {\r
10633     # Flavor: bool\r
10634     # No user value, uncomment the following line to provide one.\r
10635     # user_value 1\r
10636     # value_source default\r
10637     # Default value: 1\r
10638     # Requires: CYGFUN_LIBC_STDLIB_CONV_LONGLONG\r
10639     #     CYGFUN_LIBC_STDLIB_CONV_LONGLONG == 1\r
10640     #   --> 1\r
10641 };\r
10643 # Thread safe I/O streams\r
10644 # doc: ref/libc-thread-safety.html\r
10645 # This option controls whether standard I/O streams\r
10646 # are thread-safe. Having this option set allows\r
10647 # the streams to be locked when accessed by\r
10648 # multiple threads simultaneously.\r
10650 cdl_option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS {\r
10651     # ActiveIf constraint: CYGPKG_KERNEL\r
10652     #     CYGPKG_KERNEL == v3_0\r
10653     #   --> 1\r
10655     # Flavor: bool\r
10656     # No user value, uncomment the following line to provide one.\r
10657     # user_value 1\r
10658     # value_source default\r
10659     # Default value: 1\r
10660 };\r
10662 # Enable use of FILEIO package for IO operations.\r
10663 # This CDL exists to control how the standard I/O functions\r
10664 # interface to the underlying I/O system. Either using the\r
10665 # File I/O package, or the generic I/O package which is used\r
10666 # by fewer devices.\r
10668 cdl_option CYGPKG_LIBC_STDIO_FILEIO {\r
10669     # This option is not active\r
10670     # ActiveIf constraint: CYGPKG_IO_FILEIO\r
10671     #     CYGPKG_IO_FILEIO (unknown) == 0\r
10672     #   --> 0\r
10674     # Calculated value: 1\r
10675     # Flavor: bool\r
10676     # Current value: 1\r
10677     # Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO\r
10678     #     CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1\r
10679     #   --> 1\r
10680     # Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF\r
10681     #     CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF == 1\r
10682     #   --> 1\r
10684     # The following properties are affected by this value\r
10685     # option CYGFUN_LIBC_STDIO_OPEN_POSIX_FDFUNCS\r
10686     #     ActiveIf: CYGPKG_LIBC_STDIO_FILEIO\r
10687 };\r
10689 # C library stdio functions build options\r
10690 # Package specific build options including control over\r
10691 # compiler flags used only in building this package,\r
10692 # and details of which tests are built.\r
10694 cdl_component CYGPKG_LIBC_STDIO_OPTIONS {\r
10695     # There is no associated value.\r
10696 };\r
10698 # >\r
10699 # Additional compiler flags\r
10700 # This option modifies the set of compiler flags for\r
10701 # building the C library. These flags are used in addition\r
10702 # to the set of global flags.\r
10704 cdl_option CYGPKG_LIBC_STDIO_CFLAGS_ADD {\r
10705     # Flavor: data\r
10706     # No user value, uncomment the following line to provide one.\r
10707     # user_value ""\r
10708     # value_source default\r
10709     # Default value: ""\r
10710 };\r
10712 # Suppressed compiler flags\r
10713 # This option modifies the set of compiler flags for\r
10714 # building the C library. These flags are removed from\r
10715 # the set of global flags if present.\r
10717 cdl_option CYGPKG_LIBC_STDIO_CFLAGS_REMOVE {\r
10718     # Flavor: data\r
10719     # No user value, uncomment the following line to provide one.\r
10720     # user_value ""\r
10721     # value_source default\r
10722     # Default value: ""\r
10723 };\r
10725 # C library stdio function tests\r
10726 # This option specifies the set of tests for the C library\r
10727 # stdio functions.\r
10729 cdl_option CYGPKG_LIBC_STDIO_TESTS {\r
10730     # Calculated value:  \r
10731     #                     "tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput " \r
10732     #                     . ((CYGPKG_IO_FILEIO && CYGPKG_FS_RAM) ? "tests/fileio " : "")\r
10733     #                 \r
10734     #     CYGPKG_IO_FILEIO (unknown) == 0\r
10735     #     CYGPKG_FS_RAM (unknown) == 0\r
10736     # Flavor: data\r
10737     # Current_value: tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput \r
10738 };\r
10740 # <\r
10741 # <\r
10742 # ISO C library general utility functions\r
10743 # doc: ref/libc.html\r
10744 # This package provides general utility functions in <stdlib.h>\r
10745 # as specified by the ISO C standard - ISO/IEC 9899:1990.\r
10747 cdl_package CYGPKG_LIBC_STDLIB {\r
10748     # Packages cannot be added or removed, nor can their version be changed,\r
10749     # simply by editing their value. Instead the appropriate configuration\r
10750     # should be used to perform these actions.\r
10752     # This value cannot be modified here.\r
10753     # Flavor: booldata\r
10754     # Current value: 1 v3_0\r
10755     # Requires: CYGPKG_ISOINFRA\r
10756     #     CYGPKG_ISOINFRA == v3_0\r
10757     #   --> 1\r
10758     # Requires: CYGINT_ISO_CTYPE\r
10759     #     CYGINT_ISO_CTYPE == 1\r
10760     #   --> 1\r
10761     # Requires: CYGINT_ISO_STRING_STRFUNCS\r
10762     #     CYGINT_ISO_STRING_STRFUNCS == 1\r
10763     #   --> 1\r
10764 };\r
10766 # >\r
10767 # Inline versions of <stdlib.h> functions\r
10768 # This option chooses whether some of the\r
10769 # particularly simple standard utility functions\r
10770 # from <stdlib.h> are available as inline\r
10771 # functions. This may improve performance, and as\r
10772 # the functions are small, may even improve code\r
10773 # size.\r
10775 cdl_component CYGIMP_LIBC_STDLIB_INLINES {\r
10776     # There is no associated value.\r
10777 };\r
10779 # >\r
10780 # abs() / labs()\r
10782 cdl_option CYGIMP_LIBC_STDLIB_INLINE_ABS {\r
10783     # Flavor: bool\r
10784     # No user value, uncomment the following line to provide one.\r
10785     # user_value 1\r
10786     # value_source default\r
10787     # Default value: 1\r
10788     # Requires:  CYGBLD_ISO_STDLIB_ABS_HEADER ==  "<cyg/libc/stdlib/abs.inl>" \r
10789     #     CYGBLD_ISO_STDLIB_ABS_HEADER == <cyg/libc/stdlib/abs.inl>\r
10790     #   --> 1\r
10791 };\r
10793 # div() / ldiv()\r
10795 cdl_option CYGIMP_LIBC_STDLIB_INLINE_DIV {\r
10796     # Flavor: bool\r
10797     # No user value, uncomment the following line to provide one.\r
10798     # user_value 1\r
10799     # value_source default\r
10800     # Default value: 1\r
10801     # Requires:  CYGBLD_ISO_STDLIB_DIV_HEADER ==  "<cyg/libc/stdlib/div.inl>" \r
10802     #     CYGBLD_ISO_STDLIB_DIV_HEADER == <cyg/libc/stdlib/div.inl>\r
10803     #   --> 1\r
10804 };\r
10806 # atof() / atoi() / atol()\r
10808 cdl_option CYGIMP_LIBC_STDLIB_INLINE_ATOX {\r
10809     # Flavor: bool\r
10810     # No user value, uncomment the following line to provide one.\r
10811     # user_value 1\r
10812     # value_source default\r
10813     # Default value: 1\r
10814     # Requires:  CYGBLD_ISO_STDLIB_STRCONV_HEADER ==  "<cyg/libc/stdlib/atox.inl>" \r
10815     #     CYGBLD_ISO_STDLIB_STRCONV_HEADER == <cyg/libc/stdlib/atox.inl>\r
10816     #   --> 1\r
10817 };\r
10819 # <\r
10820 # Random number generation\r
10821 # These options control the behaviour of the\r
10822 # functions rand(), srand() and rand_r()\r
10824 cdl_component CYGPKG_LIBC_RAND {\r
10825     # There is no associated value.\r
10826 };\r
10828 # >\r
10829 # Per-thread random seed\r
10830 # doc: ref/libc-thread-safety.html\r
10831 # This option controls whether the pseudo-random\r
10832 # number generation functions rand() and srand()\r
10833 # have their state recorded on a per-thread\r
10834 # basis rather than global. If this option is\r
10835 # disabled, some per-thread space can be saved.\r
10836 # Note there is also a POSIX-standard rand_r()\r
10837 # function to achieve a similar effect with user\r
10838 # support. Enabling this option will use one slot\r
10839 # of kernel per-thread data. You should ensure you\r
10840 # have enough slots configured for all your\r
10841 # per-thread data.\r
10843 cdl_option CYGSEM_LIBC_PER_THREAD_RAND {\r
10844     # Flavor: bool\r
10845     # No user value, uncomment the following line to provide one.\r
10846     # user_value 0\r
10847     # value_source default\r
10848     # Default value: 0\r
10849     # Requires: CYGVAR_KERNEL_THREADS_DATA\r
10850     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
10851     #   --> 1\r
10852 };\r
10854 # Random number seed\r
10855 # This selects the initial random number seed for\r
10856 # rand()'s pseudo-random number generator. For\r
10857 # strict ISO standard compliance, this should be 1,\r
10858 # as per section 7.10.2.2 of the standard.\r
10860 cdl_option CYGNUM_LIBC_RAND_SEED {\r
10861     # Flavor: data\r
10862     # No user value, uncomment the following line to provide one.\r
10863     # user_value 1\r
10864     # value_source default\r
10865     # Default value: 1\r
10866     # Legal values: 0 to 0x7fffffff\r
10867 };\r
10869 # Tracing level\r
10870 # Trace verbosity level for debugging the rand(),\r
10871 # srand() and rand_r() functions. Increase this\r
10872 # value to get additional trace output.\r
10874 cdl_option CYGNUM_LIBC_RAND_TRACE_LEVEL {\r
10875     # Flavor: data\r
10876     # No user value, uncomment the following line to provide one.\r
10877     # user_value 0\r
10878     # value_source default\r
10879     # Default value: 0\r
10880     # Legal values: 0 to 1\r
10881 };\r
10883 # Simplest implementation\r
10884 # This provides a very simple implementation of rand()\r
10885 # that does not perform well with randomness in the\r
10886 # lower significant bits. However it is exceptionally\r
10887 # fast. It uses the sample algorithm from the ISO C\r
10888 # standard itself.\r
10890 cdl_option CYGIMP_LIBC_RAND_SIMPLEST {\r
10891     # Flavor: bool\r
10892     # No user value, uncomment the following line to provide one.\r
10893     # user_value 0\r
10894     # value_source default\r
10895     # Default value: 0\r
10896 };\r
10898 # Simple implementation #1\r
10899 # This provides a very simple implementation of rand()\r
10900 # based on the simplest implementation above. However\r
10901 # it does try to work around the lack of randomness\r
10902 # in the lower significant bits, at the expense of a\r
10903 # little speed.\r
10905 cdl_option CYGIMP_LIBC_RAND_SIMPLE1 {\r
10906     # Flavor: bool\r
10907     # No user value, uncomment the following line to provide one.\r
10908     # user_value 1\r
10909     # value_source default\r
10910     # Default value: 1\r
10911 };\r
10913 # Knuth implementation #1\r
10914 # This implements a slightly more complex algorithm\r
10915 # published in Donald E. Knuth's Art of Computer\r
10916 # Programming Vol.2 section 3.6 (p.185 in the 3rd ed.).\r
10917 # This produces better random numbers than the\r
10918 # simplest approach but is slower.\r
10920 cdl_option CYGIMP_LIBC_RAND_KNUTH1 {\r
10921     # Flavor: bool\r
10922     # No user value, uncomment the following line to provide one.\r
10923     # user_value 0\r
10924     # value_source default\r
10925     # Default value: 0\r
10926 };\r
10928 # <\r
10929 # Provides strtod()\r
10930 # This option allows use of the utility function\r
10931 # strtod() (and consequently atof()) to convert\r
10932 # from string to double precision floating point\r
10933 # numbers. Disabling this option removes the\r
10934 # dependency on the math library package.\r
10936 cdl_option CYGFUN_LIBC_strtod {\r
10937     # Flavor: bool\r
10938     # No user value, uncomment the following line to provide one.\r
10939     # user_value 1\r
10940     # value_source default\r
10941     # Default value:  0 != CYGPKG_LIBM \r
10942     #     CYGPKG_LIBM == v3_0\r
10943     #   --> 1\r
10944     # Requires: CYGPKG_LIBM\r
10945     #     CYGPKG_LIBM == v3_0\r
10946     #   --> 1\r
10947 };\r
10949 # Provides long long conversion functions\r
10950 # Enabling this option will provide support for the strtoll(),\r
10951 # strtoull() and atoll() conversion functions, which are\r
10952 # the long long variants of the standard versions of these\r
10953 # functions. Supporting this requires extra code and compile\r
10954 # time.\r
10956 cdl_option CYGFUN_LIBC_STDLIB_CONV_LONGLONG {\r
10957     # Flavor: bool\r
10958     # No user value, uncomment the following line to provide one.\r
10959     # user_value 1\r
10960     # value_source default\r
10961     # Default value: 1\r
10963     # The following properties are affected by this value\r
10964     # option CYGFUN_LIBC_STDIO_LONGLONG\r
10965     #     Requires: CYGFUN_LIBC_STDLIB_CONV_LONGLONG\r
10966 };\r
10968 # bsearch() tracing level\r
10969 # Trace verbosity level for debugging the <stdlib.h>\r
10970 # binary search function bsearch(). Increase this\r
10971 # value to get additional trace output.\r
10973 cdl_option CYGNUM_LIBC_BSEARCH_TRACE_LEVEL {\r
10974     # Flavor: data\r
10975     # No user value, uncomment the following line to provide one.\r
10976     # user_value 0\r
10977     # value_source default\r
10978     # Default value: 0\r
10979     # Legal values: 0 to 1\r
10980 };\r
10982 # qsort() tracing level\r
10983 # Trace verbosity level for debugging the <stdlib.h>\r
10984 # quicksort function qsort(). Increase this value\r
10985 # to get additional trace output.\r
10987 cdl_option CYGNUM_LIBC_QSORT_TRACE_LEVEL {\r
10988     # Flavor: data\r
10989     # No user value, uncomment the following line to provide one.\r
10990     # user_value 0\r
10991     # value_source default\r
10992     # Default value: 0\r
10993     # Legal values: 0 to 1\r
10994 };\r
10996 # C library stdlib build options\r
10997 # Package specific build options including control over\r
10998 # compiler flags used only in building this package,\r
10999 # and details of which tests are built.\r
11001 cdl_component CYGPKG_LIBC_STDLIB_OPTIONS {\r
11002     # There is no associated value.\r
11003 };\r
11005 # >\r
11006 # Additional compiler flags\r
11007 # This option modifies the set of compiler flags for\r
11008 # building this package. These flags are used in addition\r
11009 # to the set of global flags.\r
11011 cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_ADD {\r
11012     # Flavor: data\r
11013     # No user value, uncomment the following line to provide one.\r
11014     # user_value ""\r
11015     # value_source default\r
11016     # Default value: ""\r
11017 };\r
11019 # Suppressed compiler flags\r
11020 # This option modifies the set of compiler flags for\r
11021 # building this package. These flags are removed from\r
11022 # the set of global flags if present.\r
11024 cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_REMOVE {\r
11025     # Flavor: data\r
11026     # No user value, uncomment the following line to provide one.\r
11027     # user_value ""\r
11028     # value_source default\r
11029     # Default value: ""\r
11030 };\r
11032 # C library stdlib tests\r
11033 # This option specifies the set of tests for this package.\r
11035 cdl_option CYGPKG_LIBC_STDLIB_TESTS {\r
11036     # Calculated value:  "tests/abs tests/atoi tests/atol tests/bsearch tests/div tests/getenv tests/labs tests/ldiv tests/qsort tests/rand1 tests/rand2 tests/rand3 tests/rand4 tests/srand tests/strtol tests/strtoul" \r
11037     # Flavor: data\r
11038     # Current_value: tests/abs tests/atoi tests/atol tests/bsearch tests/div tests/getenv tests/labs tests/ldiv tests/qsort tests/rand1 tests/rand2 tests/rand3 tests/rand4 tests/srand tests/strtol tests/strtoul\r
11039 };\r
11041 # <\r
11042 # <\r
11043 # ISO C library string functions\r
11044 # doc: ref/libc.html\r
11045 # This package provides string functions specified by the\r
11046 # ISO C standard - ISO/IEC 9899:1990.\r
11048 cdl_package CYGPKG_LIBC_STRING {\r
11049     # Packages cannot be added or removed, nor can their version be changed,\r
11050     # simply by editing their value. Instead the appropriate configuration\r
11051     # should be used to perform these actions.\r
11053     # This value cannot be modified here.\r
11054     # Flavor: booldata\r
11055     # Current value: 1 v3_0\r
11056     # Requires:  CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER ==  "<cyg/libc/string/string.h>" \r
11057     #     CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == <cyg/libc/string/string.h>\r
11058     #   --> 1\r
11059     # Requires:  CYGBLD_ISO_STRING_MEMFUNCS_HEADER ==  "<cyg/libc/string/string.h>" \r
11060     #     CYGBLD_ISO_STRING_MEMFUNCS_HEADER == <cyg/libc/string/string.h>\r
11061     #   --> 1\r
11062     # Requires:  CYGBLD_ISO_STRING_STRFUNCS_HEADER ==  "<cyg/libc/string/string.h>" \r
11063     #     CYGBLD_ISO_STRING_STRFUNCS_HEADER == <cyg/libc/string/string.h>\r
11064     #   --> 1\r
11065     # Requires:  CYGBLD_ISO_STRTOK_R_HEADER ==  "<cyg/libc/string/string.h>" \r
11066     #     CYGBLD_ISO_STRTOK_R_HEADER == <cyg/libc/string/string.h>\r
11067     #   --> 1\r
11068     # Requires: CYGPKG_ISOINFRA\r
11069     #     CYGPKG_ISOINFRA == v3_0\r
11070     #   --> 1\r
11071 };\r
11073 # >\r
11074 # Inline versions of <string.h> functions\r
11075 # This option chooses whether some of the\r
11076 # particularly simple string functions from\r
11077 # <string.h> are available as inline\r
11078 # functions. This may improve performance, and as\r
11079 # the functions are small, may even improve code\r
11080 # size.\r
11082 cdl_option CYGIMP_LIBC_STRING_INLINES {\r
11083     # Flavor: bool\r
11084     # No user value, uncomment the following line to provide one.\r
11085     # user_value 1\r
11086     # value_source default\r
11087     # Default value: 1\r
11088 };\r
11090 # Optimize string functions for code size\r
11091 # This option tries to reduce string function\r
11092 # code size at the expense of execution speed. The\r
11093 # same effect can be produced if the code is\r
11094 # compiled with the -Os option to the compiler.\r
11096 cdl_option CYGIMP_LIBC_STRING_PREFER_SMALL_TO_FAST {\r
11097     # Flavor: bool\r
11098     # No user value, uncomment the following line to provide one.\r
11099     # user_value 0\r
11100     # value_source default\r
11101     # Default value: 0\r
11102 };\r
11104 # Provide BSD compatibility functions\r
11105 # Enabling this option causes various compatibility functions\r
11106 # commonly found in the BSD UNIX operating system to be included.\r
11107 # These are functions such as bzero, bcmp, bcopy, bzero, strcasecmp,\r
11108 # strncasecmp, index, rindex and swab.\r
11110 cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {\r
11111     # Flavor: bool\r
11112     # No user value, uncomment the following line to provide one.\r
11113     # user_value 1\r
11114     # value_source default\r
11115     # Default value: 1\r
11116     # Requires:  CYGBLD_ISO_STRING_BSD_FUNCS_HEADER ==  "<cyg/libc/string/bsdstring.h>" \r
11117     #     CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == <cyg/libc/string/bsdstring.h>\r
11118     #   --> 1\r
11119     # Requires: CYGINT_ISO_CTYPE\r
11120     #     CYGINT_ISO_CTYPE == 1\r
11121     #   --> 1\r
11122 };\r
11124 # strtok\r
11125 # These options control the behaviour of the\r
11126 # strtok() and strtok_r() string tokenization\r
11127 # functions.\r
11129 cdl_component CYGPKG_LIBC_STRING_STRTOK {\r
11130     # There is no associated value.\r
11131 };\r
11133 # >\r
11134 # Per-thread strtok()\r
11135 # This option controls whether the string function\r
11136 # strtok() has its state recorded on a per-thread\r
11137 # basis rather than global. If this option is\r
11138 # disabled, some per-thread space can be saved.\r
11139 # Note there is also a POSIX-standard strtok_r()\r
11140 # function to achieve a similar effect with user\r
11141 # support. Enabling this option will use one slot\r
11142 # of kernel per-thread data. You should ensure you\r
11143 # have enough slots configured for all your\r
11144 # per-thread data.\r
11146 cdl_option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK {\r
11147     # ActiveIf constraint: CYGPKG_KERNEL\r
11148     #     CYGPKG_KERNEL == v3_0\r
11149     #   --> 1\r
11151     # Flavor: bool\r
11152     # No user value, uncomment the following line to provide one.\r
11153     # user_value 1\r
11154     # value_source default\r
11155     # Default value: CYGVAR_KERNEL_THREADS_DATA\r
11156     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
11157     #   --> 1\r
11158     # Requires: CYGVAR_KERNEL_THREADS_DATA\r
11159     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
11160     #   --> 1\r
11161 };\r
11163 # Tracing level\r
11164 # Trace verbosity level for debugging the <string.h>\r
11165 # functions strtok() and strtok_r(). Increase this\r
11166 # value to get additional trace output.\r
11168 cdl_option CYGNUM_LIBC_STRING_STRTOK_TRACE_LEVEL {\r
11169     # Flavor: data\r
11170     # No user value, uncomment the following line to provide one.\r
11171     # user_value 0\r
11172     # value_source default\r
11173     # Default value: 0\r
11174     # Legal values: 0 to 1\r
11175 };\r
11177 # <\r
11178 # strdup\r
11179 # This option indicates whether strdup() is to be supported.\r
11181 cdl_option CYGFUN_LIBC_STRING_STRDUP {\r
11182     # ActiveIf constraint: CYGINT_ISO_MALLOC\r
11183     #     CYGINT_ISO_MALLOC == 1\r
11184     #   --> 1\r
11186     # Calculated value: 1\r
11187     # Flavor: bool\r
11188     # Current value: 1\r
11189 };\r
11191 # C library string functions build options\r
11192 # Package specific build options including control over\r
11193 # compiler flags used only in building this package,\r
11194 # and details of which tests are built.\r
11196 cdl_component CYGPKG_LIBC_STRING_OPTIONS {\r
11197     # There is no associated value.\r
11198 };\r
11200 # >\r
11201 # Additional compiler flags\r
11202 # This option modifies the set of compiler flags for\r
11203 # building the C library. These flags are used in addition\r
11204 # to the set of global flags.\r
11206 cdl_option CYGPKG_LIBC_STRING_CFLAGS_ADD {\r
11207     # Flavor: data\r
11208     # No user value, uncomment the following line to provide one.\r
11209     # user_value ""\r
11210     # value_source default\r
11211     # Default value: ""\r
11212 };\r
11214 # Suppressed compiler flags\r
11215 # This option modifies the set of compiler flags for\r
11216 # building the C library. These flags are removed from\r
11217 # the set of global flags if present.\r
11219 cdl_option CYGPKG_LIBC_STRING_CFLAGS_REMOVE {\r
11220     # Flavor: data\r
11221     # No user value, uncomment the following line to provide one.\r
11222     # user_value ""\r
11223     # value_source default\r
11224     # Default value: ""\r
11225 };\r
11227 # C library string function tests\r
11228 # This option specifies the set of tests for the C library\r
11229 # string functions.\r
11231 cdl_option CYGPKG_LIBC_STRING_TESTS {\r
11232     # Calculated value:  "tests/memchr tests/memcmp1 tests/memcmp2 tests/memcpy1 tests/memcpy2 tests/memmove1 tests/memmove2 tests/memset tests/strcat1 tests/strcat2 tests/strchr tests/strcmp1 tests/strcmp2 tests/strcoll1 tests/strcoll2 tests/strcpy1 tests/strcpy2 tests/strcspn tests/strcspn tests/strlen tests/strncat1 tests/strncat2 tests/strncpy1 tests/strncpy2 tests/strpbrk tests/strrchr tests/strspn tests/strstr tests/strtok tests/strxfrm1 tests/strxfrm2" \r
11233     # Flavor: data\r
11234     # Current_value: tests/memchr tests/memcmp1 tests/memcmp2 tests/memcpy1 tests/memcpy2 tests/memmove1 tests/memmove2 tests/memset tests/strcat1 tests/strcat2 tests/strchr tests/strcmp1 tests/strcmp2 tests/strcoll1 tests/strcoll2 tests/strcpy1 tests/strcpy2 tests/strcspn tests/strcspn tests/strlen tests/strncat1 tests/strncat2 tests/strncpy1 tests/strncpy2 tests/strpbrk tests/strrchr tests/strspn tests/strstr tests/strtok tests/strxfrm1 tests/strxfrm2\r
11235 };\r
11237 # <\r
11238 # <\r
11239 # ISO C library date and time functions\r
11240 # doc: ref/libc.html\r
11241 # This package provides time functions specified by the\r
11242 # ISO C standard - ISO/IEC 9899:1990.\r
11244 cdl_package CYGPKG_LIBC_TIME {\r
11245     # Packages cannot be added or removed, nor can their version be changed,\r
11246     # simply by editing their value. Instead the appropriate configuration\r
11247     # should be used to perform these actions.\r
11249     # This value cannot be modified here.\r
11250     # Flavor: booldata\r
11251     # Current value: 1 v3_0\r
11252     # Requires:  CYGBLD_ISO_C_TIME_TYPES_HEADER == "<cyg/libc/time/time.h>" \r
11253     #     CYGBLD_ISO_C_TIME_TYPES_HEADER == <cyg/libc/time/time.h>\r
11254     #   --> 1\r
11255     # Requires:  CYGBLD_ISO_C_CLOCK_FUNCS_HEADER ==  "<cyg/libc/time/time.h>" \r
11256     #     CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == <cyg/libc/time/time.h>\r
11257     #   --> 1\r
11258     # Requires: CYGPKG_ISOINFRA\r
11259     #     CYGPKG_ISOINFRA == v3_0\r
11260     #   --> 1\r
11261     # Requires: CYGINT_ISO_DIV\r
11262     #     CYGINT_ISO_DIV == 1\r
11263     #   --> 1\r
11264     # Requires: CYGINT_ISO_ABS\r
11265     #     CYGINT_ISO_ABS == 1\r
11266     #   --> 1\r
11267 };\r
11269 # >\r
11270 # Working clock() function\r
11271 # This option controls whether clock() will\r
11272 # actually try and determine the process time\r
11273 # usage. With this option disabled, clock() does\r
11274 # not disappear, but will permanently return\r
11275 # (clock_t)-1 as mandated by the ISO C standard.\r
11277 cdl_option CYGSEM_LIBC_TIME_CLOCK_WORKING {\r
11278     # Flavor: bool\r
11279     # No user value, uncomment the following line to provide one.\r
11280     # user_value 1\r
11281     # value_source default\r
11282     # Default value: 1\r
11283     # Requires: CYGFUN_KERNEL_THREADS_TIMER\r
11284     #     CYGFUN_KERNEL_THREADS_TIMER == 1\r
11285     #   --> 1\r
11286     # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK\r
11287     #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1\r
11288     #   --> 1\r
11289 };\r
11291 # Working time() function\r
11292 # This option controls whether time() will\r
11293 # actually try and determine the current calendar\r
11294 # time. With this option disabled, time() does\r
11295 # not disappear, but will permanently return\r
11296 # (time_t)-1 as mandated by the ISO C standard.\r
11298 cdl_option CYGSEM_LIBC_TIME_TIME_WORKING {\r
11299     # Flavor: bool\r
11300     # No user value, uncomment the following line to provide one.\r
11301     # user_value 1\r
11302     # value_source default\r
11303     # Default value: 1\r
11304     # Requires: CYGPKG_IO_WALLCLOCK\r
11305     #     CYGPKG_IO_WALLCLOCK == v3_0\r
11306     #   --> 1\r
11307 };\r
11309 # Working cyg_libc_time_settime() function\r
11310 # This option controls whether cyg_libc_time_settime()\r
11311 # will actually try and set the current calendar\r
11312 # time. With this option disabled,\r
11313 # cyg_libc_time_settime() does not disappear, but\r
11314 # will permanently return an error.\r
11316 cdl_option CYGSEM_LIBC_TIME_SETTIME_WORKING {\r
11317     # Flavor: bool\r
11318     # No user value, uncomment the following line to provide one.\r
11319     # user_value 1\r
11320     # value_source default\r
11321     # Default value: 1\r
11322     # Requires: CYGPKG_IO_WALLCLOCK\r
11323     #     CYGPKG_IO_WALLCLOCK == v3_0\r
11324     #   --> 1\r
11325 };\r
11327 # POSIX time functions\r
11328 # Enabling this option allows the use of the\r
11329 # following functions defined in POSIX 1003.1:\r
11330 # asctime_r(), ctime_r(), gmtime_r(), strptime(), and\r
11331 # localtime_r().\r
11333 cdl_option CYGFUN_LIBC_TIME_POSIX {\r
11334     # Flavor: bool\r
11335     # No user value, uncomment the following line to provide one.\r
11336     # user_value 1\r
11337     # value_source default\r
11338     # Default value: 1\r
11339     # Requires: CYGINT_ISO_STRING_BSD_FUNCS\r
11340     #     CYGINT_ISO_STRING_BSD_FUNCS == 1\r
11341     #   --> 1\r
11343     # The following properties are affected by this value\r
11344     # option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE\r
11345     #     Requires: CYGFUN_LIBC_TIME_POSIX\r
11346     # option CYGIMP_LIBC_TIME_CTIME_R_INLINE\r
11347     #     Requires: CYGFUN_LIBC_TIME_POSIX\r
11348     # option CYGIMP_LIBC_TIME_GMTIME_R_INLINE\r
11349     #     Requires: CYGFUN_LIBC_TIME_POSIX\r
11350     # option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE\r
11351     #     Requires: CYGFUN_LIBC_TIME_POSIX\r
11352     # option CYGPKG_LIBC_TIME_TESTS\r
11353     #     Calculated:  \r
11354     #                     "tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time " \r
11355     #                     . (CYGFUN_LIBC_TIME_POSIX ? "tests/strptime" : "")\r
11356     #                 \r
11357 };\r
11359 # Single UNIX extensions\r
11360 # Enabling this option allows the use of\r
11361 # certain additional conversion specifiers\r
11362 # in the strftime function.\r
11364 cdl_option CYGFUN_LIBC_TIME_SUS_EXTNS {\r
11365     # Flavor: bool\r
11366     # No user value, uncomment the following line to provide one.\r
11367     # user_value 0\r
11368     # value_source default\r
11369     # Default value: 0\r
11370 };\r
11372 # Time zone offsets\r
11373 # These options control the default STandarD (STD)\r
11374 # and Daylight Savings Time (DST)\r
11375 # time offsets so that dates can be set correctly\r
11376 # for the local environment.\r
11378 cdl_component CYGPKG_LIBC_TIME_ZONES {\r
11379     # There is no associated value.\r
11380 };\r
11382 # >\r
11383 # Default Daylight Savings Time state\r
11384 # This option controls whether the initial\r
11385 # time environment is set up as STD, DST or\r
11386 # unknown. Use the value 1 for DST, 0 for STD, \r
11387 # and (-1) for unknown. This can also be set at\r
11388 # runtime using the cyg_libc_time_setdst()\r
11389 # function.\r
11391 cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_STATE {\r
11392     # Flavor: data\r
11393     # No user value, uncomment the following line to provide one.\r
11394     # user_value -1\r
11395     # value_source default\r
11396     # Default value: -1\r
11397     # Legal values: -1 to 1\r
11398 };\r
11400 # Default Standard Time offset\r
11401 # This option controls the offset from UTC in\r
11402 # seconds when in local Standard Time. This\r
11403 # value can be positive or negative. It\r
11404 # can also be set at run time using the\r
11405 # cyg_libc_time_setzoneoffsets() function.\r
11407 cdl_option CYGNUM_LIBC_TIME_STD_DEFAULT_OFFSET {\r
11408     # Flavor: data\r
11409     # No user value, uncomment the following line to provide one.\r
11410     # user_value 0\r
11411     # value_source default\r
11412     # Default value: 0\r
11413     # Legal values: -90000 to 90000\r
11414 };\r
11416 # Default Daylight Savings Time offset\r
11417 # This option controls the offset from UTC in\r
11418 # seconds when in local Daylight Savings Time. This\r
11419 # value can be positive or negative. It\r
11420 # can also be set at run time using the\r
11421 # cyg_libc_time_setzoneoffsets() function.\r
11423 cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_OFFSET {\r
11424     # Flavor: data\r
11425     # No user value, uncomment the following line to provide one.\r
11426     # user_value 3600\r
11427     # value_source default\r
11428     # Default value: 3600\r
11429     # Legal values: -90000 to 90000\r
11430 };\r
11432 # <\r
11433 # Inline functions\r
11434 # These options control whether certain functions\r
11435 # are available in inline form. This may lead to\r
11436 # faster code at the expense of code space. But for\r
11437 # some functions, or some functions with constant\r
11438 # arguments, it may in fact lead to smaller code.\r
11440 cdl_component CYGPKG_LIBC_TIME_INLINES {\r
11441     # There is no associated value.\r
11442 };\r
11444 # >\r
11445 # asctime()\r
11446 # Allow the asctime() function to be inlined\r
11448 cdl_option CYGIMP_LIBC_TIME_ASCTIME_INLINE {\r
11449     # Flavor: bool\r
11450     # No user value, uncomment the following line to provide one.\r
11451     # user_value 1\r
11452     # value_source default\r
11453     # Default value: 1\r
11454 };\r
11456 # ctime()\r
11457 # Allow the ctime() function to be inlined\r
11459 cdl_option CYGIMP_LIBC_TIME_CTIME_INLINE {\r
11460     # Flavor: bool\r
11461     # No user value, uncomment the following line to provide one.\r
11462     # user_value 1\r
11463     # value_source default\r
11464     # Default value: 1\r
11465 };\r
11467 # difftime()\r
11468 # Allow the difftime() function to be inlined\r
11470 cdl_option CYGIMP_LIBC_TIME_DIFFTIME_INLINE {\r
11471     # Flavor: bool\r
11472     # No user value, uncomment the following line to provide one.\r
11473     # user_value 1\r
11474     # value_source default\r
11475     # Default value: 1\r
11476 };\r
11478 # gmtime()\r
11479 # Allow the gmtime() function to be inlined\r
11481 cdl_option CYGIMP_LIBC_TIME_GMTIME_INLINE {\r
11482     # Flavor: bool\r
11483     # No user value, uncomment the following line to provide one.\r
11484     # user_value 1\r
11485     # value_source default\r
11486     # Default value: 1\r
11487 };\r
11489 # localtime()\r
11490 # Allow the localtime() function to be inlined\r
11492 cdl_option CYGIMP_LIBC_TIME_LOCALTIME_INLINE {\r
11493     # Flavor: bool\r
11494     # No user value, uncomment the following line to provide one.\r
11495     # user_value 1\r
11496     # value_source default\r
11497     # Default value: 1\r
11498 };\r
11500 # mktime()\r
11501 # Allow the mktime() function to be inlined\r
11503 cdl_option CYGIMP_LIBC_TIME_MKTIME_INLINE {\r
11504     # Flavor: bool\r
11505     # No user value, uncomment the following line to provide one.\r
11506     # user_value 0\r
11507     # value_source default\r
11508     # Default value: 0\r
11509 };\r
11511 # asctime_r()\r
11512 # Allow the asctime_r() function to be inlined\r
11514 cdl_option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE {\r
11515     # Flavor: bool\r
11516     # No user value, uncomment the following line to provide one.\r
11517     # user_value 1\r
11518     # value_source default\r
11519     # Default value: 1\r
11520     # Requires: CYGFUN_LIBC_TIME_POSIX\r
11521     #     CYGFUN_LIBC_TIME_POSIX == 1\r
11522     #   --> 1\r
11523 };\r
11525 # ctime_r()\r
11526 # Allow the ctime_r() function to be inlined\r
11528 cdl_option CYGIMP_LIBC_TIME_CTIME_R_INLINE {\r
11529     # Flavor: bool\r
11530     # No user value, uncomment the following line to provide one.\r
11531     # user_value 1\r
11532     # value_source default\r
11533     # Default value: 1\r
11534     # Requires: CYGFUN_LIBC_TIME_POSIX\r
11535     #     CYGFUN_LIBC_TIME_POSIX == 1\r
11536     #   --> 1\r
11537 };\r
11539 # gmtime_r()\r
11540 # Allow the gmtime_r() function to be inlined\r
11542 cdl_option CYGIMP_LIBC_TIME_GMTIME_R_INLINE {\r
11543     # Flavor: bool\r
11544     # No user value, uncomment the following line to provide one.\r
11545     # user_value 0\r
11546     # value_source default\r
11547     # Default value: 0\r
11548     # Requires: CYGFUN_LIBC_TIME_POSIX\r
11549     #     CYGFUN_LIBC_TIME_POSIX == 1\r
11550     #   --> 1\r
11551 };\r
11553 # localtime_r()\r
11554 # Allow the localtime_r() function to be inlined\r
11556 cdl_option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE {\r
11557     # Flavor: bool\r
11558     # No user value, uncomment the following line to provide one.\r
11559     # user_value 1\r
11560     # value_source default\r
11561     # Default value: 1\r
11562     # Requires: CYGFUN_LIBC_TIME_POSIX\r
11563     #     CYGFUN_LIBC_TIME_POSIX == 1\r
11564     #   --> 1\r
11565 };\r
11567 # <\r
11568 # clock() tracing level\r
11569 # Trace verbosity level for debugging the clock()\r
11570 # function. Increase this value to get\r
11571 # additional trace output when tracing is enabled.\r
11573 cdl_option CYGNUM_LIBC_TIME_CLOCK_TRACE_LEVEL {\r
11574     # Flavor: data\r
11575     # No user value, uncomment the following line to provide one.\r
11576     # user_value 0\r
11577     # value_source default\r
11578     # Default value: 0\r
11579     # Legal values: 0 to 1\r
11580 };\r
11582 # C library time functions build options\r
11583 # Package specific build options including control over\r
11584 # compiler flags used only in building this package,\r
11585 # and details of which tests are built.\r
11587 cdl_component CYGPKG_LIBC_TIME_OPTIONS {\r
11588     # There is no associated value.\r
11589 };\r
11591 # >\r
11592 # Additional compiler flags\r
11593 # This option modifies the set of compiler flags for\r
11594 # building the C library. These flags are used in addition\r
11595 # to the set of global flags.\r
11597 cdl_option CYGPKG_LIBC_TIME_CFLAGS_ADD {\r
11598     # Flavor: data\r
11599     # No user value, uncomment the following line to provide one.\r
11600     # user_value -Wno-format\r
11601     # value_source default\r
11602     # Default value: -Wno-format\r
11603 };\r
11605 # Suppressed compiler flags\r
11606 # This option modifies the set of compiler flags for\r
11607 # building the C library. These flags are removed from\r
11608 # the set of global flags if present.\r
11610 cdl_option CYGPKG_LIBC_TIME_CFLAGS_REMOVE {\r
11611     # Flavor: data\r
11612     # No user value, uncomment the following line to provide one.\r
11613     # user_value ""\r
11614     # value_source default\r
11615     # Default value: ""\r
11616 };\r
11618 # C library time and date function tests\r
11619 # This option specifies the set of tests for the C library\r
11620 # time and date functions.\r
11622 cdl_option CYGPKG_LIBC_TIME_TESTS {\r
11623     # Calculated value:  \r
11624     #                     "tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time " \r
11625     #                     . (CYGFUN_LIBC_TIME_POSIX ? "tests/strptime" : "")\r
11626     #                 \r
11627     #     CYGFUN_LIBC_TIME_POSIX == 1\r
11628     # Flavor: data\r
11629     # Current_value: tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time tests/strptime\r
11630 };\r
11632 # <\r
11633 # <\r
11634 # <\r
11635 # Math library\r
11636 # doc: ref/libc.html\r
11637 # ISO standard floating point mathematical library\r
11638 # containing many useful functions for mathematical\r
11639 # calculations.\r
11641 cdl_package CYGPKG_LIBM {\r
11642     # Packages cannot be added or removed, nor can their version be changed,\r
11643     # simply by editing their value. Instead the appropriate configuration\r
11644     # should be used to perform these actions.\r
11646     # This value cannot be modified here.\r
11647     # Flavor: booldata\r
11648     # Current value: 1 v3_0\r
11650     # The following properties are affected by this value\r
11651     # option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT\r
11652     #     Requires: CYGPKG_LIBM\r
11653     # option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT\r
11654     #     DefaultValue:  0 != CYGPKG_LIBM \r
11655     # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT\r
11656     #     Requires: CYGPKG_LIBM\r
11657     # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT\r
11658     #     DefaultValue:  0 != CYGPKG_LIBM &&\r
11659     #                                 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT \r
11660     # option CYGFUN_LIBC_strtod\r
11661     #     Requires: CYGPKG_LIBM\r
11662     # option CYGFUN_LIBC_strtod\r
11663     #     DefaultValue:  0 != CYGPKG_LIBM \r
11664 };\r
11666 # >\r
11667 # Compatibility mode\r
11668 # These options deal with behaviour related to\r
11669 # the various compatibility modes - POSIX, IEEE,\r
11670 # X/OPEN and SVID.\r
11672 cdl_component CYGPKG_LIBM_COMPATIBILITY {\r
11673     # There is no associated value.\r
11674 };\r
11676 # >\r
11678 cdl_interface CYGINT_LIBM_COMPAT {\r
11679     # Implemented by CYGSEM_LIBM_COMPAT_IEEE_ONLY, active, disabled\r
11680     # Implemented by CYGNUM_LIBM_COMPATIBILITY, active, enabled\r
11681     # This value cannot be modified here.\r
11682     # Flavor: data\r
11683     # Current_value: 1\r
11684     # Requires: 1 == CYGINT_LIBM_COMPAT\r
11685     #     CYGINT_LIBM_COMPAT == 1\r
11686     #   --> 1\r
11688     # The following properties are affected by this value\r
11689     # interface CYGINT_LIBM_COMPAT\r
11690     #     Requires: 1 == CYGINT_LIBM_COMPAT\r
11691 };\r
11693 # IEEE-only\r
11694 # The math library can be hard-coded to only\r
11695 # behave in one compatibility mode - IEEE. This\r
11696 # cannot be changed at run-time. IEEE mode is the\r
11697 # most minimal of the compatibility modes, and so\r
11698 # this will best help code size and speed, as well\r
11699 # as omitting the code for other compatibility\r
11700 # modes. If not defined, the math library can be\r
11701 # set at run-time to any of the supported\r
11702 # compatibility modes.\r
11704 cdl_option CYGSEM_LIBM_COMPAT_IEEE_ONLY {\r
11705     # Flavor: bool\r
11706     # No user value, uncomment the following line to provide one.\r
11707     # user_value 0\r
11708     # value_source default\r
11709     # Default value: 0\r
11711     # The following properties are affected by this value\r
11712     # option CYGSEM_LIBM_USE_STDERR\r
11713     #     Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY\r
11714     # option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE\r
11715     #     Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY\r
11716 };\r
11718 # Default mode\r
11719 # If you want to have support for more than one\r
11720 # compatibility mode settable at run-time, rather\r
11721 # than hard-coded IEEE mode, this component lets\r
11722 # you choose which mode should be the default.\r
11724 cdl_component CYGNUM_LIBM_COMPATIBILITY {\r
11725     # Flavor: booldata\r
11726     # No user value, uncomment the following line to provide one.\r
11727     # user_value 1 POSIX\r
11728     # value_source default\r
11729     # Default value: 1 POSIX\r
11730     # Legal values:  "POSIX" "IEEE" "XOPEN" "SVID" \r
11731     # Requires: CYGPKG_LIBC\r
11732     #     CYGPKG_LIBC == v3_0\r
11733     #   --> 1\r
11735     # The following properties are affected by this value\r
11736     # option CYGNUM_LIBM_COMPAT_DEFAULT\r
11737     #     Calculated:   CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE"  ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID"  ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>"  \r
11738     # option CYGNUM_LIBM_COMPAT_DEFAULT\r
11739     #     Calculated:   CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE"  ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID"  ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>"  \r
11740     # option CYGNUM_LIBM_COMPAT_DEFAULT\r
11741     #     Calculated:   CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE"  ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID"  ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>"  \r
11742     # option CYGNUM_LIBM_COMPAT_DEFAULT\r
11743     #     Calculated:   CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE"  ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID"  ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>"  \r
11744 };\r
11746 # >\r
11747 # Numeric representation\r
11748 # This option automatically defines the default compatibility\r
11749 # mode for numeric representation in terms of the values used\r
11750 # to set that mode at run-time.\r
11752 cdl_option CYGNUM_LIBM_COMPAT_DEFAULT {\r
11753     # Calculated value:   CYGNUM_LIBM_COMPATIBILITY == "POSIX" ? "CYGNUM_LIBM_COMPAT_POSIX" : CYGNUM_LIBM_COMPATIBILITY == "IEEE"  ? "CYGNUM_LIBM_COMPAT_IEEE" : CYGNUM_LIBM_COMPATIBILITY == "XOPEN" ? "CYGNUM_LIBM_COMPAT_XOPEN" : CYGNUM_LIBM_COMPATIBILITY == "SVID"  ? "CYGNUM_LIBM_COMPAT_SVID" : "<undefined>"  \r
11754     #     CYGNUM_LIBM_COMPATIBILITY == POSIX\r
11755     #     CYGNUM_LIBM_COMPATIBILITY == POSIX\r
11756     #     CYGNUM_LIBM_COMPATIBILITY == POSIX\r
11757     #     CYGNUM_LIBM_COMPATIBILITY == POSIX\r
11758     # Flavor: data\r
11759     # Current_value: CYGNUM_LIBM_COMPAT_POSIX\r
11760 };\r
11762 # <\r
11763 # SVID3-style scalb()\r
11764 # SVID3 defined the scalb() function as double\r
11765 # scalb(double, double) rather than double\r
11766 # scalb(double, int) which is used by IBM, DEC, and\r
11767 # probably others. Enabling this option chooses\r
11768 # the (double, double) version. Note there is a\r
11769 # function double scalbn(double, int) which is\r
11770 # unaffected by this choice.\r
11772 cdl_option CYGFUN_LIBM_SVID3_scalb {\r
11773     # Flavor: bool\r
11774     # No user value, uncomment the following line to provide one.\r
11775     # user_value 1\r
11776     # value_source default\r
11777     # Default value: 1\r
11778 };\r
11780 # Reduce namespace pollution\r
11781 # If you do not want to use either the X/Open or\r
11782 # SVID3 compatibility modes, you may want to define\r
11783 # this option to reduce the chance of namespace\r
11784 # pollution. This is particularly likely to occur\r
11785 # here as these standards define symbols with\r
11786 # names that often appear in applications, such as\r
11787 # exception, DOMAIN, OVERFLOW, etc. If your\r
11788 # application also used these names, it may cause\r
11789 # problems.\r
11791 cdl_option CYGSYM_LIBM_NO_XOPEN_SVID_NAMESPACE_POLLUTION {\r
11792     # Flavor: bool\r
11793     # No user value, uncomment the following line to provide one.\r
11794     # user_value 0\r
11795     # value_source default\r
11796     # Default value: 0\r
11797 };\r
11799 # Output to stderr for math errors\r
11800 # The SVID3 standard says that error\r
11801 # messages should be output on the stderr console\r
11802 # output stream. This option allows this ability\r
11803 # to be explicitly controlled. However, this still\r
11804 # only has an effect in SVID3 compatibility mode.\r
11806 cdl_option CYGSEM_LIBM_USE_STDERR {\r
11807     # Flavor: bool\r
11808     # No user value, uncomment the following line to provide one.\r
11809     # user_value 0\r
11810     # value_source default\r
11811     # Default value: 0\r
11812     # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY\r
11813     #     CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0\r
11814     #   --> 1\r
11815     # Requires: CYGPKG_LIBC_STDIO\r
11816     #     CYGPKG_LIBC_STDIO == v3_0\r
11817     #   --> 1\r
11818 };\r
11820 # <\r
11821 # Thread safety\r
11822 # This option controls whether the C library has\r
11823 # support for thread safe operation in general.\r
11824 # This requires eCos kernel support for per-thread\r
11825 # data, and adjustment of the stack limit.\r
11827 cdl_component CYGPKG_LIBM_THREAD_SAFETY {\r
11828     # There is no associated value.\r
11829 };\r
11831 # >\r
11832 # Compatibility mode setting\r
11833 # This option makes the setting of the compatiblity\r
11834 # mode be a per-thread property. This directly\r
11835 # implies that it also becomes thread-safe.\r
11837 cdl_option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE {\r
11838     # Flavor: bool\r
11839     # No user value, uncomment the following line to provide one.\r
11840     # user_value 0\r
11841     # value_source default\r
11842     # Default value: 0\r
11843     # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY\r
11844     #     CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0\r
11845     #   --> 1\r
11846     # Requires: CYGVAR_KERNEL_THREADS_DATA\r
11847     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
11848     #   --> 1\r
11850     # The following properties are affected by this value\r
11851     # option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL\r
11852     #     Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE\r
11853 };\r
11855 # gamma() and lgamma()\r
11856 # This option makes the gamma() and lgamma()\r
11857 # functions be thread-safe. Note that these\r
11858 # functions are identical - they take the log of\r
11859 # the absolute value of their argument. The sign\r
11860 # of the argument is stored in a variable called\r
11861 # signgam. Enabling this option makes signgam\r
11862 # a per-thread variable. Note there are also\r
11863 # gamma_r() and lgamma_r() alternatives that\r
11864 # allow signgam to be passed in by reference as\r
11865 # an argument.\r
11867 cdl_option CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS {\r
11868     # Flavor: bool\r
11869     # No user value, uncomment the following line to provide one.\r
11870     # user_value 0\r
11871     # value_source default\r
11872     # Default value: 0\r
11873     # Requires: CYGVAR_KERNEL_THREADS_DATA\r
11874     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
11875     #   --> 1\r
11877     # The following properties are affected by this value\r
11878     # option CYGNUM_LIBM_SIGNGAM_TRACE_LEVEL\r
11879     #     Requires: CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS\r
11880 };\r
11882 # <\r
11883 # Tracing output levels in math library\r
11884 # Tracing support is useful for debugging. Some\r
11885 # Math library modules can be configured with\r
11886 # different levels of tracing verbosity. These\r
11887 # levels can be configured here.\r
11889 cdl_component CYGPKG_LIBM_TRACE {\r
11890     # Flavor: bool\r
11891     # No user value, uncomment the following line to provide one.\r
11892     # user_value 0\r
11893     # value_source default\r
11894     # Default value: 0\r
11895     # Requires: CYGDBG_USE_TRACING\r
11896     #     CYGDBG_USE_TRACING == 0\r
11897     #   --> 0\r
11898 };\r
11900 # >\r
11901 # Compatibility mode get/set\r
11902 # Trace level for debugging the getting and\r
11903 # setting of the compatibility mode when it is\r
11904 # configured to be thread-safe.\r
11906 cdl_option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL {\r
11907     # This option is not active\r
11908     # The parent CYGPKG_LIBM_TRACE is disabled\r
11910     # Flavor: data\r
11911     # No user value, uncomment the following line to provide one.\r
11912     # user_value 0\r
11913     # value_source default\r
11914     # Default value: 0\r
11915     # Legal values: 0 to 1\r
11916     # Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE\r
11917     #     CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE == 0\r
11918     #   --> 0\r
11919 };\r
11921 # signgam variable access\r
11922 # Trace level for debugging all accesses to the\r
11923 # signgam variable in thread-safe mode.\r
11925 cdl_option CYGNUM_LIBM_SIGNGAM_TRACE_LEVEL {\r
11926     # This option is not active\r
11927     # The parent CYGPKG_LIBM_TRACE is disabled\r
11929     # Flavor: data\r
11930     # No user value, uncomment the following line to provide one.\r
11931     # user_value 0\r
11932     # value_source default\r
11933     # Default value: 0\r
11934     # Legal values: 0 to 1\r
11935     # Requires: CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS\r
11936     #     CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS == 0\r
11937     #   --> 0\r
11938 };\r
11940 # <\r
11941 # Bessel function limit of significance\r
11942 # For the Bessel functions (j0(), j1(), jn(),\r
11943 # y0(), y1(), yn()) this option defines the\r
11944 # maximum absolute value of the ordinate\r
11945 # before we assume total loss of significance.\r
11946 # This number must be a floating-point number (e.g.\r
11947 # contains a decimal point), and should be\r
11948 # large.\r
11950 cdl_option CYGNUM_LIBM_X_TLOSS {\r
11951     # Flavor: data\r
11952     # No user value, uncomment the following line to provide one.\r
11953     # user_value 1.41484755040569E+16\r
11954     # value_source default\r
11955     # Default value: 1.41484755040569E+16\r
11956     # Legal values: 1 to 1e308\r
11957 };\r
11959 # Math library build options\r
11960 # Package specific build options including control over\r
11961 # compiler flags used only in building this package,\r
11962 # and details of which tests are built.\r
11964 cdl_component CYGPKG_LIBM_OPTIONS {\r
11965     # There is no associated value.\r
11966 };\r
11968 # >\r
11969 # Additional compiler flags\r
11970 # This option modifies the set of compiler flags for\r
11971 # building the math library. These flags are used in addition\r
11972 # to the set of global flags.\r
11974 cdl_option CYGPKG_LIBM_CFLAGS_ADD {\r
11975     # Flavor: data\r
11976     # No user value, uncomment the following line to provide one.\r
11977     # user_value ""\r
11978     # value_source default\r
11979     # Default value:  ((0 == CYGPKG_HAL_I386) && (0 == CYGPKG_HAL_SYNTH_I386)) ? "" : "-ffloat-store" \r
11980     #     CYGPKG_HAL_I386 (unknown) == 0\r
11981     #     CYGPKG_HAL_SYNTH_I386 (unknown) == 0\r
11982     #   --> ""\r
11983 };\r
11985 # Suppressed compiler flags\r
11986 # This option modifies the set of compiler flags for\r
11987 # building the math library. These flags are removed from\r
11988 # the set of global flags if present.\r
11990 cdl_option CYGPKG_LIBM_CFLAGS_REMOVE {\r
11991     # Flavor: data\r
11992     # No user value, uncomment the following line to provide one.\r
11993     # user_value ""\r
11994     # value_source default\r
11995     # Default value: ""\r
11996 };\r
11998 # Math library tests\r
11999 # This option specifies the set of tests for the math library.\r
12001 cdl_option CYGPKG_LIBM_TESTS {\r
12002     # Calculated value:  "tests/vectors/acos tests/vectors/asin tests/vectors/atan tests/vectors/atan2 tests/vectors/ceil tests/vectors/cos tests/vectors/cosh tests/vectors/exp tests/vectors/fabs tests/vectors/floor tests/vectors/fmod tests/vectors/frexp tests/vectors/ldexp tests/vectors/log tests/vectors/log10 tests/vectors/modf tests/vectors/pow tests/vectors/sin tests/vectors/sinh tests/vectors/sqrt tests/vectors/tan tests/vectors/tanh" \r
12003     # Flavor: data\r
12004     # Current_value: tests/vectors/acos tests/vectors/asin tests/vectors/atan tests/vectors/atan2 tests/vectors/ceil tests/vectors/cos tests/vectors/cosh tests/vectors/exp tests/vectors/fabs tests/vectors/floor tests/vectors/fmod tests/vectors/frexp tests/vectors/ldexp tests/vectors/log tests/vectors/log10 tests/vectors/modf tests/vectors/pow tests/vectors/sin tests/vectors/sinh tests/vectors/sqrt tests/vectors/tan tests/vectors/tanh\r
12005 };\r
12007 # <\r
12008 # <\r
12009 # Wallclock device\r
12010 # The wallclock device provides real time stamps, as opposed\r
12011 # to the eCos kernel timers which typically just count the\r
12012 # number of clock ticks since the hardware was powered up.\r
12013 # Depending on the target platform this device may involve\r
12014 # interacting with a suitable clock chip, or it may be\r
12015 # emulated by using the kernel timers.\r
12017 cdl_package CYGPKG_IO_WALLCLOCK {\r
12018     # Packages cannot be added or removed, nor can their version be changed,\r
12019     # simply by editing their value. Instead the appropriate configuration\r
12020     # should be used to perform these actions.\r
12022     # This value cannot be modified here.\r
12023     # Flavor: booldata\r
12024     # Current value: 1 v3_0\r
12026     # The following properties are affected by this value\r
12027     # option CYGSEM_LIBC_TIME_TIME_WORKING\r
12028     #     Requires: CYGPKG_IO_WALLCLOCK\r
12029     # option CYGSEM_LIBC_TIME_SETTIME_WORKING\r
12030     #     Requires: CYGPKG_IO_WALLCLOCK\r
12031 };\r
12033 # >\r
12034 # Number of wallclock hardware implementations\r
12036 cdl_interface CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS {\r
12037     # No options implement this inferface\r
12038     # This value cannot be modified here.\r
12039     # Flavor: data\r
12040     # Current_value: 0\r
12042     # The following properties are affected by this value\r
12043     # option CYGPKG_WALLCLOCK_EMULATE\r
12044     #     DefaultValue:  0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS \r
12045     # option CYGIMP_WALLCLOCK_NONE\r
12046     #     DefaultValue:  !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS \r
12047 };\r
12049 # Number of wallclock implementations\r
12051 cdl_interface CYGINT_WALLCLOCK_IMPLEMENTATIONS {\r
12052     # Implemented by CYGPKG_WALLCLOCK_EMULATE, active, enabled\r
12053     # Implemented by CYGIMP_WALLCLOCK_NONE, active, disabled\r
12054     # This value cannot be modified here.\r
12055     # Flavor: data\r
12056     # Current_value: 1\r
12057     # Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS\r
12058     #     CYGINT_WALLCLOCK_IMPLEMENTATIONS == 1\r
12059     #   --> 1\r
12061     # The following properties are affected by this value\r
12062     # interface CYGINT_WALLCLOCK_IMPLEMENTATIONS\r
12063     #     Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS\r
12064 };\r
12066 # Wallclock driver supports set/get mode\r
12068 cdl_interface CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED {\r
12069     # No options implement this inferface\r
12070     # This value cannot be modified here.\r
12071     # Flavor: data\r
12072     # Current_value: 0\r
12074     # The following properties are affected by this value\r
12075     # option CYGSEM_WALLCLOCK_MODE\r
12076     #     DefaultValue:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ?  "set_get" : "init_get" \r
12077     # option CYGSEM_WALLCLOCK_MODE\r
12078     #     Requires:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ||  CYGSEM_WALLCLOCK_MODE == "init_get" \r
12079 };\r
12081 # Wallclock mode\r
12082 # The wallclock driver can be used in one of two\r
12083 # modes. Set/get mode allows time to be kept during power\r
12084 # off (assuming there's a battery backed clock). Init/get\r
12085 # mode is slightly smaller and can be used when there is no\r
12086 # battery backed clock - in this mode time 0 is the time of\r
12087 # the board power up.\r
12089 cdl_option CYGSEM_WALLCLOCK_MODE {\r
12090     # Flavor: data\r
12091     # No user value, uncomment the following line to provide one.\r
12092     # user_value init_get\r
12093     # value_source default\r
12094     # Default value:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ?  "set_get" : "init_get" \r
12095     #     CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0\r
12096     #   --> init_get\r
12097     # Legal values:  "init_get" "set_get" \r
12098     # Requires:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ||  CYGSEM_WALLCLOCK_MODE == "init_get" \r
12099     #     CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0\r
12100     #     CYGSEM_WALLCLOCK_MODE == init_get\r
12101     #   --> 1\r
12103     # The following properties are affected by this value\r
12104     # option CYGSEM_WALLCLOCK_MODE\r
12105     #     Requires:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ||  CYGSEM_WALLCLOCK_MODE == "init_get" \r
12106     # option CYGSEM_WALLCLOCK_SET_GET_MODE\r
12107     #     Calculated:  CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0 \r
12108 };\r
12110 # Wallclock set/get mode\r
12112 cdl_option CYGSEM_WALLCLOCK_SET_GET_MODE {\r
12113     # Calculated value:  CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0 \r
12114     #     CYGSEM_WALLCLOCK_MODE == init_get\r
12115     # Flavor: bool\r
12116     # Current value: 0\r
12117 };\r
12119 # Wallclock implementation\r
12120 # Implementations of the wallclock device.\r
12122 cdl_component CYGPKG_IO_WALLCLOCK_IMPLEMENTATION {\r
12123     # There is no associated value.\r
12124 };\r
12126 # >\r
12127 # Wallclock emulator\r
12128 # When this option is enabled, a wallclock device will be\r
12129 # emulated using the kernel real-time clock.\r
12131 cdl_option CYGPKG_WALLCLOCK_EMULATE {\r
12132     # Flavor: bool\r
12133     # No user value, uncomment the following line to provide one.\r
12134     # user_value 1\r
12135     # value_source default\r
12136     # Default value:  0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS \r
12137     #     CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0\r
12138     #   --> 1\r
12139     # Requires: CYGPKG_KERNEL\r
12140     #     CYGPKG_KERNEL == v3_0\r
12141     #   --> 1\r
12142 };\r
12144 # No wallclock\r
12145 # Disables the wallclock.\r
12147 cdl_option CYGIMP_WALLCLOCK_NONE {\r
12148     # Flavor: bool\r
12149     # No user value, uncomment the following line to provide one.\r
12150     # user_value 0\r
12151     # value_source default\r
12152     # Default value:  !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS \r
12153     #     CYGPKG_KERNEL == v3_0\r
12154     #     CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0\r
12155     #   --> 0\r
12156 };\r
12158 # <\r
12159 # Wallclock build options\r
12160 # Package specific build options including control over\r
12161 # compiler flags used only in building this package,\r
12162 # and details of which tests are built.\r
12164 cdl_component CYGPKG_IO_WALLCLOCK_OPTIONS {\r
12165     # There is no associated value.\r
12166 };\r
12168 # >\r
12169 # Additional compiler flags\r
12170 # This option modifies the set of compiler flags for\r
12171 # building the wallclock device. These flags are used in addition\r
12172 # to the set of global flags.\r
12174 cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_ADD {\r
12175     # Flavor: data\r
12176     # No user value, uncomment the following line to provide one.\r
12177     # user_value ""\r
12178     # value_source default\r
12179     # Default value: ""\r
12180 };\r
12182 # Suppressed compiler flags\r
12183 # This option modifies the set of compiler flags for\r
12184 # building the wallclock device. These flags are removed from\r
12185 # the set of global flags if present.\r
12187 cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_REMOVE {\r
12188     # Flavor: data\r
12189     # No user value, uncomment the following line to provide one.\r
12190     # user_value ""\r
12191     # value_source default\r
12192     # Default value: ""\r
12193 };\r
12195 # Wallclock tests\r
12196 # This option specifies the set of tests for the\r
12197 # wallclock device.\r
12199 cdl_option CYGPKG_IO_WALLCLOCK_TESTS {\r
12200     # Calculated value:  CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : "" \r
12201     #     CYGPKG_KERNEL == v3_0\r
12202     # Flavor: data\r
12203     # Current_value: tests/wallclock tests/wallclock2\r
12204 };\r
12206 # <\r
12207 # <\r
12208 # Common error code support\r
12209 # This package contains the common list of error and\r
12210 # status codes. It is held centrally to allow\r
12211 # packages to interchange error codes and status\r
12212 # codes in a common way, rather than each package\r
12213 # having its own conventions for error/status\r
12214 # reporting. The error codes are modelled on the\r
12215 # POSIX style naming e.g. EINVAL etc. This package\r
12216 # also provides the standard strerror() function to\r
12217 # convert error codes to textual representation, as\r
12218 # well as an implementation of the errno idiom.\r
12220 cdl_package CYGPKG_ERROR {\r
12221     # Packages cannot be added or removed, nor can their version be changed,\r
12222     # simply by editing their value. Instead the appropriate configuration\r
12223     # should be used to perform these actions.\r
12225     # This value cannot be modified here.\r
12226     # Flavor: booldata\r
12227     # Current value: 1 v3_0\r
12228     # Requires:  CYGBLD_ISO_ERRNO_CODES_HEADER == "<cyg/error/codes.h>" \r
12229     #     CYGBLD_ISO_ERRNO_CODES_HEADER == <cyg/error/codes.h>\r
12230     #   --> 1\r
12232     # The following properties are affected by this value\r
12233     # package CYGPKG_IO\r
12234     #     Requires: CYGPKG_ERROR\r
12235     # package CYGPKG_IO_SERIAL\r
12236     #     Requires: CYGPKG_ERROR\r
12237 };\r
12239 # >\r
12240 # errno variable\r
12241 # This package controls the behaviour of the\r
12242 # errno variable (or more strictly, expression)\r
12243 # from <errno.h>.\r
12245 cdl_component CYGPKG_ERROR_ERRNO {\r
12246     # Flavor: bool\r
12247     # No user value, uncomment the following line to provide one.\r
12248     # user_value 1\r
12249     # value_source default\r
12250     # Default value: 1\r
12251     # Requires:  CYGBLD_ISO_ERRNO_HEADER == "<cyg/error/errno.h>" \r
12252     #     CYGBLD_ISO_ERRNO_HEADER == <cyg/error/errno.h>\r
12253     #   --> 1\r
12254 };\r
12256 # >\r
12257 # Per-thread errno\r
12258 # This option controls whether the standard error\r
12259 # code reporting variable errno is a per-thread\r
12260 # variable, rather than global.\r
12262 cdl_option CYGSEM_ERROR_PER_THREAD_ERRNO {\r
12263     # Flavor: bool\r
12264     # No user value, uncomment the following line to provide one.\r
12265     # user_value 1\r
12266     # value_source default\r
12267     # Default value: 1\r
12268     # Requires: CYGVAR_KERNEL_THREADS_DATA\r
12269     #     CYGVAR_KERNEL_THREADS_DATA == 1\r
12270     #   --> 1\r
12271 };\r
12273 # Tracing level\r
12274 # Trace verbosity level for debugging the errno\r
12275 # retrieval mechanism in errno.cxx. Increase this\r
12276 # value to get additional trace output.\r
12278 cdl_option CYGNUM_ERROR_ERRNO_TRACE_LEVEL {\r
12279     # Flavor: data\r
12280     # No user value, uncomment the following line to provide one.\r
12281     # user_value 0\r
12282     # value_source default\r
12283     # Default value: 0\r
12284     # Legal values: 0 to 1\r
12285 };\r
12287 # <\r
12288 # strerror function\r
12289 # This package controls the presence and behaviour of the\r
12290 # strerror() function from <string.h>\r
12292 cdl_option CYGPKG_ERROR_STRERROR {\r
12293     # Flavor: bool\r
12294     # No user value, uncomment the following line to provide one.\r
12295     # user_value 1\r
12296     # value_source default\r
12297     # Default value: 1\r
12298     # Requires:  CYGBLD_ISO_STRERROR_HEADER == "<cyg/error/strerror.h>" \r
12299     #     CYGBLD_ISO_STRERROR_HEADER == <cyg/error/strerror.h>\r
12300     #   --> 1\r
12301 };\r
12303 # Error package build options\r
12304 # Package specific build options including control over\r
12305 # compiler flags used only in building this package,\r
12306 # and details of which tests are built.\r
12308 cdl_component CYGPKG_ERROR_OPTIONS {\r
12309     # There is no associated value.\r
12310 };\r
12312 # >\r
12313 # Additional compiler flags\r
12314 # This option modifies the set of compiler flags for\r
12315 # building the error package. These flags are used in addition\r
12316 # to the set of global flags.\r
12318 cdl_option CYGPKG_ERROR_CFLAGS_ADD {\r
12319     # Flavor: data\r
12320     # No user value, uncomment the following line to provide one.\r
12321     # user_value ""\r
12322     # value_source default\r
12323     # Default value: ""\r
12324 };\r
12326 # Suppressed compiler flags\r
12327 # This option modifies the set of compiler flags for\r
12328 # building the error package. These flags are removed from\r
12329 # the set of global flags if present.\r
12331 cdl_option CYGPKG_ERROR_CFLAGS_REMOVE {\r
12332     # Flavor: data\r
12333     # No user value, uncomment the following line to provide one.\r
12334     # user_value ""\r
12335     # value_source default\r
12336     # Default value: ""\r
12337 };\r
12339 # <\r
12340 # <\r
12341 # <\r