Skip to content

build-libcurl-static #6

build-libcurl-static

build-libcurl-static #6

Workflow file for this run

name: build-libcurl-static
on: workflow_dispatch
jobs:
build-windows:
runs-on: windows-2019
defaults:
run:
shell: msys2 {0}
strategy:
fail-fast: false
matrix:
include: [
{ msystem: UCRT64, arch: x86_64, flavor: w64-ucrt },
{ msystem: MINGW64, arch: x86_64, flavor: w64 },
{ msystem: MINGW32, arch: i686, flavor: w64 }
]
steps:
- uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.msystem }}
release: false
update: false
install: >-
base-devel
git
mingw-${{ matrix.flavor }}-${{ matrix.arch }}-gcc
make
libtool
autoconf
automake-wrapper
liblzma
mingw-${{ matrix.flavor }}-${{ matrix.arch }}-openssl
- name: prepare environment
run: |
dest=`echo ${{ matrix.msystem }} |tr [:upper:] [:lower:]`
echo "dest=$dest" >> $GITHUB_ENV
echo "target_triplet=`gcc -dumpmachine`" >> $GITHUB_ENV
- name: fetch curl source
run: |
curl -Ls -o curl-8.10.1.tar.bz2 https://github.com/curl/curl/releases/download/curl-8_10_1/curl-8.10.1.tar.bz2
tar xjf curl-8.10.1.tar.bz2
- name: configure curl
run: |
cd curl-8.10.1
./configure --disable-ldap --disable-ldaps --disable-rtsp --disable-dict --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smb --disable-smtp --disable-gopher --disable-mqtt --disable-manual --disable-threaded-resolver --disable-pthreads --disable-sspi --disable-aws --disable-ntlm --disable-ntlm-wb --disable-tls-srp --disable-unix-sockets --disable-doh --disable-mime --disable-dnsshuffle --disable-alt-svc --disable-hsts --disable-websockets --with-openssl --without-brotli --without-libidn2 --without-ngtcp2 --without-quiche --without-msh3 --without-nghttp2 --without-libpsl
- name: build libcurl
run: |
CURDIR=`pwd`
cd curl-8.10.1/lib
make
cp .libs/libcurl.a .
cd ..
tar cf $CURDIR/libcurl-static.tar lib/libcurl.a include/curl/*.h
- name: publish artifact
uses: actions/upload-artifact@v4
with:
name: libcurl_${{ matrix.arch }}-${{ env.dest }}
path: libcurl-static.tar