00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 #ifndef CPM_HEADERS_MACRO
00014 #define CPM_HEADERS_MACRO
00015 
00016 
00017 #define     CPM_MACRO_CONCAT(a, b) \
00018             CPM_MACRO_CONCAT_END_(a, b)
00019 
00020 
00021 #define     CPM_MACRO_CONCAT3(a, b, c) \
00022             CPM_MACRO_CONCAT(CPM_MACRO_CONCAT (a, b      ), c)
00023 
00024 
00025 #define     CPM_MACRO_CONCAT4(a, b, c, d) \
00026             CPM_MACRO_CONCAT(CPM_MACRO_CONCAT3(a, b, c   ), d)
00027 
00028 
00029 #define     CPM_MACRO_CONCAT5(a, b, c, d, e) \
00030             CPM_MACRO_CONCAT(CPM_MACRO_CONCAT4(a, b, c, d), e)
00031 
00032 
00033 #define     CPM_MACRO_STRING(s) \
00034             CPM_MACRO_STRING_END_(s)
00035 
00036 
00037 #define     CPM_MACRO_CONCAT_END_(a, b) a ## b
00038 
00039 #define     CPM_MACRO_STRING_END_(s) #s
00040 
00041 #endif