File: openssl.bash

package info (click to toggle)
cmake 4.2.3-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 152,336 kB
  • sloc: ansic: 403,896; cpp: 303,920; sh: 4,105; python: 3,583; yacc: 3,106; lex: 1,279; f90: 538; asm: 471; lisp: 375; cs: 270; java: 266; fortran: 239; objc: 215; perl: 213; xml: 198; makefile: 111; javascript: 83; pascal: 63; tcl: 55; php: 25; ruby: 22
file content (62 lines) | stat: -rwxr-xr-x 1,350 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/usr/bin/env bash

set -e

arch="$1"
readonly arch

case "$arch" in
    x86_64)
        target=x86_64-pc-solaris2.10
        openssl_target=solaris64-x86_64-gcc
        ldlibs=
        ;;
    sparc64)
        target=sparc64-sun-solaris2.10
        openssl_target=solaris64-sparcv9-gcc
        ldlibs=
        ;;
    *)
        echo >&2 "Unknown architecture: $arch"
        exit 1
        ;;
esac
readonly target
readonly openssl_target
readonly ldlibs

readonly sha256sum="e15dda82fe2fe8139dc2ac21a36d4ca01d5313c75f99f46c4e8a27709b7294bf"
readonly filename="openssl-3.4.0"
readonly tarball="$filename.tar.gz"

cd /tmp

curl -OL "https://github.com/openssl/openssl/releases/download/$filename/$tarball"
echo "$sha256sum  $tarball" > openssl.sha256sum
sha256sum --check openssl.sha256sum

tar xzf "$tarball"

prefix="/opt/cross/openssl/$target"
cd "$filename"
patch -p0 < "${BASH_SOURCE%/*}/openssl.patch"
env \
  LDLIBS="$ldlibs" \
  LDFLAGS="-Wl,-z,noexecstack" \
  ./Configure \
    --prefix="$prefix" \
    --cross-compile-prefix="/opt/cross/bin/$target-" \
    --api=1.1.1 \
    "$openssl_target" \
    no-deprecated \
    no-shared
if ! make -j $(nproc) >make.log 2>&1; then
    tail -1000 make.log
    exit 1
fi
if ! make install_sw >>make.log 2>&1; then
    tail -1000 make.log
    exit 1
fi

tar czf /root/openssl.tar.gz -C / "${prefix#/}"