mirror of
https://github.com/bensuperpc/dockcross.git
synced 2024-12-23 09:04:27 +01:00
53d98cf4ff
In few images, curl is only tool that able to download from https source requiring TLS 1.2
84 lines
1.4 KiB
Bash
Executable File
84 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
#
|
|
# Configure, build and install OpenSSL
|
|
#
|
|
# Usage:
|
|
#
|
|
# install-openssl.sh [-32]
|
|
#
|
|
# Options:
|
|
#
|
|
# -32 Build OpenSSL as a 32-bit library
|
|
#
|
|
# Notes:
|
|
#
|
|
# * build directory is /usr/src/openssl-$OPENSSL_VERSION
|
|
#
|
|
# * install directory is /usr
|
|
#
|
|
# * after installation, build directory and archive are removed
|
|
#
|
|
|
|
set -e
|
|
set -o pipefail
|
|
|
|
WRAPPER=""
|
|
CONFIG_FLAG="-fPIC"
|
|
SUFFIX=64
|
|
|
|
while [ $# -gt 0 ]; do
|
|
case "$1" in
|
|
-32)
|
|
WRAPPER="linux32"
|
|
CONFIG_FLAG="-m32"
|
|
SUFFIX=32
|
|
;;
|
|
*)
|
|
echo "Usage: Usage: ${0##*/} [-32]"
|
|
exit 1
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
OPENSSL_VERSION=1.0.2j
|
|
OPENSSL_SHA256=e7aff292be21c259c6af26469c7a9b3ba26e9abaaffd325e3dccc9785256c431
|
|
|
|
cd /usr/src
|
|
|
|
# Download
|
|
if [ ! -f ./openssl-$OPENSSL_VERSION.tar.gz ]; then
|
|
curl -# -LO https://www.openssl.org/source/openssl-$OPENSSL_VERSION.tar.gz
|
|
else
|
|
rm -rf ./openssl-$OPENSSL_VERSION
|
|
fi
|
|
|
|
# Verify
|
|
sha256_openssl=`sha256sum ./openssl-$OPENSSL_VERSION.tar.gz | awk '{ print $1 }'`
|
|
if [ "$sha256_openssl" != "$OPENSSL_SHA256" ]
|
|
then
|
|
echo "SHA256 mismatch. Problem downloading OpenSSL."
|
|
echo " current [$sha256_openssl]"
|
|
echo " expected[$OPENSSL_SHA256]"
|
|
exit 1
|
|
fi
|
|
|
|
# Extract
|
|
tar -xzvf openssl-$OPENSSL_VERSION.tar.gz
|
|
|
|
pushd openssl-$OPENSSL_VERSION
|
|
|
|
# Configure
|
|
${WRAPPER} ./config --prefix=/usr $CONFIG_FLAG
|
|
|
|
# Build & Install
|
|
${WRAPPER} make install
|
|
|
|
popd
|
|
|
|
# Clean
|
|
rm -rf ./openssl-$OPENSSL_VERSION*
|
|
rm -rf /usr/ssl/man
|
|
|