name: riscv64_linux_gcc on: [push, pull_request] jobs: riscv64_linux_gcc: runs-on: ubuntu-20.04 timeout-minutes: 10 env: CC: /opt/riscv64-linux-musl-cross/bin/riscv64-linux-musl-gcc steps: - uses: actions/checkout@v3 - name: Retrieve test compression corpus run: | git clone https://github.com/ariya/compression-corpus.git cd compression-corpus cd enwik unzip enwik8.zip - run: sudo apt-get -y -qq update - run: sudo apt install -y qemu-user - name: Prepare cross-compiler run: | curl -O http://musl.cc/riscv64-linux-musl-cross.tgz tar xzf riscv64-linux-musl-cross.tgz -C /opt - name: Verify compiler version run: /opt/riscv64-linux-musl-cross/bin/riscv64-linux-musl-gcc --version - name: Perform round-trip tests run: | cd tests make test_roundtrip CFLAGS=-static file ./test_roundtrip qemu-riscv64 ./test_roundtrip - name: 'Build and run example: 6pack and 6unpack' run: | cd examples make CFLAGS=-static qemu-riscv64 ./6pack -v qemu-riscv64 ./6pack ../compression-corpus/enwik/enwik8.txt archive.6pk qemu-riscv64 ./6unpack -v qemu-riscv64 ./6unpack archive.6pk