feat: bootstrap static musl build pipeline for iperf3
iperf3 static musl build / build-and-release (push) Failing after 16s
iperf3 static musl build / build-and-release (push) Failing after 16s
This commit is contained in:
Executable
+48
@@ -0,0 +1,48 @@
|
||||
#!/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
|
||||
Reference in New Issue
Block a user