URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
Compare Revisions
- This comparison shows the changes necessary to convert path
/or1k/trunk/ecos-2.0/packages/infra/v2_0/cdl
- from Rev 1254 to Rev 1765
- ↔ Reverse comparison
Rev 1254 → Rev 1765
/infra.cdl
0,0 → 1,312
# ==================================================================== |
# |
# infra.cdl |
# |
# Infrastructure configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): bartv |
# Original data: bartv,hmt |
# Contributors: |
# Date: 1999-06-13 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
cdl_package CYGPKG_INFRA { |
display "Infrastructure" |
include_dir cyg/infra |
description " |
Common types and useful macros. |
Tracing and assertion facilities. |
Package startup options." |
|
compile startup.cxx prestart.cxx pkgstart.cxx userstart.cxx \ |
dummyxxmain.cxx null.cxx simple.cxx fancy.cxx buffer.cxx \ |
diag.cxx tcdiag.cxx memcpy.c memset.c delete.cxx eprintf.c \ |
pure.cxx |
|
|
# ==================================================================== |
# cdl_component CYGPKG_INFRA_TYPES { |
# display "Common Types" |
# flavor none |
# active_if 0 ;# Not yet configurable. |
# description " |
# These types are used throughout the eCos source code. |
# Currently there are no configuration options associated |
# with the Common Types component; they are automatically |
# set up according to the selected HAL." |
# } |
|
# ==================================================================== |
cdl_component CYGPKG_INFRA_DEBUG { |
display "Asserts & Tracing" |
default_value 0 |
description " |
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." |
|
script debug.cdl |
} |
|
# ==================================================================== |
cdl_component CYGPKG_INFRA_STARTUP { |
display "Startup options" |
flavor none |
description " |
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." |
|
script startup.cdl |
} |
|
# ======================================================================== |
# memcpy()/memset() configuration |
cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY { |
display "Smaller slower memcpy()" |
default_value 0 |
description " |
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_MEMSET { |
display "Smaller slower memset()" |
default_value 0 |
description " |
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 CYGFUN_INFRA_EMPTY_DELETE_FUNCTIONS { |
display "Provide empty C++ delete functions" |
default_value 1 |
description " |
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_DUMMY_ABORT { |
display "Provide dummy abort() function" |
requires !CYGINT_ISO_EXIT |
default_value { CYGINT_ISO_EXIT == 0 } |
compile abort.cxx |
description " |
This option controls the inclusion of a dummy abort() function. |
Parts of the C and C++ compiler runtime systems contain references |
to abort(), particulary in the C++ exception handling code. It is |
not possible to eliminate these references, so this dummy function |
in included to satisfy them. It is not expected that this function |
will ever be called, so its current behaviour is to simply loop." |
} |
|
# ======================================================================== |
|
cdl_option CYGFUN_INFRA_DUMMY_STRLEN { |
display "Provide dummy strlen() function" |
requires !CYGINT_ISO_STRING_STRFUNCS |
default_value { CYGINT_ISO_STRING_STRFUNCS == 0 } |
compile strlen.cxx |
description " |
This option controls the inclusion of a dummy strlen() function. |
Parts of the C and C++ compiler runtime systems contain references |
to strlen(), particulary in the C++ exception handling code. It is |
not possible to eliminate these references, so this dummy function |
in included to satisfy them. While it is not expected that this function |
will ever be called, it is functional but uses the simplest, smallest |
algorithm. There is a faster version of strlen() in the C library." |
} |
|
# ======================================================================== |
# Debugging-related miscellania. |
|
define_proc { |
puts $::cdl_header "/***** proc output start *****/" |
puts $::cdl_header "#include <pkgconf/system.h>" |
puts $::cdl_header "/***** proc output end *****/" |
} |
|
|
# ======================================================================== |
# Global compiler option controls |
|
cdl_option CYGBLD_INFRA_CFLAGS_WARNINGS_AS_ERRORS { |
display "Make all compiler warnings show as errors" |
requires { is_substr(CYGBLD_GLOBAL_CFLAGS, " -Werror") } |
default_value 0 |
description " |
Enabling this option will cause all compiler warnings to show |
as errors and bring the library build to a halt. This is used |
to ensure that the code base is warning free, and thus ensure |
that newly introduced warnings stand out and get fixed before |
they show up as weird run-time behavior." |
} |
|
cdl_option CYGBLD_INFRA_CFLAGS_PIPE { |
display "Make compiler and assembler communicate by pipe" |
requires { is_substr(CYGBLD_GLOBAL_CFLAGS, " -pipe") } |
default_value 0 |
description " |
Enabling this option will cause the compiler to feed the |
assembly output the the assembler via a pipe instead of |
via a temporary file. This normally reduces the build |
time." |
} |
|
# ======================================================================== |
# Package compiler options |
|
cdl_component CYGPKG_INFRA_OPTIONS { |
display "Infra build options" |
flavor none |
description " |
Package specific build options including control over |
compiler flags used only in building this package." |
|
|
cdl_option CYGPKG_INFRA_CFLAGS_ADD { |
display "Additional compiler flags" |
flavor data |
no_define |
default_value { "" } |
description " |
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_REMOVE { |
display "Suppressed compiler flags" |
flavor data |
no_define |
default_value { "" } |
description " |
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_LDFLAGS_REMOVE { |
display "Suppressed linker flags" |
flavor data |
no_define |
default_value { "-Wl,--gc-sections" } |
description " |
This option modifies the set of linker flags for |
building the eCos infra package tests. These flags are removed from |
the set of global flags if present." |
} |
|
cdl_option CYGPKG_INFRA_LDFLAGS_ADD { |
display "Additional linker flags" |
flavor data |
no_define |
default_value { "-Wl,--fatal-warnings" } |
description " |
This option modifies the set of linker flags for |
building the eCos infra package tests. These flags are added to |
the set of global flags if present." |
} |
|
cdl_option CYGPKG_INFRA_TESTS { |
display "Infra package tests" |
flavor data |
no_define |
calculated { "" } |
} |
|
} |
} |
/assert.cdl
0,0 → 1,120
# ==================================================================== |
# |
# assert.cdl |
# |
# Infrastructure debugging/assertion configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: bartv,hmt |
# Contributors: |
# Date: 1999-07-02 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
# The eCos system uses a number of more specialised assertions in |
# addition to a conventional ASSERT() macro. By default these are all |
# enabled when general assertions are enabled, but it is possible to |
# suppress some of them and thus reduce the size of the generated code. |
# |
# Preconditions check that a condition holds true at the beginning of |
# a piece of code, typically at the start of a function. For example a |
# kernel function might have a precondition that it is only invoked |
# when the scheduler is locked. |
# |
# Postconditions check that a condition holds at the end of a piece of |
# code, typically at the point where a function returns. For example |
# at the end of scheduler initialisation there could be a |
# postcondition that there is at least one runnable thread, the idle |
# thread. |
# |
# Loop invariants check that a condition holds on every iteration of |
# a loop. For example the deferred service support code in the kernel |
# could have a loop invariant that interrupts are enabled whenever |
# there are still DSR's pending. |
|
cdl_option CYGDBG_INFRA_DEBUG_PRECONDITIONS { |
display "Preconditions" |
default_value 1 |
description " |
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_POSTCONDITIONS { |
display "Postconditions" |
default_value 1 |
description " |
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_LOOP_INVARIANTS { |
display "Loop invariants" |
default_value 1 |
description " |
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_ASSERT_MESSAGE { |
display "Use assert text" |
default_value 1 |
description " |
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." |
} |
|
# EOF assert.cdl |
/startup.cdl
0,0 → 1,82
# ==================================================================== |
# |
# startup.cdl |
# |
# Infrastructure startup configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): bartv |
# Original data: bartv,hmt |
# Contributors: |
# Date: 1999-06-13 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
# ================================================================= |
# The following options allow particular compatibility modes to be |
# enabled, when they require specialised support from the startup |
# process. These can affect the environment in which the program |
# runs. |
# |
# CYGSEM_START_UITRON_COMPATIBILITY enables compatibility with uItron. |
# You must configure uItron with the correct tasks, and then enabling this |
# option starts the uItron subsystem. It does this by invoking the function |
# cyg_uitron_start(). |
# |
# Both these can also be done by the user overriding cyg_user_start(), |
# cyg_package_start(), or cyg_prestart(). Refer to the documentation on |
# how and when to do this. |
|
cdl_option CYGSEM_START_UITRON_COMPATIBILITY { |
display "Start uITRON subsystem" |
default_value 0 |
requires CYGPKG_UITRON |
active_if CYGPKG_UITRON |
description " |
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()." |
} |
/debug.cdl
0,0 → 1,235
# ==================================================================== |
# |
# debug.cdl |
# |
# Infrastructure debugging configuration data |
# |
# ==================================================================== |
#####ECOSGPLCOPYRIGHTBEGIN#### |
## ------------------------------------------- |
## This file is part of eCos, the Embedded Configurable Operating System. |
## Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. |
## |
## eCos is free software; you can redistribute it and/or modify it under |
## the terms of the GNU General Public License as published by the Free |
## Software Foundation; either version 2 or (at your option) any later version. |
## |
## eCos is distributed in the hope that it will be useful, but WITHOUT ANY |
## WARRANTY; without even the implied warranty of MERCHANTABILITY or |
## FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
## for more details. |
## |
## You should have received a copy of the GNU General Public License along |
## with eCos; if not, write to the Free Software Foundation, Inc., |
## 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. |
## |
## As a special exception, if other files instantiate templates or use macros |
## or inline functions from this file, or you compile this file and link it |
## with other works to produce a work based on this file, this file does not |
## by itself cause the resulting work to be covered by the GNU General Public |
## License. However the source code for this file must still be made available |
## in accordance with section (3) of the GNU General Public License. |
## |
## This exception does not invalidate any other reasons why a work based on |
## this file might be covered by the GNU General Public License. |
## |
## Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. |
## at http://sources.redhat.com/ecos/ecos-license/ |
## ------------------------------------------- |
#####ECOSGPLCOPYRIGHTEND#### |
# ==================================================================== |
######DESCRIPTIONBEGIN#### |
# |
# Author(s): jskov |
# Original data: bartv,hmt |
# Contributors: |
# Date: 1999-07-02 |
# |
#####DESCRIPTIONEND#### |
# |
# ==================================================================== |
|
# If global debugging is enabled then by default all assertions |
# are enabled. Tracing is not enabled by default because it |
# involves excessive overheads, for example on some targets |
# it requires sending a string down a serial line for every |
# function call. Both assertions and tracing are controlled |
# by the following lines. |
|
cdl_component CYGDBG_USE_ASSERTS { |
display "Use asserts" |
default_value 1 |
requires { 1 == CYGINT_INFRA_DEBUG_TRACE_IMPL } |
description " |
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." |
|
script assert.cdl |
} |
|
cdl_component CYGDBG_USE_TRACING { |
display "Use tracing" |
default_value 0 |
requires { 1 == CYGINT_INFRA_DEBUG_TRACE_IMPL } |
description " |
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." |
|
|
# The eCos system uses two types of tracing mechanisms. The most common |
# type traces events, for example an event could be logged whenever |
# an interrupt occurs or whenever a context switch takes place. The |
# second type of tracing mechanism records every function entry and |
# exit. It is possible to disable this second type of tracing while |
# leaving the main tracing facility enabled. |
cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_REPORTS { |
display "Trace function reports" |
default_value 1 |
description " |
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_TRACE_MESSAGE { |
display "Use trace text" |
default_value 1 |
description " |
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_interface CYGINT_INFRA_DEBUG_TRACE_IMPL { |
display "Trace output implementations" |
} |
|
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL { |
display "Null output" |
default_value 0 |
implements CYGINT_INFRA_DEBUG_TRACE_IMPL |
description " |
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_SIMPLE { |
display "Simple output" |
default_value 0 |
implements CYGINT_INFRA_DEBUG_TRACE_IMPL |
description " |
An output module which produces simple output |
from tracing and assertion events." |
} |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY { |
display "Fancy output" |
default_value 0 |
implements CYGINT_INFRA_DEBUG_TRACE_IMPL |
description " |
An output module which produces fancy output |
from tracing and assertion events." |
} |
cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER { |
display "Buffered tracing" |
default_value 1 |
implements CYGINT_INFRA_DEBUG_TRACE_IMPL |
description " |
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 <cyg/infra/cyg_trac.h>) |
is called. |
Of course, there will only be stored messages |
if tracing per se (CYGDBG_USE_TRACING) |
is enabled above." |
|
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE { |
display "Trace buffer size" |
flavor data |
active_if CYGDBG_USE_TRACING |
default_value 32 |
legal_values 5 to 65535 |
description " |
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." |
} |
# FIXME: The below options should be mutually exclusive. |
cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP { |
display "Wrap trace buffer when full" |
active_if CYGDBG_USE_TRACING |
default_value 1 |
# type radio |
description " |
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_HALT { |
display "Halt trace buffer when full" |
active_if CYGDBG_USE_TRACING |
default_value 0 |
# type radio |
description " |
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_PRINT { |
display "Print trace buffer when full" |
active_if CYGDBG_USE_TRACING |
default_value 0 |
# type radio |
description " |
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_ON_ASSERT { |
display "Print trace buffer on assert fail" |
active_if CYGDBG_USE_TRACING |
default_value 1 |
description " |
When an assertion fails the trace buffer will be |
printed to the default diagnostic device." |
} |
} |
|
cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO { |
display "Use function names" |
default_value 1 |
description " |
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." |
} |