CryptoPkg: Enable ssl build in OpensslLib directly

This patch is used to enable ssl build in OpensslLib module
directly.

Cc: Wu Jiaxin <jiaxin.wu@intel.com>
Cc: Ye Ting <ting.ye@intel.com>
Cc: Long Qin <qin.long@intel.com>
Cc: Fu Siyuan <siyuan.fu@intel.com>
Cc: Zhang Lubo <lubo.zhang@intel.com>
Cc: Thomas Palmer <thomas.palmer@hpe.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Long Qin <qin.long@intel.com>
Reviewed-by: Wu Jiaxin <jiaxin.wu@intel.com>
Reviewed-by: Ye Ting <ting.ye@intel.com>
Tested-by: Wu Jiaxin <jiaxin.wu@intel.com>
This commit is contained in:
Jiaxin Wu 2016-12-14 10:30:32 +08:00
parent 885ccf972f
commit 32387e0081
6 changed files with 75 additions and 7 deletions

View File

@ -1,7 +1,7 @@
/** @file /** @file
Root include file to support building OpenSSL Crypto Library. Root include file to support building OpenSSL Crypto Library.
Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.<BR> Copyright (c) 2010 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at which accompanies this distribution. The full text of the license may be found at
@ -118,6 +118,8 @@ typedef UINT16 nlink_t;
typedef int pid_t; typedef int pid_t;
typedef void *DIR; typedef void *DIR;
typedef void __sighandler_t (int); typedef void __sighandler_t (int);
typedef UINT8 __uint8_t;
typedef UINT8 sa_family_t;
// //
// Structures from EFI Application Toolkit required to build Open SSL // Structures from EFI Application Toolkit required to build Open SSL
@ -172,6 +174,12 @@ struct stat {
INT64 st_qspare[2]; INT64 st_qspare[2];
}; };
struct sockaddr {
__uint8_t sa_len; /* total length */
sa_family_t sa_family; /* address family */
char sa_data[14]; /* actually longer; address value */
};
// //
// Externs from EFI Application Toolkit required to build Open SSL // Externs from EFI Application Toolkit required to build Open SSL
// //
@ -273,5 +281,6 @@ extern FILE *stdout;
#define localtime(timer) NULL #define localtime(timer) NULL
#define gmtime_r(timer,result) (result = NULL) #define gmtime_r(timer,result) (result = NULL)
#define atoi(nptr) AsciiStrDecimalToUintn(nptr) #define atoi(nptr) AsciiStrDecimalToUintn(nptr)
#define gettimeofday(tvp,tz) do { (tvp)->tv_sec = time(NULL); (tvp)->tv_usec = 0; } while (0)
#endif #endif

View File

