eBoard ๐Ÿ‰  โ‘ โ‘งโ‘จ
Written for SIA 2017/2018
eagle_PreprocessorControl.h
Go to the documentation of this file.
1 
10 //=====================================================================================================================================================
11 // Preprocessor Macros
12 //=====================================================================================================================================================
13 
14 // This file contains various preprocessor tools provided by eBoard
16 #define VALUE_TO_STRING(x) #x
17 #ifdef DOC
19  #define PREPROCESS_DEBUG 1
21 #endif
22 #define VALUE(x) VALUE_TO_STRING(x)
24 #ifndef PREPROCESS_DEBUG
26  #define PREPROCESS_DEBUG 0
27 #endif
28 #define PPERFORM_PRAGMA(str) _Pragma(#str)
30 
31 #if PREPROCESS_DEBUG > 0
32  #pragma message("You are using eBoard-header ๐Ÿ‰" VALUE(EBOARD_VERSION) "{" VALUE(EBOARD_VERSION_NBR) "} written by EagleoutIce")
33  #define DEBUG_MSG(str) PPERFORM_PRAGMA(message ("" #str))
34  #define MACRO_MSG(mac,str) PPERFORM_PRAGMA(message("You set " #mac " to " VALUE(mac) ": " #str))
35 #else
36  #define DEBUG_MSG(str) ;
37  #define MACRO_MSG(mac,str) ;
38 #endif
39