PLATFORM_VERSION = 0.91\r
DSC_SPECIFICATION = 0x00010005\r
OUTPUT_DIRECTORY = Build/CryptoPkg\r
- SUPPORTED_ARCHITECTURES = IA32|X64|IPF|EBC\r
+ SUPPORTED_ARCHITECTURES = IA32|X64|IPF|EBC|ARM\r
BUILD_TARGETS = DEBUG|RELEASE\r
SKUID_IDENTIFIER = DEFAULT\r
\r
IntrinsicLib|CryptoPkg/Library/IntrinsicLib/IntrinsicLib.inf\r
OpensslLib|CryptoPkg/Library/OpensslLib/OpensslLib.inf\r
\r
+[LibraryClasses.ARM]\r
+ #\r
+ # It is not possible to prevent the ARM compiler for generic intrinsic functions.\r
+ # This library provides the instrinsic functions generate by a given compiler.\r
+ # [LibraryClasses.ARM] and NULL mean link this library into all ARM images.\r
+ #\r
+ NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf\r
+\r
[LibraryClasses.common.PEIM]\r
BaseCryptLib|CryptoPkg/Library/BaseCryptLib/PeiCryptLib.inf\r
\r
//\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
\r
#include <OpenSslSupport.h>\r
\r
+int errno = 0;\r
+\r
typedef\r
INTN\r
(*SORT_COMPARE)(\r
{\r
return NULL;\r
}\r
+\r
+int X509_load_cert_file (VOID *ctx, const char *file, int type)\r
+{\r
+ return 0;\r
+}\r
+\r
+int X509_load_crl_file (VOID *ctx, const char *file, int type)\r
+{\r
+ return 0;\r
+}\r
+\r
+int chmod (const char *c, mode_t m)\r
+{\r
+ return -1;\r
+}\r
+\r
+int close (int f)\r
+{\r
+ return -1;\r
+}\r
+\r
+void closelog (void)\r
+{\r
+\r
+}\r
+\r
+void exit (int e)\r
+{\r
+\r
+}\r
+\r
+int fclose (FILE *f)\r
+{\r
+ return 0;\r
+}\r
+\r
+FILE *fopen (const char *c, const char *m)\r
+{\r
+ return NULL;\r
+}\r
+\r
+size_t fread (void *b, size_t c, size_t i, FILE *f)\r
+{\r
+ return 0;\r
+}\r
+\r
+int fprintf (FILE *f, const char *s, ...)\r
+{\r
+ return 0;\r
+}\r
+\r
+uid_t getuid (void)\r
+{\r
+ return 0;\r
+}\r
+\r
+uid_t geteuid (void)\r
+{\r
+ return 0;\r
+}\r
+\r
+gid_t getgid (void)\r
+{\r
+ return 0;\r
+}\r
+\r
+gid_t getegid (void)\r
+{\r
+ return 0;\r
+}\r
+\r
+off_t lseek (int a, off_t o, int d)\r
+{\r
+ return 0;\r
+}\r
+\r
+void openlog (const char *c, int a, int b)\r
+{\r
+\r
+}\r
+\r
+ssize_t read (int f, void *b, size_t c)\r
+{\r
+ return 0;\r
+}\r
+\r
+int stat (const char *c, struct stat *s)\r
+{\r
+ return -1;\r
+}\r
+\r
+int strcasecmp (const char *c, const char *s)\r
+{\r
+ return 0;\r
+}\r
+\r
+int strncasecmp (const char *c, const char *s, size_t l)\r
+{\r
+ return 0;\r
+}\r
+\r
+void syslog (int a, const char *c, ...)\r
+{\r
+\r
+}\r
+\r
+ssize_t write (int f, const void *b, size_t l)\r
+{\r
+ return 0;\r
+}\r
#\r
\r
#\r
-# VALID_ARCHITECTURES = IA32 X64 IPF\r
+# VALID_ARCHITECTURES = IA32 X64 IPF ARM\r
#\r
\r
[Sources]\r
MSFT:RELEASE_*_IPF_CC_FLAGS == /nologo /c /WX /GS- /X /EHs-c- /GR- /Gy /Os /GL /FIAutoGen.h /QIPF_fr32 -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) $(OPENSSL_EXFLAGS) /w\r
INTEL:*_*_*_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER -U__ICC $(OPENSSL_FLAGS) $(OPENSSL_EXFLAGS) /w\r
GCC:*_*_*_CC_FLAGS = -U_WIN32 -U_WIN64 $(OPENSSL_FLAGS) $(OPENSSL_EXFLAGS) -w\r
+ RVCT:DEBUG_*_*_CC_FLAGS = $(OPENSSL_FLAGS) $(OPENSSL_EXFLAGS) --library_interface=aeabi_clib99 --fpu=vfpv3\r
+ RVCT:RELEASE_*_*_CC_FLAGS = $(OPENSSL_FLAGS) $(OPENSSL_EXFLAGS) --library_interface=aeabi_clib99 --fpu=vfpv3\r
+\r
+ \r