@ -384,6 +384,11 @@ size_t fread (void *b, size_t c, size_t i, FILE *f)
return 0; return 0;
} }
int fputs (const char *s, FILE *f)
{
return 0;
}
int fprintf (FILE *f, const char *s, ...) int fprintf (FILE *f, const char *s, ...)
{ {
return 0; return 0;
@ -448,3 +453,8 @@ ssize_t write (int f, const void *b, size_t l)
{ {
return 0; return 0;
} }
int printf (char const *fmt, ...)
{
return 0;
}

View File

@ -8,6 +8,7 @@ copy crypto\opensslconf.h include\openssl
copy crypto\ebcdic.h include\openssl copy crypto\ebcdic.h include\openssl
copy crypto\symhacks.h include\openssl copy crypto\symhacks.h include\openssl
copy crypto\ossl_typ.h include\openssl copy crypto\ossl_typ.h include\openssl
copy crypto\o_dir.h include
copy crypto\objects\objects.h include\openssl copy crypto\objects\objects.h include\openssl
copy crypto\objects\obj_mac.h include\openssl copy crypto\objects\obj_mac.h include\openssl
copy crypto\md4\md4.h include\openssl copy crypto\md4\md4.h include\openssl

View File

@ -10,6 +10,7 @@ cp crypto/opensslconf.h include/openssl
cp crypto/ebcdic.h include/openssl cp crypto/ebcdic.h include/openssl
cp crypto/symhacks.h include/openssl cp crypto/symhacks.h include/openssl
cp crypto/ossl_typ.h include/openssl cp crypto/ossl_typ.h include/openssl
cp crypto/o_dir.h include
cp crypto/objects/objects.h include/openssl cp crypto/objects/objects.h include/openssl
cp crypto/objects/obj_mac.h include/openssl cp crypto/objects/obj_mac.h include/openssl
cp crypto/md4/md4.h include/openssl cp crypto/md4/md4.h include/openssl

View File

@ -470,9 +470,59 @@
$(OPENSSL_PATH)/crypto/ocsp/ocsp_vfy.c $(OPENSSL_PATH)/crypto/ocsp/ocsp_vfy.c
$(OPENSSL_PATH)/crypto/ocsp/ocsp_err.c $(OPENSSL_PATH)/crypto/ocsp/ocsp_err.c
$(OPENSSL_PATH)/crypto/krb5/krb5_asn.c $(OPENSSL_PATH)/crypto/krb5/krb5_asn.c
$(OPENSSL_PATH)/crypto/pqueue/pqueue.c
$(OPENSSL_PATH)/crypto/cmac/cmac.c $(OPENSSL_PATH)/crypto/cmac/cmac.c
$(OPENSSL_PATH)/crypto/cmac/cm_ameth.c $(OPENSSL_PATH)/crypto/cmac/cm_ameth.c
$(OPENSSL_PATH)/crypto/cmac/cm_pmeth.c $(OPENSSL_PATH)/crypto/cmac/cm_pmeth.c
$(OPENSSL_PATH)/ssl/s2_meth.c
$(OPENSSL_PATH)/ssl/s2_srvr.c
$(OPENSSL_PATH)/ssl/s2_clnt.c
$(OPENSSL_PATH)/ssl/s2_lib.c
$(OPENSSL_PATH)/ssl/s2_enc.c
$(OPENSSL_PATH)/ssl/s2_pkt.c
$(OPENSSL_PATH)/ssl/s3_meth.c
$(OPENSSL_PATH)/ssl/s3_srvr.c
$(OPENSSL_PATH)/ssl/s3_clnt.c
$(OPENSSL_PATH)/ssl/s3_lib.c
$(OPENSSL_PATH)/ssl/s3_enc.c
$(OPENSSL_PATH)/ssl/s3_pkt.c
$(OPENSSL_PATH)/ssl/s3_both.c
$(OPENSSL_PATH)/ssl/s3_cbc.c
$(OPENSSL_PATH)/ssl/s23_meth.c
$(OPENSSL_PATH)/ssl/s23_srvr.c
$(OPENSSL_PATH)/ssl/s23_clnt.c
$(OPENSSL_PATH)/ssl/s23_lib.c
$(OPENSSL_PATH)/ssl/s23_pkt.c
$(OPENSSL_PATH)/ssl/t1_meth.c
$(OPENSSL_PATH)/ssl/t1_srvr.c
$(OPENSSL_PATH)/ssl/t1_clnt.c
$(OPENSSL_PATH)/ssl/t1_lib.c
$(OPENSSL_PATH)/ssl/t1_enc.c
$(OPENSSL_PATH)/ssl/t1_ext.c
$(OPENSSL_PATH)/ssl/d1_meth.c
$(OPENSSL_PATH)/ssl/d1_srvr.c
$(OPENSSL_PATH)/ssl/d1_clnt.c
$(OPENSSL_PATH)/ssl/d1_lib.c
$(OPENSSL_PATH)/ssl/d1_pkt.c
$(OPENSSL_PATH)/ssl/d1_both.c
$(OPENSSL_PATH)/ssl/d1_srtp.c
$(OPENSSL_PATH)/ssl/ssl_lib.c
$(OPENSSL_PATH)/ssl/ssl_err2.c
$(OPENSSL_PATH)/ssl/ssl_cert.c
$(OPENSSL_PATH)/ssl/ssl_sess.c
$(OPENSSL_PATH)/ssl/ssl_ciph.c
$(OPENSSL_PATH)/ssl/ssl_stat.c
$(OPENSSL_PATH)/ssl/ssl_rsa.c
$(OPENSSL_PATH)/ssl/ssl_asn1.c
$(OPENSSL_PATH)/ssl/ssl_txt.c
$(OPENSSL_PATH)/ssl/ssl_algs.c
$(OPENSSL_PATH)/ssl/bio_ssl.c
$(OPENSSL_PATH)/ssl/ssl_err.c
$(OPENSSL_PATH)/ssl/kssl.c
$(OPENSSL_PATH)/ssl/t1_reneg.c
$(OPENSSL_PATH)/ssl/tls_srp.c
$(OPENSSL_PATH)/ssl/t1_trce.c
$(OPENSSL_PATH)/ssl/ssl_utst.c
# Autogenerated files list ends here # Autogenerated files list ends here
@ -500,7 +550,7 @@
# C4702: Potentially uninitialized local variable name used # C4702: Potentially uninitialized local variable name used
# C4311: pointer truncation from 'type' to 'type' # C4311: pointer truncation from 'type' to 'type'
# #
MSFT:*_*_IA32_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4244 /wd4701 /wd4702 /wd4706 MSFT:*_*_IA32_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4244 /wd4245 /wd4701 /wd4702 /wd4706
MSFT:*_*_X64_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706 /wd4311 MSFT:*_*_X64_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706 /wd4311
MSFT:*_*_IPF_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706 MSFT:*_*_IPF_CC_FLAGS = -U_WIN32 -U_WIN64 -U_MSC_VER $(OPENSSL_FLAGS) /wd4133 /wd4244 /wd4245 /wd4267 /wd4701 /wd4305 /wd4306 /wd4702 /wd4706

View File

@ -42,7 +42,6 @@ fi
no-locking \ no-locking \
no-mdc2 \ no-mdc2 \
no-posix-io \ no-posix-io \
no-pqueue \
no-rc2 \ no-rc2 \
no-rcs \ no-rcs \
no-rfc3779 \ no-rfc3779 \
@ -77,13 +76,11 @@ function filelist ()
;; ;;
LIBSRC=*) LIBSRC=*)
LIBSRC=$(echo "$LINE" | sed s/^LIBSRC=//) LIBSRC=$(echo "$LINE" | sed s/^LIBSRC=//)
if [ "$RELATIVE_DIRECTORY" != "ssl" ]; then for FILE in $LIBSRC; do
for FILE in $LIBSRC; do
if [ "$FILE" != "b_print.c" ]; then if [ "$FILE" != "b_print.c" ]; then
echo -e ' $(OPENSSL_PATH)/'$RELATIVE_DIRECTORY/$FILE\\r\\ echo -e ' $(OPENSSL_PATH)/'$RELATIVE_DIRECTORY/$FILE\\r\\
fi fi
done done
fi
;; ;;
esac esac
done done