From 7934d0d408de6a19885bd06e7942896e2034cfa3 Mon Sep 17 00:00:00 2001 From: Abhinav Mangla Date: Wed, 7 Jan 2026 00:41:59 +0530 Subject: [PATCH] fix: remove autoreconf to prevent hang on ARM platforms (#121) The autoreconf command hangs on ARM platforms due to a known bash/libtool/autoconf interaction issue. Since the curl tarball already includes a pre-generated configure script, autoreconf is unnecessary. - Remove autoreconf call from preinstall.sh - Remove autoreconf call from Dockerfile.native - Add check for missing configure script in preinstall.sh --- Dockerfile.native | 5 +++-- scripts/preinstall.sh | 9 ++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Dockerfile.native b/Dockerfile.native index 02573b5..184b6d9 100644 --- a/Dockerfile.native +++ b/Dockerfile.native @@ -32,8 +32,9 @@ RUN cd /tmp && \ # Build curl WORKDIR /tmp/curl -RUN autoreconf -fiv && \ - CFLAGS="$CURL_CFLAGS" LDFLAGS="$CURL_LDFLAGS" ./configure \ +# Skip autoreconf - the curl tarball includes a pre-generated configure script +# Running autoreconf hangs on ARM platforms due to bash/libtool/autoconf issue +RUN CFLAGS="$CURL_CFLAGS" LDFLAGS="$CURL_LDFLAGS" ./configure \ --prefix /build/deps \ --disable-alt-svc \ --disable-ares \ diff --git a/scripts/preinstall.sh b/scripts/preinstall.sh index 1372153..d5153e5 100755 --- a/scripts/preinstall.sh +++ b/scripts/preinstall.sh @@ -50,9 +50,12 @@ fi echo "Building curl..." ( cd "$CURL_DIR" - # Only run autoreconf if configure doesn't exist or is older than configure.ac - if [ ! -f configure ] || [ configure.ac -nt configure ]; then - autoreconf -fiv + # The curl tarball includes a pre-generated configure script. + # We skip autoreconf as it hangs on ARM platforms due to a known + # bash/libtool/autoconf interaction issue. + if [ ! -f configure ]; then + echo "Error: configure script not found in curl archive" >&2 + exit 1 fi ./configure \ --prefix "$ARTIFACTS_DIR" \