/* * File : rtm.h * This file is part of RT-Thread RTOS * COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team * * The license and distribution terms for this file may be * found in the file LICENSE in this distribution or at * http://www.rt-thread.org/license/LICENSE */ #ifndef __RTM_H__ #define __RTM_H__ #include #include #ifdef RT_USING_MODULE struct rt_module_symtab { void *addr; const char *name; }; #if defined(_MSC_VER) || defined(__MINGW32__) #define RTM_EXPORT(symbol) #else #define RTM_EXPORT(symbol) \ const char __rtmsym_##symbol##_name[] = #symbol; \ const struct rt_module_symtab __rtmsym_##symbol SECTION("RTMSymTab")= \ { \ (void *)&symbol, \ __rtmsym_##symbol##_name \ }; #endif #else #define RTM_EXPORT(symbol) #endif #endif