//\r
// Map all va_xxxx elements to VA_xxx defined in MdePkg/Include/Base.h\r
//\r
+#if !defined(__CC_ARM) // if va_list is not already defined\r
#define va_list VA_LIST\r
#define va_arg VA_ARG\r
#define va_start VA_START\r
#define va_end VA_END\r
+#else // __CC_ARM\r
+#define va_start(Marker, Parameter) __va_start(Marker, Parameter)\r
+#define va_arg(Marker, TYPE) __va_arg(Marker, TYPE)\r
+#define va_end(Marker) ((void)0)\r
+#endif\r
+\r
+\r
\r
//\r
// #defines from EFI Application Toolkit required to buiild Open SSL\r
//\r
// Global variables from EFI Application Toolkit required to buiild Open SSL\r
//\r
-FILE *stderr;\r
-FILE *stdin;\r
-FILE *stdout;\r
+static FILE *stderr;\r
+static FILE *stdin;\r
+static FILE *stdout;\r
\r
//\r
// Macros that directly map functions to BaseLib, BaseMemoryLib, and DebugLib functions\r