# eCos saved configuration # ---- commands -------------------------------------------------------- # This section contains information about the savefile format. # It should not be edited. Any modifications made to this section # may make it impossible for the configuration tools to read # the savefile. cdl_savefile_version 1; cdl_savefile_command cdl_savefile_version {}; cdl_savefile_command cdl_savefile_command {}; cdl_savefile_command cdl_configuration { description hardware template package }; cdl_savefile_command cdl_package { value_source user_value wizard_value inferred_value }; cdl_savefile_command cdl_component { value_source user_value wizard_value inferred_value }; cdl_savefile_command cdl_option { value_source user_value wizard_value inferred_value }; cdl_savefile_command cdl_interface { value_source user_value wizard_value inferred_value }; # ---- toplevel -------------------------------------------------------- # This section defines the toplevel configuration object. The only # values that can be changed are the name of the configuration and # the description field. It is not possible to modify the target, # the template or the set of packages simply by editing the lines # below because these changes have wide-ranging effects. Instead # the appropriate tools should be used to make such modifications. cdl_configuration eCos { description "" ; # These fields should not be modified. hardware pc ; template default ; package -template CYGPKG_HAL current ; package -template CYGPKG_IO current ; package -template CYGPKG_IO_SERIAL current ; package -template CYGPKG_INFRA current ; package -template CYGPKG_KERNEL current ; package -template CYGPKG_MEMALLOC current ; package -template CYGPKG_ISOINFRA current ; package -template CYGPKG_LIBC current ; package -template CYGPKG_LIBC_I18N current ; package -template CYGPKG_LIBC_SETJMP current ; package -template CYGPKG_LIBC_SIGNALS current ; package -template CYGPKG_LIBC_STARTUP current ; package -template CYGPKG_LIBC_STDIO current ; package -template CYGPKG_LIBC_STDLIB current ; package -template CYGPKG_LIBC_STRING current ; package -template CYGPKG_LIBC_TIME current ; package -template CYGPKG_LIBM current ; package -template CYGPKG_IO_WALLCLOCK current ; package -template CYGPKG_ERROR current ; package -hardware CYGPKG_HAL_I386 current ; package -hardware CYGPKG_HAL_I386_PC current ; package -hardware CYGPKG_IO_SERIAL_I386_PC current ; package -hardware CYGPKG_IO_PCI current ; package -hardware CYGPKG_DEVS_ETH_I82559 current ; package CYGPKG_NET current ; package CYGPKG_IO_ETH_DRIVERS current ; }; # ---- conflicts ------------------------------------------------------- # There are no conflicts. # ---- contents -------------------------------------------------------- # > # > # Global build options # Global build options including control over # compiler flags, linker flags and choice of toolchain. # cdl_component CYGBLD_GLOBAL_OPTIONS { # There is no associated value. # The following properties are affected by this value }; # > # Global command prefix # This option specifies the command prefix used when # invoking the build tools. If your host operating system # is Linux you can set this to empty to use your native tools. # If so, your native gcc must be gcc-2.95.2 or later, and # "ld -v" must report a version more recent than 2.9.1. # cdl_option CYGBLD_GLOBAL_COMMAND_PREFIX { # Flavor: data # No user value, uncomment the following line to provide one. # user_value i386-elf # value_source default # Default value: i386-elf }; # Global compiler flags # This option controls the global compiler flags which # are used to compile all packages by # default. Individual packages may define # options which override these global flags. # cdl_option CYGBLD_GLOBAL_CFLAGS { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "-Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" # value_source default # Default value: "-Wall -Wpointer-arith -Wstrict-prototypes -Winline -Wundef -Woverloaded-virtual -g -O2 -ffunction-sections -fdata-sections -fno-rtti -fno-exceptions -fvtable-gc -finit-priority" }; # Global linker flags # This option controls the global linker flags. Individual # packages may define options which override these global flags. # cdl_option CYGBLD_GLOBAL_LDFLAGS { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "-g -nostdlib -Wl,--gc-sections -Wl,-static" # value_source default # Default value: "-g -nostdlib -Wl,--gc-sections -Wl,-static" }; # Build GDB stub loader image # This option enables the building of the GDB stubs for the # board. The common HAL controls takes care of most of the # build process, but the final conversion from ELF image to # binary data is handled by the platform CDL, allowing # relocation of the data if necessary. # cdl_option CYGBLD_BUILD_GDB_STUBS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYG_HAL_STARTUP == "FLOPPY" # CYG_HAL_STARTUP == RAM # --> 0 # Requires: CYGSEM_HAL_ROM_MONITOR # CYGSEM_HAL_ROM_MONITOR == 0 # --> 0 # Requires: CYGBLD_BUILD_COMMON_GDB_STUBS # CYGBLD_BUILD_COMMON_GDB_STUBS == 0 # --> 0 # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 # --> 0 # Requires: ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT # CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0 # --> 1 # Requires: ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT # CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT == 1 # --> 0 # Requires: ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT # CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1 # --> 0 # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT # CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT == 1 # --> 0 # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM # CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM == 1 # --> 0 }; # Build common GDB stub ROM image # Unless a target board has specific requirements to the # stub implementation, it can use a simple common stub. # This option, which gets enabled by platform HALs as # appropriate, controls the building of the common stub. # cdl_option CYGBLD_BUILD_COMMON_GDB_STUBS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 # --> 0 # The following properties are affected by this value # option CYGBLD_BUILD_GDB_STUBS # Requires: CYGBLD_BUILD_COMMON_GDB_STUBS }; # < # < # eCos HAL # doc: redirect/the-ecos-hardware-abstraction-layer-hal.html # The eCos HAL package provide a porting layer for # higher-level parts of the system such as the kernel and the # C library. Each installation should have HAL packages for # one or more architectures, and for each architecture there # may be one or more supported platforms. It is necessary to # select one target architecture and one platform for that # architecture. There are also a number of configuration # options that are common to all HAL packages. # cdl_package CYGPKG_HAL { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value }; # > # Platform-independent HAL options # A number of configuration options are common to most or all # HAL packages, for example options controlling how much state # should be saved during a context switch. The implementations # of these options will vary from architecture to architecture. # cdl_component CYGPKG_HAL_COMMON { # There is no associated value. }; # > # Provide eCos kernel support # The HAL can be configured to either support the full eCos # kernel, or to support only very simple applications which do # not require a full kernel. If kernel support is not required # then some of the startup, exception, and interrupt handling # code can be eliminated. # cdl_option CYGFUN_HAL_COMMON_KERNEL_SUPPORT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 # Requires: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 }; # HAL allows GDB protocol to be disabled for... # cdl_interface CYGINT_HAL_DIAG_DISABLE_GDB_PROTOCOL_SUPPORTED { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # option CYGDBG_HAL_DIAG_DISABLE_GDB_PROTOCOL # ActiveIf: CYGINT_HAL_DIAG_DISABLE_GDB_PROTOCOL_SUPPORTED }; # Disable GDB protocol for diagnostic output # This option forces diagnostic output to not use the GDB # protocol. Most programs will use the GDB protocol for # diagnostic I/O because of the environment. This option # allows for an explicit override in these cases. # cdl_option CYGDBG_HAL_DIAG_DISABLE_GDB_PROTOCOL { # This option is not active # ActiveIf constraint: CYGINT_HAL_DIAG_DISABLE_GDB_PROTOCOL_SUPPORTED # CYGINT_HAL_DIAG_DISABLE_GDB_PROTOCOL_SUPPORTED == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # HAL exception support # When a processor exception occurs, for example an attempt to # execute an illegal instruction or to perform a divide by # zero, this exception may be handled in a number of different # ways. If the target system has gdb support then typically # the exception will be handled by gdb code. Otherwise if the # HAL exception support is enabled then the HAL will invoke a # routine deliver_exception(). Typically this routine will be # provided by the eCos kernel, but it is possible for # application code to provide its own implementation. If the # HAL exception support is not enabled and a processor # exception occurs then the behaviour of the system is # undefined. # cdl_option CYGPKG_HAL_EXCEPTIONS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: CYGPKG_KERNEL_EXCEPTIONS # CYGPKG_KERNEL_EXCEPTIONS == 1 # --> 1 # Requires: CYGPKG_KERNEL_EXCEPTIONS # CYGPKG_KERNEL_EXCEPTIONS == 1 # --> 1 # The following properties are affected by this value # component CYGPKG_KERNEL_EXCEPTIONS # Requires: CYGPKG_HAL_EXCEPTIONS }; # Stop calling constructors early # This option supports environments where some constructors # must be run in the context of a thread rather than at # simple system startup time. A boolean flag named # cyg_hal_stop_constructors is set to 1 when constructors # should no longer be invoked. It is up to some other # package to deal with the rest of the constructors. # In the current version this is only possible with the # C library. # cdl_option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS # CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS == 0 # --> 0 # The following properties are affected by this value # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS # Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG }; # Install MMU tables. # This option controls whether this application installs # its own Memory Management Unit (MMU) tables, or relies on the # existing environment to run. # cdl_option CYGSEM_HAL_INSTALL_MMU_TABLES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGSEM_HAL_STATIC_MMU_TABLES # Requires: CYGSEM_HAL_INSTALL_MMU_TABLES }; # Use static MMU tables. # This option defines an environment where any Memory # Management Unit (MMU) tables are constant. Normally used by ROM # based environments, this provides a way to save RAM usage which # would otherwise be required for these tables. # cdl_option CYGSEM_HAL_STATIC_MMU_TABLES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGSEM_HAL_INSTALL_MMU_TABLES # CYGSEM_HAL_INSTALL_MMU_TABLES == 1 # --> 1 }; # < # HAL interrupt handling # A number of configuration options related to interrupt # handling are common to most or all HAL packages, even though # the implementations will vary from architecture to # architecture. # cdl_component CYGPKG_HAL_COMMON_INTERRUPTS { # There is no associated value. }; # > # Use separate stack for interrupts # When an interrupt occurs this interrupt can be handled either # on the current stack or on a separate stack maintained by the # HAL. Using a separate stack requires a small number of extra # instructions in the interrupt handling code, but it has the # advantage that it is no longer necessary to allow extra space # in every thread stack for the interrupt handlers. The amount # of extra space required depends on the interrupt handlers # that are being used. # cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_USE_INTERRUPT_STACK { # Flavor: bool user_value 1 # value_source user # Default value: 1 }; # Interrupt stack size # This configuration option specifies the stack size in bytes # for the interrupt stack. Typically this should be a multiple # of 16, but the exact requirements will vary from architecture # to architecture. The interrupt stack serves two separate # purposes. It is used as the stack during system # initialization. In addition, if the interrupt system is # configured to use a separate stack then all interrupts will # be processed on this stack. The exact memory requirements # will vary from application to application, and will depend # heavily on whether or not other interrupt-related options, # for example nested interrupts, are enabled. # cdl_option CYGNUM_HAL_COMMON_INTERRUPTS_STACK_SIZE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 4096 # value_source default # Default value: 4096 # Legal values: 1024 to 1048576 }; # Allow nested interrupts # When an interrupt occurs the HAL interrupt handling code can # either leave interrupts disabled for the duration of the # interrupt handling code, or by doing some extra work it can # reenable interrupts before invoking the interrupt handler and # thus allow nested interrupts to happen. If all the interrupt # handlers being used are small and do not involve any loops # then it is usually better to disallow nested interrupts. # However if any of the interrupt handlers are more complicated # than nested interrupts will usually be required. # cdl_option CYGSEM_HAL_COMMON_INTERRUPTS_ALLOW_NESTING { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Save minimum context on interrupt # The HAL interrupt handling code can exploit the calling conventions # defined for a given architecture to reduce the amount of state # that has to be saved. Generally this improves performance and # reduces code size. However it can make source-level debugging # more difficult. # cdl_option CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGBLD_BUILD_GDB_STUBS # Requires: ! CYGDBG_HAL_COMMON_INTERRUPTS_SAVE_MINIMUM_CONTEXT }; # Chain all interrupts together # Interrupts can be attached to vectors either singly, or be # chained together. The latter is necessary if there is no way # of discovering which device has interrupted without # inspecting the device itself. It can also reduce the amount # of RAM needed for interrupt decoding tables and code. # cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # The following properties are affected by this value # option CYGIMP_KERNEL_INTERRUPTS_CHAIN # Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN }; # Ignore spurious [fleeting] interrupts # On some hardware, interrupt sources may not be de-bounced or # de-glitched. Rather than try to handle these interrupts (no # handling may be possible), this option allows the HAL to simply # ignore them. In most cases, if the interrupt is real it will # reoccur in a detectable form. # cdl_option CYGIMP_HAL_COMMON_INTERRUPTS_IGNORE_SPURIOUS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # < # HAL context switch support # A number of configuration options related to thread contexts # are common to most or all HAL packages, even though the # implementations will vary from architecture to architecture. # cdl_component CYGPKG_HAL_COMMON_CONTEXT { # There is no associated value. # The following properties are affected by this value }; # > # Use minimum thread context # The thread context switch code can exploit the calling # conventions defined for a given architecture to reduce the # amount of state that has to be saved during a context # switch. Generally this improves performance and reduces # code size. However it can make source-level debugging more # difficult. # cdl_option CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGBLD_BUILD_GDB_STUBS # Requires: ! CYGDBG_HAL_COMMON_CONTEXT_SAVE_MINIMUM }; # < # Source-level debugging support # If the source level debugger gdb is to be used for debugging # application code then it may be necessary to configure in support # for this in the HAL. # cdl_component CYGPKG_HAL_DEBUG { # There is no associated value. }; # > # Support for GDB stubs # The HAL implements GDB stubs for the target. # cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS { # Implemented by CYGPKG_HAL_I386_PC, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # The following properties are affected by this value # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS }; # Include GDB stubs in HAL # This option causes a set of GDB stubs to be included into the # system. On some target systems the GDB support will be # provided by other means, for example by a ROM monitor. On # other targets, especially when building a ROM-booting system, # the necessary support has to go into the target library # itself. # cdl_option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS { # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS # CYGINT_HAL_DEBUG_GDB_STUBS == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: ! CYGSEM_HAL_USE_ROM_MONITOR # CYGSEM_HAL_USE_ROM_MONITOR == GDB_stubs # --> 0 # The following properties are affected by this value # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT # ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # option CYGBLD_BUILD_COMMON_GDB_STUBS # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # option CYGBLD_BUILD_GDB_STUBS # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS }; # Support for external break support in GDB stubs # The HAL implements external break (or asynchronous interrupt) # in the GDB stubs for the target. # cdl_interface CYGINT_HAL_DEBUG_GDB_STUBS_BREAK { # Implemented by CYGPKG_HAL_I386_PC, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # The following properties are affected by this value # option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT # ActiveIf: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK }; # Include GDB external break support for stubs # This option causes the GDB stub to add a serial interrupt handler # which will listen for GDB break packets. This lets you stop the # target asynchronously when using GDB, usually by hitting Control+C # or pressing the STOP button. This option differs from # CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT in that it is used when # GDB stubs are present. # cdl_option CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT { # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_STUBS_BREAK # CYGINT_HAL_DEBUG_GDB_STUBS_BREAK == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 # --> 0 # The following properties are affected by this value # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT # Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT # option CYGBLD_BUILD_GDB_STUBS # Requires: ! CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT }; # Platform does not support CTRLC # cdl_interface CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT # ActiveIf: CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 }; # Include GDB external break support when no stubs # This option adds an interrupt handler for the GDB serial line # which will listen for GDB break packets. This lets you stop the # target asynchronously when using GDB, usually by hitting Control+C # or pressing the STOP button. This option differs from # CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT in that it is used when the GDB # stubs are NOT present. # cdl_option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT { # ActiveIf constraint: CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # CYGSEM_HAL_USE_ROM_MONITOR == GDB_stubs # CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS == 0 # --> 1 # ActiveIf constraint: CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 # CYGINT_HAL_DEBUG_GDB_CTRLC_UNSUPPORTED == 0 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: !CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT # CYGDBG_HAL_DEBUG_GDB_BREAK_SUPPORT == 0 # --> 1 # The following properties are affected by this value # option CYGBLD_BUILD_GDB_STUBS # Requires: ! CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT }; # Include GDB multi-threading debug support # This option enables some extra HAL code which is needed # to support multi-threaded source level debugging. # cdl_option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT { # ActiveIf constraint: CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT # CYGSEM_HAL_ROM_MONITOR == 0 # CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT # option CYGBLD_BUILD_GDB_STUBS # Requires: ! CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT }; # < # ROM monitor support # Support for ROM monitors can be built in to your application. # It may also be relevant to build your application as a ROM monitor # itself. Such options are contained here if relevant for your chosen # platform. The options and ROM monitors available to choose are # platform-dependent. # cdl_component CYGPKG_HAL_ROM_MONITOR { # There is no associated value. # The following properties are affected by this value }; # > # Target has virtual vector support # cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT { # Implemented by CYGPKG_HAL_I386_PC, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # The following properties are affected by this value # component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT # ActiveIf: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT }; # The platform port was written with vector support # Many platform HALs have adopted the virtual vector support # after its introduction. On those platforms, old ROM # monitors will not provide the necessary services - and # so the use of these services should be disabled per default. # Newer ports, however, guarantee to provide the necessary # services in all ROM monitors, and so default to use the # services. # cdl_interface CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_GUARANTEED { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG # DefaultValue: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_GUARANTEED }; # Enable use of virtual vector calling interface # Virtual vector support allows the HAL to let the ROM # monitor handle certain operations. The virtual vector table # defines a calling interface between applications running in # RAM and the ROM monitor. # cdl_component CYGSEM_HAL_VIRTUAL_VECTOR_SUPPORT { # ActiveIf constraint: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT # CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT == 1 # --> 1 # Calculated value: 1 # Flavor: bool # Current value: 1 }; # > # Do diagnostic IO via virtual vector table # The virtual vector table provides functions for # diagnostic IO. Using these both reduce the application # size a bit, and allow the ROM monitor to control which # communication intererface to use. Careful when enabling # this option as it may cause output to disappear (if # the ROM monitor does not provide the necessary # services). # cdl_option CYGSEM_HAL_VIRTUAL_VECTOR_DIAG { # Flavor: bool user_value 1 # value_source user # Default value: CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_GUARANTEED # CYGINT_HAL_VIRTUAL_VECTOR_SUPPORT_GUARANTEED == 0 # --> 0 }; # < # Behave as a ROM monitor # Enable this option if this program is to be used as a ROM monitor, # i.e. applications will be loaded into RAM on the board, and this # ROM monitor may process exceptions or interrupts generated from the # application. This enables features such as utilizing a separate # interrupt stack when exceptions are generated. # cdl_option CYGSEM_HAL_ROM_MONITOR { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYG_HAL_STARTUP == "FLOPPY" # CYG_HAL_STARTUP == RAM # --> 0 # The following properties are affected by this value # option CYGBLD_BUILD_GDB_STUBS # Requires: CYGSEM_HAL_ROM_MONITOR # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT # ActiveIf: CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT }; # Work with a ROM monitor # Support can be enabled for different varieties of ROM monitor. # This support changes various eCos semantics such as the encoding # of diagnostic output, or the overriding of hardware interrupt # vectors. # Firstly there is "Generic" support which prevents the HAL # from overriding the hardware vectors that it does not use, to # instead allow an installed ROM monitor to handle them. This is # the most basic support which is likely to be common to most # implementations of ROM monitor. # "GDB_stubs" provides support when GDB stubs are included in # the ROM monitor or boot ROM. # cdl_option CYGSEM_HAL_USE_ROM_MONITOR { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 1 GDB_stubs # value_source default # Default value: CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 # CYG_HAL_STARTUP == RAM # --> 1 GDB_stubs # Legal values: "Generic" "GDB_stubs" # Requires: CYG_HAL_STARTUP == "RAM" # CYG_HAL_STARTUP == RAM # --> 1 # The following properties are affected by this value # option CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS # Requires: ! CYGSEM_HAL_USE_ROM_MONITOR # option CYGDBG_HAL_DEBUG_GDB_CTRLC_SUPPORT # ActiveIf: CYGSEM_HAL_USE_ROM_MONITOR || CYGDBG_HAL_DEBUG_GDB_INCLUDE_STUBS }; # < # Common HAL tests # This option specifies the set of tests for the common HAL. # cdl_option CYGPKG_HAL_TESTS { # Calculated value: "tests/cache tests/context tests/intr" # Flavor: data # Current_value: tests/cache tests/context tests/intr }; # i386 architecture # The i386 architecture HAL package provides generic # support for this processor architecture. It is also # necessary to select a specific target platform HAL # package. # cdl_package CYGPKG_HAL_I386 { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # option CYGPKG_LIBM_CFLAGS_ADD # DefaultValue: 0 == CYGPKG_HAL_I386 ? "" : "-ffloat-store" }; # > # Linker script # cdl_option CYGBLD_LINKER_SCRIPT { # Calculated value: "src/i386.ld" # Flavor: data # Current_value: src/i386.ld }; # i386 PC target # The i386 PC Target HAL package provides the # support needed to run eCos binaries on an i386 PC. # cdl_package CYGPKG_HAL_I386_PC { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # package CYGPKG_IO_SERIAL_I386_PC # ActiveIf: CYGPKG_HAL_I386_PC }; # > # Startup type # At the moment only RAM startup is supported. This should # be extended to include ROM startup which would be used to # test early initialization code copying data/code to "RAM". # cdl_component CYG_HAL_STARTUP { # Flavor: data # No user value, uncomment the following line to provide one. # user_value RAM # value_source default # Default value: RAM # Legal values: "RAM" "FLOPPY" # The following properties are affected by this value # option CYGBLD_BUILD_GDB_STUBS # Requires: CYG_HAL_STARTUP == "FLOPPY" # component CYGHWR_MEMORY_LAYOUT # Calculated: CYG_HAL_STARTUP == "RAM" ? "i386_pc_ram" : "i386_pc_floppy" # option CYGHWR_MEMORY_LAYOUT_LDI # Calculated: CYG_HAL_STARTUP == "RAM" ? "" : "" # option CYGHWR_MEMORY_LAYOUT_H # Calculated: CYG_HAL_STARTUP == "RAM" ? "" : "" # option CYGSEM_HAL_ROM_MONITOR # Requires: CYG_HAL_STARTUP == "FLOPPY" # option CYGSEM_HAL_USE_ROM_MONITOR # DefaultValue: CYG_HAL_STARTUP == "RAM" ? "GDB_stubs" : 0 # option CYGSEM_HAL_USE_ROM_MONITOR # Requires: CYG_HAL_STARTUP == "RAM" }; # Diagnostic serial port baud rate # This option selects the baud rate used for the diagnostic port. # Note: this should match the value chosen for the GDB port if the # diagnostic and GDB port are the same. # cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_BAUD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 38400 # value_source default # Default value: 38400 # Legal values: 9600 19200 38400 57600 115200 }; # GDB serial port baud rate # This option controls the baud rate used for the GDB connection. # cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL_BAUD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 38400 # value_source default # Default value: 38400 # Legal values: 9600 19200 38400 57600 115200 }; # Number of communication channels on the board # This define the number of serial ports that will be used by the HAL # cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Legal values: 1 to 2 # The following properties are affected by this value # option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL # LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL # LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 # option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT # LegalValues: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 }; # Debug serial port # On PCs with two serial ports, this option # chooses which port will be used to connect to a host # running GDB. # cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_DEBUG_CHANNEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 # CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 1 }; # Diagnostic serial port # On PCs with two serial ports, this option # chooses which port will be used for diagnostic output. # cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 # CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 1 }; # Default console channel. # cdl_option CYGNUM_HAL_VIRTUAL_VECTOR_CONSOLE_CHANNEL_DEFAULT { # Calculated value: 0 # Flavor: data # Current_value: 0 # Legal values: 0 to CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS-1 # CYGNUM_HAL_VIRTUAL_VECTOR_COMM_CHANNELS == 1 }; # Real-time clock constants. # The RTC period is based # on the clock input to the 8254, which is 1193180 Hz. CYGNUM_HAL_RTC_PERIOD # is set for 100 ticks per second. # cdl_component CYGNUM_HAL_RTC_CONSTANTS { # There is no associated value. }; # > # Real-time clock numerator # cdl_option CYGNUM_HAL_RTC_NUMERATOR { # Calculated value: 1000000000 # Flavor: data # Current_value: 1000000000 }; # Real-time clock denominator # cdl_option CYGNUM_HAL_RTC_DENOMINATOR { # Calculated value: 100 # Flavor: data # Current_value: 100 }; # Real-time clock period # cdl_option CYGNUM_HAL_RTC_PERIOD { # Calculated value: 11932 # Flavor: data # Current_value: 11932 }; # < # Memory layout # cdl_component CYGHWR_MEMORY_LAYOUT { # Calculated value: CYG_HAL_STARTUP == "RAM" ? "i386_pc_ram" : "i386_pc_floppy" # CYG_HAL_STARTUP == RAM # Flavor: data # Current_value: i386_pc_ram }; # > # Memory layout linker script fragment # cdl_option CYGHWR_MEMORY_LAYOUT_LDI { # Calculated value: CYG_HAL_STARTUP == "RAM" ? "" : "" # CYG_HAL_STARTUP == RAM # Flavor: data # Current_value: }; # Memory layout header file # cdl_option CYGHWR_MEMORY_LAYOUT_H { # Calculated value: CYG_HAL_STARTUP == "RAM" ? "" : "" # CYG_HAL_STARTUP == RAM # Flavor: data # Current_value: }; # < # Diagnostic output options # cdl_component CYGSEM_HAL_I386_PC_DIAG { # There is no associated value. }; # > # Output to PC screen # This option causes any diagnostic output to # be sent to the PC monitor screen. # cdl_option CYGSEM_HAL_I386_PC_DIAG_SCREEN { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL1 # CYGSEM_HAL_I386_PC_DIAG_SERIAL1 == 1 # --> 0 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL2 # CYGSEM_HAL_I386_PC_DIAG_SERIAL2 == 0 # --> 1 # The following properties are affected by this value # option CYGSEM_HAL_I386_PC_DIAG_SERIAL1 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SCREEN # option CYGSEM_HAL_I386_PC_DIAG_SERIAL2 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SCREEN }; # Output to serial line 1 # This option causes any diagnostic output to # be sent to serial line 1. # cdl_option CYGSEM_HAL_I386_PC_DIAG_SERIAL1 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SCREEN # CYGSEM_HAL_I386_PC_DIAG_SCREEN == 0 # --> 1 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL2 # CYGSEM_HAL_I386_PC_DIAG_SERIAL2 == 0 # --> 1 # The following properties are affected by this value # option CYGSEM_HAL_I386_PC_DIAG_SCREEN # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL1 # option CYGSEM_HAL_I386_PC_DIAG_SERIAL2 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL1 }; # Output to serial line 1 # This option causes any diagnostic output to # be sent to serial line 2. # cdl_option CYGSEM_HAL_I386_PC_DIAG_SERIAL2 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SCREEN # CYGSEM_HAL_I386_PC_DIAG_SCREEN == 0 # --> 1 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL1 # CYGSEM_HAL_I386_PC_DIAG_SERIAL1 == 1 # --> 0 # The following properties are affected by this value # option CYGSEM_HAL_I386_PC_DIAG_SCREEN # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL2 # option CYGSEM_HAL_I386_PC_DIAG_SERIAL1 # Requires: !CYGSEM_HAL_I386_PC_DIAG_SERIAL2 }; # Serial Port Speed # This option selects the baud rate used for the diagnostic port. # cdl_option CYGSEM_HAL_I386_PC_DIAG_SERIAL_SPEED { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 38400 # value_source default # Default value: 38400 # Legal values: 9600 19200 38400 57600 115200 }; # < # < # < # < # I/O sub-system # doc: redirect/ecos-device-drivers.html # The eCos system is supplied with a number of different # device drivers. This option enables the basic I/O system # support which is the basis for all drivers. # cdl_package CYGPKG_IO { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_ERROR # CYGPKG_ERROR == current # --> 1 # The following properties are affected by this value # package CYGPKG_IO_SERIAL # ActiveIf: CYGPKG_IO # package CYGPKG_LIBC_STDIO # Requires: CYGPKG_IO # package CYGPKG_NET # Requires: CYGPKG_IO }; # > # Debug I/O sub-system # This option enables verbose messages to be displayed on the # system 'diag' device during I/O system initialization. # cdl_option CYGDBG_IO_INIT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Basic support for file based I/O # This option control support for simple file I/O primitives. It is only # present if the FILEIO package is not included. # cdl_component CYGPKG_IO_FILE_SUPPORT { # ActiveIf constraint: !CYGPKG_IO_FILEIO # CYGPKG_IO_FILEIO (unknown) == 0 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Number of open files # This option controls the number of open files. # cdl_option CYGPKG_IO_NFILE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 16 # value_source default # Default value: 16 }; # < # PCI configuration library # doc: redirect/ecos-device-drivers.html # The PCI configuration library provides initialization of devices # on the PCI bus. Functions to find and access these devices are # also provided. # cdl_package CYGPKG_IO_PCI { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current }; # > # PCI build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_IO_PCI_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the PCI configuration library. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_IO_PCI_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the PCI configuration library. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_IO_PCI_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # PCI tests # This option specifies the set of tests for the PCI configuration library. # cdl_option CYGPKG_IO_PCI_TESTS { # Calculated value: "tests/pci1 tests/pci2" # Flavor: data # Current_value: tests/pci1 tests/pci2 }; # < # < # Common ethernet support # Platform independent ethernet drivers # cdl_package CYGPKG_IO_ETH_DRIVERS { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # package CYGPKG_DEVS_ETH_I82559 # ActiveIf: CYGPKG_IO_ETH_DRIVERS }; # > # Support for standard eCos TCP/IP stack. # cdl_component CYGPKG_IO_ETH_DRIVERS_NET { # ActiveIf constraint: CYGPKG_NET # CYGPKG_NET == current # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Warn when there are no more mbufs # Warnings about running out of mbufs are printed to the # diagnostic output channel via diag_printf() if this option # is enabled. Mbufs are the network stack's basic dynamic # memory objects that hold all packets in transit; running # out is bad for performance but not fatal, not a crash. # You might want to turn off the warnings to preserve realtime # properties of the system even in extremis. # cdl_option CYGPKG_IO_ETH_DRIVERS_WARN_NO_MBUFS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Simulate network failures for testing # This package contains a suite of simulated failure modes # for the ethernet device layer, including dropping and/or # corrupting received packets, dropping packets queued for # transmission, and simulating a complete network break. # It requires the kernel as a source of time information. # cdl_component CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Drop incoming packets (percentage) # cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_RX { # This option is not active # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 1 10 # value_source default # Default value: 1 10 # Legal values: 10 50 80 }; # Corrupt incoming packets (percentage) # cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_CORRUPT_RX { # This option is not active # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 1 10 # value_source default # Default value: 1 10 # Legal values: 10 50 80 }; # Drop outgoing packets (percentage) # cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_DROP_TX { # This option is not active # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 1 10 # value_source default # Default value: 1 10 # Legal values: 10 50 80 }; # Simulate a line cut from time to time # This option causes the system to drop all packets for a # short random period (10s of seconds), and then act # normally for up to 4 times that long. This simulates your # sysadmin fiddling with plugs in the network switch # cupboard. # cdl_option CYGPKG_IO_ETH_DRIVERS_SIMULATE_LINE_CUT { # This option is not active # The parent CYGPKG_IO_ETH_DRIVERS_SIMULATED_FAILURES is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # < # < # Support for stand-alone network stack. # cdl_component CYGPKG_IO_ETH_DRIVERS_STAND_ALONE { # This option is not active # ActiveIf constraint: !CYGPKG_NET # CYGPKG_NET == current # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Number of [network] buffers # This option is used to allocate space to buffer incoming network # packets. These buffers are used to hold data until they can be # logically processed by higher layers. # cdl_option CYGNUM_IO_ETH_DRIVERS_NUM_PKT { # This option is not active # The parent CYGPKG_IO_ETH_DRIVERS_STAND_ALONE is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 16 # value_source default # Default value: 16 # Legal values: 2 to 32 }; # Show driver warnings # Selecting this option will allows the stand-alone ethernet driver # to display warnings on the system console when incoming network # packets are being discarded due to lack of buffer space. # cdl_option CYGSEM_IO_ETH_DRIVERS_WARN { # This option is not active # The parent CYGPKG_IO_ETH_DRIVERS_STAND_ALONE is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Print driver debug information # Selecting this option will enable the stand-alone driver to print # lots of information. Useful only when getting a low-level hardware # driver to work. # cdl_option CYGSEM_IO_ETH_DRIVERS_DEBUG { # This option is not active # The parent CYGPKG_IO_ETH_DRIVERS_STAND_ALONE is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # < # Common ethernet support build options # cdl_component CYGPKG_IO_ETH_DRIVERS_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the common ethernet support package. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_IO_ETH_DRIVERS_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "-D_KERNEL -D__ECOS" # value_source default # Default value: "-D_KERNEL -D__ECOS" }; # < # Intel PRO/100+ ethernet driver # Ethernet driver for Intel PRO/100+ boards. # cdl_package CYGPKG_DEVS_ETH_I82559 { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # ActiveIf constraint: CYGPKG_IO_ETH_DRIVERS # CYGPKG_IO_ETH_DRIVERS == current # --> 1 # This value cannot be modified here. # Flavor: booldata # Current value: 1 current }; # > # Prints ethernet device status info during startup # The ethernet device initialization code can print lots of info # to confirm that it has found the devices on the PCI bus, read # the MAC address from EEPROM correctly, and so on, and also # displays the mode (10/100MHz, half/full duplex) of the # connection. # cdl_option CYGDBG_DEVS_ETH_PC_I82559_CHATTER { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Number of supported interfaces. # This option selects the number of PCI ethernet interfaces to # be supported by the driver. # cdl_option CYGNUM_DEVS_ETH_PC_I82559_DEV_COUNT { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 2 # value_source default # Default value: 2 # Legal values: 1 2 }; # Keep Ethernet statistics # The ethernet device can maintain statistics about the network, # specifically a great variety of error rates which are useful # for network management. SNMP for example uses this # information. There is some performance cost in maintaining # this information; disable this option to recoup that. # cdl_component CYGDBG_DEVS_ETH_PC_I82559_KEEP_STATISTICS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Keep i82559 Internal statistics # The i82559 keeps internal counters, and it is possible to # acquire these. But the i82559 (reputedly) does not service # the network whilst uploading the data to RAM from its # internal registers. If throughput is a problem, disable # this option to acquire only those statistics gathered by # software, so that the i82559 never sleeps. # cdl_option CYGDBG_DEVS_ETH_PC_I82559_KEEP_82559_STATISTICS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # SIOCSIFHWADDR records MAC address in EEPROM # The ioctl() socket call with operand SIOCSIFHWADDR sets the # interface hardware address - the MAC address or ethernet # address. This option causes the new MAC address to be written # into the EEPROM associated with the interface, so that the new # MAC address is permanently recorded. Doing this should be a # carefully chosen decision, hence this option. # cdl_component CYGPKG_DEVS_ETH_PC_I82559_WRITE_EEPROM { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Intel PRO/100+ ethernet driver build options # cdl_component CYGPKG_DEVS_ETH_I82559_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the Intel PRO/100+ ethernet driver # package. These flags are used in addition to the set of # global flags. # cdl_option CYGPKG_DEVS_ETH_I82559_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "-D_KERNEL -D__ECOS" # value_source default # Default value: "-D_KERNEL -D__ECOS" }; # < # < # < # < # Serial device drivers # doc: redirect/ecos-device-drivers.html # This option enables drivers for basic I/O services on # serial devices. # cdl_package CYGPKG_IO_SERIAL { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # ActiveIf constraint: CYGPKG_IO # CYGPKG_IO == current # --> 1 # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_ERROR # CYGPKG_ERROR == current # --> 1 # The following properties are affected by this value # package CYGPKG_IO_SERIAL_I386_PC # ActiveIf: CYGPKG_IO_SERIAL }; # > # Support non-blocking read and write calls # This option enables extra code in the generic serial driver # which allows clients to switch read() and write() call # semantics from blocking to non-blocking. # cdl_option CYGOPT_IO_SERIAL_SUPPORT_NONBLOCKING { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Driver requires block transfer callback functions # Some low-level drivers can be optimized to transfer blocks # of data instead of a single character at a time. These usually # rely on a hardware FIFO of some sort. # cdl_interface CYGINT_IO_SERIAL_BLOCK_TRANSFER { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Serial driver supports line status # cdl_interface CYGINT_IO_SERIAL_LINE_STATUS_HW { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS # Requires: CYGINT_IO_SERIAL_LINE_STATUS_HW > 0 # option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS # DefaultValue: 0 != CYGINT_IO_SERIAL_LINE_STATUS_HW }; # Support line status callbacks # This option indicates that if the serial driver supports it, # serial line status and modem status information should be # propagated to higher layers via callbacks. # cdl_option CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 != CYGINT_IO_SERIAL_LINE_STATUS_HW # CYGINT_IO_SERIAL_LINE_STATUS_HW == 0 # --> 0 # Requires: CYGINT_IO_SERIAL_LINE_STATUS_HW > 0 # CYGINT_IO_SERIAL_LINE_STATUS_HW == 0 # --> 0 # The following properties are affected by this value # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW # Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW # DefaultValue: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ? CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 }; # Flow control # This component contains options related to flow control. # cdl_component CYGPKG_IO_SERIAL_FLOW_CONTROL { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW) # CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE == 0 # CYGOPT_IO_SERIAL_FLOW_CONTROL_HW == 0 # --> 0 }; # > # Software flow control # This component enables support of software flow control. # cdl_component CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE { # This option is not active # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # component CYGPKG_IO_SERIAL_FLOW_CONTROL # Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW) }; # > # Start character # This option specifies the ascii character used to # indicate that transmission should start. # cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XON_CHAR { # This option is not active # The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 17 # value_source default # Default value: 17 # Legal values: 0 to 255 }; # Stop character # This option specifies the ascii character used to # indicate that transmission should stop. # cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_XOFF_CHAR { # This option is not active # The parent CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 19 # value_source default # Default value: 19 # Legal values: 0 to 255 }; # < # Hardware flow control # If the hardware supports it, this option allows hardware # flow control to be enabled. This may be in the form of # either or both of RTS/CTS, or DSR/DTR flow control. # cdl_option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW { # This option is not active # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled # ActiveIf constraint: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 # CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ? CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 # CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0 # CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0 # --> 0 # Requires: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 # CYGINT_IO_SERIAL_FLOW_CONTROL_HW == 0 # --> 0 # Requires: CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS # CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS == 0 # --> 0 # The following properties are affected by this value # component CYGPKG_IO_SERIAL_FLOW_CONTROL # Requires: (CYGOPT_IO_SERIAL_FLOW_CONTROL_SOFTWARE || CYGOPT_IO_SERIAL_FLOW_CONTROL_HW) }; # Serial h/w supports hardware flow control # cdl_interface CYGINT_IO_SERIAL_FLOW_CONTROL_HW { # No options implement this inferface # This option is not active # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW # ActiveIf: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW # Requires: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 # option CYGOPT_IO_SERIAL_FLOW_CONTROL_HW # DefaultValue: CYGINT_IO_SERIAL_FLOW_CONTROL_HW > 0 ? CYGOPT_IO_SERIAL_SUPPORT_LINE_STATUS : 0 }; # Default flow control method # This option allows a default flow control method # to be defined. Combinations of flow control methods # may also be set, but this is only possible by # using the cyg_io_set_config() API in source code. # cdl_option CYGDAT_IO_SERIAL_FLOW_CONTROL_DEFAULT { # This option is not active # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value NONE # value_source default # Default value: NONE # Legal values: "NONE" "XONXOFF" "RTSCTS" "DSRDTR" }; # Rx flow control low water mark # This sets the water mark used for determining # when to disable flow control, expressed # as a percentage of the buffer size. When the # receive buffer size is lower than this percentage, # if the transmitter had previously been throttled, it # will now be informed it can restart. # cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT { # This option is not active # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 33 # value_source default # Default value: 33 # Legal values: 1 to 100 # The following properties are affected by this value # option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT # Requires: CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >= CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT }; # Rx flow control high water mark # This sets the water mark used for determining # when to enable flow control, expressed # as a percentage of the buffer size. When the # receive buffer size exceeds this percentage, # signals are sent to the transmitter to tell it # to throttle tranmission. # cdl_option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT { # This option is not active # The parent CYGPKG_IO_SERIAL_FLOW_CONTROL is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 66 # value_source default # Default value: 66 # Legal values: 1 to 100 # Requires: CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >= CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT # CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT == 0 # CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT == 0 # --> 1 # The following properties are affected by this value # option CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT # Requires: CYGNUM_IO_SERIAL_FLOW_CONTROL_HIGH_WATER_PERCENT >= CYGNUM_IO_SERIAL_FLOW_CONTROL_LOW_WATER_PERCENT }; # < # TTY-mode serial device drivers # This option enables a simple terminal-like device driver # that can be used for serial devices that interact with humans, # such as a system console. # cdl_component CYGPKG_IO_SERIAL_TTY { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # HAL/diag serial device driver # This option enables the use of the HAL diagnostic channel # via the standard I/O drivers. # cdl_component CYGPKG_IO_SERIAL_HALDIAG { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGPKG_IO_SERIAL_HALDIAG }; # Console device name # This option selects the TTY device to use for the console. # cdl_option CYGDAT_IO_SERIAL_TTY_CONSOLE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ttydiag\"" # value_source default # Default value: "\"/dev/ttydiag\"" }; # TTY mode HAL/diag channel # This option causes '/dev/ttydiag' to be included in the standard # drivers. # cdl_component CYGPKG_IO_SERIAL_TTY_TTYDIAG { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # TTY mode channel #0 # This option causes '/dev/tty0' to be included in the standard # drivers. # cdl_component CYGPKG_IO_SERIAL_TTY_TTY0 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # TTY mode channel #0 device # This option selects the physical device to use for # '/dev/tty0'. # cdl_option CYGDAT_IO_SERIAL_TTY_TTY0_DEV { # This option is not active # The parent CYGPKG_IO_SERIAL_TTY_TTY0 is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser0\"" # value_source default # Default value: "\"/dev/ser0\"" }; # < # TTY mode channel #1 # This option causes '/dev/tty1' to be included in the standard # drivers. # cdl_component CYGPKG_IO_SERIAL_TTY_TTY1 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # TTY mode channel #1 device # This option selects the physical device to use for # '/dev/tty1'. # cdl_option CYGDAT_IO_SERIAL_TTY_TTY1_DEV { # This option is not active # The parent CYGPKG_IO_SERIAL_TTY_TTY1 is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser1\"" # value_source default # Default value: "\"/dev/ser1\"" }; # < # TTY mode channel #2 # This option causes '/dev/tty2' to be included in the standard # drivers. # cdl_component CYGPKG_IO_SERIAL_TTY_TTY2 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # TTY mode channel #2 device # This option selects the physical device to use for # '/dev/tty2'. # cdl_option CYGDAT_IO_SERIAL_TTY_TTY2_DEV { # This option is not active # The parent CYGPKG_IO_SERIAL_TTY_TTY2 is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser2\"" # value_source default # Default value: "\"/dev/ser2\"" }; # < # < # Termios compatible TTY drivers # This option enables terminal drivers compatible with # POSIX termios. # cdl_component CYGPKG_IO_SERIAL_TERMIOS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO # CYGPKG_ISOINFRA == current # CYGPKG_IO_FILEIO (unknown) == 0 # CYGINT_ISO_ERRNO_CODES == 1 # CYGINT_ISO_ERRNO == 1 # --> 0 # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGPKG_IO_FILEIO # CYGPKG_IO_FILEIO (unknown) == 0 # --> 0 # Requires: CYGINT_ISO_ERRNO_CODES # CYGINT_ISO_ERRNO_CODES == 1 # --> 1 # Requires: CYGINT_ISO_ERRNO # CYGINT_ISO_ERRNO == 1 # --> 1 # Requires: CYGINT_ISO_MALLOC # CYGINT_ISO_MALLOC == 1 # --> 1 }; # > # Termios TTY channel #0 # This option causes '/dev/termios0' to be included in the standard # drivers. # cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 { # This option is not active # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Termios TTY channel #0 device # This option selects the physical device to use for # '/dev/termios0'. # cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS0_DEV { # This option is not active # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is not active # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS0 is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser0\"" # value_source default # Default value: "\"/dev/ser0\"" }; # < # Termios TTY channel #1 # This option causes '/dev/termios1' to be included in the standard # drivers. # cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 { # This option is not active # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Termios TTY channel #1 device # This option selects the physical device to use for # '/dev/termios1'. # cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS1_DEV { # This option is not active # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is not active # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS1 is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser1\"" # value_source default # Default value: "\"/dev/ser1\"" }; # < # Termios TTY channel #2 # This option causes '/dev/termios2' to be included in the standard # drivers. # cdl_component CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 { # This option is not active # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Termios TTY channel #2 device # This option selects the physical device to use for # '/dev/termios2'. # cdl_option CYGDAT_IO_SERIAL_TERMIOS_TERMIOS2_DEV { # This option is not active # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is not active # The parent CYGPKG_IO_SERIAL_TERMIOS_TERMIOS2 is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser2\"" # value_source default # Default value: "\"/dev/ser2\"" }; # < # Support signals # This option selects whether those parts of the termios # interface involving signals is supported. This includes # BRKINT mode, the INTR and QUIT characters, and whether # SIGHUP is sent on terminal close. # cdl_option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS { # This option is not active # The parent CYGPKG_IO_SERIAL_TERMIOS is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: CYGINT_ISO_SIGNAL_NUMBERS != 0 && CYGINT_ISO_SIGNAL_IMPL != 0 # CYGINT_ISO_SIGNAL_NUMBERS == 1 # CYGINT_ISO_SIGNAL_IMPL == 1 # --> 1 # Requires: CYGINT_ISO_SIGNAL_NUMBERS # CYGINT_ISO_SIGNAL_NUMBERS == 1 # --> 1 # Requires: CYGINT_ISO_SIGNAL_IMPL # CYGINT_ISO_SIGNAL_IMPL == 1 # --> 1 }; # < # Hardware serial device drivers # This option enables the hardware device drivers # for the current platform. # cdl_component CYGPKG_IO_SERIAL_DEVICES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # The following properties are affected by this value # option CYGPKG_IO_SERIAL_TESTS # Calculated: CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : "" }; # > # PC serial device drivers # doc: redirect/ecos-device-drivers.html # This option enables the serial device drivers for the # PC. # cdl_package CYGPKG_IO_SERIAL_I386_PC { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This option is not active # The parent CYGPKG_IO_SERIAL_DEVICES is disabled # ActiveIf constraint: CYGPKG_IO_SERIAL # CYGPKG_IO_SERIAL == current # --> 1 # ActiveIf constraint: CYGPKG_HAL_I386_PC # CYGPKG_HAL_I386_PC == current # --> 1 # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_ERROR # CYGPKG_ERROR == current # --> 1 }; # > # PC serial port 0 driver # This option includes the serial device driver for port 0 on the # PC. # cdl_component CYGPKG_IO_SERIAL_I386_PC_SERIAL0 { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # component CYGPKG_IO_SERIAL_I386_PC_TESTING # ActiveIf: CYGPKG_IO_SERIAL_I386_PC_SERIAL0 }; # > # Device name for PC serial port 0 # This option specifies the device name port 0 on the PC. # cdl_option CYGDAT_IO_SERIAL_I386_PC_SERIAL0_NAME { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL0 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser0\"" # value_source default # Default value: "\"/dev/ser0\"" # The following properties are affected by this value # option CYGPRI_SER_TEST_SER_DEV # DefaultValue: CYGDAT_IO_SERIAL_I386_PC_SERIAL0_NAME }; # Baud rate for the PC serial port 0 driver # This option specifies the default baud rate (speed) for the # PC port 0. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL0_BAUD { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL0 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 38400 # value_source default # Default value: 38400 # Legal values: 50 75 110 "134_5" 150 200 300 600 1200 1800 2400 3600 # 4800 7200 9600 14400 19200 38400 57600 115200 234000 # }; # Buffer size for the PC serial port 0 driver # This option specifies the size of the internal buffers used # for the PC port 0. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL0_BUFSIZE { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL0 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 128 # value_source default # Default value: 128 # Legal values: 0 to 8192 }; # I/O base address for the i386-PC serial port 0 # This option specifies the I/O address of the 8250 or 16550 for serial port 0. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL0_IOBASE { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL0 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0x000003F8 # value_source default # Default value: 0x000003F8 # Legal values: 0 to 0xFF8 }; # IRQ for the i386-PC serial port 0 # This option specifies the IRQ of the 8250 or 16550 for serial port 0. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL0_IRQ { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL0 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 4 # value_source default # Default value: 4 # Legal values: 0 to 15 # The following properties are affected by this value # option CYGNUM_IO_SERIAL_I386_PC_SERIAL0_INT # DefaultValue: CYGNUM_IO_SERIAL_I386_PC_SERIAL0_IRQ + 32 }; # IRQ for the i386-PC serial port 0 # This option specifies the interrupt vector of the 8250 or 16550 for serial port 0. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL0_INT { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL0 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 32 # value_source default # Default value: CYGNUM_IO_SERIAL_I386_PC_SERIAL0_IRQ + 32 # CYGNUM_IO_SERIAL_I386_PC_SERIAL0_IRQ == 0 # --> 32 # Legal values: 32 to 47 }; # < # PC serial port 1 driver # This option includes the serial device driver for port 1 on # the PC. # cdl_component CYGPKG_IO_SERIAL_I386_PC_SERIAL1 { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Device name for PC serial port 1 # This option specifies the device name port 1 on the PC. # cdl_option CYGDAT_IO_SERIAL_I386_PC_SERIAL1_NAME { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL1 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ser1\"" # value_source default # Default value: "\"/dev/ser1\"" }; # Baud rate for the PC serial port 1 driver # This option specifies the default baud rate (speed) for the # PC port 1. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL1_BAUD { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL1 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 38400 # value_source default # Default value: 38400 # Legal values: 50 75 110 "134_5" 150 200 300 600 1200 1800 2400 3600 # 4800 7200 9600 14400 19200 38400 57600 115200 234000 # }; # Buffer size for the PC serial port 1 driver # This option specifies the size of the internal buffers used # for the PC port 1. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL1_BUFSIZE { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL1 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 128 # value_source default # Default value: 128 # Legal values: 0 to 8192 }; # I/O base address for the i386-PC serial port 1 # This option specifies the I/O address of the 8250 or 16550 for serial port 1. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL1_IOBASE { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL1 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0x000002F8 # value_source default # Default value: 0x000002F8 # Legal values: 0 to 0xFF8 }; # IRQ for the i386-PC serial port 1 # This option specifies the IRQ of the 8250 or 16550 for serial port 1. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL1_IRQ { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL1 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 3 # value_source default # Default value: 3 # Legal values: 0 to 15 # The following properties are affected by this value # option CYGNUM_IO_SERIAL_I386_PC_SERIAL1_INT # DefaultValue: CYGNUM_IO_SERIAL_I386_PC_SERIAL1_IRQ + 32 }; # IRQ for the i386-PC serial port 1 # This option specifies the interrupt vector of the 8250 or 16550 for serial port 1. # cdl_option CYGNUM_IO_SERIAL_I386_PC_SERIAL1_INT { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_SERIAL1 is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 32 # value_source default # Default value: CYGNUM_IO_SERIAL_I386_PC_SERIAL1_IRQ + 32 # CYGNUM_IO_SERIAL_I386_PC_SERIAL1_IRQ == 0 # --> 32 # Legal values: 32 to 47 }; # < # Serial device driver build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_IO_SERIAL_I386_PC_OPTIONS { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC is not active # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building these serial device drivers. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_IO_SERIAL_I386_PC_CFLAGS_ADD { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_OPTIONS is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building these serial device drivers. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_IO_SERIAL_I386_PC_CFLAGS_REMOVE { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_OPTIONS is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # < # Testing parameters # cdl_component CYGPKG_IO_SERIAL_I386_PC_TESTING { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC is not active # ActiveIf constraint: CYGPKG_IO_SERIAL_I386_PC_SERIAL0 # CYGPKG_IO_SERIAL_I386_PC_SERIAL0 == 0 # --> 0 # Calculated value: 1 # Flavor: bool # Current value: 1 }; # > # Serial device used for testing # cdl_option CYGPRI_SER_TEST_SER_DEV { # This option is not active # The parent CYGPKG_IO_SERIAL_I386_PC_TESTING is not active # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: CYGDAT_IO_SERIAL_I386_PC_SERIAL0_NAME # CYGDAT_IO_SERIAL_I386_PC_SERIAL0_NAME == 0 # --> 0 }; # < # < # < # Build extra serial tests # This option enables the building of some extra tests which # can be used when testing / debugging serial drivers. These # are not built by default since they do not use the dedicated # testing infrastructure. # cdl_option CYGBLD_IO_SERIAL_EXTRA_TESTS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Serial device driver build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_IO_SERIAL_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the serial device drivers. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_IO_SERIAL_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the serial device drivers. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_IO_SERIAL_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Serial device driver tests # This option specifies the set of tests for the serial device drivers. # cdl_option CYGPKG_IO_SERIAL_TESTS { # Calculated value: CYGPKG_IO_SERIAL_DEVICES ? "tests/serial1 tests/serial2 tests/serial3 tests/serial4 tests/serial5 tests/tty1 tests/tty2 tests/flow1 tests/flow2" : "" # CYGPKG_IO_SERIAL_DEVICES == 0 # Flavor: data # Current_value: }; # < # Enable serial device select support # This option enables support for the select() API function on all # serial devices. # cdl_option CYGPKG_IO_SERIAL_SELECT_SUPPORT { # This option is not active # ActiveIf constraint: CYGPKG_IO_FILEIO # CYGPKG_IO_FILEIO (unknown) == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGPKG_IO_FILEIO # CYGPKG_IO_FILEIO (unknown) == 0 # --> 0 }; # Serial testing specification # cdl_component CYGPKG_IO_SERIAL_TEST_SPECS { # Calculated value: 1 # Flavor: bool # Current value: 1 }; # > # Skip 9600 baud testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_9600 { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip 14400 baud testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_14400 { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip 19200 baud testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_19200 { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip 38400 baud testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_38400 { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip 57600 baud testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_57600 { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip 115200 baud testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_115200 { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip even-parity testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_EVEN { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip odd-parity testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_PARITY_ODD { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # Skip 2-stop bit testing # cdl_interface CYGINT_IO_SERIAL_TEST_SKIP_STOP_2 { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 }; # < # < # Infrastructure # Common types and useful macros. # Tracing and assertion facilities. # Package startup options. # cdl_package CYGPKG_INFRA { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current }; # > # Use varargs in diag_printf() # The diagnostic routine diag_printf() can be defined # using either variadic arguments or a K&R style definition. # The former will work in most circumstances, but if variable # argument handling is broken or missing then the K&R variant # may be used. This will also generate warnings about the # declaration of diag_printf() not being a prototype. # These may safely be ignored. # cdl_option CYGDBG_INFRA_DIAG_PRINTF_USE_VARARG { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Asserts & Tracing # The eCos source code contains a significant amount of # internal debugging support, in the form of assertions and # tracing. # Assertions check at runtime that various conditions are as # expected; if not, execution is halted. # Tracing takes the form of text messages that are output # whenever certain events occur, or whenever functions are # called or return. # The most important property of these checks and messages is # that they are not required for the program to run. # It is prudent to develop software with assertions enabled, # but disable them when making a product release, thus # removing the overhead of that checking. # It is possible to enable assertions and tracing # independently. # There are also options controlling the exact behaviour of # the assertion and tracing facilities, thus giving users # finer control over the code and data size requirements. # cdl_component CYGPKG_INFRA_DEBUG { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Use asserts # If this option is defined, asserts in the code are tested. # Assert functions (CYG_ASSERT()) are defined in # 'include/cyg/infra/cyg_ass.h' within the 'install' tree. # If it is not defined, these result in no additional # object code and no checking of the asserted conditions. # cdl_component CYGDBG_USE_ASSERTS { # This option is not active # The parent CYGPKG_INFRA_DEBUG is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG # Requires: CYGDBG_USE_ASSERTS # option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG # DefaultValue: 0 != CYGDBG_USE_ASSERTS # option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL # Requires: CYGDBG_USE_ASSERTS }; # > # Preconditions # This option allows individual control of preconditions. # A precondition is one type of assert, which it is # useful to control separately from more general asserts. # The function is CYG_PRECONDITION(condition,msg). # cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS { # This option is not active # The parent CYGDBG_USE_ASSERTS is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Postconditions # This option allows individual control of postconditions. # A postcondition is one type of assert, which it is # useful to control separately from more general asserts. # The function is CYG_POSTCONDITION(condition,msg). # cdl_option CYGDBG_INFRA_DEBUG_POSTCONDITIONS { # This option is not active # The parent CYGDBG_USE_ASSERTS is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Loop invariants # This option allows individual control of loop invariants. # A loop invariant is one type of assert, which it is # useful to control separately from more general asserts, # particularly since a loop invariant is typically evaluated # a great many times when used correctly. # The function is CYG_LOOP_INVARIANT(condition,msg). # cdl_option CYGDBG_INFRA_DEBUG_LOOP_INVARIANTS { # This option is not active # The parent CYGDBG_USE_ASSERTS is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Use assert text # All assertions within eCos contain a text message # which should give some information about the condition # being tested. # These text messages will end up being embedded in the # application image and hence there is a significant penalty # in terms of image size. # It is possible to suppress the use of these messages by # disabling this option. # This results in smaller code size, but there is less # human-readable information if an assertion actually gets # triggered. # cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE { # This option is not active # The parent CYGDBG_USE_ASSERTS is not active # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Use tracing # If this option is defined, tracing operations # result in output or logging, depending on other options. # This may have adverse effects on performance, if the time # taken to output message overwhelms the available CPU # power or output bandwidth. # Trace functions (CYG_TRACE()) are defined in # 'include/cyg/infra/cyg_trac.h' within the 'install' tree. # If it is not defined, these result in no additional # object code and no trace information. # cdl_component CYGDBG_USE_TRACING { # This option is not active # The parent CYGPKG_INFRA_DEBUG is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # The following properties are affected by this value # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE # ActiveIf: CYGDBG_USE_TRACING # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP # ActiveIf: CYGDBG_USE_TRACING # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT # ActiveIf: CYGDBG_USE_TRACING # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT # ActiveIf: CYGDBG_USE_TRACING # option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT # ActiveIf: CYGDBG_USE_TRACING # component CYGPKG_LIBM_TRACE # Requires: CYGDBG_USE_TRACING }; # > # Trace function reports # This option allows individual control of # function entry/exit tracing, independent of # more general tracing output. # This may be useful to remove clutter from a # trace log. # cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS { # This option is not active # The parent CYGDBG_USE_TRACING is not active # The parent CYGDBG_USE_TRACING is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Use trace text # All trace calls within eCos contain a text message # which should give some information about the circumstances. # These text messages will end up being embedded in the # application image and hence there is a significant penalty # in terms of image size. # It is possible to suppress the use of these messages by # disabling this option. # This results in smaller code size, but there is less # human-readable information available in the trace output, # possibly only filenames and line numbers. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_MESSAGE { # This option is not active # The parent CYGDBG_USE_TRACING is not active # The parent CYGDBG_USE_TRACING is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Null output # A null output module which is useful when # debugging interactively; the output routines # can be breakpointed rather than have them actually # 'print' something. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL { # This option is not active # The parent CYGPKG_INFRA_DEBUG is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Simple output # An output module which produces simple output # from tracing and assertion events. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE { # This option is not active # The parent CYGPKG_INFRA_DEBUG is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Fancy output # An output module which produces fancy output # from tracing and assertion events. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY { # This option is not active # The parent CYGPKG_INFRA_DEBUG is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Buffered tracing # An output module which buffers output # from tracing and assertion events. The stored # messages are output when an assert fires, or # CYG_TRACE_PRINT() (defined in ) # is called. # Of course, there will only be stored messages # if tracing per se (CYGDBG_USE_TRACING) # is enabled above. # cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER { # This option is not active # The parent CYGPKG_INFRA_DEBUG is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Trace buffer size # The size of the trace buffer. This counts the number # of trace records stored. When the buffer fills it # either wraps, stops recording, or generates output. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE { # This option is not active # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active # ActiveIf constraint: CYGDBG_USE_TRACING # CYGDBG_USE_TRACING == 0 # --> 0 # Flavor: data # No user value, uncomment the following line to provide one. # user_value 32 # value_source default # Default value: 32 # Legal values: 5 to 65535 }; # Wrap trace buffer when full # When the trace buffer has filled with records it # starts again at the beginning. Hence only the last # CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will # be recorded. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP { # This option is not active # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active # ActiveIf constraint: CYGDBG_USE_TRACING # CYGDBG_USE_TRACING == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Halt trace buffer when full # When the trace buffer has filled with records it # stops recording. Hence only the first # CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE messages will # be recorded. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT { # This option is not active # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active # ActiveIf constraint: CYGDBG_USE_TRACING # CYGDBG_USE_TRACING == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Print trace buffer when full # When the trace buffer has filled with records it # prints the contents of the buffer. The buffer is then # emptied and the system continues. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT { # This option is not active # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active # ActiveIf constraint: CYGDBG_USE_TRACING # CYGDBG_USE_TRACING == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Print trace buffer on assert fail # When an assertion fails the trace buffer will be # printed to the default diagnostic device. # cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT { # This option is not active # The parent CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER is not active # ActiveIf constraint: CYGDBG_USE_TRACING # CYGDBG_USE_TRACING == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Use function names # All trace and assert calls within eCos contain a # reference to the builtin macro '__PRETTY_FUNCTION__', # which evaluates to a string containing # the name of the current function. # This is useful when reading a trace log. # It is possible to suppress the use of the function name # by disabling this option. # This results in smaller code size, but there is less # human-readable information available in the trace output, # possibly only filenames and line numbers. # cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO { # This option is not active # The parent CYGPKG_INFRA_DEBUG is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Startup options # Some packages require a startup routine to be called. # This can be carried out by application code, by supplying # a routine called cyg_package_start() which calls the # appropriate package startup routine(s). # Alternatively, this routine can be constructed automatically # and configured to call the startup routines of your choice. # cdl_component CYGPKG_INFRA_STARTUP { # There is no associated value. }; # > # Start uITRON subsystem # Generate a call to initialize the # uITRON compatibility subsystem # within the system version of cyg_package_start(). # This enables compatibility with uITRON. # You must configure uITRON with the correct tasks before # starting the uItron subsystem. # If this is disabled, and you want to use uITRON, # you must call cyg_uitron_start() from your own # cyg_package_start() or cyg_userstart(). # cdl_option CYGSEM_START_UITRON_COMPATIBILITY { # This option is not active # ActiveIf constraint: CYGPKG_UITRON # CYGPKG_UITRON (unknown) == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGPKG_UITRON # CYGPKG_UITRON (unknown) == 0 # --> 0 }; # < # Smaller slower memcpy() # Enabling this option causes the implementation of # the standard memcpy() routine to reduce code # size at the expense of execution speed. This # option is automatically enabled with the use of # the -Os option to the compiler. Also note that # the compiler will try to use its own builtin # version of memcpy() if possible, ignoring the # implementation in this package, unless given # the -fno-builtin compiler option. # cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Smaller slower memset() # Enabling this option causes the implementation of # the standard memset() routine to reduce code # size at the expense of execution speed. This # option is automatically enabled with the use of # the -Os option to the compiler. Also note that # the compiler will try to use its own builtin # version of memset() if possible, ignoring the # implementation in this package, unless given # the -fno-builtin compiler option. # cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMSET { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Provide empty C++ delete functions # To deal with virtual destructors, where the correct delete() # function must be called for the derived class in question, the # underlying delete is called when needed, from destructors. This # is regardless of whether the destructor is called by delete itself. # So there is a reference to delete() from all destructors. The # default builtin delete() attempts to call free() if there is # one defined. So, if you have destructors, and you have free(), # as in malloc() and free(), any destructor counts as a reference # to free(). So the dynamic memory allocation code is linked # in regardless of whether it gets explicitly called. This # increases code and data size needlessly. # To defeat this undesirable behaviour, we define empty versions # of delete and delete. But doing this prevents proper use # of dynamic memory in C++ programs via C++'s new and delete # operators. # Therefore, this option is provided # for explicitly disabling the provision of these empty functions, # so that new and delete can be used, if that is what is required. # cdl_option CYGFUN_INFRA_EMPTY_DELETE_FUNCTIONS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Infra build options # Package specific build options including control over # compiler flags used only in building this package. # cdl_component CYGPKG_INFRA_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the eCos infra package. These flags are used # in addition to the set of global flags. # cdl_option CYGPKG_INFRA_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the eCos infra package. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_INFRA_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # < # < # eCos kernel # doc: redirect/ecos-kernel-overview.html # This package contains the core functionality of the eCos # kernel. It relies on functionality provided by various HAL # packages and by the eCos infrastructure. In turn the eCos # kernel provides support for other packages such as the device # drivers and the uITRON compatibility layer. # cdl_package CYGPKG_KERNEL { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # option CYGFUN_HAL_COMMON_KERNEL_SUPPORT # Requires: CYGPKG_KERNEL # option CYGFUN_HAL_COMMON_KERNEL_SUPPORT # DefaultValue: CYGPKG_KERNEL # option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE # ActiveIf: CYGPKG_KERNEL # option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE # ActiveIf: CYGPKG_KERNEL # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE # ActiveIf: CYGPKG_KERNEL # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE # Requires: CYGPKG_KERNEL # option CYGFUN_MEMALLOC_KAPI # ActiveIf: CYGPKG_KERNEL # option CYGSEM_LIBC_SIGNALS_THREAD_SAFE # Requires: CYGPKG_KERNEL # option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT # DefaultValue: 0 == CYGPKG_KERNEL && 0 == CYGPKG_POSIX_PTHREAD # component CYGSEM_LIBC_STARTUP_MAIN_THREAD # Requires: CYGPKG_KERNEL # component CYGSEM_LIBC_STARTUP_MAIN_THREAD # DefaultValue: 0 != CYGPKG_KERNEL && 0 == CYGPKG_POSIX_PTHREAD # option CYGSEM_LIBC_EXIT_STOPS_SYSTEM # Requires: CYGPKG_KERNEL # option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS # Requires: CYGPKG_KERNEL # option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS # DefaultValue: 0 != CYGPKG_KERNEL # option CYGPKG_WALLCLOCK_EMULATE # Requires: CYGPKG_KERNEL # option CYGIMP_WALLCLOCK_NONE # DefaultValue: !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS # option CYGPKG_IO_WALLCLOCK_TESTS # Calculated: CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : "" }; # > # Kernel interrupt handling # doc: redirect/interrupts.html # The majority of configuration options related to interrupt # handling are in the HAL packages, since usually the code has # to be platform-specific. There are a number of options # provided within the kernel related to slightly higher-level # concepts, for example Delayed Service Routines. # cdl_component CYGPKG_KERNEL_INTERRUPTS { # There is no associated value. # The following properties are affected by this value # option CYGDBG_KERNEL_INSTRUMENT_INTR # ActiveIf: CYGPKG_KERNEL_INTERRUPTS }; # > # Use delayed service routines (DSRs) # In eCos the recommended way to handle device interrupts is to # do a minimum amount of work inside the low level interrupt # handler itself, and instead do as much as possible in a # Delayed Service Routine or DSR. If an application does not # make use of DSRs directly or indirectly then it is possible # to disable the DSR support completely, which reduces the # overheads of context switches and interrupt handling. Note # that the kernel real-time clock makes use of DSRs, as do many # of the device drivers. # cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGVAR_KERNEL_COUNTERS_CLOCK # Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS }; # > # cdl_interface CYGINT_KERNEL_INTERRUPTS_DSRS { # Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST, active, enabled # Implemented by CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS # CYGINT_KERNEL_INTERRUPTS_DSRS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_KERNEL_INTERRUPTS_DSRS # Requires: 1 == CYGINT_KERNEL_INTERRUPTS_DSRS }; # Use linked lists for DSRs # When DSR support is enabled the kernel must keep track of all # the DSRs that are pending. This information can be kept in a # fixed-size table or in a linked list. The list implementation # requires that the kernel disable interrupts for a very short # period of time outside interrupt handlers, but there is no # possibility of a table overflow occurring. # cdl_option CYGIMP_KERNEL_INTERRUPTS_DSRS_LIST { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Use fixed-size table for DSRs # When DSR support is enabled the kernel must keep track of all # the DSRs that are pending. This information can be kept in a # fixed-size table or in a linked list. The table # implementation involves a very small risk of overflow at # run-time if a given interrupt source is able to have more # than one pending DSR. However it has the advantage that # the kernel does not need to disable interrupts outside # interrupt handlers. # cdl_component CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Number of entries in fixed-size DSR table # When DSR support is enabled the kernel must keep track of all # the DSRs that are pending. One approach involves a fixed-size # table, which involves a very small risk of overflow at # run-time. By increasing the table size it is possible to reduce # this risk. # cdl_option CYGNUM_KERNEL_INTERRUPTS_DSRS_TABLE_SIZE { # This option is not active # The parent CYGIMP_KERNEL_INTERRUPTS_DSRS_TABLE is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 32 # value_source default # Default value: 32 # Legal values: 2 to 1024 }; # < # Chain all interrupts together # Interrupts can be attached to vectors either singly, or be # chained together. The latter is necessary if there is no way # of discovering which device has interrupted without # inspecting the device itself. It can also reduce the amount # of RAM needed for interrupt decoding tables and code. # cdl_option CYGIMP_KERNEL_INTERRUPTS_CHAIN { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN # CYGIMP_HAL_COMMON_INTERRUPTS_CHAIN == 0 # --> 0 }; # < # < # Exception handling # doc: redirect/exceptions.html # In the context of the eCos kernel exceptions are unexpected # events detected by the hardware, for example an attempt to # execute an illegal instruction. There is no relation with # other forms of exception, for example the catch and throw # facilities of languages like C++. It is possible to disable # all support for exceptions and thus save some memory. # cdl_component CYGPKG_KERNEL_EXCEPTIONS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGPKG_HAL_EXCEPTIONS # CYGPKG_HAL_EXCEPTIONS == 1 # --> 1 # The following properties are affected by this value # option CYGPKG_HAL_EXCEPTIONS # Requires: CYGPKG_KERNEL_EXCEPTIONS # option CYGPKG_HAL_EXCEPTIONS # DefaultValue: CYGPKG_KERNEL_EXCEPTIONS }; # > # Decode exception types in kernel # On targets where several different types of exception are # possible, for example executing an illegal instruction and # division by zero, it is possible for the kernel to do some # decoding of the exception type and deliver the different # types of exception to different handlers in the application # code. Alternatively the kernel can simply pass all # exceptions directly to application code, leaving the # decoding to be done by the application # cdl_option CYGSEM_KERNEL_EXCEPTIONS_DECODE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # The following properties are affected by this value # component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS # Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE }; # Use global exception handlers # In the context of the eCos kernel exceptions are # unexpected events detected by the hardware, for # example an attempt to execute an illegal # instruction. If the kernel is configured # to support exceptions then two implementations are # possible. The default implementation involves a single set # of exception handlers that are in use for the entire # system. The alternative implementation allows different # exception handlers to be specified for each thread. # cdl_option CYGSEM_KERNEL_EXCEPTIONS_GLOBAL { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS # Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL }; # < # Kernel schedulers # doc: redirect/the-scheduler.html # The eCos kernel provides a choice of schedulers. In addition # there are a number of configuration options to control the # detailed behaviour of these schedulers. # cdl_component CYGPKG_KERNEL_SCHED { # There is no associated value. # The following properties are affected by this value # option CYGDBG_KERNEL_INSTRUMENT_SCHED # ActiveIf: CYGPKG_KERNEL_SCHED }; # > # Number of schedulers in this configuration # cdl_interface CYGINT_KERNEL_SCHEDULER { # Implemented by CYGSEM_KERNEL_SCHED_MLQUEUE, active, enabled # Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 == CYGINT_KERNEL_SCHEDULER # CYGINT_KERNEL_SCHEDULER == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_KERNEL_SCHEDULER # Requires: 1 == CYGINT_KERNEL_SCHEDULER }; # Non-zero if the active schedule only has unique priorities # Not all schedulers allow mutiple threads to use the same # priority. That property is signalled via this option, allowing # scheduler and tests to behave accordingly. # cdl_interface CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES { # Implemented by CYGSEM_KERNEL_SCHED_BITMAP, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL # Requires: CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 }; # Multi-level queue scheduler # The multi-level queue scheduler supports multiple priority # levels and multiple threads at each priority level. # Preemption between priority levels is automatic. Timeslicing # within a given priority level is controlled by a separate # configuration option. # cdl_option CYGSEM_KERNEL_SCHED_MLQUEUE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGPRI_KERNEL_SCHED_IMPL_HXX # Calculated: CYGSEM_KERNEL_SCHED_BITMAP ? "" : CYGSEM_KERNEL_SCHED_MLQUEUE ? "" : CYGSEM_KERNEL_SCHED_LOTTERY ? "" : "!!!-- Configuration broken - no scheduler selected --!!!" # component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL # ActiveIf: CYGSEM_KERNEL_SCHED_MLQUEUE }; # Bitmap scheduler # The bitmap scheduler supports multiple priority levels but # only one thread can exist at each priority level. This means # that scheduling decisions are very simple and hence the # scheduler is efficient. Preemption between priority levels is # automatic. Timeslicing within a given priority level is # irrelevant since there can be only one thread at each # priority level. # cdl_option CYGSEM_KERNEL_SCHED_BITMAP { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # The following properties are affected by this value # option CYGPRI_KERNEL_SCHED_IMPL_HXX # Calculated: CYGSEM_KERNEL_SCHED_BITMAP ? "" : CYGSEM_KERNEL_SCHED_MLQUEUE ? "" : CYGSEM_KERNEL_SCHED_LOTTERY ? "" : "!!!-- Configuration broken - no scheduler selected --!!!" # component CYGSEM_KERNEL_SCHED_TIMESLICE # Requires: !CYGSEM_KERNEL_SCHED_BITMAP }; # Scheduler header file # This option sets a preprocessor symbol which names the header # file for the selected scheduler. It is used internally by the # common scheduler code to include the correct header file. # cdl_option CYGPRI_KERNEL_SCHED_IMPL_HXX { # Calculated value: CYGSEM_KERNEL_SCHED_BITMAP ? "" : CYGSEM_KERNEL_SCHED_MLQUEUE ? "" : CYGSEM_KERNEL_SCHED_LOTTERY ? "" : "!!!-- Configuration broken - no scheduler selected --!!!" # CYGSEM_KERNEL_SCHED_BITMAP == 0 # CYGSEM_KERNEL_SCHED_MLQUEUE == 1 # CYGSEM_KERNEL_SCHED_LOTTERY (unknown) == 0 # Flavor: data # Current_value: }; # Number of priority levels # This option controls the number of priority levels that are # available. For some types of scheduler including the bitmap # scheduler this may impose an upper bound on the number of # threads in the system. For other schedulers such as the # mlqueue scheduler the number of threads is independent from # the number of priority levels. Note that the lowest priority # level is normally used only by the idle thread, although # application threads can run at this priority if necessary. # cdl_component CYGNUM_KERNEL_SCHED_PRIORITIES { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 32 # value_source default # Default value: 32 # Legal values: 1 to 32 # The following properties are affected by this value # option CYGIMP_IDLE_THREAD_YIELD # ActiveIf: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1) # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY # LegalValues: 0 to CYGNUM_KERNEL_SCHED_PRIORITIES - 1 }; # > # Bitmap size # This option automatically defines the size of bitmap # used to track occupied priority levels. # cdl_option CYGNUM_KERNEL_SCHED_BITMAP_SIZE { # Calculated value: "CYGNUM_KERNEL_SCHED_PRIORITIES" # Flavor: data # Current_value: CYGNUM_KERNEL_SCHED_PRIORITIES }; # Dequeue oldest threads first # With this option enabled, threads queued in a thread queue # will be dequeued in priority order, rather than last in, # first out (LIFO). Threads of equal priority are dequeued # oldest first. The only exception is the scheduler run # queues where order is less important as each is already # sorted by priority. Note that this makes the thread queueing # less deterministic. # cdl_option CYGIMP_KERNEL_SCHED_SORTED_QUEUES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # < # Scheduler timeslicing # Some schedulers including the mlqueue scheduler support # timeslicing. This means that the kernel will check regularly # whether or not there is another runnable thread with the # same priority, and if there is such a thread there will be # an automatic context switch. Not all applications require # timeslicing, for example because every thread performs a # blocking operation regularly. For these applications it is # possible to disable timeslicing, which reduces the overheads # associated with timer interrupts. # cdl_component CYGSEM_KERNEL_SCHED_TIMESLICE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: !CYGSEM_KERNEL_SCHED_BITMAP # CYGSEM_KERNEL_SCHED_BITMAP == 0 # --> 1 # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # CYGVAR_KERNEL_COUNTERS_CLOCK == 1 # --> 1 }; # > # Number of clock ticks between timeslices # Assuming timeslicing is enabled, how frequently should it # take place? The value of this option corresponds to the # number of clock ticks that should occur before a timeslice # takes place, so increasing the value reduces the frequency # of timeslices. # cdl_option CYGNUM_KERNEL_SCHED_TIMESLICE_TICKS { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 5 # value_source default # Default value: 5 # Legal values: 1 to 65535 }; # Support runtime enable of timeslice per-thread # This option makes timslicing a per-thread runtime # option. When enabled, threads may have timeslicing # turned on or off dynamically. This is generally used # by higher level APIs (such as POSIX) to implement # differing scheduling policies. # cdl_option CYGSEM_KERNEL_SCHED_TIMESLICE_ENABLE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: false # false (unknown) == 0 # --> 0 }; # < # Enable ASR support # This component controls support for Asynchronous Service # Routines (ASRs). This is a function that may be called # from the scheduler when it has just exited the scheduler # lock. This is primarily for use by API compatibility layers. # cdl_component CYGSEM_KERNEL_SCHED_ASR_SUPPORT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: false # false (unknown) == 0 # --> 0 }; # > # Make ASR function global # This option controls whether the ASR function is shared by # all threads, or whether each thread may have its own ASR # function. # cdl_option CYGSEM_KERNEL_SCHED_ASR_GLOBAL { # This option is not active # The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: true # true (unknown) == 0 # --> 0 }; # Make ASR data global # This option controls whether the ASR data is shared by # all threads, or whether each thread may have its own ASR # data. This is independent of the previous option because # it may be useful to pass per-thread data to a shared ASR # function. # cdl_option CYGSEM_KERNEL_SCHED_ASR_DATA_GLOBAL { # This option is not active # The parent CYGSEM_KERNEL_SCHED_ASR_SUPPORT is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: true # true (unknown) == 0 # --> 0 }; # < # < # Counters and clocks # doc: redirect/counters-clocks-and-alarms.html # The counter objects provided by the kernel provide an # abstraction of the clock facility that is generally provided. # Application code can associate alarms with counters, where an # alarm is identified by the number of ticks until it triggers, # the action to be taken on triggering, and whether or not the # alarm should be repeated. # cdl_component CYGPKG_KERNEL_COUNTERS { # There is no associated value. }; # > # Provide real-time clock # On all current target systems the kernel can provide a # real-time clock. This clock serves two purposes. First it is # necessary to support clock and alarm related functions. # Second it is needed to implement timeslicing in some of the # schedulers including the mlqueue scheduler. If the # application does not require any of these facilities then it # is possible to disable the real time clock support # completely. # cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGIMP_KERNEL_INTERRUPTS_DSRS # CYGIMP_KERNEL_INTERRUPTS_DSRS == 1 # --> 1 # The following properties are affected by this value # component CYGSEM_KERNEL_SCHED_TIMESLICE # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # component CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # option CYGFUN_KERNEL_THREADS_TIMER # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # option CYGDBG_KERNEL_INSTRUMENT_CLOCK # ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK # option CYGDBG_KERNEL_INSTRUMENT_ALARM # ActiveIf: CYGVAR_KERNEL_COUNTERS_CLOCK # option CYGSEM_LIBC_TIME_CLOCK_WORKING # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK }; # Override default clock settings # The kernel has default settings for the clock interrupt # frequency. These settings will vary from platform to # platform, but typically there will be a 100 clock interrupts # every second. It is possible to change this frequency, but # it requires some knowledge of the target hardware. # cdl_component CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # CYGVAR_KERNEL_COUNTERS_CLOCK == 1 # --> 1 # The following properties are affected by this value # option CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION # 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}" # option CYGNUM_KERNEL_COUNTERS_RTC_PERIOD # Calculated: CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ? "CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD" : "CYGNUM_HAL_RTC_PERIOD" }; # > # Clock hardware initialization value # During system initialization this value is used to initialize # the clock hardware. The exact meaning of the value and the # range of legal values therefore depends on the target hardware, # and the hardware documentation should be consulted for further # details. In addition the clock resolution numerator and # denominator values should be updated. Typical values for # this option would be 150000 on the MN10300 stdeval1 board, # 15625 on the tx39 jmr3904 board, and 20833 on the powerpc # cogent board. # cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD { # This option is not active # The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 9999 # value_source default # Default value: 9999 # Legal values: 1 to 0x7fffffff }; # Clock resolution numerator # If a non-default clock interrupt frequency is used then it # is necessary to specify the clock resolution explicitly. # This resolution involves two separate values, the numerator # and the denominator. The result of dividing the numerator by # the denominator should correspond to the number of # nanoseconds between clock interrupts. For example a # numerator of 1000000000 and a denominator of 100 means that # there are 10000000 nanoseconds (or 10 milliseconds) between # clock interrupts. Expressing the resolution as a fraction # should minimize clock drift even for frequencies that cannot # be expressed as a simple integer. For example a frequency of # 60Hz corresponds to a clock resolution of 16666666.66... # nanoseconds. This can be expressed accurately as 1000000000 # over 60. # cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_NUMERATOR { # This option is not active # The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 1000000000 # value_source default # Default value: 1000000000 # Legal values: 1 to 0x7fffffff }; # Clock resolution denominator # If a non-default clock interrupt frequency is used then it # is necessary to specify the clock resolution explicitly. # This resolution involves two separate values, the numerator # and the denominator. The result of dividing the numerator by # the denominator should correspond to the number of # nanoseconds between clock interrupts. For example a # numerator of 1000000000 and a denominator of 100 means that # there are 10000000 nanoseconds (or 10 milliseconds) between # clock interrupts. Expressing the resolution as a fraction # should minimize clock drift even for frequencies that cannot # be expressed as a simple integer. For example a frequency of # 60Hz corresponds to a clock resolution of 16666666.66... # nanoseconds. This can be expressed accurately as 1000000000 # over 60. # cdl_option CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_DENOMINATOR { # This option is not active # The parent CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 100 # value_source default # Default value: 100 # Legal values: 1 to 0x7fffffff }; # < # cdl_interface CYGINT_KERNEL_COUNTERS { # Implemented by CYGIMP_KERNEL_COUNTERS_SINGLE_LIST, active, enabled # Implemented by CYGIMP_KERNEL_COUNTERS_MULTI_LIST, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 == CYGINT_KERNEL_COUNTERS # CYGINT_KERNEL_COUNTERS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_KERNEL_COUNTERS # Requires: 1 == CYGINT_KERNEL_COUNTERS }; # Implement counters using a single list # There are two different implementations of the counter # objects. The first implementation stores all alarms in a # single linked list. The alternative implementation uses a # table of linked lists. A single list is more efficient in # terms of memory usage and is generally adequate when the # application only makes use of a small number of alarms. # cdl_option CYGIMP_KERNEL_COUNTERS_SINGLE_LIST { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Implement counters using a table of lists # There are two different implementations of the counter # objects. The first implementation stores all alarms in a # single linked list. The alternative implementation uses a # table of linked lists, with the size of the table being a # separate configurable option. For more complicated # operations it is better to have a table of lists since this # reduces the amount of computation whenever the timer goes # off. Assuming a table size of 8 (the default value) on # average the timer code will only need to check 1/8 of the # pending alarms instead of all of them. # cdl_component CYGIMP_KERNEL_COUNTERS_MULTI_LIST { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Size of counter list table # If counters are implemented using an array of linked lists # then this option controls the size of the array. A larger # size reduces the amount of computation that needs to take # place whenever the timer goes off, but requires extra # memory. # cdl_option CYGNUM_KERNEL_COUNTERS_MULTI_LIST_SIZE { # This option is not active # The parent CYGIMP_KERNEL_COUNTERS_MULTI_LIST is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 8 # value_source default # Default value: 8 # Legal values: 1 to 1024 }; # < # Sort the counter list # Sorting the counter lists reduces the amount of work that # has to be done when a counter tick is processed, since the # next alarm to expire is always at the front of the list. # However, it makes adding an alarm to the list more expensive # since a search must be done for the correct place to put it. # Many alarms are used to implement timeouts, which seldom trigger, # so it is worthwhile optimizing this case. For this reason # sorted list are disabled by default. # cdl_option CYGIMP_KERNEL_COUNTERS_SORT_LIST { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Measure real-time [clock] interrupt latency # Measure the interrupt latency as seen by the real-time clock # timer interrupt. This requires hardware support, defined by # the HAL_CLOCK_LATENCY() macro. # cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # CYGVAR_KERNEL_COUNTERS_CLOCK == 1 # --> 1 # The following properties are affected by this value # option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY # option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY # DefaultValue: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY }; # Measure real-time [clock] DSR latency # Measure the DSR latency as seen by the real-time clock # timer interrupt. This requires hardware support, defined by # the HAL_CLOCK_LATENCY() macro. # cdl_option CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY # CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0 # --> 0 # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY # CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY == 0 # --> 0 }; # RTC resolution # This option automatically defines the tuple which is used to # initialize the RTC resolution, consisting of a numerator and # denominator. For more information, see the option to # override default clock settings # (CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE) and associated options. # cdl_option CYGNUM_KERNEL_COUNTERS_RTC_RESOLUTION { # 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}" # CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE == 0 # Flavor: data # Current_value: {CYGNUM_HAL_RTC_NUMERATOR, CYGNUM_HAL_RTC_DENOMINATOR} }; # RTC period # This option automatically defines the RTC period to be used in # setting the system clock hardware. For more information, see the # option to override default clock settings # (CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE) and associated options. # cdl_option CYGNUM_KERNEL_COUNTERS_RTC_PERIOD { # Calculated value: CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE ? "CYGNUM_KERNEL_COUNTERS_CLOCK_OVERRIDE_PERIOD" : "CYGNUM_HAL_RTC_PERIOD" # CYGPKG_KERNEL_COUNTERS_CLOCK_OVERRIDE == 0 # Flavor: data # Current_value: CYGNUM_HAL_RTC_PERIOD }; # < # Thread-related options # doc: redirect/thread-operations.html # There are a number of configuration options related to the # implementation of threads, for example whether or not the # eCos kernel supports per-thread data. # cdl_component CYGPKG_KERNEL_THREADS { # There is no associated value. # The following properties are affected by this value # option CYGDBG_KERNEL_INSTRUMENT_THREAD # ActiveIf: CYGPKG_KERNEL_THREADS }; # > # Allow per-thread timers # This option controls whether or not the kernel should support # per-thread clock and alarm related functions. Also some of # the synchronization primitives such as semaphore and # condition variable timed wait operations require per-thread # timer support. If none of these facilities are required then # the option can be disabled. # cdl_option CYGFUN_KERNEL_THREADS_TIMER { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # CYGVAR_KERNEL_COUNTERS_CLOCK == 1 # --> 1 # The following properties are affected by this value # option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT # Requires: CYGFUN_KERNEL_THREADS_TIMER # option CYGSEM_LIBC_TIME_CLOCK_WORKING # Requires: CYGFUN_KERNEL_THREADS_TIMER }; # Support optional name for each thread # Threads may optionally be supplied with a name string that is # used to identify them during debugging. This name is only # present if `this option is defined. Disabling it reduces both # code and data size. # cdl_option CYGVAR_KERNEL_THREADS_NAME { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Keep track of all threads using a linked list # Threads may optionally be placed on a housekeeping list so # that all threads may be located easily. This is useful mainly # in conjunction with source-level debugging. # cdl_option CYGVAR_KERNEL_THREADS_LIST { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT # Requires: CYGVAR_KERNEL_THREADS_LIST }; # Keep track of the base of each thread's stack # This option makes the kernel keep track of the lower limit on # each thread's stack. It allows the kernel to adjust the lower # limit, thus making space for per-thread data. Note that it # does not imply any form of run-time stack overflow checking. # cdl_option CYGFUN_KERNEL_THREADS_STACK_LIMIT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # component CYGVAR_KERNEL_THREADS_DATA # Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT }; # Support for per-thread data # It is possible for the kernel to support per-thread data, in # other words an area of memory specific to each thread which # can be used to store data for that thread. This per-thread # data can be used by applications or by other packages such as # the ISO C library. # cdl_component CYGVAR_KERNEL_THREADS_DATA { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGFUN_KERNEL_THREADS_STACK_LIMIT # CYGFUN_KERNEL_THREADS_STACK_LIMIT == 1 # --> 1 # The following properties are affected by this value # option CYGSEM_LIBC_PER_THREAD_RAND # Requires: CYGVAR_KERNEL_THREADS_DATA # option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK # Requires: CYGVAR_KERNEL_THREADS_DATA # option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE # Requires: CYGVAR_KERNEL_THREADS_DATA # option CYGSEM_ERROR_PER_THREAD_ERRNO # Requires: CYGVAR_KERNEL_THREADS_DATA }; # > # Number of words of per-thread data # It is possible for the kernel to support per-thread data, in # other words an area of memory specific to each thread which # can be used to store data for that thread. This per-thread # data can be used by applications or by other packages such as # the ISO C library. This configuration option controls the # number of words of per-thread data that the kernel will # allow. # cdl_option CYGNUM_KERNEL_THREADS_DATA_MAX { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 6 # value_source default # Default value: 6 # Legal values: 4 to 65535 }; # Bitmap of preallocated slots of thread data # Per thread data options. Per thread data support is based loosely # on that defined by POSIX. Each thread has an array of slots, up to # CYGNUM_KERNEL_THREADS_DATA_MAX, that may contain data. Some of the # slots have been preallocated to specific packages. Others may be # allocated dynamically. # cdl_component CYGNUM_KERNEL_THREADS_DATA_ALL { # Calculated value: 15 # Flavor: data # Current_value: 15 }; # > # Slot 0 preallocated for the kernel # This option defines the index of a per-thread data # slot which is reserved by # the eCos kernel # for private use. # cdl_option CYGNUM_KERNEL_THREADS_DATA_KERNEL { # Calculated value: 0 # Flavor: data # Current_value: 0 }; # Slot 1 preallocated for uITRON # This option defines the index of a per-thread data # slot which is reserved by # the uITRON compatibility layer # for private use. # cdl_option CYGNUM_KERNEL_THREADS_DATA_ITRON { # Calculated value: 1 # Flavor: data # Current_value: 1 }; # Slot 2 preallocated for errno # This option defines the index of a per-thread data # slot which is reserved for use by an errno variable. # cdl_option CYGNUM_KERNEL_THREADS_DATA_ERRNO { # Calculated value: 2 # Flavor: data # Current_value: 2 }; # Slot 3 preallocated for POSIX # This option defines the index of a per-thread data # slot which is reserved by # POSIX # for private use. # cdl_option CYGNUM_KERNEL_THREADS_DATA_POSIX { # Calculated value: 3 # Flavor: data # Current_value: 3 }; # < # < # Stack size for the idle thread # This configuration option specifies the stack size in bytes # for the idle thread. Unless the HAL is configured to use a # separate interrupt stack this size must be sufficient to meet # the requirements of all interrupt handlers - these # requirements are cumulative if nested interrupted are # enabled. Depending on the target architecture, the stack size # typically has to be a multiple of eight or sixteen bytes. # This will be overridden where it is used if the # architectural HAL requires a minimum stack size # to handle interrupts correctly. # cdl_option CYGNUM_KERNEL_THREADS_IDLE_STACK_SIZE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 2048 # value_source default # Default value: 2048 # Legal values: 512 to 65536 }; # Maximal suspend count # This option provides for an assertion that the count value for # counted thread suspends do not exceed set limits. This is to help # with debugging, to allow a runaaway loop, for example, to be # detected more easily. # If the option is not defined, no assert is included. Whether asserts # are themselves included depends on infrastructure configury in # infra.h # cdl_option CYGNUM_KERNEL_MAX_SUSPEND_COUNT_ASSERT { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 500 # value_source default # Default value: 500 }; # Maximal wake count # This option provides for an assertion that the count value for # counted thread wakeups do not exceed set limits. This is to # help with debugging, to allow a runaaway loop, for example, to # be detected more easily. # If the option is not defined, no assert is included. Whether asserts # are themselves included depends on infrastructure configury in # infra.h # cdl_option CYGNUM_KERNEL_MAX_COUNTED_WAKE_COUNT_ASSERT { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 500 # value_source default # Default value: 500 }; # Idle thread must always yield # If the scheduler configuration only has a single priority # level, then the idle thread must yield each time around its loop. # cdl_option CYGIMP_IDLE_THREAD_YIELD { # This option is not active # ActiveIf constraint: (CYGNUM_KERNEL_SCHED_PRIORITIES == 1) # CYGNUM_KERNEL_SCHED_PRIORITIES == 32 # --> 0 # Calculated value: 1 # Flavor: bool # Current value: 1 }; # < # Synchronization primitives # doc: redirect/thread-synchronization.html # The eCos kernel supports a number of different # synchronization primitives such as mutexes, semaphores, # condition variables, and message boxes. There are # configuration options to control the exact behaviour of some # of these synchronization primitives. # cdl_component CYGPKG_KERNEL_SYNCH { # There is no associated value. # The following properties are affected by this value # option CYGDBG_KERNEL_INSTRUMENT_MUTEX # ActiveIf: CYGPKG_KERNEL_SYNCH # option CYGDBG_KERNEL_INSTRUMENT_CONDVAR # ActiveIf: CYGPKG_KERNEL_SYNCH # option CYGDBG_KERNEL_INSTRUMENT_BINSEM # ActiveIf: CYGPKG_KERNEL_SYNCH # option CYGDBG_KERNEL_INSTRUMENT_CNTSEM # ActiveIf: CYGPKG_KERNEL_SYNCH # option CYGDBG_KERNEL_INSTRUMENT_MBOXT # ActiveIf: CYGPKG_KERNEL_SYNCH }; # > # Priority inversion protection protocols # This component controls the protocols used to protect mutexes against # priority inversion. If this option is enabled it defines which # algorithm is used to implement this protection. At present only # one such algorithm is defined: "SIMPLE". The implementation # will only work in the mlqueue scheduler, and it does not handle the # rare case of nested mutexes completely correctly. However it is # both fast and deterministic. # cdl_component CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL { # ActiveIf constraint: CYGSEM_KERNEL_SCHED_MLQUEUE # CYGSEM_KERNEL_SCHED_MLQUEUE == 1 # --> 1 # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 1 SIMPLE # value_source default # Default value: 1 SIMPLE # Legal values: "SIMPLE" # Requires: CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 # CYGINT_KERNEL_SCHEDULER_UNIQUE_PRIORITIES == 0 # --> 1 }; # > # Enable priority inheritance protocol # This option enables priority inheritance protocol. This protocol # causes the owner of a mutex to be executed at the highest priority # of the threads waiting for access to the mutex. # cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT # DefaultValue: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ? # "INHERIT" : # CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ? # "CEILING" : "NONE" }; # Enable priority ceiling protocol # This option enables priority ceiling protocol. This protocol # causes the owner of a mutex to be executed at a priority # associated with the mutex. # cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT # DefaultValue: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ? # "INHERIT" : # CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ? # "CEILING" : "NONE" }; # No priority inversion protocol # This option enables the ability to have no priority inversion protocol. # It is equivalent to disabling the priority inversion protocol at # the top level, but is necessary for the runtime and default # selection options. # cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Default priority inversion protocol # This option defines the default inversion protocol used for mutexes that # are created without an explicit protocol being specified. The protocol # chosen by default is to use priority inheritance if it is present otherwise # priority ceiling, or none if neither is present. # cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT { # Flavor: data # No user value, uncomment the following line to provide one. # user_value INHERIT # value_source default # Default value: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT ? # "INHERIT" : # CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING ? # "CEILING" : "NONE" # CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT == 1 # CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING == 1 # --> INHERIT # Legal values: "INHERIT" "CEILING" "NONE" # The following properties are affected by this value # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY # ActiveIf: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT == "CEILING" }; # Default priority ceiling # This option defines the default priority ceiling to be # used if the chosen default priority inversion protocol is # priority ceiling protocol. The default value for this is zero, # making all such mutexes boost threads to the maximum priority. # cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT_PRIORITY { # This option is not active # ActiveIf constraint: CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT == "CEILING" # CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DEFAULT == INHERIT # --> 0 # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to CYGNUM_KERNEL_SCHED_PRIORITIES - 1 # CYGNUM_KERNEL_SCHED_PRIORITIES == 32 }; # Specify mutex priority inversion protocol at runtime # This option controls whether the priority inversion protocol used by # a mutex can be specified when that mutex is created. # cdl_option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC { # ActiveIf constraint: CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 # CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT == 3 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Number of protocols selected # cdl_interface CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT { # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_INHERIT, active, enabled # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_CEILING, active, enabled # Implemented by CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_NONE, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 3 # The following properties are affected by this value # option CYGSEM_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_DYNAMIC # ActiveIf: CYGINT_KERNEL_SYNCH_MUTEX_PRIORITY_INVERSION_PROTOCOL_COUNT > 1 }; # < # Message box blocking put support # Message boxes can support three different versions of the # put-message operation. The first is tryput(), which will fail # if the message box is already full. The other two are the # ordinary put() function which will block if the message box # is full, and a timed put() operation which will block for # upto a certain length of time if the message box is currently # full. The blocking versions require extra memory in the # message box data structure and extra code in the other # message box functions, so they can be disabled if the # application does not require them. If this option is enabled # then the system will always provide the blocking put() # function, and it will also provide the timed put() function # if thread timers are enabled. # cdl_option CYGMFN_KERNEL_SYNCH_MBOXT_PUT_CAN_WAIT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Message box queue size # This configuration option controls the number of messages # that can be queued in a message box before a non-blocking # put() operation will fail or a blocking put() operation will # block. The cost in memory is one pointer per message box for # each possible message. # cdl_option CYGNUM_KERNEL_SYNCH_MBOX_QUEUE_SIZE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 10 # value_source default # Default value: 10 # Legal values: 1 to 65535 }; # Condition variable timed-wait support # This option enables the condition variable timed wait # facility. # cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGFUN_KERNEL_THREADS_TIMER # CYGFUN_KERNEL_THREADS_TIMER == 1 # --> 1 }; # Condition variable explicit mutex wait support # This option enables the condition variable explicit mutex wait # facility. By default condition variables in eCos are created with # a statically associated mutex. This option permits wait (and timed wait # if CYGMFN_KERNEL_SYNCH_CONDVAR_TIMED_WAIT is enabled) to provide a # different mutex as an argument. This makes no difference to the semantics # the wait operation except that a different mutex will be used during it. # cdl_option CYGMFN_KERNEL_SYNCH_CONDVAR_WAIT_MUTEX { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Kernel instrumentation # The current release of the kernel contains an initial version # of instrumentation support. The various parts of the kernel # will invoke instrumentation routines whenever appropriate # events occur, and these will be stored in a circular buffer # for later reference. # cdl_component CYGPKG_KERNEL_INSTRUMENT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # Use buffer provided by the application # In most circumstances the kernel should provide the # instrumentation circular buffer itself. Occasionally # application code may wish to provide the buffer instead, # giving the application code more convenient access to the # buffer. This also makes it possible to put the circular # buffer in special areas of memory, for example a region that # is shared with the host. # cdl_option CYGVAR_KERNEL_INSTRUMENT_EXTERNAL_BUFFER { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Size of instrumentation buffer size # If kernel instrumentation is enabled then the instrumentation # data goes into a circular buffer. A larger buffer allows # more data to be stored, but at a significant cost in memory. # The value of this option corresponds to the number of entries # in the table, and typically each entry will require 16 bytes # of memory. # cdl_option CYGNUM_KERNEL_INSTRUMENT_BUFFER_SIZE { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 256 # value_source default # Default value: 256 # Legal values: 16 to 0x100000 }; # Wrap instrument buffer # When the instrumentation buffer is full it can either be restarted # from the beginning, overwriting older data, or it can stop at the # end. The former is useful if you want to look at the last entries # made while the latter is useful if you want to look at the first # few. # cdl_option CYGNUM_KERNEL_INSTRUMENT_BUFFER_WRAP { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Perform selective instrumentation # The kernel can either collect all instrumentation events, or # it can filter out events at runtime based on a set of flags. # For example it would be possible to decide at runtime that # only scheduler and interrupt instrumentation flags are of # interest and that all other flags should be ignored. This # flag mechanism involves extra code and processor cycle # overhead in the instrumentation code, so it can be disabled # if the application developer is interested in all # instrumentation events. # cdl_option CYGDBG_KERNEL_INSTRUMENT_FLAGS { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument the scheduler # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the scheduling code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_SCHED { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_SCHED # CYGPKG_KERNEL_SCHED == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument thread operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the code that manipulates threads. # cdl_option CYGDBG_KERNEL_INSTRUMENT_THREAD { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_THREADS # CYGPKG_KERNEL_THREADS == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument interrupts # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the interrupt handling code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_INTR { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_INTERRUPTS # CYGPKG_KERNEL_INTERRUPTS == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument mutex operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the mutex code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_MUTEX { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_SYNCH # CYGPKG_KERNEL_SYNCH == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument condition variable operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the condition variable code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_CONDVAR { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_SYNCH # CYGPKG_KERNEL_SYNCH == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument binary semaphore operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the binary semaphore code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_BINSEM { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_SYNCH # CYGPKG_KERNEL_SYNCH == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument counting semaphore operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the counting semaphore code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_CNTSEM { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_SYNCH # CYGPKG_KERNEL_SYNCH == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument message box operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the message box code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_MBOXT { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGPKG_KERNEL_SYNCH # CYGPKG_KERNEL_SYNCH == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument clock operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the real-time clock code. # cdl_option CYGDBG_KERNEL_INSTRUMENT_CLOCK { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK # CYGVAR_KERNEL_COUNTERS_CLOCK == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Instrument alarm-related operations # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not instrumentation support is compiled into # the code related to alarm operations. # cdl_option CYGDBG_KERNEL_INSTRUMENT_ALARM { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # ActiveIf constraint: CYGVAR_KERNEL_COUNTERS_CLOCK # CYGVAR_KERNEL_COUNTERS_CLOCK == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Support application-level instrumentation # It is possible to perform selective instrumentation at # run-time. It is also possible to disable instrumentation # in various kernel components at compile-time, thus # reducing the code size overheads. This option controls # whether or not application-level instrumentation gets # compiled in. # cdl_option CYGDBG_KERNEL_INSTRUMENT_USER { # This option is not active # The parent CYGPKG_KERNEL_INSTRUMENT is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Source-level debugging support # If the source level debugger gdb is to be used for debugging # application code then it may be necessary to configure in support # for this in the kernel. # cdl_component CYGPKG_KERNEL_DEBUG { # There is no associated value. }; # > # Include GDB multi-threading debug support # This option enables some extra kernel code which is needed # to support multi-threaded source level debugging. # cdl_option CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGVAR_KERNEL_THREADS_LIST # CYGVAR_KERNEL_THREADS_LIST == 1 # --> 1 # Requires: CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT # CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT == 1 # --> 1 # The following properties are affected by this value # option CYGDBG_HAL_DEBUG_GDB_THREAD_SUPPORT # ActiveIf: CYGSEM_HAL_ROM_MONITOR || CYGDBG_KERNEL_DEBUG_GDB_THREAD_SUPPORT }; # < # Kernel APIs # doc: redirect/kernel-apis.html # The eCos kernel is implemented in C++, so a C++ interface # to the kernel is always available. There is also an optional # C API. Additional API's may be provided in future versions. # cdl_component CYGPKG_KERNEL_API { # There is no associated value. }; # > # Provide C API # The eCos kernel is implemented in C++, but there is an # optional C API for use by application code. This C API can be # disabled if the application code does not invoke the kernel # directly, but instead uses higher level code such as the # uITRON compatibility layer. # cdl_option CYGFUN_KERNEL_API_C { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGPKG_MEMALLOC # CYGPKG_MEMALLOC == current # --> 1 # Requires: CYGFUN_MEMALLOC_KAPI # CYGFUN_MEMALLOC_KAPI == 1 # --> 1 # The following properties are affected by this value # option CYGFUN_MEMALLOC_KAPI # DefaultValue: CYGFUN_KERNEL_API_C }; # < # Kernel build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_KERNEL_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the eCos kernel. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_KERNEL_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the eCos kernel. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_KERNEL_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Kernel tests # This option specifies the set of tests for the eCos kernel. # cdl_option CYGPKG_KERNEL_TESTS { # Calculated value: # CYGPKG_HAL_ARM_AEB ? "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kintr0 tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/ksched1 tests/ksem0 tests/ksem1 tests/kflag0 tests/kflag1 tests/klock tests/kthread0 tests/kthread1 tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/release tests/kill tests/thread_gdb tests/tm_basic tests/dhrystone" : CYGPKG_HAL_ARM_EBSA285 ? "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kintr0 tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/ksched1 tests/ksem0 tests/ksem1 tests/kflag0 tests/kflag1 tests/klock tests/kthread0 tests/kthread1 tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/release tests/kill tests/thread_gdb tests/tm_basic tests/dhrystone tests/stress_threads tests/kcache1 tests/kcache2" : CYGPKG_HAL_ARM_EDB7XXX ? "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kintr0 tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/ksched1 tests/ksem0 tests/ksem1 tests/kflag0 tests/kflag1 tests/klock tests/kthread0 tests/kthread1 tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/release tests/kill tests/thread_gdb tests/tm_basic tests/dhrystone tests/stress_threads tests/kcache1 tests/kcache2" : CYGPKG_HAL_ARM_CMA230 ? "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/cnt_sem0 tests/cnt_sem1 tests/flag0 tests/flag1 tests/intr0 tests/kclock0 tests/kclock1 tests/kintr0 tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/ksched1 tests/ksem0 tests/ksem1 tests/kflag0 tests/kflag1 tests/klock tests/kthread0 tests/kthread1 tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/release tests/kill tests/thread_gdb tests/tm_basic tests/dhrystone" : CYGPKG_HAL_ARM ? "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kintr0 tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/ksched1 tests/ksem0 tests/ksem1 tests/kflag0 tests/kflag1 tests/klock tests/kthread0 tests/kthread1 tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/release tests/kill tests/thread_gdb tests/tm_basic tests/dhrystone" : "tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kintr0 tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/ksched1 tests/ksem0 tests/ksem1 tests/kflag0 tests/kflag1 tests/klock tests/kthread0 tests/kthread1 tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/release tests/kill tests/thread_gdb tests/tm_basic tests/dhrystone tests/stress_threads tests/kcache1 tests/kcache2" # # CYGPKG_HAL_ARM_AEB (unknown) == 0 # CYGPKG_HAL_ARM_EBSA285 (unknown) == 0 # CYGPKG_HAL_ARM_EDB7XXX (unknown) == 0 # CYGPKG_HAL_ARM_CMA230 (unknown) == 0 # CYGPKG_HAL_ARM (unknown) == 0 # Flavor: data # Current_value: tests/bin_sem0 tests/bin_sem1 tests/bin_sem2 tests/clock0 tests/clock1 tests/clockcnv tests/cnt_sem0 tests/cnt_sem1 tests/except1 tests/flag0 tests/flag1 tests/intr0 tests/kclock0 tests/kclock1 tests/kexcept1 tests/kintr0 tests/kmbox1 tests/kmutex0 tests/kmutex1 tests/ksched1 tests/ksem0 tests/ksem1 tests/kflag0 tests/kflag1 tests/klock tests/kthread0 tests/kthread1 tests/mbox1 tests/mqueue1 tests/mutex0 tests/mutex1 tests/mutex2 tests/mutex3 tests/sched1 tests/sync2 tests/sync3 tests/thread0 tests/thread1 tests/thread2 tests/release tests/kill tests/thread_gdb tests/tm_basic tests/dhrystone tests/stress_threads tests/kcache1 tests/kcache2 }; # < # < # Dynamic memory allocation # This package provides memory allocator infrastructure required for # dynamic memory allocators, including the ISO standard malloc # interface. It also contains some sample implementations. # cdl_package CYGPKG_MEMALLOC { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # option CYGFUN_KERNEL_API_C # Requires: CYGPKG_MEMALLOC # package CYGPKG_NET # Requires: CYGPKG_MEMALLOC }; # > # Memory allocator implementations # This component contains configuration options related to the # various memory allocators available. # cdl_component CYGPKG_MEMALLOC_ALLOCATORS { # There is no associated value. }; # > # Fixed block allocator # This component contains configuration options related to the # fixed block memory allocator. # cdl_component CYGPKG_MEMALLOC_ALLOCATOR_FIXED { # There is no associated value. }; # > # Make thread safe # With this option enabled, this allocator will be # made thread-safe. Additionally allocation functions # are made available that allow a thread to wait # until memory is available. # cdl_option CYGSEM_MEMALLOC_ALLOCATOR_FIXED_THREADAWARE { # ActiveIf constraint: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Simple variable block allocator # This component contains configuration options related to the # simple variable block memory allocator. This allocator is not # very fast, and in particular does not scale well with large # numbers of allocations. It is however very compact in terms of # code size and does not have very much overhead per allocation. # cdl_component CYGPKG_MEMALLOC_ALLOCATOR_VARIABLE { # There is no associated value. }; # > # Make thread safe # With this option enabled, this allocator will be # made thread-safe. Additionally allocation functions # are added that allow a thread to wait until memory # are made available that allow a thread to wait # until memory is available. # cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_THREADAWARE { # ActiveIf constraint: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Coalesce memory # The variable-block memory allocator can perform coalescing # of memory whenever the application code releases memory back # to the pool. This coalescing reduces the possibility of # memory fragmentation problems, but involves extra code and # processor cycles. # cdl_option CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE # Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE }; # < # Doug Lea's malloc # This component contains configuration options related to the # port of Doug Lea's memory allocator, normally known as # dlmalloc. dlmalloc has a reputation for being both fast # and space-conserving, as well as resisting fragmentation well. # It is a common choice for a general purpose allocator and # has been used in both newlib and Linux glibc. # cdl_component CYGPKG_MEMALLOC_ALLOCATOR_DLMALLOC { # There is no associated value. }; # > # Debug build # Doug Lea's malloc implementation has substantial amounts # of internal checking in order to verify the operation # and consistency of the allocator. However this imposes # substantial overhead on each operation. Therefore this # checking may be individually disabled. # cdl_option CYGDBG_MEMALLOC_ALLOCATOR_DLMALLOC_DEBUG { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 != CYGDBG_USE_ASSERTS # CYGDBG_USE_ASSERTS == 0 # --> 0 # Requires: CYGDBG_USE_ASSERTS # CYGDBG_USE_ASSERTS == 0 # --> 0 }; # Make thread safe # With this option enabled, this allocator will be # made thread-safe. Additionally allocation functions # are made available that allow a thread to wait # until memory is available. # cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_THREADAWARE { # ActiveIf constraint: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 }; # Support more than one instance # Having this option disabled allows important # implementation structures to be declared as a single # static instance, allowing faster access. However this # would fail if there is more than one instance of # the dlmalloc allocator class. Therefore this option can # be enabled if multiple instances are required. Note: as # a special case, if this allocator is used as the # implementation of malloc, and it can be determined there # is more than one malloc pool, then this option will be # silently enabled. # cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_SAFE_MULTIPLE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Use system memcpy() and memset() # This may be used to control whether memset() and memcpy() # are used within the implementation. The alternative is # to use some macro equivalents, which some people report # are faster in some circumstances. # cdl_option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 }; # < # < # Kernel C API support for memory allocation # This option must be enabled to provide the extensions required # to support integration into the kernel C API. # cdl_option CYGFUN_MEMALLOC_KAPI { # ActiveIf constraint: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: CYGFUN_KERNEL_API_C # CYGFUN_KERNEL_API_C == 1 # --> 1 # The following properties are affected by this value # option CYGFUN_KERNEL_API_C # Requires: CYGFUN_MEMALLOC_KAPI }; # malloc(0) returns NULL # This option controls the behavior of malloc(0) ( or calloc with # either argument 0 ). It is permitted by the standard to return # either a NULL pointer or a unique pointer. Enabling this option # forces a NULL pointer to be returned. # cdl_option CYGSEM_MEMALLOC_MALLOC_ZERO_RETURNS_NULL { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # malloc() and supporting allocators # This component enables support for dynamic memory # allocation as supplied by the functions malloc(), # free(), calloc() and realloc(). As these # functions are often used, but can have quite an # overhead, disabling them here can ensure they # cannot even be used accidentally when static # allocation is preferred. Within this component are # various allocators that can be selected for use # as the underlying implementation of the dynamic # allocation functions. # cdl_component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS { # ActiveIf constraint: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # malloc() allocator implementations # cdl_interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS { # Implemented by CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE, active, disabled # Implemented by CYGIMP_MEMALLOC_MALLOC_DLMALLOC, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 # CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_MEMALLOC_MALLOC_ALLOCATORS # Requires: CYGINT_MEMALLOC_MALLOC_ALLOCATORS == 1 }; # malloc() implementation instantiation data # Memory allocator implementations that are capable of being # used underneath malloc() must be instantiated. The code # to do this is set in this option. It is only intended to # be set by the implementation, not the user. # cdl_option CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER { # Flavor: data # No user value, uncomment the following line to provide one. # user_value # value_source default # Default value: # The following properties are affected by this value # option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" # option CYGIMP_MEMALLOC_MALLOC_DLMALLOC # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" }; # Simple variable block implementation # This causes malloc() to use the simple # variable block allocator. # cdl_option CYGIMP_MEMALLOC_MALLOC_VARIABLE_SIMPLE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == # --> 0 # Requires: CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE # CYGSEM_MEMALLOC_ALLOCATOR_VARIABLE_COALESCE == 1 # --> 1 }; # Doug Lea's malloc implementation # This causes malloc() to use a version of Doug Lea's # malloc (dlmalloc) as the underlying implementation. # cdl_option CYGIMP_MEMALLOC_MALLOC_DLMALLOC { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == "" # CYGBLD_MEMALLOC_MALLOC_IMPLEMENTATION_HEADER == # --> 1 }; # < # Size of the fallback dynamic memory pool in bytes # If *no* heaps are configured in your memory layout, # dynamic memory allocation by # malloc() and calloc() must be from a fixed-size, # contiguous memory pool (note here that it is the # pool that is of a fixed size, but malloc() is still # able to allocate variable sized chunks of memory # from it). This option is the size # of that pool, in bytes. Note that not all of # this is available for programs to # use - some is needed for internal information # about memory regions, and some may be lost to # ensure that memory allocation only returns # memory aligned on word (or double word) # boundaries - a very common architecture # constraint. # cdl_option CYGNUM_MEMALLOC_FALLBACK_MALLOC_POOL_SIZE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 16384 # value_source default # Default value: 16384 # Legal values: 32 to 0x7fffffff }; # Common memory allocator package build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_MEMALLOC_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building this package. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_MEMALLOC_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building this package. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_MEMALLOC_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Tests # This option specifies the set of tests for this package. # cdl_option CYGPKG_MEMALLOC_TESTS { # Calculated value: "tests/dlmalloc1 tests/dlmalloc2 tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc" # Flavor: data # Current_value: tests/dlmalloc1 tests/dlmalloc2 tests/kmemfix1 tests/kmemvar1 tests/malloc1 tests/malloc2 tests/malloc3 tests/malloc4 tests/memfix1 tests/memfix2 tests/memvar1 tests/memvar2 tests/realloc }; # < # < # ISO C and POSIX infrastructure # eCos supports implementations of ISO C libraries and POSIX # implementations. This package provides infrastructure used by # all such implementations. # cdl_package CYGPKG_ISOINFRA { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # component CYGPKG_IO_SERIAL_TERMIOS # Requires: CYGPKG_ISOINFRA # component CYGPKG_IO_SERIAL_TERMIOS # DefaultValue: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY # Requires: CYGPKG_ISOINFRA # option CYGIMP_MEMALLOC_ALLOCATOR_DLMALLOC_USE_MEMCPY # DefaultValue: 0 != CYGPKG_ISOINFRA # component CYGPKG_MEMALLOC_MALLOC_ALLOCATORS # ActiveIf: CYGPKG_ISOINFRA # package CYGPKG_LIBC_I18N # Requires: CYGPKG_ISOINFRA # package CYGPKG_LIBC_SETJMP # Requires: CYGPKG_ISOINFRA # package CYGPKG_LIBC_SIGNALS # Requires: CYGPKG_ISOINFRA # package CYGPKG_LIBC_STARTUP # Requires: CYGPKG_ISOINFRA # package CYGPKG_LIBC_STDIO # Requires: CYGPKG_ISOINFRA # package CYGPKG_LIBC_STDLIB # Requires: CYGPKG_ISOINFRA # package CYGPKG_LIBC_STRING # Requires: CYGPKG_ISOINFRA # package CYGPKG_LIBC_TIME # Requires: CYGPKG_ISOINFRA # package CYGPKG_NET # Requires: CYGPKG_ISOINFRA }; # > # Startup and termination # cdl_component CYGPKG_ISO_STARTUP { # There is no associated value. }; # > # main() startup implementations # Implementations of this interface arrange for a user-supplied # main() to be called in an ISO compatible environment. # cdl_interface CYGINT_ISO_MAIN_STARTUP { # Implemented by CYGPKG_LIBC_STARTUP, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_MAIN_STARTUP # CYGINT_ISO_MAIN_STARTUP == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_MAIN_STARTUP # Requires: 1 >= CYGINT_ISO_MAIN_STARTUP }; # environ implementations # Implementations of this interface provide the environ # variable required by POSIX. # cdl_interface CYGINT_ISO_ENVIRON { # Implemented by CYGPKG_LIBC_STARTUP, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_ENVIRON # CYGINT_ISO_ENVIRON == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_ENVIRON # Requires: 1 >= CYGINT_ISO_ENVIRON }; # < # ctype.h functions # cdl_component CYGPKG_ISO_CTYPE_H { # There is no associated value. }; # > # Number of implementations of ctype functions # cdl_interface CYGINT_ISO_CTYPE { # Implemented by CYGPKG_LIBC_I18N, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_CTYPE # CYGINT_ISO_CTYPE == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_CTYPE # Requires: 1 >= CYGINT_ISO_CTYPE # package CYGPKG_LIBC_STDLIB # Requires: CYGINT_ISO_CTYPE }; # Ctype implementation header # cdl_option CYGBLD_ISO_CTYPE_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # option CYGIMP_LIBC_I18N_CTYPE_INLINES # Requires: CYGBLD_ISO_CTYPE_HEADER == "" }; # < # Error handling # cdl_component CYGPKG_ISO_ERRNO { # There is no associated value. }; # > # Number of implementations of error codes # cdl_interface CYGINT_ISO_ERRNO_CODES { # Implemented by CYGPKG_ERROR, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_ERRNO_CODES # CYGINT_ISO_ERRNO_CODES == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_ERRNO_CODES # Requires: 1 >= CYGINT_ISO_ERRNO_CODES # component CYGPKG_IO_SERIAL_TERMIOS # Requires: CYGINT_ISO_ERRNO_CODES # component CYGPKG_IO_SERIAL_TERMIOS # DefaultValue: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO # option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO # Requires: CYGINT_ISO_ERRNO_CODES # option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO # Requires: CYGINT_ISO_ERRNO_CODES # package CYGPKG_LIBC_STDIO # Requires: CYGINT_ISO_ERRNO_CODES }; # Error codes implementation header # cdl_option CYGBLD_ISO_ERRNO_CODES_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_ERROR # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" }; # Number of implementations of errno variable # cdl_interface CYGINT_ISO_ERRNO { # Implemented by CYGPKG_ERROR_ERRNO, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_ERRNO # CYGINT_ISO_ERRNO == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_ERRNO # Requires: 1 >= CYGINT_ISO_ERRNO # component CYGPKG_IO_SERIAL_TERMIOS # Requires: CYGINT_ISO_ERRNO # component CYGPKG_IO_SERIAL_TERMIOS # DefaultValue: 0 != CYGPKG_ISOINFRA && 0 != CYGPKG_IO_FILEIO && 0 != CYGINT_ISO_ERRNO_CODES && 0 != CYGINT_ISO_ERRNO # option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO # Requires: CYGINT_ISO_ERRNO # option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO # Requires: CYGINT_ISO_ERRNO # package CYGPKG_LIBC_STDIO # Requires: CYGINT_ISO_ERRNO }; # errno variable implementation header # cdl_option CYGBLD_ISO_ERRNO_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # component CYGPKG_ERROR_ERRNO # Requires: CYGBLD_ISO_ERRNO_HEADER == "" }; # < # Locale-related functions # cdl_component CYGPKG_ISO_LOCALE { # There is no associated value. }; # > # Number of implementations of locale functions # cdl_interface CYGINT_ISO_LOCALE { # Implemented by CYGPKG_LIBC_I18N, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_LOCALE # CYGINT_ISO_LOCALE == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_LOCALE # Requires: 1 >= CYGINT_ISO_LOCALE }; # Locale implementation header # cdl_option CYGBLD_ISO_LOCALE_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # Standard I/O-related functionality # cdl_component CYGPKG_ISO_STDIO { # There is no associated value. }; # > # Number of implementations of stdio file types # cdl_interface CYGINT_ISO_STDIO_FILETYPES { # Implemented by CYGPKG_LIBC_STDIO, active, enabled # This value cannot be modified here. # Flavor: booldata # Current value: 1 1 # Requires: 1 >= CYGINT_ISO_STDIO_FILETYPES # CYGINT_ISO_STDIO_FILETYPES == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_FILETYPES # Requires: 1 >= CYGINT_ISO_STDIO_FILETYPES }; # Stdio file types implementation header # cdl_option CYGBLD_ISO_STDIO_FILETYPES_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGBLD_ISO_STDIO_FILETYPES_HEADER == "" }; # Stdio standard streams implementations # cdl_interface CYGINT_ISO_STDIO_STREAMS { # Implemented by CYGPKG_LIBC_STDIO, active, enabled # This value cannot be modified here. # Flavor: booldata # Current value: 1 1 # Requires: 1 >= CYGINT_ISO_STDIO_STREAMS # CYGINT_ISO_STDIO_STREAMS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_STREAMS # Requires: 1 >= CYGINT_ISO_STDIO_STREAMS }; # Stdio standard streams implementation header # This header file must define stdin, stdout # and stderr. # cdl_option CYGBLD_ISO_STDIO_STREAMS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGBLD_ISO_STDIO_STREAMS_HEADER == "" }; # Number of implementations of stdio file operations # cdl_interface CYGINT_ISO_STDIO_FILEOPS { # No options implement this inferface # This value cannot be modified here. # Flavor: booldata # Current value: 0 0 # Requires: 1 >= CYGINT_ISO_STDIO_FILEOPS # CYGINT_ISO_STDIO_FILEOPS == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_FILEOPS # Requires: 1 >= CYGINT_ISO_STDIO_FILEOPS }; # Stdio file operations implementation header # This header controls the file system operations on a file # such as remove(), rename(), tmpfile(), tmpnam() and associated # constants. # cdl_option CYGBLD_ISO_STDIO_FILEOPS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Number of implementations of stdio file access functionals # cdl_interface CYGINT_ISO_STDIO_FILEACCESS { # Implemented by CYGPKG_LIBC_STDIO, active, enabled # This value cannot be modified here. # Flavor: booldata # Current value: 1 1 # Requires: 1 >= CYGINT_ISO_STDIO_FILEACCESS # CYGINT_ISO_STDIO_FILEACCESS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_FILEACCESS # Requires: 1 >= CYGINT_ISO_STDIO_FILEACCESS # option CYGSEM_LIBC_EXIT_CALLS_FFLUSH # Requires: CYGINT_ISO_STDIO_FILEACCESS # option CYGSEM_LIBC_EXIT_CALLS_FFLUSH # DefaultValue: 0 != CYGINT_ISO_STDIO_FILEACCESS }; # Stdio file access implementation header # This header controls the file access operations # such as fclose(), fflush(), fopen(), freopen(), setbuf(), # setvbuf(), and associated constants. # cdl_option CYGBLD_ISO_STDIO_FILEACCESS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGBLD_ISO_STDIO_FILEACCESS_HEADER == "" }; # Number of implementations of stdio formatted I/O # cdl_interface CYGINT_ISO_STDIO_FORMATTED_IO { # Implemented by CYGPKG_LIBC_STDIO, active, enabled # This value cannot be modified here. # Flavor: booldata # Current value: 1 1 # Requires: 1 >= CYGINT_ISO_STDIO_FORMATTED_IO # CYGINT_ISO_STDIO_FORMATTED_IO == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_FORMATTED_IO # Requires: 1 >= CYGINT_ISO_STDIO_FORMATTED_IO }; # Stdio formatted I/O implementation header # cdl_option CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == "" }; # Number of implementations of stdio character I/O # cdl_interface CYGINT_ISO_STDIO_CHAR_IO { # Implemented by CYGPKG_LIBC_STDIO, active, enabled # This value cannot be modified here. # Flavor: booldata # Current value: 1 1 # Requires: 1 >= CYGINT_ISO_STDIO_CHAR_IO # CYGINT_ISO_STDIO_CHAR_IO == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_CHAR_IO # Requires: 1 >= CYGINT_ISO_STDIO_CHAR_IO }; # Stdio character I/O implementation header # cdl_option CYGBLD_ISO_STDIO_CHAR_IO_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGBLD_ISO_STDIO_CHAR_IO_HEADER == "" }; # Number of implementations of stdio direct I/O # cdl_interface CYGINT_ISO_STDIO_DIRECT_IO { # Implemented by CYGPKG_LIBC_STDIO, active, enabled # This value cannot be modified here. # Flavor: booldata # Current value: 1 1 # Requires: 1 >= CYGINT_ISO_STDIO_DIRECT_IO # CYGINT_ISO_STDIO_DIRECT_IO == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_DIRECT_IO # Requires: 1 >= CYGINT_ISO_STDIO_DIRECT_IO }; # Stdio direct I/O implementation header # cdl_option CYGBLD_ISO_STDIO_DIRECT_IO_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == "" }; # Number of implementations of stdio file positioning # cdl_interface CYGINT_ISO_STDIO_FILEPOS { # No options implement this inferface # This value cannot be modified here. # Flavor: booldata # Current value: 0 0 # Requires: 1 >= CYGINT_ISO_STDIO_FILEPOS # CYGINT_ISO_STDIO_FILEPOS == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_FILEPOS # Requires: 1 >= CYGINT_ISO_STDIO_FILEPOS }; # Stdio file positioning implementation header # cdl_option CYGBLD_ISO_STDIO_FILEPOS { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Number of implementations of stdio error handling # cdl_interface CYGINT_ISO_STDIO_ERROR { # Implemented by CYGPKG_LIBC_STDIO, active, enabled # This value cannot be modified here. # Flavor: booldata # Current value: 1 1 # Requires: 1 >= CYGINT_ISO_STDIO_ERROR # CYGINT_ISO_STDIO_ERROR == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDIO_ERROR # Requires: 1 >= CYGINT_ISO_STDIO_ERROR }; # Stdio error handling implementation header # cdl_option CYGBLD_ISO_STDIO_ERROR_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STDIO # Requires: CYGBLD_ISO_STDIO_ERROR_HEADER == "" }; # < # Standard general utility functions # cdl_component CYGPKG_ISO_STDLIB { # There is no associated value. }; # > # String conversion function implementations # cdl_interface CYGINT_ISO_STDLIB_STRCONV { # Implemented by CYGPKG_LIBC_STDLIB, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV # CYGINT_ISO_STDLIB_STRCONV == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDLIB_STRCONV # Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV }; # String conversion function implementation header # cdl_option CYGBLD_ISO_STDLIB_STRCONV_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # option CYGIMP_LIBC_STDLIB_INLINE_ATOX # Requires: CYGBLD_ISO_STDLIB_STRCONV_HEADER == "" }; # String to FP conversion function implementations # cdl_interface CYGINT_ISO_STDLIB_STRCONV_FLOAT { # Implemented by CYGFUN_LIBC_strtod, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT # CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDLIB_STRCONV_FLOAT # Requires: 1 >= CYGINT_ISO_STDLIB_STRCONV_FLOAT # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT # Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT # DefaultValue: 0 != CYGPKG_LIBM && # 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT }; # String to FP conversion function implementation header # cdl_option CYGBLD_ISO_STDLIB_STRCONV_FLOAT_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Random number generator implementations # cdl_interface CYGINT_ISO_RAND { # Implemented by CYGIMP_LIBC_RAND_SIMPLEST, active, disabled # Implemented by CYGIMP_LIBC_RAND_SIMPLE1, active, enabled # Implemented by CYGIMP_LIBC_RAND_KNUTH1, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_RAND # CYGINT_ISO_RAND == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_RAND # Requires: 1 >= CYGINT_ISO_RAND }; # Random number generator implementation header # cdl_option CYGBLD_ISO_RAND_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Malloc implementations # cdl_interface CYGINT_ISO_MALLOC { # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_MALLOC # CYGINT_ISO_MALLOC == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_MALLOC # Requires: 1 >= CYGINT_ISO_MALLOC # component CYGPKG_IO_SERIAL_TERMIOS # Requires: CYGINT_ISO_MALLOC # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC # Requires: CYGINT_ISO_MALLOC # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC # DefaultValue: 0 != CYGINT_ISO_MALLOC # option CYGPKG_LIBC_STDIO_OPEN # Requires: CYGINT_ISO_MALLOC # option CYGPKG_LIBC_STDIO_OPEN # DefaultValue: 0 != CYGINT_ISO_MALLOC }; # Malloc implementation header # cdl_option CYGBLD_ISO_MALLOC_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Mallinfo() implementations # cdl_interface CYGINT_ISO_MALLINFO { # Implemented by CYGPKG_MEMALLOC_MALLOC_ALLOCATORS, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_MALLINFO # CYGINT_ISO_MALLINFO == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_MALLINFO # Requires: 1 >= CYGINT_ISO_MALLINFO }; # Mallinfo() implementation header # cdl_option CYGBLD_ISO_MALLINFO_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Program exit functionality implementations # cdl_interface CYGINT_ISO_EXIT { # Implemented by CYGPKG_LIBC_STARTUP, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_EXIT # CYGINT_ISO_EXIT == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_EXIT # Requires: 1 >= CYGINT_ISO_EXIT }; # Program exit functionality implementation header # cdl_option CYGBLD_ISO_EXIT_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Program environment implementations # cdl_interface CYGINT_ISO_STDLIB_ENVIRON { # Implemented by CYGPKG_LIBC_STDLIB, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STDLIB_ENVIRON # CYGINT_ISO_STDLIB_ENVIRON == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDLIB_ENVIRON # Requires: 1 >= CYGINT_ISO_STDLIB_ENVIRON }; # Program environment implementation header # cdl_option CYGBLD_ISO_STDLIB_ENVIRON_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # system() implementations # cdl_interface CYGINT_ISO_STDLIB_SYSTEM { # Implemented by CYGPKG_LIBC_STDLIB, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STDLIB_SYSTEM # CYGINT_ISO_STDLIB_SYSTEM == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDLIB_SYSTEM # Requires: 1 >= CYGINT_ISO_STDLIB_SYSTEM }; # system() implementation header # cdl_option CYGBLD_ISO_STDLIB_SYSTEM_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # bsearch() implementations # cdl_interface CYGINT_ISO_BSEARCH { # Implemented by CYGPKG_LIBC_STDLIB, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_BSEARCH # CYGINT_ISO_BSEARCH == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_BSEARCH # Requires: 1 >= CYGINT_ISO_BSEARCH }; # bsearch() implementation header # cdl_option CYGBLD_ISO_BSEARCH_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # qsort() implementations # cdl_interface CYGINT_ISO_QSORT { # Implemented by CYGPKG_LIBC_STDLIB, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STDLIB_QSORT # CYGINT_ISO_STDLIB_QSORT (unknown) == 0 # --> 1 # The following properties are affected by this value }; # qsort() implementation header # cdl_option CYGBLD_ISO_QSORT_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # abs()/labs() implementations # cdl_interface CYGINT_ISO_ABS { # Implemented by CYGPKG_LIBC_STDLIB, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STDLIB_ABS # CYGINT_ISO_STDLIB_ABS (unknown) == 0 # --> 1 # The following properties are affected by this value # package CYGPKG_LIBC_TIME # Requires: CYGINT_ISO_ABS }; # abs()/labs() implementation header # cdl_option CYGBLD_ISO_STDLIB_ABS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # option CYGIMP_LIBC_STDLIB_INLINE_ABS # Requires: CYGBLD_ISO_STDLIB_ABS_HEADER == "" }; # div()/ldiv() implementations # cdl_interface CYGINT_ISO_DIV { # Implemented by CYGPKG_LIBC_STDLIB, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STDLIB_DIV # CYGINT_ISO_STDLIB_DIV (unknown) == 0 # --> 1 # The following properties are affected by this value # package CYGPKG_LIBC_TIME # Requires: CYGINT_ISO_DIV }; # div()/ldiv() implementation header # cdl_option CYGBLD_ISO_STDLIB_DIV_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # option CYGIMP_LIBC_STDLIB_INLINE_DIV # Requires: CYGBLD_ISO_STDLIB_DIV_HEADER == "" }; # Multibyte character implementations # cdl_interface CYGINT_ISO_STDLIB_MULTIBYTE { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_STDLIB_MULTIBYTE # CYGINT_ISO_STDLIB_MULTIBYTE == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STDLIB_MULTIBYTE # Requires: 1 >= CYGINT_ISO_STDLIB_MULTIBYTE }; # Multibyte character implementation header # cdl_option CYGBLD_ISO_STDLIB_MULTIBYTE_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # String functions # cdl_component CYGPKG_ISO_STRING { # There is no associated value. }; # > # Number of implementations of strerror() function # cdl_interface CYGINT_ISO_STRERROR { # Implemented by CYGPKG_ERROR_STRERROR, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STRERROR # CYGINT_ISO_STRERROR == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STRERROR # Requires: 1 >= CYGINT_ISO_STRERROR # package CYGPKG_LIBC_STDIO # Requires: CYGINT_ISO_STRERROR }; # strerror() implementation header # cdl_option CYGBLD_ISO_STRERROR_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # option CYGPKG_ERROR_STRERROR # Requires: CYGBLD_ISO_STRERROR_HEADER == "" }; # memcpy() implementation header # cdl_option CYGBLD_ISO_MEMCPY_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # memset() implementation header # cdl_option CYGBLD_ISO_MEMSET_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Number of implementations of strtok_r() function # cdl_interface CYGINT_ISO_STRTOK_R { # Implemented by CYGPKG_LIBC_STRING, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STRTOK_R # CYGINT_ISO_STRTOK_R == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STRTOK_R # Requires: 1 >= CYGINT_ISO_STRTOK_R }; # strtok_r() implementation header # cdl_option CYGBLD_ISO_STRTOK_R_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STRING # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" }; # Number of implementations of locale-specific string functions # This covers locale-dependent string functions such as strcoll() # and strxfrm(). # cdl_interface CYGINT_ISO_STRING_LOCALE_FUNCS { # Implemented by CYGPKG_LIBC_STRING, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STRING_LOCALE_FUNCS # CYGINT_ISO_STRING_LOCALE_FUNCS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STRING_LOCALE_FUNCS # Requires: 1 >= CYGINT_ISO_STRING_LOCALE_FUNCS }; # Locale-specific string functions' implementation header # This covers locale-dependent string functions such as strcoll() # and strxfrm(). # cdl_option CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STRING # Requires: CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == "" }; # Number of implementations of BSD string functions # cdl_interface CYGINT_ISO_STRING_BSD_FUNCS { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_STRING_BSD_FUNCS # CYGINT_ISO_STRING_BSD_FUNCS == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STRING_BSD_FUNCS # Requires: 1 >= CYGINT_ISO_STRING_BSD_FUNCS }; # BSD string functions' implementation header # cdl_option CYGBLD_ISO_STRING_BSD_FUNCS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Number of implementations of other mem*() functions # cdl_interface CYGINT_ISO_STRING_MEMFUNCS { # Implemented by CYGPKG_LIBC_STRING, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STRING_MEMFUNCS # CYGINT_ISO_STRING_MEMFUNCS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STRING_MEMFUNCS # Requires: 1 >= CYGINT_ISO_STRING_MEMFUNCS # package CYGPKG_LIBC_STDIO # Requires: CYGINT_ISO_STRING_MEMFUNCS }; # Other mem*() functions' implementation header # cdl_option CYGBLD_ISO_STRING_MEMFUNCS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STRING # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" }; # Number of implementations of other ISO C str*() functions # This covers the other str*() functions defined by ISO C. # cdl_interface CYGINT_ISO_STRING_STRFUNCS { # Implemented by CYGPKG_LIBC_STRING, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_STRING_STRFUNCS # CYGINT_ISO_STRING_STRFUNCS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_STRING_STRFUNCS # Requires: 1 >= CYGINT_ISO_STRING_STRFUNCS # package CYGPKG_LIBC_STDIO # Requires: CYGINT_ISO_STRING_STRFUNCS }; # Other ISO C str*() functions' implementation header # This covers the other str*() functions defined by ISO C. # cdl_option CYGBLD_ISO_STRING_STRFUNCS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_STRING # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" }; # < # Clock and time functionality # cdl_component CYGPKG_ISO_TIME { # There is no associated value. }; # > # time_t implementation header # cdl_option CYGBLD_ISO_TIME_T_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # clock_t implementation header # cdl_option CYGBLD_ISO_CLOCK_T_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # struct timeval implementation header # cdl_option CYGBLD_ISO_STRUCTTIMEVAL_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Number of implementations of POSIX timer types # cdl_interface CYGINT_ISO_POSIX_TIMER_TYPES { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_POSIX_TIMER_TYPES # CYGINT_ISO_POSIX_TIMER_TYPES == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_POSIX_TIMER_TYPES # Requires: 1 >= CYGINT_ISO_POSIX_TIMER_TYPES }; # POSIX timer types implementation header # cdl_option CYGBLD_ISO_POSIX_TIMER_TYPES_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Number of implementations of ISO C types # cdl_interface CYGINT_ISO_C_TIME_TYPES { # Implemented by CYGPKG_LIBC_TIME, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_C_TIME_TYPES # CYGINT_ISO_C_TIME_TYPES == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_C_TIME_TYPES # Requires: 1 >= CYGINT_ISO_C_TIME_TYPES }; # ISO C time types implementation header # cdl_option CYGBLD_ISO_C_TIME_TYPES_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_TIME # Requires: CYGBLD_ISO_C_TIME_TYPES_HEADER == "" }; # Number of implementations of POSIX timers # cdl_interface CYGINT_ISO_POSIX_TIMERS { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_POSIX_TIMERS # CYGINT_ISO_POSIX_TIMERS == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_POSIX_TIMERS # Requires: 1 >= CYGINT_ISO_POSIX_TIMERS }; # POSIX timer implementation header # cdl_option CYGBLD_ISO_POSIX_TIMERS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Number of implementations of ISO C clock functions # cdl_interface CYGINT_ISO_C_CLOCK_FUNCS { # Implemented by CYGPKG_LIBC_TIME, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_C_CLOCK_FUNCS # CYGINT_ISO_C_CLOCK_FUNCS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_C_CLOCK_FUNCS # Requires: 1 >= CYGINT_ISO_C_CLOCK_FUNCS }; # ISO C clock functions' implementation header # cdl_option CYGBLD_ISO_C_CLOCK_FUNCS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_TIME # Requires: CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == "" }; # Number of implementations of tzset() function # cdl_interface CYGINT_ISO_TZSET { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_TZSET # CYGINT_ISO_TZSET == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_TZSET # Requires: 1 >= CYGINT_ISO_TZSET }; # tzset() implementation header # cdl_option CYGBLD_ISO_TZSET_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # Signal functionality # cdl_component CYGPKG_ISO_SIGNAL { # There is no associated value. }; # > # Number of implementations of signal numbers # cdl_interface CYGINT_ISO_SIGNAL_NUMBERS { # Implemented by CYGPKG_LIBC_SIGNALS, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_SIGNAL_NUMBERS # CYGINT_ISO_SIGNAL_NUMBERS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_SIGNAL_NUMBERS # Requires: 1 >= CYGINT_ISO_SIGNAL_NUMBERS # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS # Requires: CYGINT_ISO_SIGNAL_NUMBERS # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS # DefaultValue: CYGINT_ISO_SIGNAL_NUMBERS != 0 && CYGINT_ISO_SIGNAL_IMPL != 0 }; # Signal numbering implementation header # This header provides the mapping of signal # names (e.g. SIGBUS) to numbers. # cdl_option CYGBLD_ISO_SIGNAL_NUMBERS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_SIGNALS # Requires: CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == "" }; # Number of signal implementations # cdl_interface CYGINT_ISO_SIGNAL_IMPL { # Implemented by CYGPKG_LIBC_SIGNALS, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_SIGNAL_IMPL # CYGINT_ISO_SIGNAL_IMPL == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_SIGNAL_IMPL # Requires: 1 >= CYGINT_ISO_SIGNAL_IMPL # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS # Requires: CYGINT_ISO_SIGNAL_IMPL # option CYGSEM_IO_SERIAL_TERMIOS_USE_SIGNALS # DefaultValue: CYGINT_ISO_SIGNAL_NUMBERS != 0 && CYGINT_ISO_SIGNAL_IMPL != 0 }; # Signals implementation header # cdl_option CYGBLD_ISO_SIGNAL_IMPL_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_SIGNALS # Requires: CYGBLD_ISO_SIGNAL_IMPL_HEADER == "" }; # POSIX real time signals feature test macro # This defines the POSIX feature test macro # that indicates that the POSIX real time signals # are present. # cdl_interface CYGINT_POSIX_REALTIME_SIGNALS { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_POSIX_REALTIME_SIGNALS # CYGINT_POSIX_REALTIME_SIGNALS == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_POSIX_REALTIME_SIGNALS # Requires: 1 >= CYGINT_POSIX_REALTIME_SIGNALS }; # < # Non-local jumps functionality # cdl_component CYGPKG_ISO_SETJMP { # There is no associated value. }; # > # setjmp() / longjmp() implementations # cdl_interface CYGINT_ISO_SETJMP { # Implemented by CYGPKG_LIBC_SETJMP, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_SETJMP # CYGINT_ISO_SETJMP == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_SETJMP # Requires: 1 >= CYGINT_ISO_SETJMP }; # setjmp() / longjmp() implementation header # cdl_option CYGBLD_ISO_SETJMP_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # The inferred value should not be edited directly. inferred_value 1 # value_source inferred # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_LIBC_SETJMP # Requires: CYGBLD_ISO_SETJMP_HEADER == "" }; # sigsetjmp() / siglongjmp() implementations # cdl_interface CYGINT_ISO_SIGSETJMP { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_SIGSETJMP # CYGINT_ISO_SIGSETJMP == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_SIGSETJMP # Requires: 1 >= CYGINT_ISO_SIGSETJMP }; # sigsetjmp() / siglongjmp() implementation header # cdl_option CYGBLD_ISO_SIGSETJMP_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # Assertions implementation header # cdl_option CYGBLD_ISO_ASSERT_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # POSIX file control # This covers the POSIX file control definitions, # normally found in # cdl_component CYGPKG_ISO_POSIX_FCNTL { # There is no associated value. }; # > # POSIX open flags implementation header # cdl_option CYGBLD_ISO_OFLAG_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # POSIX fcntl() implementations # cdl_interface CYGINT_ISO_FCNTL { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_FCNTL # CYGINT_ISO_FCNTL == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_FCNTL # Requires: 1 >= CYGINT_ISO_FCNTL }; # POSIX fcntl() implementation header # cdl_option CYGBLD_ISO_FCNTL_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # POSIX file open implementations # cdl_interface CYGINT_ISO_OPEN { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_OPEN # CYGINT_ISO_OPEN == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_OPEN # Requires: 1 >= CYGINT_ISO_OPEN }; # POSIX file open implementation header # cdl_option CYGBLD_ISO_OPEN_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # definitions implementation header # cdl_option CYGBLD_ISO_STAT_DEFS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # POSIX directory reading implementation # cdl_interface CYGINT_ISO_DIRENT { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_DIRENT # CYGINT_ISO_DIRENT == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_DIRENT # Requires: 1 >= CYGINT_ISO_DIRENT }; # definitions implementation header # cdl_option CYGBLD_ISO_DIRENT_HEADER { # Flavor: booldata user_value 1 0 # value_source user # Default value: 0 0 }; # POSIX contents # This covers the types required by POSIX to be in # # cdl_component CYGPKG_ISO_POSIX_TYPES { # There is no associated value. }; # > # POSIX thread types implementations # cdl_interface CYGINT_ISO_PTHREADTYPES { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_PTHREADTYPES # CYGINT_ISO_PTHREADTYPES == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_PTHREADTYPES # Requires: 1 >= CYGINT_ISO_PTHREADTYPES }; # POSIX thread types implementation header # cdl_option CYGBLD_ISO_PTHREADTYPES_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # ssize_t implementation header # cdl_option CYGBLD_ISO_SSIZE_T_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Filesystem types implementation header # cdl_option CYGBLD_ISO_FSTYPES_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # gid_t, pid_t, uid_t implementation header # cdl_option CYGBLD_ISO_SCHEDTYPES_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # Non-POSIX contents # This covers the extra types required by non-POSIX # packages to be in . These would normally # only be visible if _POSIX_SOURCE is not defined. # cdl_component CYGPKG_ISO_EXTRA_TYPES { # There is no associated value. }; # > # BSD compatible types # cdl_interface CYGINT_ISO_BSDTYPES { # Implemented by CYGPKG_NET, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 >= CYGINT_ISO_BSDTYPES # CYGINT_ISO_BSDTYPES == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_BSDTYPES # Requires: 1 >= CYGINT_ISO_BSDTYPES }; # BSD types header # cdl_option CYGBLD_ISO_BSDTYPES_HEADER { # Flavor: booldata user_value 1 # value_source user # Default value: 0 0 # The following properties are affected by this value # package CYGPKG_NET # Requires: CYGBLD_ISO_BSDTYPES_HEADER == "" }; # < # Utsname structure # cdl_component CYGPKG_ISO_UTSNAME { # There is no associated value. }; # > # Utsname header # cdl_option CYGBLD_ISO_UTSNAME_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # POSIX scheduler # cdl_component CYGPKG_ISO_SCHED { # There is no associated value. }; # > # POSIX scheduler implementations # cdl_interface CYGINT_ISO_SCHED_IMPL { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_SCHED_IMPL # CYGINT_ISO_SCHED_IMPL == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_SCHED_IMPL # Requires: 1 >= CYGINT_ISO_SCHED_IMPL }; # POSIX scheduler implementation header # cdl_option CYGBLD_ISO_SCHED_IMPL_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # POSIX semaphores # cdl_component CYGPKG_ISO_SEMAPHORES { # There is no associated value. }; # > # POSIX semaphore implementations # cdl_interface CYGINT_ISO_SEMAPHORES { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_SEMAPHORES # CYGINT_ISO_SEMAPHORES == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_SEMAPHORES # Requires: 1 >= CYGINT_ISO_SEMAPHORES }; # POSIX semaphore implementation header # cdl_option CYGBLD_ISO_SEMAPHORES_HEADER { # Flavor: booldata user_value 0 0 # value_source user # Default value: 0 0 }; # < # POSIX message queues # cdl_component CYGPKG_ISO_MQUEUE { # There is no associated value. }; # > # Implementations # cdl_interface CYGINT_ISO_MQUEUE { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_MQUEUE # CYGINT_ISO_MQUEUE == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_MQUEUE # Requires: 1 >= CYGINT_ISO_MQUEUE # option CYGNUM_ISO_MQUEUE_OPEN_MAX # ActiveIf: CYGINT_ISO_MQUEUE # option CYGNUM_ISO_MQUEUE_PRIO_MAX # ActiveIf: CYGINT_ISO_MQUEUE }; # Implementation header # cdl_option CYGBLD_ISO_MQUEUE_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # Maximum number of open message queues # cdl_option CYGNUM_ISO_MQUEUE_OPEN_MAX { # This option is not active # ActiveIf constraint: CYGINT_ISO_MQUEUE # CYGINT_ISO_MQUEUE == 0 # --> 0 # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: CYGNUM_POSIX_MQUEUE_OPEN_MAX > 0 ? CYGNUM_POSIX_MQUEUE_OPEN_MAX : 0 # CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0 # CYGNUM_POSIX_MQUEUE_OPEN_MAX (unknown) == 0 # --> 0 0 }; # Maximum number of message priorities # cdl_option CYGNUM_ISO_MQUEUE_PRIO_MAX { # This option is not active # ActiveIf constraint: CYGINT_ISO_MQUEUE # CYGINT_ISO_MQUEUE == 0 # --> 0 # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 1 65535 # value_source default # Default value: 1 65535 }; # < # POSIX threads # cdl_component CYGPKG_ISO_PTHREAD { # There is no associated value. }; # > # POSIX pthread implementations # cdl_interface CYGINT_ISO_PTHREAD_IMPL { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_PTHREAD_IMPL # CYGINT_ISO_PTHREAD_IMPL == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_PTHREAD_IMPL # Requires: 1 >= CYGINT_ISO_PTHREAD_IMPL }; # POSIX pthread implementation header # cdl_option CYGBLD_ISO_PTHREAD_IMPL_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # Limits # cdl_component CYGPKG_ISO_LIMITS { # There is no associated value. }; # > # POSIX pthread limits implementations # cdl_interface CYGINT_ISO_POSIX_LIMITS { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_POSIX_LIMITS # CYGINT_ISO_POSIX_LIMITS == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_POSIX_LIMITS # Requires: 1 >= CYGINT_ISO_POSIX_LIMITS }; # POSIX pthread limits implementation header # cdl_option CYGBLD_ISO_POSIX_LIMITS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # OPEN_MAX implementation header # cdl_option CYGBLD_ISO_OPEN_MAX_HEADER { # Flavor: booldata user_value 1 1 # value_source user # Default value: 0 0 }; # LINK_MAX implementation header # cdl_option CYGBLD_ISO_LINK_MAX_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # NAME_MAX implementation header # cdl_option CYGBLD_ISO_NAME_MAX_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # PATH_MAX implementation header # cdl_option CYGBLD_ISO_PATH_MAX_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # POSIX termios # cdl_component CYGPKG_ISO_TERMIOS { # There is no associated value. }; # > # POSIX termios implementations # cdl_interface CYGINT_ISO_TERMIOS { # Implemented by CYGPKG_IO_SERIAL_TERMIOS, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 0 # Requires: 1 >= CYGINT_ISO_TERMIOS # CYGINT_ISO_TERMIOS == 0 # --> 1 # The following properties are affected by this value # interface CYGINT_ISO_TERMIOS # Requires: 1 >= CYGINT_ISO_TERMIOS }; # POSIX termios implementation header # cdl_option CYGBLD_ISO_TERMIOS_HEADER { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 0 0 # value_source default # Default value: 0 0 }; # < # Build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_ISOINFRA_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the ISO C and POSIX infrastructure package. # These flags are used in addition to the set of global flags. # cdl_option CYGPKG_ISOINFRA_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the ISO C and POSIX infrastructure package. # These flags are removed from the set of global flags # if present. # cdl_option CYGPKG_ISOINFRA_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # < # < # ISO C library # doc: redirect/the-iso-standard-c-and-math-libraries.html # The packages under this package enable compatibility with the ISO C # standard - ISO/IEC 9899:1990. This allows the user application to use # well known standard C library functions, and in eCos starts a thread # to invoke the user function main(). This package is a top-level placeholder # to contain the implementations. # cdl_package CYGPKG_LIBC { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # component CYGNUM_LIBM_COMPATIBILITY # Requires: CYGPKG_LIBC }; # > # ISO C library internationalization functions # doc: redirect/the-iso-standard-c-and-math-libraries.html # This package provides internationalization functions specified by the # ISO C standard - ISO/IEC 9899:1990. These include locale-related # functionality and functionality. # cdl_package CYGPKG_LIBC_I18N { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 }; # > # Size of locale name strings # This option controls the maximum size of # locale names and is used, among other things # to instantiate a static string used # as a return value from the # setlocale() function. When requesting the # current locale settings with LC_ALL, a string # must be constructed to contain this data, rather # than just returning a constant string. This # string data is stored in the static string. # This depends on the length of locale names, # hence this option. If just the C locale is # present, this option can be set as low as 2. # cdl_option CYGNUM_LIBC_I18N_MAX_LOCALE_NAME_SIZE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 2 # value_source default # Default value: 2 # Legal values: 2 to 0x7fffffff }; # Inline versions of functions # This option chooses whether the simple character # classification and conversion functions (e.g. # isupper(), isalpha(), toupper(), etc.) # from are available as inline # functions. This may improve performance and as # the functions are small, may even improve code # size. # cdl_option CYGIMP_LIBC_I18N_CTYPE_INLINES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGBLD_ISO_CTYPE_HEADER == "" # CYGBLD_ISO_CTYPE_HEADER == # --> 1 }; # C library i18n functions build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_I18N_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_I18N_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_I18N_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # C library i18n function tests # This option specifies the set of tests for the C library # i18n functions. # cdl_option CYGPKG_LIBC_I18N_TESTS { # Calculated value: "tests/ctype tests/setlocale" # Flavor: data # Current_value: tests/ctype tests/setlocale }; # < # < # ISO C library setjmp/longjmp functions # doc: redirect/the-iso-standard-c-and-math-libraries.html # This package provides non-local jumps based on setjmp() and # longjmp() in as specified by the ISO C # standard - ISO/IEC 9899:1990. # cdl_package CYGPKG_LIBC_SETJMP { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGBLD_ISO_SETJMP_HEADER == "" # CYGBLD_ISO_SETJMP_HEADER == # --> 1 }; # > # C library setjmp build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_SETJMP_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building this package. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building this package. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_SETJMP_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # C library setjmp tests # This option specifies the set of tests for this package. # cdl_option CYGPKG_LIBC_SETJMP_TESTS { # Calculated value: "tests/setjmp" # Flavor: data # Current_value: tests/setjmp }; # < # < # ISO C library signal functions # doc: redirect/the-iso-standard-c-and-math-libraries.html # This component controls signal functionality, # as implemented in ISO/IEC 9899:1990 chapter 7.7 with # the signal() and raise() functions. As well as # allowing a program to send itself signals, it is # also possible to cause hardware exceptions to # be signalled to the program in a similar way. # cdl_package CYGPKG_LIBC_SIGNALS { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == "" # CYGBLD_ISO_SIGNAL_NUMBERS_HEADER == # --> 1 # Requires: CYGBLD_ISO_SIGNAL_IMPL_HEADER == "" # CYGBLD_ISO_SIGNAL_IMPL_HEADER == # --> 1 # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 }; # > # Thread safe signals # Because signal handlers are global, and not # thread-specific (as mandated by POSIX 1003.1) # it is possible for multiple threads to clash # and corrupt data if setting the same signal # handler at the same time. With this option # enabled, a kernel mutex will be used to protect # the shared data. # cdl_option CYGSEM_LIBC_SIGNALS_THREAD_SAFE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 }; # Hardware exceptions cause signals # This causes hardware exceptions like # arithmetic exceptions (e.g. divide by zero) # or bad memory accesses to be passed through as # signals. It is thus possible for a program to # handle these exceptions in a generic way using # the appropriate signal handlers. The details of # exactly which exceptions are passed through # under what circumstances depend on the # underlying HAL implementation. Consequently it # must be remembered that signal handlers cannot # be guaranteed to be invoked in the expected # circumstances if you do not know about the # underlying HAL implementation - it is possible # that the architecture is unable to detect that # exception. # cdl_component CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGSEM_KERNEL_EXCEPTIONS_GLOBAL # CYGSEM_KERNEL_EXCEPTIONS_GLOBAL == 1 # --> 1 # Requires: CYGSEM_KERNEL_EXCEPTIONS_DECODE # CYGSEM_KERNEL_EXCEPTIONS_DECODE == 0 # --> 0 }; # > # Chain old exception handlers # When hardware exceptions are generated, it # is possible to chain into the old kernel exception # handler before calling any registered signal # handler. If this is not required, disable this # option and only the signal handler will be # called when this exception occurs. Disabling # this option will also save some space and code # usage. # cdl_option CYGSEM_LIBC_SIGNALS_CHAIN_HWEXCEPTIONS { # This option is not active # The parent CYGSEM_LIBC_SIGNALS_HWEXCEPTIONS is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: !CYGPKG_HAL_I386_LINUX # CYGPKG_HAL_I386_LINUX (unknown) == 0 # --> 1 }; # < # Inline versions of functions # Some functions can be made inline instead of # being function calls. These can be set here. # cdl_component CYGPKG_LIBC_SIGNALS_INLINE { # There is no associated value. }; # > # raise() # Enabling this option makes raise() an inline function. # cdl_option CYGIMP_LIBC_SIGNALS_RAISE_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # signal() # Enabling this option makes signal() an inline function. # cdl_option CYGIMP_LIBC_SIGNALS_SIGNAL_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Error handling # You may or may not want errno to be set by # certain functions. Not using errno could save # both space, code, and avoid worrying about # interactions between multiple threads when # setting it. # cdl_component CYGPKG_LIBC_SIGNALS_ERROR_HANDLING { # There is no associated value. }; # > # Bad signal fatal # Enabling this option will cause an assertion # failure if the signal handling code is # passed a bad signal. Otherwise an error will # be returned, or in the case of a # hardware-generated exception it will be silently # ignored. # cdl_option CYGSEM_LIBC_SIGNALS_BAD_SIGNAL_FATAL { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGDBG_USE_ASSERTS # CYGDBG_USE_ASSERTS == 0 # --> 0 }; # raise() sets errno # You may or may not want errno to be set by # raise() on error conditions. Not using errno # could save both space, code, and avoid worrying # about interactions between multiple threads when # setting it. Strictly ISO C does not mandate # that errno be set by raise(). # cdl_option CYGSEM_LIBC_SIGNALS_RAISE_SETS_ERRNO { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGINT_ISO_ERRNO # CYGINT_ISO_ERRNO == 1 # --> 1 # Requires: CYGINT_ISO_ERRNO_CODES # CYGINT_ISO_ERRNO_CODES == 1 # --> 1 }; # signal() sets errno # You may or may not want errno to be set by # signal() on error conditions. Not using errno # could save both space, code, and avoid worrying # about interactions between multiple threads when # setting it. Strictly ISO C mandates # that errno be set by signal(). # cdl_option CYGSEM_LIBC_SIGNALS_SIGNAL_SETS_ERRNO { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGINT_ISO_ERRNO # CYGINT_ISO_ERRNO == 1 # --> 1 # Requires: CYGINT_ISO_ERRNO_CODES # CYGINT_ISO_ERRNO_CODES == 1 # --> 1 }; # < # Tracing # These options control the trace output for the C # library internal signal implementation. # cdl_component CYGPKG_LIBC_SIGNALS_TRACING { # There is no associated value. }; # > # Default trace level for raise() # This gives the default tracing level for the # raise() function. Higher numbers are more # verbose. # cdl_option CYGNUM_LIBC_SIGNALS_RAISE_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # Default hardware exception handler trace level # This gives the default tracing level for the # hardware exception handler function (if enabled). # Higher numbers are more verbose. # cdl_option CYGNUM_LIBC_SIGNALS_HWHANDLER_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # < # C library signal functions build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_SIGNALS_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_SIGNALS_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # C library signal function tests # This option specifies the set of tests for the C library # signal functions. # cdl_option CYGPKG_LIBC_SIGNALS_TESTS { # Calculated value: "tests/signal1 tests/signal2" # Flavor: data # Current_value: tests/signal1 tests/signal2 }; # < # < # ISO environment startup/termination # doc: redirect/c-library-startup.html # This package manages the control of the # environment (in the general sense) that an # application would require for full ISO C / POSIX # compatibility, including a main() entry point # supplied with arguments and an environment # (as retrievable by the getenv() function). # It also includes at the other end of things, # what happens when main() returns or exit() is # called. # cdl_package CYGPKG_LIBC_STARTUP { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGINT_LIBC_STARTUP_CONTEXT == 1 # CYGINT_LIBC_STARTUP_CONTEXT == 1 # --> 1 }; # > # Arguments to main() # This option allows the setting of the arguments # to the main function. This only has any effect # when cyg_iso_c_start() is used to start the # ISO C compatibility. This will automatically # invoke main() in an ISO C compatible fashion. # This option is in fact used as argv, and so is # an n-tuple of string constants. The final # entry must be NULL. Conventionally if argv[0] # is supplied, it is used to inform the program # of its name. # cdl_option CYGDAT_LIBC_ARGUMENTS { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "{\"\", NULL}" # value_source default # Default value: "{\"\", NULL}" }; # Startup context for main() # This component describes the options available for # what context main() is invoked in, such as in a thread # etc. # cdl_component CYGPKG_LIBC_STARTUP_CONTEXT { # There is no associated value. }; # > # Startup context implementors # cdl_interface CYGINT_LIBC_STARTUP_CONTEXT { # Implemented by CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT, active, disabled # Implemented by CYGSEM_LIBC_STARTUP_MAIN_THREAD, active, enabled # Implemented by CYGSEM_LIBC_STARTUP_MAIN_OTHER, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # The following properties are affected by this value # package CYGPKG_LIBC_STARTUP # Requires: CYGINT_LIBC_STARTUP_CONTEXT == 1 }; # Invoked from initialization context # With this option selected, main() will be # called via cyg_user_start() (unless the program # overrides the default cyg_user_start()). This # means it is run in the context of the system # initialization code, without the eCos kernel # scheduler running, and using the startup stack. # This means that any functions that may require # interactions with a running kernel will not # work (including libc functions, if configured # to be thread safe for example), so you should # restrict yourself to only calling fully # re-entrant functions from within main() in # this case. # cdl_option CYGSEM_LIBC_STARTUP_MAIN_INITCONTEXT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 == CYGPKG_KERNEL && 0 == CYGPKG_POSIX_PTHREAD # CYGPKG_KERNEL == current # CYGPKG_POSIX_PTHREAD (unknown) == 0 # --> 0 }; # Invoked as eCos thread # With this option selected, main() is invoked from an eCos # thread. # cdl_component CYGSEM_LIBC_STARTUP_MAIN_THREAD { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGPKG_KERNEL && 0 == CYGPKG_POSIX_PTHREAD # CYGPKG_KERNEL == current # CYGPKG_POSIX_PTHREAD (unknown) == 0 # --> 1 # Requires: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 # The following properties are affected by this value # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS # Requires: CYGSEM_LIBC_STARTUP_MAIN_THREAD || (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) }; # > # System provides stack for main()'s thread # This option controls whether the stack of # main()'s thread is provided by the application or # provided by the system. When disabled, the # application must declare a pointer variable # cyg_libc_main_stack which is a pointer to an # appropriately aligned region of memory. The # application must also declare a variable of # type `int' called cyg_libc_main_stack_size # which contains the size of the stack in bytes. # This must be a multiple of 8. # cdl_component CYGSEM_LIBC_MAIN_STACK_FROM_SYSTEM { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # main()'s default thread stack size # With an eCos kernel, when the cyg_iso_c_start() # function is used to invoke the user-supplied # main() function in an ISO C compatible fashion, # a separate thread is created to call main(). # This option controls the size of that thread's # stack, which is allocated in the BSS. It # must be a multiple of 8. Note, a low number # here may be overriden by the HAL if there is # a minimum requirement to process interrupts # etc. # cdl_option CYGNUM_LIBC_MAIN_DEFAULT_STACK_SIZE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 8192 # value_source default # Default value: 8192 # Legal values: 16 to 0x7fffffff }; # < # Priority of main()'s thread # This option is used to provide the thread # priority which main()'s thread runs at. Be # sure to check that this number is appropriate # for the kernel scheduler chosen. Different # kernel schedulers impose different restrictions # on the usable priorities. # cdl_option CYGNUM_LIBC_MAIN_THREAD_PRIORITY { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 10 # value_source default # Default value: 10 # Legal values: 0 to 0x7fffffff }; # < # Invoked elsewhere # With this option selected, main() must be # invoked by a separate package, or by the user. # cdl_option CYGSEM_LIBC_STARTUP_MAIN_OTHER { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 != CYGPKG_POSIX_PTHREAD # CYGPKG_POSIX_PTHREAD (unknown) == 0 # --> 0 # The following properties are affected by this value # option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS # Requires: CYGSEM_LIBC_STARTUP_MAIN_THREAD || (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) }; # < # Include atexit() function # This option enables the use of the atexit() # function, and ensure that the atexit handlers # are invoked from within exit() as defined in # the ISO C standard. # cdl_component CYGFUN_LIBC_ATEXIT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Number of functions atexit() supports # This option sets the number of functions # that atexit() has room for. In other words, # the number of separate atexit() calls that # can be made before calling exit() or returning # from main() ( in an environment controlled by # cyg_iso_c_start() ). For strict compliance # with the ISO C standard this should be at # least 32. # cdl_option CYGNUM_LIBC_ATEXIT_HANDLERS { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 32 # value_source default # Default value: 32 # Legal values: 1 to 0x7fffffff }; # < # Make exit() call fflush() # This option will ensure that all output # streams are flushed when exitting using # exit() as prescribed by the ISO C standard. # cdl_option CYGSEM_LIBC_EXIT_CALLS_FFLUSH { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGINT_ISO_STDIO_FILEACCESS # CYGINT_ISO_STDIO_FILEACCESS == 1 # --> 1 # Requires: CYGINT_ISO_STDIO_FILEACCESS # CYGINT_ISO_STDIO_FILEACCESS == 1 # --> 1 }; # _exit() stops all threads # If this option is enabled then _exit(), # which is called from exit() which itself is # called on return from main(), stops the eCos # scheduler. For strict POSIX 1003.1 # compatibility this would be the normal # behaviour. To allow the thread to simply # exit, without affecting other threads, simply # leave this option disabled. If there is no eCos # scheduler, then _exit() simply loops # irrespective of the setting of this option. # cdl_option CYGSEM_LIBC_EXIT_STOPS_SYSTEM { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 }; # Default environment # This option allows the setting of the default # contents of the environment. This is in fact # the contents of the global environment pointer # char **environ defined by POSIX 1003.1. Strings # must be of the form NAME=VALUE, and the final # entry must be NULL. # cdl_option CYGDAT_LIBC_DEFAULT_ENVIRONMENT { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "{ NULL }" # value_source default # Default value: "{ NULL }" }; # Invoke default static constructors # This option causes the C library to call # static constructors with default priority # from within the context of the main() thread, # working with the co-operation of the HAL. # This may be needed for environments that # expect static constructors to be run in a # thread context. Note that this uses an object # with priority 65534. Therefore do not use # priority 65534 for any other static objects # with this option enabled. # cdl_option CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG # CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG == 0 # --> 0 # Requires: CYGSEM_LIBC_STARTUP_MAIN_THREAD || (CYGSEM_LIBC_STARTUP_MAIN_OTHER && CYGPKG_POSIX_PTHREAD) # CYGSEM_LIBC_STARTUP_MAIN_THREAD == 1 # CYGSEM_LIBC_STARTUP_MAIN_OTHER == 0 # CYGPKG_POSIX_PTHREAD (unknown) == 0 # --> 1 # The following properties are affected by this value # option CYGSEM_HAL_STOP_CONSTRUCTORS_ON_FLAG # Requires: CYGSEM_LIBC_INVOKE_DEFAULT_STATIC_CONSTRUCTORS }; # ISO environment startup/termination build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_STARTUP_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building this package. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building this package. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_STARTUP_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # ISO environment startup/termination tests # This option specifies the set of tests for this package. # cdl_option CYGPKG_LIBC_STARTUP_TESTS { # Calculated value: "tests/atexit" # Flavor: data # Current_value: tests/atexit }; # < # < # ISO C library standard input/output functions # doc: redirect/the-iso-standard-c-and-math-libraries.html # This package provides standard input/output functions associated # with the header file as specified by the # ISO C standard - ISO/IEC 9899:1990. # cdl_package CYGPKG_LIBC_STDIO { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_IO # CYGPKG_IO == current # --> 1 # Requires: CYGPKG_IO_SERIAL_HALDIAG # CYGPKG_IO_SERIAL_HALDIAG == 1 # --> 1 # Requires: CYGBLD_ISO_STDIO_FILETYPES_HEADER == "" # CYGBLD_ISO_STDIO_FILETYPES_HEADER == # --> 1 # Requires: CYGBLD_ISO_STDIO_FILEACCESS_HEADER == "" # CYGBLD_ISO_STDIO_FILEACCESS_HEADER == # --> 1 # Requires: CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == "" # CYGBLD_ISO_STDIO_FORMATTED_IO_HEADER == # --> 1 # Requires: CYGBLD_ISO_STDIO_CHAR_IO_HEADER == "" # CYGBLD_ISO_STDIO_CHAR_IO_HEADER == # --> 1 # Requires: CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == "" # CYGBLD_ISO_STDIO_DIRECT_IO_HEADER == # --> 1 # Requires: CYGBLD_ISO_STDIO_ERROR_HEADER == "" # CYGBLD_ISO_STDIO_ERROR_HEADER == # --> 1 # Requires: CYGBLD_ISO_STDIO_STREAMS_HEADER == "" # CYGBLD_ISO_STDIO_STREAMS_HEADER == # --> 1 # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGINT_ISO_ERRNO_CODES # CYGINT_ISO_ERRNO_CODES == 1 # --> 1 # Requires: CYGINT_ISO_ERRNO # CYGINT_ISO_ERRNO == 1 # --> 1 # Requires: CYGINT_ISO_STRERROR # CYGINT_ISO_STRERROR == 1 # --> 1 # Requires: CYGINT_ISO_STRING_STRFUNCS # CYGINT_ISO_STRING_STRFUNCS == 1 # --> 1 # Requires: CYGINT_ISO_STRING_MEMFUNCS # CYGINT_ISO_STRING_MEMFUNCS == 1 # --> 1 # The following properties are affected by this value # option CYGSEM_LIBM_USE_STDERR # Requires: CYGPKG_LIBC_STDIO # option CYGPKG_NET_NLOOP # Requires: (CYGPKG_NET_NLOOP > 1) ? CYGPKG_LIBC_STDIO : 1 }; # > # Inline versions of functions # This option chooses whether some of the # particularly simple functions from # are available as inline # functions. This may improve performance, and as # the functions are small, may even improve code # size. # cdl_option CYGIMP_LIBC_STDIO_INLINES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Permitted number of open files # This option controls the guaranteed minimum # number of simultaneously open files. The ISO # C standard requires it to be defined (para # 7.9.1), and if strictly compliant, it must be # at least 8 (para 7.9.3). In practice it can be # as low as 3 - for stdin, stdout and stderr. # cdl_option FOPEN_MAX { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 8 # value_source default # Default value: 8 # Legal values: 3 to 0x7fffffff }; # Maximum length of filename # This option defines the maximum allowed size of # a filename in characters. The ISO C standard # requires it to be defined (para 7.9.1). # cdl_option FILENAME_MAX { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 16 # value_source default # Default value: 16 # Legal values: 1 to 0x7fffffff }; # Maximum length of filenames for temporary files # This option defines the maximum allowed size of # filenames for temporary files as generated by # tmpnam(). It is measured in characters, and the # ISO C standard requires it to be defined (para # 7.9.1). # cdl_option L_tmpnam { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 16 # value_source default # Default value: 16 # Legal values: 1 to 0x7fffffff }; # Unique file names generated by tmpnam() # This option defines the minimum number of # unique file names generated by tmpnam(). The # ISO C standard requires it to be defined (para # 7.9.1). # cdl_option TMP_MAX { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 0x7fffffff }; # Buffered I/O # This option controls whether input/output # through the functions is buffered. # This may save some memory per file. It # is equivalent to putting every file into # non-buffered mode (_IONBF) through setvbuf(), # except now it can never be altered back to # buffered mode. Disabling buffering is strictly # non-compliant with the ISO C standard. # cdl_component CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option BUFSIZ # Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0 # option CYGPKG_LIBC_STDIO_FILEIO # Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO }; # > # Default buffer size # This option defines the default size of buffer # used with calls to setbuf(), and is the default # size for buffered streams that have not had # either setbuf() or setvbuf() invoked on them. # It is exactly equivalent to the standard # constant BUFSIZ, except that it is 0 if # CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO is disabled. # The ISO C standard requires this to be defined # (para 7.9.1), and says it must be at least 256 # (para 7.9.2). # cdl_option CYGNUM_LIBC_STDIO_BUFSIZE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 256 # value_source default # Default value: 256 # Legal values: 1 to 0x7fffffff # The following properties are affected by this value # option BUFSIZ # Calculated: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0 }; # setbuf()/setvbuf() allows dynamic setting # This option controls whether I/O buffers are # implemented dynamically within the stdio # implementation. Otherwise they will be static, # and cannot be changed by setbuf()/setvbuf(). If # they are static (i.e. this option is disabled), # any attempt to use an arbitrary buffer size, or # to pass a user-supplied buffer to setbuf() or # setvbuf() will fail - the buffer is implemented # internally as a static array taking the size # of the configuration option BUFSIZ. The only # exception is if a user buffer is not supplied, # and the buffer size requested is less than # BUFSIZ. In this case, the buffer will # be configured to only use that amount of # buffering. However the unused memory left over # will NOT be freed. If this option is enabled, # then setvbuf() can be used to assign a user supplied # buffer to the stream. # Either setting can be considered to # be compliant with the ISO C standard. # cdl_option CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC # Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF }; # setbuf()/setvbuf() uses malloc() # This option controls whether buffers set by setbuf() and # setvbuf() may be allocated using malloc(). # cdl_option CYGSEM_LIBC_STDIO_SETVBUF_MALLOC { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGINT_ISO_MALLOC # CYGINT_ISO_MALLOC == 1 # --> 1 # Requires: CYGINT_ISO_MALLOC # CYGINT_ISO_MALLOC == 1 # --> 1 # Requires: CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF # CYGSEM_LIBC_STDIO_DYNAMIC_SETVBUF == 1 # --> 1 }; # < # Default buffer size (BUFSIZ) # cdl_option BUFSIZ { # Calculated value: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO ? CYGNUM_LIBC_STDIO_BUFSIZE : 0 # CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1 # CYGNUM_LIBC_STDIO_BUFSIZE == 256 # Flavor: data # Current_value: 256 }; # Support for ungetc() # This option controls whether ungetc() is # supported. If not, then some space can be # saved, and speed is improved. Note that you # MUST have this defined if you want to use the # scanf() family of functions. # cdl_option CYGFUN_LIBC_STDIO_ungetc { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Dynamic opening/closing of files # fopen() and fclose() use dynamic memory # allocation routines to allocate memory for # new FILE structure pointers. If a malloc # implementation is available, this option # may be enabled to use # fopen() and fclose(). If disabled, only the # default console streams - stdin, stdout and # stderr - will be available. # cdl_option CYGPKG_LIBC_STDIO_OPEN { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGINT_ISO_MALLOC # CYGINT_ISO_MALLOC == 1 # --> 1 # Requires: CYGINT_ISO_MALLOC # CYGINT_ISO_MALLOC == 1 # --> 1 }; # Default console device # This option allows you to choose the # default console device. In the current # implementation, all these devices begin # with the prefix /dev/ and are followed by # the name of a device. The name of the device # depends on the device drivers you have # configured in your system. For example, # /dev/ttydiag could be the HAL diagnostic output # pseudo-device, or /dev/tty0 could be your # first serial driver, depending on your # configuration. # cdl_option CYGDAT_LIBC_STDIO_DEFAULT_CONSOLE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "\"/dev/ttydiag\"" # value_source default # Default value: "\"/dev/ttydiag\"" }; # Floating point support # This component allows floating point support # to be enabled in certain standard I/O # functions. # cdl_component CYGPKG_LIBC_STDIO_FLOATING_POINT { # There is no associated value. }; # > # printf() family # This option enables the use of floating point # number output in the printf() family (i.e. # printf(), sprintf(), vprintf(), etc.) of # functions. A substantial amount of code space # can be saved if this option is disabled. If it # is disabled then floating point specifiers # (%e, %f, %g) are ignored, and nothing is # output. # cdl_option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGPKG_LIBM # CYGPKG_LIBM == current # --> 1 # Requires: CYGPKG_LIBM # CYGPKG_LIBM == current # --> 1 }; # scanf() family # This option enables the use of floating point # number conversion in the scanf() family (i.e. # scanf(), sscanf(), vscanf(), etc.) of # functions. A substantial amount of code space # can be saved if this option is disabled. If it # is disabled then floating point specifiers # (%e, %f, %g) are ignored, and nothing is # converted. # cdl_option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGPKG_LIBM && # 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT # CYGPKG_LIBM == current # CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1 # --> 1 # Requires: CYGPKG_LIBM # CYGPKG_LIBM == current # --> 1 # Requires: CYGINT_ISO_STDLIB_STRCONV_FLOAT # CYGINT_ISO_STDLIB_STRCONV_FLOAT == 1 # --> 1 }; # < # Thread safe I/O streams # This option controls whether standard I/O streams # are thread-safe. Having this option set allows # the streams to be locked when accessed by # multiple threads simultaneously. # cdl_option CYGSEM_LIBC_STDIO_THREAD_SAFE_STREAMS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 # Requires: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 }; # C library stdio functions build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_STDIO_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_STDIO_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_STDIO_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # C library stdio function tests # This option specifies the set of tests for the C library # stdio functions. # cdl_option CYGPKG_LIBC_STDIO_TESTS { # Calculated value: "tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput" # Flavor: data # Current_value: tests/sprintf1 tests/sprintf2 tests/sscanf tests/stdiooutput }; # < # Enable use of FILEIO package for IO operations. # cdl_option CYGPKG_LIBC_STDIO_FILEIO { # This option is not active # ActiveIf constraint: CYGPKG_IO_FILEIO # CYGPKG_IO_FILEIO (unknown) == 0 # --> 0 # Calculated value: 1 # Flavor: bool # Current value: 1 # Requires: CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO # CYGSEM_LIBC_STDIO_WANT_BUFFERED_IO == 1 # --> 1 }; # < # ISO C library general utility functions # doc: redirect/the-iso-standard-c-and-math-libraries.html # This package provides general utility functions in # as specified by the ISO C standard - ISO/IEC 9899:1990. # cdl_package CYGPKG_LIBC_STDLIB { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGINT_ISO_CTYPE # CYGINT_ISO_CTYPE == 1 # --> 1 }; # > # Inline versions of functions # This option chooses whether some of the # particularly simple standard utility functions # from are available as inline # functions. This may improve performance, and as # the functions are small, may even improve code # size. # cdl_component CYGIMP_LIBC_STDLIB_INLINES { # There is no associated value. }; # > # abs() / labs() # cdl_option CYGIMP_LIBC_STDLIB_INLINE_ABS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGBLD_ISO_STDLIB_ABS_HEADER == "" # CYGBLD_ISO_STDLIB_ABS_HEADER == # --> 1 }; # div() / ldiv() # cdl_option CYGIMP_LIBC_STDLIB_INLINE_DIV { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGBLD_ISO_STDLIB_DIV_HEADER == "" # CYGBLD_ISO_STDLIB_DIV_HEADER == # --> 1 }; # atof() / atoi() / atol() # cdl_option CYGIMP_LIBC_STDLIB_INLINE_ATOX { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGBLD_ISO_STDLIB_STRCONV_HEADER == "" # CYGBLD_ISO_STDLIB_STRCONV_HEADER == # --> 1 }; # < # Random number generation # These options control the behaviour of the # functions rand(), srand() and rand_r() # cdl_component CYGPKG_LIBC_RAND { # There is no associated value. }; # > # Per-thread random seed # This option controls whether the pseudo-random # number generation functions rand() and srand() # have their state recorded on a per-thread # basis rather than global. If this option is # disabled, some per-thread space can be saved. # Note there is also a POSIX-standard rand_r() # function to achieve a similar effect with user # support. Enabling this option will use one slot # of kernel per-thread data. You should ensure you # have enough slots configured for all your # per-thread data. # cdl_option CYGSEM_LIBC_PER_THREAD_RAND { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGVAR_KERNEL_THREADS_DATA # CYGVAR_KERNEL_THREADS_DATA == 1 # --> 1 }; # Random number seed # This selects the initial random number seed for # rand()'s pseudo-random number generator. For # strict ISO standard compliance, this should be 1, # as per section 7.10.2.2 of the standard. # cdl_option CYGNUM_LIBC_RAND_SEED { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Legal values: 0 to 0x7fffffff }; # Tracing level # Trace verbosity level for debugging the rand(), # srand() and rand_r() functions. Increase this # value to get additional trace output. # cdl_option CYGNUM_LIBC_RAND_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # Simplest implementation # This provides a very simple implementation of rand() # that does not perform well with randomness in the # lower significant bits. However it is exceptionally # fast. It uses the sample algorithm from the ISO C # standard itself. # cdl_option CYGIMP_LIBC_RAND_SIMPLEST { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Simple implementation #1 # This provides a very simple implementation of rand() # based on the simplest implementation above. However # it does try to work around the lack of randomness # in the lower significant bits, at the expense of a # little speed. # cdl_option CYGIMP_LIBC_RAND_SIMPLE1 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Knuth implementation #1 # This implements a slightly more complex algorithm # published in Donald E. Knuth's Art of Computer # Programming Vol.2 section 3.6 (p.185 in the 3rd ed.). # This produces better random numbers than the # simplest approach but is slower. # cdl_option CYGIMP_LIBC_RAND_KNUTH1 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # < # Provides strtod() # This option allows use of the utility function # strtod() (and consequently atof()) to convert # from string to double precision floating point # numbers. Disabling this option removes the # dependency on the math library package. # cdl_option CYGFUN_LIBC_strtod { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 != CYGPKG_LIBM # CYGPKG_LIBM == current # --> 1 # Requires: CYGPKG_LIBM # CYGPKG_LIBM == current # --> 1 }; # bsearch() tracing level # Trace verbosity level for debugging the # binary search function bsearch(). Increase this # value to get additional trace output. # cdl_option CYGNUM_LIBC_BSEARCH_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # qsort() tracing level # Trace verbosity level for debugging the # quicksort function qsort(). Increase this value # to get additional trace output. # cdl_option CYGNUM_LIBC_QSORT_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # C library stdlib build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_STDLIB_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building this package. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building this package. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_STDLIB_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # C library stdlib tests # This option specifies the set of tests for this package. # cdl_option CYGPKG_LIBC_STDLIB_TESTS { # 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" # Flavor: data # 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 }; # < # < # ISO C library string functions # doc: redirect/the-iso-standard-c-and-math-libraries.html # This package provides string functions specified by the # ISO C standard - ISO/IEC 9899:1990. # cdl_package CYGPKG_LIBC_STRING { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == "" # CYGBLD_ISO_STRING_LOCALE_FUNCS_HEADER == # --> 1 # Requires: CYGBLD_ISO_STRING_MEMFUNCS_HEADER == "" # CYGBLD_ISO_STRING_MEMFUNCS_HEADER == # --> 1 # Requires: CYGBLD_ISO_STRING_STRFUNCS_HEADER == "" # CYGBLD_ISO_STRING_STRFUNCS_HEADER == # --> 1 # Requires: CYGBLD_ISO_STRTOK_R_HEADER == "" # CYGBLD_ISO_STRTOK_R_HEADER == # --> 1 # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 }; # > # Inline versions of functions # This option chooses whether some of the # particularly simple string functions from # are available as inline # functions. This may improve performance, and as # the functions are small, may even improve code # size. # cdl_option CYGIMP_LIBC_STRING_INLINES { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Optimize string functions for code size # This option tries to reduce string function # code size at the expense of execution speed. The # same effect can be produced if the code is # compiled with the -Os option to the compiler. # cdl_option CYGIMP_LIBC_STRING_PREFER_SMALL_TO_FAST { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # strtok # These options control the behaviour of the # strtok() and strtok_r() string tokenization # functions. # cdl_component CYGPKG_LIBC_STRING_STRTOK { # There is no associated value. }; # > # Per-thread strtok() # This option controls whether the string function # strtok() has its state recorded on a per-thread # basis rather than global. If this option is # disabled, some per-thread space can be saved. # Note there is also a POSIX-standard strtok_r() # function to achieve a similar effect with user # support. Enabling this option will use one slot # of kernel per-thread data. You should ensure you # have enough slots configured for all your # per-thread data. # cdl_option CYGSEM_LIBC_STRING_PER_THREAD_STRTOK { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGVAR_KERNEL_THREADS_DATA # CYGVAR_KERNEL_THREADS_DATA == 1 # --> 1 }; # Tracing level # Trace verbosity level for debugging the # functions strtok() and strtok_r(). Increase this # value to get additional trace output. # cdl_option CYGNUM_LIBC_STRING_STRTOK_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # < # C library string functions build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_STRING_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_STRING_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_STRING_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # C library string function tests # This option specifies the set of tests for the C library # string functions. # cdl_option CYGPKG_LIBC_STRING_TESTS { # 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" # Flavor: data # 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 }; # < # < # ISO C library date and time functions # doc: redirect/the-iso-standard-c-and-math-libraries.html # This package provides time functions specified by the # ISO C standard - ISO/IEC 9899:1990. # cdl_package CYGPKG_LIBC_TIME { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGBLD_ISO_C_TIME_TYPES_HEADER == "" # CYGBLD_ISO_C_TIME_TYPES_HEADER == # --> 1 # Requires: CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == "" # CYGBLD_ISO_C_CLOCK_FUNCS_HEADER == # --> 1 # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGINT_ISO_DIV # CYGINT_ISO_DIV == 1 # --> 1 # Requires: CYGINT_ISO_ABS # CYGINT_ISO_ABS == 1 # --> 1 # The following properties are affected by this value # package CYGPKG_NET # Requires: CYGPKG_LIBC_TIME }; # > # Working clock() function # This option controls whether clock() will # actually try and determine the process time # usage. With this option disabled, clock() does # not disappear, but will permanently return # (clock_t)-1 as mandated by the ISO C standard. # cdl_option CYGSEM_LIBC_TIME_CLOCK_WORKING { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGFUN_KERNEL_THREADS_TIMER # CYGFUN_KERNEL_THREADS_TIMER == 1 # --> 1 # Requires: CYGVAR_KERNEL_COUNTERS_CLOCK # CYGVAR_KERNEL_COUNTERS_CLOCK == 1 # --> 1 }; # Working time() function # This option controls whether time() will # actually try and determine the current calendar # time. With this option disabled, time() does # not disappear, but will permanently return # (time_t)-1 as mandated by the ISO C standard. # cdl_option CYGSEM_LIBC_TIME_TIME_WORKING { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGPKG_IO_WALLCLOCK # CYGPKG_IO_WALLCLOCK == current # --> 1 }; # Working cyg_libc_time_settime() function # This option controls whether cyg_libc_time_settime() # will actually try and set the current calendar # time. With this option disabled, # cyg_libc_time_settime() does not disappear, but # will permanently return an error. # cdl_option CYGSEM_LIBC_TIME_SETTIME_WORKING { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGPKG_IO_WALLCLOCK # CYGPKG_IO_WALLCLOCK == current # --> 1 }; # POSIX time functions # Enabling this option allows the use of the # following functions defined in POSIX 1003.1: # asctime_r(), ctime_r(), gmtime_r(), and # localtime_r(). # cdl_option CYGFUN_LIBC_TIME_POSIX { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE # Requires: CYGFUN_LIBC_TIME_POSIX # option CYGIMP_LIBC_TIME_CTIME_R_INLINE # Requires: CYGFUN_LIBC_TIME_POSIX # option CYGIMP_LIBC_TIME_GMTIME_R_INLINE # Requires: CYGFUN_LIBC_TIME_POSIX # option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE # Requires: CYGFUN_LIBC_TIME_POSIX }; # Time zone offsets # These options control the default STandarD (STD) # and Daylight Savings Time (DST) # time offsets so that dates can be set correctly # for the local environment. # cdl_component CYGPKG_LIBC_TIME_ZONES { # There is no associated value. }; # > # Default Daylight Savings Time state # This option controls whether the initial # time environment is set up as STD, DST or # unknown. Use the value 1 for DST, 0 for STD, # and (-1) for unknown. This can also be set at # runtime using the cyg_libc_time_setdst() # function. # cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_STATE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value -1 # value_source default # Default value: -1 # Legal values: -1 to 1 }; # Default Standard Time offset # This option controls the offset from UTC in # seconds when in local Standard Time. This # value can be positive or negative. It # can also be set at run time using the # cyg_libc_time_setzoneoffsets() function. # cdl_option CYGNUM_LIBC_TIME_STD_DEFAULT_OFFSET { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: -90000 to 90000 }; # Default Daylight Savings Time offset # This option controls the offset from UTC in # seconds when in local Daylight Savings Time. This # value can be positive or negative. It # can also be set at run time using the # cyg_libc_time_setzoneoffsets() function. # cdl_option CYGNUM_LIBC_TIME_DST_DEFAULT_OFFSET { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 3600 # value_source default # Default value: 3600 # Legal values: -90000 to 90000 }; # < # Inline functions # These options control whether certain functions # are available in inline form. This may lead to # faster code at the expense of code space. But for # some functions, or some functions with constant # arguments, it may in fact lead to smaller code. # cdl_component CYGPKG_LIBC_TIME_INLINES { # There is no associated value. }; # > # asctime() # Allow the asctime() function to be inlined # cdl_option CYGIMP_LIBC_TIME_ASCTIME_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # ctime() # Allow the ctime() function to be inlined # cdl_option CYGIMP_LIBC_TIME_CTIME_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # difftime() # Allow the difftime() function to be inlined # cdl_option CYGIMP_LIBC_TIME_DIFFTIME_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # gmtime() # Allow the gmtime() function to be inlined # cdl_option CYGIMP_LIBC_TIME_GMTIME_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # localtime() # Allow the localtime() function to be inlined # cdl_option CYGIMP_LIBC_TIME_LOCALTIME_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # mktime() # Allow the mktime() function to be inlined # cdl_option CYGIMP_LIBC_TIME_MKTIME_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # asctime_r() # Allow the asctime_r() function to be inlined # cdl_option CYGIMP_LIBC_TIME_ASCTIME_R_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGFUN_LIBC_TIME_POSIX # CYGFUN_LIBC_TIME_POSIX == 1 # --> 1 }; # ctime_r() # Allow the ctime_r() function to be inlined # cdl_option CYGIMP_LIBC_TIME_CTIME_R_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGFUN_LIBC_TIME_POSIX # CYGFUN_LIBC_TIME_POSIX == 1 # --> 1 }; # gmtime_r() # Allow the gmtime_r() function to be inlined # cdl_option CYGIMP_LIBC_TIME_GMTIME_R_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGFUN_LIBC_TIME_POSIX # CYGFUN_LIBC_TIME_POSIX == 1 # --> 1 }; # localtime_r() # Allow the localtime_r() function to be inlined # cdl_option CYGIMP_LIBC_TIME_LOCALTIME_R_INLINE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGFUN_LIBC_TIME_POSIX # CYGFUN_LIBC_TIME_POSIX == 1 # --> 1 }; # < # clock() tracing level # Trace verbosity level for debugging the clock() # function. Increase this value to get # additional trace output when tracing is enabled. # cdl_option CYGNUM_LIBC_TIME_CLOCK_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # C library time functions build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBC_TIME_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBC_TIME_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the C library. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBC_TIME_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # C library time and date function tests # This option specifies the set of tests for the C library # time and date functions. # cdl_option CYGPKG_LIBC_TIME_TESTS { # Calculated value: "tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time" # Flavor: data # Current_value: tests/asctime tests/clock tests/ctime tests/gmtime tests/localtime tests/mktime tests/strftime tests/time }; # < # < # < # Math library # doc: redirect/the-iso-standard-c-and-math-libraries.html # ISO standard floating point mathematical library # containing many useful functions for mathematical # calculations. # cdl_package CYGPKG_LIBM { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT # Requires: CYGPKG_LIBM # option CYGSEM_LIBC_STDIO_PRINTF_FLOATING_POINT # DefaultValue: 0 != CYGPKG_LIBM # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT # Requires: CYGPKG_LIBM # option CYGSEM_LIBC_STDIO_SCANF_FLOATING_POINT # DefaultValue: 0 != CYGPKG_LIBM && # 0 != CYGINT_ISO_STDLIB_STRCONV_FLOAT # option CYGFUN_LIBC_strtod # Requires: CYGPKG_LIBM # option CYGFUN_LIBC_strtod # DefaultValue: 0 != CYGPKG_LIBM }; # > # Compatibility mode # These options deal with behaviour related to # the various compatibility modes - POSIX, IEEE, # X/OPEN and SVID. # cdl_component CYGPKG_LIBM_COMPATIBILITY { # There is no associated value. }; # > # cdl_interface CYGINT_LIBM_COMPAT { # Implemented by CYGSEM_LIBM_COMPAT_IEEE_ONLY, active, disabled # Implemented by CYGNUM_LIBM_COMPATIBILITY, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 == CYGINT_LIBM_COMPAT # CYGINT_LIBM_COMPAT == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_LIBM_COMPAT # Requires: 1 == CYGINT_LIBM_COMPAT }; # IEEE-only # The math library can be hard-coded to only # behave in one compatibility mode - IEEE. This # cannot be changed at run-time. IEEE mode is the # most minimal of the compatibility modes, and so # this will best help code size and speed, as well # as omitting the code for other compatibility # modes. If not defined, the math library can be # set at run-time to any of the supported # compatibility modes. # cdl_option CYGSEM_LIBM_COMPAT_IEEE_ONLY { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # The following properties are affected by this value # option CYGSEM_LIBM_USE_STDERR # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY # option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY }; # Default mode # If you want to have support for more than one # compatibility mode settable at run-time, rather # than hard-coded IEEE mode, this component lets # you choose which mode should be the default. # cdl_component CYGNUM_LIBM_COMPATIBILITY { # Flavor: booldata # No user value, uncomment the following line to provide one. # user_value 1 POSIX # value_source default # Default value: 1 POSIX # Legal values: "POSIX" "IEEE" "XOPEN" "SVID" # Requires: CYGPKG_LIBC # CYGPKG_LIBC == current # --> 1 # The following properties are affected by this value # option CYGNUM_LIBM_COMPAT_DEFAULT # 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" : "" # option CYGNUM_LIBM_COMPAT_DEFAULT # 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" : "" # option CYGNUM_LIBM_COMPAT_DEFAULT # 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" : "" # option CYGNUM_LIBM_COMPAT_DEFAULT # 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" : "" }; # > # Numeric representation # This option automatically defines the default compatibility # mode for numeric representation in terms of the values used # to set that mode at run-time. # cdl_option CYGNUM_LIBM_COMPAT_DEFAULT { # 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" : "" # CYGNUM_LIBM_COMPATIBILITY == POSIX # CYGNUM_LIBM_COMPATIBILITY == POSIX # CYGNUM_LIBM_COMPATIBILITY == POSIX # CYGNUM_LIBM_COMPATIBILITY == POSIX # Flavor: data # Current_value: CYGNUM_LIBM_COMPAT_POSIX }; # < # SVID3-style scalb() # SVID3 defined the scalb() function as double # scalb(double, double) rather than double # scalb(double, int) which is used by IBM, DEC, and # probably others. Enabling this option chooses # the (double, double) version. Note there is a # function double scalbn(double, int) which is # unaffected by this choice. # cdl_option CYGFUN_LIBM_SVID3_scalb { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Reduce namespace pollution # If you do not want to use either the X/Open or # SVID3 compatibility modes, you may want to define # this option to reduce the chance of namespace # pollution. This is particularly likely to occur # here as these standards define symbols with # names that often appear in applications, such as # exception, DOMAIN, OVERFLOW, etc. If your # application also used these names, it may cause # problems. # cdl_option CYGSYM_LIBM_NO_XOPEN_SVID_NAMESPACE_POLLUTION { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Output to stderr for math errors # The SVID3 standard says that error # messages should be output on the stderr console # output stream. This option allows this ability # to be explicitly controlled. However, this still # only has an effect in SVID3 compatibility mode. # cdl_option CYGSEM_LIBM_USE_STDERR { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY # CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0 # --> 1 # Requires: CYGPKG_LIBC_STDIO # CYGPKG_LIBC_STDIO == current # --> 1 }; # < # Thread safety # This option controls whether the C library has # support for thread safe operation in general. # This requires eCos kernel support for per-thread # data, and adjustment of the stack limit. # cdl_component CYGPKG_LIBM_THREAD_SAFETY { # There is no associated value. }; # > # Compatibility mode setting # This option makes the setting of the compatiblity # mode be a per-thread property. This directly # implies that it also becomes thread-safe. # cdl_option CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: !CYGSEM_LIBM_COMPAT_IEEE_ONLY # CYGSEM_LIBM_COMPAT_IEEE_ONLY == 0 # --> 1 # Requires: CYGVAR_KERNEL_THREADS_DATA # CYGVAR_KERNEL_THREADS_DATA == 1 # --> 1 # The following properties are affected by this value # option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL # Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE }; # < # Tracing output levels in math library # Tracing support is useful for debugging. Some # Math library modules can be configured with # different levels of tracing verbosity. These # levels can be configured here. # cdl_component CYGPKG_LIBM_TRACE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Requires: CYGDBG_USE_TRACING # CYGDBG_USE_TRACING == 0 # --> 0 }; # > # Compatibility mode get/set # Trace level for debugging the getting and # setting of the compatibility mode when it is # configured to be thread-safe. # cdl_option CYGNUM_LIBM_COMPATMODE_TRACE_LEVEL { # This option is not active # The parent CYGPKG_LIBM_TRACE is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 # Requires: CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE # CYGSEM_LIBM_THREAD_SAFE_COMPAT_MODE == 0 # --> 0 }; # < # Math library build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_LIBM_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the math library. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_LIBM_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value -ffloat-store # value_source default # Default value: 0 == CYGPKG_HAL_I386 ? "" : "-ffloat-store" # CYGPKG_HAL_I386 == current # --> -ffloat-store }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the math library. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_LIBM_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Math library tests # This option specifies the set of tests for the math library. # cdl_option CYGPKG_LIBM_TESTS { # 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" # Flavor: data # 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 }; # < # < # Wallclock device # The wallclock device provides real time stamps, as opposed # to the eCos kernel timers which typically just count the # number of clock ticks since the hardware was powered up. # Depending on the target platform this device may involve # interacting with a suitable clock chip, or it may be # emulated by using the kernel timers. # cdl_package CYGPKG_IO_WALLCLOCK { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # The following properties are affected by this value # option CYGSEM_LIBC_TIME_TIME_WORKING # Requires: CYGPKG_IO_WALLCLOCK # option CYGSEM_LIBC_TIME_SETTIME_WORKING # Requires: CYGPKG_IO_WALLCLOCK }; # > # Number of wallclock hardware implementations # cdl_interface CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # option CYGPKG_WALLCLOCK_EMULATE # DefaultValue: 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS # option CYGIMP_WALLCLOCK_NONE # DefaultValue: !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS }; # Number of wallclock implementations # cdl_interface CYGINT_WALLCLOCK_IMPLEMENTATIONS { # Implemented by CYGPKG_WALLCLOCK_EMULATE, active, enabled # Implemented by CYGIMP_WALLCLOCK_NONE, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS # CYGINT_WALLCLOCK_IMPLEMENTATIONS == 1 # --> 1 # The following properties are affected by this value # interface CYGINT_WALLCLOCK_IMPLEMENTATIONS # Requires: 1 == CYGINT_WALLCLOCK_IMPLEMENTATIONS }; # Wallclock driver supports set/get mode # cdl_interface CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED { # No options implement this inferface # This value cannot be modified here. # Flavor: data # Current_value: 0 # The following properties are affected by this value # option CYGSEM_WALLCLOCK_MODE # DefaultValue: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ? "set_get" : "init_get" # option CYGSEM_WALLCLOCK_MODE # Requires: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED || CYGSEM_WALLCLOCK_MODE == "init_get" }; # Wallclock mode # The wallclock driver can be used in one of two # modes. Set/get mode allows time to be kept during power # off (assuming there's a battery backed clock). Init/get # mode is slightly smaller and can be used when there is no # battery backed clock - in this mode time 0 is the time of # the board power up. # cdl_option CYGSEM_WALLCLOCK_MODE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value init_get # value_source default # Default value: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED ? "set_get" : "init_get" # CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0 # --> init_get # Legal values: "init_get" "set_get" # Requires: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED || CYGSEM_WALLCLOCK_MODE == "init_get" # CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED == 0 # CYGSEM_WALLCLOCK_MODE == init_get # --> 1 # The following properties are affected by this value # option CYGSEM_WALLCLOCK_MODE # Requires: CYGINT_WALLCLOCK_SET_GET_MODE_SUPPORTED || CYGSEM_WALLCLOCK_MODE == "init_get" # option CYGSEM_WALLCLOCK_SET_GET_MODE # Calculated: CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0 }; # Wallclock set/get mode # cdl_option CYGSEM_WALLCLOCK_SET_GET_MODE { # Calculated value: CYGSEM_WALLCLOCK_MODE == "set_get" ? 1 : 0 # CYGSEM_WALLCLOCK_MODE == init_get # Flavor: bool # Current value: 0 }; # Wallclock implementation # Implementations of the wallclock device. # cdl_component CYGPKG_IO_WALLCLOCK_IMPLEMENTATION { # There is no associated value. }; # > # Wallclock emulator # When this option is enabled, a wallclock device will be # emulated using the kernel real-time clock. # cdl_option CYGPKG_WALLCLOCK_EMULATE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS # CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0 # --> 1 # Requires: CYGPKG_KERNEL # CYGPKG_KERNEL == current # --> 1 }; # No wallclock # Disables the wallclock. # cdl_option CYGIMP_WALLCLOCK_NONE { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: !CYGPKG_KERNEL && 0 == CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS # CYGPKG_KERNEL == current # CYGINT_WALLCLOCK_HW_IMPLEMENTATIONS == 0 # --> 0 }; # < # Wallclock build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_IO_WALLCLOCK_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the wallclock device. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the wallclock device. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_IO_WALLCLOCK_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Wallclock tests # This option specifies the set of tests for the # wallclock device. # cdl_option CYGPKG_IO_WALLCLOCK_TESTS { # Calculated value: CYGPKG_KERNEL ? "tests/wallclock tests/wallclock2" : "" # CYGPKG_KERNEL == current # Flavor: data # Current_value: tests/wallclock tests/wallclock2 }; # < # < # Common error code support # This package contains the common list of error and # status codes. It is held centrally to allow # packages to interchange error codes and status # codes in a common way, rather than each package # having its own conventions for error/status # reporting. The error codes are modelled on the # POSIX style naming e.g. EINVAL etc. This package # also provides the standard strerror() function to # convert error codes to textual representation, as # well as an implementation of the errno idiom. # cdl_package CYGPKG_ERROR { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGBLD_ISO_ERRNO_CODES_HEADER == "" # CYGBLD_ISO_ERRNO_CODES_HEADER == # --> 1 # The following properties are affected by this value # package CYGPKG_IO # Requires: CYGPKG_ERROR # package CYGPKG_IO_SERIAL # Requires: CYGPKG_ERROR # package CYGPKG_IO_SERIAL_I386_PC # Requires: CYGPKG_ERROR # package CYGPKG_NET # Requires: CYGPKG_ERROR }; # > # errno variable # This package controls the behaviour of the # errno variable (or more strictly, expression) # from . # cdl_component CYGPKG_ERROR_ERRNO { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGBLD_ISO_ERRNO_HEADER == "" # CYGBLD_ISO_ERRNO_HEADER == # --> 1 }; # > # Per-thread errno # This option controls whether the standard error # code reporting variable errno is a per-thread # variable, rather than global. # cdl_option CYGSEM_ERROR_PER_THREAD_ERRNO { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGVAR_KERNEL_THREADS_DATA # CYGVAR_KERNEL_THREADS_DATA == 1 # --> 1 }; # Tracing level # Trace verbosity level for debugging the errno # retrieval mechanism in errno.cxx. Increase this # value to get additional trace output. # cdl_option CYGNUM_ERROR_ERRNO_TRACE_LEVEL { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # Legal values: 0 to 1 }; # < # strerror function # This package controls the presence and behaviour of the # strerror() function from # cdl_option CYGPKG_ERROR_STRERROR { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: CYGBLD_ISO_STRERROR_HEADER == "" # CYGBLD_ISO_STRERROR_HEADER == # --> 1 }; # Error package build options # Package specific build options including control over # compiler flags used only in building this package, # and details of which tests are built. # cdl_component CYGPKG_ERROR_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the error package. These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_ERROR_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the error package. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_ERROR_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # < # < # Networking # doc: doc/index.html # Basic networking support, including TCP/IP. # cdl_package CYGPKG_NET { # Packages cannot be added or removed, nor can their version be changed, # simply by editing their value. Instead the appropriate configuration # should be used to perform these actions. # This value cannot be modified here. # Flavor: booldata # Current value: 1 current # Requires: CYGPKG_IO # CYGPKG_IO == current # --> 1 # Requires: CYGPKG_ISOINFRA # CYGPKG_ISOINFRA == current # --> 1 # Requires: CYGPKG_LIBC_TIME # CYGPKG_LIBC_TIME == current # --> 1 # Requires: CYGPKG_ERROR # CYGPKG_ERROR == current # --> 1 # Requires: CYGPKG_MEMALLOC # CYGPKG_MEMALLOC == current # --> 1 # Requires: CYGBLD_ISO_BSDTYPES_HEADER == "" # CYGBLD_ISO_BSDTYPES_HEADER == # --> 1 # The following properties are affected by this value # component CYGPKG_IO_ETH_DRIVERS_NET # ActiveIf: CYGPKG_NET # component CYGPKG_IO_ETH_DRIVERS_STAND_ALONE # ActiveIf: !CYGPKG_NET }; # > # Implement the socket API locally # This option controls support for the network-stack supplied # API. # cdl_option CYGPKG_NET_API_LOCAL { # ActiveIf constraint: !CYGPKG_IO_FILEIO # CYGPKG_IO_FILEIO (unknown) == 0 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Implement the socket API via Fileio package # This option controls support for the fileio subsystem supplied API. # cdl_option CYGPKG_NET_API_FILEIO { # This option is not active # ActiveIf constraint: CYGPKG_IO_FILEIO # CYGPKG_IO_FILEIO (unknown) == 0 # --> 0 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # INET support # This option enables support for INET (IP) network processing. # cdl_component CYGPKG_NET_INET { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # IPv6 support # This option enables support for new IPv6. # cdl_option CYGPKG_NET_INET6 { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Routing support # This option enables support for packet routing. # cdl_option CYGPKG_NET_ROUTING { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # < # TFTP (RFC-1350) support # This option provides additional library support for # the TFTP (Trivial File Transfer Protocol). # cdl_component CYGPKG_NET_TFTP { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Priority level for TFTP daemon thread. # This option allows the thread priority level used by the # TFTP server thread to be adjusted by the user. It should be set # high enough that sufficient CPU resources are available to # process network data, but may be adjusted so that application # threads can have precedence over TFTP server processing. # cdl_option CYGPKG_NET_TFTPD_THREAD_PRIORITY { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 10 # value_source default # Default value: 10 }; # File I/O functions for TFTP server # Minimal in-memory file I/O support for TFTP server. # cdl_option CYGPKG_NET_TFTP_FILE_ACCESS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Use full DHCP instead of BOOTP # Provide DHCP for initializing the IP address # of network interfaces. The DHCP client is capable of falling # back to BOOTP usage if the server does not support DHCP, so it # should never be necessary to disable this option. However, # depending on other configuration the DHCP client may provide or # require a kernel thread of its own; this consumes quite a lot # of resource which a BOOTP solution does not require. # cdl_component CYGPKG_NET_DHCP { # ActiveIf constraint: (CYGHWR_NET_DRIVERS > 0) # CYGHWR_NET_DRIVERS == 2 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGHWR_NET_DRIVER_ETH0_DHCP # ActiveIf: CYGPKG_NET_DHCP # option CYGHWR_NET_DRIVER_ETH1_DHCP # ActiveIf: CYGPKG_NET_DHCP }; # > # DHCP management thread # Provide a separate thread to renew DHCP leases; otherwise # the application MUST periodically examine the semaphore # dhcp_needs_attention and call dhcp_bind() if it is # signalled. If enabled, this thread does all that for you. # Independent of this option, initialization of the # interfaces still occurs in init_all_network_interfaces() # and your startup code must call that. It will start the # DHCP management thread if necessary. If a lease fails to # be renewed, the management thread will shut down all # interfaces and attempt to initialize all the interfaces # again from scratch. This may cause application problems, # in which case managing the DHCP state in an application # aware thread is recommended. See comments in dhcp.h # cdl_option CYGOPT_NET_DHCP_DHCP_THREAD { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # The following properties are affected by this value # option CYGOPT_NET_DHCP_DHCP_THREAD_PARAM # ActiveIf: CYGOPT_NET_DHCP_DHCP_THREAD # option CYGPKG_NET_DHCP_THREAD_PRIORITY # ActiveIf: CYGOPT_NET_DHCP_DHCP_THREAD }; # DHCP management thread loops forever # If the parameter is nonzero, it loops forever; if zero, # the thread exits if a lease expires, and the application # must detect this and tidy up or reboot the whole machine. # cdl_option CYGOPT_NET_DHCP_DHCP_THREAD_PARAM { # ActiveIf constraint: CYGOPT_NET_DHCP_DHCP_THREAD # CYGOPT_NET_DHCP_DHCP_THREAD == 1 # --> 1 # Flavor: data # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # DHCP management thread priority # This option sets the thread priority level used by the DHCP # management thread. It should be high enough that it can run # when necessary, but it does not need to be as high as the # network thread itself. # cdl_option CYGPKG_NET_DHCP_THREAD_PRIORITY { # ActiveIf constraint: CYGOPT_NET_DHCP_DHCP_THREAD # CYGOPT_NET_DHCP_DHCP_THREAD == 1 # --> 1 # Flavor: data # No user value, uncomment the following line to provide one. # user_value 8 # value_source default # Default value: CYGPKG_NET_THREAD_PRIORITY + 1 # CYGPKG_NET_THREAD_PRIORITY == 7 # --> 8 }; # < # Support BSD 'sysctl()' function # This option includes support for the 'sysctl()' functions. # cdl_option CYGPKG_NET_SYSCTL { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Priority level for backgound network processing. # This option allows the thread priority level used by the # networking stack to be adjusted by the user. It should be set # high enough that sufficient CPU resources are available to # process network data, but may be adjusted so that application # threads can have precedence over network processing. # cdl_option CYGPKG_NET_THREAD_PRIORITY { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 7 # value_source default # Default value: 7 # The following properties are affected by this value # option CYGPKG_NET_DHCP_THREAD_PRIORITY # DefaultValue: CYGPKG_NET_THREAD_PRIORITY + 1 # option CYGPKG_NET_FAST_THREAD_PRIORITY # DefaultValue: CYGPKG_NET_THREAD_PRIORITY - 1 }; # Priority level for fast network processing. # This option sets the thread priority level used by the fast # network thread. The fast network thread runs often but briefly, to # service network device interrupts and network timeout events. This # thread should have higher priority than the background network # thread. It is reasonable to set this thread's priority higher than # application threads for best network throughput, or to set it lower # than application threads for best latency for those application # threads themselves, potentially at a cost to network throughput. # cdl_option CYGPKG_NET_FAST_THREAD_PRIORITY { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 6 # value_source default # Default value: CYGPKG_NET_THREAD_PRIORITY - 1 # CYGPKG_NET_THREAD_PRIORITY == 7 # --> 6 }; # Number of BPF filters # This option controls the number of active BPF filters. # cdl_option CYGPKG_NET_NBPF { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Number of bridge buffers? # This option controls the number of bridge buffers and indeed # whether bridging code is enabled at all via 'standard' # symbol NBRIDGE. # cdl_option CYGPKG_NET_NBRIDGE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Number of GIF things # This option controls the number of active GIF things. # cdl_option CYGPKG_NET_NGIF { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Number of loopback interfaces # This option controls the number of loopback, i.e. local, interfaces. # There is seldom need for this value to be anything other than one. # If a different value is required, then the C library STDIO package # is required for sprintf(). # cdl_option CYGPKG_NET_NLOOP { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 # Requires: (CYGPKG_NET_NLOOP > 1) ? CYGPKG_LIBC_STDIO : 1 # CYGPKG_NET_NLOOP == 1 # CYGPKG_LIBC_STDIO == current # --> 1 # The following properties are affected by this value # option CYGPKG_NET_NLOOP # Requires: (CYGPKG_NET_NLOOP > 1) ? CYGPKG_LIBC_STDIO : 1 }; # Memory designated for networking buffers. # This option controls the amount of memory pre-allocated # for buffers used by the networking code. # cdl_option CYGPKG_NET_MEM_USAGE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 262144 # value_source default # Default value: 262144 }; # Number of supported pending network events # This option controls the number of pending network events # used by the networking code. # cdl_option CYGPKG_NET_NUM_WAKEUP_EVENTS { # Flavor: data # No user value, uncomment the following line to provide one. # user_value 8 # value_source default # Default value: 8 }; # Networking support build options # cdl_component CYGPKG_NET_OPTIONS { # There is no associated value. }; # > # Additional compiler flags # This option modifies the set of compiler flags for # building the networking package. # These flags are used in addition # to the set of global flags. # cdl_option CYGPKG_NET_CFLAGS_ADD { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "-D_KERNEL -D__ECOS" # value_source default # Default value: "-D_KERNEL -D__ECOS" }; # Suppressed compiler flags # This option modifies the set of compiler flags for # building the networking package. These flags are removed from # the set of global flags if present. # cdl_option CYGPKG_NET_CFLAGS_REMOVE { # Flavor: data # No user value, uncomment the following line to provide one. # user_value "" # value_source default # Default value: "" }; # < # Build networking tests (demo programs) # This option enables the building of additional network tests # which at this time are just demos; otherwise only loopback # interface tests will be built. # cdl_component CYGPKG_NET_BUILD_TESTS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 # The following properties are affected by this value # option CYGPKG_NET_TESTS # Calculated: CYGPKG_NET_BUILD_TESTS ? "tests/mbuf_test tests/socket_test tests/ftp_test tests/server_test tests/nc_test_master tests/nc_test_slave tests/tftp_client_test tests/tftp_server_test tests/tcp_echo tests/set_mac_address tests/bridge tests/flood tests/ping_test tests/dhcp_test tests/ping_lo_test tests/tcp_lo_test tests/udp_lo_test tests/multi_lo_select tests/tcp_lo_select" # : # "tests/ping_lo_test tests/tcp_lo_test tests/udp_lo_test tests/multi_lo_select tests/tcp_lo_select" # }; # > # Networking tests # This option specifies the set of tests # for the networking package. # cdl_option CYGPKG_NET_TESTS { # This option is not active # The parent CYGPKG_NET_BUILD_TESTS is disabled # Calculated value: CYGPKG_NET_BUILD_TESTS ? "tests/mbuf_test tests/socket_test tests/ftp_test tests/server_test tests/nc_test_master tests/nc_test_slave tests/tftp_client_test tests/tftp_server_test tests/tcp_echo tests/set_mac_address tests/bridge tests/flood tests/ping_test tests/dhcp_test tests/ping_lo_test tests/tcp_lo_test tests/udp_lo_test tests/multi_lo_select tests/tcp_lo_select" # : # "tests/ping_lo_test tests/tcp_lo_test tests/udp_lo_test tests/multi_lo_select tests/tcp_lo_select" # # CYGPKG_NET_BUILD_TESTS == 0 # Flavor: data # Current_value: tests/ping_lo_test tests/tcp_lo_test tests/udp_lo_test tests/multi_lo_select tests/tcp_lo_select }; # Use real-time response test harness (if available) # Platform and/or ethernet device driver packages may # provide a test harness to verify that interrupts are # not disabled or flooded for too long during a test. If # such is provided, CYGTST_DEVS_ETH_TEST_NET_REALTIME is # defined and can be #include'd to acquire the support. # Some tests in the TCP/IP stack can use this harness; # this option controls whether they do. The StrongARM # EBSA285 Ethernet device driver is one package that # provides such a harness. See the file # tests/test_net_realtime.h in there for details. # cdl_option CYGPKG_NET_TESTS_USE_RT_TEST_HARNESS { # This option is not active # The parent CYGPKG_NET_BUILD_TESTS is disabled # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # < # Network drivers # cdl_interface CYGHWR_NET_DRIVERS { # Implemented by CYGPKG_DEVS_ETH_I82559, active, enabled # Implemented by CYGPKG_DEVS_ETH_I82559, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 2 # The following properties are affected by this value # component CYGPKG_NET_DHCP # ActiveIf: (CYGHWR_NET_DRIVERS > 0) }; # Does the hardware provide an 'eth0' device? # cdl_interface CYGHWR_NET_DRIVER_ETH0 { # Implemented by CYGPKG_DEVS_ETH_I82559, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # The following properties are affected by this value # component CYGHWR_NET_DRIVER_ETH0_SETUP_OPTIONS # ActiveIf: (CYGHWR_NET_DRIVER_ETH0 == 1) }; # Initialization options for 'eth0' # cdl_component CYGHWR_NET_DRIVER_ETH0_SETUP_OPTIONS { # ActiveIf constraint: (CYGHWR_NET_DRIVER_ETH0 == 1) # CYGHWR_NET_DRIVER_ETH0 == 1 # --> 1 # There is no associated value. }; # > # Initialization options for 'eth0' # cdl_interface CYGHWR_NET_DRIVER_ETH0_SETUP { # Implemented by CYGHWR_NET_DRIVER_ETH0_MANUAL, active, disabled # Implemented by CYGHWR_NET_DRIVER_ETH0_BOOTP, active, enabled # Implemented by CYGHWR_NET_DRIVER_ETH0_ADDRS, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 == CYGHWR_NET_DRIVER_ETH0_SETUP # CYGHWR_NET_DRIVER_ETH0_SETUP == 1 # --> 1 # The following properties are affected by this value # interface CYGHWR_NET_DRIVER_ETH0_SETUP # Requires: 1 == CYGHWR_NET_DRIVER_ETH0_SETUP }; # Initialize 'eth0' manually? # If this option is selected, the eCos library provides no # initialization code for this interface; you must perform # all the initialization in the application, by means of # appropriate ioctl() calls, or by calling init_net() with an # appropriate bootp record you have constructed yourself. # cdl_component CYGHWR_NET_DRIVER_ETH0_MANUAL { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Use BOOTP/DHCP to initialize 'eth0'? # If this option is selected, init_all_network_interfaces() # will use DHCP or BOOTP to acquire initialization data for # this interface, and then set it up accordingly. # cdl_component CYGHWR_NET_DRIVER_ETH0_BOOTP { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Use DHCP rather than BOOTP for 'eth0'? # cdl_option CYGHWR_NET_DRIVER_ETH0_DHCP { # ActiveIf constraint: CYGPKG_NET_DHCP # CYGPKG_NET_DHCP == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Show BOOTP/DHCP initialization values? # cdl_option CYGHWR_NET_DRIVER_ETH0_BOOTP_SHOW { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Address setups for 'eth0' # These options let you configure all the initialization data # that init_all_network_interfaces() will use # for 'eth0' statically. Be careful when doing this, because # if you run the same application image on multiple boards, # they will have identical IP addresses and so on; this is a # Bad Thing. # The values you set are inserted in a bootp-style record # that is fed into a common setup routine to configure the # interface. That routine does not in fact use the 'Server # IP address' field. # The bootp record is also available to application code, and # some eCos networking test programs use the 'Server IP # address' field to mean 'a machine we can interact with' for # example to ping or perform ftp with. That is the rationale # for its inclusion here. # The gateway address is used to set up a default route if # nonzero. If you have more than one interface, setting up # more than one default route is will cause malfunctions. A # gateway address of 0.0.0.0 can be set to prevent that route # setup. Of course, your application can add real routes # once the interface(s) initialization is complete. # cdl_component CYGHWR_NET_DRIVER_ETH0_ADDRS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # IP address for 'eth0' # cdl_option CYGHWR_NET_DRIVER_ETH0_ADDRS_IP { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH0_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 192.168.1.2 # value_source default # Default value: 192.168.1.2 }; # Network mask address for 'eth0' # cdl_option CYGHWR_NET_DRIVER_ETH0_ADDRS_NETMASK { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH0_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 255.255.255.0 # value_source default # Default value: 255.255.255.0 }; # Broadcast address for 'eth0' # cdl_option CYGHWR_NET_DRIVER_ETH0_ADDRS_BROADCAST { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH0_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 192.168.1.255 # value_source default # Default value: 192.168.1.255 }; # Gateway/router IP address for 'eth0' # cdl_option CYGHWR_NET_DRIVER_ETH0_ADDRS_GATEWAY { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH0_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 192.168.1.1 # value_source default # Default value: 192.168.1.1 }; # Server IP address for 'eth0' # cdl_option CYGHWR_NET_DRIVER_ETH0_ADDRS_SERVER { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH0_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 192.168.1.101 # value_source default # Default value: 192.168.1.101 }; # < # < # Does the hardware provide an 'eth1' device? # cdl_interface CYGHWR_NET_DRIVER_ETH1 { # Implemented by CYGPKG_DEVS_ETH_I82559, active, enabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # The following properties are affected by this value # component CYGHWR_NET_DRIVER_ETH1_SETUP_OPTIONS # ActiveIf: (CYGHWR_NET_DRIVER_ETH1 == 1) }; # Initialization options for 'eth1' # cdl_component CYGHWR_NET_DRIVER_ETH1_SETUP_OPTIONS { # ActiveIf constraint: (CYGHWR_NET_DRIVER_ETH1 == 1) # CYGHWR_NET_DRIVER_ETH1 == 1 # --> 1 # There is no associated value. }; # > # Initialization options for 'eth1' # cdl_interface CYGHWR_NET_DRIVER_ETH1_SETUP { # Implemented by CYGHWR_NET_DRIVER_ETH1_MANUAL, active, disabled # Implemented by CYGHWR_NET_DRIVER_ETH1_BOOTP, active, enabled # Implemented by CYGHWR_NET_DRIVER_ETH1_ADDRS, active, disabled # This value cannot be modified here. # Flavor: data # Current_value: 1 # Requires: 1 == CYGHWR_NET_DRIVER_ETH1_SETUP # CYGHWR_NET_DRIVER_ETH1_SETUP == 1 # --> 1 # The following properties are affected by this value # interface CYGHWR_NET_DRIVER_ETH1_SETUP # Requires: 1 == CYGHWR_NET_DRIVER_ETH1_SETUP }; # Initialize 'eth1' manually? # If this option is selected, the eCos library provides no # initialization code for this interface; you must perform # all the initialization in the application, by means of # appropriate ioctl() calls, or by calling init_net() with an # appropriate bootp record you have constructed yourself. # cdl_component CYGHWR_NET_DRIVER_ETH1_MANUAL { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # Use BOOTP/DHCP to initialize 'eth1'? # If this option is selected, init_all_network_interfaces() # will use DHCP or BOOTP to acquire initialization data for # this interface, and then set it up accordingly. # cdl_component CYGHWR_NET_DRIVER_ETH1_BOOTP { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # > # Use DHCP rather than BOOTP for 'eth1'? # cdl_option CYGHWR_NET_DRIVER_ETH1_DHCP { # ActiveIf constraint: CYGPKG_NET_DHCP # CYGPKG_NET_DHCP == 1 # --> 1 # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # Show BOOTP/DHCP initialization values? # cdl_option CYGHWR_NET_DRIVER_ETH1_BOOTP_SHOW { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 1 # value_source default # Default value: 1 }; # < # Address setups for 'eth1' # These options let you configure all the initialization data # that init_all_network_interfaces() will use # for 'eth1' statically. Be careful when doing this, because # if you run the same application image on multiple boards, # they will have identical IP addresses and so on; this is a # Bad Thing. # The values you set are inserted in a bootp-style record # that is fed into a common setup routine to configure the # interface. That routine does not in fact use the 'Server # IP address' field. # The bootp record is also available to application code, and # some eCos networking test programs use the 'Server IP # address' field to mean 'a machine we can interact with' for # example to ping or perform ftp with. That is the rationale # for its inclusion here. # The gateway address is used to set up a default route if # nonzero. If you have more than one interface, setting up # more than one default route is will cause malfunctions. A # gateway address of 0.0.0.0 can be set to prevent that route # setup. Of course, your application can add real routes # once the interface(s) initialization is complete. # This interface 'eth1' has no route set up in the default # configuration. # cdl_component CYGHWR_NET_DRIVER_ETH1_ADDRS { # Flavor: bool # No user value, uncomment the following line to provide one. # user_value 0 # value_source default # Default value: 0 }; # > # IP address for 'eth1' # cdl_option CYGHWR_NET_DRIVER_ETH1_ADDRS_IP { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH1_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 192.168.1.2 # value_source default # Default value: 192.168.1.2 }; # Network mask address for 'eth1' # cdl_option CYGHWR_NET_DRIVER_ETH1_ADDRS_NETMASK { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH1_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 255.255.255.0 # value_source default # Default value: 255.255.255.0 }; # Broadcast address for 'eth1' # cdl_option CYGHWR_NET_DRIVER_ETH1_ADDRS_BROADCAST { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH1_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 192.168.1.255 # value_source default # Default value: 192.168.1.255 }; # Gateway/router IP address for 'eth1' # cdl_option CYGHWR_NET_DRIVER_ETH1_ADDRS_GATEWAY { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH1_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 0.0.0.0 # value_source default # Default value: 0.0.0.0 }; # Server IP address for 'eth1' # cdl_option CYGHWR_NET_DRIVER_ETH1_ADDRS_SERVER { # This option is not active # The parent CYGHWR_NET_DRIVER_ETH1_ADDRS is disabled # Flavor: data # No user value, uncomment the following line to provide one. # user_value 192.168.1.101 # value_source default # Default value: 192.168.1.101 }; # < # < # < # <