Builds the native C dependencies that AmxxEasyHttp statically links on Linux (zlib, OpenSSL, c-ares, curl) as 32-bit (i386) static archives targeting Ubuntu 14.04 / glibc 2.19, and publishes them as a GitHub release. AmxxEasyHttp consumes a pinned release via FetchContent.
Pinned versions live in versions.env.
Every archive is built with -m32 -fPIC -Wa,--noexecstack -Wl,-z,noexecstack
(i386, position-independent, non-exec-stack for glibc 2.41+), using GCC 9 from
the ubuntu-toolchain-r/test PPA against the Ubuntu 14.04 system glibc (2.19).
curl is configured --with-openssl --with-zlib --enable-ares with all other
features disabled.
Bump versions.env, then push a tag. The workflow builds in an ubuntu:14.04
container and attaches amxx-ezhttp-deps-linux-i386.tar.gz (+ .sha256) to the
release:
git tag deps-zlib-1.3.2_openssl-3.5.6_cares-1.34.6_curl-8.20.0
git push --tagsThen point AmxxEasyHttp at it via DEPS_TAG / DEPS_SHA256 in its
.github/deps.lock.
bash scripts/fetch-sources.sh
docker build -t ezhttp-deps .
docker run --rm -v "$PWD":/deps ezhttp-deps # -> ./artifacts