working-directory: src
shell: ${{ matrix.config.shell }}
steps:
- - uses: actions/checkout@v3
+ - uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up QEMU
if: matrix.config.base_image
- uses: docker/setup-qemu-action@v2
+ uses: docker/setup-qemu-action@v3
- name: Set up Docker Buildx
if: matrix.config.base_image
- uses: docker/setup-buildx-action@v2
+ uses: docker/setup-buildx-action@v3
- name: Build Docker container
if: matrix.config.base_image
FROM ${{ matrix.config.base_image }}
WORKDIR /app
RUN apk update && apk add make g++
- CMD sh make_sf.sh
+ CMD ["sh", "script.sh"]
EOF
- name: Download required macOS packages
- name: Check compiler
run: |
- if [ $COMP == ndk ]; then
- export PATH=${{ env.ANDROID_NDK_BIN }}:$PATH
+ if [ -z "${{ matrix.config.base_image }}" ]; then
+ if [ $COMP == ndk ]; then
+ export PATH=${{ env.ANDROID_NDK_BIN }}:$PATH
+ fi
+ $COMPILER -v
+ else
+ echo "$COMPILER -v" > script.sh
+ docker run --rm --platform ${{ matrix.config.platform }} -v ${{ github.workspace }}/src:/app sf_builder
fi
- $COMPILER -v
- name: Test help target
run: make help
- name: Test riscv64 build
if: matrix.config.run_riscv64_tests
run: |
- echo "export LDFLAGS='-static' && make clean && make -j2 ARCH=riscv64 build" > make_sf.sh
+ echo "export LDFLAGS='-static' && make clean && make -j2 ARCH=riscv64 build" > script.sh
docker run --rm --platform ${{ matrix.config.platform }} -v ${{ github.workspace }}/src:/app sf_builder
../tests/signature.sh $benchref
- name: Test ppc64 build
if: matrix.config.run_ppc64_tests
run: |
- echo "export LDFLAGS='-static' && make clean && make -j2 ARCH=ppc-64 build" > make_sf.sh
+ echo "export LDFLAGS='-static' && make clean && make -j2 ARCH=ppc-64 build" > script.sh
docker run --rm --platform ${{ matrix.config.platform }} -v ${{ github.workspace }}/src:/app sf_builder
../tests/signature.sh $benchref