mirror of
git://repo.or.cz/tinycc.git
synced 2026-06-17 23:54:16 +08:00
Some checks are pending
build and test / test-x86_64-linux (push) Waiting to run
build and test / test-x86_64-osx (push) Waiting to run
build and test / test-aarch64-osx (push) Waiting to run
build and test / test-x86_64-win32 (push) Waiting to run
build and test / test-i386-win32 (push) Waiting to run
build and test / test-armv7-linux (push) Waiting to run
build and test / test-aarch64-linux (push) Waiting to run
build and test / test-riscv64-linux (push) Waiting to run
workflows/build.yml: - win32/64: install mingw32/64 gcc on msys (because the default gcc installed elsewhere seems to use ucrt, producing incompatible fp printf formats.) tccgen.c: - cleanup funcs: save any lvalues from return expressions. Also use get_temp_local_var() which however was causing a problem on i386 because its gfunc_call() removes the arguments from vstack and by that defeats the 'in-use' tracking of get_temp_local_var(). Fixed by: i386/arm/arm64/x86_64-gen.c: - in gfunc_call(): save_regs before anything else, fixes problems seen in arm64/i386 tccpp.c: - allow arm asm specific use of '#' in macros libtcc.c: - organize -M options, and: tccpe.c: - move the subsystem option parsing from libtcc.c tccelf.c: - improved error handling in tcc_load_ldscript() lib/atomic.S: - TCC_TARGET_... not defined when building the lib - endbrNN security feature not supported by TCC tests/tests2/136_atomic_gcc_style.c: - never use standard assert() in tests
117 lines
3.1 KiB
YAML
117 lines
3.1 KiB
YAML
name: build and test
|
|
|
|
on:
|
|
push:
|
|
branches: [ mob ]
|
|
|
|
jobs:
|
|
test-x86_64-linux:
|
|
runs-on: ubuntu-22.04
|
|
timeout-minutes: 2
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: make & test tcc (x86_64-linux)
|
|
run: ./configure && make && make test -k
|
|
|
|
test-x86_64-osx:
|
|
runs-on: macos-13
|
|
timeout-minutes: 2
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: make & test tcc (x86_64-osx)
|
|
run: ./configure && make && make test -k
|
|
|
|
test-aarch64-osx:
|
|
runs-on: macos-14
|
|
timeout-minutes: 2
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: make & test tcc (aarch64-osx)
|
|
run: ./configure && make && make test -k
|
|
|
|
test-x86_64-win32:
|
|
runs-on: windows-2025
|
|
timeout-minutes: 4
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: make & test tcc (x86_64-win32)
|
|
shell: cmd
|
|
run: |
|
|
echo ::group:: setup msys mingw64-gcc
|
|
set MSYS2_PATH_TYPE=inherit
|
|
set MSYSTEM=MINGW64
|
|
set CHERE_INVOKING=yes
|
|
C:\msys64\usr\bin\bash -l -c "pacman -S --noconfirm mingw-w64-x86_64-gcc"
|
|
echo ::endgroup::
|
|
C:\msys64\usr\bin\bash -l -c "./configure && make && make test -k"
|
|
|
|
test-i386-win32:
|
|
runs-on: windows-2025
|
|
timeout-minutes: 4
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: make & test tcc (i386-win32)
|
|
shell: cmd
|
|
run: |
|
|
echo ::group:: setup msys mingw32-gcc
|
|
set MSYS2_PATH_TYPE=inherit
|
|
set MSYSTEM=MINGW32
|
|
set CHERE_INVOKING=yes
|
|
C:\msys64\usr\bin\bash -l -c "pacman -S --noconfirm mingw-w64-i686-gcc"
|
|
echo ::endgroup::
|
|
C:\msys64\usr\bin\bash -l -c "./configure && make all && make test -k"
|
|
|
|
test-armv7-linux:
|
|
runs-on: ubuntu-22.04
|
|
timeout-minutes: 8
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: uraimo/run-on-arch-action@v3
|
|
name: make & test tcc (armv7-linux)
|
|
with:
|
|
arch: armv7
|
|
distro: ubuntu22.04
|
|
githubToken: ${{ github.token }}
|
|
install: |
|
|
apt-get update -q -y
|
|
apt-get install -q -y gcc make
|
|
run: |
|
|
echo "::endgroup::" # flatten 'run container'
|
|
./configure && make && make test -k
|
|
|
|
test-aarch64-linux:
|
|
runs-on: ubuntu-22.04
|
|
timeout-minutes: 8
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: uraimo/run-on-arch-action@v3
|
|
name: make & test tcc (aarch64-linux)
|
|
with:
|
|
arch: aarch64
|
|
distro: ubuntu24.04
|
|
githubToken: ${{ github.token }}
|
|
install: |
|
|
apt-get update -q -y
|
|
apt-get install -q -y gcc make
|
|
run: |
|
|
echo "::endgroup::" # flatten 'run container'
|
|
./configure && make && make test -k
|
|
|
|
test-riscv64-linux:
|
|
runs-on: ubuntu-22.04
|
|
timeout-minutes: 8
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- uses: uraimo/run-on-arch-action@v3
|
|
name: make & test tcc (riscv64-linux)
|
|
with:
|
|
arch: riscv64
|
|
distro: ubuntu22.04
|
|
githubToken: ${{ github.token }}
|
|
install: |
|
|
apt-get update -q -y
|
|
apt-get install -q -y gcc make
|
|
run: |
|
|
echo "::endgroup::" # flatten 'run container'
|
|
./configure && make && make test -k
|