Files
static-musl-builds/scripts/build_iperf3.sh
T

49 lines
1.0 KiB
Bash
Raw Normal View History

#!/bin/sh
set -eu
VERSION="${1:?usage: build_iperf3.sh <version> [output_dir]}"
OUTPUT_DIR="${2:-$PWD/dist}"
WORKDIR="${TMPDIR:-/tmp}/iperf3-build-${VERSION}"
PREFIX_NAME="iperf3-${VERSION}-linux-amd64-musl-static"
rm -rf "$WORKDIR"
mkdir -p "$WORKDIR" "$OUTPUT_DIR"
cd "$WORKDIR"
apk add --no-cache \
bash \
build-base \
curl \
file \
linux-headers \
openssl-dev \
tar \
xz \
zlib-dev
curl -fsSLO "https://downloads.es.net/pub/iperf/iperf-${VERSION}.tar.gz"
tar -xzf "iperf-${VERSION}.tar.gz"
cd "iperf-${VERSION}"
export CFLAGS="-O2 -static"
export CPPFLAGS=""
export LDFLAGS="-static"
./configure \
--disable-shared \
--enable-static \
--without-sctp
make -j"$(getconf _NPROCESSORS_ONLN || echo 2)"
strip src/iperf3
install -m 0755 src/iperf3 "$OUTPUT_DIR/$PREFIX_NAME"
(
cd "$OUTPUT_DIR"
tar -czf "${PREFIX_NAME}.tar.gz" "$PREFIX_NAME"
sha256sum "$PREFIX_NAME" "${PREFIX_NAME}.tar.gz" > "${PREFIX_NAME}.sha256"
)
file "$OUTPUT_DIR/$PREFIX_NAME"
ldd "$OUTPUT_DIR/$PREFIX_NAME" || true