ci: update workflow #18
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: DefaultCI | |
| on: | |
| push: | |
| branches: [master] | |
| pull_request: | |
| branches: [] | |
| jobs: | |
| build-windows-x32: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: TheMrMilchmann/setup-msvc-dev@v3 | |
| with: | |
| arch: x86 | |
| build-windows-x64: | |
| runs-on: windows-latest | |
| steps: | |
| - name: Add msbuild to PATH | |
| uses: microsoft/setup-msbuild@v2 | |
| - uses: TheMrMilchmann/setup-msvc-dev@v3 | |
| with: | |
| arch: x64 | |
| toolset: "12.0" | |
| build-debian-x32: | |
| runs-on: ubuntu-latest | |
| env: | |
| OPENSSL_SRC: https://github.com/openssl/openssl/releases/download/openssl-3.4.1/openssl-3.4.1.tar.gz | |
| CURL_SRC: https://github.com/curl/curl/releases/download/curl-8_12_1/curl-8.12.1.zip | |
| steps: | |
| - uses: actions/checkout@v4 | |
| name: checkout | |
| - name: add x86 architecture | |
| run: | | |
| sudo dpkg --add-architecture i386 && | |
| sudo apt-get update | |
| - name: install apt pkgs | |
| run: sudo apt-get install -y -f build-essential software-properties-common g++-multilib gcc-multilib libc6-dev libc6-dev:i386 libpsl-dev:i386 libpsl5t64:i386 unzip zip wget | |
| - name: unpack openssl x32 | |
| run: | | |
| wget -q $OPENSSL_SRC && | |
| tar xzf openssl-3.4.1.tar.gz | |
| - name: configure openssl x32 | |
| working-directory: openssl-3.4.1 | |
| run: setarch i386 sudo ./config --prefix=/usr/local/ -m32 no-ssl3 shared | |
| - name: make openssl x32 | |
| working-directory: openssl-3.4.1 | |
| run: make | |
| - name: install openssl x32 | |
| working-directory: openssl-3.4.1 | |
| run: make install | |
| - name: unpack curl x32 | |
| run: | | |
| wget -q $CURL_SRC && | |
| unzip -qq curl-8.12.1.zip | |
| - name: configure curl x32 | |
| working-directory: curl-8.12.1 | |
| run: CFLAGS=-m32 ./configure --prefix=/usr/local/ --without-librtmp --host=i686-pc-linux-gnu --disable-ftp --disable-file --disable-ldap --disable-ldaps --disable-rtsp --disable-dict --disable-telnet --disable-tftp --disable-pop3 --disable-imap --disable-smb --disable-smtp --disable-gopher --disable-manual --enable-ipv6 --disable-pthreads --enable-crypto-auth --enable-cookies --without-zlib --disable-threaded-resolver --without-brotli --with-ssl=/usr/local | |
| - name: make curl x32 | |
| working-directory: curl-8.12.1 | |
| run: make | |
| - name: install curl x32 | |
| working-directory: curl-8.12.1 | |
| run: make install | |
| - name: build x86 binary | |
| run: make linux32 | |
| - name: "test x86 binary" | |
| run: make testLinux32 |