Path: blob/master/Utilities/Release/sunos/docker/openssl.bash
3153 views
#!/usr/bin/env bash12set -e34arch="$1"5readonly arch67case "$arch" in8x86_64)9target=x86_64-pc-solaris2.1010openssl_target=solaris64-x86_64-gcc11ldlibs=12;;13sparc64)14target=sparc64-sun-solaris2.1015openssl_target=solaris64-sparcv9-gcc16ldlibs=17;;18*)19echo >&2 "Unknown architecture: $arch"20exit 121;;22esac23readonly target24readonly openssl_target25readonly ldlibs2627readonly sha256sum="e15dda82fe2fe8139dc2ac21a36d4ca01d5313c75f99f46c4e8a27709b7294bf"28readonly filename="openssl-3.4.0"29readonly tarball="$filename.tar.gz"3031cd /tmp3233curl -OL "https://github.com/openssl/openssl/releases/download/$filename/$tarball"34echo "$sha256sum $tarball" > openssl.sha256sum35sha256sum --check openssl.sha256sum3637tar xzf "$tarball"3839prefix="/opt/cross/openssl/$target"40cd "$filename"41patch -p0 < "${BASH_SOURCE%/*}/openssl.patch"42env \43LDLIBS="$ldlibs" \44LDFLAGS="-Wl,-z,noexecstack" \45./Configure \46--prefix="$prefix" \47--cross-compile-prefix="/opt/cross/bin/$target-" \48--api=1.1.1 \49"$openssl_target" \50no-deprecated \51no-shared52if ! make -j $(nproc) >make.log 2>&1; then53tail -1000 make.log54exit 155fi56if ! make install_sw >>make.log 2>&1; then57tail -1000 make.log58exit 159fi6061tar czf /root/openssl.tar.gz -C / "${prefix#/}"626364