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

Subversion Repositories or1k

[/] [or1k/] [trunk/] [ecos-2.0/] [ecos.ecc] - Blame information for rev 1778

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 1254 phoenix
# eCos saved configuration
2
 
3
# ---- commands --------------------------------------------------------
4
# This section contains information about the savefile format.
5
# It should not be edited. Any modifications made to this section
6
# may make it impossible for the configuration tools to read
7
# the savefile.
8
 
9
cdl_savefile_version 1;
10
cdl_savefile_command cdl_savefile_version {};
11
cdl_savefile_command cdl_savefile_command {};
12
cdl_savefile_command cdl_configuration { description hardware template package };
13
cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value };
14
cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value };
15
cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value };
16
cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value };
17
 
18
# ---- toplevel --------------------------------------------------------
19
# This section defines the toplevel configuration object. The only
20
# values that can be changed are the name of the configuration and
21
# the description field. It is not possible to modify the target,
22
# the template or the set of packages simply by editing the lines
23
# below because these changes have wide-ranging effects. Instead
24
# the appropriate tools should be used to make such modifications.
25
 
26
cdl_configuration eCos {
27
    description "" ;
28
 
29
    # These fields should not be modified.
30
    hardware    ORP ;
31
    template    default ;
32
    package -hardware CYGPKG_HAL_OPENRISC current ;
33
    package -hardware CYGPKG_HAL_OPENRISC_ORP current ;
34
    package -hardware CYGPKG_DEVS_FLASH_OPENRISC_ORP current ;
35
    package -hardware CYGPKG_DEVS_FLASH_AMD_AM29XXXXX v2_0 ;
36
    package -template CYGPKG_HAL v2_0 ;
37
    package -template CYGPKG_IO v2_0 ;
38
    package -template CYGPKG_IO_SERIAL v2_0 ;
39
    package -template CYGPKG_INFRA v2_0 ;
40
    package -template CYGPKG_KERNEL v2_0 ;
41
    package -template CYGPKG_MEMALLOC v2_0 ;
42
    package -template CYGPKG_ISOINFRA v2_0 ;
43
    package -template CYGPKG_LIBC v2_0 ;
44
    package -template CYGPKG_LIBC_I18N v2_0 ;
45
    package -template CYGPKG_LIBC_SETJMP v2_0 ;
46
    package -template CYGPKG_LIBC_SIGNALS v2_0 ;
47
    package -template CYGPKG_LIBC_STARTUP v2_0 ;
48
    package -template CYGPKG_LIBC_STDIO v2_0 ;
49
    package -template CYGPKG_LIBC_STDLIB v2_0 ;
50
    package -template CYGPKG_LIBC_STRING v2_0 ;
51
    package -template CYGPKG_LIBC_TIME v2_0 ;
52
    package -template CYGPKG_LIBM v2_0 ;
53
    package -template CYGPKG_IO_WALLCLOCK v2_0 ;
54
    package -template CYGPKG_ERROR v2_0 ;
55
};
56
 
57
# ---- conflicts -------------------------------------------------------
58
# There are no conflicts.
59
 
60
# ---- contents --------------------------------------------------------
61
# >
62
# >
63
# Global build options
64
# Global build options including control over
65
# compiler flags, linker flags and choice of toolchain.
66
#
67
cdl_component CYGBLD_GLOBAL_OPTIONS {
68
    # There is no associated value.
69
 
70
    # The following properties are affected by this value
71
};
72
 
73
# >
74
# Global command prefix
75
# This option specifies the command prefix used when
76
# invoking the build tools.
77
#
78
cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX {
79
    # Flavor: data
80
    # No user value, uncomment the following line to provide one.
81
    # user_value or32-elf
82
    # value_source default
83
    # Default value: or32-elf
84
};
85
 
86
# Global compiler flags
87
# This option controls the global compiler flags which
88
# are used to compile all packages by
89
# default. Individual packages may define
90
# options which override these global flags.
91
#
92
cdl_option CYGBLD_GLOBAL_CFLAGS {
93
    # Flavor: data
94
    # No user value, uncomment the following line to provide one.
95
    # user_value "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority"
96
    # value_source default
97
    # Default value: "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority"
98
 
99
    # The following properties are affected by this value
100
    # option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS
101
    #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror")
102
    # option CYGBLD_INFRA_CFLAGS_PIPE
103
    #     Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe")
104
};
105
 
106
# Global linker flags
107
# This option controls the global linker flags. Individual
108
# packages may define options which override these global flags.
109
#
110
cdl_option CYGBLD_GLOBAL_LDFLAGS {
111
    # Flavor: data
112
    # No user value, uncomment the following line to provide one.
113
    # user_value "-msoft-float -g -nostdlib -Wl,--gc-sections -Wl,-static"
114
    # value_source default
115
    # Default value: "-msoft-float -g -nostdlib -Wl,--gc-sections -Wl,-static"
116
};
117
 
118
# Build GDB stub ROM image
119
# This option enables the building of the GDB stubs for the
120
# board. The common HAL controls takes care of most of the
121
# build process, but the final conversion from ELF image to
122
# binary data is handled by the platform CDL, allowing
123
# relocation of the data if necessary.
124
#
125
cdl_option CYGBLD_BUILD_GDB_STUBS {
126
    # Flavor: bool
127
    # No user value, uncomment the following line to provide one.
128
    # user_value 0
129
    # value_source default
130
    # Default value: 0
131
    # Requires:  CYG_HAL_STARTUP == "ROM"
132
    #     CYG_HAL_STARTUP == ROM
133
    #   --> 1
134
    # Requires: CYGSEM_HAL_ROM_MONITOR
135
    #     CYGSEM_HAL_ROM_MONITOR == 1
136
    #   --> 1
137
    # Requires: CYGBLD_BUILD_COMMON_GDB_STUBS
138
    #     CYGBLD_BUILD_COMMON_GDB_STUBS == 0
139
    #   --> 0
140
    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
141
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
142
    #   --> 0
143
    # Requires: ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
144
    #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0
145
    #   --> 1
146
    # Requires: ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
147
    #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1
148
    #   --> 0
149
    # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
150
    #     CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 1
151
    #   --> 0
152
    # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
153
    #     CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 1
154
    #   --> 0
155
};
156
 
157
# Build common GDB stub ROM image
158
# Unless a target board has specific requirements to the
159
# stub implementation, it can use a simple common stub.
160
# This option, which gets enabled by platform HALs as
161
# appropriate, controls the building of the common stub.
162
#
163
cdl_option CYGBLD_BUILD_COMMON_GDB_STUBS {
164
    # Flavor: bool
165
    # No user value, uncomment the following line to provide one.
166
    # user_value 0
167
    # value_source default
168
    # Default value: 0
169
    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
170
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
171
    #   --> 0
172
 
173
    # The following properties are affected by this value
174
    # option CYGBLD_BUILD_GDB_STUBS
175
    #     Requires: CYGBLD_BUILD_COMMON_GDB_STUBS
176
};
177
 
178
# <
179
# Redboot HAL options
180
# This option lists the target's requirements for a valid Redboot
181
# configuration.
182
#
183
cdl_component CYGPKG_REDBOOT_HAL_OPTIONS {
184
    # This option is not active
185
    # ActiveIf constraint: CYGPKG_REDBOOT
186
    #     CYGPKG_REDBOOT (unknown) == 0
187
    #   --> 0
188
 
189
    # There is no associated value.
190
};
191
 
192
# >
193
# Build Redboot ROM binary image
194
# This option enables the conversion of the Redboot ELF
195
# image to a binary image suitable for ROM programming.
196
#
197
cdl_option CYGBLD_BUILD_REDBOOT_BIN {
198
    # This option is not active
199
    # The parent CYGPKG_REDBOOT_HAL_OPTIONS is not active
200
    # ActiveIf constraint: CYGBLD_BUILD_REDBOOT
201
    #     CYGBLD_BUILD_REDBOOT (unknown) == 0
202
    #   --> 0
203
 
204
    # Flavor: bool
205
    # No user value, uncomment the following line to provide one.
206
    # user_value 1
207
    # value_source default
208
    # Default value: 1
209
};
210
 
211
# <
212
# Flash memory support for OpenRISC ORP
213
#
214
cdl_package CYGPKG_DEVS_FLASH_OPENRISC_ORP {
215
    # Packages cannot be added or removed, nor can their version be changed,
216
    # simply by editing their value. Instead the appropriate configuration
217
    # should be used to perform these actions.
218
 
219
    # This option is not active
220
    # ActiveIf constraint: CYGPKG_IO_FLASH
221
    #     CYGPKG_IO_FLASH (unknown) == 0
222
    #   --> 0
223
 
224
    # This value cannot be modified here.
225
    # Flavor: booldata
226
    # Current value: 1 current
227
    # Requires: CYGPKG_HAL_OPENRISC_ORP
228
    #     CYGPKG_HAL_OPENRISC_ORP == current
229
    #   --> 1
230
    # Requires: CYGHWR_DEVS_FLASH_AMD_AM29LV160
231
    #     CYGHWR_DEVS_FLASH_AMD_AM29LV160 == 0
232
    #   --> 0
233
};
234
 
235
# >
236
# AMD AM29LV160 driver required
237
#
238
cdl_interface CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED {
239
    # Implemented by CYGPKG_DEVS_FLASH_OPENRISC_ORP, inactive, enabled
240
    # This option is not active
241
    # The parent CYGPKG_DEVS_FLASH_OPENRISC_ORP is not active
242
 
243
    # This value cannot be modified here.
244
    # Flavor: data
245
    # Current_value: 0
246
 
247
    # The following properties are affected by this value
248
    # package CYGPKG_DEVS_FLASH_AMD_AM29XXXXX
249
    #     ActiveIf: CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED
250
};
251
 
252
# <
253
# AMD AM29XXXXX FLASH memory support
254
# FLASH memory device support for AMD AM29XXXXX
255
#
256
cdl_package CYGPKG_DEVS_FLASH_AMD_AM29XXXXX {
257
    # Packages cannot be added or removed, nor can their version be changed,
258
    # simply by editing their value. Instead the appropriate configuration
259
    # should be used to perform these actions.
260
 
261
    # This option is not active
262
    # ActiveIf constraint: CYGPKG_IO_FLASH
263
    #     CYGPKG_IO_FLASH (unknown) == 0
264
    #   --> 0
265
    # ActiveIf constraint: CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED
266
    #     CYGINT_DEVS_FLASH_AMD_AM29XXXXX_REQUIRED == 0
267
    #   --> 0
268
 
269
    # This value cannot be modified here.
270
    # Flavor: booldata
271
    # Current value: 1 v2_0
272
    # Requires:  CYGINT_DEVS_FLASH_AMD_VARIANTS != 0
273
    #     CYGINT_DEVS_FLASH_AMD_VARIANTS == 0
274
    #   --> 0
275
};
276
 
277
# >
278
# Number of included variants
279
#
280
cdl_interface CYGINT_DEVS_FLASH_AMD_VARIANTS {
281
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29F040B, inactive, disabled
282
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV160, inactive, disabled
283
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV320D, inactive, disabled
284
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV200, inactive, disabled
285
    # Implemented by CYGHWR_DEVS_FLASH_ST_M29W200B, inactive, disabled
286
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV640, inactive, disabled
287
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL322D, inactive, disabled
288
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL323D, inactive, disabled
289
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL324D, inactive, disabled
290
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29DL640D, inactive, disabled
291
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29F800, inactive, disabled
292
    # Implemented by CYGHWR_DEVS_FLASH_AMD_AM29LV800, inactive, disabled
293
    # Implemented by CYGHWR_DEVS_FLASH_AMD_TC58FVB800, inactive, disabled
294
    # This option is not active
295
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
296
 
297
    # This value cannot be modified here.
298
    # Flavor: data
299
    # Current_value: 0
300
 
301
    # The following properties are affected by this value
302
    # package CYGPKG_DEVS_FLASH_AMD_AM29XXXXX
303
    #     Requires:  CYGINT_DEVS_FLASH_AMD_VARIANTS != 0
304
};
305
 
306
# AMD AM29F040B flash memory support
307
# When this option is enabled, the AMD flash driver will be
308
# able to recognize and handle the AMD29F040B
309
# part in the family.
310
#
311
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29F040B {
312
    # This option is not active
313
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
314
 
315
    # Flavor: bool
316
    # No user value, uncomment the following line to provide one.
317
    # user_value 0
318
    # value_source default
319
    # Default value: 0
320
};
321
 
322
# AMD AM29LV160 flash memory support
323
# When this option is enabled, the AMD flash driver will be
324
# able to recognize and handle the AMD29LV160
325
# part in the family.
326
#
327
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV160 {
328
    # This option is not active
329
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
330
 
331
    # Flavor: bool
332
    # No user value, uncomment the following line to provide one.
333
    # user_value 0
334
    # value_source default
335
    # Default value: 0
336
 
337
    # The following properties are affected by this value
338
    # package CYGPKG_DEVS_FLASH_OPENRISC_ORP
339
    #     Requires: CYGHWR_DEVS_FLASH_AMD_AM29LV160
340
};
341
 
342
# AMD AM29LV320 flash memory support
343
# When this option is enabled, the AMD flash driver will be
344
# able to recognize and handle the AMD29LV320
345
# part in the family.
346
#
347
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV320D {
348
    # This option is not active
349
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
350
 
351
    # Flavor: bool
352
    # No user value, uncomment the following line to provide one.
353
    # user_value 0
354
    # value_source default
355
    # Default value: 0
356
};
357
 
358
# AMD AM29LV200 flash memory support
359
# When this option is enabled, the AMD flash driver will be
360
# able to recognize and handle the AMD29LV200
361
# part in the family.
362
#
363
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV200 {
364
    # This option is not active
365
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
366
 
367
    # Flavor: bool
368
    # No user value, uncomment the following line to provide one.
369
    # user_value 0
370
    # value_source default
371
    # Default value: 0
372
};
373
 
374
# ST M29W200B flash memory support
375
# When this option is enabled, the AMD flash driver will be
376
# able to recognize and handle the ST M29W200B part. This
377
# memory device is pin- and software compatible with the
378
# AMD AM29LV200 device.
379
#
380
cdl_option CYGHWR_DEVS_FLASH_ST_M29W200B {
381
    # This option is not active
382
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
383
 
384
    # Flavor: bool
385
    # No user value, uncomment the following line to provide one.
386
    # user_value 0
387
    # value_source default
388
    # Default value: 0
389
};
390
 
391
# AMD AM29LV640 flash memory support
392
# When this option is enabled, the AMD flash driver will be
393
# able to recognize and handle the AMD29LV640
394
# part in the family.
395
#
396
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV640 {
397
    # This option is not active
398
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
399
 
400
    # Flavor: bool
401
    # No user value, uncomment the following line to provide one.
402
    # user_value 0
403
    # value_source default
404
    # Default value: 0
405
};
406
 
407
# AMD AM29DL322D flash memory support
408
# When this option is enabled, the AMD flash driver will be
409
# able to recognize and handle the AM29DL322D
410
# part in the family.
411
#
412
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL322D {
413
    # This option is not active
414
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
415
 
416
    # Flavor: bool
417
    # No user value, uncomment the following line to provide one.
418
    # user_value 0
419
    # value_source default
420
    # Default value: 0
421
};
422
 
423
# AMD AM29DL323D flash memory support
424
# When this option is enabled, the AMD flash driver will be
425
# able to recognize and handle the AM29DL323D
426
# part in the family.
427
#
428
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL323D {
429
    # This option is not active
430
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
431
 
432
    # Flavor: bool
433
    # No user value, uncomment the following line to provide one.
434
    # user_value 0
435
    # value_source default
436
    # Default value: 0
437
};
438
 
439
# AMD AM29DL324D flash memory support
440
# When this option is enabled, the AMD flash driver will be
441
# able to recognize and handle the AM29DL324D
442
# part in the family.
443
#
444
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL324D {
445
    # This option is not active
446
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
447
 
448
    # Flavor: bool
449
    # No user value, uncomment the following line to provide one.
450
    # user_value 0
451
    # value_source default
452
    # Default value: 0
453
};
454
 
455
# AMD AM29DL640D flash memory support
456
# When this option is enabled, the AMD flash driver will be
457
# able to recognize and handle the AM29DL640D
458
# part in the family.
459
#
460
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29DL640D {
461
    # This option is not active
462
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
463
 
464
    # Flavor: bool
465
    # No user value, uncomment the following line to provide one.
466
    # user_value 0
467
    # value_source default
468
    # Default value: 0
469
};
470
 
471
# AMD AM29F800 flash memory support
472
# When this option is enabled, the AMD flash driver will be
473
# able to recognize and handle the AM29F800
474
# part in the family.
475
#
476
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29F800 {
477
    # This option is not active
478
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
479
 
480
    # Flavor: bool
481
    # No user value, uncomment the following line to provide one.
482
    # user_value 0
483
    # value_source default
484
    # Default value: 0
485
};
486
 
487
# AMD AM29LV800 flash memory support
488
# When this option is enabled, the AMD flash driver will be
489
# able to recognize and handle the AM29LV800
490
# part in the family.
491
#
492
cdl_option CYGHWR_DEVS_FLASH_AMD_AM29LV800 {
493
    # This option is not active
494
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
495
 
496
    # Flavor: bool
497
    # No user value, uncomment the following line to provide one.
498
    # user_value 0
499
    # value_source default
500
    # Default value: 0
501
};
502
 
503
# Toshiba TC58FVB800 flash memory support
504
# When this option is enabled, the AMD flash driver will be
505
# able to recognize and handle the Toshiba TC58FVB800.
506
#
507
cdl_option CYGHWR_DEVS_FLASH_AMD_TC58FVB800 {
508
    # This option is not active
509
    # The parent CYGPKG_DEVS_FLASH_AMD_AM29XXXXX is not active
510
 
511
    # Flavor: bool
512
    # No user value, uncomment the following line to provide one.
513
    # user_value 0
514
    # value_source default
515
    # Default value: 0
516
};
517
 
518
# <
519
# <
520
# eCos HAL
521
# doc: ref/the-ecos-hardware-abstraction-layer.html
522
# The eCos HAL package provide a porting layer for
523
# higher-level parts of the system such as the kernel and the
524
# C library. Each installation should have HAL packages for
525
# one or more architectures, and for each architecture there
526
# may be one or more supported platforms. It is necessary to
527
# select one target architecture and one platform for that
528
# architecture. There are also a number of configuration
529
# options that are common to all HAL packages.
530
#
531
cdl_package CYGPKG_HAL {
532
    # Packages cannot be added or removed, nor can their version be changed,
533
    # simply by editing their value. Instead the appropriate configuration
534
    # should be used to perform these actions.
535
 
536
    # This value cannot be modified here.
537
    # Flavor: booldata
538
    # Current value: 1 v2_0
539
    # Requires: CYGPKG_INFRA
540
    #     CYGPKG_INFRA == v2_0
541
    #   --> 1
542
 
543
    # The following properties are affected by this value
544
};
545
 
546
# >
547
# Platform-independent HAL options
548
# A number of configuration options are common to most or all
549
# HAL packages, for example options controlling how much state
550
# should be saved during a context switch. The implementations
551
# of these options will vary from architecture to architecture.
552
#
553
cdl_component CYGPKG_HAL_COMMON {
554
    # There is no associated value.
555
};
556
 
557
# >
558
# Provide eCos kernel support
559
# The HAL can be configured to either support the full eCos
560
# kernel, or to support only very simple applications which do
561
# not require a full kernel. If kernel support is not required
562
# then some of the startup, exception, and interrupt handling
563
# code can be eliminated.
564
#
565
cdl_option CYGFUN_HAL_COMMON_KERNEL_SUPPORT {
566
    # Flavor: bool
567
    # No user value, uncomment the following line to provide one.
568
    # user_value 1
569
    # value_source default
570
    # Default value: CYGPKG_KERNEL
571
    #     CYGPKG_KERNEL == v2_0
572
    #   --> 1
573
    # Requires: CYGPKG_KERNEL
574
    #     CYGPKG_KERNEL == v2_0
575
    #   --> 1
576
};
577
 
578
# HAL exception support
579
# When a processor exception occurs, for example an attempt to
580
# execute an illegal instruction or to perform a divide by
581
# zero, this exception may be handled in a number of different
582
# ways. If the target system has gdb support then typically
583
# the exception will be handled by gdb code. Otherwise if the
584
# HAL exception support is enabled then the HAL will invoke a
585
# routine deliver_exception(). Typically this routine will be
586
# provided by the eCos kernel, but it is possible for
587
# application code to provide its own implementation. If the
588
# HAL exception support is not enabled and a processor
589
# exception occurs then the behaviour of the system is
590
# undefined.
591
#
592
cdl_option CYGPKG_HAL_EXCEPTIONS {
593
    # Flavor: bool
594
    # No user value, uncomment the following line to provide one.
595
    # user_value 1
596
    # value_source default
597
    # Default value: CYGPKG_KERNEL_EXCEPTIONS
598
    #     CYGPKG_KERNEL_EXCEPTIONS == 1
599
    #   --> 1
600
    # Requires: CYGPKG_KERNEL_EXCEPTIONS
601
    #     CYGPKG_KERNEL_EXCEPTIONS == 1
602
    #   --> 1
603
 
604
    # The following properties are affected by this value
605
    # component CYGPKG_KERNEL_EXCEPTIONS
606
    #     Requires: CYGPKG_HAL_EXCEPTIONS
607
};
608
 
609
# Stop calling constructors early
610
# This option supports environments where some constructors
611
# must be run in the context of a thread rather than at
612
# simple system startup time. A boolean flag named
613
# cyg_hal_stop_constructors is set to 1 when constructors
614
# should no longer be invoked. It is up to some other
615
# package to deal with the rest of the constructors.
616
# In the current version this is only possible with the
617
# C library.
618
#
619
cdl_option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG {
620
    # Flavor: bool
621
    # No user value, uncomment the following line to provide one.
622
    # user_value 0
623
    # value_source default
624
    # Default value: 0
625
    # Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS
626
    #     CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS == 0
627
    #   --> 0
628
 
629
    # The following properties are affected by this value
630
    # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS
631
    #     Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG
632
};
633
 
634
# HAL uses the MMU and allows for CDL manipulation of it's use
635
#
636
cdl_interface CYGINT_HAL_SUPPORTS_MMU_TABLES {
637
    # No options implement this inferface
638
    # This value cannot be modified here.
639
    # Flavor: data
640
    # Current_value: 0
641
 
642
    # The following properties are affected by this value
643
    # option CYGSEM_HAL_INSTALL_MMU_TABLES
644
    #     ActiveIf: CYGINT_HAL_SUPPORTS_MMU_TABLES
645
};
646
 
647
# Install MMU tables.
648
# This option controls whether this application installs
649
# its own Memory Management Unit (MMU) tables, or relies on the
650
# existing environment to run.
651
#
652
cdl_option CYGSEM_HAL_INSTALL_MMU_TABLES {
653
    # This option is not active
654
    # ActiveIf constraint: CYGINT_HAL_SUPPORTS_MMU_TABLES
655
    #     CYGINT_HAL_SUPPORTS_MMU_TABLES == 0
656
    #   --> 0
657
 
658
    # Flavor: bool
659
    # No user value, uncomment the following line to provide one.
660
    # user_value 1
661
    # value_source default
662
    # Default value:  CYG_HAL_STARTUP != "RAM"
663
    #     CYG_HAL_STARTUP == ROM
664
    #   --> 1
665
 
666
    # The following properties are affected by this value
667
    # option CYGSEM_HAL_STATIC_MMU_TABLES
668
    #     Requires: CYGSEM_HAL_INSTALL_MMU_TABLES
669
};
670
 
671
# Use static MMU tables.
672
# This option defines an environment where any Memory
673
# Management Unit (MMU) tables are constant.  Normally used by ROM
674
# based environments, this provides a way to save RAM usage which
675
# would otherwise be required for these tables.
676
#
677
cdl_option CYGSEM_HAL_STATIC_MMU_TABLES {
678
    # Flavor: bool
679
    # No user value, uncomment the following line to provide one.
680
    # user_value 0
681
    # value_source default
682
    # Default value: 0
683
    # Requires: CYGSEM_HAL_INSTALL_MMU_TABLES
684
    #     CYGSEM_HAL_INSTALL_MMU_TABLES == 0
685
    #   --> 0
686
};
687
 
688
# Route diagnostic output to debug channel
689
# If not inheriting the console setup from the ROM monitor,
690
# it is possible to redirect diagnostic output to the debug
691
# channel by enabling this option. Depending on the debugger
692
# used it may also be necessary to select a mangler for the
693
# output to be displayed by the debugger.
694
#
695
cdl_component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN {
696
    # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
697
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0
698
    #   --> 1
699
    # ActiveIf constraint:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG
700
    #     CYGPKG_HAL_ARM (unknown) == 0
701
    #     CYGPKG_HAL_POWERPC_MPC8xx (unknown) == 0
702
    #     CYGPKG_HAL_V85X_V850 (unknown) == 0
703
    #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1
704
    #   --> 1
705
 
706
    # Flavor: bool
707
    # No user value, uncomment the following line to provide one.
708
    # user_value 0
709
    # value_source default
710
    # Default value:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
711
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
712
    #     CYG_HAL_STARTUP == ROM
713
    #   --> 0
714
 
715
    # The following properties are affected by this value
716
    # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
717
    #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
718
};
719
 
720
# >
721
# Mangler used on diag output
722
# It is sometimes necessary to mangle (encode) the
723
# diag ASCII text output in order for it to show up at the
724
# other end. In particular, GDB may silently ignore raw
725
# ASCII text.
726
#
727
cdl_option CYGSEM_HAL_DIAG_MANGLER {
728
    # This option is not active
729
    # The parent CYGDBG_HAL_DIAG_TO_DEBUG_CHAN is disabled
730
 
731
    # Flavor: data
732
    # No user value, uncomment the following line to provide one.
733
    # user_value GDB
734
    # value_source default
735
    # Default value: GDB
736
    # Legal values: "GDB" "None"
737
};
738
 
739
# <
740
# <
741
# HAL interrupt handling
742
# A number of configuration options related to interrupt
743
# handling are common to most or all HAL packages, even though
744
# the implementations will vary from architecture to
745
# architecture.
746
#
747
cdl_component CYGPKG_HAL_COMMON_INTERRUPTS {
748
    # There is no associated value.
749
};
750
 
751
# >
752
# Use separate stack for interrupts
753
# When an interrupt occurs this interrupt can be handled either
754
# on the current stack or on a separate stack maintained by the
755
# HAL. Using a separate stack requires a small number of extra
756
# instructions in the interrupt handling code, but it has the
757
# advantage that it is no longer necessary to allow extra space
758
# in every thread stack for the interrupt handlers. The amount
759
# of extra space required depends on the interrupt handlers
760
# that are being used.
761
#
762
cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK {
763
    # Flavor: bool
764
    # No user value, uncomment the following line to provide one.
765
    # user_value 1
766
    # value_source default
767
    # Default value: 1
768
};
769
 
770
# Interrupt stack size
771
# This configuration option specifies the stack size in bytes
772
# for the interrupt stack. Typically this should be a multiple
773
# of 16, but the exact requirements will vary from architecture
774
# to architecture. The interrupt stack serves two separate
775
# purposes. It is used as the stack during system
776
# initialization. In addition, if the interrupt system is
777
# configured to use a separate stack then all interrupts will
778
# be processed on this stack. The exact memory requirements
779
# will vary from application to application, and will depend
780
# heavily on whether or not other interrupt-related options,
781
# for example nested interrupts, are enabled. On most targets,
782
# in a configuration with no kernel this stack will also be
783
# the stack used to invoke the application, and must obviously
784
# be appropriately large in that case.
785
#
786
cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE {
787
    # Flavor: data
788
    # No user value, uncomment the following line to provide one.
789
    # user_value 4096
790
    # value_source default
791
    # Default value:  CYGPKG_KERNEL ? 4096 : 32768
792
    #     CYGPKG_KERNEL == v2_0
793
    #   --> 4096
794
    # Legal values: 1024 to 1048576
795
};
796
 
797
# Allow nested interrupts
798
# When an interrupt occurs the HAL interrupt handling code can
799
# either leave interrupts disabled for the duration of the
800
# interrupt handling code, or by doing some extra work it can
801
# reenable interrupts before invoking the interrupt handler and
802
# thus allow nested interrupts to happen. If all the interrupt
803
# handlers being used are small and do not involve any loops
804
# then it is usually better to disallow nested interrupts.
805
# However if any of the interrupt handlers are more complicated
806
# than nested interrupts will usually be required.
807
#
808
cdl_option CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING {
809
    # Flavor: bool
810
    # No user value, uncomment the following line to provide one.
811
    # user_value 0
812
    # value_source default
813
    # Default value: 0
814
};
815
 
816
# Save minimum context on interrupt
817
# The HAL interrupt handling code can exploit the calling conventions
818
# defined for a given architecture to reduce the amount of state
819
# that has to be saved. Generally this improves performance and
820
# reduces code size. However it can make source-level debugging
821
# more difficult.
822
#
823
cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT {
824
    # Flavor: bool
825
    # No user value, uncomment the following line to provide one.
826
    # user_value 1
827
    # value_source default
828
    # Default value: 1
829
 
830
    # The following properties are affected by this value
831
    # option CYGBLD_BUILD_GDB_STUBS
832
    #     Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT
833
};
834
 
835
# Chain all interrupts together
836
# Interrupts can be attached to vectors either singly, or be
837
# chained together. The latter is necessary if there is no way
838
# of discovering which device has interrupted without
839
# inspecting the device itself. It can also reduce the amount
840
# of RAM needed for interrupt decoding tables and code.
841
#
842
cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN {
843
    # Flavor: bool
844
    # No user value, uncomment the following line to provide one.
845
    # user_value 0
846
    # value_source default
847
    # Default value: 0
848
 
849
    # The following properties are affected by this value
850
    # option CYGIMP_KERNEL_INTERRUPTS_CHAIN
851
    #     Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN
852
};
853
 
854
# Ignore spurious [fleeting] interrupts
855
# On some hardware, interrupt sources may not be de-bounced or
856
# de-glitched.  Rather than try to handle these interrupts (no
857
# handling may be possible), this option allows the HAL to simply
858
# ignore them.  In most cases, if the interrupt is real it will
859
# reoccur in a detectable form.
860
#
861
cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_IGNORE_SPURIOUS {
862
    # Flavor: bool
863
    # No user value, uncomment the following line to provide one.
864
    # user_value 0
865
    # value_source default
866
    # Default value: 0
867
};
868
 
869
# <
870
# HAL context switch support
871
# A number of configuration options related to thread contexts
872
# are common to most or all HAL packages, even though the
873
# implementations will vary from architecture to architecture.
874
#
875
cdl_component CYGPKG_HAL_COMMON_CONTEXT {
876
    # There is no associated value.
877
 
878
    # The following properties are affected by this value
879
};
880
 
881
# >
882
# Use minimum thread context
883
# The thread context switch code can exploit the calling
884
# conventions defined for a given architecture to reduce the
885
# amount of state that has to be saved during a context
886
# switch. Generally this improves performance and reduces
887
# code size. However it can make source-level debugging more
888
# difficult.
889
#
890
cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM {
891
    # Flavor: bool
892
    # No user value, uncomment the following line to provide one.
893
    # user_value 1
894
    # value_source default
895
    # Default value: 1
896
 
897
    # The following properties are affected by this value
898
    # option CYGBLD_BUILD_GDB_STUBS
899
    #     Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM
900
};
901
 
902
# <
903
# Explicit control over cache behaviour
904
# These options let the default behaviour of the caches
905
# be easily configurable.
906
#
907
cdl_component CYGPKG_HAL_CACHE_CONTROL {
908
    # There is no associated value.
909
};
910
 
911
# >
912
# Enable DATA cache on startup
913
# Enabling this option will cause the data cache to be enabled
914
# as soon as practicable when eCos starts up.  One would choose
915
# to disable this if the data cache cannot safely be turned on,
916
# such as a case where the cache(s) require additional platform
917
# specific setup.
918
#
919
cdl_component CYGSEM_HAL_ENABLE_DCACHE_ON_STARTUP {
920
    # Flavor: bool
921
    # No user value, uncomment the following line to provide one.
922
    # user_value 1
923
    # value_source default
924
    # Default value: 1
925
};
926
 
927
# >
928
# DATA cache mode on startup
929
# This option controls the mode the cache will be set to
930
# when enabled on startup.
931
#
932
cdl_option CYGSEM_HAL_DCACHE_STARTUP_MODE {
933
    # Flavor: data
934
    # No user value, uncomment the following line to provide one.
935
    # user_value COPYBACK
936
    # value_source default
937
    # Default value: COPYBACK
938
    # Legal values:  "COPYBACK" "WRITETHRU"
939
};
940
 
941
# <
942
# Enable INSTRUCTION cache on startup
943
# Enabling this option will cause the instruction cache to be enabled
944
# as soon as practicable when eCos starts up.  One would choose
945
# to disable this if the instruction cache cannot safely be turned on,
946
# such as a case where the cache(s) require additional platform
947
# specific setup.
948
#
949
cdl_option CYGSEM_HAL_ENABLE_ICACHE_ON_STARTUP {
950
    # Flavor: bool
951
    # No user value, uncomment the following line to provide one.
952
    # user_value 1
953
    # value_source default
954
    # Default value: 1
955
};
956
 
957
# <
958
# Source-level debugging support
959
# If the source level debugger gdb is to be used for debugging
960
# application code then it may be necessary to configure in support
961
# for this in the HAL.
962
#
963
cdl_component CYGPKG_HAL_DEBUG {
964
    # There is no associated value.
965
};
966
 
967
# >
968
# Support for GDB stubs
969
# The HAL implements GDB stubs for the target.
970
#
971
cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS {
972
    # Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled
973
    # This value cannot be modified here.
974
    # Flavor: data
975
    # Current_value: 1
976
 
977
    # The following properties are affected by this value
978
    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
979
    #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS
980
};
981
 
982
# Include GDB stubs in HAL
983
# This option causes a set of GDB stubs to be included into the
984
# system. On some target systems the GDB support will be
985
# provided by other means, for example by a ROM monitor. On
986
# other targets, especially when building a ROM-booting system,
987
# the necessary support has to go into the target library
988
# itself. When GDB stubs are include in a configuration, HAL
989
# serial drivers must also be included.
990
#
991
cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS {
992
    # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS
993
    #     CYGINT_HAL_DEBUG_GDB_STUBS == 1
994
    #   --> 1
995
 
996
    # Flavor: bool
997
    # No user value, uncomment the following line to provide one.
998
    # user_value 0
999
    # value_source default
1000
    # Default value: 0
1001
    # Requires: ! CYGSEM_HAL_USE_ROM_MONITOR
1002
    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
1003
    #   --> 1
1004
    # Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1005
    #     CYGSEM_HAL_VIRTUAL_VECTOR_DIAG == 1
1006
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
1007
    #   --> 1
1008
 
1009
    # The following properties are affected by this value
1010
    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
1011
    #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
1012
    # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
1013
    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1014
    # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
1015
    #     DefaultValue: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1016
    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
1017
    #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1018
    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
1019
    #     DefaultValue:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1020
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1021
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1022
    # option CYGBLD_BUILD_COMMON_GDB_STUBS
1023
    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1024
    # option CYGPKG_HAL_GDB_FILEIO
1025
    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1026
    # option CYGBLD_BUILD_GDB_STUBS
1027
    #     Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1028
};
1029
 
1030
# Support for external break support in GDB stubs
1031
# The HAL implements external break (or asynchronous interrupt)
1032
# in the GDB stubs for the target.
1033
#
1034
cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS_BREAK {
1035
    # Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled
1036
    # This value cannot be modified here.
1037
    # Flavor: data
1038
    # Current_value: 1
1039
 
1040
    # The following properties are affected by this value
1041
    # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
1042
    #     ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
1043
};
1044
 
1045
# Include GDB external break support for stubs
1046
# This option causes the GDB stub to add a serial interrupt handler
1047
# which will listen for GDB break packets. This lets you stop the
1048
# target asynchronously when using GDB, usually by hitting Control+C
1049
# or pressing the STOP button. This option differs from
1050
# CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT in that it is used when
1051
# GDB stubs are present.
1052
#
1053
cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT {
1054
    # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK
1055
    #     CYGINT_HAL_DEBUG_GDB_STUBS_BREAK == 1
1056
    #   --> 1
1057
 
1058
    # Flavor: bool
1059
    # No user value, uncomment the following line to provide one.
1060
    # user_value 0
1061
    # value_source default
1062
    # Default value: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1063
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
1064
    #   --> 0
1065
    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1066
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
1067
    #   --> 0
1068
 
1069
    # The following properties are affected by this value
1070
    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
1071
    #     Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
1072
    # option CYGBLD_BUILD_GDB_STUBS
1073
    #     Requires: ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
1074
};
1075
 
1076
# Platform does not support CTRLC
1077
#
1078
cdl_interface CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED {
1079
    # No options implement this inferface
1080
    # This value cannot be modified here.
1081
    # Flavor: data
1082
    # Current_value: 0
1083
 
1084
    # The following properties are affected by this value
1085
    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
1086
    #     ActiveIf:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0
1087
};
1088
 
1089
# Include GDB external break support when no stubs
1090
# This option adds an interrupt handler for the GDB serial line
1091
# which will listen for GDB break packets. This lets you stop the
1092
# target asynchronously when using GDB, usually by hitting Control+C
1093
# or pressing the STOP button. This option differs from
1094
# CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT in that it is used when the GDB
1095
# stubs are NOT present.
1096
#
1097
cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT {
1098
    # This option is not active
1099
    # ActiveIf constraint:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1100
    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
1101
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
1102
    #   --> 0
1103
    # ActiveIf constraint:  CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0
1104
    #     CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0
1105
    #   --> 1
1106
 
1107
    # Flavor: bool
1108
    # No user value, uncomment the following line to provide one.
1109
    # user_value 1
1110
    # value_source default
1111
    # Default value:  !CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1112
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
1113
    #   --> 1
1114
    # Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT
1115
    #     CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0
1116
    #   --> 1
1117
};
1118
 
1119
# Include GDB multi-threading debug support
1120
# This option enables some extra HAL code which is needed
1121
# to support multi-threaded source level debugging.
1122
#
1123
cdl_option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT {
1124
    # ActiveIf constraint:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT
1125
    #     CYGSEM_HAL_ROM_MONITOR == 1
1126
    #     CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT == 1
1127
    #   --> 1
1128
 
1129
    # Flavor: bool
1130
    # No user value, uncomment the following line to provide one.
1131
    # user_value 1
1132
    # value_source default
1133
    # Default value: 1
1134
 
1135
    # The following properties are affected by this value
1136
    # option CYGBLD_BUILD_GDB_STUBS
1137
    #     Requires: ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
1138
    # option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT
1139
    #     Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
1140
};
1141
 
1142
# Number of times to retry sending a $O packet
1143
# This option controls the number of attempts that eCos programs
1144
# will make to send a $O packet to a host GDB process.  If it is
1145
# set non-zero, then the target process will attempt to resend the
1146
# $O packet data up to this number of retries.  Caution: use of
1147
# this option is not recommended as it can thoroughly confuse the
1148
# host GDB process.
1149
#
1150
cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES {
1151
    # Flavor: data
1152
    # No user value, uncomment the following line to provide one.
1153
    # user_value 0
1154
    # value_source default
1155
    # Default value: 0
1156
};
1157
 
1158
# Timeout period for GDB packets
1159
# This option controls the time (in milliseconds) that eCos programs
1160
# will wait for a response when sending packets to a host GDB process.
1161
# If this time elapses, then the packet will be resent, up to some
1162
# maximum number of times (CYGNUM_HAL_DEBUG_GDB_PROTOCOL_RETRIES).
1163
#
1164
cdl_option CYGNUM_HAL_DEBUG_GDB_PROTOCOL_TIMEOUT {
1165
    # Flavor: data
1166
    # No user value, uncomment the following line to provide one.
1167
    # user_value 500
1168
    # value_source default
1169
    # Default value: 500
1170
};
1171
 
1172
# <
1173
# ROM monitor support
1174
# Support for ROM monitors can be built in to your application.
1175
# It may also be relevant to build your application as a ROM monitor
1176
# itself. Such options are contained here if relevant for your chosen
1177
# platform. The options and ROM monitors available to choose are
1178
# platform-dependent.
1179
#
1180
cdl_component CYGPKG_HAL_ROM_MONITOR {
1181
    # There is no associated value.
1182
 
1183
    # The following properties are affected by this value
1184
};
1185
 
1186
# >
1187
# Target has virtual vector support
1188
#
1189
cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT {
1190
    # Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled
1191
    # This value cannot be modified here.
1192
    # Flavor: data
1193
    # Current_value: 1
1194
 
1195
    # The following properties are affected by this value
1196
    # component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT
1197
    #     ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
1198
};
1199
 
1200
# Target supports baud rate control via vectors
1201
# Whether this target supports the __COMMCTL_GETBAUD
1202
# and __COMMCTL_SETBAUD virtual vector comm control operations.
1203
#
1204
cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT {
1205
    # Implemented by CYGPKG_HAL_OPENRISC_ORP, active, enabled
1206
    # This value cannot be modified here.
1207
    # Flavor: data
1208
    # Current_value: 1
1209
 
1210
    # The following properties are affected by this value
1211
};
1212
 
1213
# Enable use of virtual vector calling interface
1214
# Virtual vector support allows the HAL to let the ROM
1215
# monitor handle certain operations. The virtual vector table
1216
# defines a calling interface between applications running in
1217
# RAM and the ROM monitor.
1218
#
1219
cdl_component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT {
1220
    # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT
1221
    #     CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT == 1
1222
    #   --> 1
1223
 
1224
    # Calculated value: 1
1225
    # Flavor: bool
1226
    # Current value: 1
1227
};
1228
 
1229
# >
1230
# Inherit console settings from ROM monitor
1231
# When this option is set, the application will inherit
1232
# the console as set up by the ROM monitor. This means
1233
# that the application will use whatever channel and
1234
# mangling style was used by the ROM monitor when
1235
# the application was launched.
1236
#
1237
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE {
1238
    # This option is not active
1239
    # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR
1240
    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
1241
    #   --> 0
1242
 
1243
    # Flavor: bool
1244
    # No user value, uncomment the following line to provide one.
1245
    # user_value 0
1246
    # value_source default
1247
    # Default value:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1248
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
1249
    #   --> 0
1250
 
1251
    # The following properties are affected by this value
1252
    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
1253
    #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
1254
    # option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
1255
    #     Calculated:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
1256
};
1257
 
1258
# Debug channel is configurable
1259
# This option is a configuration hint - it is enabled
1260
# when the HAL initialization code will make use
1261
# of the debug channel configuration option.
1262
#
1263
cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE {
1264
    # Calculated value:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1265
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
1266
    # Flavor: bool
1267
    # Current value: 1
1268
 
1269
    # The following properties are affected by this value
1270
    # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
1271
    #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
1272
};
1273
 
1274
# Console channel is configurable
1275
# This option is a configuration hint - it is enabled
1276
# when the HAL initialization code will make use
1277
# of the console channel configuration option.
1278
#
1279
cdl_option CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE {
1280
    # Calculated value:  !CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE  && !CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
1281
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE == 0
1282
    #     CYGDBG_HAL_DIAG_TO_DEBUG_CHAN == 0
1283
    # Flavor: bool
1284
    # Current value: 1
1285
 
1286
    # The following properties are affected by this value
1287
    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
1288
    #     ActiveIf: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
1289
};
1290
 
1291
# Initialize whole of virtual vector table
1292
# This option will cause the whole of the virtual
1293
# vector table to be initialized with dummy values on
1294
# startup. When this option is enabled, all the
1295
# options below must also be enabled - or the
1296
# table would be empty when the application
1297
# launches.
1298
# On targets where older ROM monitors without
1299
# virtual vector support may still be in use, it is
1300
# necessary for RAM applictions to initialize the
1301
# table (since all HAL diagnostics and debug IO
1302
# happens via the table).
1303
#
1304
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE {
1305
    # Flavor: bool
1306
    # No user value, uncomment the following line to provide one.
1307
    # user_value 1
1308
    # value_source default
1309
    # Default value:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR
1310
    #     CYG_HAL_STARTUP == ROM
1311
    #     CYGSEM_HAL_USE_ROM_MONITOR == 0
1312
    #   --> 1
1313
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
1314
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET == 1
1315
    #   --> 1
1316
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
1317
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US == 1
1318
    #   --> 1
1319
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
1320
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE == 1
1321
    #   --> 1
1322
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
1323
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA == 1
1324
    #   --> 1
1325
    # Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1326
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS == 1
1327
    #   --> 1
1328
 
1329
    # The following properties are affected by this value
1330
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1331
    #     ActiveIf: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1332
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
1333
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1334
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION
1335
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1336
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
1337
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1338
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
1339
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1340
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
1341
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1342
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1343
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1344
};
1345
 
1346
# Claim virtual vector table entries by default
1347
# By default most virtual vectors will be claimed by
1348
# RAM startup configurations, meaning that the RAM
1349
# application will provide the services. The
1350
# exception is COMMS support (HAL
1351
# diagnostics/debugging IO) which is left in the
1352
# control of the ROM monitor.
1353
# The reasoning behind this is to get as much of the
1354
# code exercised during regular development so it
1355
# is known to be working the few times a new ROM
1356
# monitor or a ROM production configuration is used
1357
# - COMMS are excluded only by necessity in order to
1358
# avoid breaking an existing debugger connections
1359
# (there may be ways around this).
1360
# For production RAM configurations this option can
1361
# be switched off, causing the appliction to rely on
1362
# the ROM monitor for these services, thus
1363
# saving some space.
1364
# Individual vectors may also be left unclaimed,
1365
# controlled by the below options (meaning that the
1366
# associated service provided by the ROM monitor
1367
# will be used).
1368
#
1369
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT {
1370
    # This option is not active
1371
    # ActiveIf constraint: !CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1372
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
1373
    #   --> 0
1374
 
1375
    # Flavor: bool
1376
    # No user value, uncomment the following line to provide one.
1377
    # user_value 1
1378
    # value_source default
1379
    # Default value: 1
1380
 
1381
    # The following properties are affected by this value
1382
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
1383
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1384
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
1385
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1386
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
1387
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1388
    # option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
1389
    #     DefaultValue:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1390
};
1391
 
1392
# Claim reset virtual vectors
1393
# This option will cause the reset and kill_by_reset
1394
# virtual vectors to be claimed.
1395
#
1396
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET {
1397
    # Flavor: bool
1398
    # No user value, uncomment the following line to provide one.
1399
    # user_value 1
1400
    # value_source default
1401
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1402
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
1403
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
1404
    #   --> 1
1405
 
1406
    # The following properties are affected by this value
1407
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1408
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_RESET
1409
};
1410
 
1411
# Claim version virtual vectors
1412
# This option will cause the version
1413
# virtual vectors to be claimed.
1414
#
1415
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_VERSION {
1416
    # Flavor: bool
1417
    # No user value, uncomment the following line to provide one.
1418
    # user_value 1
1419
    # value_source default
1420
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1421
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
1422
    #   --> 1
1423
};
1424
 
1425
# Claim delay_us virtual vector
1426
# This option will cause the delay_us
1427
# virtual vector to be claimed.
1428
#
1429
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US {
1430
    # Flavor: bool
1431
    # No user value, uncomment the following line to provide one.
1432
    # user_value 1
1433
    # value_source default
1434
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1435
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
1436
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
1437
    #   --> 1
1438
 
1439
    # The following properties are affected by this value
1440
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1441
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DELAY_US
1442
};
1443
 
1444
# Claim cache virtual vectors
1445
# This option will cause the cache virtual vectors
1446
# to be claimed.
1447
#
1448
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE {
1449
    # Flavor: bool
1450
    # No user value, uncomment the following line to provide one.
1451
    # user_value 1
1452
    # value_source default
1453
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1454
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
1455
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
1456
    #   --> 1
1457
 
1458
    # The following properties are affected by this value
1459
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1460
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_CACHE
1461
};
1462
 
1463
# Claim data virtual vectors
1464
# This option will cause the data virtual vectors
1465
# to be claimed. At present there is only one, used
1466
# by the RedBoot ethernet driver to share diag output.
1467
#
1468
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA {
1469
    # Flavor: bool
1470
    # No user value, uncomment the following line to provide one.
1471
    # user_value 1
1472
    # value_source default
1473
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT
1474
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
1475
    #     CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DEFAULT == 0
1476
    #   --> 1
1477
 
1478
    # The following properties are affected by this value
1479
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1480
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_DATA
1481
};
1482
 
1483
# Claim comms virtual vectors
1484
# This option will cause the communication tables
1485
# that are part of the virtual vectors mechanism to
1486
# be claimed. Note that doing this may cause an
1487
# existing ROM monitor communication connection to
1488
# be closed. For this reason, the option is disabled
1489
# per default for normal application
1490
# configurations.
1491
#
1492
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS {
1493
    # Flavor: bool
1494
    # No user value, uncomment the following line to provide one.
1495
    # user_value 1
1496
    # value_source default
1497
    # Default value:  CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE  || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1498
    #     CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE == 1
1499
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
1500
    #   --> 1
1501
 
1502
    # The following properties are affected by this value
1503
    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1504
    #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1505
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
1506
    #     DefaultValue:  !CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1507
    # option CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
1508
    #     Calculated:  CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1509
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1510
    #     Requires: CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1511
};
1512
 
1513
# Do diagnostic IO via virtual vector table
1514
# All HAL IO happens via the virtual vector table / comm
1515
# tables when those tables are supported by the HAL.
1516
# If so desired, the low-level IO functions can
1517
# still be provided by the RAM application by
1518
# enabling the CLAIM_COMMS option.
1519
#
1520
cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG {
1521
    # Calculated value: 1
1522
    # Flavor: bool
1523
    # Current value: 1
1524
 
1525
    # The following properties are affected by this value
1526
    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
1527
    #     ActiveIf:  CYGPKG_HAL_ARM || CYGPKG_HAL_POWERPC_MPC8xx  || CYGPKG_HAL_V85X_V850 || CYGSEM_HAL_VIRTUAL_VECTOR_DIAG
1528
    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1529
    #     Requires:  !CYGSEM_HAL_VIRTUAL_VECTOR_DIAG  || CYGSEM_HAL_VIRTUAL_VECTOR_CLAIM_COMMS
1530
};
1531
 
1532
# <
1533
# Work with a ROM monitor
1534
# Support can be enabled for three different varieties of ROM monitor.
1535
# This support changes various eCos semantics such as the encoding
1536
# of diagnostic output, or the overriding of hardware interrupt
1537
# vectors.
1538
# Firstly there is "Generic" support which prevents the HAL
1539
# from overriding the hardware vectors that it does not use, to
1540
# instead allow an installed ROM monitor to handle them. This is
1541
# the most basic support which is likely to be common to most
1542
# implementations of ROM monitor.
1543
# "CygMon" provides support for the Cygnus ROM Monitor.
1544
# And finally, "GDB_stubs" provides support when GDB stubs are
1545
# included in the ROM monitor or boot ROM.
1546
#
1547
cdl_option CYGSEM_HAL_USE_ROM_MONITOR {
1548
    # Flavor: booldata
1549
    # No user value, uncomment the following line to provide one.
1550
    # user_value 0 0
1551
    # value_source default
1552
    # Default value:  CYG_HAL_STARTUP == "RAM" ? "CygMon" : 0
1553
    #     CYG_HAL_STARTUP == ROM
1554
    #   --> 0 0
1555
    # Legal values:  "Generic" "CygMon" "GDB_stubs"
1556
    # Requires:  CYG_HAL_STARTUP == "RAM"
1557
    #     CYG_HAL_STARTUP == ROM
1558
    #   --> 0
1559
 
1560
    # The following properties are affected by this value
1561
    # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1562
    #     Requires: ! CYGSEM_HAL_USE_ROM_MONITOR
1563
    # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT
1564
    #     ActiveIf:  CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1565
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INHERIT_CONSOLE
1566
    #     ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR
1567
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1568
    #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR
1569
};
1570
 
1571
# Behave as a ROM monitor
1572
# Enable this option if this program is to be used as a ROM monitor,
1573
# i.e. applications will be loaded into RAM on the board, and this
1574
# ROM monitor may process exceptions or interrupts generated from the
1575
# application. This enables features such as utilizing a separate
1576
# interrupt stack when exceptions are generated.
1577
#
1578
cdl_option CYGSEM_HAL_ROM_MONITOR {
1579
    # Flavor: bool
1580
    # No user value, uncomment the following line to provide one.
1581
    # user_value 1
1582
    # value_source default
1583
    # Default value: 1
1584
    # Requires:  CYG_HAL_STARTUP == "ROM"
1585
    #     CYG_HAL_STARTUP == ROM
1586
    #   --> 1
1587
 
1588
    # The following properties are affected by this value
1589
    # option CYGBLD_BUILD_GDB_STUBS
1590
    #     Requires: CYGSEM_HAL_ROM_MONITOR
1591
    # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
1592
    #     ActiveIf:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT
1593
};
1594
 
1595
# <
1596
# Platform defined I/O channels.
1597
# Platforms which provide additional I/O channels can implement
1598
# this interface, indicating that the function plf_if_init()
1599
# needs to be called.
1600
#
1601
cdl_interface CYGINT_HAL_PLF_IF_INIT {
1602
    # No options implement this inferface
1603
    # This value cannot be modified here.
1604
    # Flavor: data
1605
    # Current_value: 0
1606
};
1607
 
1608
# Platform IDE I/O support.
1609
# Platforms which provide IDE controllers can implement
1610
# this interface, indicating that IDE I/O macros are
1611
# available.
1612
#
1613
cdl_interface CYGINT_HAL_PLF_IF_IDE {
1614
    # No options implement this inferface
1615
    # This value cannot be modified here.
1616
    # Flavor: data
1617
    # Current_value: 0
1618
};
1619
 
1620
# File I/O operations via GDB
1621
# This option enables support for various file I/O
1622
# operations using the GDB remote protocol to communicate
1623
# with GDB. The operations are then performed on the
1624
# debugging host by proxy. These operations are only
1625
# currently available by using a system call interface
1626
# to RedBoot. This may change in the future.
1627
#
1628
cdl_option CYGPKG_HAL_GDB_FILEIO {
1629
    # This option is not active
1630
    # ActiveIf constraint: CYGSEM_REDBOOT_BSP_SYSCALLS
1631
    #     CYGSEM_REDBOOT_BSP_SYSCALLS (unknown) == 0
1632
    #   --> 0
1633
 
1634
    # Flavor: bool
1635
    # No user value, uncomment the following line to provide one.
1636
    # user_value 0
1637
    # value_source default
1638
    # Default value: 0
1639
    # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS
1640
    #     CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0
1641
    #   --> 0
1642
};
1643
 
1644
# Build Compiler sanity checking tests
1645
# Enabling this option causes compiler tests to be built.
1646
#
1647
cdl_option CYGPKG_HAL_BUILD_COMPILER_TESTS {
1648
    # Flavor: bool
1649
    # No user value, uncomment the following line to provide one.
1650
    # user_value 0
1651
    # value_source default
1652
    # Default value: 0
1653
 
1654
    # The following properties are affected by this value
1655
    # component CYGPKG_HAL_TESTS
1656
    #     Calculated:   "tests/context tests/basic"
1657
    #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
1658
    #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
1659
    #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "")
1660
};
1661
 
1662
# Common HAL tests
1663
# This option specifies the set of tests for the common HAL.
1664
#
1665
cdl_component CYGPKG_HAL_TESTS {
1666
    # Calculated value:   "tests/context tests/basic"
1667
    #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
1668
    #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
1669
    #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "")
1670
    #     CYGINT_HAL_TESTS_NO_CACHES == 0
1671
    #     CYGPKG_HAL_BUILD_COMPILER_TESTS == 0
1672
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
1673
    # Flavor: data
1674
    # Current_value: tests/context tests/basic tests/cache
1675
};
1676
 
1677
# >
1678
# Interface for cache presence
1679
# Some architectures and/or platforms do not have caches. By
1680
# implementing this interface, these can disable the various
1681
# cache-related tests.
1682
#
1683
cdl_interface CYGINT_HAL_TESTS_NO_CACHES {
1684
    # No options implement this inferface
1685
    # This value cannot be modified here.
1686
    # Flavor: booldata
1687
    # Current value: 0 0
1688
 
1689
    # The following properties are affected by this value
1690
    # component CYGPKG_HAL_TESTS
1691
    #     Calculated:   "tests/context tests/basic"
1692
    #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
1693
    #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
1694
    #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "")
1695
    # option CYGPKG_KERNEL_TESTS
1696
    #     Calculated:
1697
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
1698
    #                     . ((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/tm_basic tests/fptest" : "")
1699
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
1700
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
1701
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
1702
    #
1703
};
1704
 
1705
# <
1706
# OpenRISC architecture
1707
# The OpenRISC architecture HAL package provides generic support
1708
# for this processor architecture. It is also necessary to
1709
# select a specific target platform HAL package.
1710
#
1711
cdl_package CYGPKG_HAL_OPENRISC {
1712
    # Packages cannot be added or removed, nor can their version be changed,
1713
    # simply by editing their value. Instead the appropriate configuration
1714
    # should be used to perform these actions.
1715
 
1716
    # This value cannot be modified here.
1717
    # Flavor: booldata
1718
    # Current value: 1 current
1719
 
1720
    # The following properties are affected by this value
1721
};
1722
 
1723
# >
1724
# Linker script
1725
#
1726
cdl_option CYGBLD_LINKER_SCRIPT {
1727
    # Calculated value:  "src/openrisc.ld"
1728
    # Flavor: data
1729
    # Current_value: src/openrisc.ld
1730
};
1731
 
1732
# CPU frequency
1733
# This option contains the frequency of the CPU in MegaHertz.
1734
# Choose the frequency to match the processor you have. This
1735
# may affect thing like serial device, interval clock and
1736
# memory access speed settings.
1737
#
1738
cdl_option CYGHWR_HAL_OPENRISC_CPU_FREQ {
1739
    # Flavor: data
1740
    # No user value, uncomment the following line to provide one.
1741
    # user_value 104
1742
    # value_source default
1743
    # Default value: 104
1744
    # Legal values: 0 to 1000000
1745
 
1746
    # The following properties are affected by this value
1747
    # option CYGNUM_HAL_RTC_PERIOD
1748
    #     DefaultValue: CYGHWR_HAL_OPENRISC_CPU_FREQ * 1000000 / CYGNUM_HAL_RTC_DENOMINATOR
1749
};
1750
 
1751
# OpenRISC Reference Platform
1752
# The ORP HAL package should be used when targetting the
1753
# OpenRISC Reference Platform.
1754
#
1755
cdl_package CYGPKG_HAL_OPENRISC_ORP {
1756
    # Packages cannot be added or removed, nor can their version be changed,
1757
    # simply by editing their value. Instead the appropriate configuration
1758
    # should be used to perform these actions.
1759
 
1760
    # This value cannot be modified here.
1761
    # Flavor: booldata
1762
    # Current value: 1 current
1763
 
1764
    # The following properties are affected by this value
1765
    # package CYGPKG_DEVS_FLASH_OPENRISC_ORP
1766
    #     Requires: CYGPKG_HAL_OPENRISC_ORP
1767
};
1768
 
1769
# >
1770
# Startup type
1771
# Selects whether code initially runs from ROM or RAM.  In the case of ROM startup,
1772
# it's possible for the code to be copied into RAM and executed there.
1773
#
1774
cdl_component CYG_HAL_STARTUP {
1775
    # Flavor: data
1776
    # No user value, uncomment the following line to provide one.
1777
    # user_value ROM
1778
    # value_source default
1779
    # Default value: ROM
1780
    # Legal values: "RAM" "ROM"
1781
 
1782
    # The following properties are affected by this value
1783
    # option CYGBLD_BUILD_GDB_STUBS
1784
    #     Requires:  CYG_HAL_STARTUP == "ROM"
1785
    # component CYGHWR_MEMORY_LAYOUT
1786
    #     Calculated:  CYG_HAL_STARTUP == "RAM" ? "openrisc_orp_ram" :  "openrisc_orp_rom"
1787
    # option CYGHWR_MEMORY_LAYOUT_LDI
1788
    #     Calculated:  CYG_HAL_STARTUP == "RAM" ? "" :  ""
1789
    # option CYGHWR_MEMORY_LAYOUT_H
1790
    #     Calculated:  CYG_HAL_STARTUP == "RAM" ? "" :  ""
1791
    # option CYGSEM_HAL_USE_ROM_MONITOR
1792
    #     DefaultValue:  CYG_HAL_STARTUP == "RAM" ? "CygMon" : 0
1793
    # option CYGSEM_HAL_USE_ROM_MONITOR
1794
    #     Requires:  CYG_HAL_STARTUP == "RAM"
1795
    # option CYGSEM_HAL_ROM_MONITOR
1796
    #     Requires:  CYG_HAL_STARTUP == "ROM"
1797
    # option CYGSEM_HAL_INSTALL_MMU_TABLES
1798
    #     DefaultValue:  CYG_HAL_STARTUP != "RAM"
1799
    # component CYGDBG_HAL_DIAG_TO_DEBUG_CHAN
1800
    #     DefaultValue:  (CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS  || CYG_HAL_STARTUP == "RAM") ? 1 : 0
1801
    # option CYGSEM_HAL_VIRTUAL_VECTOR_INIT_WHOLE_TABLE
1802
    #     DefaultValue:  CYG_HAL_STARTUP != "RAM" || !CYGSEM_HAL_USE_ROM_MONITOR
1803
};
1804
 
1805
# Diagnostic serial port baud rate
1806
# This option selects the baud rate used for the diagnostic console.
1807
# Note: this should match the value chosen for the GDB port if the
1808
# diagnostic and GDB port are the same.
1809
# Note: very high baud rates are useful during simulation.
1810
#
1811
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD {
1812
    # Flavor: data
1813
    # No user value, uncomment the following line to provide one.
1814
    # user_value 115200
1815
    # value_source default
1816
    # Default value: 115200
1817
    # Legal values: 9600 19200 38400 57600 115200 230400 460800 921600
1818
};
1819
 
1820
# GDB serial port baud rate
1821
# This option controls the baud rate used for the GDB connection.
1822
# Note: very high baud rates are useful during simulation.
1823
#
1824
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD {
1825
    # Flavor: data
1826
    # No user value, uncomment the following line to provide one.
1827
    # user_value 115200
1828
    # value_source default
1829
    # Default value: 115200
1830
    # Legal values: 9600 19200 38400 57600 115200 230400 460800 921600
1831
};
1832
 
1833
# Real-time clock constants.
1834
#
1835
cdl_component CYGNUM_HAL_RTC_CONSTANTS {
1836
    # There is no associated value.
1837
};
1838
 
1839
# >
1840
# Real-time clock numerator
1841
#
1842
cdl_option CYGNUM_HAL_RTC_NUMERATOR {
1843
    # Calculated value: 1000000000
1844
    # Flavor: data
1845
    # Current_value: 1000000000
1846
};
1847
 
1848
# Real-time clock denominator
1849
#
1850
cdl_option CYGNUM_HAL_RTC_DENOMINATOR {
1851
    # Calculated value: 100
1852
    # Flavor: data
1853
    # Current_value: 100
1854
 
1855
    # The following properties are affected by this value
1856
    # option CYGNUM_HAL_RTC_PERIOD
1857
    #     DefaultValue: CYGHWR_HAL_OPENRISC_CPU_FREQ * 1000000 / CYGNUM_HAL_RTC_DENOMINATOR
1858
};
1859
 
1860
# Real-time clock period
1861
# The tick timer facility is used
1862
# to drive the eCos kernel RTC. The count register
1863
# increments at the CPU clock speed.  By default, 100 Hz
1864
#
1865
cdl_option CYGNUM_HAL_RTC_PERIOD {
1866
    # Flavor: data
1867
    # No user value, uncomment the following line to provide one.
1868
    # user_value 1040000
1869
    # value_source default
1870
    # Default value: CYGHWR_HAL_OPENRISC_CPU_FREQ * 1000000 / CYGNUM_HAL_RTC_DENOMINATOR
1871
    #     CYGHWR_HAL_OPENRISC_CPU_FREQ == 104
1872
    #     CYGNUM_HAL_RTC_DENOMINATOR == 100
1873
    #   --> 1040000
1874
};
1875
 
1876
# <
1877
# Number of breakpoints supported by the HAL.
1878
# This option determines the number of breakpoints supported by the HAL.
1879
#
1880
cdl_option CYGNUM_HAL_BREAKPOINT_LIST_SIZE {
1881
    # Flavor: data
1882
    # No user value, uncomment the following line to provide one.
1883
    # user_value 25
1884
    # value_source default
1885
    # Default value: 25
1886
};
1887
 
1888
# Number of communication channels on the board
1889
#
1890
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS {
1891
    # Flavor: data
1892
    # No user value, uncomment the following line to provide one.
1893
    # user_value 1
1894
    # value_source default
1895
    # Default value: 1
1896
 
1897
    # The following properties are affected by this value
1898
    # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL
1899
    #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
1900
    # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL
1901
    #     LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
1902
};
1903
 
1904
# Debug serial port
1905
# The ORP platform has at least one serial port, but it can potentially have several.
1906
# This option chooses which port will be used to connect to a host
1907
# running GDB.
1908
#
1909
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL {
1910
    # ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE
1911
    #     CYGPRI_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_CONFIGURABLE == 1
1912
    #   --> 1
1913
 
1914
    # Flavor: data
1915
    # No user value, uncomment the following line to provide one.
1916
    # user_value 0
1917
    # value_source default
1918
    # Default value: 0
1919
    # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
1920
    #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 1
1921
};
1922
 
1923
# Diagnostic serial port
1924
# The ORP platform has at least one serial port, but it can potentially have several.
1925
# This option chooses which port will be used for diagnostic output.
1926
#
1927
cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL {
1928
    # ActiveIf constraint: CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE
1929
    #     CYGPRI_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_CONFIGURABLE == 1
1930
    #   --> 1
1931
 
1932
    # Flavor: data
1933
    # No user value, uncomment the following line to provide one.
1934
    # user_value 0
1935
    # value_source default
1936
    # Default value: 0
1937
    # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1
1938
    #     CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 1
1939
};
1940
 
1941
# Memory layout
1942
#
1943
cdl_component CYGHWR_MEMORY_LAYOUT {
1944
    # Calculated value:  CYG_HAL_STARTUP == "RAM" ? "openrisc_orp_ram" :  "openrisc_orp_rom"
1945
    #     CYG_HAL_STARTUP == ROM
1946
    # Flavor: data
1947
    # Current_value: openrisc_orp_rom
1948
};
1949
 
1950
# >
1951
# Memory layout linker script fragment
1952
#
1953
cdl_option CYGHWR_MEMORY_LAYOUT_LDI {
1954
    # Calculated value:  CYG_HAL_STARTUP == "RAM" ? "" :  ""
1955
    #     CYG_HAL_STARTUP == ROM
1956
    # Flavor: data
1957
    # Current_value: 
1958
};
1959
 
1960
# Memory layout header file
1961
#
1962
cdl_option CYGHWR_MEMORY_LAYOUT_H {
1963
    # Calculated value:  CYG_HAL_STARTUP == "RAM" ? "" :  ""
1964
    #     CYG_HAL_STARTUP == ROM
1965
    # Flavor: data
1966
    # Current_value: 
1967
};
1968
 
1969
# <
1970
# <
1971
# <
1972
# <
1973
# I/O sub-system
1974
# doc: ref/io.html
1975
# The eCos system is supplied with a number of different
1976
# device drivers.  This option enables the basic I/O system
1977
# support which is the basis for all drivers.
1978
#
1979
cdl_package CYGPKG_IO {
1980
    # Packages cannot be added or removed, nor can their version be changed,
1981
    # simply by editing their value. Instead the appropriate configuration
1982
    # should be used to perform these actions.
1983
 
1984
    # This value cannot be modified here.
1985
    # Flavor: booldata
1986
    # Current value: 1 v2_0
1987
    # Requires: CYGPKG_ERROR
1988
    #     CYGPKG_ERROR == v2_0
1989
    #   --> 1
1990
 
1991
    # The following properties are affected by this value
1992
    # package CYGPKG_IO_SERIAL
1993
    #     ActiveIf: CYGPKG_IO
1994
    # package CYGPKG_LIBC_STDIO
1995
    #     Requires: CYGPKG_IO
1996
};
1997
 
1998
# >
1999
# Debug I/O sub-system
2000
# This option enables verbose messages to be displayed on the
2001
# system 'diag' device during I/O system initialization.
2002
#
2003
cdl_option CYGDBG_IO_INIT {
2004
    # Flavor: bool
2005
    # No user value, uncomment the following line to provide one.
2006
    # user_value 0
2007
    # value_source default
2008
    # Default value: 0
2009
};
2010
 
2011
# Basic support for file based I/O
2012
# This option control support for simple file I/O primitives. It is only
2013
# present if the FILEIO package is not included.
2014
#
2015
cdl_component CYGPKG_IO_FILE_SUPPORT {
2016
    # ActiveIf constraint: !CYGPKG_IO_FILEIO
2017
    #     CYGPKG_IO_FILEIO (unknown) == 0
2018
    #   --> 1
2019
 
2020
    # Flavor: bool
2021
    # No user value, uncomment the following line to provide one.
2022
    # user_value 1
2023
    # value_source default
2024
    # Default value: 1
2025
};
2026
 
2027
# >
2028
# Number of open files
2029
# This option controls the number of open files.
2030
#
2031
cdl_option CYGPKG_IO_NFILE {
2032
    # Flavor: data
2033
    # No user value, uncomment the following line to provide one.
2034
    # user_value 16
2035
    # value_source default
2036
    # Default value: 16
2037
};
2038
 
2039
# <
2040
# <
2041
# Serial device drivers
2042
# doc: ref/io.html
2043
# This option enables drivers for basic I/O services on
2044
# serial devices.
2045
#
2046
cdl_package CYGPKG_IO_SERIAL {
2047
    # Packages cannot be added or removed, nor can their version be changed,
2048
    # simply by editing their value. Instead the appropriate configuration
2049
    # should be used to perform these actions.
2050
 
2051
    # ActiveIf constraint: CYGPKG_IO
2052
    #     CYGPKG_IO == v2_0
2053
    #   --> 1
2054
 
2055
    # This value cannot be modified here.
2056
    # Flavor: booldata
2057
    # Current value: 1 v2_0
2058
    # Requires: CYGPKG_ERROR
2059
    #     CYGPKG_ERROR == v2_0
2060
    #   --> 1
2061
};
2062
 
2063
# >
2064
# Support non-blocking read and write calls
2065
# This option enables extra code in the generic serial driver
2066
# which allows clients to switch read() and write() call
2067
# semantics from blocking to non-blocking.
2068
#
2069
cdl_option CYGOPT_IO_SERIAL_SUPPORT_NONBLOCKING {
2070
    # Flavor: bool
2071
    # No user value, uncomment the following line to provide one.
2072
    # user_value 0
2073
    # value_source default
2074
    # Default value: 0
2075
};
2076
 
2077
# Driver requires block transfer callback functions
2078
# Some low-level drivers can be optimized to transfer blocks
2079
# of data instead of a single character at a time. These usually
2080
# rely on a hardware FIFO of some sort.
2081
#
2082
cdl_interface CYGINT_IO_SERIAL_BLOCK_TRANSFER {
2083
    # No options implement this inferface
2084
    # This value cannot be modified here.
2085
    # Flavor: data
2086
    # Current_value: 0
2087
};
2088
 
2089
# Serial driver supports line status
2090
#
2091
cdl_interface CYGINT_IO_SERIAL_LINE_STATUS_HW {
2092
    # No options implement this inferface
2093
    # This value cannot be modified here.
2094
    # Flavor: data
2095
    # Current_value: 0
2096
 
2097
    # The following properties are affected by this value
2098
    # option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS
2099
    #     Requires:  CYGINT_IO_SERIAL_LINE_STATUS_HW > 0
2100
    # option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS
2101
    #     DefaultValue:  0 != CYGINT_IO_SERIAL_LINE_STATUS_HW
2102
};
2103
 
2104
# Support line status callbacks
2105
# This option indicates that if the serial driver supports it,
2106
# serial line status and modem status information should be
2107
# propagated to higher layers via callbacks.
2108
#
2109
cdl_option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS {
2110
    # Flavor: bool
2111
    # No user value, uncomment the following line to provide one.
2112
    # user_value 0
2113
    # value_source default
2114
    # Default value:  0 != CYGINT_IO_SERIAL_LINE_STATUS_HW
2115
    #     CYGINT_IO_SERIAL_LINE_STATUS_HW == 0
2116
    #   --> 0
2117
    # Requires:  CYGINT_IO_SERIAL_LINE_STATUS_HW > 0
2118
    #     CYGINT_IO_SERIAL_LINE_STATUS_HW == 0
2119
    #   --> 0
2120
 
2121
    # The following properties are affected by this value
2122
    # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW
2123
    #     Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS
2124
    # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW
2125
    #     DefaultValue:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ?  CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0
2126
};
2127
 
2128
# Flow control
2129
# This component contains options related to flow control.
2130
#
2131
cdl_component CYGPKG_IO_SERIAL_FLOW_CONTROL {
2132
    # Flavor: bool
2133
    # No user value, uncomment the following line to provide one.
2134
    # user_value 0
2135
    # value_source default
2136
    # Default value: 0
2137
    # Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW)
2138
    #     CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE == 0
2139
    #     CYGOPT_IO_SERIAL_FLOW_CONTROL_HW == 0
2140
    #   --> 0
2141
};
2142
 
2143
# >
2144
# Software flow control
2145
# This component enables support of software flow control.
2146
#
2147
cdl_component CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE {
2148
    # This option is not active
2149
    # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled
2150
 
2151
    # Flavor: bool
2152
    # No user value, uncomment the following line to provide one.
2153
    # user_value 1
2154
    # value_source default
2155
    # Default value: 1
2156
 
2157
    # The following properties are affected by this value
2158
    # component CYGPKG_IO_SERIAL_FLOW_CONTROL
2159
    #     Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW)
2160
};
2161
 
2162
# >
2163
# Start character
2164
# This option specifies the ascii character used to
2165
# indicate that transmission should start.
2166
#
2167
cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XON_CHAR {
2168
    # This option is not active
2169
    # The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active
2170
 
2171
    # Flavor: data
2172
    # No user value, uncomment the following line to provide one.
2173
    # user_value 17
2174
    # value_source default
2175
    # Default value: 17
2176
    # Legal values: 0 to 255
2177
};
2178
 
2179
# Stop character
2180
# This option specifies the ascii character used to
2181
# indicate that transmission should stop.
2182
#
2183
cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XOFF_CHAR {
2184
    # This option is not active
2185
    # The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active
2186
 
2187
    # Flavor: data
2188
    # No user value, uncomment the following line to provide one.
2189
    # user_value 19
2190
    # value_source default
2191
    # Default value: 19
2192
    # Legal values: 0 to 255
2193
};
2194
 
2195
# <
2196
# Hardware flow control
2197
# If the hardware supports it, this option allows hardware
2198
# flow control to be enabled. This may be in the form of
2199
# either or both of RTS/CTS, or DSR/DTR flow control.
2200
#
2201
cdl_option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW {
2202
    # This option is not active
2203
    # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled
2204
    # ActiveIf constraint:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0
2205
    #     CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0
2206
    #   --> 0
2207
 
2208
    # Flavor: bool
2209
    # No user value, uncomment the following line to provide one.
2210
    # user_value 0
2211
    # value_source default
2212
    # Default value:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ?  CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0
2213
    #     CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0
2214
    #     CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0
2215
    #   --> 0
2216
    # Requires:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0
2217
    #     CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0
2218
    #   --> 0
2219
    # Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS
2220
    #     CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0
2221
    #   --> 0
2222
 
2223
    # The following properties are affected by this value
2224
    # component CYGPKG_IO_SERIAL_FLOW_CONTROL
2225
    #     Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW)
2226
};
2227
 
2228
# Serial h/w supports hardware flow control
2229
#
2230
cdl_interface CYGINT_IO_SERIAL_FLOW_CONTROL_HW {
2231
    # No options implement this inferface
2232
    # This option is not active
2233
    # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled
2234
 
2235
    # This value cannot be modified here.
2236
    # Flavor: data
2237
    # Current_value: 0
2238
 
2239
    # The following properties are affected by this value
2240
    # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW
2241
    #     ActiveIf:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0
2242
    # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW
2243
    #     Requires:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0
2244
    # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW
2245
    #     DefaultValue:  CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ?  CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0
2246
};
2247
 
2248
# Default flow control method
2249
# This option allows a default flow control method
2250
# to be defined. Combinations of flow control methods
2251
# may also be set, but this is only possible by
2252
# using the cyg_io_set_config() API in source code.
2253
#
2254
cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_DEFAULT {
2255
    # This option is not active
2256
    # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled
2257
 
2258
    # Flavor: data
2259
    # No user value, uncomment the following line to provide one.
2260
    # user_value NONE
2261
    # value_source default
2262
    # Default value: NONE
2263
    # Legal values:  "NONE" "XONXOFF" "RTSCTS" "DSRDTR"
2264
};
2265
 
2266
# Rx flow control low water mark
2267
# This sets the water mark used for determining
2268
# when to disable flow control, expressed
2269
# as a percentage of the buffer size. When the
2270
# receive buffer size is lower than this percentage,
2271
# if the transmitter had previously been throttled, it
2272
# will now be informed it can restart.
2273
#
2274
cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT {
2275
    # This option is not active
2276
    # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled
2277
 
2278
    # Flavor: data
2279
    # No user value, uncomment the following line to provide one.
2280
    # user_value 33
2281
    # value_source default
2282
    # Default value: 33
2283
    # Legal values: 1 to 100
2284
 
2285
    # The following properties are affected by this value
2286
    # option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT
2287
    #     Requires:  CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >=  CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT
2288
};
2289
 
2290
# Rx flow control high water mark
2291
# This sets the water mark used for determining
2292
# when to enable flow control, expressed
2293
# as a percentage of the buffer size. When the
2294
# receive buffer size exceeds this percentage,
2295
# signals are sent to the transmitter to tell it
2296
# to throttle tranmission.
2297
#
2298
cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT {
2299
    # This option is not active
2300
    # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled
2301
 
2302
    # Flavor: data
2303
    # No user value, uncomment the following line to provide one.
2304
    # user_value 66
2305
    # value_source default
2306
    # Default value: 66
2307
    # Legal values: 1 to 100
2308
    # Requires:  CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >=  CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT
2309
    #     CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT == 0
2310
    #     CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT == 0
2311
    #   --> 1
2312
 
2313
    # The following properties are affected by this value
2314
    # option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT
2315
    #     Requires:  CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >=  CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT
2316
};
2317
 
2318
# <
2319
# TTY-mode serial device drivers
2320
# This option enables a simple terminal-like device driver
2321
# that can be used for serial devices that interact with humans,
2322
# such as a system console.
2323
#
2324
cdl_component CYGPKG_IO_SERIAL_TTY {
2325
    # Flavor: bool
2326
    # No user value, uncomment the following line to provide one.
2327
    # user_value 1
2328
    # value_source default
2329
    # Default value: 1
2330
};
2331
 
2332
# >
2333
# HAL/diag serial device driver
2334
# This option enables the use of the HAL diagnostic channel
2335
# via the standard I/O drivers.
2336
#
2337
cdl_component CYGPKG_IO_SERIAL_HALDIAG {
2338
    # Flavor: bool
2339
    # No user value, uncomment the following line to provide one.
2340
    # user_value 1
2341
    # value_source default
2342
    # Default value: 1
2343
 
2344
    # The following properties are affected by this value
2345
    # package CYGPKG_LIBC_STDIO
2346
    #     Requires: CYGPKG_IO_SERIAL_HALDIAG
2347
};
2348
 
2349
# Console device name
2350
# This option selects the TTY device to use for the console.
2351
#
2352
cdl_option CYGDAT_IO_SERIAL_TTY_CONSOLE {
2353
    # Flavor: data
2354
    # No user value, uncomment the following line to provide one.
2355
    # user_value "\"/dev/ttydiag\""
2356
    # value_source default
2357
    # Default value: "\"/dev/ttydiag\""
2358
 
2359
    # The following properties are affected by this value
2360
    # option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE
2361
    #     DefaultValue: CYGDAT_IO_SERIAL_TTY_CONSOLE
2362
};
2363
 
2364
# TTY mode HAL/diag channel
2365
# This option causes '/dev/ttydiag' to be included in the standard
2366
# drivers.
2367
#
2368
cdl_component CYGPKG_IO_SERIAL_TTY_TTYDIAG {
2369
    # Flavor: bool
2370
    # No user value, uncomment the following line to provide one.
2371
    # user_value 1
2372
    # value_source default
2373
    # Default value: 1
2374
};
2375
 
2376
# TTY mode channel #0
2377
# This option causes '/dev/tty0' to be included in the standard
2378
# drivers.
2379
#
2380
cdl_component CYGPKG_IO_SERIAL_TTY_TTY0 {
2381
    # Flavor: bool
2382
    # No user value, uncomment the following line to provide one.
2383
    # user_value 0
2384
    # value_source default
2385
    # Default value: 0
2386
};
2387
 
2388
# >
2389
# TTY mode channel #0 device
2390
# This option selects the physical device to use for
2391
# '/dev/tty0'.
2392
#
2393
cdl_option CYGDAT_IO_SERIAL_TTY_TTY0_DEV {
2394
    # This option is not active
2395
    # The parent CYGPKG_IO_SERIAL_TTY_TTY0 is disabled
2396
 
2397
    # Flavor: data
2398
    # No user value, uncomment the following line to provide one.
2399
    # user_value "\"/dev/ser0\""
2400
    # value_source default
2401
    # Default value: "\"/dev/ser0\""
2402
};
2403
 
2404
# <
2405
# TTY mode channel #1
2406
# This option causes '/dev/tty1' to be included in the standard
2407
# drivers.
2408
#
2409
cdl_component CYGPKG_IO_SERIAL_TTY_TTY1 {
2410
    # Flavor: bool
2411
    # No user value, uncomment the following line to provide one.
2412
    # user_value 0
2413
    # value_source default
2414
    # Default value: 0
2415
};
2416
 
2417
# >
2418
# TTY mode channel #1 device
2419
# This option selects the physical device to use for
2420
# '/dev/tty1'.
2421
#
2422
cdl_option CYGDAT_IO_SERIAL_TTY_TTY1_DEV {
2423
    # This option is not active
2424
    # The parent CYGPKG_IO_SERIAL_TTY_TTY1 is disabled
2425
 
2426
    # Flavor: data
2427
    # No user value, uncomment the following line to provide one.
2428
    # user_value "\"/dev/ser1\""
2429
    # value_source default
2430
    # Default value: "\"/dev/ser1\""
2431
};
2432
 
2433
# <
2434
# TTY mode channel #2
2435
# This option causes '/dev/tty2' to be included in the standard
2436
# drivers.
2437
#
2438
cdl_component CYGPKG_IO_SERIAL_TTY_TTY2 {
2439
    # Flavor: bool
2440
    # No user value, uncomment the following line to provide one.
2441
    # user_value 0
2442
    # value_source default
2443
    # Default value: 0
2444
};
2445
 
2446
# >
2447
# TTY mode channel #2 device
2448
# This option selects the physical device to use for
2449
# '/dev/tty2'.
2450
#
2451
cdl_option CYGDAT_IO_SERIAL_TTY_TTY2_DEV {
2452
    # This option is not active
2453
    # The parent CYGPKG_IO_SERIAL_TTY_TTY2 is disabled
2454
 
2455
    # Flavor: data
2456
    # No user value, uncomment the following line to provide one.
2457
    # user_value "\"/dev/ser2\""
2458
    # value_source default
2459
    # Default value: "\"/dev/ser2\""
2460
};
2461
 
2462
# <
2463
# <
2464
# Termios compatible TTY drivers
2465
# This option enables terminal drivers compatible with
2466
# POSIX termios.
2467
#
2468
cdl_component CYGPKG_IO_SERIAL_TERMIOS {
2469
    # Flavor: bool
2470
    # No user value, uncomment the following line to provide one.
2471
    # user_value 0
2472
    # value_source default
2473
    # Default value:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO
2474
    #     CYGPKG_ISOINFRA == v2_0
2475
    #     CYGPKG_IO_FILEIO (unknown) == 0
2476
    #     CYGINT_ISO_ERRNO_CODES == 1
2477
    #     CYGINT_ISO_ERRNO == 1
2478
    #   --> 0
2479
    # Requires: CYGPKG_ISOINFRA
2480
    #     CYGPKG_ISOINFRA == v2_0
2481
    #   --> 1
2482
    # Requires: CYGPKG_IO_FILEIO
2483
    #     CYGPKG_IO_FILEIO (unknown) == 0
2484
    #   --> 0
2485
    # Requires: CYGINT_ISO_ERRNO_CODES
2486
    #     CYGINT_ISO_ERRNO_CODES == 1
2487
    #   --> 1
2488
    # Requires: CYGINT_ISO_ERRNO
2489
    #     CYGINT_ISO_ERRNO == 1
2490
    #   --> 1
2491
    # Requires: CYGINT_ISO_MALLOC
2492
    #     CYGINT_ISO_MALLOC == 1
2493
    #   --> 1
2494
};
2495
 
2496
# >
2497
# Interface for termios tty driver file enabling
2498
#
2499
cdl_interface CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY {
2500
    # Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0, inactive, disabled
2501
    # Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1, inactive, disabled
2502
    # Implemented by CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2, inactive, disabled
2503
    # This option is not active
2504
    # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled
2505
 
2506
    # This value cannot be modified here.
2507
    # Flavor: data
2508
    # Current_value: 0
2509
 
2510
    # The following properties are affected by this value
2511
    # option CYGBLD_IO_SERIAL_TERMIOS_TERMIOS_TTY
2512
    #     ActiveIf:  CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY > 0
2513
};
2514
 
2515
# Build termios tty driver file
2516
#
2517
cdl_option CYGBLD_IO_SERIAL_TERMIOS_TERMIOS_TTY {
2518
    # This option is not active
2519
    # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled
2520
    # ActiveIf constraint:  CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY > 0
2521
    #     CYGINT_IO_SERIAL_TERMIOS_TERMIOS_TTY == 0
2522
    #   --> 0
2523
 
2524
    # Calculated value: 1
2525
    # Flavor: bool
2526
    # Current value: 1
2527
};
2528
 
2529
# Termios TTY channel #0
2530
# This option causes '/dev/termios0' to be included in the standard
2531
# drivers.
2532
#
2533
cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 {
2534
    # This option is not active
2535
    # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled
2536
 
2537
    # Flavor: bool
2538
    # No user value, uncomment the following line to provide one.
2539
    # user_value 0
2540
    # value_source default
2541
    # Default value: 0
2542
};
2543
 
2544
# >
2545
# Termios TTY channel #0 device
2546
# This option selects the physical device to use for
2547
# '/dev/termios0'.
2548
#
2549
cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS0_DEV {
2550
    # This option is not active
2551
    # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is not active
2552
    # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is disabled
2553
 
2554
    # Flavor: data
2555
    # No user value, uncomment the following line to provide one.
2556
    # user_value "\"/dev/ser0\""
2557
    # value_source default
2558
    # Default value: "\"/dev/ser0\""
2559
};
2560
 
2561
# <
2562
# Termios TTY channel #1
2563
# This option causes '/dev/termios1' to be included in the standard
2564
# drivers.
2565
#
2566
cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 {
2567
    # This option is not active
2568
    # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled
2569
 
2570
    # Flavor: bool
2571
    # No user value, uncomment the following line to provide one.
2572
    # user_value 0
2573
    # value_source default
2574
    # Default value: 0
2575
};
2576
 
2577
# >
2578
# Termios TTY channel #1 device
2579
# This option selects the physical device to use for
2580
# '/dev/termios1'.
2581
#
2582
cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS1_DEV {
2583
    # This option is not active
2584
    # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is not active
2585
    # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is disabled
2586
 
2587
    # Flavor: data
2588
    # No user value, uncomment the following line to provide one.
2589
    # user_value "\"/dev/ser1\""
2590
    # value_source default
2591
    # Default value: "\"/dev/ser1\""
2592
};
2593
 
2594
# <
2595
# Termios TTY channel #2
2596
# This option causes '/dev/termios2' to be included in the standard
2597
# drivers.
2598
#
2599
cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 {
2600
    # This option is not active
2601
    # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled
2602
 
2603
    # Flavor: bool
2604
    # No user value, uncomment the following line to provide one.
2605
    # user_value 0
2606
    # value_source default
2607
    # Default value: 0
2608
};
2609
 
2610
# >
2611
# Termios TTY channel #2 device
2612
# This option selects the physical device to use for
2613
# '/dev/termios2'.
2614
#
2615
cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS2_DEV {
2616
    # This option is not active
2617
    # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is not active
2618
    # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is disabled
2619
 
2620
    # Flavor: data
2621
    # No user value, uncomment the following line to provide one.
2622
    # user_value "\"/dev/ser2\""
2623
    # value_source default
2624
    # Default value: "\"/dev/ser2\""
2625
};
2626
 
2627
# <
2628
# Support signals
2629
# This option selects whether those parts of the termios
2630
# interface involving signals is supported. This includes
2631
# BRKINT mode, the INTR and QUIT characters, and whether
2632
# SIGHUP is sent on terminal close.
2633
#
2634
cdl_option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS {
2635
    # This option is not active
2636
    # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled
2637
 
2638
    # Flavor: bool
2639
    # No user value, uncomment the following line to provide one.
2640
    # user_value 1
2641
    # value_source default
2642
    # Default value:  CYGINT_ISO_SIGNAL_NUMBERS != 0 &&  CYGINT_ISO_SIGNAL_IMPL != 0
2643
    #     CYGINT_ISO_SIGNAL_NUMBERS == 1
2644
    #     CYGINT_ISO_SIGNAL_IMPL == 1
2645
    #   --> 1
2646
    # Requires: CYGINT_ISO_SIGNAL_NUMBERS
2647
    #     CYGINT_ISO_SIGNAL_NUMBERS == 1
2648
    #   --> 1
2649
    # Requires: CYGINT_ISO_SIGNAL_IMPL
2650
    #     CYGINT_ISO_SIGNAL_IMPL == 1
2651
    #   --> 1
2652
};
2653
 
2654
# <
2655
# Hardware serial device drivers
2656
# This option enables the hardware device drivers
2657
# for the current platform.
2658
#
2659
cdl_component CYGPKG_IO_SERIAL_DEVICES {
2660
    # Flavor: bool
2661
    # No user value, uncomment the following line to provide one.
2662
    # user_value 0
2663
    # value_source default
2664
    # Default value: 0
2665
 
2666
    # The following properties are affected by this value
2667
    # option CYGPKG_IO_SERIAL_TESTS
2668
    #     Calculated:  CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : ""
2669
};
2670
 
2671
# Build extra serial tests
2672
# This option enables the building of some extra tests which
2673
# can be used when testing / debugging serial drivers. These
2674
# are not built by default since they do not use the dedicated
2675
# testing infrastructure.
2676
#
2677
cdl_option CYGBLD_IO_SERIAL_EXTRA_TESTS {
2678
    # Flavor: bool
2679
    # No user value, uncomment the following line to provide one.
2680
    # user_value 0
2681
    # value_source default
2682
    # Default value: 0
2683
};
2684
 
2685
# Serial device driver build options
2686
# Package specific build options including control over
2687
# compiler flags used only in building this package,
2688
# and details of which tests are built.
2689
#
2690
cdl_component CYGPKG_IO_SERIAL_OPTIONS {
2691
    # There is no associated value.
2692
};
2693
 
2694
# >
2695
# Additional compiler flags
2696
# This option modifies the set of compiler flags for
2697
# building the serial device drivers. These flags are used in addition
2698
# to the set of global flags.
2699
#
2700
cdl_option CYGPKG_IO_SERIAL_CFLAGS_ADD {
2701
    # Flavor: data
2702
    # No user value, uncomment the following line to provide one.
2703
    # user_value ""
2704
    # value_source default
2705
    # Default value: ""
2706
};
2707
 
2708
# Suppressed compiler flags
2709
# This option modifies the set of compiler flags for
2710
# building the serial device drivers. These flags are removed from
2711
# the set of global flags if present.
2712
#
2713
cdl_option CYGPKG_IO_SERIAL_CFLAGS_REMOVE {
2714
    # Flavor: data
2715
    # No user value, uncomment the following line to provide one.
2716
    # user_value ""
2717
    # value_source default
2718
    # Default value: ""
2719
};
2720
 
2721
# Serial device driver tests
2722
# This option specifies the set of tests for the serial device drivers.
2723
#
2724
cdl_option CYGPKG_IO_SERIAL_TESTS {
2725
    # Calculated value:  CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : ""
2726
    #     CYGPKG_IO_SERIAL_DEVICES == 0
2727
    # Flavor: data
2728
    # Current_value:
2729
};
2730
 
2731
# <
2732
# Enable serial device select support
2733
# This option enables support for the select() API function on all
2734
# serial devices.
2735
#
2736
cdl_option CYGPKG_IO_SERIAL_SELECT_SUPPORT {
2737
    # This option is not active
2738
    # ActiveIf constraint: CYGPKG_IO_FILEIO
2739
    #     CYGPKG_IO_FILEIO (unknown) == 0
2740
    #   --> 0
2741
 
2742
    # Flavor: bool
2743
    # No user value, uncomment the following line to provide one.
2744
    # user_value 1
2745
    # value_source default
2746
    # Default value: 1
2747
    # Requires: CYGPKG_IO_FILEIO
2748
    #     CYGPKG_IO_FILEIO (unknown) == 0
2749
    #   --> 0
2750
};
2751
 
2752
# Serial testing specification
2753
#
2754
cdl_component CYGPKG_IO_SERIAL_TEST_SPECS {
2755
    # Calculated value: 1
2756
    # Flavor: bool
2757
    # Current value: 1
2758
};
2759
 
2760
# >
2761
# Skip 9600 baud testing
2762
#
2763
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_9600 {
2764
    # No options implement this inferface
2765
    # This value cannot be modified here.
2766
    # Flavor: data
2767
    # Current_value: 0
2768
};
2769
 
2770
# Skip 14400 baud testing
2771
#
2772
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_14400 {
2773
    # No options implement this inferface
2774
    # This value cannot be modified here.
2775
    # Flavor: data
2776
    # Current_value: 0
2777
};
2778
 
2779
# Skip 19200 baud testing
2780
#
2781
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_19200 {
2782
    # No options implement this inferface
2783
    # This value cannot be modified here.
2784
    # Flavor: data
2785
    # Current_value: 0
2786
};
2787
 
2788
# Skip 38400 baud testing
2789
#
2790
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_38400 {
2791
    # No options implement this inferface
2792
    # This value cannot be modified here.
2793
    # Flavor: data
2794
    # Current_value: 0
2795
};
2796
 
2797
# Skip 57600 baud testing
2798
#
2799
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_57600 {
2800
    # No options implement this inferface
2801
    # This value cannot be modified here.
2802
    # Flavor: data
2803
    # Current_value: 0
2804
};
2805
 
2806
# Skip 115200 baud testing
2807
#
2808
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_115200 {
2809
    # No options implement this inferface
2810
    # This value cannot be modified here.
2811
    # Flavor: data
2812
    # Current_value: 0
2813
};
2814
 
2815
# Skip even-parity testing
2816
#
2817
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_EVEN {
2818
    # No options implement this inferface
2819
    # This value cannot be modified here.
2820
    # Flavor: data
2821
    # Current_value: 0
2822
};
2823
 
2824
# Skip odd-parity testing
2825
#
2826
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_ODD {
2827
    # No options implement this inferface
2828
    # This value cannot be modified here.
2829
    # Flavor: data
2830
    # Current_value: 0
2831
};
2832
 
2833
# Skip 2-stop bit testing
2834
#
2835
cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_STOP_2 {
2836
    # No options implement this inferface
2837
    # This value cannot be modified here.
2838
    # Flavor: data
2839
    # Current_value: 0
2840
};
2841
 
2842
# <
2843
# <
2844
# Infrastructure
2845
# Common types and useful macros.
2846
# Tracing and assertion facilities.
2847
# Package startup options.
2848
#
2849
cdl_package CYGPKG_INFRA {
2850
    # Packages cannot be added or removed, nor can their version be changed,
2851
    # simply by editing their value. Instead the appropriate configuration
2852
    # should be used to perform these actions.
2853
 
2854
    # This value cannot be modified here.
2855
    # Flavor: booldata
2856
    # Current value: 1 v2_0
2857
 
2858
    # The following properties are affected by this value
2859
    # package CYGPKG_HAL
2860
    #     Requires: CYGPKG_INFRA
2861
};
2862
 
2863
# >
2864
# Asserts & Tracing
2865
# The eCos source code contains a significant amount of
2866
# internal debugging support, in the form of assertions and
2867
# tracing.
2868
# Assertions check at runtime that various conditions are as
2869
# expected; if not, execution is halted.
2870
# Tracing takes the form of text messages that are output
2871
# whenever certain events occur, or whenever functions are
2872
# called or return.
2873
# The most important property of these checks and messages is
2874
# that they are not required for the program to run.
2875
# It is prudent to develop software with assertions enabled,
2876
# but disable them when making a product release, thus
2877
# removing the overhead of that checking.
2878
# It is possible to enable assertions and tracing
2879
# independently.
2880
# There are also options controlling the exact behaviour of
2881
# the assertion and tracing facilities, thus giving users
2882
# finer control over the code and data size requirements.
2883
#
2884
cdl_component CYGPKG_INFRA_DEBUG {
2885
    # Flavor: bool
2886
    # No user value, uncomment the following line to provide one.
2887
    # user_value 0
2888
    # value_source default
2889
    # Default value: 0
2890
 
2891
    # The following properties are affected by this value
2892
    # component CYGFUN_KERNEL_THREADS_STACK_CHECKING
2893
    #     ActiveIf: CYGPKG_INFRA_DEBUG
2894
    # component CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT
2895
    #     DefaultValue:  0 != CYGPKG_INFRA_DEBUG
2896
    # option CYGPKG_KERNEL_TESTS
2897
    #     Calculated:
2898
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
2899
    #                     . ((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/tm_basic tests/fptest" : "")
2900
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
2901
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
2902
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
2903
    #
2904
};
2905
 
2906
# >
2907
# Use asserts
2908
# If this option is defined, asserts in the code are tested.
2909
# Assert functions (CYG_ASSERT()) are defined in
2910
# 'include/cyg/infra/cyg_ass.h' within the 'install' tree.
2911
# If it is not defined, these result in no additional
2912
# object code and no checking of the asserted conditions.
2913
#
2914
cdl_component CYGDBG_USE_ASSERTS {
2915
    # This option is not active
2916
    # The parent CYGPKG_INFRA_DEBUG is disabled
2917
 
2918
    # Flavor: bool
2919
    # No user value, uncomment the following line to provide one.
2920
    # user_value 1
2921
    # value_source default
2922
    # Default value: 1
2923
    # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL
2924
    #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0
2925
    #   --> 0
2926
 
2927
    # The following properties are affected by this value
2928
    # component CYGFUN_KERNEL_THREADS_STACK_CHECKING
2929
    #     ActiveIf: CYGDBG_USE_ASSERTS
2930
    # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG
2931
    #     Requires: CYGDBG_USE_ASSERTS
2932
    # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG
2933
    #     DefaultValue:  0 != CYGDBG_USE_ASSERTS
2934
    # option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL
2935
    #     Requires: CYGDBG_USE_ASSERTS
2936
};
2937
 
2938
# >
2939
# Preconditions
2940
# This option allows individual control of preconditions.
2941
# A precondition is one type of assert, which it is
2942
# useful to control separately from more general asserts.
2943
# The function is CYG_PRECONDITION(condition,msg).
2944
#
2945
cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS {
2946
    # This option is not active
2947
    # The parent CYGDBG_USE_ASSERTS is not active
2948
 
2949
    # Flavor: bool
2950
    # No user value, uncomment the following line to provide one.
2951
    # user_value 1
2952
    # value_source default
2953
    # Default value: 1
2954
};
2955
 
2956
# Postconditions
2957
# This option allows individual control of postconditions.
2958
# A postcondition is one type of assert, which it is
2959
# useful to control separately from more general asserts.
2960
# The function is CYG_POSTCONDITION(condition,msg).
2961
#
2962
cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS {
2963
    # This option is not active
2964
    # The parent CYGDBG_USE_ASSERTS is not active
2965
 
2966
    # Flavor: bool
2967
    # No user value, uncomment the following line to provide one.
2968
    # user_value 1
2969
    # value_source default
2970
    # Default value: 1
2971
};
2972
 
2973
# Loop invariants
2974
# This option allows individual control of loop invariants.
2975
# A loop invariant is one type of assert, which it is
2976
# useful to control separately from more general asserts,
2977
# particularly since a loop invariant is typically evaluated
2978
# a great many times when used correctly.
2979
# The function is CYG_LOOP_INVARIANT(condition,msg).
2980
#
2981
cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS {
2982
    # This option is not active
2983
    # The parent CYGDBG_USE_ASSERTS is not active
2984
 
2985
    # Flavor: bool
2986
    # No user value, uncomment the following line to provide one.
2987
    # user_value 1
2988
    # value_source default
2989
    # Default value: 1
2990
};
2991
 
2992
# Use assert text
2993
# All assertions within eCos contain a text message
2994
# which should give some information about the condition
2995
# being tested.
2996
# These text messages will end up being embedded in the
2997
# application image and hence there is a significant penalty
2998
# in terms of image size.
2999
# It is possible to suppress the use of these messages by
3000
# disabling this option.
3001
# This results in smaller code size, but there is less
3002
# human-readable information if an assertion actually gets
3003
# triggered.
3004
#
3005
cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE {
3006
    # This option is not active
3007
    # The parent CYGDBG_USE_ASSERTS is not active
3008
 
3009
    # Flavor: bool
3010
    # No user value, uncomment the following line to provide one.
3011
    # user_value 1
3012
    # value_source default
3013
    # Default value: 1
3014
};
3015
 
3016
# <
3017
# Use tracing
3018
# If this option is defined, tracing operations
3019
# result in output or logging, depending on other options.
3020
# This may have adverse effects on performance, if the time
3021
# taken to output message overwhelms the available CPU
3022
# power or output bandwidth.
3023
# Trace functions (CYG_TRACE()) are defined in
3024
# 'include/cyg/infra/cyg_trac.h' within the 'install' tree.
3025
# If it is not defined, these result in no additional
3026
# object code and no trace information.
3027
#
3028
cdl_component CYGDBG_USE_TRACING {
3029
    # This option is not active
3030
    # The parent CYGPKG_INFRA_DEBUG is disabled
3031
 
3032
    # Flavor: bool
3033
    # No user value, uncomment the following line to provide one.
3034
    # user_value 0
3035
    # value_source default
3036
    # Default value: 0
3037
    # Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL
3038
    #     CYGINT_INFRA_DEBUG_TRACE_IMPL == 0
3039
    #   --> 0
3040
 
3041
    # The following properties are affected by this value
3042
    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE
3043
    #     ActiveIf: CYGDBG_USE_TRACING
3044
    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP
3045
    #     ActiveIf: CYGDBG_USE_TRACING
3046
    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT
3047
    #     ActiveIf: CYGDBG_USE_TRACING
3048
    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT
3049
    #     ActiveIf: CYGDBG_USE_TRACING
3050
    # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT
3051
    #     ActiveIf: CYGDBG_USE_TRACING
3052
    # option CYGDBG_KERNEL_TRACE_TIMESLICE
3053
    #     ActiveIf: CYGDBG_USE_TRACING
3054
    # component CYGPKG_LIBM_TRACE
3055
    #     Requires: CYGDBG_USE_TRACING
3056
};
3057
 
3058
# >
3059
# Trace function reports
3060
# This option allows individual control of
3061
# function entry/exit tracing, independent of
3062
# more general tracing output.
3063
# This may be useful to remove clutter from a
3064
# trace log.
3065
#
3066
cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS {
3067
    # This option is not active
3068
    # The parent CYGDBG_USE_TRACING is not active
3069
    # The parent CYGDBG_USE_TRACING is disabled
3070
 
3071
    # Flavor: bool
3072
    # No user value, uncomment the following line to provide one.
3073
    # user_value 1
3074
    # value_source default
3075
    # Default value: 1
3076
};
3077
 
3078
# Use trace text
3079
# All trace calls within eCos contain a text message
3080
# which should give some information about the circumstances.
3081
# These text messages will end up being embedded in the
3082
# application image and hence there is a significant penalty
3083
# in terms of image size.
3084
# It is possible to suppress the use of these messages by
3085
# disabling this option.
3086
# This results in smaller code size, but there is less
3087
# human-readable information available in the trace output,
3088
# possibly only filenames and line numbers.
3089
#
3090
cdl_option CYGDBG_INFRA_DEBUG_TRACE_MESSAGE {
3091
    # This option is not active
3092
    # The parent CYGDBG_USE_TRACING is not active
3093
    # The parent CYGDBG_USE_TRACING is disabled
3094
 
3095
    # Flavor: bool
3096
    # No user value, uncomment the following line to provide one.
3097
    # user_value 1
3098
    # value_source default
3099
    # Default value: 1
3100
};
3101
 
3102
# <
3103
# Trace output implementations
3104
#
3105
cdl_interface CYGINT_INFRA_DEBUG_TRACE_IMPL {
3106
    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL, inactive, disabled
3107
    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE, inactive, disabled
3108
    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY, inactive, disabled
3109
    # Implemented by CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER, inactive, enabled
3110
    # This option is not active
3111
    # The parent CYGPKG_INFRA_DEBUG is disabled
3112
 
3113
    # This value cannot be modified here.
3114
    # Flavor: data
3115
    # Current_value: 0
3116
 
3117
    # The following properties are affected by this value
3118
    # component CYGDBG_USE_ASSERTS
3119
    #     Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL
3120
    # component CYGDBG_USE_TRACING
3121
    #     Requires:  1 == CYGINT_INFRA_DEBUG_TRACE_IMPL
3122
};
3123
 
3124
# Null output
3125
# A null output module which is useful when
3126
# debugging interactively; the output routines
3127
# can be breakpointed rather than have them actually
3128
# 'print' something.
3129
#
3130
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL {
3131
    # This option is not active
3132
    # The parent CYGPKG_INFRA_DEBUG is disabled
3133
 
3134
    # Flavor: bool
3135
    # No user value, uncomment the following line to provide one.
3136
    # user_value 0
3137
    # value_source default
3138
    # Default value: 0
3139
};
3140
 
3141
# Simple output
3142
# An output module which produces simple output
3143
# from tracing and assertion events.
3144
#
3145
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE {
3146
    # This option is not active
3147
    # The parent CYGPKG_INFRA_DEBUG is disabled
3148
 
3149
    # Flavor: bool
3150
    # No user value, uncomment the following line to provide one.
3151
    # user_value 0
3152
    # value_source default
3153
    # Default value: 0
3154
 
3155
    # The following properties are affected by this value
3156
    # option CYGDBG_KERNEL_TRACE_TIMESLICE
3157
    #     Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE
3158
};
3159
 
3160
# Fancy output
3161
# An output module which produces fancy output
3162
# from tracing and assertion events.
3163
#
3164
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY {
3165
    # This option is not active
3166
    # The parent CYGPKG_INFRA_DEBUG is disabled
3167
 
3168
    # Flavor: bool
3169
    # No user value, uncomment the following line to provide one.
3170
    # user_value 0
3171
    # value_source default
3172
    # Default value: 0
3173
 
3174
    # The following properties are affected by this value
3175
    # option CYGDBG_KERNEL_TRACE_TIMESLICE
3176
    #     Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY
3177
};
3178
 
3179
# Buffered tracing
3180
# An output module which buffers output
3181
# from tracing and assertion events. The stored
3182
# messages are output when an assert fires, or
3183
# CYG_TRACE_PRINT() (defined in )
3184
# is called.
3185
# Of course, there will only be stored messages
3186
# if tracing per se (CYGDBG_USE_TRACING)
3187
# is enabled above.
3188
#
3189
cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER {
3190
    # This option is not active
3191
    # The parent CYGPKG_INFRA_DEBUG is disabled
3192
 
3193
    # Flavor: bool
3194
    # No user value, uncomment the following line to provide one.
3195
    # user_value 1
3196
    # value_source default
3197
    # Default value: 1
3198
};
3199
 
3200
# >
3201
# Trace buffer size
3202
# The size of the trace buffer. This counts the number
3203
# of trace records stored. When the buffer fills it
3204
# either wraps, stops recording, or generates output.
3205
#
3206
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE {
3207
    # This option is not active
3208
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
3209
    # ActiveIf constraint: CYGDBG_USE_TRACING
3210
    #     CYGDBG_USE_TRACING == 0
3211
    #   --> 0
3212
 
3213
    # Flavor: data
3214
    # No user value, uncomment the following line to provide one.
3215
    # user_value 32
3216
    # value_source default
3217
    # Default value: 32
3218
    # Legal values: 5 to 65535
3219
};
3220
 
3221
# Wrap trace buffer when full
3222
# When the trace buffer has filled with records it
3223
# starts again at the beginning. Hence only the last
3224
# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will
3225
# be recorded.
3226
#
3227
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP {
3228
    # This option is not active
3229
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
3230
    # ActiveIf constraint: CYGDBG_USE_TRACING
3231
    #     CYGDBG_USE_TRACING == 0
3232
    #   --> 0
3233
 
3234
    # Flavor: bool
3235
    # No user value, uncomment the following line to provide one.
3236
    # user_value 1
3237
    # value_source default
3238
    # Default value: 1
3239
};
3240
 
3241
# Halt trace buffer when full
3242
# When the trace buffer has filled with records it
3243
# stops recording. Hence only the first
3244
# CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will
3245
# be recorded.
3246
#
3247
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT {
3248
    # This option is not active
3249
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
3250
    # ActiveIf constraint: CYGDBG_USE_TRACING
3251
    #     CYGDBG_USE_TRACING == 0
3252
    #   --> 0
3253
 
3254
    # Flavor: bool
3255
    # No user value, uncomment the following line to provide one.
3256
    # user_value 0
3257
    # value_source default
3258
    # Default value: 0
3259
};
3260
 
3261
# Print trace buffer when full
3262
# When the trace buffer has filled with records it
3263
# prints the contents of the buffer. The buffer is then
3264
# emptied and the system continues.
3265
#
3266
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT {
3267
    # This option is not active
3268
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
3269
    # ActiveIf constraint: CYGDBG_USE_TRACING
3270
    #     CYGDBG_USE_TRACING == 0
3271
    #   --> 0
3272
 
3273
    # Flavor: bool
3274
    # No user value, uncomment the following line to provide one.
3275
    # user_value 0
3276
    # value_source default
3277
    # Default value: 0
3278
};
3279
 
3280
# Print trace buffer on assert fail
3281
# When an assertion fails the trace buffer will be
3282
# printed to the default diagnostic device.
3283
#
3284
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT {
3285
    # This option is not active
3286
    # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active
3287
    # ActiveIf constraint: CYGDBG_USE_TRACING
3288
    #     CYGDBG_USE_TRACING == 0
3289
    #   --> 0
3290
 
3291
    # Flavor: bool
3292
    # No user value, uncomment the following line to provide one.
3293
    # user_value 1
3294
    # value_source default
3295
    # Default value: 1
3296
};
3297
 
3298
# <
3299
# Use function names
3300
# All trace and assert calls within eCos contain a
3301
# reference to the builtin macro '__PRETTY_FUNCTION__',
3302
# which evaluates to a string containing
3303
# the name of the current function.
3304
# This is useful when reading a trace log.
3305
# It is possible to suppress the use of the function name
3306
# by disabling this option.
3307
# This results in smaller code size, but there is less
3308
# human-readable information available in the trace output,
3309
# possibly only filenames and line numbers.
3310
#
3311
cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO {
3312
    # This option is not active
3313
    # The parent CYGPKG_INFRA_DEBUG is disabled
3314
 
3315
    # Flavor: bool
3316
    # No user value, uncomment the following line to provide one.
3317
    # user_value 1
3318
    # value_source default
3319
    # Default value: 1
3320
};
3321
 
3322
# <
3323
# Startup options
3324
# Some packages require a startup routine to be called.
3325
# This can be carried out by application code, by supplying
3326
# a routine called cyg_package_start() which calls the
3327
# appropriate package startup routine(s).
3328
# Alternatively, this routine can be constructed automatically
3329
# and configured to call the startup routines of your choice.
3330
#
3331
cdl_component CYGPKG_INFRA_STARTUP {
3332
    # There is no associated value.
3333
};
3334
 
3335
# >
3336
# Start uITRON subsystem
3337
# Generate a call to initialize the
3338
# uITRON compatibility subsystem
3339
# within the system version of cyg_package_start().
3340
# This enables compatibility with uITRON.
3341
# You must configure uITRON with the correct tasks before
3342
# starting the uItron subsystem.
3343
# If this is disabled, and you want to use uITRON,
3344
# you must call cyg_uitron_start() from your own
3345
# cyg_package_start() or cyg_userstart().
3346
#
3347
cdl_option CYGSEM_START_UITRON_COMPATIBILITY {
3348
    # This option is not active
3349
    # ActiveIf constraint: CYGPKG_UITRON
3350
    #     CYGPKG_UITRON (unknown) == 0
3351
    #   --> 0
3352
 
3353
    # Flavor: bool
3354
    # No user value, uncomment the following line to provide one.
3355
    # user_value 0
3356
    # value_source default
3357
    # Default value: 0
3358
    # Requires: CYGPKG_UITRON
3359
    #     CYGPKG_UITRON (unknown) == 0
3360
    #   --> 0
3361
};
3362
 
3363
# <
3364
# Smaller slower memcpy()
3365
# Enabling this option causes the implementation of
3366
# the standard memcpy() routine to reduce code
3367
# size at the expense of execution speed. This
3368
# option is automatically enabled with the use of
3369
# the -Os option to the compiler. Also note that
3370
# the compiler will try to use its own builtin
3371
# version of memcpy() if possible, ignoring the
3372
# implementation in this package, unless given
3373
# the -fno-builtin compiler option.
3374
#
3375
cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY {
3376
    # Flavor: bool
3377
    # No user value, uncomment the following line to provide one.
3378
    # user_value 0
3379
    # value_source default
3380
    # Default value: 0
3381
};
3382
 
3383
# Smaller slower memset()
3384
# Enabling this option causes the implementation of
3385
# the standard memset() routine to reduce code
3386
# size at the expense of execution speed. This
3387
# option is automatically enabled with the use of
3388
# the -Os option to the compiler. Also note that
3389
# the compiler will try to use its own builtin
3390
# version of memset() if possible, ignoring the
3391
# implementation in this package, unless given
3392
# the -fno-builtin compiler option.
3393
#
3394
cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMSET {
3395
    # Flavor: bool
3396
    # No user value, uncomment the following line to provide one.
3397
    # user_value 0
3398
    # value_source default
3399
    # Default value: 0
3400
};
3401
 
3402
# Provide empty C++ delete functions
3403
# To deal with virtual destructors, where the correct delete()
3404
# function must be called for the derived class in question, the
3405
# underlying delete is called when needed, from destructors.  This
3406
# is regardless of whether the destructor is called by delete itself.
3407
# So there is a reference to delete() from all destructors.  The
3408
# default builtin delete() attempts to call free() if there is
3409
# one defined.  So, if you have destructors, and you have free(),
3410
# as in malloc() and free(), any destructor counts as a reference
3411
# to free().  So the dynamic memory allocation code is linked
3412
# in regardless of whether it gets explicitly called. This
3413
# increases code and data size needlessly.
3414
# To defeat this undesirable behaviour, we define empty versions
3415
# of delete and delete.  But doing this prevents proper use
3416
# of dynamic memory in C++ programs via C++'s new and delete
3417
# operators.
3418
# Therefore, this option is provided
3419
# for explicitly disabling the provision of these empty functions,
3420
# so that new and delete can be used, if that is what is required.
3421
#
3422
cdl_option CYGFUN_INFRA_EMPTY_DELETE_FUNCTIONS {
3423
    # Flavor: bool
3424
    # No user value, uncomment the following line to provide one.
3425
    # user_value 1
3426
    # value_source default
3427
    # Default value: 1
3428
};
3429
 
3430
# Provide dummy abort() function
3431
# This option controls the inclusion of a dummy abort() function.
3432
# Parts of the C and C++ compiler runtime systems contain references
3433
# to abort(), particulary in the C++ exception handling code. It is
3434
# not possible to eliminate these references, so this dummy function
3435
# in included to satisfy them. It is not expected that this function
3436
# will ever be called, so its current behaviour is to simply loop.
3437
#
3438
cdl_option CYGFUN_INFRA_DUMMY_ABORT {
3439
    # Flavor: bool
3440
    # No user value, uncomment the following line to provide one.
3441
    # user_value 0
3442
    # value_source default
3443
    # Default value:  CYGINT_ISO_EXIT == 0
3444
    #     CYGINT_ISO_EXIT == 1
3445
    #   --> 0
3446
    # Requires: !CYGINT_ISO_EXIT
3447
    #     CYGINT_ISO_EXIT == 1
3448
    #   --> 0
3449
};
3450
 
3451
# Provide dummy strlen() function
3452
# This option controls the inclusion of a dummy strlen() function.
3453
# Parts of the C and C++ compiler runtime systems contain references
3454
# to strlen(), particulary in the C++ exception handling code. It is
3455
# not possible to eliminate these references, so this dummy function
3456
# in included to satisfy them. While it is not expected that this function
3457
# will ever be called, it is functional but uses the simplest, smallest
3458
# algorithm. There is a faster version of strlen() in the C library.
3459
#
3460
cdl_option CYGFUN_INFRA_DUMMY_STRLEN {
3461
    # Flavor: bool
3462
    # No user value, uncomment the following line to provide one.
3463
    # user_value 0
3464
    # value_source default
3465
    # Default value:  CYGINT_ISO_STRING_STRFUNCS == 0
3466
    #     CYGINT_ISO_STRING_STRFUNCS == 1
3467
    #   --> 0
3468
    # Requires: !CYGINT_ISO_STRING_STRFUNCS
3469
    #     CYGINT_ISO_STRING_STRFUNCS == 1
3470
    #   --> 0
3471
};
3472
 
3473
# Make all compiler warnings show as errors
3474
# Enabling this option will cause all compiler warnings to show
3475
# as errors and bring the library build to a halt. This is used
3476
# to ensure that the code base is warning free, and thus ensure
3477
# that newly introduced warnings stand out and get fixed before
3478
# they show up as weird run-time behavior.
3479
#
3480
cdl_option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS {
3481
    # Flavor: bool
3482
    # No user value, uncomment the following line to provide one.
3483
    # user_value 0
3484
    # value_source default
3485
    # Default value: 0
3486
    # Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror")
3487
    #     CYGBLD_GLOBAL_CFLAGS == "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority"
3488
    #   --> 0
3489
};
3490
 
3491
# Make compiler and assembler communicate by pipe
3492
# Enabling this option will cause the compiler to feed the
3493
# assembly output the the assembler via a pipe instead of
3494
# via a temporary file. This normally reduces the build
3495
# time.
3496
#
3497
cdl_option CYGBLD_INFRA_CFLAGS_PIPE {
3498
    # Flavor: bool
3499
    # No user value, uncomment the following line to provide one.
3500
    # user_value 0
3501
    # value_source default
3502
    # Default value: 0
3503
    # Requires:  is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe")
3504
    #     CYGBLD_GLOBAL_CFLAGS == "-msoft-float -Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -fno-omit-frame-pointer -fno-rtti -fno-exceptions -fvtable-gc -finit-priority"
3505
    #   --> 0
3506
};
3507
 
3508
# Infra build options
3509
# Package specific build options including control over
3510
# compiler flags used only in building this package.
3511
#
3512
cdl_component CYGPKG_INFRA_OPTIONS {
3513
    # There is no associated value.
3514
};
3515
 
3516
# >
3517
# Additional compiler flags
3518
# This option modifies the set of compiler flags for
3519
# building the eCos infra package. These flags are used
3520
# in addition to the set of global flags.
3521
#
3522
cdl_option CYGPKG_INFRA_CFLAGS_ADD {
3523
    # Flavor: data
3524
    # No user value, uncomment the following line to provide one.
3525
    # user_value ""
3526
    # value_source default
3527
    # Default value: ""
3528
};
3529
 
3530
# Suppressed compiler flags
3531
# This option modifies the set of compiler flags for
3532
# building the eCos infra package. These flags are removed from
3533
# the set of global flags if present.
3534
#
3535
cdl_option CYGPKG_INFRA_CFLAGS_REMOVE {
3536
    # Flavor: data
3537
    # No user value, uncomment the following line to provide one.
3538
    # user_value ""
3539
    # value_source default
3540
    # Default value: ""
3541
};
3542
 
3543
# Suppressed linker flags
3544
# This option modifies the set of linker flags for
3545
# building the eCos infra package tests. These flags are removed from
3546
# the set of global flags if present.
3547
#
3548
cdl_option CYGPKG_INFRA_LDFLAGS_REMOVE {
3549
    # Flavor: data
3550
    # No user value, uncomment the following line to provide one.
3551
    # user_value -Wl,--gc-sections
3552
    # value_source default
3553
    # Default value: -Wl,--gc-sections
3554
};
3555
 
3556
# Additional linker flags
3557
# This option modifies the set of linker flags for
3558
# building the eCos infra package tests. These flags are added to
3559
# the set of global flags if present.
3560
#
3561
cdl_option CYGPKG_INFRA_LDFLAGS_ADD {
3562
    # Flavor: data
3563
    # No user value, uncomment the following line to provide one.
3564
    # user_value -Wl,--fatal-warnings
3565
    # value_source default
3566
    # Default value: -Wl,--fatal-warnings
3567
};
3568
 
3569
# Infra package tests
3570
#
3571
cdl_option CYGPKG_INFRA_TESTS {
3572
    # Calculated value:  ""
3573
    # Flavor: data
3574
    # Current_value:
3575
};
3576
 
3577
# <
3578
# <
3579
# eCos kernel
3580
# doc: ref/kernel.html
3581
# This package contains the core functionality of the eCos
3582
# kernel. It relies on functionality provided by various HAL
3583
# packages and by the eCos infrastructure. In turn the eCos
3584
# kernel provides support for other packages such as the device
3585
# drivers and the uITRON compatibility layer.
3586
#
3587
cdl_package CYGPKG_KERNEL {
3588
    # Packages cannot be added or removed, nor can their version be changed,
3589
    # simply by editing their value. Instead the appropriate configuration
3590
    # should be used to perform these actions.
3591
 
3592
    # This value cannot be modified here.
3593
    # Flavor: booldata
3594
    # Current value: 1 v2_0
3595
 
3596
    # The following properties are affected by this value
3597
    # option CYGFUN_HAL_COMMON_KERNEL_SUPPORT
3598
    #     Requires: CYGPKG_KERNEL
3599
    # option CYGFUN_HAL_COMMON_KERNEL_SUPPORT
3600
    #     DefaultValue: CYGPKG_KERNEL
3601
    # option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE
3602
    #     DefaultValue:  CYGPKG_KERNEL ? 4096 : 32768
3603
    # option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE
3604
    #     ActiveIf: CYGPKG_KERNEL
3605
    # option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE
3606
    #     ActiveIf: CYGPKG_KERNEL
3607
    # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE
3608
    #     ActiveIf: CYGPKG_KERNEL
3609
    # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE
3610
    #     Requires: CYGPKG_KERNEL
3611
    # option CYGSEM_MEMALLOC_ALLOCATOR_SEPMETA_THREADAWARE
3612
    #     ActiveIf: CYGPKG_KERNEL
3613
    # option CYGFUN_MEMALLOC_KAPI
3614
    #     ActiveIf: CYGPKG_KERNEL
3615
    # option CYGSEM_LIBC_SIGNALS_THREAD_SAFE
3616
    #     Requires: CYGPKG_KERNEL
3617
    # option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT
3618
    #     DefaultValue:  0 == CYGPKG_KERNEL && 0 ==
3619
    #                                 CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
3620
    # component CYGSEM_LIBC_STARTUP_MAIN_THREAD
3621
    #     Requires: CYGPKG_KERNEL
3622
    # component CYGSEM_LIBC_STARTUP_MAIN_THREAD
3623
    #     DefaultValue:  0 != CYGPKG_KERNEL && 0 ==  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
3624
    # option CYGSEM_LIBC_EXIT_STOPS_SYSTEM
3625
    #     Requires: CYGPKG_KERNEL
3626
    # option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS
3627
    #     Requires: CYGPKG_KERNEL
3628
    # option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS
3629
    #     DefaultValue:  0 != CYGPKG_KERNEL
3630
    # option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK
3631
    #     ActiveIf: CYGPKG_KERNEL
3632
    # option CYGPKG_WALLCLOCK_EMULATE
3633
    #     Requires: CYGPKG_KERNEL
3634
    # option CYGIMP_WALLCLOCK_NONE
3635
    #     DefaultValue:  !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS
3636
    # option CYGPKG_IO_WALLCLOCK_TESTS
3637
    #     Calculated:  CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : ""
3638
};
3639
 
3640
# >
3641
# Kernel interrupt handling
3642
# doc: ref/kernel-interrupts.html
3643
# The majority of configuration options related to interrupt
3644
# handling are in the HAL packages, since usually the code has
3645
# to be platform-specific. There are a number of options
3646
# provided within the kernel related to slightly higher-level
3647
# concepts, for example Delayed Service Routines.
3648
#
3649
cdl_component CYGPKG_KERNEL_INTERRUPTS {
3650
    # There is no associated value.
3651
 
3652
    # The following properties are affected by this value
3653
    # option CYGDBG_KERNEL_INSTRUMENT_INTR
3654
    #     ActiveIf: CYGPKG_KERNEL_INTERRUPTS
3655
};
3656
 
3657
# >
3658
# Use delayed service routines (DSRs)
3659
# In eCos the recommended way to handle device interrupts is to
3660
# do a minimum amount of work inside the low level interrupt
3661
# handler itself, and instead do as much as possible in a
3662
# Delayed Service Routine or DSR. If an application does not
3663
# make use of DSRs directly or indirectly then it is possible
3664
# to disable the DSR support completely, which reduces the
3665
# overheads of context switches and interrupt handling. Note
3666
# that the kernel real-time clock makes use of DSRs, as do many
3667
# of the device drivers.
3668
#
3669
cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS {
3670
    # Flavor: bool
3671
    # No user value, uncomment the following line to provide one.
3672
    # user_value 1
3673
    # value_source default
3674
    # Default value: 1
3675
 
3676
    # The following properties are affected by this value
3677
    # option CYGVAR_KERNEL_COUNTERS_CLOCK
3678
    #     Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS
3679
};
3680
 
3681
# >
3682
#
3683
cdl_interface CYGINT_KERNEL_INTERRUPTS_DSRS {
3684
    # Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST, active, enabled
3685
    # Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE, active, disabled
3686
    # This value cannot be modified here.
3687
    # Flavor: data
3688
    # Current_value: 1
3689
    # Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS
3690
    #     CYGINT_KERNEL_INTERRUPTS_DSRS == 1
3691
    #   --> 1
3692
 
3693
    # The following properties are affected by this value
3694
    # interface CYGINT_KERNEL_INTERRUPTS_DSRS
3695
    #     Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS
3696
};
3697
 
3698
# Use linked lists for DSRs
3699
# When DSR support is enabled the kernel must keep track of all
3700
# the DSRs that are pending. This information can be kept in a
3701
# fixed-size table or in a linked list. The list implementation
3702
# requires that the kernel disable interrupts for a very short
3703
# period of time outside interrupt handlers, but there is no
3704
# possibility of a table overflow occurring.
3705
#
3706
cdl_option CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST {
3707
    # Flavor: bool
3708
    # No user value, uncomment the following line to provide one.
3709
    # user_value 1
3710
    # value_source default
3711
    # Default value: 1
3712
};
3713
 
3714
# Use fixed-size table for DSRs
3715
# When DSR support is enabled the kernel must keep track of all
3716
# the DSRs that are pending. This information can be kept in a
3717
# fixed-size table or in a linked list. The table
3718
# implementation involves a very small risk of overflow at
3719
# run-time if a given interrupt source is able to have more
3720
# than one pending DSR. However it has the advantage that
3721
# the kernel does not need to disable interrupts outside
3722
# interrupt handlers.
3723
#
3724
cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE {
3725
    # Flavor: bool
3726
    # No user value, uncomment the following line to provide one.
3727
    # user_value 0
3728
    # value_source default
3729
    # Default value: 0
3730
};
3731
 
3732
# >
3733
# Number of entries in fixed-size DSR table
3734
# When DSR support is enabled the kernel must keep track of all
3735
# the DSRs that are pending. One approach involves a fixed-size
3736
# table, which involves a very small risk of overflow at
3737
# run-time. By increasing the table size it is possible to reduce
3738
# this risk.
3739
#
3740
cdl_option CYGNUM_KERNEL_INTERRUPTS_DSRS_TABLE_SIZE {
3741
    # This option is not active
3742
    # The parent CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE is disabled
3743
 
3744
    # Flavor: data
3745
    # No user value, uncomment the following line to provide one.
3746
    # user_value 32
3747
    # value_source default
3748
    # Default value: 32
3749
    # Legal values: 2 to 1024
3750
};
3751
 
3752
# <
3753
# Chain all interrupts together
3754
# Interrupts can be attached to vectors either singly, or be
3755
# chained together. The latter is necessary if there is no way
3756
# of discovering which device has interrupted without
3757
# inspecting the device itself. It can also reduce the amount
3758
# of RAM needed for interrupt decoding tables and code.
3759
#
3760
cdl_option CYGIMP_KERNEL_INTERRUPTS_CHAIN {
3761
    # Flavor: bool
3762
    # No user value, uncomment the following line to provide one.
3763
    # user_value 0
3764
    # value_source default
3765
    # Default value: 0
3766
    # Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN
3767
    #     CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN == 0
3768
    #   --> 0
3769
};
3770
 
3771
# <
3772
# <
3773
# Exception handling
3774
# doc: ref/kernel-exceptions.html
3775
# In the context of the eCos kernel exceptions are unexpected
3776
# events detected by the hardware, for example an attempt to
3777
# execute an illegal instruction. There is no relation with
3778
# other forms of exception, for example the catch and throw
3779
# facilities of languages like C++. It is possible to disable
3780
# all support for exceptions and thus save some memory.
3781
#
3782
cdl_component CYGPKG_KERNEL_EXCEPTIONS {
3783
    # Flavor: bool
3784
    # No user value, uncomment the following line to provide one.
3785
    # user_value 1
3786
    # value_source default
3787
    # Default value: 1
3788
    # Requires: CYGPKG_HAL_EXCEPTIONS
3789
    #     CYGPKG_HAL_EXCEPTIONS == 1
3790
    #   --> 1
3791
 
3792
    # The following properties are affected by this value
3793
    # option CYGPKG_HAL_EXCEPTIONS
3794
    #     Requires: CYGPKG_KERNEL_EXCEPTIONS
3795
    # option CYGPKG_HAL_EXCEPTIONS
3796
    #     DefaultValue: CYGPKG_KERNEL_EXCEPTIONS
3797
};
3798
 
3799
# >
3800
# Decode exception types in kernel
3801
# On targets where several different types of exception are
3802
# possible, for example executing an illegal instruction and
3803
# division by zero, it is possible for the kernel to do some
3804
# decoding of the exception type and deliver the different
3805
# types of exception to different handlers in the application
3806
# code. Alternatively the kernel can simply pass all
3807
# exceptions directly to application code, leaving the
3808
# decoding to be done by the application
3809
#
3810
cdl_option CYGSEM_KERNEL_EXCEPTIONS_DECODE {
3811
    # Flavor: bool
3812
    # No user value, uncomment the following line to provide one.
3813
    # user_value 0
3814
    # value_source default
3815
    # Default value: 0
3816
 
3817
    # The following properties are affected by this value
3818
    # component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS
3819
    #     Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE
3820
};
3821
 
3822
# Use global exception handlers
3823
# In the context of the eCos kernel exceptions are
3824
# unexpected events detected by the hardware, for
3825
# example an attempt to execute an illegal
3826
# instruction. If the kernel is configured
3827
# to support exceptions then two implementations are
3828
# possible. The default implementation involves a single set
3829
# of exception handlers that are in use for the entire
3830
# system. The alternative implementation allows different
3831
# exception handlers to be specified for each thread.
3832
#
3833
cdl_option CYGSEM_KERNEL_EXCEPTIONS_GLOBAL {
3834
    # Flavor: bool
3835
    # No user value, uncomment the following line to provide one.
3836
    # user_value 1
3837
    # value_source default
3838
    # Default value: 1
3839
 
3840
    # The following properties are affected by this value
3841
    # component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS
3842
    #     Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL
3843
};
3844
 
3845
# <
3846
# Kernel schedulers
3847
# doc: ref/kernel-overview.html#KERNEL-OVERVIEW-SCHEDULERS
3848
# The eCos kernel provides a choice of schedulers. In addition
3849
# there are a number of configuration options to control the
3850
# detailed behaviour of these schedulers.
3851
#
3852
cdl_component CYGPKG_KERNEL_SCHED {
3853
    # There is no associated value.
3854
 
3855
    # The following properties are affected by this value
3856
    # option CYGDBG_KERNEL_INSTRUMENT_SCHED
3857
    #     ActiveIf: CYGPKG_KERNEL_SCHED
3858
};
3859
 
3860
# >
3861
# Number of schedulers in this configuration
3862
#
3863
cdl_interface CYGINT_KERNEL_SCHEDULER {
3864
    # Implemented by CYGSEM_KERNEL_SCHED_MLQUEUE, active, enabled
3865
    # Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled
3866
    # This value cannot be modified here.
3867
    # Flavor: data
3868
    # Current_value: 1
3869
    # Requires: 1 == CYGINT_KERNEL_SCHEDULER
3870
    #     CYGINT_KERNEL_SCHEDULER == 1
3871
    #   --> 1
3872
 
3873
    # The following properties are affected by this value
3874
    # interface CYGINT_KERNEL_SCHEDULER
3875
    #     Requires: 1 == CYGINT_KERNEL_SCHEDULER
3876
};
3877
 
3878
# Non-zero if the active schedule only has unique priorities
3879
# Not all schedulers allow mutiple threads to use the same
3880
# priority. That property is signalled via this option, allowing
3881
# scheduler and tests to behave accordingly.
3882
#
3883
cdl_interface CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES {
3884
    # Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled
3885
    # This value cannot be modified here.
3886
    # Flavor: data
3887
    # Current_value: 0
3888
 
3889
    # The following properties are affected by this value
3890
    # component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL
3891
    #     Requires:  CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0
3892
};
3893
 
3894
# Multi-level queue scheduler
3895
# The multi-level queue scheduler supports multiple priority
3896
# levels and multiple threads at each priority level.
3897
# Preemption between priority levels is automatic. Timeslicing
3898
# within a given priority level is controlled by a separate
3899
# configuration option.
3900
#
3901
cdl_component CYGSEM_KERNEL_SCHED_MLQUEUE {
3902
    # Flavor: bool
3903
    # No user value, uncomment the following line to provide one.
3904
    # user_value 1
3905
    # value_source default
3906
    # Default value: 1
3907
 
3908
    # The following properties are affected by this value
3909
    # option CYGPRI_KERNEL_SCHED_IMPL_HXX
3910
    #     Calculated:   CYGSEM_KERNEL_SCHED_BITMAP  ? ""  : CYGSEM_KERNEL_SCHED_MLQUEUE ? "" : CYGSEM_KERNEL_SCHED_LOTTERY ? "" : "!!!-- Configuration broken - no scheduler selected --!!!"
3911
    # component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL
3912
    #     ActiveIf:  CYGSEM_KERNEL_SCHED_MLQUEUE
3913
};
3914
 
3915
# >
3916
# Output timeslices when tracing
3917
# When tracing is enabled, output trace messages every
3918
# timeslice. This can be quite verbose so is disabled by
3919
# default.
3920
#
3921
cdl_option CYGDBG_KERNEL_TRACE_TIMESLICE {
3922
    # This option is not active
3923
    # ActiveIf constraint: CYGDBG_USE_TRACING
3924
    #     CYGDBG_USE_TRACING == 0
3925
    #   --> 0
3926
 
3927
    # Flavor: bool
3928
    # No user value, uncomment the following line to provide one.
3929
    # user_value 0
3930
    # value_source default
3931
    # Default value: 0
3932
    # Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE
3933
    #     CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE == 0
3934
    #   --> 1
3935
    # Requires: !CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY
3936
    #     CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY == 0
3937
    #   --> 1
3938
};
3939
 
3940
# <
3941
# Bitmap scheduler
3942
# The bitmap scheduler supports multiple priority levels but
3943
# only one thread can exist at each priority level. This means
3944
# that scheduling decisions are very simple and hence the
3945
# scheduler is efficient. Preemption between priority levels is
3946
# automatic. Timeslicing within a given priority level is
3947
# irrelevant since there can be only one thread at each
3948
# priority level.
3949
#
3950
cdl_option CYGSEM_KERNEL_SCHED_BITMAP {
3951
    # Flavor: bool
3952
    # No user value, uncomment the following line to provide one.
3953
    # user_value 0
3954
    # value_source default
3955
    # Default value: 0
3956
    # Requires: !CYGPKG_KERNEL_SMP_SUPPORT
3957
    #     CYGPKG_KERNEL_SMP_SUPPORT == 0
3958
    #   --> 1
3959
 
3960
    # The following properties are affected by this value
3961
    # option CYGPRI_KERNEL_SCHED_IMPL_HXX
3962
    #     Calculated:   CYGSEM_KERNEL_SCHED_BITMAP  ? ""  : CYGSEM_KERNEL_SCHED_MLQUEUE ? "" : CYGSEM_KERNEL_SCHED_LOTTERY ? "" : "!!!-- Configuration broken - no scheduler selected --!!!"
3963
    # component CYGSEM_KERNEL_SCHED_TIMESLICE
3964
    #     Requires: !CYGSEM_KERNEL_SCHED_BITMAP
3965
};
3966
 
3967
# Scheduler header file
3968
# This option sets a preprocessor symbol which names the header
3969
# file for the selected scheduler.  It is used internally by the
3970
# common scheduler code to include the correct header file.
3971
#
3972
cdl_option CYGPRI_KERNEL_SCHED_IMPL_HXX {
3973
    # Calculated value:   CYGSEM_KERNEL_SCHED_BITMAP  ? ""  : CYGSEM_KERNEL_SCHED_MLQUEUE ? "" : CYGSEM_KERNEL_SCHED_LOTTERY ? "" : "!!!-- Configuration broken - no scheduler selected --!!!"
3974
    #     CYGSEM_KERNEL_SCHED_BITMAP == 0
3975
    #     CYGSEM_KERNEL_SCHED_MLQUEUE == 1
3976
    #     CYGSEM_KERNEL_SCHED_LOTTERY (unknown) == 0
3977
    # Flavor: data
3978
    # Current_value: 
3979
};
3980
 
3981
# Number of priority levels
3982
# This option controls the number of priority levels that are
3983
# available. For some types of scheduler including the bitmap
3984
# scheduler this may impose an upper bound on the number of
3985
# threads in the system. For other schedulers such as the
3986
# mlqueue scheduler the number of threads is independent from
3987
# the number of priority levels. Note that the lowest priority
3988
# level is normally used only by the idle thread, although
3989
# application threads can run at this priority if necessary.
3990
#
3991
cdl_component CYGNUM_KERNEL_SCHED_PRIORITIES {
3992
    # Flavor: data
3993
    # No user value, uncomment the following line to provide one.
3994
    # user_value 32
3995
    # value_source default
3996
    # Default value: 32
3997
    # Legal values: 1 to 32
3998
 
3999
    # The following properties are affected by this value
4000
    # option CYGIMP_IDLE_THREAD_YIELD
4001
    #     ActiveIf: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1)
4002
    # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY
4003
    #     LegalValues: 0 to  CYGNUM_KERNEL_SCHED_PRIORITIES - 1
4004
};
4005
 
4006
# >
4007
# Bitmap size
4008
# This option automatically defines the size of bitmap
4009
# used to track occupied priority levels.
4010
#
4011
cdl_option CYGNUM_KERNEL_SCHED_BITMAP_SIZE {
4012
    # Calculated value: "CYGNUM_KERNEL_SCHED_PRIORITIES"
4013
    # Flavor: data
4014
    # Current_value: CYGNUM_KERNEL_SCHED_PRIORITIES
4015
};
4016
 
4017
# Dequeue oldest threads first
4018
# With this option enabled, threads queued in a thread queue
4019
# will be dequeued in priority order, rather than last in,
4020
# first out (LIFO). Threads of equal priority are dequeued
4021
# oldest first. The only exception is the scheduler run
4022
# queues where order is less important as each is already
4023
# sorted by priority. Note that this makes the thread queueing
4024
# less deterministic.
4025
#
4026
cdl_option CYGIMP_KERNEL_SCHED_SORTED_QUEUES {
4027
    # Flavor: bool
4028
    # No user value, uncomment the following line to provide one.
4029
    # user_value 0
4030
    # value_source default
4031
    # Default value: 0
4032
};
4033
 
4034
# <
4035
# Scheduler timeslicing
4036
# Some schedulers including the mlqueue scheduler support
4037
# timeslicing. This means that the kernel will check regularly
4038
# whether or not there is another runnable thread with the
4039
# same priority, and if there is such a thread there will be
4040
# an automatic context switch. Not all applications require
4041
# timeslicing, for example because every thread performs a
4042
# blocking operation regularly. For these applications it is
4043
# possible to disable timeslicing, which reduces the overheads
4044
# associated with timer interrupts.
4045
#
4046
cdl_component CYGSEM_KERNEL_SCHED_TIMESLICE {
4047
    # Flavor: bool
4048
    # No user value, uncomment the following line to provide one.
4049
    # user_value 1
4050
    # value_source default
4051
    # Default value: 1
4052
    # Requires: !CYGSEM_KERNEL_SCHED_BITMAP
4053
    #     CYGSEM_KERNEL_SCHED_BITMAP == 0
4054
    #   --> 1
4055
    # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4056
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
4057
    #   --> 1
4058
};
4059
 
4060
# >
4061
# Number of clock ticks between timeslices
4062
# Assuming timeslicing is enabled, how frequently should it
4063
# take place? The value of this option corresponds to the
4064
# number of clock ticks that should occur before a timeslice
4065
# takes place, so increasing the value reduces the frequency
4066
# of timeslices.
4067
#
4068
cdl_option CYGNUM_KERNEL_SCHED_TIMESLICE_TICKS {
4069
    # Flavor: data
4070
    # No user value, uncomment the following line to provide one.
4071
    # user_value 5
4072
    # value_source default
4073
    # Default value: 5
4074
    # Legal values: 1 to 65535
4075
};
4076
 
4077
# Support runtime enable of timeslice per-thread
4078
# This option makes timslicing a per-thread runtime
4079
# option. When enabled, threads may have timeslicing
4080
# turned on or off dynamically. This is generally used
4081
# by higher level APIs (such as POSIX) to implement
4082
# differing scheduling policies.
4083
#
4084
cdl_option CYGSEM_KERNEL_SCHED_TIMESLICE_ENABLE {
4085
    # Flavor: bool
4086
    # No user value, uncomment the following line to provide one.
4087
    # user_value 0
4088
    # value_source default
4089
    # Default value: false
4090
    #     false (unknown) == 0
4091
    #   --> 0
4092
};
4093
 
4094
# <
4095
# Enable ASR support
4096
# This component controls support for Asynchronous Service
4097
# Routines (ASRs). This is a function that may be called
4098
# from the scheduler when it has just exited the scheduler
4099
# lock. This is primarily for use by API compatibility layers.
4100
#
4101
cdl_component CYGSEM_KERNEL_SCHED_ASR_SUPPORT {
4102
    # Flavor: bool
4103
    # No user value, uncomment the following line to provide one.
4104
    # user_value 0
4105
    # value_source default
4106
    # Default value: false
4107
    #     false (unknown) == 0
4108
    #   --> 0
4109
};
4110
 
4111
# >
4112
# Make ASR function global
4113
# This option controls whether the ASR function is shared by
4114
# all threads, or whether each thread may have its own ASR
4115
# function.
4116
#
4117
cdl_option CYGSEM_KERNEL_SCHED_ASR_GLOBAL {
4118
    # This option is not active
4119
    # The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled
4120
 
4121
    # Flavor: bool
4122
    # No user value, uncomment the following line to provide one.
4123
    # user_value 0
4124
    # value_source default
4125
    # Default value: true
4126
    #     true (unknown) == 0
4127
    #   --> 0
4128
};
4129
 
4130
# Make ASR data global
4131
# This option controls whether the ASR data is shared by
4132
# all threads, or whether each thread may have its own ASR
4133
# data. This is independent of the previous option because
4134
# it may be useful to pass per-thread data to a shared ASR
4135
# function.
4136
#
4137
cdl_option CYGSEM_KERNEL_SCHED_ASR_DATA_GLOBAL {
4138
    # This option is not active
4139
    # The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled
4140
 
4141
    # Flavor: bool
4142
    # No user value, uncomment the following line to provide one.
4143
    # user_value 0
4144
    # value_source default
4145
    # Default value: true
4146
    #     true (unknown) == 0
4147
    #   --> 0
4148
};
4149
 
4150
# <
4151
# <
4152
# SMP support
4153
#
4154
cdl_component CYGPKG_KERNEL_SMP_SUPPORT {
4155
    # Flavor: bool
4156
    # No user value, uncomment the following line to provide one.
4157
    # user_value 0
4158
    # value_source default
4159
    # Default value: 0
4160
    # Requires: CYGPKG_HAL_SMP_SUPPORT
4161
    #     CYGPKG_HAL_SMP_SUPPORT (unknown) == 0
4162
    #   --> 0
4163
 
4164
    # The following properties are affected by this value
4165
    # option CYGSEM_KERNEL_SCHED_BITMAP
4166
    #     Requires: !CYGPKG_KERNEL_SMP_SUPPORT
4167
    # option CYGPKG_KERNEL_TESTS
4168
    #     Calculated:
4169
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
4170
    #                     . ((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/tm_basic tests/fptest" : "")
4171
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
4172
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
4173
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
4174
    #
4175
};
4176
 
4177
# Counters and clocks
4178
# doc: ref/kernel-counters.html
4179
# The counter objects provided by the kernel provide an
4180
# abstraction of the clock facility that is generally provided.
4181
# Application code can associate alarms with counters, where an
4182
# alarm is identified by the number of ticks until it triggers,
4183
# the action to be taken on triggering, and whether or not the
4184
# alarm should be repeated.
4185
#
4186
cdl_component CYGPKG_KERNEL_COUNTERS {
4187
    # There is no associated value.
4188
};
4189
 
4190
# >
4191
# Provide real-time clock
4192
# On all current target systems the kernel can provide a
4193
# real-time clock. This clock serves two purposes. First it is
4194
# necessary to support clock and alarm related functions.
4195
# Second it is needed to implement timeslicing in some of the
4196
# schedulers including the mlqueue scheduler. If the
4197
# application does not require any of these facilities then it
4198
# is possible to disable the real time clock support
4199
# completely.
4200
#
4201
cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK {
4202
    # Flavor: bool
4203
    # No user value, uncomment the following line to provide one.
4204
    # user_value 1
4205
    # value_source default
4206
    # Default value: 1
4207
    # Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS
4208
    #     CYGIMP_KERNEL_INTERRUPTS_DSRS == 1
4209
    #   --> 1
4210
 
4211
    # The following properties are affected by this value
4212
    # component CYGSEM_KERNEL_SCHED_TIMESLICE
4213
    #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4214
    # component CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE
4215
    #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4216
    # option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY
4217
    #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4218
    # option CYGFUN_KERNEL_THREADS_TIMER
4219
    #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4220
    # option CYGDBG_KERNEL_INSTRUMENT_CLOCK
4221
    #     ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK
4222
    # option CYGDBG_KERNEL_INSTRUMENT_ALARM
4223
    #     ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK
4224
    # option CYGDBG_KERNEL_INSTRUMENT_SMP
4225
    #     ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK
4226
    # component CYGPKG_HAL_TESTS
4227
    #     Calculated:   "tests/context tests/basic"
4228
    #                           . ((!CYGINT_HAL_TESTS_NO_CACHES) ? " tests/cache" : "")
4229
    #                           . ((CYGPKG_HAL_BUILD_COMPILER_TESTS) ? " tests/cpp1 tests/vaargs" : "")
4230
    #                           . ((!CYGVAR_KERNEL_COUNTERS_CLOCK) ?   " tests/intr" : "")
4231
    # option CYGSEM_LIBC_TIME_CLOCK_WORKING
4232
    #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4233
};
4234
 
4235
# Override default clock settings
4236
# The kernel has default settings for the clock interrupt
4237
# frequency. These settings will vary from platform to
4238
# platform, but typically there will be a 100 clock interrupts
4239
# every second. It is possible to change this frequency, but
4240
# it requires some knowledge of the target hardware.
4241
#
4242
cdl_component CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE {
4243
    # Flavor: bool
4244
    # No user value, uncomment the following line to provide one.
4245
    # user_value 0
4246
    # value_source default
4247
    # Default value: 0
4248
    # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4249
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
4250
    #   --> 1
4251
 
4252
    # The following properties are affected by this value
4253
    # option CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION
4254
    #     Calculated:  CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ?                 "{CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_NUMERATOR,     CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_DENOMINATOR}"   : "{CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR}"
4255
    # option CYGNUM_KERNEL_COUNTERS_RTC_PERIOD
4256
    #     Calculated:  CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ?                 "CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD"         : "CYGNUM_HAL_RTC_PERIOD"
4257
};
4258
 
4259
# >
4260
# Clock hardware initialization value
4261
# During system initialization this value is used to initialize
4262
# the clock hardware. The exact meaning of the value and the
4263
# range of legal values therefore depends on the target hardware,
4264
# and the hardware documentation should be consulted for further
4265
# details. In addition the clock resolution numerator and
4266
# denominator values should be updated. Typical values for
4267
# this option would be 150000 on the MN10300 stdeval1 board,
4268
# 15625 on the tx39 jmr3904 board, and 20833 on the powerpc
4269
# cogent board.
4270
#
4271
cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD {
4272
    # This option is not active
4273
    # The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled
4274
 
4275
    # Flavor: data
4276
    # No user value, uncomment the following line to provide one.
4277
    # user_value 9999
4278
    # value_source default
4279
    # Default value: 9999
4280
    # Legal values: 1 to 0x7fffffff
4281
};
4282
 
4283
# Clock resolution numerator
4284
# If a non-default clock interrupt frequency is used then it
4285
# is necessary to specify the clock resolution explicitly.
4286
# This resolution involves two separate values, the numerator
4287
# and the denominator. The result of dividing the numerator by
4288
# the denominator should correspond to the number of
4289
# nanoseconds between clock interrupts. For example a
4290
# numerator of 1000000000 and a denominator of 100 means that
4291
# there are 10000000 nanoseconds (or 10 milliseconds) between
4292
# clock interrupts. Expressing the resolution as a fraction
4293
# should minimize clock drift even for frequencies that cannot
4294
# be expressed as a simple integer. For example a frequency of
4295
# 60Hz corresponds to a clock resolution of 16666666.66...
4296
# nanoseconds. This can be expressed accurately as 1000000000
4297
# over 60.
4298
#
4299
cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_NUMERATOR {
4300
    # This option is not active
4301
    # The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled
4302
 
4303
    # Flavor: data
4304
    # No user value, uncomment the following line to provide one.
4305
    # user_value 1000000000
4306
    # value_source default
4307
    # Default value: 1000000000
4308
    # Legal values: 1 to 0x7fffffff
4309
};
4310
 
4311
# Clock resolution denominator
4312
# If a non-default clock interrupt frequency is used then it
4313
# is necessary to specify the clock resolution explicitly.
4314
# This resolution involves two separate values, the numerator
4315
# and the denominator. The result of dividing the numerator by
4316
# the denominator should correspond to the number of
4317
# nanoseconds between clock interrupts. For example a
4318
# numerator of 1000000000 and a denominator of 100 means that
4319
# there are 10000000 nanoseconds (or 10 milliseconds) between
4320
# clock interrupts. Expressing the resolution as a fraction
4321
# should minimize clock drift even for frequencies that cannot
4322
# be expressed as a simple integer. For example a frequency of
4323
# 60Hz corresponds to a clock resolution of 16666666.66...
4324
# nanoseconds. This can be expressed accurately as 1000000000
4325
# over 60.
4326
#
4327
cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_DENOMINATOR {
4328
    # This option is not active
4329
    # The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled
4330
 
4331
    # Flavor: data
4332
    # No user value, uncomment the following line to provide one.
4333
    # user_value 100
4334
    # value_source default
4335
    # Default value: 100
4336
    # Legal values: 1 to 0x7fffffff
4337
};
4338
 
4339
# <
4340
#
4341
cdl_interface CYGINT_KERNEL_COUNTERS {
4342
    # Implemented by CYGIMP_KERNEL_COUNTERS_SINGLE_LIST, active, enabled
4343
    # Implemented by CYGIMP_KERNEL_COUNTERS_MULTI_LIST, active, disabled
4344
    # This value cannot be modified here.
4345
    # Flavor: data
4346
    # Current_value: 1
4347
    # Requires: 1 == CYGINT_KERNEL_COUNTERS
4348
    #     CYGINT_KERNEL_COUNTERS == 1
4349
    #   --> 1
4350
 
4351
    # The following properties are affected by this value
4352
    # interface CYGINT_KERNEL_COUNTERS
4353
    #     Requires: 1 == CYGINT_KERNEL_COUNTERS
4354
};
4355
 
4356
# Implement counters using a single list
4357
# There are two different implementations of the counter
4358
# objects. The first implementation stores all alarms in a
4359
# single linked list. The alternative implementation uses a
4360
# table of linked lists. A single list is more efficient in
4361
# terms of memory usage and is generally adequate when the
4362
# application only makes use of a small number of alarms.
4363
#
4364
cdl_option CYGIMP_KERNEL_COUNTERS_SINGLE_LIST {
4365
    # Flavor: bool
4366
    # No user value, uncomment the following line to provide one.
4367
    # user_value 1
4368
    # value_source default
4369
    # Default value: 1
4370
};
4371
 
4372
# Implement counters using a table of lists
4373
# There are two different implementations of the counter
4374
# objects. The first implementation stores all alarms in a
4375
# single linked list. The alternative implementation uses a
4376
# table of linked lists, with the size of the table being a
4377
# separate configurable option. For more complicated
4378
# operations it is better to have a table of lists since this
4379
# reduces the amount of computation whenever the timer goes
4380
# off. Assuming a table size of 8 (the default value) on
4381
# average the timer code will only need to check 1/8 of the
4382
# pending alarms instead of all of them.
4383
#
4384
cdl_component CYGIMP_KERNEL_COUNTERS_MULTI_LIST {
4385
    # Flavor: bool
4386
    # No user value, uncomment the following line to provide one.
4387
    # user_value 0
4388
    # value_source default
4389
    # Default value: 0
4390
};
4391
 
4392
# >
4393
# Size of counter list table
4394
# If counters are implemented using an array of linked lists
4395
# then this option controls the size of the array. A larger
4396
# size reduces the amount of computation that needs to take
4397
# place whenever the timer goes off, but requires extra
4398
# memory.
4399
#
4400
cdl_option CYGNUM_KERNEL_COUNTERS_MULTI_LIST_SIZE {
4401
    # This option is not active
4402
    # The parent CYGIMP_KERNEL_COUNTERS_MULTI_LIST is disabled
4403
 
4404
    # Flavor: data
4405
    # No user value, uncomment the following line to provide one.
4406
    # user_value 8
4407
    # value_source default
4408
    # Default value: 8
4409
    # Legal values: 1 to 1024
4410
};
4411
 
4412
# <
4413
# Sort the counter list
4414
# Sorting the counter lists reduces the amount of work that
4415
# has to be done when a counter tick is processed, since the
4416
# next alarm to expire is always at the front of the list.
4417
# However, it makes adding an alarm to the list more expensive
4418
# since a search must be done for the correct place to put it.
4419
# Many alarms are used to implement timeouts, which seldom trigger,
4420
# so it is worthwhile optimizing this case. For this reason
4421
# sorted list are disabled by default.
4422
#
4423
cdl_option CYGIMP_KERNEL_COUNTERS_SORT_LIST {
4424
    # Flavor: bool
4425
    # No user value, uncomment the following line to provide one.
4426
    # user_value 0
4427
    # value_source default
4428
    # Default value: 0
4429
};
4430
 
4431
# Measure real-time [clock] interrupt latency
4432
# Measure the interrupt latency as seen by the real-time clock
4433
# timer interrupt.  This requires hardware support, defined by
4434
# the HAL_CLOCK_LATENCY() macro.
4435
#
4436
cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY {
4437
    # Flavor: bool
4438
    # No user value, uncomment the following line to provide one.
4439
    # user_value 0
4440
    # value_source default
4441
    # Default value: 0
4442
    # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4443
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
4444
    #   --> 1
4445
 
4446
    # The following properties are affected by this value
4447
    # option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY
4448
    #     Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY
4449
    # option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY
4450
    #     DefaultValue: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY
4451
};
4452
 
4453
# Measure real-time [clock] DSR latency
4454
# Measure the DSR latency as seen by the real-time clock
4455
# timer interrupt.  This requires hardware support, defined by
4456
# the HAL_CLOCK_LATENCY() macro.
4457
#
4458
cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY {
4459
    # Flavor: bool
4460
    # No user value, uncomment the following line to provide one.
4461
    # user_value 0
4462
    # value_source default
4463
    # Default value: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY
4464
    #     CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0
4465
    #   --> 0
4466
    # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY
4467
    #     CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0
4468
    #   --> 0
4469
};
4470
 
4471
# RTC resolution
4472
# This option automatically defines the tuple which is used to
4473
# initialize the RTC resolution, consisting of a numerator and
4474
# denominator.  For more information, see the option to
4475
# override default clock settings
4476
# (CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE) and associated options.
4477
#
4478
cdl_option CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION {
4479
    # Calculated value:  CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ?                 "{CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_NUMERATOR,     CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_DENOMINATOR}"   : "{CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR}"
4480
    #     CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE == 0
4481
    # Flavor: data
4482
    # Current_value: {CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR}
4483
};
4484
 
4485
# RTC period
4486
# This option automatically defines the RTC period to be used in
4487
# setting the system clock hardware.  For more information, see the
4488
# option to override default clock settings
4489
# (CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE) and associated options.
4490
#
4491
cdl_option CYGNUM_KERNEL_COUNTERS_RTC_PERIOD {
4492
    # Calculated value:  CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ?                 "CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD"         : "CYGNUM_HAL_RTC_PERIOD"
4493
    #     CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE == 0
4494
    # Flavor: data
4495
    # Current_value: CYGNUM_HAL_RTC_PERIOD
4496
};
4497
 
4498
# <
4499
# Thread-related options
4500
# There are a number of configuration options related to the
4501
# implementation of threads, for example whether or not the
4502
# eCos kernel supports per-thread data.
4503
#
4504
cdl_component CYGPKG_KERNEL_THREADS {
4505
    # There is no associated value.
4506
 
4507
    # The following properties are affected by this value
4508
    # option CYGDBG_KERNEL_INSTRUMENT_THREAD
4509
    #     ActiveIf: CYGPKG_KERNEL_THREADS
4510
};
4511
 
4512
# >
4513
# Allow per-thread timers
4514
# This option controls whether or not the kernel should support
4515
# per-thread clock and alarm related functions. Also some of
4516
# the synchronization primitives such as semaphore and
4517
# condition variable timed wait operations require per-thread
4518
# timer support. If none of these facilities are required then
4519
# the option can be disabled.
4520
#
4521
cdl_option CYGFUN_KERNEL_THREADS_TIMER {
4522
    # Flavor: bool
4523
    # No user value, uncomment the following line to provide one.
4524
    # user_value 1
4525
    # value_source default
4526
    # Default value: 1
4527
    # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
4528
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
4529
    #   --> 1
4530
 
4531
    # The following properties are affected by this value
4532
    # option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT
4533
    #     Requires: CYGFUN_KERNEL_THREADS_TIMER
4534
    # option CYGSEM_LIBC_TIME_CLOCK_WORKING
4535
    #     Requires: CYGFUN_KERNEL_THREADS_TIMER
4536
};
4537
 
4538
# Support optional name for each thread
4539
# Threads may optionally be supplied with a name string that is
4540
# used to identify them during debugging. This name is only
4541
# present if `this option is defined. Disabling it reduces both
4542
# code and data size.
4543
#
4544
cdl_option CYGVAR_KERNEL_THREADS_NAME {
4545
    # Flavor: bool
4546
    # No user value, uncomment the following line to provide one.
4547
    # user_value 1
4548
    # value_source default
4549
    # Default value: 1
4550
};
4551
 
4552
# Keep track of all threads using a linked list
4553
# Threads may optionally be placed on a housekeeping list so
4554
# that all threads may be located easily. This is useful mainly
4555
# in conjunction with source-level debugging.
4556
#
4557
cdl_option CYGVAR_KERNEL_THREADS_LIST {
4558
    # Flavor: bool
4559
    # No user value, uncomment the following line to provide one.
4560
    # user_value 1
4561
    # value_source default
4562
    # Default value: 1
4563
 
4564
    # The following properties are affected by this value
4565
    # option CYGFUN_KERNEL_ALL_THREADS_STACK_CHECKING
4566
    #     Requires: CYGVAR_KERNEL_THREADS_LIST
4567
    # option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT
4568
    #     Requires: CYGVAR_KERNEL_THREADS_LIST
4569
};
4570
 
4571
# Keep track of the base of each thread's stack
4572
# This option makes the kernel keep track of the lower limit on
4573
# each thread's stack. It allows the kernel to adjust the lower
4574
# limit, thus making space for per-thread data. Note that it
4575
# does not imply any form of run-time stack overflow checking.
4576
#
4577
cdl_option CYGFUN_KERNEL_THREADS_STACK_LIMIT {
4578
    # Flavor: bool
4579
    # No user value, uncomment the following line to provide one.
4580
    # user_value 1
4581
    # value_source default
4582
    # Default value: 1
4583
 
4584
    # The following properties are affected by this value
4585
    # component CYGVAR_KERNEL_THREADS_DATA
4586
    #     Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT
4587
};
4588
 
4589
# Check thread stacks for overflows
4590
# This option enables a variety of checks for stack overflow
4591
# including signatures at the top and base of thread stacks,
4592
# which are asserted for correctness whenever a thread switches.
4593
#
4594
cdl_component CYGFUN_KERNEL_THREADS_STACK_CHECKING {
4595
    # This option is not active
4596
    # ActiveIf constraint: CYGPKG_INFRA_DEBUG
4597
    #     CYGPKG_INFRA_DEBUG == 0
4598
    #   --> 0
4599
    # ActiveIf constraint: CYGDBG_USE_ASSERTS
4600
    #     CYGDBG_USE_ASSERTS == 0
4601
    #   --> 0
4602
 
4603
    # Flavor: bool
4604
    # No user value, uncomment the following line to provide one.
4605
    # user_value 1
4606
    # value_source default
4607
    # Default value: 1
4608
};
4609
 
4610
# >
4611
# Check all threads whenever possible
4612
# This option enables more active checking of all threads for
4613
# wrongdoing.  In theory, checking threads other than the old and new
4614
# executing threads in a thread-switch is pointless, because no other
4615
# thread has run, so no other stack can be exceeded.  But errors such
4616
# as memory scribbling, dangling pointers, overlapping use of store
4617
# or errors accessing objects adjacent to a stack which can be very
4618
# hard to find can be detected this way, saving debug time.
4619
#
4620
cdl_option CYGFUN_KERNEL_ALL_THREADS_STACK_CHECKING {
4621
    # This option is not active
4622
    # The parent CYGFUN_KERNEL_THREADS_STACK_CHECKING is not active
4623
 
4624
    # Flavor: bool
4625
    # No user value, uncomment the following line to provide one.
4626
    # user_value 0
4627
    # value_source default
4628
    # Default value: 0
4629
    # Requires: CYGVAR_KERNEL_THREADS_LIST
4630
    #     CYGVAR_KERNEL_THREADS_LIST == 1
4631
    #   --> 1
4632
};
4633
 
4634
# Signature size in bytes, at stack top and bottom
4635
# This is the size of the area reserved for a signature at the top
4636
# and bottom of all stacks.  It also provides a buffer zone for
4637
# detecting overflow before external objects are corrupted, hence the
4638
# ability to vary it here.  But if you are short of stack, increasing
4639
# this value will make the overflow more, not less likely, of course.
4640
#
4641
cdl_option CYGNUM_KERNEL_THREADS_STACK_CHECK_DATA_SIZE {
4642
    # This option is not active
4643
    # The parent CYGFUN_KERNEL_THREADS_STACK_CHECKING is not active
4644
 
4645
    # Flavor: data
4646
    # No user value, uncomment the following line to provide one.
4647
    # user_value 32
4648
    # value_source default
4649
    # Default value: 32
4650
    # Legal values: 8 to 512
4651
};
4652
 
4653
# <
4654
# Measure stack usage
4655
# This option allows measurement of each thread's stack by initializing
4656
# it to a predefined value at thread creation time. Later use of the
4657
# cyg_thread_measure_stack_usage() function allows the maximum stack
4658
# usage of the thread so far to be obtained. Note that this is not
4659
# necessarily the true maximum stack usage that the thread will ever
4660
# use since all that has been measured is the stack usage corresponding
4661
# to the code path followed this time, and not the code path that may
4662
# be followed in future.
4663
#
4664
cdl_component CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT {
4665
    # Flavor: bool
4666
    # No user value, uncomment the following line to provide one.
4667
    # user_value 0
4668
    # value_source default
4669
    # Default value:  0 != CYGPKG_INFRA_DEBUG
4670
    #     CYGPKG_INFRA_DEBUG == 0
4671
    #   --> 0
4672
};
4673
 
4674
# >
4675
# Output stack usage on thread exit
4676
# This will output the measured stack usage on the diagnostic
4677
# output when a thread exits.
4678
#
4679
cdl_option CYGDBG_KERNEL_THREADS_STACK_MEASUREMENT_VERBOSE_EXIT {
4680
    # This option is not active
4681
    # The parent CYGFUN_KERNEL_THREADS_STACK_MEASUREMENT is disabled
4682
 
4683
    # Flavor: bool
4684
    # No user value, uncomment the following line to provide one.
4685
    # user_value 0
4686
    # value_source default
4687
    # Default value: 0
4688
};
4689
 
4690
# <
4691
# Support for per-thread data
4692
# doc: ref/kernel-thread-data.html
4693
# It is possible for the kernel to support per-thread data, in
4694
# other words an area of memory specific to each thread which
4695
# can be used to store data for that thread. This per-thread
4696
# data can be used by applications or by other packages such as
4697
# the ISO C library.
4698
#
4699
cdl_component CYGVAR_KERNEL_THREADS_DATA {
4700
    # Flavor: bool
4701
    # No user value, uncomment the following line to provide one.
4702
    # user_value 1
4703
    # value_source default
4704
    # Default value: 1
4705
    # Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT
4706
    #     CYGFUN_KERNEL_THREADS_STACK_LIMIT == 1
4707
    #   --> 1
4708
 
4709
    # The following properties are affected by this value
4710
    # option CYGSEM_LIBC_I18N_PER_THREAD_MB
4711
    #     Requires: CYGVAR_KERNEL_THREADS_DATA
4712
    # option CYGSEM_LIBC_PER_THREAD_RAND
4713
    #     Requires: CYGVAR_KERNEL_THREADS_DATA
4714
    # option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK
4715
    #     Requires: CYGVAR_KERNEL_THREADS_DATA
4716
    # option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK
4717
    #     DefaultValue: CYGVAR_KERNEL_THREADS_DATA
4718
    # option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE
4719
    #     Requires: CYGVAR_KERNEL_THREADS_DATA
4720
    # option CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS
4721
    #     Requires: CYGVAR_KERNEL_THREADS_DATA
4722
    # option CYGSEM_ERROR_PER_THREAD_ERRNO
4723
    #     Requires: CYGVAR_KERNEL_THREADS_DATA
4724
};
4725
 
4726
# >
4727
# Number of words of per-thread data
4728
# It is possible for the kernel to support per-thread data, in
4729
# other words an area of memory specific to each thread which
4730
# can be used to store data for that thread. This per-thread
4731
# data can be used by applications or by other packages such as
4732
# the ISO C library. This configuration option controls the
4733
# number of words of per-thread data that the kernel will
4734
# allow. In the current implementation a bitmask is used to identify
4735
# used per-thread data slots and so the maximum legal value must
4736
# remain 32.
4737
#
4738
cdl_option CYGNUM_KERNEL_THREADS_DATA_MAX {
4739
    # Flavor: data
4740
    # No user value, uncomment the following line to provide one.
4741
    # user_value 6
4742
    # value_source default
4743
    # Default value: 6
4744
    # Legal values: 4 to 32
4745
};
4746
 
4747
# Bitmap of preallocated slots of thread data
4748
# Per thread data options. Per thread data support is based loosely
4749
# on that defined by POSIX. Each thread has an array of slots, up to
4750
# CYGNUM_KERNEL_THREADS_DATA_MAX, that may contain data. Some of the
4751
# slots have been preallocated to specific packages. Others may be
4752
# allocated dynamically.
4753
#
4754
cdl_component CYGNUM_KERNEL_THREADS_DATA_ALL {
4755
    # Calculated value: 15
4756
    # Flavor: data
4757
    # Current_value: 15
4758
};
4759
 
4760
# >
4761
# Slot 0 preallocated for the kernel
4762
# This option defines the index of a per-thread data
4763
# slot which is reserved by
4764
# the eCos kernel
4765
# for private use.
4766
#
4767
cdl_option CYGNUM_KERNEL_THREADS_DATA_KERNEL {
4768
    # Calculated value: 0
4769
    # Flavor: data
4770
    # Current_value: 0
4771
};
4772
 
4773
# Slot 1 preallocated for uITRON
4774
# This option defines the index of a per-thread data
4775
# slot which is reserved by
4776
# the uITRON compatibility layer
4777
# for private use.
4778
#
4779
cdl_option CYGNUM_KERNEL_THREADS_DATA_ITRON {
4780
    # Calculated value: 1
4781
    # Flavor: data
4782
    # Current_value: 1
4783
};
4784
 
4785
# Slot 2 preallocated for errno
4786
# This option defines the index of a per-thread data
4787
# slot which is reserved for use by an errno variable.
4788
#
4789
cdl_option CYGNUM_KERNEL_THREADS_DATA_ERRNO {
4790
    # Calculated value: 2
4791
    # Flavor: data
4792
    # Current_value: 2
4793
};
4794
 
4795
# Slot 3 preallocated for POSIX
4796
# This option defines the index of a per-thread data
4797
# slot which is reserved by
4798
# POSIX
4799
# for private use.
4800
#
4801
cdl_option CYGNUM_KERNEL_THREADS_DATA_POSIX {
4802
    # Calculated value: 3
4803
    # Flavor: data
4804
    # Current_value: 3
4805
};
4806
 
4807
# <
4808
# <
4809
# Thread destructors
4810
# doc: ref/kernel-thread-destructors.html
4811
# This option enables support for registered destructor functions to
4812
# be called on thread exit.
4813
#
4814
cdl_component CYGPKG_KERNEL_THREADS_DESTRUCTORS {
4815
    # Flavor: bool
4816
    # No user value, uncomment the following line to provide one.
4817
    # user_value 0
4818
    # value_source default
4819
    # Default value: 0
4820
};
4821
 
4822
# >
4823
# Number of possible destructors
4824
# This option gives the number of possible destructors allowed.
4825
# Increasing this will increase the size of every
4826
# thread control structure if per-thread destructors are
4827
# enabled.
4828
#
4829
cdl_option CYGNUM_KERNEL_THREADS_DESTRUCTORS {
4830
    # This option is not active
4831
    # The parent CYGPKG_KERNEL_THREADS_DESTRUCTORS is disabled
4832
 
4833
    # Flavor: data
4834
    # No user value, uncomment the following line to provide one.
4835
    # user_value 8
4836
    # value_source default
4837
    # Default value: 8
4838
    # Legal values: 1 to 65535
4839
};
4840
 
4841
# Per-thread destructors
4842
# Enabling this option makes the thread destructors a per-thread
4843
# property, with each thread having its own list of destructors.
4844
# Disabling this option makes the thread destructor list
4845
# global so all threads have the same destructors.
4846
#
4847
cdl_option CYGSEM_KERNEL_THREADS_DESTRUCTORS_PER_THREAD {
4848
    # This option is not active
4849
    # The parent CYGPKG_KERNEL_THREADS_DESTRUCTORS is disabled
4850
 
4851
    # Flavor: bool
4852
    # No user value, uncomment the following line to provide one.
4853
    # user_value 1
4854
    # value_source default
4855
    # Default value: 1
4856
};
4857
 
4858
# <
4859
# Stack size for the idle thread
4860
# This configuration option specifies the stack size in bytes
4861
# for the idle thread. Unless the HAL is configured to use a
4862
# separate interrupt stack this size must be sufficient to meet
4863
# the requirements of all interrupt handlers - these
4864
# requirements are cumulative if nested interrupted are
4865
# enabled. Depending on the target architecture, the stack size
4866
# typically has to be a multiple of eight or sixteen bytes.
4867
# This will be overridden where it is used if the
4868
# architectural HAL requires a minimum stack size
4869
# to handle interrupts correctly.
4870
#
4871
cdl_option CYGNUM_KERNEL_THREADS_IDLE_STACK_SIZE {
4872
    # Flavor: data
4873
    # No user value, uncomment the following line to provide one.
4874
    # user_value 2048
4875
    # value_source default
4876
    # Default value: 2048
4877
    # Legal values: 512 to 65536
4878
};
4879
 
4880
# Maximal suspend count
4881
# This option provides for an assertion that the count value for
4882
# counted thread suspends do not exceed set limits.  This is to help
4883
# with debugging, to allow a runaway loop, for example, to be
4884
# detected more easily.
4885
# If the option is not defined, no assert is included.  Whether asserts
4886
# are themselves included depends on infrastructure configury in
4887
# infra.h
4888
#
4889
cdl_option CYGNUM_KERNEL_MAX_SUSPEND_COUNT_ASSERT {
4890
    # Flavor: data
4891
    # No user value, uncomment the following line to provide one.
4892
    # user_value 500
4893
    # value_source default
4894
    # Default value: 500
4895
};
4896
 
4897
# Maximal wake count
4898
# This option provides for an assertion that the count value for
4899
# counted thread wakeups do not exceed set limits.  This is to
4900
# help with debugging, to allow a runaaway loop, for example, to
4901
# be detected more easily.
4902
# If the option is not defined, no assert is included.  Whether asserts
4903
# are themselves included depends on infrastructure configury in
4904
# infra.h
4905
#
4906
cdl_option CYGNUM_KERNEL_MAX_COUNTED_WAKE_COUNT_ASSERT {
4907
    # Flavor: data
4908
    # No user value, uncomment the following line to provide one.
4909
    # user_value 500
4910
    # value_source default
4911
    # Default value: 500
4912
};
4913
 
4914
# Idle thread must always yield
4915
# If the scheduler configuration only has a single priority
4916
# level, then the idle thread must yield each time around its loop.
4917
#
4918
cdl_option CYGIMP_IDLE_THREAD_YIELD {
4919
    # This option is not active
4920
    # ActiveIf constraint: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1)
4921
    #     CYGNUM_KERNEL_SCHED_PRIORITIES == 32
4922
    #   --> 0
4923
 
4924
    # Calculated value: 1
4925
    # Flavor: bool
4926
    # Current value: 1
4927
};
4928
 
4929
# <
4930
# Synchronization primitives
4931
# The eCos kernel supports a number of different
4932
# synchronization primitives such as mutexes, semaphores,
4933
# condition variables, and message boxes. There are
4934
# configuration options to control the exact behaviour of some
4935
# of these synchronization primitives.
4936
#
4937
cdl_component CYGPKG_KERNEL_SYNCH {
4938
    # There is no associated value.
4939
 
4940
    # The following properties are affected by this value
4941
    # option CYGDBG_KERNEL_INSTRUMENT_MUTEX
4942
    #     ActiveIf: CYGPKG_KERNEL_SYNCH
4943
    # option CYGDBG_KERNEL_INSTRUMENT_CONDVAR
4944
    #     ActiveIf: CYGPKG_KERNEL_SYNCH
4945
    # option CYGDBG_KERNEL_INSTRUMENT_BINSEM
4946
    #     ActiveIf: CYGPKG_KERNEL_SYNCH
4947
    # option CYGDBG_KERNEL_INSTRUMENT_CNTSEM
4948
    #     ActiveIf: CYGPKG_KERNEL_SYNCH
4949
    # option CYGDBG_KERNEL_INSTRUMENT_MBOXT
4950
    #     ActiveIf: CYGPKG_KERNEL_SYNCH
4951
};
4952
 
4953
# >
4954
# Priority inversion protection protocols
4955
# doc: ref/kernel-mutexes.html
4956
# This component controls the protocols used to protect mutexes against
4957
# priority inversion. If this option is enabled it defines which
4958
# algorithm is used to implement this protection. At present only
4959
# one such algorithm is defined: "SIMPLE". The implementation
4960
# will only work in the mlqueue scheduler, and it does not handle the
4961
# rare case of nested mutexes completely correctly. However it is
4962
# both fast and deterministic.
4963
#
4964
cdl_component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL {
4965
    # ActiveIf constraint:  CYGSEM_KERNEL_SCHED_MLQUEUE
4966
    #     CYGSEM_KERNEL_SCHED_MLQUEUE == 1
4967
    #   --> 1
4968
 
4969
    # Flavor: booldata
4970
    # No user value, uncomment the following line to provide one.
4971
    # user_value 1 SIMPLE
4972
    # value_source default
4973
    # Default value: 1 SIMPLE
4974
    # Legal values:  "SIMPLE"
4975
    # Requires:  CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0
4976
    #     CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0
4977
    #   --> 1
4978
};
4979
 
4980
# >
4981
# Enable priority inheritance protocol
4982
# This option enables priority inheritance protocol. This protocol
4983
# causes the owner of a mutex to be executed at the highest priority
4984
# of the threads waiting for access to the mutex.
4985
#
4986
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT {
4987
    # Flavor: bool
4988
    # No user value, uncomment the following line to provide one.
4989
    # user_value 1
4990
    # value_source default
4991
    # Default value: 1
4992
 
4993
    # The following properties are affected by this value
4994
    # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT
4995
    #     DefaultValue:  CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ?
4996
    #                             "INHERIT" :
4997
    #                             CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ?
4998
    #                             "CEILING" : "NONE"
4999
};
5000
 
5001
# Enable priority ceiling protocol
5002
# This option enables priority ceiling protocol. This protocol
5003
# causes the owner of a mutex to be executed at a  priority
5004
# associated with the mutex.
5005
#
5006
cdl_component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING {
5007
    # Flavor: bool
5008
    # No user value, uncomment the following line to provide one.
5009
    # user_value 1
5010
    # value_source default
5011
    # Default value: 1
5012
 
5013
    # The following properties are affected by this value
5014
    # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY
5015
    #     ActiveIf: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING
5016
    # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT
5017
    #     DefaultValue:  CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ?
5018
    #                             "INHERIT" :
5019
    #                             CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ?
5020
    #                             "CEILING" : "NONE"
5021
};
5022
 
5023
# >
5024
# Default priority ceiling
5025
# This option defines the default priority ceiling to be
5026
# used if the chosen default priority inversion protocol is
5027
# priority ceoptioniling protocol. The default value for this is zero,
5028
# making all such mutexes boost threads to the maximum priority.
5029
#
5030
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY {
5031
    # ActiveIf constraint: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING
5032
    #     CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING == 1
5033
    #   --> 1
5034
 
5035
    # Flavor: data
5036
    # No user value, uncomment the following line to provide one.
5037
    # user_value 0
5038
    # value_source default
5039
    # Default value: 0
5040
    # Legal values: 0 to  CYGNUM_KERNEL_SCHED_PRIORITIES - 1
5041
    #     CYGNUM_KERNEL_SCHED_PRIORITIES == 32
5042
};
5043
 
5044
# <
5045
# No priority inversion protocol
5046
# This option enables the ability to have no priority inversion protocol.
5047
# It is equivalent to disabling the priority inversion protocol at
5048
# the top level, but is necessary for the runtime and default
5049
# selection options.
5050
#
5051
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE {
5052
    # Flavor: bool
5053
    # No user value, uncomment the following line to provide one.
5054
    # user_value 1
5055
    # value_source default
5056
    # Default value: 1
5057
};
5058
 
5059
# Default priority inversion protocol
5060
# This option defines the default inversion protocol used for mutexes that
5061
# are created without an explicit protocol being specified. The protocol
5062
# chosen by default is to use priority inheritance if it is present otherwise
5063
# priority ceiling, or none if neither is present.
5064
#
5065
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT {
5066
    # ActiveIf constraint:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1
5067
    #     CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT == 3
5068
    #   --> 1
5069
 
5070
    # Flavor: data
5071
    # No user value, uncomment the following line to provide one.
5072
    # user_value INHERIT
5073
    # value_source default
5074
    # Default value:  CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ?
5075
    #                             "INHERIT" :
5076
    #                             CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ?
5077
    #                             "CEILING" : "NONE"
5078
    #     CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT == 1
5079
    #     CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING == 1
5080
    #   --> INHERIT
5081
    # Legal values:  "INHERIT" "CEILING" "NONE"
5082
};
5083
 
5084
# Specify mutex priority inversion protocol at runtime
5085
# This option controls whether the priority inversion protocol used by
5086
# a mutex can be specified when that mutex is created.
5087
#
5088
cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC {
5089
    # ActiveIf constraint:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1
5090
    #     CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT == 3
5091
    #   --> 1
5092
 
5093
    # Flavor: bool
5094
    # No user value, uncomment the following line to provide one.
5095
    # user_value 1
5096
    # value_source default
5097
    # Default value: 1
5098
};
5099
 
5100
# Number of protocols selected
5101
#
5102
cdl_interface CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT {
5103
    # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT, active, enabled
5104
    # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING, active, enabled
5105
    # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE, active, enabled
5106
    # This value cannot be modified here.
5107
    # Flavor: data
5108
    # Current_value: 3
5109
 
5110
    # The following properties are affected by this value
5111
    # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT
5112
    #     ActiveIf:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1
5113
    # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC
5114
    #     ActiveIf:  CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1
5115
};
5116
 
5117
# <
5118
# Message box blocking put support
5119
# doc: ref/kernel-mail-boxes.html
5120
# Message boxes can support three different versions of the
5121
# put-message operation. The first is tryput(), which will fail
5122
# if the message box is already full. The other two are the
5123
# ordinary put() function which will block if the message box
5124
# is full, and a timed put() operation which will block for
5125
# upto a certain length of time if the message box is currently
5126
# full. The blocking versions require extra memory in the
5127
# message box data structure and extra code in the other
5128
# message box functions, so they can be disabled if the
5129
# application does not require them. If this option is enabled
5130
# then the system will always provide the blocking put()
5131
# function, and it will also provide the timed put() function
5132
# if thread timers are enabled.
5133
#
5134
cdl_option CYGMFN_KERNEL_SYNCH_MBOXT_PUT_CAN_WAIT {
5135
    # Flavor: bool
5136
    # No user value, uncomment the following line to provide one.
5137
    # user_value 1
5138
    # value_source default
5139
    # Default value: 1
5140
};
5141
 
5142
# Message box queue size
5143
# doc: ref/kernel-mail-boxes.html
5144
# This configuration option controls the number of messages
5145
# that can be queued in a message box before a non-blocking
5146
# put() operation will fail or a blocking put() operation will
5147
# block. The cost in memory is one pointer per message box for
5148
# each possible message.
5149
#
5150
cdl_option CYGNUM_KERNEL_SYNCH_MBOX_QUEUE_SIZE {
5151
    # Flavor: data
5152
    # No user value, uncomment the following line to provide one.
5153
    # user_value 10
5154
    # value_source default
5155
    # Default value: 10
5156
    # Legal values: 1 to 65535
5157
};
5158
 
5159
# Condition variable timed-wait support
5160
# doc: ref/kernel-condition-variables.html
5161
# This option enables the condition variable timed wait
5162
# facility.
5163
#
5164
cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT {
5165
    # Flavor: bool
5166
    # No user value, uncomment the following line to provide one.
5167
    # user_value 1
5168
    # value_source default
5169
    # Default value: 1
5170
    # Requires: CYGFUN_KERNEL_THREADS_TIMER
5171
    #     CYGFUN_KERNEL_THREADS_TIMER == 1
5172
    #   --> 1
5173
};
5174
 
5175
# Condition variable explicit mutex wait support
5176
# doc: ref/kernel-condition-variables.html
5177
# This option enables the condition variable explicit mutex wait
5178
# facility. By default condition variables in eCos are created with
5179
# a statically associated mutex. This option permits wait (and timed wait
5180
# if CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT is enabled) to provide a
5181
# different mutex as an argument. This makes no difference to the semantics
5182
# the wait operation except that a different mutex will be used during it.
5183
#
5184
cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_WAIT_MUTEX {
5185
    # Flavor: bool
5186
    # No user value, uncomment the following line to provide one.
5187
    # user_value 1
5188
    # value_source default
5189
    # Default value: 1
5190
};
5191
 
5192
# Avoid inlines in mqueue implementation
5193
# With this option disabled, the 'mqueue' message queue implementation
5194
# provides most of its implementation via inlines. However this can
5195
# adversely affect code size in application that make lots of mqueue
5196
# calls from different places, so enabling this option provides
5197
# non-inline versions to be used instead.
5198
#
5199
cdl_option CYGIMP_KERNEL_SYNCH_MQUEUE_NOT_INLINE {
5200
    # Flavor: bool
5201
    # No user value, uncomment the following line to provide one.
5202
    # user_value 0
5203
    # value_source default
5204
    # Default value: 0
5205
};
5206
 
5207
# <
5208
# Kernel instrumentation
5209
# The current release of the kernel contains an initial version
5210
# of instrumentation support. The various parts of the kernel
5211
# will invoke instrumentation routines whenever appropriate
5212
# events occur, and these will be stored in a circular buffer
5213
# for later reference.
5214
#
5215
cdl_component CYGPKG_KERNEL_INSTRUMENT {
5216
    # Flavor: bool
5217
    # No user value, uncomment the following line to provide one.
5218
    # user_value 0
5219
    # value_source default
5220
    # Default value: 0
5221
 
5222
    # The following properties are affected by this value
5223
    # option CYGPKG_KERNEL_TESTS
5224
    #     Calculated:
5225
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
5226
    #                     . ((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/tm_basic tests/fptest" : "")
5227
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
5228
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
5229
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
5230
    #
5231
};
5232
 
5233
# >
5234
# Use buffer provided by the application
5235
# In most circumstances the kernel should provide the
5236
# instrumentation circular buffer itself. Occasionally
5237
# application code may wish to provide the buffer instead,
5238
# giving the application code more convenient access to the
5239
# buffer. This also makes it possible to put the circular
5240
# buffer in special areas of memory, for example a region that
5241
# is shared with the host.
5242
#
5243
cdl_option CYGVAR_KERNEL_INSTRUMENT_EXTERNAL_BUFFER {
5244
    # This option is not active
5245
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5246
 
5247
    # Flavor: bool
5248
    # No user value, uncomment the following line to provide one.
5249
    # user_value 0
5250
    # value_source default
5251
    # Default value: 0
5252
};
5253
 
5254
# Size of instrumentation buffer size
5255
# If kernel instrumentation is enabled then the instrumentation
5256
# data goes into a circular buffer. A larger buffer allows
5257
# more data to be stored, but at a significant cost in memory.
5258
# The value of this option corresponds to the number of entries
5259
# in the table, and typically each entry will require 16 bytes
5260
# of memory.
5261
#
5262
cdl_option CYGNUM_KERNEL_INSTRUMENT_BUFFER_SIZE {
5263
    # This option is not active
5264
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5265
 
5266
    # Flavor: data
5267
    # No user value, uncomment the following line to provide one.
5268
    # user_value 256
5269
    # value_source default
5270
    # Default value: 256
5271
    # Legal values: 16 to 0x100000
5272
};
5273
 
5274
# Wrap instrument buffer
5275
# When the instrumentation buffer is full it can either be restarted
5276
# from the beginning, overwriting older data, or it can stop at the
5277
# end. The former is useful if you want to look at the last entries
5278
# made while the latter is useful if you want to look at the first
5279
# few.
5280
#
5281
cdl_option CYGDBG_KERNEL_INSTRUMENT_BUFFER_WRAP {
5282
    # This option is not active
5283
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5284
 
5285
    # Flavor: bool
5286
    # No user value, uncomment the following line to provide one.
5287
    # user_value 1
5288
    # value_source default
5289
    # Default value: 1
5290
};
5291
 
5292
# Perform selective instrumentation
5293
# The kernel can either collect all instrumentation events, or
5294
# it can filter out events at runtime based on a set of flags.
5295
# For example it would be possible to decide at runtime that
5296
# only scheduler and interrupt instrumentation flags are of
5297
# interest and that all other flags should be ignored. This
5298
# flag mechanism involves extra code and processor cycle
5299
# overhead in the instrumentation code, so it can be disabled
5300
# if the application developer is interested in all
5301
# instrumentation events.
5302
#
5303
cdl_option CYGDBG_KERNEL_INSTRUMENT_FLAGS {
5304
    # This option is not active
5305
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5306
 
5307
    # Flavor: bool
5308
    # No user value, uncomment the following line to provide one.
5309
    # user_value 1
5310
    # value_source default
5311
    # Default value: 1
5312
};
5313
 
5314
# Instrument the scheduler
5315
# It is possible to perform selective instrumentation at
5316
# run-time. It is also possible to disable instrumentation
5317
# in various kernel components at compile-time, thus
5318
# reducing the code size overheads. This option controls
5319
# whether or not instrumentation support is compiled into
5320
# the scheduling code.
5321
#
5322
cdl_option CYGDBG_KERNEL_INSTRUMENT_SCHED {
5323
    # This option is not active
5324
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5325
    # ActiveIf constraint: CYGPKG_KERNEL_SCHED
5326
    #     CYGPKG_KERNEL_SCHED == 1
5327
    #   --> 1
5328
 
5329
    # Flavor: bool
5330
    # No user value, uncomment the following line to provide one.
5331
    # user_value 1
5332
    # value_source default
5333
    # Default value: 1
5334
};
5335
 
5336
# Instrument thread operations
5337
# It is possible to perform selective instrumentation at
5338
# run-time. It is also possible to disable instrumentation
5339
# in various kernel components at compile-time, thus
5340
# reducing the code size overheads. This option controls
5341
# whether or not instrumentation support is compiled into
5342
# the code that manipulates threads.
5343
#
5344
cdl_option CYGDBG_KERNEL_INSTRUMENT_THREAD {
5345
    # This option is not active
5346
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5347
    # ActiveIf constraint: CYGPKG_KERNEL_THREADS
5348
    #     CYGPKG_KERNEL_THREADS == 1
5349
    #   --> 1
5350
 
5351
    # Flavor: bool
5352
    # No user value, uncomment the following line to provide one.
5353
    # user_value 1
5354
    # value_source default
5355
    # Default value: 1
5356
};
5357
 
5358
# Instrument interrupts
5359
# It is possible to perform selective instrumentation at
5360
# run-time. It is also possible to disable instrumentation
5361
# in various kernel components at compile-time, thus
5362
# reducing the code size overheads. This option controls
5363
# whether or not instrumentation support is compiled into
5364
# the interrupt handling code.
5365
#
5366
cdl_option CYGDBG_KERNEL_INSTRUMENT_INTR {
5367
    # This option is not active
5368
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5369
    # ActiveIf constraint: CYGPKG_KERNEL_INTERRUPTS
5370
    #     CYGPKG_KERNEL_INTERRUPTS == 1
5371
    #   --> 1
5372
 
5373
    # Flavor: bool
5374
    # No user value, uncomment the following line to provide one.
5375
    # user_value 1
5376
    # value_source default
5377
    # Default value: 1
5378
};
5379
 
5380
# Instrument mutex operations
5381
# It is possible to perform selective instrumentation at
5382
# run-time. It is also possible to disable instrumentation
5383
# in various kernel components at compile-time, thus
5384
# reducing the code size overheads. This option controls
5385
# whether or not instrumentation support is compiled into
5386
# the mutex code.
5387
#
5388
cdl_option CYGDBG_KERNEL_INSTRUMENT_MUTEX {
5389
    # This option is not active
5390
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5391
    # ActiveIf constraint: CYGPKG_KERNEL_SYNCH
5392
    #     CYGPKG_KERNEL_SYNCH == 1
5393
    #   --> 1
5394
 
5395
    # Flavor: bool
5396
    # No user value, uncomment the following line to provide one.
5397
    # user_value 1
5398
    # value_source default
5399
    # Default value: 1
5400
};
5401
 
5402
# Instrument condition variable operations
5403
# It is possible to perform selective instrumentation at
5404
# run-time. It is also possible to disable instrumentation
5405
# in various kernel components at compile-time, thus
5406
# reducing the code size overheads. This option controls
5407
# whether or not instrumentation support is compiled into
5408
# the condition variable code.
5409
#
5410
cdl_option CYGDBG_KERNEL_INSTRUMENT_CONDVAR {
5411
    # This option is not active
5412
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5413
    # ActiveIf constraint: CYGPKG_KERNEL_SYNCH
5414
    #     CYGPKG_KERNEL_SYNCH == 1
5415
    #   --> 1
5416
 
5417
    # Flavor: bool
5418
    # No user value, uncomment the following line to provide one.
5419
    # user_value 1
5420
    # value_source default
5421
    # Default value: 1
5422
};
5423
 
5424
# Instrument binary semaphore operations
5425
# It is possible to perform selective instrumentation at
5426
# run-time. It is also possible to disable instrumentation
5427
# in various kernel components at compile-time, thus
5428
# reducing the code size overheads. This option controls
5429
# whether or not instrumentation support is compiled into
5430
# the binary semaphore code.
5431
#
5432
cdl_option CYGDBG_KERNEL_INSTRUMENT_BINSEM {
5433
    # This option is not active
5434
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5435
    # ActiveIf constraint: CYGPKG_KERNEL_SYNCH
5436
    #     CYGPKG_KERNEL_SYNCH == 1
5437
    #   --> 1
5438
 
5439
    # Flavor: bool
5440
    # No user value, uncomment the following line to provide one.
5441
    # user_value 1
5442
    # value_source default
5443
    # Default value: 1
5444
};
5445
 
5446
# Instrument counting semaphore operations
5447
# It is possible to perform selective instrumentation at
5448
# run-time. It is also possible to disable instrumentation
5449
# in various kernel components at compile-time, thus
5450
# reducing the code size overheads. This option controls
5451
# whether or not instrumentation support is compiled into
5452
# the counting semaphore code.
5453
#
5454
cdl_option CYGDBG_KERNEL_INSTRUMENT_CNTSEM {
5455
    # This option is not active
5456
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5457
    # ActiveIf constraint: CYGPKG_KERNEL_SYNCH
5458
    #     CYGPKG_KERNEL_SYNCH == 1
5459
    #   --> 1
5460
 
5461
    # Flavor: bool
5462
    # No user value, uncomment the following line to provide one.
5463
    # user_value 1
5464
    # value_source default
5465
    # Default value: 1
5466
};
5467
 
5468
# Instrument message box operations
5469
# It is possible to perform selective instrumentation at
5470
# run-time. It is also possible to disable instrumentation
5471
# in various kernel components at compile-time, thus
5472
# reducing the code size overheads. This option controls
5473
# whether or not instrumentation support is compiled into
5474
# the message box code.
5475
#
5476
cdl_option CYGDBG_KERNEL_INSTRUMENT_MBOXT {
5477
    # This option is not active
5478
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5479
    # ActiveIf constraint: CYGPKG_KERNEL_SYNCH
5480
    #     CYGPKG_KERNEL_SYNCH == 1
5481
    #   --> 1
5482
 
5483
    # Flavor: bool
5484
    # No user value, uncomment the following line to provide one.
5485
    # user_value 1
5486
    # value_source default
5487
    # Default value: 1
5488
};
5489
 
5490
# Instrument clock operations
5491
# It is possible to perform selective instrumentation at
5492
# run-time. It is also possible to disable instrumentation
5493
# in various kernel components at compile-time, thus
5494
# reducing the code size overheads. This option controls
5495
# whether or not instrumentation support is compiled into
5496
# the real-time clock code.
5497
#
5498
cdl_option CYGDBG_KERNEL_INSTRUMENT_CLOCK {
5499
    # This option is not active
5500
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5501
    # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK
5502
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
5503
    #   --> 1
5504
 
5505
    # Flavor: bool
5506
    # No user value, uncomment the following line to provide one.
5507
    # user_value 1
5508
    # value_source default
5509
    # Default value: 1
5510
};
5511
 
5512
# Instrument alarm-related operations
5513
# It is possible to perform selective instrumentation at
5514
# run-time. It is also possible to disable instrumentation
5515
# in various kernel components at compile-time, thus
5516
# reducing the code size overheads. This option controls
5517
# whether or not instrumentation support is compiled into
5518
# the code related to alarm operations.
5519
#
5520
cdl_option CYGDBG_KERNEL_INSTRUMENT_ALARM {
5521
    # This option is not active
5522
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5523
    # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK
5524
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
5525
    #   --> 1
5526
 
5527
    # Flavor: bool
5528
    # No user value, uncomment the following line to provide one.
5529
    # user_value 1
5530
    # value_source default
5531
    # Default value: 1
5532
};
5533
 
5534
# Instrument SMP-related operations
5535
# It is possible to perform selective instrumentation at
5536
# run-time. It is also possible to disable instrumentation
5537
# in various kernel components at compile-time, thus
5538
# reducing the code size overheads. This option controls
5539
# whether or not instrumentation support is compiled into
5540
# the code related to SMP operations.
5541
#
5542
cdl_option CYGDBG_KERNEL_INSTRUMENT_SMP {
5543
    # This option is not active
5544
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5545
    # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK
5546
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
5547
    #   --> 1
5548
 
5549
    # Flavor: bool
5550
    # No user value, uncomment the following line to provide one.
5551
    # user_value 1
5552
    # value_source default
5553
    # Default value: 1
5554
};
5555
 
5556
# Support application-level instrumentation
5557
# It is possible to perform selective instrumentation at
5558
# run-time. It is also possible to disable instrumentation
5559
# in various kernel components at compile-time, thus
5560
# reducing the code size overheads. This option controls
5561
# whether or not application-level instrumentation gets
5562
# compiled in.
5563
#
5564
cdl_option CYGDBG_KERNEL_INSTRUMENT_USER {
5565
    # This option is not active
5566
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5567
 
5568
    # Flavor: bool
5569
    # No user value, uncomment the following line to provide one.
5570
    # user_value 1
5571
    # value_source default
5572
    # Default value: 1
5573
};
5574
 
5575
# Print user friendly instrument messages
5576
# Include code which will convert the instrument type field
5577
# into a more human understandable string
5578
#
5579
cdl_component CYGDBG_KERNEL_INSTRUMENT_MSGS {
5580
    # This option is not active
5581
    # The parent CYGPKG_KERNEL_INSTRUMENT is disabled
5582
 
5583
    # Flavor: bool
5584
    # No user value, uncomment the following line to provide one.
5585
    # user_value 1
5586
    # value_source default
5587
    # Default value: 1
5588
};
5589
 
5590
# >
5591
# Rebuild the header file
5592
# Make (using a shell script) include/cyg/kernel/instrument_desc.h in
5593
# your build tree; this is normally simply copied from the repository.
5594
# If you make a permanent change to include/instrmnt.h, such that
5595
# instrument_desc.h needs updating, it's up to you to first delete the
5596
# master file
5597
# ECOS_REPOSITORY/kernel/VERSION/include/instrument_desc.h
5598
# in your source repository, make the new version by enabling this
5599
# option then copy the new file
5600
# back from your build place to its source in
5601
# ECOS_REPOSITORY/kernel/VERSION/include/instrument_desc.h
5602
# and/or commit this to any version control system that you use.
5603
#
5604
cdl_option CYGDBG_KERNEL_INSTRUMENT_MSGS_BUILD_HEADERFILE {
5605
    # This option is not active
5606
    # The parent CYGDBG_KERNEL_INSTRUMENT_MSGS is not active
5607
 
5608
    # Flavor: bool
5609
    # No user value, uncomment the following line to provide one.
5610
    # user_value 0
5611
    # value_source default
5612
    # Default value: 0
5613
};
5614
 
5615
# Build the host tool to print out a dump
5616
# Generate a host program which can dump the instrumentation
5617
# data in a human readable format. You have to somehow get the
5618
# instrumentation buffer into a file on the host. 'Exercise for
5619
# the reader' as university lecturers tend to say.
5620
#
5621
cdl_component CYGDBG_KERNEL_INSTRUMENT_BUILD_HOST_DUMP {
5622
    # This option is not active
5623
    # The parent CYGDBG_KERNEL_INSTRUMENT_MSGS is not active
5624
 
5625
    # Flavor: bool
5626
    # No user value, uncomment the following line to provide one.
5627
    # user_value 0
5628
    # value_source default
5629
    # Default value: 0
5630
};
5631
 
5632
# <
5633
# <
5634
# Source-level debugging support
5635
# If the source level debugger gdb is to be used for debugging
5636
# application code then it may be necessary to configure in support
5637
# for this in the kernel.
5638
#
5639
cdl_component CYGPKG_KERNEL_DEBUG {
5640
    # There is no associated value.
5641
};
5642
 
5643
# >
5644
# Include GDB multi-threading debug support
5645
# This option enables some extra kernel code which is needed
5646
# to support multi-threaded source level debugging.
5647
#
5648
cdl_option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT {
5649
    # Flavor: bool
5650
    # No user value, uncomment the following line to provide one.
5651
    # user_value 1
5652
    # value_source default
5653
    # Default value: 1
5654
    # Requires: CYGVAR_KERNEL_THREADS_LIST
5655
    #     CYGVAR_KERNEL_THREADS_LIST == 1
5656
    #   --> 1
5657
    # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
5658
    #     CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1
5659
    #   --> 1
5660
 
5661
    # The following properties are affected by this value
5662
    # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT
5663
    #     ActiveIf:  CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT
5664
};
5665
 
5666
# <
5667
# Kernel APIs
5668
# The eCos kernel is implemented in C++, so a C++ interface
5669
# to the kernel is always available. There is also an optional
5670
# C API. Additional API's may be provided in future versions.
5671
#
5672
cdl_component CYGPKG_KERNEL_API {
5673
    # There is no associated value.
5674
};
5675
 
5676
# >
5677
# Provide C API
5678
# The eCos kernel is implemented in C++, but there is an
5679
# optional C API for use by application code. This C API can be
5680
# disabled if the application code does not invoke the kernel
5681
# directly, but instead uses higher level code such as the
5682
# uITRON compatibility layer.
5683
#
5684
cdl_option CYGFUN_KERNEL_API_C {
5685
    # Flavor: bool
5686
    # No user value, uncomment the following line to provide one.
5687
    # user_value 1
5688
    # value_source default
5689
    # Default value: 1
5690
 
5691
    # The following properties are affected by this value
5692
    # option CYGPKG_KERNEL_TESTS
5693
    #     Calculated:
5694
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
5695
    #                     . ((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/tm_basic tests/fptest" : "")
5696
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
5697
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
5698
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
5699
    #
5700
    # option CYGPKG_KERNEL_TESTS
5701
    #     Calculated:
5702
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
5703
    #                     . ((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/tm_basic tests/fptest" : "")
5704
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
5705
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
5706
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
5707
    #
5708
    # option CYGPKG_KERNEL_TESTS
5709
    #     Calculated:
5710
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
5711
    #                     . ((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/tm_basic tests/fptest" : "")
5712
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
5713
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
5714
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
5715
    #
5716
    # option CYGPKG_KERNEL_TESTS
5717
    #     Calculated:
5718
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
5719
    #                     . ((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/tm_basic tests/fptest" : "")
5720
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
5721
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
5722
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
5723
    #
5724
    # option CYGFUN_MEMALLOC_KAPI
5725
    #     DefaultValue: CYGFUN_KERNEL_API_C
5726
};
5727
 
5728
# <
5729
# Kernel build options
5730
# Package specific build options including control over
5731
# compiler flags used only in building this package,
5732
# and details of which tests are built.
5733
#
5734
cdl_component CYGPKG_KERNEL_OPTIONS {
5735
    # There is no associated value.
5736
};
5737
 
5738
# >
5739
# Additional compiler flags
5740
# This option modifies the set of compiler flags for
5741
# building the eCos kernel. These flags are used in addition
5742
# to the set of global flags.
5743
#
5744
cdl_option CYGPKG_KERNEL_CFLAGS_ADD {
5745
    # Flavor: data
5746
    # No user value, uncomment the following line to provide one.
5747
    # user_value ""
5748
    # value_source default
5749
    # Default value: ""
5750
};
5751
 
5752
# Suppressed compiler flags
5753
# This option modifies the set of compiler flags for
5754
# building the eCos kernel. These flags are removed from
5755
# the set of global flags if present.
5756
#
5757
cdl_option CYGPKG_KERNEL_CFLAGS_REMOVE {
5758
    # Flavor: data
5759
    # No user value, uncomment the following line to provide one.
5760
    # user_value ""
5761
    # value_source default
5762
    # Default value: ""
5763
};
5764
 
5765
# Kernel tests
5766
# This option specifies the set of tests for the eCos kernel.
5767
#
5768
cdl_option CYGPKG_KERNEL_TESTS {
5769
    # Calculated value:
5770
    #                     "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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"
5771
    #                     . ((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/tm_basic tests/fptest" : "")
5772
    #                     . ((!CYGPKG_INFRA_DEBUG && !CYGPKG_KERNEL_INSTRUMENT && CYGFUN_KERNEL_API_C) ? " tests/dhrystone" : "")
5773
    #                     . ((CYGPKG_KERNEL_SMP_SUPPORT && CYGFUN_KERNEL_API_C) ? " tests/smp" : "")
5774
    #                     . ((!CYGINT_HAL_TESTS_NO_CACHES && CYGFUN_KERNEL_API_C) ? " tests/kcache1 tests/kcache2" : "")
5775
    #
5776
    #     CYGFUN_KERNEL_API_C == 1
5777
    #     CYGPKG_INFRA_DEBUG == 0
5778
    #     CYGPKG_KERNEL_INSTRUMENT == 0
5779
    #     CYGFUN_KERNEL_API_C == 1
5780
    #     CYGPKG_KERNEL_SMP_SUPPORT == 0
5781
    #     CYGFUN_KERNEL_API_C == 1
5782
    #     CYGINT_HAL_TESTS_NO_CACHES == 0
5783
    #     CYGFUN_KERNEL_API_C == 1
5784
    # Flavor: data
5785
    # Current_value: tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 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/tm_basic tests/fptest tests/dhrystone tests/kcache1 tests/kcache2
5786
};
5787
 
5788
# <
5789
# <
5790
# Dynamic memory allocation
5791
# This package provides memory allocator infrastructure required for
5792
# dynamic memory allocators, including the ISO standard malloc
5793
# interface. It also contains some sample implementations.
5794
#
5795
cdl_package CYGPKG_MEMALLOC {
5796
    # Packages cannot be added or removed, nor can their version be changed,
5797
    # simply by editing their value. Instead the appropriate configuration
5798
    # should be used to perform these actions.
5799
 
5800
    # This value cannot be modified here.
5801
    # Flavor: booldata
5802
    # Current value: 1 v2_0
5803
};
5804
 
5805
# >
5806
# Memory allocator implementations
5807
# This component contains configuration options related to the
5808
# various memory allocators available.
5809
#
5810
cdl_component CYGPKG_MEMALLOC_ALLOCATORS {
5811
    # There is no associated value.
5812
};
5813
 
5814
# >
5815
# Fixed block allocator
5816
# This component contains configuration options related to the
5817
# fixed block memory allocator.
5818
#
5819
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_FIXED {
5820
    # There is no associated value.
5821
};
5822
 
5823
# >
5824
# Make thread safe
5825
# With this option enabled, this allocator will be
5826
# made thread-safe. Additionally allocation functions
5827
# are made available that allow a thread to wait
5828
# until memory is available.
5829
#
5830
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE {
5831
    # ActiveIf constraint: CYGPKG_KERNEL
5832
    #     CYGPKG_KERNEL == v2_0
5833
    #   --> 1
5834
 
5835
    # Flavor: bool
5836
    # No user value, uncomment the following line to provide one.
5837
    # user_value 1
5838
    # value_source default
5839
    # Default value: 1
5840
};
5841
 
5842
# <
5843
# Simple variable block allocator
5844
# This component contains configuration options related to the
5845
# simple variable block memory allocator. This allocator is not
5846
# very fast, and in particular does not scale well with large
5847
# numbers of allocations. It is however very compact in terms of
5848
# code size and does not have very much overhead per allocation.
5849
#
5850
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_VARIABLE {
5851
    # There is no associated value.
5852
};
5853
 
5854
# >
5855
# Make thread safe
5856
# With this option enabled, this allocator will be
5857
# made thread-safe. Additionally allocation functions
5858
# are added that allow a thread to wait until memory
5859
# are made available that allow a thread to wait
5860
# until memory is available.
5861
#
5862
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE {
5863
    # ActiveIf constraint: CYGPKG_KERNEL
5864
    #     CYGPKG_KERNEL == v2_0
5865
    #   --> 1
5866
 
5867
    # Flavor: bool
5868
    # No user value, uncomment the following line to provide one.
5869
    # user_value 1
5870
    # value_source default
5871
    # Default value: 1
5872
};
5873
 
5874
# Coalesce memory
5875
# The variable-block memory allocator can perform coalescing
5876
# of memory whenever the application code releases memory back
5877
# to the pool. This coalescing reduces the possibility of
5878
# memory fragmentation problems, but involves extra code and
5879
# processor cycles.
5880
#
5881
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE {
5882
    # Flavor: bool
5883
    # No user value, uncomment the following line to provide one.
5884
    # user_value 1
5885
    # value_source default
5886
    # Default value: 1
5887
 
5888
    # The following properties are affected by this value
5889
    # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE
5890
    #     Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE
5891
};
5892
 
5893
# <
5894
# Doug Lea's malloc
5895
# This component contains configuration options related to the
5896
# port of Doug Lea's memory allocator, normally known as
5897
# dlmalloc. dlmalloc has a reputation for being both fast
5898
# and space-conserving, as well as resisting fragmentation well.
5899
# It is a common choice for a general purpose allocator and
5900
# has been used in both newlib and Linux glibc.
5901
#
5902
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_DLMALLOC {
5903
    # There is no associated value.
5904
};
5905
 
5906
# >
5907
# Debug build
5908
# Doug Lea's malloc implementation has substantial amounts
5909
# of internal checking in order to verify the operation
5910
# and consistency of the allocator. However this imposes
5911
# substantial overhead on each operation. Therefore this
5912
# checking may be individually disabled.
5913
#
5914
cdl_option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG {
5915
    # Flavor: bool
5916
    # No user value, uncomment the following line to provide one.
5917
    # user_value 0
5918
    # value_source default
5919
    # Default value:  0 != CYGDBG_USE_ASSERTS
5920
    #     CYGDBG_USE_ASSERTS == 0
5921
    #   --> 0
5922
    # Requires: CYGDBG_USE_ASSERTS
5923
    #     CYGDBG_USE_ASSERTS == 0
5924
    #   --> 0
5925
};
5926
 
5927
# Make thread safe
5928
# With this option enabled, this allocator will be
5929
# made thread-safe. Additionally allocation functions
5930
# are made available that allow a thread to wait
5931
# until memory is available.
5932
#
5933
cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE {
5934
    # ActiveIf constraint: CYGPKG_KERNEL
5935
    #     CYGPKG_KERNEL == v2_0
5936
    #   --> 1
5937
 
5938
    # Flavor: bool
5939
    # No user value, uncomment the following line to provide one.
5940
    # user_value 1
5941
    # value_source default
5942
    # Default value: 1
5943
    # Requires: CYGPKG_KERNEL
5944
    #     CYGPKG_KERNEL == v2_0
5945
    #   --> 1
5946
};
5947
 
5948
# Support more than one instance
5949
# Having this option disabled allows important
5950
# implementation structures to be declared as a single
5951
# static instance, allowing faster access. However this
5952
# would fail if there is more than one instance of
5953
# the dlmalloc allocator class. Therefore this option can
5954
# be enabled if multiple instances are required. Note: as
5955
# a special case, if this allocator is used as the
5956
# implementation of malloc, and it can be determined there
5957
# is more than one malloc pool, then this option will be
5958
# silently enabled.
5959
#
5960
cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_SAFE_MULTIPLE {
5961
    # Flavor: bool
5962
    # No user value, uncomment the following line to provide one.
5963
    # user_value 1
5964
    # value_source default
5965
    # Default value: 1
5966
};
5967
 
5968
# Use system memcpy() and memset()
5969
# This may be used to control whether memset() and memcpy()
5970
# are used within the implementation. The alternative is
5971
# to use some macro equivalents, which some people report
5972
# are faster in some circumstances.
5973
#
5974
cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY {
5975
    # Flavor: bool
5976
    # No user value, uncomment the following line to provide one.
5977
    # user_value 1
5978
    # value_source default
5979
    # Default value:  0 != CYGPKG_ISOINFRA
5980
    #     CYGPKG_ISOINFRA == v2_0
5981
    #   --> 1
5982
    # Requires: CYGPKG_ISOINFRA
5983
    #     CYGPKG_ISOINFRA == v2_0
5984
    #   --> 1
5985
};
5986
 
5987
# <
5988
# Variable block allocator with separate metadata
5989
# This component contains configuration options related to the
5990
# variable block memory allocator with separate metadata.
5991
#
5992
cdl_component CYGPKG_MEMALLOC_ALLOCATOR_SEPMETA {
5993
    # There is no associated value.
5994
};
5995
 
5996
# >
5997
# Make thread safe
5998
# With this option enabled, this allocator will be
5999
# made thread-safe. Additionally allocation functions
6000
# are made available that allow a thread to wait
6001
# until memory is available.
6002
#
6003
cdl_option CYGSEM_MEMALLOC_ALLOCATOR_SEPMETA_THREADAWARE {
6004
    # ActiveIf constraint: CYGPKG_KERNEL
6005
    #     CYGPKG_KERNEL == v2_0
6006
    #   --> 1
6007
 
6008
    # Flavor: bool
6009
    # No user value, uncomment the following line to provide one.
6010
    # user_value 1
6011
    # value_source default
6012
    # Default value: 1
6013
};
6014
 
6015
# <
6016
# <
6017
# Kernel C API support for memory allocation
6018
# This option must be enabled to provide the extensions required
6019
# to support integration into the kernel C API.
6020
#
6021
cdl_option CYGFUN_MEMALLOC_KAPI {
6022
    # ActiveIf constraint: CYGPKG_KERNEL
6023
    #     CYGPKG_KERNEL == v2_0
6024
    #   --> 1
6025
 
6026
    # Flavor: bool
6027
    # No user value, uncomment the following line to provide one.
6028
    # user_value 1
6029
    # value_source default
6030
    # Default value: CYGFUN_KERNEL_API_C
6031
    #     CYGFUN_KERNEL_API_C == 1
6032
    #   --> 1
6033
};
6034
 
6035
# malloc(0) returns NULL
6036
# This option controls the behavior of malloc(0) ( or calloc with
6037
# either argument 0 ). It is permitted by the standard to return
6038
# either a NULL pointer or a unique pointer. Enabling this option
6039
# forces a NULL pointer to be returned.
6040
#
6041
cdl_option CYGSEM_MEMALLOC_MALLOC_ZERO_RETURNS_NULL {
6042
    # Flavor: bool
6043
    # No user value, uncomment the following line to provide one.
6044
    # user_value 0
6045
    # value_source default
6046
    # Default value: 0
6047
};
6048
 
6049
# malloc() and supporting allocators
6050
# This component enables support for dynamic memory
6051
# allocation as supplied by the functions malloc(),
6052
# free(), calloc() and realloc(). As these
6053
# functions are often used, but can have quite an
6054
# overhead, disabling them here can ensure they
6055
# cannot even be used accidentally when static
6056
# allocation is preferred. Within this component are
6057
# various allocators that can be selected for use
6058
# as the underlying implementation of the dynamic
6059
# allocation functions.
6060
#
6061
cdl_component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS {
6062
    # ActiveIf constraint: CYGPKG_ISOINFRA
6063
    #     CYGPKG_ISOINFRA == v2_0
6064
    #   --> 1
6065
 
6066
    # Flavor: bool
6067
    # No user value, uncomment the following line to provide one.
6068
    # user_value 1
6069
    # value_source default
6070
    # Default value: 1
6071
};
6072
 
6073
# >
6074
# Use external heap definition
6075
# This option allows other components in the
6076
# system to override the default system
6077
# provision of heap memory pools. This should
6078
# be set to a header which provides the equivalent
6079
# definitions to .
6080
#
6081
cdl_component CYGBLD_MEMALLOC_MALLOC_EXTERNAL_HEAP_H {
6082
    # Flavor: booldata
6083
    # No user value, uncomment the following line to provide one.
6084
    # user_value 0 0
6085
    # value_source default
6086
    # Default value: 0 0
6087
};
6088
 
6089
# malloc() allocator implementations
6090
#
6091
cdl_interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS {
6092
    # Implemented by CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE, active, disabled
6093
    # Implemented by CYGIMP_MEMALLOC_MALLOC_DLMALLOC, active, enabled
6094
    # This value cannot be modified here.
6095
    # Flavor: data
6096
    # Current_value: 1
6097
    # Requires:  CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1
6098
    #     CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1
6099
    #   --> 1
6100
 
6101
    # The following properties are affected by this value
6102
    # interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS
6103
    #     Requires:  CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1
6104
};
6105
 
6106
# malloc() implementation instantiation data
6107
# Memory allocator implementations that are capable of being
6108
# used underneath malloc() must be instantiated. The code
6109
# to do this is set in this option. It is only intended to
6110
# be set by the implementation, not the user.
6111
#
6112
cdl_option CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER {
6113
    # Flavor: data
6114
    # No user value, uncomment the following line to provide one.
6115
    # user_value 
6116
    # value_source default
6117
    # Default value: 
6118
 
6119
    # The following properties are affected by this value
6120
    # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE
6121
    #     Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  ""
6122
    # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC
6123
    #     Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  ""
6124
};
6125
 
6126
# Simple variable block implementation
6127
# This causes malloc() to use the simple
6128
# variable block allocator.
6129
#
6130
cdl_option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE {
6131
    # Flavor: bool
6132
    # No user value, uncomment the following line to provide one.
6133
    # user_value 0
6134
    # value_source default
6135
    # Default value: 0
6136
    # Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  ""
6137
    #     CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == 
6138
    #   --> 0
6139
    # Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE
6140
    #     CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE == 1
6141
    #   --> 1
6142
};
6143
 
6144
# Doug Lea's malloc implementation
6145
# This causes malloc() to use a version of Doug Lea's
6146
# malloc (dlmalloc) as the underlying implementation.
6147
#
6148
cdl_option CYGIMP_MEMALLOC_MALLOC_DLMALLOC {
6149
    # Flavor: bool
6150
    # No user value, uncomment the following line to provide one.
6151
    # user_value 1
6152
    # value_source default
6153
    # Default value: 1
6154
    # Requires:  CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER ==  ""
6155
    #     CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == 
6156
    #   --> 1
6157
};
6158
 
6159
# <
6160
# Size of the fallback dynamic memory pool in bytes
6161
# If *no* heaps are configured in your memory layout,
6162
# dynamic memory allocation by
6163
# malloc() and calloc() must be from a fixed-size,
6164
# contiguous memory pool (note here that it is the
6165
# pool that is of a fixed size, but malloc() is still
6166
# able to allocate variable sized chunks of memory
6167
# from it). This option is the size
6168
# of that pool, in bytes. Note that not all of
6169
# this is available for programs to
6170
# use - some is needed for internal information
6171
# about memory regions, and some may be lost to
6172
# ensure that memory allocation only returns
6173
# memory aligned on word (or double word)
6174
# boundaries - a very common architecture
6175
# constraint.
6176
#
6177
cdl_option CYGNUM_MEMALLOC_FALLBACK_MALLOC_POOL_SIZE {
6178
    # Flavor: data
6179
    # No user value, uncomment the following line to provide one.
6180
    # user_value 16384
6181
    # value_source default
6182
    # Default value: 16384
6183
    # Legal values: 32 to 0x7fffffff
6184
};
6185
 
6186
# Common memory allocator package build options
6187
# Package specific build options including control over
6188
# compiler flags used only in building this package,
6189
# and details of which tests are built.
6190
#
6191
cdl_component CYGPKG_MEMALLOC_OPTIONS {
6192
    # There is no associated value.
6193
};
6194
 
6195
# >
6196
# Additional compiler flags
6197
# This option modifies the set of compiler flags for
6198
# building this package. These flags are used in addition
6199
# to the set of global flags.
6200
#
6201
cdl_option CYGPKG_MEMALLOC_CFLAGS_ADD {
6202
    # Flavor: data
6203
    # No user value, uncomment the following line to provide one.
6204
    # user_value ""
6205
    # value_source default
6206
    # Default value: ""
6207
};
6208
 
6209
# Suppressed compiler flags
6210
# This option modifies the set of compiler flags for
6211
# building this package. These flags are removed from
6212
# the set of global flags if present.
6213
#
6214
cdl_option CYGPKG_MEMALLOC_CFLAGS_REMOVE {
6215
    # Flavor: data
6216
    # No user value, uncomment the following line to provide one.
6217
    # user_value ""
6218
    # value_source default
6219
    # Default value: ""
6220
};
6221
 
6222
# Tests
6223
# This option specifies the set of tests for this package.
6224
#
6225
cdl_option CYGPKG_MEMALLOC_TESTS {
6226
    # 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"
6227
    # Flavor: data
6228
    # 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
6229
};
6230
 
6231
# <
6232
# <
6233
# ISO C and POSIX infrastructure
6234
# eCos supports implementations of ISO C libraries and POSIX
6235
# implementations. This package provides infrastructure used by
6236
# all such implementations.
6237
#
6238
cdl_package CYGPKG_ISOINFRA {
6239
    # Packages cannot be added or removed, nor can their version be changed,
6240
    # simply by editing their value. Instead the appropriate configuration
6241
    # should be used to perform these actions.
6242
 
6243
    # This value cannot be modified here.
6244
    # Flavor: booldata
6245
    # Current value: 1 v2_0
6246
 
6247
    # The following properties are affected by this value
6248
    # component CYGPKG_IO_SERIAL_TERMIOS
6249
    #     Requires: CYGPKG_ISOINFRA
6250
    # component CYGPKG_IO_SERIAL_TERMIOS
6251
    #     DefaultValue:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO
6252
    # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY
6253
    #     Requires: CYGPKG_ISOINFRA
6254
    # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY
6255
    #     DefaultValue:  0 != CYGPKG_ISOINFRA
6256
    # component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS
6257
    #     ActiveIf: CYGPKG_ISOINFRA
6258
    # package CYGPKG_LIBC_I18N
6259
    #     Requires: CYGPKG_ISOINFRA
6260
    # package CYGPKG_LIBC_SETJMP
6261
    #     Requires: CYGPKG_ISOINFRA
6262
    # package CYGPKG_LIBC_SIGNALS
6263
    #     Requires: CYGPKG_ISOINFRA
6264
    # package CYGPKG_LIBC_STARTUP
6265
    #     Requires: CYGPKG_ISOINFRA
6266
    # package CYGPKG_LIBC_STDIO
6267
    #     Requires: CYGPKG_ISOINFRA
6268
    # package CYGPKG_LIBC_STDLIB
6269
    #     Requires: CYGPKG_ISOINFRA
6270
    # package CYGPKG_LIBC_STRING
6271
    #     Requires: CYGPKG_ISOINFRA
6272
    # package CYGPKG_LIBC_TIME
6273
    #     Requires: CYGPKG_ISOINFRA
6274
};
6275
 
6276
# >
6277
# Startup and termination
6278
#
6279
cdl_component CYGPKG_ISO_STARTUP {
6280
    # There is no associated value.
6281
};
6282
 
6283
# >
6284
# main() startup implementations
6285
# Implementations of this interface arrange for a user-supplied
6286
# main() to be called in an ISO compatible environment.
6287
#
6288
cdl_interface CYGINT_ISO_MAIN_STARTUP {
6289
    # Implemented by CYGPKG_LIBC_STARTUP, active, enabled
6290
    # This value cannot be modified here.
6291
    # Flavor: data
6292
    # Current_value: 1
6293
    # Requires:  1 >= CYGINT_ISO_MAIN_STARTUP
6294
    #     CYGINT_ISO_MAIN_STARTUP == 1
6295
    #   --> 1
6296
 
6297
    # The following properties are affected by this value
6298
    # interface CYGINT_ISO_MAIN_STARTUP
6299
    #     Requires:  1 >= CYGINT_ISO_MAIN_STARTUP
6300
};
6301
 
6302
# environ implementations
6303
# Implementations of this interface provide the environ
6304
# variable required by POSIX.
6305
#
6306
cdl_interface CYGINT_ISO_ENVIRON {
6307
    # Implemented by CYGPKG_LIBC_STARTUP, active, enabled
6308
    # This value cannot be modified here.
6309
    # Flavor: data
6310
    # Current_value: 1
6311
    # Requires:  1 >= CYGINT_ISO_ENVIRON
6312
    #     CYGINT_ISO_ENVIRON == 1
6313
    #   --> 1
6314
 
6315
    # The following properties are affected by this value
6316
    # interface CYGINT_ISO_ENVIRON
6317
    #     Requires:  1 >= CYGINT_ISO_ENVIRON
6318
};
6319
 
6320
# <
6321
# ctype.h functions
6322
#
6323
cdl_component CYGPKG_ISO_CTYPE_H {
6324
    # There is no associated value.
6325
};
6326
 
6327
# >
6328
# Number of implementations of ctype functions
6329
#
6330
cdl_interface CYGINT_ISO_CTYPE {
6331
    # Implemented by CYGPKG_LIBC_I18N, active, enabled
6332
    # This value cannot be modified here.
6333
    # Flavor: data
6334
    # Current_value: 1
6335
    # Requires:  1 >= CYGINT_ISO_CTYPE
6336
    #     CYGINT_ISO_CTYPE == 1
6337
    #   --> 1
6338
 
6339
    # The following properties are affected by this value
6340
    # interface CYGINT_ISO_CTYPE
6341
    #     Requires:  1 >= CYGINT_ISO_CTYPE
6342
    # package CYGPKG_LIBC_STDLIB
6343
    #     Requires: CYGINT_ISO_CTYPE
6344
    # option CYGFUN_LIBC_STRING_BSD_FUNCS
6345
    #     Requires: CYGINT_ISO_CTYPE
6346
};
6347
 
6348
# Ctype implementation header
6349
#
6350
cdl_option CYGBLD_ISO_CTYPE_HEADER {
6351
    # Flavor: booldata
6352
    # No user value, uncomment the following line to provide one.
6353
    # user_value 0 0
6354
    # The inferred value should not be edited directly.
6355
    inferred_value 1 
6356
    # value_source inferred
6357
    # Default value: 0 0
6358
 
6359
    # The following properties are affected by this value
6360
    # option CYGIMP_LIBC_I18N_CTYPE_INLINES
6361
    #     Requires:  CYGBLD_ISO_CTYPE_HEADER ==  ""
6362
};
6363
 
6364
# <
6365
# Error handling
6366
#
6367
cdl_component CYGPKG_ISO_ERRNO {
6368
    # There is no associated value.
6369
};
6370
 
6371
# >
6372
# Number of implementations of error codes
6373
#
6374
cdl_interface CYGINT_ISO_ERRNO_CODES {
6375
    # Implemented by CYGPKG_ERROR, active, enabled
6376
    # This value cannot be modified here.
6377
    # Flavor: data
6378
    # Current_value: 1
6379
    # Requires:  1 >= CYGINT_ISO_ERRNO_CODES
6380
    #     CYGINT_ISO_ERRNO_CODES == 1
6381
    #   --> 1
6382
 
6383
    # The following properties are affected by this value
6384
    # interface CYGINT_ISO_ERRNO_CODES
6385
    #     Requires:  1 >= CYGINT_ISO_ERRNO_CODES
6386
    # component CYGPKG_IO_SERIAL_TERMIOS
6387
    #     Requires: CYGINT_ISO_ERRNO_CODES
6388
    # component CYGPKG_IO_SERIAL_TERMIOS
6389
    #     DefaultValue:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO
6390
    # option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO
6391
    #     Requires: CYGINT_ISO_ERRNO_CODES
6392
    # option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO
6393
    #     Requires: CYGINT_ISO_ERRNO_CODES
6394
    # package CYGPKG_LIBC_STDIO
6395
    #     Requires: CYGINT_ISO_ERRNO_CODES
6396
};
6397
 
6398
# Error codes implementation header
6399
#
6400
cdl_option CYGBLD_ISO_ERRNO_CODES_HEADER {
6401
    # Flavor: booldata
6402
    # No user value, uncomment the following line to provide one.
6403
    # user_value 0 0
6404
    # The inferred value should not be edited directly.
6405
    inferred_value 1 
6406
    # value_source inferred
6407
    # Default value: 0 0
6408
 
6409
    # The following properties are affected by this value
6410
    # package CYGPKG_ERROR
6411
    #     Requires:  CYGBLD_ISO_ERRNO_CODES_HEADER == ""
6412
};
6413
 
6414
# Number of implementations of errno variable
6415
#
6416
cdl_interface CYGINT_ISO_ERRNO {
6417
    # Implemented by CYGPKG_ERROR_ERRNO, active, enabled
6418
    # This value cannot be modified here.
6419
    # Flavor: data
6420
    # Current_value: 1
6421
    # Requires:  1 >= CYGINT_ISO_ERRNO
6422
    #     CYGINT_ISO_ERRNO == 1
6423
    #   --> 1
6424
 
6425
    # The following properties are affected by this value
6426
    # interface CYGINT_ISO_ERRNO
6427
    #     Requires:  1 >= CYGINT_ISO_ERRNO
6428
    # component CYGPKG_IO_SERIAL_TERMIOS
6429
    #     Requires: CYGINT_ISO_ERRNO
6430
    # component CYGPKG_IO_SERIAL_TERMIOS
6431
    #     DefaultValue:  0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO &&  0 != CYGINT_ISO_ERRNO_CODES &&  0 != CYGINT_ISO_ERRNO
6432
    # option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO
6433
    #     Requires: CYGINT_ISO_ERRNO
6434
    # option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO
6435
    #     Requires: CYGINT_ISO_ERRNO
6436
    # package CYGPKG_LIBC_STDIO
6437
    #     Requires: CYGINT_ISO_ERRNO
6438
};
6439
 
6440
# errno variable implementation header
6441
#
6442
cdl_option CYGBLD_ISO_ERRNO_HEADER {
6443
    # Flavor: booldata
6444
    # No user value, uncomment the following line to provide one.
6445
    # user_value 0 0
6446
    # The inferred value should not be edited directly.
6447
    inferred_value 1 
6448
    # value_source inferred
6449
    # Default value: 0 0
6450
 
6451
    # The following properties are affected by this value
6452
    # component CYGPKG_ERROR_ERRNO
6453
    #     Requires:  CYGBLD_ISO_ERRNO_HEADER == ""
6454
};
6455
 
6456
# <
6457
# Locale-related functions
6458
#
6459
cdl_component CYGPKG_ISO_LOCALE {
6460
    # There is no associated value.
6461
};
6462
 
6463
# >
6464
# Number of implementations of locale functions
6465
#
6466
cdl_interface CYGINT_ISO_LOCALE {
6467
    # Implemented by CYGPKG_LIBC_I18N, active, enabled
6468
    # This value cannot be modified here.
6469
    # Flavor: data
6470
    # Current_value: 1
6471
    # Requires:  1 >= CYGINT_ISO_LOCALE
6472
    #     CYGINT_ISO_LOCALE == 1
6473
    #   --> 1
6474
 
6475
    # The following properties are affected by this value
6476
    # interface CYGINT_ISO_LOCALE
6477
    #     Requires:  1 >= CYGINT_ISO_LOCALE
6478
};
6479
 
6480
# Locale implementation header
6481
#
6482
cdl_option CYGBLD_ISO_LOCALE_HEADER {
6483
    # Flavor: booldata
6484
    # No user value, uncomment the following line to provide one.
6485
    # user_value 0 0
6486
    # value_source default
6487
    # Default value: 0 0
6488
};
6489
 
6490
# <
6491
# Standard I/O-related functionality
6492
#
6493
cdl_component CYGPKG_ISO_STDIO {
6494
    # There is no associated value.
6495
};
6496
 
6497
# >
6498
# Number of implementations of stdio file types
6499
#
6500
cdl_interface CYGINT_ISO_STDIO_FILETYPES {
6501
    # Implemented by CYGPKG_LIBC_STDIO, active, enabled
6502
    # This value cannot be modified here.
6503
    # Flavor: booldata
6504
    # Current value: 1 1
6505
    # Requires:  1 >= CYGINT_ISO_STDIO_FILETYPES
6506
    #     CYGINT_ISO_STDIO_FILETYPES == 1
6507
    #   --> 1
6508
 
6509
    # The following properties are affected by this value
6510
    # interface CYGINT_ISO_STDIO_FILETYPES
6511
    #     Requires:  1 >= CYGINT_ISO_STDIO_FILETYPES
6512
};
6513
 
6514
# Stdio file types implementation header
6515
#
6516
cdl_option CYGBLD_ISO_STDIO_FILETYPES_HEADER {
6517
    # Flavor: booldata
6518
    # No user value, uncomment the following line to provide one.
6519
    # user_value 0 0
6520
    # The inferred value should not be edited directly.
6521
    inferred_value 1 
6522
    # value_source inferred
6523
    # Default value: 0 0
6524
 
6525
    # The following properties are affected by this value
6526
    # package CYGPKG_LIBC_STDIO
6527
    #     Requires:  CYGBLD_ISO_STDIO_FILETYPES_HEADER ==  ""
6528
};
6529
 
6530
# Stdio standard streams implementations
6531
#
6532
cdl_interface CYGINT_ISO_STDIO_STREAMS {
6533
    # Implemented by CYGPKG_LIBC_STDIO, active, enabled
6534
    # This value cannot be modified here.
6535
    # Flavor: booldata
6536
    # Current value: 1 1
6537
    # Requires:  1 >= CYGINT_ISO_STDIO_STREAMS
6538
    #     CYGINT_ISO_STDIO_STREAMS == 1
6539
    #   --> 1
6540
 
6541
    # The following properties are affected by this value
6542
    # interface CYGINT_ISO_STDIO_STREAMS
6543
    #     Requires:  1 >= CYGINT_ISO_STDIO_STREAMS
6544
};
6545
 
6546
# Stdio standard streams implementation header
6547
# This header file must define stdin, stdout
6548
# and stderr.
6549
#
6550
cdl_option CYGBLD_ISO_STDIO_STREAMS_HEADER {
6551
    # Flavor: booldata
6552
    # No user value, uncomment the following line to provide one.
6553
    # user_value 0 0
6554
    # The inferred value should not be edited directly.
6555
    inferred_value 1 
6556
    # value_source inferred
6557
    # Default value: 0 0
6558
 
6559
    # The following properties are affected by this value
6560
    # package CYGPKG_LIBC_STDIO
6561
    #     Requires:  CYGBLD_ISO_STDIO_STREAMS_HEADER ==  ""
6562
};
6563
 
6564
# Number of implementations of stdio file operations
6565
#
6566
cdl_interface CYGINT_ISO_STDIO_FILEOPS {
6567
    # No options implement this inferface
6568
    # This value cannot be modified here.
6569
    # Flavor: booldata
6570
    # Current value: 0 0
6571
    # Requires:  1 >= CYGINT_ISO_STDIO_FILEOPS
6572
    #     CYGINT_ISO_STDIO_FILEOPS == 0
6573
    #   --> 1
6574
 
6575
    # The following properties are affected by this value
6576
    # interface CYGINT_ISO_STDIO_FILEOPS
6577
    #     Requires:  1 >= CYGINT_ISO_STDIO_FILEOPS
6578
};
6579
 
6580
# Stdio file operations implementation header
6581
# This header controls the file system operations on a file
6582
# such as remove(), rename(), tmpfile(), tmpnam() and associated
6583
# constants.
6584
#
6585
cdl_option CYGBLD_ISO_STDIO_FILEOPS_HEADER {
6586
    # Flavor: booldata
6587
    # No user value, uncomment the following line to provide one.
6588
    # user_value 0 0
6589
    # value_source default
6590
    # Default value: 0 0
6591
};
6592
 
6593
# Number of implementations of stdio file access  functionals
6594
#
6595
cdl_interface CYGINT_ISO_STDIO_FILEACCESS {
6596
    # Implemented by CYGPKG_LIBC_STDIO, active, enabled
6597
    # This value cannot be modified here.
6598
    # Flavor: booldata
6599
    # Current value: 1 1
6600
    # Requires:  1 >= CYGINT_ISO_STDIO_FILEACCESS
6601
    #     CYGINT_ISO_STDIO_FILEACCESS == 1
6602
    #   --> 1
6603
 
6604
    # The following properties are affected by this value
6605
    # interface CYGINT_ISO_STDIO_FILEACCESS
6606
    #     Requires:  1 >= CYGINT_ISO_STDIO_FILEACCESS
6607
    # option CYGSEM_LIBC_EXIT_CALLS_FFLUSH
6608
    #     Requires: CYGINT_ISO_STDIO_FILEACCESS
6609
    # option CYGSEM_LIBC_EXIT_CALLS_FFLUSH
6610
    #     DefaultValue:  0 != CYGINT_ISO_STDIO_FILEACCESS
6611
};
6612
 
6613
# Stdio file access implementation header
6614
# This header controls the file access operations
6615
# such as fclose(), fflush(), fopen(), freopen(), setbuf(),
6616
# setvbuf(), and associated constants.
6617
#
6618
cdl_option CYGBLD_ISO_STDIO_FILEACCESS_HEADER {
6619
    # Flavor: booldata
6620
    # No user value, uncomment the following line to provide one.
6621
    # user_value 0 0
6622
    # The inferred value should not be edited directly.
6623
    inferred_value 1 
6624
    # value_source inferred
6625
    # Default value: 0 0
6626
 
6627
    # The following properties are affected by this value
6628
    # package CYGPKG_LIBC_STDIO
6629
    #     Requires:  CYGBLD_ISO_STDIO_FILEACCESS_HEADER ==  ""
6630
};
6631
 
6632
# Number of implementations of stdio formatted I/O
6633
#
6634
cdl_interface CYGINT_ISO_STDIO_FORMATTED_IO {
6635
    # Implemented by CYGPKG_LIBC_STDIO, active, enabled
6636
    # This value cannot be modified here.
6637
    # Flavor: booldata
6638
    # Current value: 1 1
6639
    # Requires:  1 >= CYGINT_ISO_STDIO_FORMATTED_IO
6640
    #     CYGINT_ISO_STDIO_FORMATTED_IO == 1
6641
    #   --> 1
6642
 
6643
    # The following properties are affected by this value
6644
    # interface CYGINT_ISO_STDIO_FORMATTED_IO
6645
    #     Requires:  1 >= CYGINT_ISO_STDIO_FORMATTED_IO
6646
};
6647
 
6648
# Stdio formatted I/O implementation header
6649
#
6650
cdl_option CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER {
6651
    # Flavor: booldata
6652
    # No user value, uncomment the following line to provide one.
6653
    # user_value 0 0
6654
    # The inferred value should not be edited directly.
6655
    inferred_value 1 
6656
    # value_source inferred
6657
    # Default value: 0 0
6658
 
6659
    # The following properties are affected by this value
6660
    # package CYGPKG_LIBC_STDIO
6661
    #     Requires:  CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER ==  ""
6662
};
6663
 
6664
# Number of implementations of stdio character I/O
6665
#
6666
cdl_interface CYGINT_ISO_STDIO_CHAR_IO {
6667
    # Implemented by CYGPKG_LIBC_STDIO, active, enabled
6668
    # This value cannot be modified here.
6669
    # Flavor: booldata
6670
    # Current value: 1 1
6671
    # Requires:  1 >= CYGINT_ISO_STDIO_CHAR_IO
6672
    #     CYGINT_ISO_STDIO_CHAR_IO == 1
6673
    #   --> 1
6674
 
6675
    # The following properties are affected by this value
6676
    # interface CYGINT_ISO_STDIO_CHAR_IO
6677
    #     Requires:  1 >= CYGINT_ISO_STDIO_CHAR_IO
6678
};
6679
 
6680
# Stdio character I/O implementation header
6681
#
6682
cdl_option CYGBLD_ISO_STDIO_CHAR_IO_HEADER {
6683
    # Flavor: booldata
6684
    # No user value, uncomment the following line to provide one.
6685
    # user_value 0 0
6686
    # The inferred value should not be edited directly.
6687
    inferred_value 1 
6688
    # value_source inferred
6689
    # Default value: 0 0
6690
 
6691
    # The following properties are affected by this value
6692
    # package CYGPKG_LIBC_STDIO
6693
    #     Requires:  CYGBLD_ISO_STDIO_CHAR_IO_HEADER ==  ""
6694
};
6695
 
6696
# Number of implementations of stdio direct I/O
6697
#
6698
cdl_interface CYGINT_ISO_STDIO_DIRECT_IO {
6699
    # Implemented by CYGPKG_LIBC_STDIO, active, enabled
6700
    # This value cannot be modified here.
6701
    # Flavor: booldata
6702
    # Current value: 1 1
6703
    # Requires:  1 >= CYGINT_ISO_STDIO_DIRECT_IO
6704
    #     CYGINT_ISO_STDIO_DIRECT_IO == 1
6705
    #   --> 1
6706
 
6707
    # The following properties are affected by this value
6708
    # interface CYGINT_ISO_STDIO_DIRECT_IO
6709
    #     Requires:  1 >= CYGINT_ISO_STDIO_DIRECT_IO
6710
};
6711
 
6712
# Stdio direct I/O implementation header
6713
#
6714
cdl_option CYGBLD_ISO_STDIO_DIRECT_IO_HEADER {
6715
    # Flavor: booldata
6716
    # No user value, uncomment the following line to provide one.
6717
    # user_value 0 0
6718
    # The inferred value should not be edited directly.
6719
    inferred_value 1 
6720
    # value_source inferred
6721
    # Default value: 0 0
6722
 
6723
    # The following properties are affected by this value
6724
    # package CYGPKG_LIBC_STDIO
6725
    #     Requires:  CYGBLD_ISO_STDIO_DIRECT_IO_HEADER ==  ""
6726
};
6727
 
6728
# Number of implementations of stdio file positioning
6729
#
6730
cdl_interface CYGINT_ISO_STDIO_FILEPOS {
6731
    # No options implement this inferface
6732
    # This value cannot be modified here.
6733
    # Flavor: booldata
6734
    # Current value: 0 0
6735
    # Requires:  1 >= CYGINT_ISO_STDIO_FILEPOS
6736
    #     CYGINT_ISO_STDIO_FILEPOS == 0
6737
    #   --> 1
6738
 
6739
    # The following properties are affected by this value
6740
    # interface CYGINT_ISO_STDIO_FILEPOS
6741
    #     Requires:  1 >= CYGINT_ISO_STDIO_FILEPOS
6742
};
6743
 
6744
# Stdio file positioning implementation header
6745
#
6746
cdl_option CYGBLD_ISO_STDIO_FILEPOS {
6747
    # Flavor: booldata
6748
    # No user value, uncomment the following line to provide one.
6749
    # user_value 0 0
6750
    # value_source default
6751
    # Default value: 0 0
6752
};
6753
 
6754
# Number of implementations of stdio error handling
6755
#
6756
cdl_interface CYGINT_ISO_STDIO_ERROR {
6757
    # Implemented by CYGPKG_LIBC_STDIO, active, enabled
6758
    # This value cannot be modified here.
6759
    # Flavor: booldata
6760
    # Current value: 1 1
6761
    # Requires:  1 >= CYGINT_ISO_STDIO_ERROR
6762
    #     CYGINT_ISO_STDIO_ERROR == 1
6763
    #   --> 1
6764
 
6765
    # The following properties are affected by this value
6766
    # interface CYGINT_ISO_STDIO_ERROR
6767
    #     Requires:  1 >= CYGINT_ISO_STDIO_ERROR
6768
};
6769
 
6770
# Stdio error handling implementation header
6771
#
6772
cdl_option CYGBLD_ISO_STDIO_ERROR_HEADER {
6773
    # Flavor: booldata
6774
    # No user value, uncomment the following line to provide one.
6775
    # user_value 0 0
6776
    # The inferred value should not be edited directly.
6777
    inferred_value 1 
6778
    # value_source inferred
6779
    # Default value: 0 0
6780
 
6781
    # The following properties are affected by this value
6782
    # package CYGPKG_LIBC_STDIO
6783
    #     Requires:  CYGBLD_ISO_STDIO_ERROR_HEADER ==  ""
6784
};
6785
 
6786
# POSIX fd-related function implementations
6787
#
6788
cdl_interface CYGINT_ISO_STDIO_POSIX_FDFUNCS {
6789
    # Implemented by CYGPKG_LIBC_STDIO_OPEN, active, enabled
6790
    # This value cannot be modified here.
6791
    # Flavor: booldata
6792
    # Current value: 1 1
6793
    # Requires:  1 >=  CYGINT_ISO_STDIO_POSIX_FDFUNCS
6794
    #     CYGINT_ISO_STDIO_POSIX_FDFUNCS == 1
6795
    #   --> 1
6796
 
6797
    # The following properties are affected by this value
6798
    # interface CYGINT_ISO_STDIO_POSIX_FDFUNCS
6799
    #     Requires:  1 >=  CYGINT_ISO_STDIO_POSIX_FDFUNCS
6800
};
6801
 
6802
# POSIX fd-related function implementation header
6803
#
6804
cdl_option CYGBLD_ISO_STDIO_POSIX_FDFUNCS_HEADER {
6805
    # Flavor: booldata
6806
    # No user value, uncomment the following line to provide one.
6807
    # user_value 0 0
6808
    # value_source default
6809
    # Default value: 0 0
6810
};
6811
 
6812
# <
6813
# Standard general utility functions
6814
#
6815
cdl_component CYGPKG_ISO_STDLIB {
6816
    # There is no associated value.
6817
};
6818
 
6819
# >
6820
# String conversion function implementations
6821
#
6822
cdl_interface CYGINT_ISO_STDLIB_STRCONV {
6823
    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
6824
    # This value cannot be modified here.
6825
    # Flavor: data
6826
    # Current_value: 1
6827
    # Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV
6828
    #     CYGINT_ISO_STDLIB_STRCONV == 1
6829
    #   --> 1
6830
 
6831
    # The following properties are affected by this value
6832
    # interface CYGINT_ISO_STDLIB_STRCONV
6833
    #     Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV
6834
    # package CYGPKG_LIBC_STDIO
6835
    #     Requires: CYGINT_ISO_STDLIB_STRCONV
6836
};
6837
 
6838
# String conversion function implementation header
6839
#
6840
cdl_option CYGBLD_ISO_STDLIB_STRCONV_HEADER {
6841
    # Flavor: booldata
6842
    # No user value, uncomment the following line to provide one.
6843
    # user_value 0 0
6844
    # The inferred value should not be edited directly.
6845
    inferred_value 1 
6846
    # value_source inferred
6847
    # Default value: 0 0
6848
 
6849
    # The following properties are affected by this value
6850
    # option CYGIMP_LIBC_STDLIB_INLINE_ATOX
6851
    #     Requires:  CYGBLD_ISO_STDLIB_STRCONV_HEADER ==  ""
6852
};
6853
 
6854
# String to FP conversion function implementations
6855
#
6856
cdl_interface CYGINT_ISO_STDLIB_STRCONV_FLOAT {
6857
    # Implemented by CYGFUN_LIBC_strtod, active, enabled
6858
    # This value cannot be modified here.
6859
    # Flavor: data
6860
    # Current_value: 1
6861
    # Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT
6862
    #     CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1
6863
    #   --> 1
6864
 
6865
    # The following properties are affected by this value
6866
    # interface CYGINT_ISO_STDLIB_STRCONV_FLOAT
6867
    #     Requires:  1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT
6868
    # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT
6869
    #     Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT
6870
    # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT
6871
    #     DefaultValue:  0 != CYGPKG_LIBM &&
6872
    #                                 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT
6873
};
6874
 
6875
# String to FP conversion function implementation header
6876
#
6877
cdl_option CYGBLD_ISO_STDLIB_STRCONV_FLOAT_HEADER {
6878
    # Flavor: booldata
6879
    # No user value, uncomment the following line to provide one.
6880
    # user_value 0 0
6881
    # value_source default
6882
    # Default value: 0 0
6883
};
6884
 
6885
# Random number generator implementations
6886
#
6887
cdl_interface CYGINT_ISO_RAND {
6888
    # Implemented by CYGIMP_LIBC_RAND_SIMPLEST, active, disabled
6889
    # Implemented by CYGIMP_LIBC_RAND_SIMPLE1, active, enabled
6890
    # Implemented by CYGIMP_LIBC_RAND_KNUTH1, active, disabled
6891
    # This value cannot be modified here.
6892
    # Flavor: data
6893
    # Current_value: 1
6894
    # Requires:  1 >= CYGINT_ISO_RAND
6895
    #     CYGINT_ISO_RAND == 1
6896
    #   --> 1
6897
 
6898
    # The following properties are affected by this value
6899
    # interface CYGINT_ISO_RAND
6900
    #     Requires:  1 >= CYGINT_ISO_RAND
6901
};
6902
 
6903
# Random number generator implementation header
6904
#
6905
cdl_option CYGBLD_ISO_RAND_HEADER {
6906
    # Flavor: booldata
6907
    # No user value, uncomment the following line to provide one.
6908
    # user_value 0 0
6909
    # value_source default
6910
    # Default value: 0 0
6911
};
6912
 
6913
# Malloc implementations
6914
#
6915
cdl_interface CYGINT_ISO_MALLOC {
6916
    # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled
6917
    # This value cannot be modified here.
6918
    # Flavor: data
6919
    # Current_value: 1
6920
    # Requires:  1 >= CYGINT_ISO_MALLOC
6921
    #     CYGINT_ISO_MALLOC == 1
6922
    #   --> 1
6923
 
6924
    # The following properties are affected by this value
6925
    # interface CYGINT_ISO_MALLOC
6926
    #     Requires:  1 >= CYGINT_ISO_MALLOC
6927
    # component CYGPKG_IO_SERIAL_TERMIOS
6928
    #     Requires: CYGINT_ISO_MALLOC
6929
    # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC
6930
    #     Requires: CYGINT_ISO_MALLOC
6931
    # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC
6932
    #     DefaultValue:  0 != CYGINT_ISO_MALLOC
6933
    # option CYGPKG_LIBC_STDIO_OPEN
6934
    #     Requires: CYGINT_ISO_MALLOC
6935
    # option CYGPKG_LIBC_STDIO_OPEN
6936
    #     DefaultValue:  0 != CYGINT_ISO_MALLOC
6937
};
6938
 
6939
# Malloc implementation header
6940
#
6941
cdl_option CYGBLD_ISO_MALLOC_HEADER {
6942
    # Flavor: booldata
6943
    # No user value, uncomment the following line to provide one.
6944
    # user_value 0 0
6945
    # value_source default
6946
    # Default value: 0 0
6947
};
6948
 
6949
# Mallinfo() implementations
6950
#
6951
cdl_interface CYGINT_ISO_MALLINFO {
6952
    # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled
6953
    # This value cannot be modified here.
6954
    # Flavor: data
6955
    # Current_value: 1
6956
    # Requires:  1 >= CYGINT_ISO_MALLINFO
6957
    #     CYGINT_ISO_MALLINFO == 1
6958
    #   --> 1
6959
 
6960
    # The following properties are affected by this value
6961
    # interface CYGINT_ISO_MALLINFO
6962
    #     Requires:  1 >= CYGINT_ISO_MALLINFO
6963
};
6964
 
6965
# Mallinfo() implementation header
6966
#
6967
cdl_option CYGBLD_ISO_MALLINFO_HEADER {
6968
    # Flavor: booldata
6969
    # No user value, uncomment the following line to provide one.
6970
    # user_value 0 0
6971
    # value_source default
6972
    # Default value: 0 0
6973
};
6974
 
6975
# Program exit functionality implementations
6976
#
6977
cdl_interface CYGINT_ISO_EXIT {
6978
    # Implemented by CYGPKG_LIBC_STARTUP, active, enabled
6979
    # This value cannot be modified here.
6980
    # Flavor: data
6981
    # Current_value: 1
6982
    # Requires:  1 >= CYGINT_ISO_EXIT
6983
    #     CYGINT_ISO_EXIT == 1
6984
    #   --> 1
6985
 
6986
    # The following properties are affected by this value
6987
    # interface CYGINT_ISO_EXIT
6988
    #     Requires:  1 >= CYGINT_ISO_EXIT
6989
    # option CYGFUN_INFRA_DUMMY_ABORT
6990
    #     Requires: !CYGINT_ISO_EXIT
6991
    # option CYGFUN_INFRA_DUMMY_ABORT
6992
    #     DefaultValue:  CYGINT_ISO_EXIT == 0
6993
};
6994
 
6995
# Program exit functionality implementation header
6996
#
6997
cdl_option CYGBLD_ISO_EXIT_HEADER {
6998
    # Flavor: booldata
6999
    # No user value, uncomment the following line to provide one.
7000
    # user_value 0 0
7001
    # value_source default
7002
    # Default value: 0 0
7003
};
7004
 
7005
# Program environment implementations
7006
#
7007
cdl_interface CYGINT_ISO_STDLIB_ENVIRON {
7008
    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
7009
    # This value cannot be modified here.
7010
    # Flavor: data
7011
    # Current_value: 1
7012
    # Requires:  1 >= CYGINT_ISO_STDLIB_ENVIRON
7013
    #     CYGINT_ISO_STDLIB_ENVIRON == 1
7014
    #   --> 1
7015
 
7016
    # The following properties are affected by this value
7017
    # interface CYGINT_ISO_STDLIB_ENVIRON
7018
    #     Requires:  1 >= CYGINT_ISO_STDLIB_ENVIRON
7019
};
7020
 
7021
# Program environment implementation header
7022
#
7023
cdl_option CYGBLD_ISO_STDLIB_ENVIRON_HEADER {
7024
    # Flavor: booldata
7025
    # No user value, uncomment the following line to provide one.
7026
    # user_value 0 0
7027
    # value_source default
7028
    # Default value: 0 0
7029
};
7030
 
7031
# system() implementations
7032
#
7033
cdl_interface CYGINT_ISO_STDLIB_SYSTEM {
7034
    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
7035
    # This value cannot be modified here.
7036
    # Flavor: data
7037
    # Current_value: 1
7038
    # Requires:  1 >= CYGINT_ISO_STDLIB_SYSTEM
7039
    #     CYGINT_ISO_STDLIB_SYSTEM == 1
7040
    #   --> 1
7041
 
7042
    # The following properties are affected by this value
7043
    # interface CYGINT_ISO_STDLIB_SYSTEM
7044
    #     Requires:  1 >= CYGINT_ISO_STDLIB_SYSTEM
7045
};
7046
 
7047
# system() implementation header
7048
#
7049
cdl_option CYGBLD_ISO_STDLIB_SYSTEM_HEADER {
7050
    # Flavor: booldata
7051
    # No user value, uncomment the following line to provide one.
7052
    # user_value 0 0
7053
    # value_source default
7054
    # Default value: 0 0
7055
};
7056
 
7057
# bsearch() implementations
7058
#
7059
cdl_interface CYGINT_ISO_BSEARCH {
7060
    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
7061
    # This value cannot be modified here.
7062
    # Flavor: data
7063
    # Current_value: 1
7064
    # Requires:  1 >= CYGINT_ISO_BSEARCH
7065
    #     CYGINT_ISO_BSEARCH == 1
7066
    #   --> 1
7067
 
7068
    # The following properties are affected by this value
7069
    # interface CYGINT_ISO_BSEARCH
7070
    #     Requires:  1 >= CYGINT_ISO_BSEARCH
7071
};
7072
 
7073
# bsearch() implementation header
7074
#
7075
cdl_option CYGBLD_ISO_BSEARCH_HEADER {
7076
    # Flavor: booldata
7077
    # No user value, uncomment the following line to provide one.
7078
    # user_value 0 0
7079
    # value_source default
7080
    # Default value: 0 0
7081
};
7082
 
7083
# qsort() implementations
7084
#
7085
cdl_interface CYGINT_ISO_QSORT {
7086
    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
7087
    # This value cannot be modified here.
7088
    # Flavor: data
7089
    # Current_value: 1
7090
    # Requires:  1 >= CYGINT_ISO_STDLIB_QSORT
7091
    #     CYGINT_ISO_STDLIB_QSORT (unknown) == 0
7092
    #   --> 1
7093
 
7094
    # The following properties are affected by this value
7095
};
7096
 
7097
# qsort() implementation header
7098
#
7099
cdl_option CYGBLD_ISO_QSORT_HEADER {
7100
    # Flavor: booldata
7101
    # No user value, uncomment the following line to provide one.
7102
    # user_value 0 0
7103
    # value_source default
7104
    # Default value: 0 0
7105
};
7106
 
7107
# abs()/labs() implementations
7108
#
7109
cdl_interface CYGINT_ISO_ABS {
7110
    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
7111
    # This value cannot be modified here.
7112
    # Flavor: data
7113
    # Current_value: 1
7114
    # Requires:  1 >= CYGINT_ISO_STDLIB_ABS
7115
    #     CYGINT_ISO_STDLIB_ABS (unknown) == 0
7116
    #   --> 1
7117
 
7118
    # The following properties are affected by this value
7119
    # package CYGPKG_LIBC_TIME
7120
    #     Requires: CYGINT_ISO_ABS
7121
};
7122
 
7123
# abs()/labs() implementation header
7124
#
7125
cdl_option CYGBLD_ISO_STDLIB_ABS_HEADER {
7126
    # Flavor: booldata
7127
    # No user value, uncomment the following line to provide one.
7128
    # user_value 0 0
7129
    # The inferred value should not be edited directly.
7130
    inferred_value 1 
7131
    # value_source inferred
7132
    # Default value: 0 0
7133
 
7134
    # The following properties are affected by this value
7135
    # option CYGIMP_LIBC_STDLIB_INLINE_ABS
7136
    #     Requires:  CYGBLD_ISO_STDLIB_ABS_HEADER ==  ""
7137
};
7138
 
7139
# div()/ldiv() implementations
7140
#
7141
cdl_interface CYGINT_ISO_DIV {
7142
    # Implemented by CYGPKG_LIBC_STDLIB, active, enabled
7143
    # This value cannot be modified here.
7144
    # Flavor: data
7145
    # Current_value: 1
7146
    # Requires:  1 >= CYGINT_ISO_STDLIB_DIV
7147
    #     CYGINT_ISO_STDLIB_DIV (unknown) == 0
7148
    #   --> 1
7149
 
7150
    # The following properties are affected by this value
7151
    # package CYGPKG_LIBC_TIME
7152
    #     Requires: CYGINT_ISO_DIV
7153
};
7154
 
7155
# div()/ldiv() implementation header
7156
#
7157
cdl_option CYGBLD_ISO_STDLIB_DIV_HEADER {
7158
    # Flavor: booldata
7159
    # No user value, uncomment the following line to provide one.
7160
    # user_value 0 0
7161
    # The inferred value should not be edited directly.
7162
    inferred_value 1 
7163
    # value_source inferred
7164
    # Default value: 0 0
7165
 
7166
    # The following properties are affected by this value
7167
    # option CYGIMP_LIBC_STDLIB_INLINE_DIV
7168
    #     Requires:  CYGBLD_ISO_STDLIB_DIV_HEADER ==  ""
7169
};
7170
 
7171
# Header defining the implementation's MB_CUR_MAX
7172
#
7173
cdl_option CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER {
7174
    # Flavor: booldata
7175
    # No user value, uncomment the following line to provide one.
7176
    # user_value 0 0
7177
    # value_source default
7178
    # Default value: 0 0
7179
 
7180
    # The following properties are affected by this value
7181
    # interface CYGINT_LIBC_I18N_MB_REQUIRED
7182
    #     Requires:  CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER ==  ""
7183
};
7184
 
7185
# Multibyte character implementations
7186
#
7187
cdl_interface CYGINT_ISO_STDLIB_MULTIBYTE {
7188
    # Implemented by CYGPKG_LIBC_I18N, active, enabled
7189
    # This value cannot be modified here.
7190
    # Flavor: data
7191
    # Current_value: 1
7192
    # Requires:  1 >= CYGINT_ISO_STDLIB_MULTIBYTE
7193
    #     CYGINT_ISO_STDLIB_MULTIBYTE == 1
7194
    #   --> 1
7195
 
7196
    # The following properties are affected by this value
7197
    # interface CYGINT_ISO_STDLIB_MULTIBYTE
7198
    #     Requires:  1 >= CYGINT_ISO_STDLIB_MULTIBYTE
7199
};
7200
 
7201
# Multibyte character implementation header
7202
#
7203
cdl_option CYGBLD_ISO_STDLIB_MULTIBYTE_HEADER {
7204
    # Flavor: booldata
7205
    # No user value, uncomment the following line to provide one.
7206
    # user_value 0 0
7207
    # value_source default
7208
    # Default value: 0 0
7209
};
7210
 
7211
# <
7212
# String functions
7213
#
7214
cdl_component CYGPKG_ISO_STRING {
7215
    # There is no associated value.
7216
};
7217
 
7218
# >
7219
# Number of implementations of strerror() function
7220
#
7221
cdl_interface CYGINT_ISO_STRERROR {
7222
    # Implemented by CYGPKG_ERROR_STRERROR, active, enabled
7223
    # This value cannot be modified here.
7224
    # Flavor: booldata
7225
    # Current value: 1 1
7226
    # Requires:  1 >= CYGINT_ISO_STRERROR
7227
    #     CYGINT_ISO_STRERROR == 1
7228
    #   --> 1
7229
 
7230
    # The following properties are affected by this value
7231
    # interface CYGINT_ISO_STRERROR
7232
    #     Requires:  1 >= CYGINT_ISO_STRERROR
7233
    # package CYGPKG_LIBC_STDIO
7234
    #     Requires: CYGINT_ISO_STRERROR
7235
};
7236
 
7237
# strerror() implementation header
7238
#
7239
cdl_option CYGBLD_ISO_STRERROR_HEADER {
7240
    # Flavor: booldata
7241
    # No user value, uncomment the following line to provide one.
7242
    # user_value 0 0
7243
    # The inferred value should not be edited directly.
7244
    inferred_value 1 
7245
    # value_source inferred
7246
    # Default value: 0 0
7247
 
7248
    # The following properties are affected by this value
7249
    # option CYGPKG_ERROR_STRERROR
7250
    #     Requires:  CYGBLD_ISO_STRERROR_HEADER == ""
7251
};
7252
 
7253
# memcpy() implementation header
7254
#
7255
cdl_option CYGBLD_ISO_MEMCPY_HEADER {
7256
    # Flavor: booldata
7257
    # No user value, uncomment the following line to provide one.
7258
    # user_value 0 0
7259
    # value_source default
7260
    # Default value: 0 0
7261
};
7262
 
7263
# memset() implementation header
7264
#
7265
cdl_option CYGBLD_ISO_MEMSET_HEADER {
7266
    # Flavor: booldata
7267
    # No user value, uncomment the following line to provide one.
7268
    # user_value 0 0
7269
    # value_source default
7270
    # Default value: 0 0
7271
};
7272
 
7273
# Number of implementations of strtok_r() function
7274
#
7275
cdl_interface CYGINT_ISO_STRTOK_R {
7276
    # Implemented by CYGPKG_LIBC_STRING, active, enabled
7277
    # This value cannot be modified here.
7278
    # Flavor: booldata
7279
    # Current value: 1 1
7280
    # Requires:  1 >= CYGINT_ISO_STRTOK_R
7281
    #     CYGINT_ISO_STRTOK_R == 1
7282
    #   --> 1
7283
 
7284
    # The following properties are affected by this value
7285
    # interface CYGINT_ISO_STRTOK_R
7286
    #     Requires:  1 >= CYGINT_ISO_STRTOK_R
7287
};
7288
 
7289
# strtok_r() implementation header
7290
#
7291
cdl_option CYGBLD_ISO_STRTOK_R_HEADER {
7292
    # Flavor: booldata
7293
    # No user value, uncomment the following line to provide one.
7294
    # user_value 0 0
7295
    # The inferred value should not be edited directly.
7296
    inferred_value 1 
7297
    # value_source inferred
7298
    # Default value: 0 0
7299
 
7300
    # The following properties are affected by this value
7301
    # package CYGPKG_LIBC_STRING
7302
    #     Requires:  CYGBLD_ISO_STRTOK_R_HEADER ==  ""
7303
};
7304
 
7305
# Number of implementations of locale-specific string  functions
7306
# This covers locale-dependent string functions such as strcoll()
7307
# and strxfrm().
7308
#
7309
cdl_interface CYGINT_ISO_STRING_LOCALE_FUNCS {
7310
    # Implemented by CYGPKG_LIBC_STRING, active, enabled
7311
    # This value cannot be modified here.
7312
    # Flavor: booldata
7313
    # Current value: 1 1
7314
    # Requires:  1 >= CYGINT_ISO_STRING_LOCALE_FUNCS
7315
    #     CYGINT_ISO_STRING_LOCALE_FUNCS == 1
7316
    #   --> 1
7317
 
7318
    # The following properties are affected by this value
7319
    # interface CYGINT_ISO_STRING_LOCALE_FUNCS
7320
    #     Requires:  1 >= CYGINT_ISO_STRING_LOCALE_FUNCS
7321
};
7322
 
7323
# Locale-specific string functions' implementation  header
7324
# This covers locale-dependent string functions such as strcoll()
7325
# and strxfrm().
7326
#
7327
cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER {
7328
    # Flavor: booldata
7329
    # No user value, uncomment the following line to provide one.
7330
    # user_value 0 0
7331
    # The inferred value should not be edited directly.
7332
    inferred_value 1 
7333
    # value_source inferred
7334
    # Default value: 0 0
7335
 
7336
    # The following properties are affected by this value
7337
    # package CYGPKG_LIBC_STRING
7338
    #     Requires:  CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER ==  ""
7339
};
7340
 
7341
# Number of implementations of BSD string functions
7342
#
7343
cdl_interface CYGINT_ISO_STRING_BSD_FUNCS {
7344
    # Implemented by CYGFUN_LIBC_STRING_BSD_FUNCS, active, enabled
7345
    # This value cannot be modified here.
7346
    # Flavor: booldata
7347
    # Current value: 1 1
7348
    # Requires:  1 >= CYGINT_ISO_STRING_BSD_FUNCS
7349
    #     CYGINT_ISO_STRING_BSD_FUNCS == 1
7350
    #   --> 1
7351
 
7352
    # The following properties are affected by this value
7353
    # interface CYGINT_ISO_STRING_BSD_FUNCS
7354
    #     Requires:  1 >= CYGINT_ISO_STRING_BSD_FUNCS
7355
};
7356
 
7357
# BSD string functions' implementation header
7358
#
7359
cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER {
7360
    # Flavor: booldata
7361
    # No user value, uncomment the following line to provide one.
7362
    # user_value 0 0
7363
    # The inferred value should not be edited directly.
7364
    inferred_value 1 
7365
    # value_source inferred
7366
    # Default value: 0 0
7367
 
7368
    # The following properties are affected by this value
7369
    # option CYGFUN_LIBC_STRING_BSD_FUNCS
7370
    #     Requires:  CYGBLD_ISO_STRING_BSD_FUNCS_HEADER ==  ""
7371
};
7372
 
7373
# Number of implementations of other mem*() functions
7374
#
7375
cdl_interface CYGINT_ISO_STRING_MEMFUNCS {
7376
    # Implemented by CYGPKG_LIBC_STRING, active, enabled
7377
    # This value cannot be modified here.
7378
    # Flavor: booldata
7379
    # Current value: 1 1
7380
    # Requires:  1 >= CYGINT_ISO_STRING_MEMFUNCS
7381
    #     CYGINT_ISO_STRING_MEMFUNCS == 1
7382
    #   --> 1
7383
 
7384
    # The following properties are affected by this value
7385
    # interface CYGINT_ISO_STRING_MEMFUNCS
7386
    #     Requires:  1 >= CYGINT_ISO_STRING_MEMFUNCS
7387
    # package CYGPKG_LIBC_STDIO
7388
    #     Requires: CYGINT_ISO_STRING_MEMFUNCS
7389
};
7390
 
7391
# Other mem*() functions' implementation header
7392
#
7393
cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER {
7394
    # Flavor: booldata
7395
    # No user value, uncomment the following line to provide one.
7396
    # user_value 0 0
7397
    # The inferred value should not be edited directly.
7398
    inferred_value 1 
7399
    # value_source inferred
7400
    # Default value: 0 0
7401
 
7402
    # The following properties are affected by this value
7403
    # package CYGPKG_LIBC_STRING
7404
    #     Requires:  CYGBLD_ISO_STRING_MEMFUNCS_HEADER ==  ""
7405
};
7406
 
7407
# Number of implementations of other ISO C str*()  functions
7408
# This covers the other str*() functions defined by ISO C.
7409
#
7410
cdl_interface CYGINT_ISO_STRING_STRFUNCS {
7411
    # Implemented by CYGPKG_LIBC_STRING, active, enabled
7412
    # This value cannot be modified here.
7413
    # Flavor: booldata
7414
    # Current value: 1 1
7415
    # Requires:  1 >= CYGINT_ISO_STRING_STRFUNCS
7416
    #     CYGINT_ISO_STRING_STRFUNCS == 1
7417
    #   --> 1
7418
 
7419
    # The following properties are affected by this value
7420
    # interface CYGINT_ISO_STRING_STRFUNCS
7421
    #     Requires:  1 >= CYGINT_ISO_STRING_STRFUNCS
7422
    # option CYGFUN_INFRA_DUMMY_STRLEN
7423
    #     Requires: !CYGINT_ISO_STRING_STRFUNCS
7424
    # option CYGFUN_INFRA_DUMMY_STRLEN
7425
    #     DefaultValue:  CYGINT_ISO_STRING_STRFUNCS == 0
7426
    # package CYGPKG_LIBC_STDIO
7427
    #     Requires: CYGINT_ISO_STRING_STRFUNCS
7428
    # package CYGPKG_LIBC_STDLIB
7429
    #     Requires: CYGINT_ISO_STRING_STRFUNCS
7430
};
7431
 
7432
# Other ISO C str*() functions' implementation  header
7433
# This covers the other str*() functions defined by ISO C.
7434
#
7435
cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER {
7436
    # Flavor: booldata
7437
    # No user value, uncomment the following line to provide one.
7438
    # user_value 0 0
7439
    # The inferred value should not be edited directly.
7440
    inferred_value 1 
7441
    # value_source inferred
7442
    # Default value: 0 0
7443
 
7444
    # The following properties are affected by this value
7445
    # package CYGPKG_LIBC_STRING
7446
    #     Requires:  CYGBLD_ISO_STRING_STRFUNCS_HEADER ==  ""
7447
};
7448
 
7449
# <
7450
# Clock and time functionality
7451
#
7452
cdl_component CYGPKG_ISO_TIME {
7453
    # There is no associated value.
7454
};
7455
 
7456
# >
7457
# time_t implementation header
7458
#
7459
cdl_option CYGBLD_ISO_TIME_T_HEADER {
7460
    # Flavor: booldata
7461
    # No user value, uncomment the following line to provide one.
7462
    # user_value 0 0
7463
    # value_source default
7464
    # Default value: 0 0
7465
};
7466
 
7467
# clock_t implementation header
7468
#
7469
cdl_option CYGBLD_ISO_CLOCK_T_HEADER {
7470
    # Flavor: booldata
7471
    # No user value, uncomment the following line to provide one.
7472
    # user_value 0 0
7473
    # value_source default
7474
    # Default value: 0 0
7475
};
7476
 
7477
# struct timeval implementation header
7478
#
7479
cdl_option CYGBLD_ISO_STRUCTTIMEVAL_HEADER {
7480
    # Flavor: booldata
7481
    # No user value, uncomment the following line to provide one.
7482
    # user_value 0 0
7483
    # value_source default
7484
    # Default value: 0 0
7485
};
7486
 
7487
# Number of implementations of POSIX timer types
7488
#
7489
cdl_interface CYGINT_ISO_POSIX_TIMER_TYPES {
7490
    # No options implement this inferface
7491
    # This value cannot be modified here.
7492
    # Flavor: booldata
7493
    # Current value: 0 0
7494
    # Requires:  1 >= CYGINT_ISO_POSIX_TIMER_TYPES
7495
    #     CYGINT_ISO_POSIX_TIMER_TYPES == 0
7496
    #   --> 1
7497
 
7498
    # The following properties are affected by this value
7499
    # interface CYGINT_ISO_POSIX_TIMER_TYPES
7500
    #     Requires:  1 >= CYGINT_ISO_POSIX_TIMER_TYPES
7501
};
7502
 
7503
# POSIX timer types implementation header
7504
#
7505
cdl_option CYGBLD_ISO_POSIX_TIMER_TYPES_HEADER {
7506
    # Flavor: booldata
7507
    # No user value, uncomment the following line to provide one.
7508
    # user_value 0 0
7509
    # value_source default
7510
    # Default value: 0 0
7511
};
7512
 
7513
# Number of implementations of POSIX clock types
7514
#
7515
cdl_interface CYGINT_ISO_POSIX_CLOCK_TYPES {
7516
    # No options implement this inferface
7517
    # This value cannot be modified here.
7518
    # Flavor: booldata
7519
    # Current value: 0 0
7520
    # Requires:  1 >= CYGINT_ISO_POSIX_CLOCK_TYPES
7521
    #     CYGINT_ISO_POSIX_CLOCK_TYPES == 0
7522
    #   --> 1
7523
 
7524
    # The following properties are affected by this value
7525
    # interface CYGINT_ISO_POSIX_CLOCK_TYPES
7526
    #     Requires:  1 >= CYGINT_ISO_POSIX_CLOCK_TYPES
7527
};
7528
 
7529
# POSIX clock types implementation header
7530
#
7531
cdl_option CYGBLD_ISO_POSIX_CLOCK_TYPES_HEADER {
7532
    # Flavor: booldata
7533
    # No user value, uncomment the following line to provide one.
7534
    # user_value 0 0
7535
    # value_source default
7536
    # Default value: 0 0
7537
};
7538
 
7539
# Number of implementations of ISO C types
7540
#
7541
cdl_interface CYGINT_ISO_C_TIME_TYPES {
7542
    # Implemented by CYGPKG_LIBC_TIME, active, enabled
7543
    # This value cannot be modified here.
7544
    # Flavor: booldata
7545
    # Current value: 1 1
7546
    # Requires:  1 >= CYGINT_ISO_C_TIME_TYPES
7547
    #     CYGINT_ISO_C_TIME_TYPES == 1
7548
    #   --> 1
7549
 
7550
    # The following properties are affected by this value
7551
    # interface CYGINT_ISO_C_TIME_TYPES
7552
    #     Requires:  1 >= CYGINT_ISO_C_TIME_TYPES
7553
};
7554
 
7555
# ISO C time types implementation header
7556
#
7557
cdl_option CYGBLD_ISO_C_TIME_TYPES_HEADER {
7558
    # Flavor: booldata
7559
    # No user value, uncomment the following line to provide one.
7560
    # user_value 0 0
7561
    # The inferred value should not be edited directly.
7562
    inferred_value 1 
7563
    # value_source inferred
7564
    # Default value: 0 0
7565
 
7566
    # The following properties are affected by this value
7567
    # package CYGPKG_LIBC_TIME
7568
    #     Requires:  CYGBLD_ISO_C_TIME_TYPES_HEADER == ""
7569
};
7570
 
7571
# Number of implementations of POSIX timers
7572
#
7573
cdl_interface CYGINT_ISO_POSIX_TIMERS {
7574
    # No options implement this inferface
7575
    # This value cannot be modified here.
7576
    # Flavor: booldata
7577
    # Current value: 0 0
7578
    # Requires:  1 >= CYGINT_ISO_POSIX_TIMERS
7579
    #     CYGINT_ISO_POSIX_TIMERS == 0
7580
    #   --> 1
7581
 
7582
    # The following properties are affected by this value
7583
    # interface CYGINT_ISO_POSIX_TIMERS
7584
    #     Requires:  1 >= CYGINT_ISO_POSIX_TIMERS
7585
};
7586
 
7587
# POSIX timer implementation header
7588
#
7589
cdl_option CYGBLD_ISO_POSIX_TIMERS_HEADER {
7590
    # Flavor: booldata
7591
    # No user value, uncomment the following line to provide one.
7592
    # user_value 0 0
7593
    # value_source default
7594
    # Default value: 0 0
7595
};
7596
 
7597
# Number of implementations of POSIX clocks
7598
#
7599
cdl_interface CYGINT_ISO_POSIX_CLOCKS {
7600
    # No options implement this inferface
7601
    # This value cannot be modified here.
7602
    # Flavor: booldata
7603
    # Current value: 0 0
7604
    # Requires:  1 >= CYGINT_ISO_POSIX_CLOCKS
7605
    #     CYGINT_ISO_POSIX_CLOCKS == 0
7606
    #   --> 1
7607
 
7608
    # The following properties are affected by this value
7609
    # interface CYGINT_ISO_POSIX_CLOCKS
7610
    #     Requires:  1 >= CYGINT_ISO_POSIX_CLOCKS
7611
};
7612
 
7613
# POSIX clocks implementation header
7614
#
7615
cdl_option CYGBLD_ISO_POSIX_CLOCKS_HEADER {
7616
    # Flavor: booldata
7617
    # No user value, uncomment the following line to provide one.
7618
    # user_value 0 0
7619
    # value_source default
7620
    # Default value: 0 0
7621
};
7622
 
7623
# Number of implementations of ISO C clock functions
7624
#
7625
cdl_interface CYGINT_ISO_C_CLOCK_FUNCS {
7626
    # Implemented by CYGPKG_LIBC_TIME, active, enabled
7627
    # This value cannot be modified here.
7628
    # Flavor: booldata
7629
    # Current value: 1 1
7630
    # Requires:  1 >= CYGINT_ISO_C_CLOCK_FUNCS
7631
    #     CYGINT_ISO_C_CLOCK_FUNCS == 1
7632
    #   --> 1
7633
 
7634
    # The following properties are affected by this value
7635
    # interface CYGINT_ISO_C_CLOCK_FUNCS
7636
    #     Requires:  1 >= CYGINT_ISO_C_CLOCK_FUNCS
7637
};
7638
 
7639
# ISO C clock functions' implementation header
7640
#
7641
cdl_option CYGBLD_ISO_C_CLOCK_FUNCS_HEADER {
7642
    # Flavor: booldata
7643
    # No user value, uncomment the following line to provide one.
7644
    # user_value 0 0
7645
    # The inferred value should not be edited directly.
7646
    inferred_value 1 
7647
    # value_source inferred
7648
    # Default value: 0 0
7649
 
7650
    # The following properties are affected by this value
7651
    # package CYGPKG_LIBC_TIME
7652
    #     Requires:  CYGBLD_ISO_C_CLOCK_FUNCS_HEADER ==  ""
7653
};
7654
 
7655
# Number of implementations of tzset() function
7656
#
7657
cdl_interface CYGINT_ISO_TZSET {
7658
    # No options implement this inferface
7659
    # This value cannot be modified here.
7660
    # Flavor: booldata
7661
    # Current value: 0 0
7662
    # Requires:  1 >= CYGINT_ISO_TZSET
7663
    #     CYGINT_ISO_TZSET == 0
7664
    #   --> 1
7665
 
7666
    # The following properties are affected by this value
7667
    # interface CYGINT_ISO_TZSET
7668
    #     Requires:  1 >= CYGINT_ISO_TZSET
7669
};
7670
 
7671
# tzset() implementation header
7672
#
7673
cdl_option CYGBLD_ISO_TZSET_HEADER {
7674
    # Flavor: booldata
7675
    # No user value, uncomment the following line to provide one.
7676
    # user_value 0 0
7677
    # value_source default
7678
    # Default value: 0 0
7679
};
7680
 
7681
# <
7682
# Signal functionality
7683
#
7684
cdl_component CYGPKG_ISO_SIGNAL {
7685
    # There is no associated value.
7686
};
7687
 
7688
# >
7689
# Number of implementations of signal numbers
7690
#
7691
cdl_interface CYGINT_ISO_SIGNAL_NUMBERS {
7692
    # Implemented by CYGPKG_LIBC_SIGNALS, active, enabled
7693
    # This value cannot be modified here.
7694
    # Flavor: data
7695
    # Current_value: 1
7696
    # Requires:  1 >= CYGINT_ISO_SIGNAL_NUMBERS
7697
    #     CYGINT_ISO_SIGNAL_NUMBERS == 1
7698
    #   --> 1
7699
 
7700
    # The following properties are affected by this value
7701
    # interface CYGINT_ISO_SIGNAL_NUMBERS
7702
    #     Requires:  1 >= CYGINT_ISO_SIGNAL_NUMBERS
7703
    # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS
7704
    #     Requires: CYGINT_ISO_SIGNAL_NUMBERS
7705
    # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS
7706
    #     DefaultValue:  CYGINT_ISO_SIGNAL_NUMBERS != 0 &&  CYGINT_ISO_SIGNAL_IMPL != 0
7707
};
7708
 
7709
# Signal numbering implementation header
7710
# This header provides the mapping of signal
7711
# names (e.g. SIGBUS) to numbers.
7712
#
7713
cdl_option CYGBLD_ISO_SIGNAL_NUMBERS_HEADER {
7714
    # Flavor: booldata
7715
    # No user value, uncomment the following line to provide one.
7716
    # user_value 0 0
7717
    # The inferred value should not be edited directly.
7718
    inferred_value 1 
7719
    # value_source inferred
7720
    # Default value: 0 0
7721
 
7722
    # The following properties are affected by this value
7723
    # package CYGPKG_LIBC_SIGNALS
7724
    #     Requires:  CYGBLD_ISO_SIGNAL_NUMBERS_HEADER ==  ""
7725
};
7726
 
7727
# Number of signal implementations
7728
#
7729
cdl_interface CYGINT_ISO_SIGNAL_IMPL {
7730
    # Implemented by CYGPKG_LIBC_SIGNALS, active, enabled
7731
    # This value cannot be modified here.
7732
    # Flavor: data
7733
    # Current_value: 1
7734
    # Requires:  1 >= CYGINT_ISO_SIGNAL_IMPL
7735
    #     CYGINT_ISO_SIGNAL_IMPL == 1
7736
    #   --> 1
7737
 
7738
    # The following properties are affected by this value
7739
    # interface CYGINT_ISO_SIGNAL_IMPL
7740
    #     Requires:  1 >= CYGINT_ISO_SIGNAL_IMPL
7741
    # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS
7742
    #     Requires: CYGINT_ISO_SIGNAL_IMPL
7743
    # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS
7744
    #     DefaultValue:  CYGINT_ISO_SIGNAL_NUMBERS != 0 &&  CYGINT_ISO_SIGNAL_IMPL != 0
7745
};
7746
 
7747
# Signals implementation header
7748
#
7749
cdl_option CYGBLD_ISO_SIGNAL_IMPL_HEADER {
7750
    # Flavor: booldata
7751
    # No user value, uncomment the following line to provide one.
7752
    # user_value 0 0
7753
    # The inferred value should not be edited directly.
7754
    inferred_value 1 
7755
    # value_source inferred
7756
    # Default value: 0 0
7757
 
7758
    # The following properties are affected by this value
7759
    # package CYGPKG_LIBC_SIGNALS
7760
    #     Requires:  CYGBLD_ISO_SIGNAL_IMPL_HEADER ==  ""
7761
};
7762
 
7763
# POSIX real time signals feature test macro
7764
# This defines the POSIX feature test macro
7765
# that indicates that the POSIX real time signals
7766
# are present.
7767
#
7768
cdl_interface CYGINT_POSIX_REALTIME_SIGNALS {
7769
    # No options implement this inferface
7770
    # This value cannot be modified here.
7771
    # Flavor: data
7772
    # Current_value: 0
7773
    # Requires:  1 >= CYGINT_POSIX_REALTIME_SIGNALS
7774
    #     CYGINT_POSIX_REALTIME_SIGNALS == 0
7775
    #   --> 1
7776
 
7777
    # The following properties are affected by this value
7778
    # interface CYGINT_POSIX_REALTIME_SIGNALS
7779
    #     Requires:  1 >= CYGINT_POSIX_REALTIME_SIGNALS
7780
};
7781
 
7782
# <
7783
# Non-local jumps functionality
7784
#
7785
cdl_component CYGPKG_ISO_SETJMP {
7786
    # There is no associated value.
7787
};
7788
 
7789
# >
7790
# setjmp() / longjmp() implementations
7791
#
7792
cdl_interface CYGINT_ISO_SETJMP {
7793
    # Implemented by CYGPKG_LIBC_SETJMP, active, enabled
7794
    # This value cannot be modified here.
7795
    # Flavor: data
7796
    # Current_value: 1
7797
    # Requires:  1 >= CYGINT_ISO_SETJMP
7798
    #     CYGINT_ISO_SETJMP == 1
7799
    #   --> 1
7800
 
7801
    # The following properties are affected by this value
7802
    # interface CYGINT_ISO_SETJMP
7803
    #     Requires:  1 >= CYGINT_ISO_SETJMP
7804
};
7805
 
7806
# setjmp() / longjmp() implementation header
7807
#
7808
cdl_option CYGBLD_ISO_SETJMP_HEADER {
7809
    # Flavor: booldata
7810
    # No user value, uncomment the following line to provide one.
7811
    # user_value 0 0
7812
    # The inferred value should not be edited directly.
7813
    inferred_value 1 
7814
    # value_source inferred
7815
    # Default value: 0 0
7816
 
7817
    # The following properties are affected by this value
7818
    # package CYGPKG_LIBC_SETJMP
7819
    #     Requires:  CYGBLD_ISO_SETJMP_HEADER == ""
7820
};
7821
 
7822
# sigsetjmp() / siglongjmp() implementations
7823
#
7824
cdl_interface CYGINT_ISO_SIGSETJMP {
7825
    # No options implement this inferface
7826
    # This value cannot be modified here.
7827
    # Flavor: data
7828
    # Current_value: 0
7829
    # Requires:  1 >= CYGINT_ISO_SIGSETJMP
7830
    #     CYGINT_ISO_SIGSETJMP == 0
7831
    #   --> 1
7832
 
7833
    # The following properties are affected by this value
7834
    # interface CYGINT_ISO_SIGSETJMP
7835
    #     Requires:  1 >= CYGINT_ISO_SIGSETJMP
7836
};
7837
 
7838
# sigsetjmp() / siglongjmp() implementation header
7839
#
7840
cdl_option CYGBLD_ISO_SIGSETJMP_HEADER {
7841
    # Flavor: booldata
7842
    # No user value, uncomment the following line to provide one.
7843
    # user_value 0 0
7844
    # value_source default
7845
    # Default value: 0 0
7846
};
7847
 
7848
# <
7849
# Assertions implementation header
7850
#
7851
cdl_option CYGBLD_ISO_ASSERT_HEADER {
7852
    # Flavor: booldata
7853
    # No user value, uncomment the following line to provide one.
7854
    # user_value 0 0
7855
    # value_source default
7856
    # Default value: 0 0
7857
};
7858
 
7859
# POSIX file control
7860
# This covers the POSIX file control definitions,
7861
# normally found in 
7862
#
7863
cdl_component CYGPKG_ISO_POSIX_FCNTL {
7864
    # There is no associated value.
7865
};
7866
 
7867
# >
7868
# POSIX open flags implementation header
7869
#
7870
cdl_option CYGBLD_ISO_OFLAG_HEADER {
7871
    # Flavor: booldata
7872
    # No user value, uncomment the following line to provide one.
7873
    # user_value 0 0
7874
    # value_source default
7875
    # Default value: 0 0
7876
};
7877
 
7878
# POSIX fcntl() implementations
7879
#
7880
cdl_interface CYGINT_ISO_FCNTL {
7881
    # No options implement this inferface
7882
    # This value cannot be modified here.
7883
    # Flavor: data
7884
    # Current_value: 0
7885
    # Requires:  1 >= CYGINT_ISO_FCNTL
7886
    #     CYGINT_ISO_FCNTL == 0
7887
    #   --> 1
7888
 
7889
    # The following properties are affected by this value
7890
    # interface CYGINT_ISO_FCNTL
7891
    #     Requires:  1 >= CYGINT_ISO_FCNTL
7892
};
7893
 
7894
# POSIX fcntl() implementation header
7895
#
7896
cdl_option CYGBLD_ISO_FCNTL_HEADER {
7897
    # Flavor: booldata
7898
    # No user value, uncomment the following line to provide one.
7899
    # user_value 0 0
7900
    # value_source default
7901
    # Default value: 0 0
7902
};
7903
 
7904
# POSIX file open implementations
7905
#
7906
cdl_interface CYGINT_ISO_OPEN {
7907
    # No options implement this inferface
7908
    # This value cannot be modified here.
7909
    # Flavor: data
7910
    # Current_value: 0
7911
    # Requires:  1 >= CYGINT_ISO_OPEN
7912
    #     CYGINT_ISO_OPEN == 0
7913
    #   --> 1
7914
 
7915
    # The following properties are affected by this value
7916
    # interface CYGINT_ISO_OPEN
7917
    #     Requires:  1 >= CYGINT_ISO_OPEN
7918
};
7919
 
7920
# POSIX file open implementation header
7921
#
7922
cdl_option CYGBLD_ISO_OPEN_HEADER {
7923
    # Flavor: booldata
7924
    # No user value, uncomment the following line to provide one.
7925
    # user_value 0 0
7926
    # value_source default
7927
    # Default value: 0 0
7928
};
7929
 
7930
# <
7931
#  definitions implementation header
7932
#
7933
cdl_option CYGBLD_ISO_STAT_DEFS_HEADER {
7934
    # Flavor: booldata
7935
    # No user value, uncomment the following line to provide one.
7936
    # user_value 0 0
7937
    # value_source default
7938
    # Default value: 0 0
7939
};
7940
 
7941
# POSIX directory reading implementation
7942
#
7943
cdl_interface CYGINT_ISO_DIRENT {
7944
    # No options implement this inferface
7945
    # This value cannot be modified here.
7946
    # Flavor: data
7947
    # Current_value: 0
7948
    # Requires:  1 >= CYGINT_ISO_DIRENT
7949
    #     CYGINT_ISO_DIRENT == 0
7950
    #   --> 1
7951
 
7952
    # The following properties are affected by this value
7953
    # interface CYGINT_ISO_DIRENT
7954
    #     Requires:  1 >= CYGINT_ISO_DIRENT
7955
};
7956
 
7957
#  definitions implementation header
7958
#
7959
cdl_option CYGBLD_ISO_DIRENT_HEADER {
7960
    # Flavor: booldata
7961
    # No user value, uncomment the following line to provide one.
7962
    # user_value 0 0
7963
    # value_source default
7964
    # Default value: 0 0
7965
};
7966
 
7967
# POSIX  contents
7968
# This covers the types required by POSIX to be in
7969
# 
7970
#
7971
cdl_component CYGPKG_ISO_POSIX_TYPES {
7972
    # There is no associated value.
7973
};
7974
 
7975
# >
7976
# POSIX thread types implementations
7977
#
7978
cdl_interface CYGINT_ISO_PTHREADTYPES {
7979
    # No options implement this inferface
7980
    # This value cannot be modified here.
7981
    # Flavor: data
7982
    # Current_value: 0
7983
    # Requires:  1 >= CYGINT_ISO_PTHREADTYPES
7984
    #     CYGINT_ISO_PTHREADTYPES == 0
7985
    #   --> 1
7986
 
7987
    # The following properties are affected by this value
7988
    # interface CYGINT_ISO_PTHREADTYPES
7989
    #     Requires:  1 >= CYGINT_ISO_PTHREADTYPES
7990
    # interface CYGINT_ISO_PMUTEXTYPES
7991
    #     Requires:  1 >= CYGINT_ISO_PTHREADTYPES
7992
};
7993
 
7994
# POSIX thread types implementation header
7995
#
7996
cdl_option CYGBLD_ISO_PTHREADTYPES_HEADER {
7997
    # Flavor: booldata
7998
    # No user value, uncomment the following line to provide one.
7999
    # user_value 0 0
8000
    # value_source default
8001
    # Default value: 0 0
8002
};
8003
 
8004
# POSIX mutex types implementations
8005
#
8006
cdl_interface CYGINT_ISO_PMUTEXTYPES {
8007
    # No options implement this inferface
8008
    # This value cannot be modified here.
8009
    # Flavor: data
8010
    # Current_value: 0
8011
    # Requires:  1 >= CYGINT_ISO_PTHREADTYPES
8012
    #     CYGINT_ISO_PTHREADTYPES == 0
8013
    #   --> 1
8014
};
8015
 
8016
# POSIX mutex types implementation header
8017
#
8018
cdl_option CYGBLD_ISO_PMUTEXTYPES_HEADER {
8019
    # Flavor: booldata
8020
    # No user value, uncomment the following line to provide one.
8021
    # user_value 0 0
8022
    # value_source default
8023
    # Default value: 0 0
8024
};
8025
 
8026
# ssize_t implementation header
8027
#
8028
cdl_option CYGBLD_ISO_SSIZE_T_HEADER {
8029
    # Flavor: booldata
8030
    # No user value, uncomment the following line to provide one.
8031
    # user_value 0 0
8032
    # value_source default
8033
    # Default value: 0 0
8034
};
8035
 
8036
# Filesystem types implementation header
8037
#
8038
cdl_option CYGBLD_ISO_FSTYPES_HEADER {
8039
    # Flavor: booldata
8040
    # No user value, uncomment the following line to provide one.
8041
    # user_value 0 0
8042
    # value_source default
8043
    # Default value: 0 0
8044
};
8045
 
8046
# gid_t, pid_t, uid_t implementation header
8047
#
8048
cdl_option CYGBLD_ISO_SCHEDTYPES_HEADER {
8049
    # Flavor: booldata
8050
    # No user value, uncomment the following line to provide one.
8051
    # user_value 0 0
8052
    # value_source default
8053
    # Default value: 0 0
8054
};
8055
 
8056
# <
8057
# Non-POSIX  contents
8058
# This covers the extra types required by non-POSIX
8059
# packages to be in . These would normally
8060
# only be visible if _POSIX_SOURCE is not defined.
8061
#
8062
cdl_component CYGPKG_ISO_EXTRA_TYPES {
8063
    # There is no associated value.
8064
};
8065
 
8066
# >
8067
# BSD compatible types
8068
#
8069
cdl_interface CYGINT_ISO_BSDTYPES {
8070
    # No options implement this inferface
8071
    # This value cannot be modified here.
8072
    # Flavor: data
8073
    # Current_value: 0
8074
    # Requires:  1 >= CYGINT_ISO_BSDTYPES
8075
    #     CYGINT_ISO_BSDTYPES == 0
8076
    #   --> 1
8077
 
8078
    # The following properties are affected by this value
8079
    # interface CYGINT_ISO_BSDTYPES
8080
    #     Requires:  1 >= CYGINT_ISO_BSDTYPES
8081
};
8082
 
8083
# BSD types header
8084
#
8085
cdl_option CYGBLD_ISO_BSDTYPES_HEADER {
8086
    # Flavor: booldata
8087
    # No user value, uncomment the following line to provide one.
8088
    # user_value 0 0
8089
    # value_source default
8090
    # Default value: 0 0
8091
};
8092
 
8093
# <
8094
# Utsname structure
8095
#
8096
cdl_component CYGPKG_ISO_UTSNAME {
8097
    # There is no associated value.
8098
};
8099
 
8100
# >
8101
# Utsname header
8102
#
8103
cdl_option CYGBLD_ISO_UTSNAME_HEADER {
8104
    # Flavor: booldata
8105
    # No user value, uncomment the following line to provide one.
8106
    # user_value 0 0
8107
    # value_source default
8108
    # Default value: 0 0
8109
};
8110
 
8111
# <
8112
# POSIX scheduler
8113
#
8114
cdl_component CYGPKG_ISO_SCHED {
8115
    # There is no associated value.
8116
};
8117
 
8118
# >
8119
# POSIX scheduler implementations
8120
#
8121
cdl_interface CYGINT_ISO_SCHED_IMPL {
8122
    # No options implement this inferface
8123
    # This value cannot be modified here.
8124
    # Flavor: data
8125
    # Current_value: 0
8126
    # Requires:  1 >= CYGINT_ISO_SCHED_IMPL
8127
    #     CYGINT_ISO_SCHED_IMPL == 0
8128
    #   --> 1
8129
 
8130
    # The following properties are affected by this value
8131
    # interface CYGINT_ISO_SCHED_IMPL
8132
    #     Requires:  1 >= CYGINT_ISO_SCHED_IMPL
8133
};
8134
 
8135
# POSIX scheduler implementation header
8136
#
8137
cdl_option CYGBLD_ISO_SCHED_IMPL_HEADER {
8138
    # Flavor: booldata
8139
    # No user value, uncomment the following line to provide one.
8140
    # user_value 0 0
8141
    # value_source default
8142
    # Default value: 0 0
8143
};
8144
 
8145
# <
8146
# POSIX semaphores
8147
#
8148
cdl_component CYGPKG_ISO_SEMAPHORES {
8149
    # There is no associated value.
8150
};
8151
 
8152
# >
8153
# POSIX semaphore implementations
8154
#
8155
cdl_interface CYGINT_ISO_SEMAPHORES {
8156
    # No options implement this inferface
8157
    # This value cannot be modified here.
8158
    # Flavor: data
8159
    # Current_value: 0
8160
    # Requires:  1 >= CYGINT_ISO_SEMAPHORES
8161
    #     CYGINT_ISO_SEMAPHORES == 0
8162
    #   --> 1
8163
 
8164
    # The following properties are affected by this value
8165
    # interface CYGINT_ISO_SEMAPHORES
8166
    #     Requires:  1 >= CYGINT_ISO_SEMAPHORES
8167
};
8168
 
8169
# POSIX semaphore implementation header
8170
#
8171
cdl_option CYGBLD_ISO_SEMAPHORES_HEADER {
8172
    # Flavor: booldata
8173
    # No user value, uncomment the following line to provide one.
8174
    # user_value 0 0
8175
    # value_source default
8176
    # Default value: 0 0
8177
};
8178
 
8179
# <
8180
# POSIX message queues
8181
#
8182
cdl_component CYGPKG_ISO_MQUEUE {
8183
    # There is no associated value.
8184
};
8185
 
8186
# >
8187
# Implementations
8188
#
8189
cdl_interface CYGINT_ISO_MQUEUE {
8190
    # No options implement this inferface
8191
    # This value cannot be modified here.
8192
    # Flavor: data
8193
    # Current_value: 0
8194
    # Requires:  1 >= CYGINT_ISO_MQUEUE
8195
    #     CYGINT_ISO_MQUEUE == 0
8196
    #   --> 1
8197
 
8198
    # The following properties are affected by this value
8199
    # interface CYGINT_ISO_MQUEUE
8200
    #     Requires:  1 >= CYGINT_ISO_MQUEUE
8201
    # option CYGNUM_ISO_MQUEUE_OPEN_MAX
8202
    #     ActiveIf: CYGINT_ISO_MQUEUE
8203
    # option CYGNUM_ISO_MQUEUE_PRIO_MAX
8204
    #     ActiveIf: CYGINT_ISO_MQUEUE
8205
};
8206
 
8207
# Implementation header
8208
#
8209
cdl_option CYGBLD_ISO_MQUEUE_HEADER {
8210
    # Flavor: booldata
8211
    # No user value, uncomment the following line to provide one.
8212
    # user_value 0 0
8213
    # value_source default
8214
    # Default value: 0 0
8215
};
8216
 
8217
# Maximum number of open message queues
8218
#
8219
cdl_option CYGNUM_ISO_MQUEUE_OPEN_MAX {
8220
    # This option is not active
8221
    # ActiveIf constraint: CYGINT_ISO_MQUEUE
8222
    #     CYGINT_ISO_MQUEUE == 0
8223
    #   --> 0
8224
 
8225
    # Flavor: booldata
8226
    # No user value, uncomment the following line to provide one.
8227
    # user_value 0 0
8228
    # value_source default
8229
    # Default value:  CYGNUM_POSIX_MQUEUE_OPEN_MAX > 0 ? CYGNUM_POSIX_MQUEUE_OPEN_MAX : 0
8230
    #     CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0
8231
    #     CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0
8232
    #   --> 0 0
8233
};
8234
 
8235
# Maximum number of message priorities
8236
#
8237
cdl_option CYGNUM_ISO_MQUEUE_PRIO_MAX {
8238
    # This option is not active
8239
    # ActiveIf constraint: CYGINT_ISO_MQUEUE
8240
    #     CYGINT_ISO_MQUEUE == 0
8241
    #   --> 0
8242
 
8243
    # Flavor: booldata
8244
    # No user value, uncomment the following line to provide one.
8245
    # user_value 1 65535
8246
    # value_source default
8247
    # Default value: 1 65535
8248
};
8249
 
8250
# <
8251
# POSIX threads
8252
#
8253
cdl_component CYGPKG_ISO_PTHREAD {
8254
    # There is no associated value.
8255
};
8256
 
8257
# >
8258
# POSIX pthread implementations
8259
#
8260
cdl_interface CYGINT_ISO_PTHREAD_IMPL {
8261
    # No options implement this inferface
8262
    # This value cannot be modified here.
8263
    # Flavor: booldata
8264
    # Current value: 0 0
8265
    # Requires:  1 >= CYGINT_ISO_PTHREAD_IMPL
8266
    #     CYGINT_ISO_PTHREAD_IMPL == 0
8267
    #   --> 1
8268
 
8269
    # The following properties are affected by this value
8270
    # interface CYGINT_ISO_PTHREAD_IMPL
8271
    #     Requires:  1 >= CYGINT_ISO_PTHREAD_IMPL
8272
};
8273
 
8274
# POSIX pthread implementation header
8275
#
8276
cdl_option CYGBLD_ISO_PTHREAD_IMPL_HEADER {
8277
    # Flavor: booldata
8278
    # No user value, uncomment the following line to provide one.
8279
    # user_value 0 0
8280
    # value_source default
8281
    # Default value: 0 0
8282
};
8283
 
8284
# POSIX mutex/cond var implementations
8285
#
8286
cdl_interface CYGINT_ISO_PTHREAD_MUTEX {
8287
    # No options implement this inferface
8288
    # This value cannot be modified here.
8289
    # Flavor: booldata
8290
    # Current value: 0 0
8291
    # Requires:  1 >= CYGINT_ISO_PTHREAD_MUTEX
8292
    #     CYGINT_ISO_PTHREAD_MUTEX == 0
8293
    #   --> 1
8294
 
8295
    # The following properties are affected by this value
8296
    # interface CYGINT_ISO_PTHREAD_MUTEX
8297
    #     Requires:  1 >= CYGINT_ISO_PTHREAD_MUTEX
8298
};
8299
 
8300
# POSIX mutex/cond var implementation header
8301
#
8302
cdl_option CYGBLD_ISO_PTHREAD_MUTEX_HEADER {
8303
    # Flavor: booldata
8304
    # No user value, uncomment the following line to provide one.
8305
    # user_value 0 0
8306
    # value_source default
8307
    # Default value: 0 0
8308
};
8309
 
8310
# <
8311
# Limits
8312
#
8313
cdl_component CYGPKG_ISO_LIMITS {
8314
    # There is no associated value.
8315
};
8316
 
8317
# >
8318
# POSIX pthread limits implementations
8319
#
8320
cdl_interface CYGINT_ISO_POSIX_LIMITS {
8321
    # No options implement this inferface
8322
    # This value cannot be modified here.
8323
    # Flavor: data
8324
    # Current_value: 0
8325
    # Requires:  1 >= CYGINT_ISO_POSIX_LIMITS
8326
    #     CYGINT_ISO_POSIX_LIMITS == 0
8327
    #   --> 1
8328
 
8329
    # The following properties are affected by this value
8330
    # interface CYGINT_ISO_POSIX_LIMITS
8331
    #     Requires:  1 >= CYGINT_ISO_POSIX_LIMITS
8332
};
8333
 
8334
# POSIX pthread limits implementation header
8335
#
8336
cdl_option CYGBLD_ISO_POSIX_LIMITS_HEADER {
8337
    # Flavor: booldata
8338
    # No user value, uncomment the following line to provide one.
8339
    # user_value 0 0
8340
    # value_source default
8341
    # Default value: 0 0
8342
};
8343
 
8344
# OPEN_MAX implementation header
8345
#
8346
cdl_option CYGBLD_ISO_OPEN_MAX_HEADER {
8347
    # Flavor: booldata
8348
    # No user value, uncomment the following line to provide one.
8349
    # user_value 0 0
8350
    # value_source default
8351
    # Default value: 0 0
8352
};
8353
 
8354
# LINK_MAX implementation header
8355
#
8356
cdl_option CYGBLD_ISO_LINK_MAX_HEADER {
8357
    # Flavor: booldata
8358
    # No user value, uncomment the following line to provide one.
8359
    # user_value 0 0
8360
    # value_source default
8361
    # Default value: 0 0
8362
};
8363
 
8364
# NAME_MAX implementation header
8365
#
8366
cdl_option CYGBLD_ISO_NAME_MAX_HEADER {
8367
    # Flavor: booldata
8368
    # No user value, uncomment the following line to provide one.
8369
    # user_value 0 0
8370
    # value_source default
8371
    # Default value: 0 0
8372
};
8373
 
8374
# PATH_MAX implementation header
8375
#
8376
cdl_option CYGBLD_ISO_PATH_MAX_HEADER {
8377
    # Flavor: booldata
8378
    # No user value, uncomment the following line to provide one.
8379
    # user_value 0 0
8380
    # value_source default
8381
    # Default value: 0 0
8382
};
8383
 
8384
# <
8385
# POSIX termios
8386
#
8387
cdl_component CYGPKG_ISO_TERMIOS {
8388
    # There is no associated value.
8389
};
8390
 
8391
# >
8392
# POSIX termios implementations
8393
#
8394
cdl_interface CYGINT_ISO_TERMIOS {
8395
    # Implemented by CYGPKG_IO_SERIAL_TERMIOS, active, disabled
8396
    # This value cannot be modified here.
8397
    # Flavor: data
8398
    # Current_value: 0
8399
    # Requires:  1 >= CYGINT_ISO_TERMIOS
8400
    #     CYGINT_ISO_TERMIOS == 0
8401
    #   --> 1
8402
 
8403
    # The following properties are affected by this value
8404
    # interface CYGINT_ISO_TERMIOS
8405
    #     Requires:  1 >= CYGINT_ISO_TERMIOS
8406
};
8407
 
8408
# POSIX termios implementation header
8409
#
8410
cdl_option CYGBLD_ISO_TERMIOS_HEADER {
8411
    # Flavor: booldata
8412
    # No user value, uncomment the following line to provide one.
8413
    # user_value 0 0
8414
    # value_source default
8415
    # Default value: 0 0
8416
};
8417
 
8418
# <
8419
# Dynamic load API
8420
#
8421
cdl_component CYGPKG_ISO_DLFCN {
8422
    # There is no associated value.
8423
};
8424
 
8425
# >
8426
# Dynamic load implementations
8427
#
8428
cdl_interface CYGINT_ISO_DLFCN {
8429
    # No options implement this inferface
8430
    # This value cannot be modified here.
8431
    # Flavor: data
8432
    # Current_value: 0
8433
    # Requires:  1 >= CYGINT_ISO_DLFCN
8434
    #     CYGINT_ISO_DLFCN == 0
8435
    #   --> 1
8436
 
8437
    # The following properties are affected by this value
8438
    # interface CYGINT_ISO_DLFCN
8439
    #     Requires:  1 >= CYGINT_ISO_DLFCN
8440
};
8441
 
8442
# Dynamic load implementation header
8443
#
8444
cdl_option CYGBLD_ISO_DLFCN_HEADER {
8445
    # Flavor: booldata
8446
    # No user value, uncomment the following line to provide one.
8447
    # user_value 0 0
8448
    # value_source default
8449
    # Default value: 0 0
8450
};
8451
 
8452
# <
8453
# UNIX standard functions
8454
#
8455
cdl_component CYGPKG_ISO_UNISTD {
8456
    # There is no associated value.
8457
};
8458
 
8459
# >
8460
# POSIX timer operations implementations
8461
#
8462
cdl_interface CYGINT_ISO_POSIX_TIMER_OPS {
8463
    # No options implement this inferface
8464
    # This value cannot be modified here.
8465
    # Flavor: booldata
8466
    # Current value: 0 0
8467
    # Requires:  1 >= CYGINT_ISO_POSIX_TIMER_OPS
8468
    #     CYGINT_ISO_POSIX_TIMER_OPS == 0
8469
    #   --> 1
8470
 
8471
    # The following properties are affected by this value
8472
    # interface CYGINT_ISO_POSIX_TIMER_OPS
8473
    #     Requires:  1 >= CYGINT_ISO_POSIX_TIMER_OPS
8474
};
8475
 
8476
# POSIX timer operations implementation header
8477
#
8478
cdl_option CYGBLD_ISO_POSIX_TIMER_OPS_HEADER {
8479
    # Flavor: booldata
8480
    # No user value, uncomment the following line to provide one.
8481
    # user_value 0 0
8482
    # value_source default
8483
    # Default value: 0 0
8484
};
8485
 
8486
# POSIX sleep() implementations
8487
#
8488
cdl_interface CYGINT_ISO_POSIX_SLEEP {
8489
    # No options implement this inferface
8490
    # This value cannot be modified here.
8491
    # Flavor: booldata
8492
    # Current value: 0 0
8493
    # Requires:  1 >= CYGINT_ISO_POSIX_SLEEP
8494
    #     CYGINT_ISO_POSIX_SLEEP == 0
8495
    #   --> 1
8496
 
8497
    # The following properties are affected by this value
8498
    # interface CYGINT_ISO_POSIX_SLEEP
8499
    #     Requires:  1 >= CYGINT_ISO_POSIX_SLEEP
8500
};
8501
 
8502
# POSIX sleep() implementation header
8503
#
8504
cdl_option CYGBLD_ISO_POSIX_SLEEP_HEADER {
8505
    # Flavor: booldata
8506
    # No user value, uncomment the following line to provide one.
8507
    # user_value 0 0
8508
    # value_source default
8509
    # Default value: 0 0
8510
};
8511
 
8512
# <
8513
# select()/poll() functions
8514
#
8515
cdl_component CYGPKG_ISO_SELECT {
8516
    # There is no associated value.
8517
};
8518
 
8519
# >
8520
# select() implementations
8521
#
8522
cdl_interface CYGINT_ISO_SELECT {
8523
    # No options implement this inferface
8524
    # This value cannot be modified here.
8525
    # Flavor: booldata
8526
    # Current value: 0 0
8527
    # Requires:  1 >= CYGINT_ISO_SELECT
8528
    #     CYGINT_ISO_SELECT == 0
8529
    #   --> 1
8530
 
8531
    # The following properties are affected by this value
8532
    # interface CYGINT_ISO_SELECT
8533
    #     Requires:  1 >= CYGINT_ISO_SELECT
8534
};
8535
 
8536
# select() implementation header
8537
#
8538
cdl_option CYGBLD_ISO_SELECT_HEADER {
8539
    # Flavor: booldata
8540
    # No user value, uncomment the following line to provide one.
8541
    # user_value 0 0
8542
    # value_source default
8543
    # Default value: 0 0
8544
};
8545
 
8546
# poll() implementations
8547
#
8548
cdl_interface CYGINT_ISO_POLL {
8549
    # No options implement this inferface
8550
    # This value cannot be modified here.
8551
    # Flavor: booldata
8552
    # Current value: 0 0
8553
    # Requires:  1 >= CYGINT_ISO_POLL
8554
    #     CYGINT_ISO_POLL == 0
8555
    #   --> 1
8556
 
8557
    # The following properties are affected by this value
8558
    # interface CYGINT_ISO_POLL
8559
    #     Requires:  1 >= CYGINT_ISO_POLL
8560
};
8561
 
8562
# poll() implementation header
8563
#
8564
cdl_option CYGBLD_ISO_POLL_HEADER {
8565
    # Flavor: booldata
8566
    # No user value, uncomment the following line to provide one.
8567
    # user_value 0 0
8568
    # value_source default
8569
    # Default value: 0 0
8570
};
8571
 
8572
# <
8573
# NetDB utility functions
8574
#
8575
cdl_component CYGPKG_ISO_NETDB {
8576
    # There is no associated value.
8577
};
8578
 
8579
# >
8580
# DNS implementations
8581
#
8582
cdl_interface CYGINT_ISO_DNS {
8583
    # No options implement this inferface
8584
    # This value cannot be modified here.
8585
    # Flavor: bool
8586
    # Current value: 0
8587
    # Requires:  1 >= CYGINT_ISO_DNS
8588
    #     CYGINT_ISO_DNS == 0
8589
    #   --> 1
8590
 
8591
    # The following properties are affected by this value
8592
    # interface CYGINT_ISO_DNS
8593
    #     Requires:  1 >= CYGINT_ISO_DNS
8594
};
8595
 
8596
# DNS implementation header
8597
#
8598
cdl_option CYGBLD_ISO_DNS_HEADER {
8599
    # Flavor: booldata
8600
    # No user value, uncomment the following line to provide one.
8601
    # user_value 0 0
8602
    # value_source default
8603
    # Default value: 0 0
8604
};
8605
 
8606
# Protocol network database implementations
8607
#
8608
cdl_interface CYGINT_ISO_NETDB_PROTO {
8609
    # No options implement this inferface
8610
    # This value cannot be modified here.
8611
    # Flavor: bool
8612
    # Current value: 0
8613
    # Requires:  1 >= CYGINT_ISO_NETDB_PROTO
8614
    #     CYGINT_ISO_NETDB_PROTO == 0
8615
    #   --> 1
8616
 
8617
    # The following properties are affected by this value
8618
    # interface CYGINT_ISO_NETDB_PROTO
8619
    #     Requires:  1 >= CYGINT_ISO_NETDB_PROTO
8620
};
8621
 
8622
# Protocol network database implementation header
8623
#
8624
cdl_option CYGBLD_ISO_NETDB_PROTO_HEADER {
8625
    # Flavor: booldata
8626
    # No user value, uncomment the following line to provide one.
8627
    # user_value 0 0
8628
    # value_source default
8629
    # Default value: 0 0
8630
};
8631
 
8632
# Services network database implementations
8633
#
8634
cdl_interface CYGINT_ISO_NETDB_SERV {
8635
    # No options implement this inferface
8636
    # This value cannot be modified here.
8637
    # Flavor: bool
8638
    # Current value: 0
8639
    # Requires:  1 >= CYGINT_ISO_NETDB_SERV
8640
    #     CYGINT_ISO_NETDB_SERV == 0
8641
    #   --> 1
8642
 
8643
    # The following properties are affected by this value
8644
    # interface CYGINT_ISO_NETDB_SERV
8645
    #     Requires:  1 >= CYGINT_ISO_NETDB_SERV
8646
};
8647
 
8648
# Services network database implementation header
8649
#
8650
cdl_option CYGBLD_ISO_NETDB_SERV_HEADER {
8651
    # Flavor: booldata
8652
    # No user value, uncomment the following line to provide one.
8653
    # user_value 0 0
8654
    # value_source default
8655
    # Default value: 0 0
8656
};
8657
 
8658
# <
8659
# Build options
8660
# Package specific build options including control over
8661
# compiler flags used only in building this package,
8662
# and details of which tests are built.
8663
#
8664
cdl_component CYGPKG_ISOINFRA_OPTIONS {
8665
    # There is no associated value.
8666
};
8667
 
8668
# >
8669
# Additional compiler flags
8670
# This option modifies the set of compiler flags for
8671
# building the ISO C and POSIX infrastructure package.
8672
# These flags are used in addition to the set of global flags.
8673
#
8674
cdl_option CYGPKG_ISOINFRA_CFLAGS_ADD {
8675
    # Flavor: data
8676
    # No user value, uncomment the following line to provide one.
8677
    # user_value ""
8678
    # value_source default
8679
    # Default value: ""
8680
};
8681
 
8682
# Suppressed compiler flags
8683
# This option modifies the set of compiler flags for
8684
# building the ISO C and POSIX infrastructure package.
8685
# These flags are removed from the set of global flags
8686
# if present.
8687
#
8688
cdl_option CYGPKG_ISOINFRA_CFLAGS_REMOVE {
8689
    # Flavor: data
8690
    # No user value, uncomment the following line to provide one.
8691
    # user_value ""
8692
    # value_source default
8693
    # Default value: ""
8694
};
8695
 
8696
# <
8697
# <
8698
# ISO C library
8699
# doc: ref/libc.html
8700
# The packages under this package enable compatibility with the ISO C
8701
# standard - ISO/IEC 9899:1990. This allows the user application to use
8702
# well known standard C library functions, and in eCos starts a thread
8703
# to invoke the user function main(). This package is a top-level placeholder
8704
# to contain the implementations.
8705
#
8706
cdl_package CYGPKG_LIBC {
8707
    # Packages cannot be added or removed, nor can their version be changed,
8708
    # simply by editing their value. Instead the appropriate configuration
8709
    # should be used to perform these actions.
8710
 
8711
    # This value cannot be modified here.
8712
    # Flavor: booldata
8713
    # Current value: 1 v2_0
8714
 
8715
    # The following properties are affected by this value
8716
    # component CYGNUM_LIBM_COMPATIBILITY
8717
    #     Requires: CYGPKG_LIBC
8718
};
8719
 
8720
# >
8721
# ISO C library internationalization functions
8722
# doc: ref/libc.html
8723
# This package provides internationalization functions specified by the
8724
# ISO C standard - ISO/IEC 9899:1990. These include locale-related
8725
# functionality and  functionality.
8726
#
8727
cdl_package CYGPKG_LIBC_I18N {
8728
    # Packages cannot be added or removed, nor can their version be changed,
8729
    # simply by editing their value. Instead the appropriate configuration
8730
    # should be used to perform these actions.
8731
 
8732
    # This value cannot be modified here.
8733
    # Flavor: booldata
8734
    # Current value: 1 v2_0
8735
    # Requires: CYGPKG_ISOINFRA
8736
    #     CYGPKG_ISOINFRA == v2_0
8737
    #   --> 1
8738
 
8739
    # The following properties are affected by this value
8740
    # package CYGPKG_LIBC_STDIO
8741
    #     Requires: CYGPKG_LIBC_I18N
8742
};
8743
 
8744
# >
8745
# Supported locales
8746
# These options determine which locales other than the "C" locale
8747
# are supported and hence contribute to the size of the executable.
8748
#
8749
cdl_component CYGPKG_LIBC_I18N_LOCALES {
8750
    # There is no associated value.
8751
};
8752
 
8753
# >
8754
# Support for multiple locales required
8755
#
8756
cdl_interface CYGINT_LIBC_I18N_MB_REQUIRED {
8757
    # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_SJIS, active, disabled
8758
    # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_JIS, active, disabled
8759
    # Implemented by CYGFUN_LIBC_I18N_LOCALE_C_EUCJP, active, disabled
8760
    # This value cannot be modified here.
8761
    # Flavor: booldata
8762
    # Current value: 0 0
8763
    # Requires:  CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER ==  ""
8764
    #     CYGBLD_ISO_STDLIB_MB_CUR_MAX_HEADER == 0
8765
    #   --> 0
8766
 
8767
    # The following properties are affected by this value
8768
};
8769
 
8770
# C-SJIS locale support
8771
# This option controls if the "C-SJIS" locale will be
8772
# supported by setlocale().  The locale is a hybrid locale
8773
# that is mostly the "C" locale with Japanese SJIS multibyte
8774
# support added.
8775
#
8776
cdl_option CYGFUN_LIBC_I18N_LOCALE_C_SJIS {
8777
    # Flavor: bool
8778
    # No user value, uncomment the following line to provide one.
8779
    # user_value 0
8780
    # value_source default
8781
    # Default value: 0
8782
 
8783
    # The following properties are affected by this value
8784
    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
8785
    #     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
8786
    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
8787
    #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))
8788
};
8789
 
8790
# C-JIS locale support
8791
# This option controls if the "C-JIS" locale will be
8792
# supported by setlocale().  The locale is a hybrid locale
8793
# that is mostly the "C" locale with Japanese JIS multibyte
8794
# support added.
8795
#
8796
cdl_option CYGFUN_LIBC_I18N_LOCALE_C_JIS {
8797
    # Flavor: bool
8798
    # No user value, uncomment the following line to provide one.
8799
    # user_value 0
8800
    # value_source default
8801
    # Default value: 0
8802
 
8803
    # The following properties are affected by this value
8804
    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
8805
    #     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
8806
    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
8807
    #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))
8808
};
8809
 
8810
# C-EUCJP locale support
8811
# This option controls if the "C-EUCJP" locale will be
8812
# supported by setlocale().  The locale is a hybrid locale
8813
# that is mostly the "C" locale with Japanese EUCJP multibyte
8814
# support added.
8815
#
8816
cdl_option CYGFUN_LIBC_I18N_LOCALE_C_EUCJP {
8817
    # Flavor: bool
8818
    # No user value, uncomment the following line to provide one.
8819
    # user_value 0
8820
    # value_source default
8821
    # Default value: 0
8822
 
8823
    # The following properties are affected by this value
8824
    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
8825
    #     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
8826
    # option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE
8827
    #     DefaultValue:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))
8828
};
8829
 
8830
# <
8831
# Per-thread multibyte state
8832
# This option controls whether the multibyte character
8833
# handling functions mblen(), mbtowc(), and wctomb(),
8834
# have their state recorded on a per-thread
8835
# basis rather than global. If this option is
8836
# disabled, some per-thread space can be saved.
8837
# Enabling this option will use three slots
8838
# of kernel per-thread data. You should ensure you
8839
# have enough slots configured for all your
8840
# per-thread data.
8841
#
8842
cdl_option CYGSEM_LIBC_I18N_PER_THREAD_MB {
8843
    # Flavor: bool
8844
    # No user value, uncomment the following line to provide one.
8845
    # user_value 0
8846
    # value_source default
8847
    # Default value: 0
8848
    # Requires: CYGVAR_KERNEL_THREADS_DATA
8849
    #     CYGVAR_KERNEL_THREADS_DATA == 1
8850
    #   --> 1
8851
};
8852
 
8853
# Size of locale name strings
8854
# This option controls the maximum size of
8855
# locale names and is used, among other things
8856
# to instantiate a static string used
8857
# as a return value from the
8858
# setlocale() function. When requesting the
8859
# current locale settings with LC_ALL, a string
8860
# must be constructed to contain this data, rather
8861
# than just returning a constant string. This
8862
# string data is stored in the static string.
8863
# This depends on the length of locale names,
8864
# hence this option. If just the C locale is
8865
# present, this option can be set as low as 2.
8866
#
8867
cdl_option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE {
8868
    # Flavor: data
8869
    # No user value, uncomment the following line to provide one.
8870
    # user_value 2
8871
    # value_source default
8872
    # Default value:  (CYGFUN_LIBC_I18N_LOCALE_C_EUCJP ? 8 :  (CYGFUN_LIBC_I18N_LOCALE_C_SJIS ? 7 :   (CYGFUN_LIBC_I18N_LOCALE_C_JIS ? 6 : 2)))
8873
    #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0
8874
    #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0
8875
    #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0
8876
    #   --> 2
8877
    # 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
8878
    #     CYGFUN_LIBC_I18N_LOCALE_C_EUCJP == 0
8879
    #     CYGFUN_LIBC_I18N_LOCALE_C_SJIS == 0
8880
    #     CYGFUN_LIBC_I18N_LOCALE_C_JIS == 0
8881
};
8882
 
8883
# Inline versions of  functions
8884
# This option chooses whether the simple character
8885
# classification and conversion functions (e.g.
8886
# isupper(), isalpha(), toupper(), etc.)
8887
# from  are available as inline
8888
# functions. This may improve performance and as
8889
# the functions are small, may even improve code
8890
# size.
8891
#
8892
cdl_option CYGIMP_LIBC_I18N_CTYPE_INLINES {
8893
    # Flavor: bool
8894
    # No user value, uncomment the following line to provide one.
8895
    # user_value 1
8896
    # value_source default
8897
    # Default value: 1
8898
    # Requires:  CYGBLD_ISO_CTYPE_HEADER ==  ""
8899
    #     CYGBLD_ISO_CTYPE_HEADER == 
8900
    #   --> 1
8901
};
8902
 
8903
# C library i18n functions build options
8904
# Package specific build options including control over
8905
# compiler flags used only in building this package,
8906
# and details of which tests are built.
8907
#
8908
cdl_component CYGPKG_LIBC_I18N_OPTIONS {
8909
    # There is no associated value.
8910
};
8911
 
8912
# >
8913
# Additional compiler flags
8914
# This option modifies the set of compiler flags for
8915
# building the C library. These flags are used in addition
8916
# to the set of global flags.
8917
#
8918
cdl_option CYGPKG_LIBC_I18N_CFLAGS_ADD {
8919
    # Flavor: data
8920
    # No user value, uncomment the following line to provide one.
8921
    # user_value ""
8922
    # value_source default
8923
    # Default value: ""
8924
};
8925
 
8926
# Suppressed compiler flags
8927
# This option modifies the set of compiler flags for
8928
# building the C library. These flags are removed from
8929
# the set of global flags if present.
8930
#
8931
cdl_option CYGPKG_LIBC_I18N_CFLAGS_REMOVE {
8932
    # Flavor: data
8933
    # No user value, uncomment the following line to provide one.
8934
    # user_value ""
8935
    # value_source default
8936
    # Default value: ""
8937
};
8938
 
8939
# C library i18n function tests
8940
# This option specifies the set of tests for the C library
8941
# i18n functions.
8942
#
8943
cdl_option CYGPKG_LIBC_I18N_TESTS {
8944
    # Calculated value:  "tests/ctype tests/setlocale tests/i18nmb"
8945
    # Flavor: data
8946
    # Current_value: tests/ctype tests/setlocale tests/i18nmb
8947
};
8948
 
8949
# <
8950
# <
8951
# ISO C library setjmp/longjmp functions
8952
# doc: ref/libc.html
8953
# This package provides non-local jumps based on setjmp() and
8954
# longjmp() in  as specified by the ISO C
8955
# standard - ISO/IEC 9899:1990.
8956
#
8957
cdl_package CYGPKG_LIBC_SETJMP {
8958
    # Packages cannot be added or removed, nor can their version be changed,
8959
    # simply by editing their value. Instead the appropriate configuration
8960
    # should be used to perform these actions.
8961
 
8962
    # This value cannot be modified here.
8963
    # Flavor: booldata
8964
    # Current value: 1 v2_0
8965
    # Requires: CYGPKG_ISOINFRA
8966
    #     CYGPKG_ISOINFRA == v2_0
8967
    #   --> 1
8968
    # Requires:  CYGBLD_ISO_SETJMP_HEADER == ""
8969
    #     CYGBLD_ISO_SETJMP_HEADER == 
8970
    #   --> 1
8971
};
8972
 
8973
# >
8974
# C library setjmp build options
8975
# Package specific build options including control over
8976
# compiler flags used only in building this package,
8977
# and details of which tests are built.
8978
#
8979
cdl_component CYGPKG_LIBC_SETJMP_OPTIONS {
8980
    # There is no associated value.
8981
};
8982
 
8983
# >
8984
# Additional compiler flags
8985
# This option modifies the set of compiler flags for
8986
# building this package. These flags are used in addition
8987
# to the set of global flags.
8988
#
8989
cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_ADD {
8990
    # Flavor: data
8991
    # No user value, uncomment the following line to provide one.
8992
    # user_value ""
8993
    # value_source default
8994
    # Default value: ""
8995
};
8996
 
8997
# Suppressed compiler flags
8998
# This option modifies the set of compiler flags for
8999
# building this package. These flags are removed from
9000
# the set of global flags if present.
9001
#
9002
cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_REMOVE {
9003
    # Flavor: data
9004
    # No user value, uncomment the following line to provide one.
9005
    # user_value ""
9006
    # value_source default
9007
    # Default value: ""
9008
};
9009
 
9010
# C library setjmp tests
9011
# This option specifies the set of tests for this package.
9012
#
9013
cdl_option CYGPKG_LIBC_SETJMP_TESTS {
9014
    # Calculated value:  "tests/setjmp"
9015
    # Flavor: data
9016
    # Current_value: tests/setjmp
9017
};
9018
 
9019
# <
9020
# <
9021
# ISO C library signal functions
9022
# doc: ref/libc.html
9023
# This component controls signal functionality,
9024
# as implemented in ISO/IEC 9899:1990 chapter 7.7 with
9025
# the signal() and raise() functions. As well as
9026
# allowing a program to send itself signals, it is
9027
# also possible to cause hardware exceptions to
9028
# be signalled to the program in a similar way.
9029
#
9030
cdl_package CYGPKG_LIBC_SIGNALS {
9031
    # Packages cannot be added or removed, nor can their version be changed,
9032
    # simply by editing their value. Instead the appropriate configuration
9033
    # should be used to perform these actions.
9034
 
9035
    # This value cannot be modified here.
9036
    # Flavor: booldata
9037
    # Current value: 1 v2_0
9038
    # Requires:  CYGBLD_ISO_SIGNAL_NUMBERS_HEADER ==  ""
9039
    #     CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == 
9040
    #   --> 1
9041
    # Requires:  CYGBLD_ISO_SIGNAL_IMPL_HEADER ==  ""
9042
    #     CYGBLD_ISO_SIGNAL_IMPL_HEADER == 
9043
    #   --> 1
9044
    # Requires: CYGPKG_ISOINFRA
9045
    #     CYGPKG_ISOINFRA == v2_0
9046
    #   --> 1
9047
};
9048
 
9049
# >
9050
# Thread safe signals
9051
# Because signal handlers are global, and not
9052
# thread-specific (as mandated by POSIX 1003.1)
9053
# it is possible for multiple threads to clash
9054
# and corrupt data if setting the same signal
9055
# handler at the same time. With this option
9056
# enabled, a kernel mutex will be used to protect
9057
# the shared data.
9058
#
9059
cdl_option CYGSEM_LIBC_SIGNALS_THREAD_SAFE {
9060
    # Flavor: bool
9061
    # No user value, uncomment the following line to provide one.
9062
    # user_value 1
9063
    # value_source default
9064
    # Default value: 1
9065
    # Requires: CYGPKG_KERNEL
9066
    #     CYGPKG_KERNEL == v2_0
9067
    #   --> 1
9068
};
9069
 
9070
# Hardware exceptions cause signals
9071
# This causes hardware exceptions like
9072
# arithmetic exceptions (e.g. divide by zero)
9073
# or bad memory accesses to be passed through as
9074
# signals. It is thus possible for a program to
9075
# handle these exceptions in a generic way using
9076
# the appropriate signal handlers. The details of
9077
# exactly which exceptions are passed through
9078
# under what circumstances depend on the
9079
# underlying HAL implementation. Consequently it
9080
# must be remembered that signal handlers cannot
9081
# be guaranteed to be invoked in the expected
9082
# circumstances if you do not know about the
9083
# underlying HAL implementation - it is possible
9084
# that the architecture is unable to detect that
9085
# exception.
9086
#
9087
cdl_component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS {
9088
    # Flavor: bool
9089
    # No user value, uncomment the following line to provide one.
9090
    # user_value 0
9091
    # value_source default
9092
    # Default value: 0
9093
    # Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL
9094
    #     CYGSEM_KERNEL_EXCEPTIONS_GLOBAL == 1
9095
    #   --> 1
9096
    # Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE
9097
    #     CYGSEM_KERNEL_EXCEPTIONS_DECODE == 0
9098
    #   --> 0
9099
 
9100
    # The following properties are affected by this value
9101
    # option CYGPKG_LIBC_SIGNALS_TESTS
9102
    #     Calculated:
9103
    #                     "tests/signal1"
9104
    #                     . ((CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS) ? " tests/signal2" : "")
9105
    #
9106
};
9107
 
9108
# >
9109
# Chain old exception handlers
9110
# When hardware exceptions are generated, it
9111
# is possible to chain into the old kernel exception
9112
# handler before calling any registered signal
9113
# handler. If this is not required, disable this
9114
# option and only the signal handler will be
9115
# called when this exception occurs. Disabling
9116
# this option will also save some space and code
9117
# usage.
9118
#
9119
cdl_option CYGSEM_LIBC_SIGNALS_CHAIN_HWEXCEPTIONS {
9120
    # This option is not active
9121
    # The parent CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS is disabled
9122
 
9123
    # Flavor: bool
9124
    # No user value, uncomment the following line to provide one.
9125
    # user_value 1
9126
    # value_source default
9127
    # Default value: 1
9128
};
9129
 
9130
# <
9131
# Inline versions of functions
9132
# Some functions can be made inline instead of
9133
# being function calls. These can be set here.
9134
#
9135
cdl_component CYGPKG_LIBC_SIGNALS_INLINE {
9136
    # There is no associated value.
9137
};
9138
 
9139
# >
9140
# raise()
9141
# Enabling this option makes raise() an inline function.
9142
#
9143
cdl_option CYGIMP_LIBC_SIGNALS_RAISE_INLINE {
9144
    # Flavor: bool
9145
    # No user value, uncomment the following line to provide one.
9146
    # user_value 1
9147
    # value_source default
9148
    # Default value: 1
9149
};
9150
 
9151
# signal()
9152
# Enabling this option makes signal() an inline function.
9153
#
9154
cdl_option CYGIMP_LIBC_SIGNALS_SIGNAL_INLINE {
9155
    # Flavor: bool
9156
    # No user value, uncomment the following line to provide one.
9157
    # user_value 1
9158
    # value_source default
9159
    # Default value: 1
9160
};
9161
 
9162
# <
9163
# Error handling
9164
# You may or may not want errno to be set by
9165
# certain functions. Not using errno could save
9166
# both space, code, and avoid worrying about
9167
# interactions between multiple threads when
9168
# setting it.
9169
#
9170
cdl_component CYGPKG_LIBC_SIGNALS_ERROR_HANDLING {
9171
    # There is no associated value.
9172
};
9173
 
9174
# >
9175
# Bad signal fatal
9176
# Enabling this option will cause an assertion
9177
# failure if the signal handling code is
9178
# passed a bad signal. Otherwise an error will
9179
# be returned, or in the case of a
9180
# hardware-generated exception it will be silently
9181
# ignored.
9182
#
9183
cdl_option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL {
9184
    # Flavor: bool
9185
    # No user value, uncomment the following line to provide one.
9186
    # user_value 0
9187
    # value_source default
9188
    # Default value: 0
9189
    # Requires: CYGDBG_USE_ASSERTS
9190
    #     CYGDBG_USE_ASSERTS == 0
9191
    #   --> 0
9192
};
9193
 
9194
# raise() sets errno
9195
# You may or may not want errno to be set by
9196
# raise() on error conditions. Not using errno
9197
# could save both space, code, and avoid worrying
9198
# about interactions between multiple threads when
9199
# setting it. Strictly ISO C does not mandate
9200
# that errno be set by raise().
9201
#
9202
cdl_option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO {
9203
    # Flavor: bool
9204
    # No user value, uncomment the following line to provide one.
9205
    # user_value 1
9206
    # value_source default
9207
    # Default value: 1
9208
    # Requires: CYGINT_ISO_ERRNO
9209
    #     CYGINT_ISO_ERRNO == 1
9210
    #   --> 1
9211
    # Requires: CYGINT_ISO_ERRNO_CODES
9212
    #     CYGINT_ISO_ERRNO_CODES == 1
9213
    #   --> 1
9214
};
9215
 
9216
# signal() sets errno
9217
# You may or may not want errno to be set by
9218
# signal() on error conditions. Not using errno
9219
# could save both space, code, and avoid worrying
9220
# about interactions between multiple threads when
9221
# setting it. Strictly ISO C mandates
9222
# that errno be set by signal().
9223
#
9224
cdl_option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO {
9225
    # Flavor: bool
9226
    # No user value, uncomment the following line to provide one.
9227
    # user_value 1
9228
    # value_source default
9229
    # Default value: 1
9230
    # Requires: CYGINT_ISO_ERRNO
9231
    #     CYGINT_ISO_ERRNO == 1
9232
    #   --> 1
9233
    # Requires: CYGINT_ISO_ERRNO_CODES
9234
    #     CYGINT_ISO_ERRNO_CODES == 1
9235
    #   --> 1
9236
};
9237
 
9238
# <
9239
# Tracing
9240
# These options control the trace output for the C
9241
# library internal signal implementation.
9242
#
9243
cdl_component CYGPKG_LIBC_SIGNALS_TRACING {
9244
    # There is no associated value.
9245
};
9246
 
9247
# >
9248
# Default trace level for raise()
9249
# This gives the default tracing level for the
9250
# raise() function. Higher numbers are more
9251
# verbose.
9252
#
9253
cdl_option CYGNUM_LIBC_SIGNALS_RAISE_TRACE_LEVEL {
9254
    # Flavor: data
9255
    # No user value, uncomment the following line to provide one.
9256
    # user_value 0
9257
    # value_source default
9258
    # Default value: 0
9259
    # Legal values: 0 to 1
9260
};
9261
 
9262
# Default hardware exception handler trace level
9263
# This gives the default tracing level for the
9264
# hardware exception handler function (if enabled).
9265
# Higher numbers are more verbose.
9266
#
9267
cdl_option CYGNUM_LIBC_SIGNALS_HWHANDLER_TRACE_LEVEL {
9268
    # Flavor: data
9269
    # No user value, uncomment the following line to provide one.
9270
    # user_value 0
9271
    # value_source default
9272
    # Default value: 0
9273
    # Legal values: 0 to 1
9274
};
9275
 
9276
# <
9277
# C library signal functions build options
9278
# Package specific build options including control over
9279
# compiler flags used only in building this package,
9280
# and details of which tests are built.
9281
#
9282
cdl_component CYGPKG_LIBC_SIGNALS_OPTIONS {
9283
    # There is no associated value.
9284
};
9285
 
9286
# >
9287
# Additional compiler flags
9288
# This option modifies the set of compiler flags for
9289
# building the C library. These flags are used in addition
9290
# to the set of global flags.
9291
#
9292
cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_ADD {
9293
    # Flavor: data
9294
    # No user value, uncomment the following line to provide one.
9295
    # user_value ""
9296
    # value_source default
9297
    # Default value: ""
9298
};
9299
 
9300
# Suppressed compiler flags
9301
# This option modifies the set of compiler flags for
9302
# building the C library. These flags are removed from
9303
# the set of global flags if present.
9304
#
9305
cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_REMOVE {
9306
    # Flavor: data
9307
    # No user value, uncomment the following line to provide one.
9308
    # user_value ""
9309
    # value_source default
9310
    # Default value: ""
9311
};
9312
 
9313
# C library signal function tests
9314
# This option specifies the set of tests for the C library
9315
# signal functions.
9316
#
9317
cdl_option CYGPKG_LIBC_SIGNALS_TESTS {
9318
    # Calculated value:
9319
    #                     "tests/signal1"
9320
    #                     . ((CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS) ? " tests/signal2" : "")
9321
    #
9322
    #     CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS == 0
9323
    # Flavor: data
9324
    # Current_value: tests/signal1
9325
};
9326
 
9327
# <
9328
# <
9329
# ISO environment startup/termination
9330
# doc: ref/c-library-startup.html
9331
# This package manages the control of the
9332
# environment (in the general sense) that an
9333
# application would require for full ISO C / POSIX
9334
# compatibility, including a main() entry point
9335
# supplied with arguments and an environment
9336
# (as retrievable by the getenv() function).
9337
# It also includes at the other end of things,
9338
# what happens when main() returns or exit() is
9339
# called.
9340
#
9341
cdl_package CYGPKG_LIBC_STARTUP {
9342
    # Packages cannot be added or removed, nor can their version be changed,
9343
    # simply by editing their value. Instead the appropriate configuration
9344
    # should be used to perform these actions.
9345
 
9346
    # This value cannot be modified here.
9347
    # Flavor: booldata
9348
    # Current value: 1 v2_0
9349
    # Requires: CYGPKG_ISOINFRA
9350
    #     CYGPKG_ISOINFRA == v2_0
9351
    #   --> 1
9352
    # Requires:  CYGINT_LIBC_STARTUP_CONTEXT == 1
9353
    #     CYGINT_LIBC_STARTUP_CONTEXT == 1
9354
    #   --> 1
9355
};
9356
 
9357
# >
9358
# main() can be invoked elsewhere
9359
# Implementors of this interface show that they
9360
# allow main() to be invoked elsewhere.
9361
#
9362
cdl_interface CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE {
9363
    # No options implement this inferface
9364
    # This value cannot be modified here.
9365
    # Flavor: bool
9366
    # Current value: 0
9367
 
9368
    # The following properties are affected by this value
9369
    # option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT
9370
    #     DefaultValue:  0 == CYGPKG_KERNEL && 0 ==
9371
    #                                 CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9372
    # component CYGSEM_LIBC_STARTUP_MAIN_THREAD
9373
    #     DefaultValue:  0 != CYGPKG_KERNEL && 0 ==  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9374
    # option CYGSEM_LIBC_STARTUP_MAIN_OTHER
9375
    #     DefaultValue:  0 !=  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9376
    # option CYGSEM_LIBC_STARTUP_MAIN_OTHER
9377
    #     Requires: CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9378
};
9379
 
9380
# Arguments to main()
9381
# This option allows the setting of the arguments
9382
# to the main function. This only has any effect
9383
# when cyg_iso_c_start() is used to start the
9384
# ISO C compatibility. This will automatically
9385
# invoke main() in an ISO C compatible fashion.
9386
# This option is in fact used as argv, and so is
9387
# an n-tuple of string constants. The final
9388
# entry must be NULL. Conventionally if argv[0]
9389
# is supplied, it is used to inform the program
9390
# of its name.
9391
#
9392
cdl_option CYGDAT_LIBC_ARGUMENTS {
9393
    # Flavor: data
9394
    # No user value, uncomment the following line to provide one.
9395
    # user_value "{\"\", NULL}"
9396
    # value_source default
9397
    # Default value: "{\"\", NULL}"
9398
};
9399
 
9400
# Startup context for main()
9401
# This component describes the options available for
9402
# what context main() is invoked in, such as in a thread
9403
# etc.
9404
#
9405
cdl_component CYGPKG_LIBC_STARTUP_CONTEXT {
9406
    # There is no associated value.
9407
};
9408
 
9409
# >
9410
# Startup context implementors
9411
#
9412
cdl_interface CYGINT_LIBC_STARTUP_CONTEXT {
9413
    # Implemented by CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT, active, disabled
9414
    # Implemented by CYGSEM_LIBC_STARTUP_MAIN_THREAD, active, enabled
9415
    # Implemented by CYGSEM_LIBC_STARTUP_MAIN_OTHER, active, disabled
9416
    # This value cannot be modified here.
9417
    # Flavor: data
9418
    # Current_value: 1
9419
 
9420
    # The following properties are affected by this value
9421
    # package CYGPKG_LIBC_STARTUP
9422
    #     Requires:  CYGINT_LIBC_STARTUP_CONTEXT == 1
9423
};
9424
 
9425
# Invoked from initialization context
9426
# With this option selected, main() will be
9427
# called via cyg_user_start() (unless the program
9428
# overrides the default cyg_user_start()). This
9429
# means it is run in the context of the system
9430
# initialization code, without the eCos kernel
9431
# scheduler running, and using the startup stack.
9432
# This means that any functions that may require
9433
# interactions with a running kernel will not
9434
# work (including libc functions, if configured
9435
# to be thread safe for example), so you should
9436
# restrict yourself to only calling fully
9437
# re-entrant functions from within main() in
9438
# this case.
9439
#
9440
cdl_option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT {
9441
    # Flavor: bool
9442
    # No user value, uncomment the following line to provide one.
9443
    # user_value 0
9444
    # value_source default
9445
    # Default value:  0 == CYGPKG_KERNEL && 0 ==
9446
    #                                 CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9447
    #     CYGPKG_KERNEL == v2_0
9448
    #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0
9449
    #   --> 0
9450
};
9451
 
9452
# Invoked as eCos thread
9453
# With this option selected, main() is invoked from an eCos
9454
# thread.
9455
#
9456
cdl_component CYGSEM_LIBC_STARTUP_MAIN_THREAD {
9457
    # Flavor: bool
9458
    # No user value, uncomment the following line to provide one.
9459
    # user_value 1
9460
    # value_source default
9461
    # Default value:  0 != CYGPKG_KERNEL && 0 ==  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9462
    #     CYGPKG_KERNEL == v2_0
9463
    #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0
9464
    #   --> 1
9465
    # Requires: CYGPKG_KERNEL
9466
    #     CYGPKG_KERNEL == v2_0
9467
    #   --> 1
9468
 
9469
    # The following properties are affected by this value
9470
    # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS
9471
    #     Requires:  CYGSEM_LIBC_STARTUP_MAIN_THREAD ||  (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD)
9472
};
9473
 
9474
# >
9475
# System provides stack for main()'s thread
9476
# This option controls whether the stack of
9477
# main()'s thread is provided by the application or
9478
# provided by the system. When disabled, the
9479
# application must declare a pointer variable
9480
# cyg_libc_main_stack which is a pointer to an
9481
# appropriately aligned region of memory. The
9482
# application must also declare a variable of
9483
# type `int' called cyg_libc_main_stack_size
9484
# which contains the size of the stack in bytes.
9485
# This must be a multiple of 8.
9486
#
9487
cdl_option CYGSEM_LIBC_MAIN_STACK_FROM_SYSTEM {
9488
    # Flavor: bool
9489
    # No user value, uncomment the following line to provide one.
9490
    # user_value 1
9491
    # value_source default
9492
    # Default value: 1
9493
};
9494
 
9495
# Priority of main()'s thread
9496
# This option is used to provide the thread
9497
# priority which main()'s thread runs at. Be
9498
# sure to check that this number is appropriate
9499
# for the kernel scheduler chosen. Different
9500
# kernel schedulers impose different restrictions
9501
# on the usable priorities.
9502
#
9503
cdl_option CYGNUM_LIBC_MAIN_THREAD_PRIORITY {
9504
    # Flavor: data
9505
    # No user value, uncomment the following line to provide one.
9506
    # user_value 10
9507
    # value_source default
9508
    # Default value: 10
9509
    # Legal values: 0 to 0x7fffffff
9510
};
9511
 
9512
# <
9513
# Invoked elsewhere
9514
# With this option selected, main() must be
9515
# invoked by a separate package, or by the user.
9516
#
9517
cdl_option CYGSEM_LIBC_STARTUP_MAIN_OTHER {
9518
    # Flavor: bool
9519
    # No user value, uncomment the following line to provide one.
9520
    # user_value 0
9521
    # value_source default
9522
    # Default value:  0 !=  CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9523
    #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0
9524
    #   --> 0
9525
    # Requires: CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE
9526
    #     CYGINT_LIBC_STARTUP_EXTERNAL_INVOKE_MAIN_POSSIBLE == 0
9527
    #   --> 0
9528
 
9529
    # The following properties are affected by this value
9530
    # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS
9531
    #     Requires:  CYGSEM_LIBC_STARTUP_MAIN_THREAD ||  (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD)
9532
};
9533
 
9534
# <
9535
# Don't allow main()'s stack size to be set
9536
# This interface describes whether the stack size
9537
# value set in this package is supported by the
9538
# implementation that invokes main. If not, that
9539
# option is disabled.
9540
#
9541
cdl_interface CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE {
9542
    # Implemented by CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT, active, disabled
9543
    # This value cannot be modified here.
9544
    # Flavor: bool
9545
    # Current value: 0
9546
 
9547
    # The following properties are affected by this value
9548
    # option CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE
9549
    #     ActiveIf: !CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE
9550
};
9551
 
9552
# main()'s default thread stack size
9553
# This option sets the size of the stack used
9554
# in the context that invokes main(). For example,
9555
# with an eCos kernel, when the cyg_iso_c_start()
9556
# function is used to invoke the user-supplied
9557
# main() function in an ISO C compatible fashion,
9558
# a separate thread is created to call main().
9559
# This option controls the size of that thread's
9560
# stack, which is allocated in the BSS. It
9561
# must be a multiple of 8. Note, a low number
9562
# here may be overriden by the HAL if there is
9563
# a minimum requirement to process interrupts
9564
# etc. This option cannot be set if the implementation
9565
# that invokes main() does not use it.
9566
#
9567
cdl_option CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE {
9568
    # ActiveIf constraint: !CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE
9569
    #     CYGINT_LIBC_STARTUP_MAIN_NO_STACK_SIZE == 0
9570
    #   --> 1
9571
 
9572
    # Flavor: data
9573
    # No user value, uncomment the following line to provide one.
9574
    # user_value 8192
9575
    # value_source default
9576
    # Default value: 8192
9577
    # Legal values: 16 to 0x7fffffff
9578
};
9579
 
9580
# Include atexit() function
9581
# This option enables the use of the atexit()
9582
# function, and ensure that the atexit handlers
9583
# are invoked from within exit() as defined in
9584
# the ISO C standard.
9585
#
9586
cdl_component CYGFUN_LIBC_ATEXIT {
9587
    # Flavor: bool
9588
    # No user value, uncomment the following line to provide one.
9589
    # user_value 1
9590
    # value_source default
9591
    # Default value: 1
9592
};
9593
 
9594
# >
9595
# Number of functions atexit() supports
9596
# This option sets the number of functions
9597
# that atexit() has room for. In other words,
9598
# the number of separate atexit() calls that
9599
# can be made before calling exit() or returning
9600
# from main() ( in an environment controlled by
9601
# cyg_iso_c_start() ). For strict compliance
9602
# with the ISO C standard this should be at
9603
# least 32.
9604
#
9605
cdl_option CYGNUM_LIBC_ATEXIT_HANDLERS {
9606
    # Flavor: data
9607
    # No user value, uncomment the following line to provide one.
9608
    # user_value 32
9609
    # value_source default
9610
    # Default value: 32
9611
    # Legal values: 1 to 0x7fffffff
9612
};
9613
 
9614
# <
9615
# Make exit() call fflush()
9616
# This option will ensure that all output
9617
# streams are flushed when exitting using
9618
# exit() as prescribed by the ISO C standard.
9619
#
9620
cdl_option CYGSEM_LIBC_EXIT_CALLS_FFLUSH {
9621
    # Flavor: bool
9622
    # No user value, uncomment the following line to provide one.
9623
    # user_value 1
9624
    # value_source default
9625
    # Default value:  0 != CYGINT_ISO_STDIO_FILEACCESS
9626
    #     CYGINT_ISO_STDIO_FILEACCESS == 1
9627
    #   --> 1
9628
    # Requires: CYGINT_ISO_STDIO_FILEACCESS
9629
    #     CYGINT_ISO_STDIO_FILEACCESS == 1
9630
    #   --> 1
9631
};
9632
 
9633
# _exit() stops all threads
9634
# If this option is enabled then _exit(),
9635
# which is called from exit() which itself is
9636
# called on return from main(), stops the eCos
9637
# scheduler. For strict POSIX 1003.1
9638
# compatibility this would be the normal
9639
# behaviour. To allow the thread to simply
9640
# exit, without affecting other threads, simply
9641
# leave this option disabled. If there is no eCos
9642
# scheduler, then _exit() simply loops
9643
# irrespective of the setting of this option.
9644
#
9645
cdl_option CYGSEM_LIBC_EXIT_STOPS_SYSTEM {
9646
    # Flavor: bool
9647
    # No user value, uncomment the following line to provide one.
9648
    # user_value 0
9649
    # value_source default
9650
    # Default value: 0
9651
    # Requires: CYGPKG_KERNEL
9652
    #     CYGPKG_KERNEL == v2_0
9653
    #   --> 1
9654
};
9655
 
9656
# Default environment
9657
# This option allows the setting of the default
9658
# contents of the environment. This is in fact
9659
# the contents of the global environment pointer
9660
# char **environ defined by POSIX 1003.1. Strings
9661
# must be of the form NAME=VALUE, and the final
9662
# entry must be NULL.
9663
#
9664
cdl_option CYGDAT_LIBC_DEFAULT_ENVIRONMENT {
9665
    # Flavor: data
9666
    # No user value, uncomment the following line to provide one.
9667
    # user_value "{ NULL }"
9668
    # value_source default
9669
    # Default value: "{ NULL }"
9670
};
9671
 
9672
# Invoke default static constructors
9673
# This option causes the C library to call
9674
# static constructors with default priority
9675
# from within the context of the main() thread,
9676
# working with the co-operation of the HAL.
9677
# This may be needed for environments that
9678
# expect static constructors to be run in a
9679
# thread context. Note that this uses an object
9680
# with priority 65534. Therefore do not use
9681
# priority 65534 for any other static objects
9682
# with this option enabled.
9683
#
9684
cdl_option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS {
9685
    # Flavor: bool
9686
    # No user value, uncomment the following line to provide one.
9687
    # user_value 0
9688
    # value_source default
9689
    # Default value: 0
9690
    # Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG
9691
    #     CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG == 0
9692
    #   --> 0
9693
    # Requires:  CYGSEM_LIBC_STARTUP_MAIN_THREAD ||  (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD)
9694
    #     CYGSEM_LIBC_STARTUP_MAIN_THREAD == 1
9695
    #     CYGSEM_LIBC_STARTUP_MAIN_OTHER == 0
9696
    #     CYGPKG_POSIX_PTHREAD (unknown) == 0
9697
    #   --> 1
9698
 
9699
    # The following properties are affected by this value
9700
    # option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG
9701
    #     Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS
9702
};
9703
 
9704
# ISO environment startup/termination build options
9705
# Package specific build options including control over
9706
# compiler flags used only in building this package,
9707
# and details of which tests are built.
9708
#
9709
cdl_component CYGPKG_LIBC_STARTUP_OPTIONS {
9710
    # There is no associated value.
9711
};
9712
 
9713
# >
9714
# Additional compiler flags
9715
# This option modifies the set of compiler flags for
9716
# building this package. These flags are used in addition
9717
# to the set of global flags.
9718
#
9719
cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_ADD {
9720
    # Flavor: data
9721
    # No user value, uncomment the following line to provide one.
9722
    # user_value ""
9723
    # value_source default
9724
    # Default value: ""
9725
};
9726
 
9727
# Suppressed compiler flags
9728
# This option modifies the set of compiler flags for
9729
# building this package. These flags are removed from
9730
# the set of global flags if present.
9731
#
9732
cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_REMOVE {
9733
    # Flavor: data
9734
    # No user value, uncomment the following line to provide one.
9735
    # user_value ""
9736
    # value_source default
9737
    # Default value: ""
9738
};
9739
 
9740
# ISO environment startup/termination tests
9741
# This option specifies the set of tests for this package.
9742
#
9743
cdl_option CYGPKG_LIBC_STARTUP_TESTS {
9744
    # Calculated value:  "tests/atexit"
9745
    # Flavor: data
9746
    # Current_value: tests/atexit
9747
};
9748
 
9749
# <
9750
# <
9751
# ISO C library standard input/output functions
9752
# doc: ref/libc.html
9753
# This package provides standard input/output functions associated
9754
# with the header file  as specified by the
9755
# ISO C standard - ISO/IEC 9899:1990.
9756
#
9757
cdl_package CYGPKG_LIBC_STDIO {
9758
    # Packages cannot be added or removed, nor can their version be changed,
9759
    # simply by editing their value. Instead the appropriate configuration
9760
    # should be used to perform these actions.
9761
 
9762
    # This value cannot be modified here.
9763
    # Flavor: booldata
9764
    # Current value: 1 v2_0
9765
    # Requires: CYGPKG_IO
9766
    #     CYGPKG_IO == v2_0
9767
    #   --> 1
9768
    # Requires: CYGPKG_IO_SERIAL_HALDIAG
9769
    #     CYGPKG_IO_SERIAL_HALDIAG == 1
9770
    #   --> 1
9771
    # Requires: CYGPKG_LIBC_I18N
9772
    #     CYGPKG_LIBC_I18N == v2_0
9773
    #   --> 1
9774
    # Requires:  CYGBLD_ISO_STDIO_FILETYPES_HEADER ==  ""
9775
    #     CYGBLD_ISO_STDIO_FILETYPES_HEADER == 
9776
    #   --> 1
9777
    # Requires:  CYGBLD_ISO_STDIO_FILEACCESS_HEADER ==  ""
9778
    #     CYGBLD_ISO_STDIO_FILEACCESS_HEADER == 
9779
    #   --> 1
9780
    # Requires:  CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER ==  ""
9781
    #     CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == 
9782
    #   --> 1
9783
    # Requires:  CYGBLD_ISO_STDIO_CHAR_IO_HEADER ==  ""
9784
    #     CYGBLD_ISO_STDIO_CHAR_IO_HEADER == 
9785
    #   --> 1
9786
    # Requires:  CYGBLD_ISO_STDIO_DIRECT_IO_HEADER ==  ""
9787
    #     CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == 
9788
    #   --> 1
9789
    # Requires:  CYGBLD_ISO_STDIO_ERROR_HEADER ==  ""
9790
    #     CYGBLD_ISO_STDIO_ERROR_HEADER == 
9791
    #   --> 1
9792
    # Requires:  CYGBLD_ISO_STDIO_STREAMS_HEADER ==  ""
9793
    #     CYGBLD_ISO_STDIO_STREAMS_HEADER == 
9794
    #   --> 1
9795
    # Requires: CYGPKG_ISOINFRA
9796
    #     CYGPKG_ISOINFRA == v2_0
9797
    #   --> 1
9798
    # Requires: CYGINT_ISO_ERRNO_CODES
9799
    #     CYGINT_ISO_ERRNO_CODES == 1
9800
    #   --> 1
9801
    # Requires: CYGINT_ISO_ERRNO
9802
    #     CYGINT_ISO_ERRNO == 1
9803
    #   --> 1
9804
    # Requires: CYGINT_ISO_STRERROR
9805
    #     CYGINT_ISO_STRERROR == 1
9806
    #   --> 1
9807
    # Requires: CYGINT_ISO_STRING_STRFUNCS
9808
    #     CYGINT_ISO_STRING_STRFUNCS == 1
9809
    #   --> 1
9810
    # Requires: CYGINT_ISO_STRING_MEMFUNCS
9811
    #     CYGINT_ISO_STRING_MEMFUNCS == 1
9812
    #   --> 1
9813
    # Requires: CYGINT_ISO_STDLIB_STRCONV
9814
    #     CYGINT_ISO_STDLIB_STRCONV == 1
9815
    #   --> 1
9816
 
9817
    # The following properties are affected by this value
9818
    # option CYGSEM_LIBM_USE_STDERR
9819
    #     Requires: CYGPKG_LIBC_STDIO
9820
};
9821
 
9822
# >
9823
# Inline versions of  functions
9824
# This option chooses whether some of the
9825
# particularly simple functions from
9826
#  are available as inline
9827
# functions. This may improve performance, and as
9828
# the functions are small, may even improve code
9829
# size.
9830
#
9831
cdl_option CYGIMP_LIBC_STDIO_INLINES {
9832
    # Flavor: bool
9833
    # No user value, uncomment the following line to provide one.
9834
    # user_value 1
9835
    # value_source default
9836
    # Default value: 1
9837
};
9838
 
9839
# Permitted number of open files
9840
# This option controls the guaranteed minimum
9841
# number of simultaneously open files. The ISO
9842
# C standard requires it to be defined (para
9843
# 7.9.1), and if strictly compliant, it must be
9844
# at least 8 (para 7.9.3). In practice it can be
9845
# as low as 3 - for stdin, stdout and stderr.
9846
#
9847
cdl_option FOPEN_MAX {
9848
    # Flavor: data
9849
    # No user value, uncomment the following line to provide one.
9850
    # user_value 8
9851
    # value_source default
9852
    # Default value: 8
9853
    # Legal values: 3 to 0x7fffffff
9854
};
9855
 
9856
# Maximum length of filename
9857
# This option defines the maximum allowed size of
9858
# a filename in characters. The ISO C standard
9859
# requires it to be defined (para 7.9.1).
9860
#
9861
cdl_option FILENAME_MAX {
9862
    # Flavor: data
9863
    # No user value, uncomment the following line to provide one.
9864
    # user_value 16
9865
    # value_source default
9866
    # Default value: 16
9867
    # Legal values: 1 to 0x7fffffff
9868
};
9869
 
9870
# Maximum length of filenames for temporary files
9871
# This option defines the maximum allowed size of
9872
# filenames for temporary files as generated by
9873
# tmpnam(). It is measured in characters, and the
9874
# ISO C standard requires it to be defined (para
9875
# 7.9.1).
9876
#
9877
cdl_option L_tmpnam {
9878
    # Flavor: data
9879
    # No user value, uncomment the following line to provide one.
9880
    # user_value 16
9881
    # value_source default
9882
    # Default value: 16
9883
    # Legal values: 1 to 0x7fffffff
9884
};
9885
 
9886
# Unique file names generated by tmpnam()
9887
# This option defines the minimum number of
9888
# unique file names generated by tmpnam(). The
9889
# ISO C standard requires it to be defined (para
9890
# 7.9.1).
9891
#
9892
cdl_option TMP_MAX {
9893
    # Flavor: data
9894
    # No user value, uncomment the following line to provide one.
9895
    # user_value 0
9896
    # value_source default
9897
    # Default value: 0
9898
    # Legal values: 0 to 0x7fffffff
9899
};
9900
 
9901
# Buffered I/O
9902
# This option controls whether input/output
9903
# through the  functions is buffered.
9904
# This may save some memory per file. It
9905
# is equivalent to putting every file into
9906
# non-buffered mode (_IONBF) through setvbuf(),
9907
# except now it can never be altered back to
9908
# buffered mode. Disabling buffering is strictly
9909
# non-compliant with the ISO C standard.
9910
#
9911
cdl_component CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO {
9912
    # Flavor: bool
9913
    # No user value, uncomment the following line to provide one.
9914
    # user_value 1
9915
    # value_source default
9916
    # Default value: 1
9917
 
9918
    # The following properties are affected by this value
9919
    # option BUFSIZ
9920
    #     Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0
9921
    # option CYGPKG_LIBC_STDIO_FILEIO
9922
    #     Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO
9923
};
9924
 
9925
# >
9926
# Default buffer size
9927
# This option defines the default size of buffer
9928
# used with calls to setbuf(), and is the default
9929
# size for buffered streams that have not had
9930
# either setbuf() or setvbuf() invoked on them.
9931
# It is exactly equivalent to the standard
9932
# constant BUFSIZ, except that it is 0 if
9933
# CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO is disabled.
9934
# The ISO C standard requires this to be defined
9935
# (para 7.9.1), and says it must be at least 256
9936
# (para 7.9.2).
9937
#
9938
cdl_option CYGNUM_LIBC_STDIO_BUFSIZE {
9939
    # Flavor: data
9940
    # No user value, uncomment the following line to provide one.
9941
    # user_value 256
9942
    # value_source default
9943
    # Default value: 256
9944
    # Legal values: 1 to 0x7fffffff
9945
 
9946
    # The following properties are affected by this value
9947
    # option BUFSIZ
9948
    #     Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0
9949
};
9950
 
9951
# setbuf()/setvbuf() allows dynamic setting
9952
# This option controls whether I/O buffers are
9953
# implemented dynamically within the stdio
9954
# implementation. Otherwise they will be static,
9955
# and cannot be changed by setbuf()/setvbuf(). If
9956
# they are static (i.e. this option is disabled),
9957
# any attempt to use an arbitrary buffer size, or
9958
# to pass a user-supplied buffer to setbuf() or
9959
# setvbuf() will fail - the buffer is implemented
9960
# internally as a static array taking the size
9961
# of the configuration option BUFSIZ. The only
9962
# exception is if a user buffer is not supplied,
9963
# and the buffer size requested is less than
9964
# BUFSIZ. In this case, the buffer will
9965
# be configured to only use that amount of
9966
# buffering. However the unused memory left over
9967
# will NOT be freed. If this option is enabled,
9968
# then setvbuf() can be used to assign a user supplied
9969
# buffer to the stream.
9970
# Either setting can be considered to
9971
# be compliant with the ISO C standard.
9972
#
9973
cdl_option CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF {
9974
    # Flavor: bool
9975
    # No user value, uncomment the following line to provide one.
9976
    # user_value 1
9977
    # value_source default
9978
    # Default value: 1
9979
 
9980
    # The following properties are affected by this value
9981
    # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC
9982
    #     Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF
9983
};
9984
 
9985
# setbuf()/setvbuf() uses malloc()
9986
# This option controls whether buffers set by setbuf() and
9987
# setvbuf() may be allocated using malloc().
9988
#
9989
cdl_option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC {
9990
    # Flavor: bool
9991
    # No user value, uncomment the following line to provide one.
9992
    # user_value 1
9993
    # value_source default
9994
    # Default value:  0 != CYGINT_ISO_MALLOC
9995
    #     CYGINT_ISO_MALLOC == 1
9996
    #   --> 1
9997
    # Requires: CYGINT_ISO_MALLOC
9998
    #     CYGINT_ISO_MALLOC == 1
9999
    #   --> 1
10000
    # Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF
10001
    #     CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF == 1
10002
    #   --> 1
10003
};
10004
 
10005
# <
10006
# Default buffer size (BUFSIZ)
10007
#
10008
cdl_option BUFSIZ {
10009
    # Calculated value: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0
10010
    #     CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1
10011
    #     CYGNUM_LIBC_STDIO_BUFSIZE == 256
10012
    # Flavor: data
10013
    # Current_value: 256
10014
};
10015
 
10016
# Support for ungetc()
10017
# This option controls whether ungetc() is
10018
# supported. If not, then some space can be
10019
# saved, and speed is improved. Note that you
10020
# MUST have this defined if you want to use the
10021
# scanf() family of functions.
10022
#
10023
cdl_option CYGFUN_LIBC_STDIO_ungetc {
10024
    # Flavor: bool
10025
    # No user value, uncomment the following line to provide one.
10026
    # user_value 1
10027
    # value_source default
10028
    # Default value: 1
10029
};
10030
 
10031
# Dynamic opening/closing of files
10032
# fopen() and fclose() use dynamic memory
10033
# allocation routines to allocate memory for
10034
# new FILE structure pointers. If a malloc
10035
# implementation is available, this option
10036
# may be enabled to use
10037
# fopen() and fclose(). If disabled, only the
10038
# default console streams - stdin, stdout and
10039
# stderr - will be available.
10040
#
10041
cdl_option CYGPKG_LIBC_STDIO_OPEN {
10042
    # Flavor: bool
10043
    # No user value, uncomment the following line to provide one.
10044
    # user_value 1
10045
    # value_source default
10046
    # Default value:  0 != CYGINT_ISO_MALLOC
10047
    #     CYGINT_ISO_MALLOC == 1
10048
    #   --> 1
10049
    # Requires: CYGINT_ISO_MALLOC
10050
    #     CYGINT_ISO_MALLOC == 1
10051
    #   --> 1
10052
};
10053
 
10054
# Default console device
10055
# This option allows you to choose the
10056
# default console device. In the current
10057
# implementation, all these devices begin
10058
# with the prefix /dev/ and are followed by
10059
# the name of a device. The name of the device
10060
# depends on the device drivers you have
10061
# configured in your system. For example,
10062
# /dev/ttydiag could be the HAL diagnostic output
10063
# pseudo-device, or /dev/tty0 could be your
10064
# first serial driver, depending on your
10065
# configuration.
10066
#
10067
cdl_option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE {
10068
    # Flavor: data
10069
    # No user value, uncomment the following line to provide one.
10070
    # user_value "\"/dev/ttydiag\""
10071
    # value_source default
10072
    # Default value: CYGDAT_IO_SERIAL_TTY_CONSOLE
10073
    #     CYGDAT_IO_SERIAL_TTY_CONSOLE == "\"/dev/ttydiag\""
10074
    #   --> "\"/dev/ttydiag\""
10075
};
10076
 
10077
# Floating point support
10078
# This component allows floating point support
10079
# to be enabled in certain standard I/O
10080
# functions.
10081
#
10082
cdl_component CYGPKG_LIBC_STDIO_FLOATING_POINT {
10083
    # There is no associated value.
10084
};
10085
 
10086
# >
10087
# printf() family
10088
# This option enables the use of floating point
10089
# number output in the printf() family (i.e.
10090
# printf(), sprintf(), vprintf(), etc.) of
10091
# functions. A substantial amount of code space
10092
# can be saved if this option is disabled. If it
10093
# is disabled then floating point specifiers
10094
# (%e, %f, %g) are ignored, and nothing is
10095
# output.
10096
#
10097
cdl_option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT {
10098
    # Flavor: bool
10099
    # No user value, uncomment the following line to provide one.
10100
    # user_value 1
10101
    # value_source default
10102
    # Default value:  0 != CYGPKG_LIBM
10103
    #     CYGPKG_LIBM == v2_0
10104
    #   --> 1
10105
    # Requires: CYGPKG_LIBM
10106
    #     CYGPKG_LIBM == v2_0
10107
    #   --> 1
10108
};
10109
 
10110
# scanf() family
10111
# This option enables the use of floating point
10112
# number conversion in the scanf() family (i.e.
10113
# scanf(), sscanf(), vscanf(), etc.) of
10114
# functions. A substantial amount of code space
10115
# can be saved if this option is disabled. If it
10116
# is disabled then floating point specifiers
10117
# (%e, %f, %g) are ignored, and nothing is
10118
# converted.
10119
#
10120
cdl_option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT {
10121
    # Flavor: bool
10122
    # No user value, uncomment the following line to provide one.
10123
    # user_value 1
10124
    # value_source default
10125
    # Default value:  0 != CYGPKG_LIBM &&
10126
    #                                 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT
10127
    #     CYGPKG_LIBM == v2_0
10128
    #     CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1
10129
    #   --> 1
10130
    # Requires: CYGPKG_LIBM
10131
    #     CYGPKG_LIBM == v2_0
10132
    #   --> 1
10133
    # Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT
10134
    #     CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1
10135
    #   --> 1
10136
};
10137
 
10138
# <
10139
# Thread safe I/O streams
10140
# doc: ref/libc-thread-safety.html
10141
# This option controls whether standard I/O streams
10142
# are thread-safe. Having this option set allows
10143
# the streams to be locked when accessed by
10144
# multiple threads simultaneously.
10145
#
10146
cdl_option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS {
10147
    # Flavor: bool
10148
    # No user value, uncomment the following line to provide one.
10149
    # user_value 1
10150
    # value_source default
10151
    # Default value:  0 != CYGPKG_KERNEL
10152
    #     CYGPKG_KERNEL == v2_0
10153
    #   --> 1
10154
    # Requires: CYGPKG_KERNEL
10155
    #     CYGPKG_KERNEL == v2_0
10156
    #   --> 1
10157
};
10158
 
10159
# C library stdio functions build options
10160
# Package specific build options including control over
10161
# compiler flags used only in building this package,
10162
# and details of which tests are built.
10163
#
10164
cdl_component CYGPKG_LIBC_STDIO_OPTIONS {
10165
    # There is no associated value.
10166
};
10167
 
10168
# >
10169
# Additional compiler flags
10170
# This option modifies the set of compiler flags for
10171
# building the C library. These flags are used in addition
10172
# to the set of global flags.
10173
#
10174
cdl_option CYGPKG_LIBC_STDIO_CFLAGS_ADD {
10175
    # Flavor: data
10176
    # No user value, uncomment the following line to provide one.
10177
    # user_value ""
10178
    # value_source default
10179
    # Default value: ""
10180
};
10181
 
10182
# Suppressed compiler flags
10183
# This option modifies the set of compiler flags for
10184
# building the C library. These flags are removed from
10185
# the set of global flags if present.
10186
#
10187
cdl_option CYGPKG_LIBC_STDIO_CFLAGS_REMOVE {
10188
    # Flavor: data
10189
    # No user value, uncomment the following line to provide one.
10190
    # user_value ""
10191
    # value_source default
10192
    # Default value: ""
10193
};
10194
 
10195
# C library stdio function tests
10196
# This option specifies the set of tests for the C library
10197
# stdio functions.
10198
#
10199
cdl_option CYGPKG_LIBC_STDIO_TESTS {
10200
    # Calculated value:  "tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput"
10201
    # Flavor: data
10202
    # Current_value: tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput
10203
};
10204
 
10205
# <
10206
# Enable use of FILEIO package for IO operations.
10207
#
10208
cdl_option CYGPKG_LIBC_STDIO_FILEIO {
10209
    # This option is not active
10210
    # ActiveIf constraint: CYGPKG_IO_FILEIO
10211
    #     CYGPKG_IO_FILEIO (unknown) == 0
10212
    #   --> 0
10213
 
10214
    # Calculated value: 1
10215
    # Flavor: bool
10216
    # Current value: 1
10217
    # Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO
10218
    #     CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1
10219
    #   --> 1
10220
};
10221
 
10222
# <
10223
# ISO C library general utility functions
10224
# doc: ref/libc.html
10225
# This package provides general utility functions in 
10226
# as specified by the ISO C standard - ISO/IEC 9899:1990.
10227
#
10228
cdl_package CYGPKG_LIBC_STDLIB {
10229
    # Packages cannot be added or removed, nor can their version be changed,
10230
    # simply by editing their value. Instead the appropriate configuration
10231
    # should be used to perform these actions.
10232
 
10233
    # This value cannot be modified here.
10234
    # Flavor: booldata
10235
    # Current value: 1 v2_0
10236
    # Requires: CYGPKG_ISOINFRA
10237
    #     CYGPKG_ISOINFRA == v2_0
10238
    #   --> 1
10239
    # Requires: CYGINT_ISO_CTYPE
10240
    #     CYGINT_ISO_CTYPE == 1
10241
    #   --> 1
10242
    # Requires: CYGINT_ISO_STRING_STRFUNCS
10243
    #     CYGINT_ISO_STRING_STRFUNCS == 1
10244
    #   --> 1
10245
};
10246
 
10247
# >
10248
# Inline versions of  functions
10249
# This option chooses whether some of the
10250
# particularly simple standard utility functions
10251
# from  are available as inline
10252
# functions. This may improve performance, and as
10253
# the functions are small, may even improve code
10254
# size.
10255
#
10256
cdl_component CYGIMP_LIBC_STDLIB_INLINES {
10257
    # There is no associated value.
10258
};
10259
 
10260
# >
10261
# abs() / labs()
10262
#
10263
cdl_option CYGIMP_LIBC_STDLIB_INLINE_ABS {
10264
    # Flavor: bool
10265
    # No user value, uncomment the following line to provide one.
10266
    # user_value 1
10267
    # value_source default
10268
    # Default value: 1
10269
    # Requires:  CYGBLD_ISO_STDLIB_ABS_HEADER ==  ""
10270
    #     CYGBLD_ISO_STDLIB_ABS_HEADER == 
10271
    #   --> 1
10272
};
10273
 
10274
# div() / ldiv()
10275
#
10276
cdl_option CYGIMP_LIBC_STDLIB_INLINE_DIV {
10277
    # Flavor: bool
10278
    # No user value, uncomment the following line to provide one.
10279
    # user_value 1
10280
    # value_source default
10281
    # Default value: 1
10282
    # Requires:  CYGBLD_ISO_STDLIB_DIV_HEADER ==  ""
10283
    #     CYGBLD_ISO_STDLIB_DIV_HEADER == 
10284
    #   --> 1
10285
};
10286
 
10287
# atof() / atoi() / atol()
10288
#
10289
cdl_option CYGIMP_LIBC_STDLIB_INLINE_ATOX {
10290
    # Flavor: bool
10291
    # No user value, uncomment the following line to provide one.
10292
    # user_value 1
10293
    # value_source default
10294
    # Default value: 1
10295
    # Requires:  CYGBLD_ISO_STDLIB_STRCONV_HEADER ==  ""
10296
    #     CYGBLD_ISO_STDLIB_STRCONV_HEADER == 
10297
    #   --> 1
10298
};
10299
 
10300
# <
10301
# Random number generation
10302
# These options control the behaviour of the
10303
# functions rand(), srand() and rand_r()
10304
#
10305
cdl_component CYGPKG_LIBC_RAND {
10306
    # There is no associated value.
10307
};
10308
 
10309
# >
10310
# Per-thread random seed
10311
# doc: ref/libc-thread-safety.html
10312
# This option controls whether the pseudo-random
10313
# number generation functions rand() and srand()
10314
# have their state recorded on a per-thread
10315
# basis rather than global. If this option is
10316
# disabled, some per-thread space can be saved.
10317
# Note there is also a POSIX-standard rand_r()
10318
# function to achieve a similar effect with user
10319
# support. Enabling this option will use one slot
10320
# of kernel per-thread data. You should ensure you
10321
# have enough slots configured for all your
10322
# per-thread data.
10323
#
10324
cdl_option CYGSEM_LIBC_PER_THREAD_RAND {
10325
    # Flavor: bool
10326
    # No user value, uncomment the following line to provide one.
10327
    # user_value 0
10328
    # value_source default
10329
    # Default value: 0
10330
    # Requires: CYGVAR_KERNEL_THREADS_DATA
10331
    #     CYGVAR_KERNEL_THREADS_DATA == 1
10332
    #   --> 1
10333
};
10334
 
10335
# Random number seed
10336
# This selects the initial random number seed for
10337
# rand()'s pseudo-random number generator. For
10338
# strict ISO standard compliance, this should be 1,
10339
# as per section 7.10.2.2 of the standard.
10340
#
10341
cdl_option CYGNUM_LIBC_RAND_SEED {
10342
    # Flavor: data
10343
    # No user value, uncomment the following line to provide one.
10344
    # user_value 1
10345
    # value_source default
10346
    # Default value: 1
10347
    # Legal values: 0 to 0x7fffffff
10348
};
10349
 
10350
# Tracing level
10351
# Trace verbosity level for debugging the rand(),
10352
# srand() and rand_r() functions. Increase this
10353
# value to get additional trace output.
10354
#
10355
cdl_option CYGNUM_LIBC_RAND_TRACE_LEVEL {
10356
    # Flavor: data
10357
    # No user value, uncomment the following line to provide one.
10358
    # user_value 0
10359
    # value_source default
10360
    # Default value: 0
10361
    # Legal values: 0 to 1
10362
};
10363
 
10364
# Simplest implementation
10365
# This provides a very simple implementation of rand()
10366
# that does not perform well with randomness in the
10367
# lower significant bits. However it is exceptionally
10368
# fast. It uses the sample algorithm from the ISO C
10369
# standard itself.
10370
#
10371
cdl_option CYGIMP_LIBC_RAND_SIMPLEST {
10372
    # Flavor: bool
10373
    # No user value, uncomment the following line to provide one.
10374
    # user_value 0
10375
    # value_source default
10376
    # Default value: 0
10377
};
10378
 
10379
# Simple implementation #1
10380
# This provides a very simple implementation of rand()
10381
# based on the simplest implementation above. However
10382
# it does try to work around the lack of randomness
10383
# in the lower significant bits, at the expense of a
10384
# little speed.
10385
#
10386
cdl_option CYGIMP_LIBC_RAND_SIMPLE1 {
10387
    # Flavor: bool
10388
    # No user value, uncomment the following line to provide one.
10389
    # user_value 1
10390
    # value_source default
10391
    # Default value: 1
10392
};
10393
 
10394
# Knuth implementation #1
10395
# This implements a slightly more complex algorithm
10396
# published in Donald E. Knuth's Art of Computer
10397
# Programming Vol.2 section 3.6 (p.185 in the 3rd ed.).
10398
# This produces better random numbers than the
10399
# simplest approach but is slower.
10400
#
10401
cdl_option CYGIMP_LIBC_RAND_KNUTH1 {
10402
    # Flavor: bool
10403
    # No user value, uncomment the following line to provide one.
10404
    # user_value 0
10405
    # value_source default
10406
    # Default value: 0
10407
};
10408
 
10409
# <
10410
# Provides strtod()
10411
# This option allows use of the utility function
10412
# strtod() (and consequently atof()) to convert
10413
# from string to double precision floating point
10414
# numbers. Disabling this option removes the
10415
# dependency on the math library package.
10416
#
10417
cdl_option CYGFUN_LIBC_strtod {
10418
    # Flavor: bool
10419
    # No user value, uncomment the following line to provide one.
10420
    # user_value 1
10421
    # value_source default
10422
    # Default value:  0 != CYGPKG_LIBM
10423
    #     CYGPKG_LIBM == v2_0
10424
    #   --> 1
10425
    # Requires: CYGPKG_LIBM
10426
    #     CYGPKG_LIBM == v2_0
10427
    #   --> 1
10428
};
10429
 
10430
# bsearch() tracing level
10431
# Trace verbosity level for debugging the 
10432
# binary search function bsearch(). Increase this
10433
# value to get additional trace output.
10434
#
10435
cdl_option CYGNUM_LIBC_BSEARCH_TRACE_LEVEL {
10436
    # Flavor: data
10437
    # No user value, uncomment the following line to provide one.
10438
    # user_value 0
10439
    # value_source default
10440
    # Default value: 0
10441
    # Legal values: 0 to 1
10442
};
10443
 
10444
# qsort() tracing level
10445
# Trace verbosity level for debugging the 
10446
# quicksort function qsort(). Increase this value
10447
# to get additional trace output.
10448
#
10449
cdl_option CYGNUM_LIBC_QSORT_TRACE_LEVEL {
10450
    # Flavor: data
10451
    # No user value, uncomment the following line to provide one.
10452
    # user_value 0
10453
    # value_source default
10454
    # Default value: 0
10455
    # Legal values: 0 to 1
10456
};
10457
 
10458
# C library stdlib build options
10459
# Package specific build options including control over
10460
# compiler flags used only in building this package,
10461
# and details of which tests are built.
10462
#
10463
cdl_component CYGPKG_LIBC_STDLIB_OPTIONS {
10464
    # There is no associated value.
10465
};
10466
 
10467
# >
10468
# Additional compiler flags
10469
# This option modifies the set of compiler flags for
10470
# building this package. These flags are used in addition
10471
# to the set of global flags.
10472
#
10473
cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_ADD {
10474
    # Flavor: data
10475
    # No user value, uncomment the following line to provide one.
10476
    # user_value ""
10477
    # value_source default
10478
    # Default value: ""
10479
};
10480
 
10481
# Suppressed compiler flags
10482
# This option modifies the set of compiler flags for
10483
# building this package. These flags are removed from
10484
# the set of global flags if present.
10485
#
10486
cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_REMOVE {
10487
    # Flavor: data
10488
    # No user value, uncomment the following line to provide one.
10489
    # user_value ""
10490
    # value_source default
10491
    # Default value: ""
10492
};
10493
 
10494
# C library stdlib tests
10495
# This option specifies the set of tests for this package.
10496
#
10497
cdl_option CYGPKG_LIBC_STDLIB_TESTS {
10498
    # 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"
10499
    # Flavor: data
10500
    # 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
10501
};
10502
 
10503
# <
10504
# <
10505
# ISO C library string functions
10506
# doc: ref/libc.html
10507
# This package provides string functions specified by the
10508
# ISO C standard - ISO/IEC 9899:1990.
10509
#
10510
cdl_package CYGPKG_LIBC_STRING {
10511
    # Packages cannot be added or removed, nor can their version be changed,
10512
    # simply by editing their value. Instead the appropriate configuration
10513
    # should be used to perform these actions.
10514
 
10515
    # This value cannot be modified here.
10516
    # Flavor: booldata
10517
    # Current value: 1 v2_0
10518
    # Requires:  CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER ==  ""
10519
    #     CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == 
10520
    #   --> 1
10521
    # Requires:  CYGBLD_ISO_STRING_MEMFUNCS_HEADER ==  ""
10522
    #     CYGBLD_ISO_STRING_MEMFUNCS_HEADER == 
10523
    #   --> 1
10524
    # Requires:  CYGBLD_ISO_STRING_STRFUNCS_HEADER ==  ""
10525
    #     CYGBLD_ISO_STRING_STRFUNCS_HEADER == 
10526
    #   --> 1
10527
    # Requires:  CYGBLD_ISO_STRTOK_R_HEADER ==  ""
10528
    #     CYGBLD_ISO_STRTOK_R_HEADER == 
10529
    #   --> 1
10530
    # Requires: CYGPKG_ISOINFRA
10531
    #     CYGPKG_ISOINFRA == v2_0
10532
    #   --> 1
10533
};
10534
 
10535
# >
10536
# Inline versions of  functions
10537
# This option chooses whether some of the
10538
# particularly simple string functions from
10539
#  are available as inline
10540
# functions. This may improve performance, and as
10541
# the functions are small, may even improve code
10542
# size.
10543
#
10544
cdl_option CYGIMP_LIBC_STRING_INLINES {
10545
    # Flavor: bool
10546
    # No user value, uncomment the following line to provide one.
10547
    # user_value 1
10548
    # value_source default
10549
    # Default value: 1
10550
};
10551
 
10552
# Optimize string functions for code size
10553
# This option tries to reduce string function
10554
# code size at the expense of execution speed. The
10555
# same effect can be produced if the code is
10556
# compiled with the -Os option to the compiler.
10557
#
10558
cdl_option CYGIMP_LIBC_STRING_PREFER_SMALL_TO_FAST {
10559
    # Flavor: bool
10560
    # No user value, uncomment the following line to provide one.
10561
    # user_value 0
10562
    # value_source default
10563
    # Default value: 0
10564
};
10565
 
10566
# Provide BSD compatibility functions
10567
# Enabling this option causes various compatibility functions
10568
# commonly found in the BSD UNIX operating system to be included.
10569
# These are functions such as bzero, bcmp, bcopy, bzero, strcasecmp,
10570
# strncasecmp, index, rindex and swab.
10571
#
10572
cdl_option CYGFUN_LIBC_STRING_BSD_FUNCS {
10573
    # Flavor: bool
10574
    # No user value, uncomment the following line to provide one.
10575
    # user_value 1
10576
    # value_source default
10577
    # Default value: 1
10578
    # Requires:  CYGBLD_ISO_STRING_BSD_FUNCS_HEADER ==  ""
10579
    #     CYGBLD_ISO_STRING_BSD_FUNCS_HEADER == 
10580
    #   --> 1
10581
    # Requires: CYGINT_ISO_CTYPE
10582
    #     CYGINT_ISO_CTYPE == 1
10583
    #   --> 1
10584
 
10585
    # The following properties are affected by this value
10586
    # option CYGFUN_LIBC_TIME_POSIX
10587
    #     Requires: CYGFUN_LIBC_STRING_BSD_FUNCS
10588
};
10589
 
10590
# strtok
10591
# These options control the behaviour of the
10592
# strtok() and strtok_r() string tokenization
10593
# functions.
10594
#
10595
cdl_component CYGPKG_LIBC_STRING_STRTOK {
10596
    # There is no associated value.
10597
};
10598
 
10599
# >
10600
# Per-thread strtok()
10601
# This option controls whether the string function
10602
# strtok() has its state recorded on a per-thread
10603
# basis rather than global. If this option is
10604
# disabled, some per-thread space can be saved.
10605
# Note there is also a POSIX-standard strtok_r()
10606
# function to achieve a similar effect with user
10607
# support. Enabling this option will use one slot
10608
# of kernel per-thread data. You should ensure you
10609
# have enough slots configured for all your
10610
# per-thread data.
10611
#
10612
cdl_option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK {
10613
    # ActiveIf constraint: CYGPKG_KERNEL
10614
    #     CYGPKG_KERNEL == v2_0
10615
    #   --> 1
10616
 
10617
    # Flavor: bool
10618
    # No user value, uncomment the following line to provide one.
10619
    # user_value 1
10620
    # value_source default
10621
    # Default value: CYGVAR_KERNEL_THREADS_DATA
10622
    #     CYGVAR_KERNEL_THREADS_DATA == 1
10623
    #   --> 1
10624
    # Requires: CYGVAR_KERNEL_THREADS_DATA
10625
    #     CYGVAR_KERNEL_THREADS_DATA == 1
10626
    #   --> 1
10627
};
10628
 
10629
# Tracing level
10630
# Trace verbosity level for debugging the 
10631
# functions strtok() and strtok_r(). Increase this
10632
# value to get additional trace output.
10633
#
10634
cdl_option CYGNUM_LIBC_STRING_STRTOK_TRACE_LEVEL {
10635
    # Flavor: data
10636
    # No user value, uncomment the following line to provide one.
10637
    # user_value 0
10638
    # value_source default
10639
    # Default value: 0
10640
    # Legal values: 0 to 1
10641
};
10642
 
10643
# <
10644
# C library string functions build options
10645
# Package specific build options including control over
10646
# compiler flags used only in building this package,
10647
# and details of which tests are built.
10648
#
10649
cdl_component CYGPKG_LIBC_STRING_OPTIONS {
10650
    # There is no associated value.
10651
};
10652
 
10653
# >
10654
# Additional compiler flags
10655
# This option modifies the set of compiler flags for
10656
# building the C library. These flags are used in addition
10657
# to the set of global flags.
10658
#
10659
cdl_option CYGPKG_LIBC_STRING_CFLAGS_ADD {
10660
    # Flavor: data
10661
    # No user value, uncomment the following line to provide one.
10662
    # user_value ""
10663
    # value_source default
10664
    # Default value: ""
10665
};
10666
 
10667
# Suppressed compiler flags
10668
# This option modifies the set of compiler flags for
10669
# building the C library. These flags are removed from
10670
# the set of global flags if present.
10671
#
10672
cdl_option CYGPKG_LIBC_STRING_CFLAGS_REMOVE {
10673
    # Flavor: data
10674
    # No user value, uncomment the following line to provide one.
10675
    # user_value ""
10676
    # value_source default
10677
    # Default value: ""
10678
};
10679
 
10680
# C library string function tests
10681
# This option specifies the set of tests for the C library
10682
# string functions.
10683
#
10684
cdl_option CYGPKG_LIBC_STRING_TESTS {
10685
    # 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"
10686
    # Flavor: data
10687
    # 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
10688
};
10689
 
10690
# <
10691
# <
10692
# ISO C library date and time functions
10693
# doc: ref/libc.html
10694
# This package provides time functions specified by the
10695
# ISO C standard - ISO/IEC 9899:1990.
10696
#
10697
cdl_package CYGPKG_LIBC_TIME {
10698
    # Packages cannot be added or removed, nor can their version be changed,
10699
    # simply by editing their value. Instead the appropriate configuration
10700
    # should be used to perform these actions.
10701
 
10702
    # This value cannot be modified here.
10703
    # Flavor: booldata
10704
    # Current value: 1 v2_0
10705
    # Requires:  CYGBLD_ISO_C_TIME_TYPES_HEADER == ""
10706
    #     CYGBLD_ISO_C_TIME_TYPES_HEADER == 
10707
    #   --> 1
10708
    # Requires:  CYGBLD_ISO_C_CLOCK_FUNCS_HEADER ==  ""
10709
    #     CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == 
10710
    #   --> 1
10711
    # Requires: CYGPKG_ISOINFRA
10712
    #     CYGPKG_ISOINFRA == v2_0
10713
    #   --> 1
10714
    # Requires: CYGINT_ISO_DIV
10715
    #     CYGINT_ISO_DIV == 1
10716
    #   --> 1
10717
    # Requires: CYGINT_ISO_ABS
10718
    #     CYGINT_ISO_ABS == 1
10719
    #   --> 1
10720
};
10721
 
10722
# >
10723
# Working clock() function
10724
# This option controls whether clock() will
10725
# actually try and determine the process time
10726
# usage. With this option disabled, clock() does
10727
# not disappear, but will permanently return
10728
# (clock_t)-1 as mandated by the ISO C standard.
10729
#
10730
cdl_option CYGSEM_LIBC_TIME_CLOCK_WORKING {
10731
    # Flavor: bool
10732
    # No user value, uncomment the following line to provide one.
10733
    # user_value 1
10734
    # value_source default
10735
    # Default value: 1
10736
    # Requires: CYGFUN_KERNEL_THREADS_TIMER
10737
    #     CYGFUN_KERNEL_THREADS_TIMER == 1
10738
    #   --> 1
10739
    # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK
10740
    #     CYGVAR_KERNEL_COUNTERS_CLOCK == 1
10741
    #   --> 1
10742
};
10743
 
10744
# Working time() function
10745
# This option controls whether time() will
10746
# actually try and determine the current calendar
10747
# time. With this option disabled, time() does
10748
# not disappear, but will permanently return
10749
# (time_t)-1 as mandated by the ISO C standard.
10750
#
10751
cdl_option CYGSEM_LIBC_TIME_TIME_WORKING {
10752
    # Flavor: bool
10753
    # No user value, uncomment the following line to provide one.
10754
    # user_value 1
10755
    # value_source default
10756
    # Default value: 1
10757
    # Requires: CYGPKG_IO_WALLCLOCK
10758
    #     CYGPKG_IO_WALLCLOCK == v2_0
10759
    #   --> 1
10760
};
10761
 
10762
# Working cyg_libc_time_settime() function
10763
# This option controls whether cyg_libc_time_settime()
10764
# will actually try and set the current calendar
10765
# time. With this option disabled,
10766
# cyg_libc_time_settime() does not disappear, but
10767
# will permanently return an error.
10768
#
10769
cdl_option CYGSEM_LIBC_TIME_SETTIME_WORKING {
10770
    # Flavor: bool
10771
    # No user value, uncomment the following line to provide one.
10772
    # user_value 1
10773
    # value_source default
10774
    # Default value: 1
10775
    # Requires: CYGPKG_IO_WALLCLOCK
10776
    #     CYGPKG_IO_WALLCLOCK == v2_0
10777
    #   --> 1
10778
};
10779
 
10780
# POSIX time functions
10781
# Enabling this option allows the use of the
10782
# following functions defined in POSIX 1003.1:
10783
# asctime_r(), ctime_r(), gmtime_r(), strptime(), and
10784
# localtime_r().
10785
#
10786
cdl_option CYGFUN_LIBC_TIME_POSIX {
10787
    # Flavor: bool
10788
    # No user value, uncomment the following line to provide one.
10789
    # user_value 1
10790
    # value_source default
10791
    # Default value: 1
10792
    # Requires: CYGFUN_LIBC_STRING_BSD_FUNCS
10793
    #     CYGFUN_LIBC_STRING_BSD_FUNCS == 1
10794
    #   --> 1
10795
 
10796
    # The following properties are affected by this value
10797
    # option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE
10798
    #     Requires: CYGFUN_LIBC_TIME_POSIX
10799
    # option CYGIMP_LIBC_TIME_CTIME_R_INLINE
10800
    #     Requires: CYGFUN_LIBC_TIME_POSIX
10801
    # option CYGIMP_LIBC_TIME_GMTIME_R_INLINE
10802
    #     Requires: CYGFUN_LIBC_TIME_POSIX
10803
    # option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE
10804
    #     Requires: CYGFUN_LIBC_TIME_POSIX
10805
    # option CYGPKG_LIBC_TIME_TESTS
10806
    #     Calculated:
10807
    #                     "tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time "
10808
    #                     . (CYGFUN_LIBC_TIME_POSIX ? "tests/strptime" : "")
10809
    #
10810
};
10811
 
10812
# Single UNIX extensions
10813
# Enabling this option allows the use of
10814
# certain additional conversion specifiers
10815
# in the strftime function.
10816
#
10817
cdl_option CYGFUN_LIBC_TIME_SUS_EXTNS {
10818
    # Flavor: bool
10819
    # No user value, uncomment the following line to provide one.
10820
    # user_value 0
10821
    # value_source default
10822
    # Default value: 0
10823
};
10824
 
10825
# Time zone offsets
10826
# These options control the default STandarD (STD)
10827
# and Daylight Savings Time (DST)
10828
# time offsets so that dates can be set correctly
10829
# for the local environment.
10830
#
10831
cdl_component CYGPKG_LIBC_TIME_ZONES {
10832
    # There is no associated value.
10833
};
10834
 
10835
# >
10836
# Default Daylight Savings Time state
10837
# This option controls whether the initial
10838
# time environment is set up as STD, DST or
10839
# unknown. Use the value 1 for DST, 0 for STD,
10840
# and (-1) for unknown. This can also be set at
10841
# runtime using the cyg_libc_time_setdst()
10842
# function.
10843
#
10844
cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_STATE {
10845
    # Flavor: data
10846
    # No user value, uncomment the following line to provide one.
10847
    # user_value -1
10848
    # value_source default
10849
    # Default value: -1
10850
    # Legal values: -1 to 1
10851
};
10852
 
10853
# Default Standard Time offset
10854
# This option controls the offset from UTC in
10855
# seconds when in local Standard Time. This
10856
# value can be positive or negative. It
10857
# can also be set at run time using the
10858
# cyg_libc_time_setzoneoffsets() function.
10859
#
10860
cdl_option CYGNUM_LIBC_TIME_STD_DEFAULT_OFFSET {
10861
    # Flavor: data
10862
    # No user value, uncomment the following line to provide one.
10863
    # user_value 0
10864
    # value_source default
10865
    # Default value: 0
10866
    # Legal values: -90000 to 90000
10867
};
10868
 
10869
# Default Daylight Savings Time offset
10870
# This option controls the offset from UTC in
10871
# seconds when in local Daylight Savings Time. This
10872
# value can be positive or negative. It
10873
# can also be set at run time using the
10874
# cyg_libc_time_setzoneoffsets() function.
10875
#
10876
cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_OFFSET {
10877
    # Flavor: data
10878
    # No user value, uncomment the following line to provide one.
10879
    # user_value 3600
10880
    # value_source default
10881
    # Default value: 3600
10882
    # Legal values: -90000 to 90000
10883
};
10884
 
10885
# <
10886
# Inline functions
10887
# These options control whether certain functions
10888
# are available in inline form. This may lead to
10889
# faster code at the expense of code space. But for
10890
# some functions, or some functions with constant
10891
# arguments, it may in fact lead to smaller code.
10892
#
10893
cdl_component CYGPKG_LIBC_TIME_INLINES {
10894
    # There is no associated value.
10895
};
10896
 
10897
# >
10898
# asctime()
10899
# Allow the asctime() function to be inlined
10900
#
10901
cdl_option CYGIMP_LIBC_TIME_ASCTIME_INLINE {
10902
    # Flavor: bool
10903
    # No user value, uncomment the following line to provide one.
10904
    # user_value 1
10905
    # value_source default
10906
    # Default value: 1
10907
};
10908
 
10909
# ctime()
10910
# Allow the ctime() function to be inlined
10911
#
10912
cdl_option CYGIMP_LIBC_TIME_CTIME_INLINE {
10913
    # Flavor: bool
10914
    # No user value, uncomment the following line to provide one.
10915
    # user_value 1
10916
    # value_source default
10917
    # Default value: 1
10918
};
10919
 
10920
# difftime()
10921
# Allow the difftime() function to be inlined
10922
#
10923
cdl_option CYGIMP_LIBC_TIME_DIFFTIME_INLINE {
10924
    # Flavor: bool
10925
    # No user value, uncomment the following line to provide one.
10926
    # user_value 1
10927
    # value_source default
10928
    # Default value: 1
10929
};
10930
 
10931
# gmtime()
10932
# Allow the gmtime() function to be inlined
10933
#
10934
cdl_option CYGIMP_LIBC_TIME_GMTIME_INLINE {
10935
    # Flavor: bool
10936
    # No user value, uncomment the following line to provide one.
10937
    # user_value 1
10938
    # value_source default
10939
    # Default value: 1
10940
};
10941
 
10942
# localtime()
10943
# Allow the localtime() function to be inlined
10944
#
10945
cdl_option CYGIMP_LIBC_TIME_LOCALTIME_INLINE {
10946
    # Flavor: bool
10947
    # No user value, uncomment the following line to provide one.
10948
    # user_value 1
10949
    # value_source default
10950
    # Default value: 1
10951
};
10952
 
10953
# mktime()
10954
# Allow the mktime() function to be inlined
10955
#
10956
cdl_option CYGIMP_LIBC_TIME_MKTIME_INLINE {
10957
    # Flavor: bool
10958
    # No user value, uncomment the following line to provide one.
10959
    # user_value 1
10960
    # value_source default
10961
    # Default value: 1
10962
};
10963
 
10964
# asctime_r()
10965
# Allow the asctime_r() function to be inlined
10966
#
10967
cdl_option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE {
10968
    # Flavor: bool
10969
    # No user value, uncomment the following line to provide one.
10970
    # user_value 1
10971
    # value_source default
10972
    # Default value: 1
10973
    # Requires: CYGFUN_LIBC_TIME_POSIX
10974
    #     CYGFUN_LIBC_TIME_POSIX == 1
10975
    #   --> 1
10976
};
10977
 
10978
# ctime_r()
10979
# Allow the ctime_r() function to be inlined
10980
#
10981
cdl_option CYGIMP_LIBC_TIME_CTIME_R_INLINE {
10982
    # Flavor: bool
10983
    # No user value, uncomment the following line to provide one.
10984
    # user_value 1
10985
    # value_source default
10986
    # Default value: 1
10987
    # Requires: CYGFUN_LIBC_TIME_POSIX
10988
    #     CYGFUN_LIBC_TIME_POSIX == 1
10989
    #   --> 1
10990
};
10991
 
10992
# gmtime_r()
10993
# Allow the gmtime_r() function to be inlined
10994
#
10995
cdl_option CYGIMP_LIBC_TIME_GMTIME_R_INLINE {
10996
    # Flavor: bool
10997
    # No user value, uncomment the following line to provide one.
10998
    # user_value 1
10999
    # value_source default
11000
    # Default value: 1
11001
    # Requires: CYGFUN_LIBC_TIME_POSIX
11002
    #     CYGFUN_LIBC_TIME_POSIX == 1
11003
    #   --> 1
11004
};
11005
 
11006
# localtime_r()
11007
# Allow the localtime_r() function to be inlined
11008
#
11009
cdl_option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE {
11010
    # Flavor: bool
11011
    # No user value, uncomment the following line to provide one.
11012
    # user_value 1
11013
    # value_source default
11014
    # Default value: 1
11015
    # Requires: CYGFUN_LIBC_TIME_POSIX
11016
    #     CYGFUN_LIBC_TIME_POSIX == 1
11017
    #   --> 1
11018
};
11019
 
11020
# <
11021
# clock() tracing level
11022
# Trace verbosity level for debugging the clock()
11023
# function. Increase this value to get
11024
# additional trace output when tracing is enabled.
11025
#
11026
cdl_option CYGNUM_LIBC_TIME_CLOCK_TRACE_LEVEL {
11027
    # Flavor: data
11028
    # No user value, uncomment the following line to provide one.
11029
    # user_value 0
11030
    # value_source default
11031
    # Default value: 0
11032
    # Legal values: 0 to 1
11033
};
11034
 
11035
# C library time functions build options
11036
# Package specific build options including control over
11037
# compiler flags used only in building this package,
11038
# and details of which tests are built.
11039
#
11040
cdl_component CYGPKG_LIBC_TIME_OPTIONS {
11041
    # There is no associated value.
11042
};
11043
 
11044
# >
11045
# Additional compiler flags
11046
# This option modifies the set of compiler flags for
11047
# building the C library. These flags are used in addition
11048
# to the set of global flags.
11049
#
11050
cdl_option CYGPKG_LIBC_TIME_CFLAGS_ADD {
11051
    # Flavor: data
11052
    # No user value, uncomment the following line to provide one.
11053
    # user_value -Wno-format
11054
    # value_source default
11055
    # Default value: -Wno-format
11056
};
11057
 
11058
# Suppressed compiler flags
11059
# This option modifies the set of compiler flags for
11060
# building the C library. These flags are removed from
11061
# the set of global flags if present.
11062
#
11063
cdl_option CYGPKG_LIBC_TIME_CFLAGS_REMOVE {
11064
    # Flavor: data
11065
    # No user value, uncomment the following line to provide one.
11066
    # user_value ""
11067
    # value_source default
11068
    # Default value: ""
11069
};
11070
 
11071
# C library time and date function tests
11072
# This option specifies the set of tests for the C library
11073
# time and date functions.
11074
#
11075
cdl_option CYGPKG_LIBC_TIME_TESTS {
11076
    # Calculated value:
11077
    #                     "tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time "
11078
    #                     . (CYGFUN_LIBC_TIME_POSIX ? "tests/strptime" : "")
11079
    #
11080
    #     CYGFUN_LIBC_TIME_POSIX == 1
11081
    # Flavor: data
11082
    # Current_value: tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time tests/strptime
11083
};
11084
 
11085
# <
11086
# <
11087
# <
11088
# Math library
11089
# doc: ref/libc.html
11090
# ISO standard floating point mathematical library
11091
# containing many useful functions for mathematical
11092
# calculations.
11093
#
11094
cdl_package CYGPKG_LIBM {
11095
    # Packages cannot be added or removed, nor can their version be changed,
11096
    # simply by editing their value. Instead the appropriate configuration
11097
    # should be used to perform these actions.
11098
 
11099
    # This value cannot be modified here.
11100
    # Flavor: booldata
11101
    # Current value: 1 v2_0
11102
 
11103
    # The following properties are affected by this value
11104
    # option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT
11105
    #     Requires: CYGPKG_LIBM
11106
    # option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT
11107
    #     DefaultValue:  0 != CYGPKG_LIBM
11108
    # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT
11109
    #     Requires: CYGPKG_LIBM
11110
    # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT
11111
    #     DefaultValue:  0 != CYGPKG_LIBM &&
11112
    #                                 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT
11113
    # option CYGFUN_LIBC_strtod
11114
    #     Requires: CYGPKG_LIBM
11115
    # option CYGFUN_LIBC_strtod
11116
    #     DefaultValue:  0 != CYGPKG_LIBM
11117
};
11118
 
11119
# >
11120
# Compatibility mode
11121
# These options deal with behaviour related to
11122
# the various compatibility modes - POSIX, IEEE,
11123
# X/OPEN and SVID.
11124
#
11125
cdl_component CYGPKG_LIBM_COMPATIBILITY {
11126
    # There is no associated value.
11127
};
11128
 
11129
# >
11130
#
11131
cdl_interface CYGINT_LIBM_COMPAT {
11132
    # Implemented by CYGSEM_LIBM_COMPAT_IEEE_ONLY, active, disabled
11133
    # Implemented by CYGNUM_LIBM_COMPATIBILITY, active, enabled
11134
    # This value cannot be modified here.
11135
    # Flavor: data
11136
    # Current_value: 1
11137
    # Requires: 1 == CYGINT_LIBM_COMPAT
11138
    #     CYGINT_LIBM_COMPAT == 1
11139
    #   --> 1
11140
 
11141
    # The following properties are affected by this value
11142
    # interface CYGINT_LIBM_COMPAT
11143
    #     Requires: 1 == CYGINT_LIBM_COMPAT
11144
};
11145
 
11146
# IEEE-only
11147
# The math library can be hard-coded to only
11148
# behave in one compatibility mode - IEEE. This
11149
# cannot be changed at run-time. IEEE mode is the
11150
# most minimal of the compatibility modes, and so
11151
# this will best help code size and speed, as well
11152
# as omitting the code for other compatibility
11153
# modes. If not defined, the math library can be
11154
# set at run-time to any of the supported
11155
# compatibility modes.
11156
#
11157
cdl_option CYGSEM_LIBM_COMPAT_IEEE_ONLY {
11158
    # Flavor: bool
11159
    # No user value, uncomment the following line to provide one.
11160
    # user_value 0
11161
    # value_source default
11162
    # Default value: 0
11163
 
11164
    # The following properties are affected by this value
11165
    # option CYGSEM_LIBM_USE_STDERR
11166
    #     Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY
11167
    # option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE
11168
    #     Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY
11169
};
11170
 
11171
# Default mode
11172
# If you want to have support for more than one
11173
# compatibility mode settable at run-time, rather
11174
# than hard-coded IEEE mode, this component lets
11175
# you choose which mode should be the default.
11176
#
11177
cdl_component CYGNUM_LIBM_COMPATIBILITY {
11178
    # Flavor: booldata
11179
    # No user value, uncomment the following line to provide one.
11180
    # user_value 1 POSIX
11181
    # value_source default
11182
    # Default value: 1 POSIX
11183
    # Legal values:  "POSIX" "IEEE" "XOPEN" "SVID"
11184
    # Requires: CYGPKG_LIBC
11185
    #     CYGPKG_LIBC == v2_0
11186
    #   --> 1
11187
 
11188
    # The following properties are affected by this value
11189
    # option CYGNUM_LIBM_COMPAT_DEFAULT
11190
    #     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" : ""
11191
    # option CYGNUM_LIBM_COMPAT_DEFAULT
11192
    #     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" : ""
11193
    # option CYGNUM_LIBM_COMPAT_DEFAULT
11194
    #     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" : ""
11195
    # option CYGNUM_LIBM_COMPAT_DEFAULT
11196
    #     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" : ""
11197
};
11198
 
11199
# >
11200
# Numeric representation
11201
# This option automatically defines the default compatibility
11202
# mode for numeric representation in terms of the values used
11203
# to set that mode at run-time.
11204
#
11205
cdl_option CYGNUM_LIBM_COMPAT_DEFAULT {
11206
    # 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" : ""
11207
    #     CYGNUM_LIBM_COMPATIBILITY == POSIX
11208
    #     CYGNUM_LIBM_COMPATIBILITY == POSIX
11209
    #     CYGNUM_LIBM_COMPATIBILITY == POSIX
11210
    #     CYGNUM_LIBM_COMPATIBILITY == POSIX
11211
    # Flavor: data
11212
    # Current_value: CYGNUM_LIBM_COMPAT_POSIX
11213
};
11214
 
11215
# <
11216
# SVID3-style scalb()
11217
# SVID3 defined the scalb() function as double
11218
# scalb(double, double) rather than double
11219
# scalb(double, int) which is used by IBM, DEC, and
11220
# probably others. Enabling this option chooses
11221
# the (double, double) version. Note there is a
11222
# function double scalbn(double, int) which is
11223
# unaffected by this choice.
11224
#
11225
cdl_option CYGFUN_LIBM_SVID3_scalb {
11226
    # Flavor: bool
11227
    # No user value, uncomment the following line to provide one.
11228
    # user_value 1
11229
    # value_source default
11230
    # Default value: 1
11231
};
11232
 
11233
# Reduce namespace pollution
11234
# If you do not want to use either the X/Open or
11235
# SVID3 compatibility modes, you may want to define
11236
# this option to reduce the chance of namespace
11237
# pollution. This is particularly likely to occur
11238
# here as these standards define symbols with
11239
# names that often appear in applications, such as
11240
# exception, DOMAIN, OVERFLOW, etc. If your
11241
# application also used these names, it may cause
11242
# problems.
11243
#
11244
cdl_option CYGSYM_LIBM_NO_XOPEN_SVID_NAMESPACE_POLLUTION {
11245
    # Flavor: bool
11246
    # No user value, uncomment the following line to provide one.
11247
    # user_value 0
11248
    # value_source default
11249
    # Default value: 0
11250
};
11251
 
11252
# Output to stderr for math errors
11253
# The SVID3 standard says that error
11254
# messages should be output on the stderr console
11255
# output stream. This option allows this ability
11256
# to be explicitly controlled. However, this still
11257
# only has an effect in SVID3 compatibility mode.
11258
#
11259
cdl_option CYGSEM_LIBM_USE_STDERR {
11260
    # Flavor: bool
11261
    # No user value, uncomment the following line to provide one.
11262
    # user_value 0
11263
    # value_source default
11264
    # Default value: 0
11265
    # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY
11266
    #     CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0
11267
    #   --> 1
11268
    # Requires: CYGPKG_LIBC_STDIO
11269
    #     CYGPKG_LIBC_STDIO == v2_0
11270
    #   --> 1
11271
};
11272
 
11273
# <
11274
# Thread safety
11275
# This option controls whether the C library has
11276
# support for thread safe operation in general.
11277
# This requires eCos kernel support for per-thread
11278
# data, and adjustment of the stack limit.
11279
#
11280
cdl_component CYGPKG_LIBM_THREAD_SAFETY {
11281
    # There is no associated value.
11282
};
11283
 
11284
# >
11285
# Compatibility mode setting
11286
# This option makes the setting of the compatiblity
11287
# mode be a per-thread property. This directly
11288
# implies that it also becomes thread-safe.
11289
#
11290
cdl_option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE {
11291
    # Flavor: bool
11292
    # No user value, uncomment the following line to provide one.
11293
    # user_value 0
11294
    # value_source default
11295
    # Default value: 0
11296
    # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY
11297
    #     CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0
11298
    #   --> 1
11299
    # Requires: CYGVAR_KERNEL_THREADS_DATA
11300
    #     CYGVAR_KERNEL_THREADS_DATA == 1
11301
    #   --> 1
11302
 
11303
    # The following properties are affected by this value
11304
    # option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL
11305
    #     Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE
11306
};
11307
 
11308
# gamma() and lgamma()
11309
# This option makes the gamma() and lgamma()
11310
# functions be thread-safe. Note that these
11311
# functions are identical - they take the log of
11312
# the absolute value of their argument. The sign
11313
# of the argument is stored in a variable called
11314
# signgam. Enabling this option makes signgam
11315
# a per-thread variable. Note there are also
11316
# gamma_r() and lgamma_r() alternatives that
11317
# allow signgam to be passed in by reference as
11318
# an argument.
11319
#
11320
cdl_option CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS {
11321
    # Flavor: bool
11322
    # No user value, uncomment the following line to provide one.
11323
    # user_value 0
11324
    # value_source default
11325
    # Default value: 0
11326
    # Requires: CYGVAR_KERNEL_THREADS_DATA
11327
    #     CYGVAR_KERNEL_THREADS_DATA == 1
11328
    #   --> 1
11329
 
11330
    # The following properties are affected by this value
11331
    # option CYGNUM_LIBM_SIGNGAM_TRACE_LEVEL
11332
    #     Requires: CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS
11333
};
11334
 
11335
# <
11336
# Tracing output levels in math library
11337
# Tracing support is useful for debugging. Some
11338
# Math library modules can be configured with
11339
# different levels of tracing verbosity. These
11340
# levels can be configured here.
11341
#
11342
cdl_component CYGPKG_LIBM_TRACE {
11343
    # Flavor: bool
11344
    # No user value, uncomment the following line to provide one.
11345
    # user_value 0
11346
    # value_source default
11347
    # Default value: 0
11348
    # Requires: CYGDBG_USE_TRACING
11349
    #     CYGDBG_USE_TRACING == 0
11350
    #   --> 0
11351
};
11352
 
11353
# >
11354
# Compatibility mode get/set
11355
# Trace level for debugging the getting and
11356
# setting of the compatibility mode when it is
11357
# configured to be thread-safe.
11358
#
11359
cdl_option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL {
11360
    # This option is not active
11361
    # The parent CYGPKG_LIBM_TRACE is disabled
11362
 
11363
    # Flavor: data
11364
    # No user value, uncomment the following line to provide one.
11365
    # user_value 0
11366
    # value_source default
11367
    # Default value: 0
11368
    # Legal values: 0 to 1
11369
    # Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE
11370
    #     CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE == 0
11371
    #   --> 0
11372
};
11373
 
11374
# signgam variable access
11375
# Trace level for debugging all accesses to the
11376
# signgam variable in thread-safe mode.
11377
#
11378
cdl_option CYGNUM_LIBM_SIGNGAM_TRACE_LEVEL {
11379
    # This option is not active
11380
    # The parent CYGPKG_LIBM_TRACE is disabled
11381
 
11382
    # Flavor: data
11383
    # No user value, uncomment the following line to provide one.
11384
    # user_value 0
11385
    # value_source default
11386
    # Default value: 0
11387
    # Legal values: 0 to 1
11388
    # Requires: CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS
11389
    #     CYGSEM_LIBM_THREAD_SAFE_GAMMA_FUNCTIONS == 0
11390
    #   --> 0
11391
};
11392
 
11393
# <
11394
# Bessel function limit of significance
11395
# For the Bessel functions (j0(), j1(), jn(),
11396
# y0(), y1(), yn()) this option defines the
11397
# maximum absolute value of the ordinate
11398
# before we assume total loss of significance.
11399
# This number must be a floating-point number (e.g.
11400
# contains a decimal point), and should be
11401
# large.
11402
#
11403
cdl_option X_TLOSS {
11404
    # Flavor: data
11405
    # No user value, uncomment the following line to provide one.
11406
    # user_value 1.41484755040569E+16
11407
    # value_source default
11408
    # Default value: 1.41484755040569E+16
11409
    # Legal values: 1 to 1e308
11410
};
11411
 
11412
# Math library build options
11413
# Package specific build options including control over
11414
# compiler flags used only in building this package,
11415
# and details of which tests are built.
11416
#
11417
cdl_component CYGPKG_LIBM_OPTIONS {
11418
    # There is no associated value.
11419
};
11420
 
11421
# >
11422
# Additional compiler flags
11423
# This option modifies the set of compiler flags for
11424
# building the math library. These flags are used in addition
11425
# to the set of global flags.
11426
#
11427
cdl_option CYGPKG_LIBM_CFLAGS_ADD {
11428
    # Flavor: data
11429
    # No user value, uncomment the following line to provide one.
11430
    # user_value ""
11431
    # value_source default
11432
    # Default value:  ((0 == CYGPKG_HAL_I386) && (0 == CYGPKG_HAL_SYNTH_I386)) ? "" : "-ffloat-store"
11433
    #     CYGPKG_HAL_I386 (unknown) == 0
11434
    #     CYGPKG_HAL_SYNTH_I386 (unknown) == 0
11435
    #   --> ""
11436
};
11437
 
11438
# Suppressed compiler flags
11439
# This option modifies the set of compiler flags for
11440
# building the math library. These flags are removed from
11441
# the set of global flags if present.
11442
#
11443
cdl_option CYGPKG_LIBM_CFLAGS_REMOVE {
11444
    # Flavor: data
11445
    # No user value, uncomment the following line to provide one.
11446
    # user_value ""
11447
    # value_source default
11448
    # Default value: ""
11449
};
11450
 
11451
# Math library tests
11452
# This option specifies the set of tests for the math library.
11453
#
11454
cdl_option CYGPKG_LIBM_TESTS {
11455
    # 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"
11456
    # Flavor: data
11457
    # 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
11458
};
11459
 
11460
# <
11461
# <
11462
# Wallclock device
11463
# The wallclock device provides real time stamps, as opposed
11464
# to the eCos kernel timers which typically just count the
11465
# number of clock ticks since the hardware was powered up.
11466
# Depending on the target platform this device may involve
11467
# interacting with a suitable clock chip, or it may be
11468
# emulated by using the kernel timers.
11469
#
11470
cdl_package CYGPKG_IO_WALLCLOCK {
11471
    # Packages cannot be added or removed, nor can their version be changed,
11472
    # simply by editing their value. Instead the appropriate configuration
11473
    # should be used to perform these actions.
11474
 
11475
    # This value cannot be modified here.
11476
    # Flavor: booldata
11477
    # Current value: 1 v2_0
11478
 
11479
    # The following properties are affected by this value
11480
    # option CYGSEM_LIBC_TIME_TIME_WORKING
11481
    #     Requires: CYGPKG_IO_WALLCLOCK
11482
    # option CYGSEM_LIBC_TIME_SETTIME_WORKING
11483
    #     Requires: CYGPKG_IO_WALLCLOCK
11484
};
11485
 
11486
# >
11487
# Number of wallclock hardware implementations
11488
#
11489
cdl_interface CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS {
11490
    # No options implement this inferface
11491
    # This value cannot be modified here.
11492
    # Flavor: data
11493
    # Current_value: 0
11494
 
11495
    # The following properties are affected by this value
11496
    # option CYGPKG_WALLCLOCK_EMULATE
11497
    #     DefaultValue:  0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS
11498
    # option CYGIMP_WALLCLOCK_NONE
11499
    #     DefaultValue:  !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS
11500
};
11501
 
11502
# Number of wallclock implementations
11503
#
11504
cdl_interface CYGINT_WALLCLOCK_IMPLEMENTATIONS {
11505
    # Implemented by CYGPKG_WALLCLOCK_EMULATE, active, enabled
11506
    # Implemented by CYGIMP_WALLCLOCK_NONE, active, disabled
11507
    # This value cannot be modified here.
11508
    # Flavor: data
11509
    # Current_value: 1
11510
    # Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS
11511
    #     CYGINT_WALLCLOCK_IMPLEMENTATIONS == 1
11512
    #   --> 1
11513
 
11514
    # The following properties are affected by this value
11515
    # interface CYGINT_WALLCLOCK_IMPLEMENTATIONS
11516
    #     Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS
11517
};
11518
 
11519
# Wallclock driver supports set/get mode
11520
#
11521
cdl_interface CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED {
11522
    # No options implement this inferface
11523
    # This value cannot be modified here.
11524
    # Flavor: data
11525
    # Current_value: 0
11526
 
11527
    # The following properties are affected by this value
11528
    # option CYGSEM_WALLCLOCK_MODE
11529
    #     DefaultValue:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ?  "set_get" : "init_get"
11530
    # option CYGSEM_WALLCLOCK_MODE
11531
    #     Requires:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ||  CYGSEM_WALLCLOCK_MODE == "init_get"
11532
};
11533
 
11534
# Wallclock mode
11535
# The wallclock driver can be used in one of two
11536
# modes. Set/get mode allows time to be kept during power
11537
# off (assuming there's a battery backed clock). Init/get
11538
# mode is slightly smaller and can be used when there is no
11539
# battery backed clock - in this mode time 0 is the time of
11540
# the board power up.
11541
#
11542
cdl_option CYGSEM_WALLCLOCK_MODE {
11543
    # Flavor: data
11544
    # No user value, uncomment the following line to provide one.
11545
    # user_value init_get
11546
    # value_source default
11547
    # Default value:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ?  "set_get" : "init_get"
11548
    #     CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0
11549
    #   --> init_get
11550
    # Legal values:  "init_get" "set_get"
11551
    # Requires:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ||  CYGSEM_WALLCLOCK_MODE == "init_get"
11552
    #     CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0
11553
    #     CYGSEM_WALLCLOCK_MODE == init_get
11554
    #   --> 1
11555
 
11556
    # The following properties are affected by this value
11557
    # option CYGSEM_WALLCLOCK_MODE
11558
    #     Requires:  CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ||  CYGSEM_WALLCLOCK_MODE == "init_get"
11559
    # option CYGSEM_WALLCLOCK_SET_GET_MODE
11560
    #     Calculated:  CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0
11561
};
11562
 
11563
# Wallclock set/get mode
11564
#
11565
cdl_option CYGSEM_WALLCLOCK_SET_GET_MODE {
11566
    # Calculated value:  CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0
11567
    #     CYGSEM_WALLCLOCK_MODE == init_get
11568
    # Flavor: bool
11569
    # Current value: 0
11570
};
11571
 
11572
# Wallclock implementation
11573
# Implementations of the wallclock device.
11574
#
11575
cdl_component CYGPKG_IO_WALLCLOCK_IMPLEMENTATION {
11576
    # There is no associated value.
11577
};
11578
 
11579
# >
11580
# Wallclock emulator
11581
# When this option is enabled, a wallclock device will be
11582
# emulated using the kernel real-time clock.
11583
#
11584
cdl_option CYGPKG_WALLCLOCK_EMULATE {
11585
    # Flavor: bool
11586
    # No user value, uncomment the following line to provide one.
11587
    # user_value 1
11588
    # value_source default
11589
    # Default value:  0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS
11590
    #     CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0
11591
    #   --> 1
11592
    # Requires: CYGPKG_KERNEL
11593
    #     CYGPKG_KERNEL == v2_0
11594
    #   --> 1
11595
};
11596
 
11597
# No wallclock
11598
# Disables the wallclock.
11599
#
11600
cdl_option CYGIMP_WALLCLOCK_NONE {
11601
    # Flavor: bool
11602
    # No user value, uncomment the following line to provide one.
11603
    # user_value 0
11604
    # value_source default
11605
    # Default value:  !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS
11606
    #     CYGPKG_KERNEL == v2_0
11607
    #     CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0
11608
    #   --> 0
11609
};
11610
 
11611
# <
11612
# Wallclock build options
11613
# Package specific build options including control over
11614
# compiler flags used only in building this package,
11615
# and details of which tests are built.
11616
#
11617
cdl_component CYGPKG_IO_WALLCLOCK_OPTIONS {
11618
    # There is no associated value.
11619
};
11620
 
11621
# >
11622
# Additional compiler flags
11623
# This option modifies the set of compiler flags for
11624
# building the wallclock device. These flags are used in addition
11625
# to the set of global flags.
11626
#
11627
cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_ADD {
11628
    # Flavor: data
11629
    # No user value, uncomment the following line to provide one.
11630
    # user_value ""
11631
    # value_source default
11632
    # Default value: ""
11633
};
11634
 
11635
# Suppressed compiler flags
11636
# This option modifies the set of compiler flags for
11637
# building the wallclock device. These flags are removed from
11638
# the set of global flags if present.
11639
#
11640
cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_REMOVE {
11641
    # Flavor: data
11642
    # No user value, uncomment the following line to provide one.
11643
    # user_value ""
11644
    # value_source default
11645
    # Default value: ""
11646
};
11647
 
11648
# Wallclock tests
11649
# This option specifies the set of tests for the
11650
# wallclock device.
11651
#
11652
cdl_option CYGPKG_IO_WALLCLOCK_TESTS {
11653
    # Calculated value:  CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : ""
11654
    #     CYGPKG_KERNEL == v2_0
11655
    # Flavor: data
11656
    # Current_value: tests/wallclock tests/wallclock2
11657
};
11658
 
11659
# <
11660
# <
11661
# Common error code support
11662
# This package contains the common list of error and
11663
# status codes. It is held centrally to allow
11664
# packages to interchange error codes and status
11665
# codes in a common way, rather than each package
11666
# having its own conventions for error/status
11667
# reporting. The error codes are modelled on the
11668
# POSIX style naming e.g. EINVAL etc. This package
11669
# also provides the standard strerror() function to
11670
# convert error codes to textual representation, as
11671
# well as an implementation of the errno idiom.
11672
#
11673
cdl_package CYGPKG_ERROR {
11674
    # Packages cannot be added or removed, nor can their version be changed,
11675
    # simply by editing their value. Instead the appropriate configuration
11676
    # should be used to perform these actions.
11677
 
11678
    # This value cannot be modified here.
11679
    # Flavor: booldata
11680
    # Current value: 1 v2_0
11681
    # Requires:  CYGBLD_ISO_ERRNO_CODES_HEADER == ""
11682
    #     CYGBLD_ISO_ERRNO_CODES_HEADER == 
11683
    #   --> 1
11684
 
11685
    # The following properties are affected by this value
11686
    # package CYGPKG_IO
11687
    #     Requires: CYGPKG_ERROR
11688
    # package CYGPKG_IO_SERIAL
11689
    #     Requires: CYGPKG_ERROR
11690
};
11691
 
11692
# >
11693
# errno variable
11694
# This package controls the behaviour of the
11695
# errno variable (or more strictly, expression)
11696
# from .
11697
#
11698
cdl_component CYGPKG_ERROR_ERRNO {
11699
    # Flavor: bool
11700
    # No user value, uncomment the following line to provide one.
11701
    # user_value 1
11702
    # value_source default
11703
    # Default value: 1
11704
    # Requires:  CYGBLD_ISO_ERRNO_HEADER == ""
11705
    #     CYGBLD_ISO_ERRNO_HEADER == 
11706
    #   --> 1
11707
};
11708
 
11709
# >
11710
# Per-thread errno
11711
# This option controls whether the standard error
11712
# code reporting variable errno is a per-thread
11713
# variable, rather than global.
11714
#
11715
cdl_option CYGSEM_ERROR_PER_THREAD_ERRNO {
11716
    # Flavor: bool
11717
    # No user value, uncomment the following line to provide one.
11718
    # user_value 1
11719
    # value_source default
11720
    # Default value: 1
11721
    # Requires: CYGVAR_KERNEL_THREADS_DATA
11722
    #     CYGVAR_KERNEL_THREADS_DATA == 1
11723
    #   --> 1
11724
};
11725
 
11726
# Tracing level
11727
# Trace verbosity level for debugging the errno
11728
# retrieval mechanism in errno.cxx. Increase this
11729
# value to get additional trace output.
11730
#
11731
cdl_option CYGNUM_ERROR_ERRNO_TRACE_LEVEL {
11732
    # Flavor: data
11733
    # No user value, uncomment the following line to provide one.
11734
    # user_value 0
11735
    # value_source default
11736
    # Default value: 0
11737
    # Legal values: 0 to 1
11738
};
11739
 
11740
# <
11741
# strerror function
11742
# This package controls the presence and behaviour of the
11743
# strerror() function from 
11744
#
11745
cdl_option CYGPKG_ERROR_STRERROR {
11746
    # Flavor: bool
11747
    # No user value, uncomment the following line to provide one.
11748
    # user_value 1
11749
    # value_source default
11750
    # Default value: 1
11751
    # Requires:  CYGBLD_ISO_STRERROR_HEADER == ""
11752
    #     CYGBLD_ISO_STRERROR_HEADER == 
11753
    #   --> 1
11754
};
11755
 
11756
# Error package build options
11757
# Package specific build options including control over
11758
# compiler flags used only in building this package,
11759
# and details of which tests are built.
11760
#
11761
cdl_component CYGPKG_ERROR_OPTIONS {
11762
    # There is no associated value.
11763
};
11764
 
11765
# >
11766
# Additional compiler flags
11767
# This option modifies the set of compiler flags for
11768
# building the error package. These flags are used in addition
11769
# to the set of global flags.
11770
#
11771
cdl_option CYGPKG_ERROR_CFLAGS_ADD {
11772
    # Flavor: data
11773
    # No user value, uncomment the following line to provide one.
11774
    # user_value ""
11775
    # value_source default
11776
    # Default value: ""
11777
};
11778
 
11779
# Suppressed compiler flags
11780
# This option modifies the set of compiler flags for
11781
# building the error package. These flags are removed from
11782
# the set of global flags if present.
11783
#
11784
cdl_option CYGPKG_ERROR_CFLAGS_REMOVE {
11785
    # Flavor: data
11786
    # No user value, uncomment the following line to provide one.
11787
    # user_value ""
11788
    # value_source default
11789
    # Default value: ""
11790
};
11791
 
11792
# <
11793
# <
11794
# <
11795
 

powered by: WebSVN 2.1.0

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