make clean && make -j all MOREFLAGS="-Werror -DZSTD_NO_INLINE -DZSTD_STRIP_ERROR_STRINGS"
make clean && make check MOREFLAGS="-Werror -DZSTD_NO_INLINE -DZSTD_STRIP_ERROR_STRINGS"
-# No clear reason, as the same test works fine locally and on travisCI.
+
+ qemu-consistency:
+ name: QEMU ${{ matrix.name }}
+ runs-on: ubuntu-latest
+ strategy:
+ fail-fast: false # 'false' means Don't stop matrix workflows even if some matrix failed.
+ matrix:
+ include: [
+ { name: ARM, xcc_pkg: gcc-arm-linux-gnueabi, xcc: arm-linux-gnueabi-gcc, xemu_pkg: qemu-system-arm, xemu: qemu-arm-static },
+ { name: ARM64, xcc_pkg: gcc-aarch64-linux-gnu, xcc: aarch64-linux-gnu-gcc, xemu_pkg: qemu-system-arm, xemu: qemu-aarch64-static },
+ { name: PPC, xcc_pkg: gcc-powerpc-linux-gnu, xcc: powerpc-linux-gnu-gcc, xemu_pkg: qemu-system-ppc, xemu: qemu-ppc-static },
+ { name: PPC64LE, xcc_pkg: gcc-powerpc64le-linux-gnu, xcc: powerpc64le-linux-gnu-gcc, xemu_pkg: qemu-system-ppc, xemu: qemu-ppc64le-static },
+ { name: S390X, xcc_pkg: gcc-s390x-linux-gnu, xcc: s390x-linux-gnu-gcc, xemu_pkg: qemu-system-s390x, xemu: qemu-s390x-static },
+ { name: MIPS, xcc_pkg: gcc-mips-linux-gnu, xcc: mips-linux-gnu-gcc, xemu_pkg: qemu-system-mips, xemu: qemu-mips-static },
+ { name: M68K, xcc_pkg: gcc-m68k-linux-gnu, xcc: m68k-linux-gnu-gcc, xemu_pkg: qemu-system-m68k, xemu: qemu-m68k-static },
+ ]
+ env: # Set environment variables
+ XCC: ${{ matrix.xcc }}
+ XEMU: ${{ matrix.xemu }}
+ steps:
+ - uses: actions/checkout@v2 # https://github.com/actions/checkout
+ - name: apt update & install
+ run: |
+ sudo apt-get update
+ sudo apt-get install gcc-multilib g++-multilib qemu-utils qemu-user-static
+ sudo apt-get install ${{ matrix.xcc_pkg }} ${{ matrix.xemu_pkg }}
+ - name: Environment info
+ run: |
+ echo && which $XCC
+ echo && $XCC --version
+ echo && $XCC -v # Show built-in specs
+ echo && which $XEMU
+ echo && $XEMU --version
+ - name: ARM
+ if: ${{ matrix.name == 'ARM' }}
+ run: |
+ LDFLAGS="-static" CC=$XCC QEMU_SYS=$XEMU make clean check
+ - name: ARM64
+ if: ${{ matrix.name == 'ARM64' }}
+ run: |
+ LDFLAGS="-static" CC=$XCC QEMU_SYS=$XEMU make clean check
+ - name: PPC
+ if: ${{ matrix.name == 'PPC' }}
+ run: |
+ LDFLAGS="-static" CC=$XCC QEMU_SYS=$XEMU make clean check
+ - name: PPC64LE
+ if: ${{ matrix.name == 'PPC64LE' }}
+ run: |
+ LDFLAGS="-static" CC=$XCC QEMU_SYS=$XEMU make clean check
+ - name: S390X
+ if: ${{ matrix.name == 'S390X' }}
+ run: |
+ LDFLAGS="-static" CC=$XCC QEMU_SYS=$XEMU make clean check
+ - name: MIPS
+ if: ${{ matrix.name == 'MIPS' }}
+ run: |
+ LDFLAGS="-static" CC=$XCC QEMU_SYS=$XEMU make clean check
+ - name: M68K
+ if: ${{ matrix.name == 'M68K' }}
+ continue-on-error: true # disable reporting errors (alignment issues)
+ run: |
+ LDFLAGS="-static" CC=$XCC QEMU_SYS=$XEMU make clean check
+
+
+ # This test currently fails on Github Actions specifically.
++# Possible reason : TTY emulation.
++# Note that the same test works fine locally and on travisCI.
+ # This will have to be fixed before transfering the test to GA.
+ # versions-compatibility:
+ # runs-on: ubuntu-latest
+ # steps:
+ # - uses: actions/checkout@v2
+ # - name: Versions Compatibility Test
+ # run: |
+ # make -C tests versionsTest
+
+
# For reference : icc tests
# icc tests are currently failing on Github Actions, likely to issues during installation stage
# To be fixed later