mirror of https://github.com/acidanthera/audk.git
99 lines
2.0 KiB
Bash
Executable File
99 lines
2.0 KiB
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# This script runs the OpenSSL Configure script, then processes the
|
|
# resulting file list into our local OpensslLib.inf and also takes
|
|
# a copy of opensslconf.h.
|
|
#
|
|
# This only needs to be done once by a developer when updating to a
|
|
# new version of OpenSSL (or changing options, etc.). Normal users
|
|
# do not need to do this, since the results are stored in the EDK2
|
|
# git repository for them.
|
|
|
|
OPENSSL_PATH=$(sed -n '/DEFINE OPENSSL_PATH/{s/.* \(openssl-[0-9.]*[a-z]*\)[[:space:]]*/\1/ p}' OpensslLib.inf)
|
|
|
|
if ! cd "${OPENSSL_PATH}" ; then
|
|
echo "Cannot change to OpenSSL directory \"${OPENSSL_PATH}\""
|
|
exit 1
|
|
fi
|
|
|
|
./Configure UEFI \
|
|
no-asm \
|
|
no-bf \
|
|
no-camellia \
|
|
no-capieng \
|
|
no-cast \
|
|
no-cms \
|
|
no-deprecated \
|
|
no-dgram \
|
|
no-dsa \
|
|
no-dynamic-engine \
|
|
no-ec \
|
|
no-ecdh \
|
|
no-ecdsa \
|
|
no-engine \
|
|
no-engines \
|
|
no-err \
|
|
no-filenames \
|
|
no-fp-api \
|
|
no-hw \
|
|
no-idea \
|
|
no-jpake \
|
|
no-krb5 \
|
|
no-locking \
|
|
no-mdc2 \
|
|
no-posix-io \
|
|
no-pqueue \
|
|
no-rc2 \
|
|
no-rcs \
|
|
no-rfc3779 \
|
|
no-ripemd \
|
|
no-scrypt \
|
|
no-sct \
|
|
no-seed \
|
|
no-sha0 \
|
|
no-sock \
|
|
no-srp \
|
|
no-ssl \
|
|
no-stdio \
|
|
no-threads \
|
|
no-ts \
|
|
no-ui \
|
|
no-whirlpool \
|
|
|| exit 1
|
|
|
|
make files
|
|
cd -
|
|
|
|
function filelist ()
|
|
{
|
|
echo '1,/# Autogenerated files list starts here/p'
|
|
echo '/# Autogenerated files list ends here/,$p'
|
|
echo '/# Autogenerated files list starts here/a\'
|
|
|
|
while read LINE; do
|
|
case "$LINE" in
|
|
RELATIVE_DIRECTORY=*)
|
|
eval "$LINE"
|
|
;;
|
|
LIBSRC=*)
|
|
LIBSRC=$(echo "$LINE" | sed s/^LIBSRC=//)
|
|
if [ "$RELATIVE_DIRECTORY" != "ssl" ]; then
|
|
for FILE in $LIBSRC; do
|
|
if [ "$FILE" != "b_print.c" ]; then
|
|
echo -e ' $(OPENSSL_PATH)/'$RELATIVE_DIRECTORY/$FILE\\r\\
|
|
fi
|
|
done
|
|
fi
|
|
;;
|
|
esac
|
|
done
|
|
echo -e \\r
|
|
}
|
|
|
|
filelist < "${OPENSSL_PATH}/MINFO" | sed -n -f - -i OpensslLib.inf
|
|
|
|
# We can tell Windows users to put this back manually if they can't run
|
|
# Configure. For now, until the git repository is fixed to store things
|
|
# sanely, also convert to DOS line-endings
|
|
unix2dos -n "${OPENSSL_PATH}/crypto/opensslconf.h" opensslconf.h
|