⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 infra.h

📁 ecos为实时嵌入式操作系统
💻 H
📖 第 1 页 / 共 2 页
字号:
   cdl_option CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY {       display          "Fancy output"       type             radio       parent           CYGPKG_INFRA_DEBUG       description "An output module which produces fancy output                from tracing and assertion events."   }   cdl_component CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER {       display          "Buffered tracing"       type             radio       parent           CYGPKG_INFRA_DEBUG       description "An output module which buffers output                from tracing and assertion events. The stored                messages are output when an assert fires, or                cyg_trace_output() 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"       type             count       legal_values     5 to 65535       parent           CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER       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."   }   cdl_option CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP {       display          "Wrap trace buffer when full"       type             radio       parent           CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER       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"       type             radio       parent           CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER       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"       type             radio       parent           CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER       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"       type             bool       parent           CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER       description "When an assertion fails the trace buffer will be printed to                    the default diagnostic device."   }   }}CFG_DATA */# if defined( CYGDBG_USE_TRACING ) || defined( CYGDBG_USE_ASSERTS )#  undef  CYGDBG_INFRA_DEBUG_TRACE_ASSERT_NULL#  undef  CYGDBG_INFRA_DEBUG_TRACE_ASSERT_SIMPLE#  undef  CYGDBG_INFRA_DEBUG_TRACE_ASSERT_FANCY#  define CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER# endif# if defined(CYGDBG_USE_TRACING)#  if defined(CYGDBG_INFRA_DEBUG_TRACE_ASSERT_BUFFER)#   define CYGDBG_INFRA_DEBUG_TRACE_BUFFER_SIZE  32#   define CYGDBG_INFRA_DEBUG_TRACE_BUFFER_WRAP#   undef  CYGDBG_INFRA_DEBUG_TRACE_BUFFER_HALT#   undef  CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT#   define CYGDBG_INFRA_DEBUG_TRACE_BUFFER_PRINT_ON_ASSERT#  endif# endif/* * 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 final application image and hence * there is a significant penalty in terms of code size. It is possible * to suppress the use of these messages by disabling * CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE. * This results in smaller code size, but there is less information if * an assertion actually gets triggered. * * Similarly eCos trace macros also make use of a text message, and * this message can be suppressed by disabling * CYGDBG_INFRA_DEBUG_TRACE_MESSAGE. *//* {{CFG_DATA   cdl_option CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE {       display          "Use assert text"       type             boolean       parent           CYGDBG_USE_ASSERTS       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."   }   cdl_option CYGDBG_INFRA_DEBUG_TRACE_MESSAGE {       display          "Use trace text"       type             boolean       parent           CYGDBG_USE_TRACING       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."   }   }}CFG_DATA */#define CYGDBG_INFRA_DEBUG_ASSERT_MESSAGE#define CYGDBG_INFRA_DEBUG_TRACE_MESSAGE/* ======================================================================== * By default all assertion and trace macros will make use of the name * of the current function, via gcc's __PRETTY_FUNCTION__ extension. * This provides useful extra information, but again there is some * code size overhead. It is possible to suppress the use of function * names, and have the assertions and trace facilities only use the * filename and linenumber information provided by __FILE__ and __LINE__. *//* {{CFG_DATA   cdl_option CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO {       display          "Use function names"       type             boolean       parent           CYGPKG_INFRA_DEBUG       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."   }   }}CFG_DATA */#define CYGDBG_INFRA_DEBUG_FUNCTION_PSEUDOMACRO/* ================================================================= * 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_ISO_C_COMPATIBILITY enables compatibility with ISO C, * in particular in eCos it creates a thread that invokes the function * main() which the user must supply. It does this by invoking the function * cyg_iso_c_start(). For more information, refer to the C library * documentation. * * 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. *//* {{CFG_DATA   cdl_component CYGPKG_INFRA_STARTUP {       display          "Startup options"       type             dummy       parent           CYGPKG_INFRA       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."           doc ref/ecos-ref/c-library-startup.html   }   cdl_option CYGSEM_START_ISO_C_COMPATIBILITY {       display          "Start ISO C library"       type             boolean       parent           CYGPKG_INFRA_STARTUP       requires         CYGPKG_LIBC       description "Generate a call to initialize the ISO C library                (libc) within the system version of cyg_package_start().                This enables compatibility with ISO C, in particular in                eCos it creates a thread that invokes the function main()                which the user must supply.                It does this by invoking the function cyg_iso_c_start().                If this is disabled, and you want to use the C library, you                call cyg_iso_c_start() from your own cyg_package_start()                or cyg_userstart()."   }   cdl_option CYGSEM_START_UITRON_COMPATIBILITY {       display          "Start uITRON subsystem"       type             boolean       parent           CYGPKG_INFRA_STARTUP       requires         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()."   }   }}CFG_DATA */#ifdef CYGPKG_LIBC#define CYGSEM_START_ISO_C_COMPATIBILITY#endif#ifdef CYGPKG_UITRON#undef CYGSEM_START_UITRON_COMPATIBILITY#endif/* ======================================================================== * memcpy()/memset() configuration * * The infra package contains implementations of memcpy() and memset() * because gcc generates code that uses these when initialising * structures, if it has been configured with its own builtin versions * disabled (-fno-builtin). * *//*  {{CFG_DATA  cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY {      display         "Smaller slower memcpy()"      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."      type            boolean      parent          CYGPKG_INFRA  }  cdl_option CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMSET {      display         "Smaller slower memset()"      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."      type            boolean      parent          CYGPKG_INFRA  }  }}CFG_DATA*/#undef CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMCPY#undef CYGIMP_INFRA_PREFER_SMALL_TO_FAST_MEMSET/* ======================================================================== * Debugging-related miscellania. * * NOTE: this is not yet fully supported, by CDL nor by having a proper * symbol name. * * Define how diag data is directed off of the board. If using an actual * device then a device must be configured to support diag. */#undef CYGDBG_INFRA_DIAG_USE_DEVICE/* ======================================================================== * That's all. */#endif /* CYGONCE_PKGCONF_INFRA_H *//* EOF infra.h */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -