summaryrefslogtreecommitdiffstats
path: root/.github/workflows/curl.yml
blob: a2974762dca2bbc6cd03058c6241fb69e97ca7b8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
name: build-libcurl-static

on: [push]

jobs:
  build-windows:
    runs-on: windows-2019
    defaults:
      run:
        shell: msys2 {0}
    strategy:
      fail-fast: false
      matrix:
        include: [
          { msystem: MINGW64, arch: x86_64 },
          { msystem: MINGW32, arch: i686   }
        ]
    steps:
    - uses: msys2/setup-msys2@v2
      with:
        msystem: ${{ matrix.msystem }}
        release: false
        update: false
        install: >-
          base-devel
          git
          mingw-w64-${{ matrix.arch }}-gcc
          make
          libtool
          autoconf
          automake-wrapper
          liblzma
    - 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.1.0.tar.bz2 https://github.com/curl/curl/releases/download/curl-8_1_0/curl-8.1.0.tar.bz2
          tar xjf curl-8.1.0.tar.bz2
    - name: configure curl
      run: |
          cd curl-8.1.0
          ./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-bindlocal --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.1.0/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@v3
      with:
        name: libcurl_${{ matrix.arch }}-${{ env.dest }}
        path: libcurl-static.tar