ci: run the full V test suite on arm64 (#12865)
parent
6ff953d936
commit
8a34fb7857
71
.cirrus.yml
71
.cirrus.yml
|
@ -1,7 +1,8 @@
|
|||
freebsd_instance:
|
||||
image_family: freebsd-13-0
|
||||
|
||||
task:
|
||||
freebsd_task:
|
||||
name: Code CI / freebsd
|
||||
install_script: pkg install -y git
|
||||
script: |
|
||||
echo 'Building V'
|
||||
|
@ -12,3 +13,71 @@ task:
|
|||
##tcc -v -v
|
||||
echo 'Build cmd/tools/fast'
|
||||
cd cmd/tools/fast && ../../../v fast.v && ./fast -clang
|
||||
|
||||
|
||||
arm64_task:
|
||||
name: Code CI / arm64-ubuntu-tcc
|
||||
arm_container:
|
||||
image: ubuntu:latest
|
||||
install_script: apt-get update -y && apt-get install --quiet -y build-essential pkg-config wget git valgrind libsqlite3-dev libssl-dev libxi-dev libxcursor-dev libfreetype6-dev libxi-dev libxcursor-dev libgl-dev xfonts-75dpi xfonts-base libmysqlclient-dev libpq-dev
|
||||
env:
|
||||
DEBIAN_FRONTEND: noninteractive
|
||||
VFLAGS: -cc tcc -no-retry-compilation
|
||||
VJOBS: 2
|
||||
script: |
|
||||
set -e
|
||||
|
||||
wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_arm64.deb
|
||||
apt install --fix-missing -y ./wkhtmltox_0.12.6-1.focal_arm64.deb
|
||||
|
||||
# ensure that a V binary can be built, even if tcc has broken for some reason
|
||||
VFLAGS='-cc gcc' make
|
||||
|
||||
./v -g self
|
||||
./v -g self
|
||||
|
||||
./v -d debug_malloc -d debug_realloc -o v cmd/v
|
||||
./v -cg -cstrict -o v cmd/v
|
||||
#Test v->c
|
||||
thirdparty/tcc/tcc.exe -version
|
||||
./v -cg -o v cmd/v # Make sure vtcc can build itself twice
|
||||
|
||||
# - name: v self compilation
|
||||
./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
|
||||
|
||||
# - name: v self compilation with -skip-unused
|
||||
./v -skip-unused -o v2 cmd/v && ./v2 -skip-unused -o v3 cmd/v && ./v3 -skip-unused -o v4 cmd/v
|
||||
|
||||
# - name: v doctor
|
||||
./v doctor
|
||||
|
||||
# - name: Verify `v test` works
|
||||
./v cmd/tools/test_if_v_test_system_works.v
|
||||
./cmd/tools/test_if_v_test_system_works
|
||||
|
||||
# - name: Self tests
|
||||
./v -silent test-self
|
||||
|
||||
## - name: Self tests (-cstrict)
|
||||
## ./v -cstrict test-self
|
||||
|
||||
# - name: Test time functions in a timezone UTC-12
|
||||
TZ=Etc/GMT+12 ./v test vlib/time/
|
||||
# - name: Test time functions in a timezone UTC-3
|
||||
TZ=Etc/GMT+3 ./v test vlib/time/
|
||||
# - name: Test time functions in a timezone UTC+3
|
||||
TZ=Etc/GMT-3 ./v test vlib/time/
|
||||
# - name: Test time functions in a timezone UTC+12
|
||||
TZ=Etc/GMT-12 ./v test vlib/time/
|
||||
# - name: Test time functions in a timezone using daylight saving (Europe/Paris)
|
||||
TZ=Europe/Paris ./v test vlib/time/
|
||||
# - name: Build examples
|
||||
./v -W build-examples
|
||||
# - name: Test building v tools
|
||||
./v -W build-tools
|
||||
# - name: Test v binaries
|
||||
./v build-vbinaries
|
||||
# - name: Run a VSH script
|
||||
./v run examples/v_script.vsh
|
||||
# - name: Test v tutorials
|
||||
./v tutorials/building_a_simple_web_blog_with_vweb/code/blog
|
||||
|
|
|
@ -114,49 +114,6 @@ jobs:
|
|||
- name: Build cmd/tools/fast
|
||||
run: cd cmd/tools/fast && ../../../v fast.v && ./fast
|
||||
|
||||
ubuntu-tcc-arm64:
|
||||
needs: no-scheduling
|
||||
runs-on: ubuntu-20.04
|
||||
timeout-minutes: 121
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- uses: uraimo/run-on-arch-action@v2.0.5
|
||||
name: Run commands
|
||||
id: runcmd
|
||||
with:
|
||||
arch: aarch64
|
||||
distro: ubuntu20.04
|
||||
env: |
|
||||
VFLAGS: -cc tcc -no-retry-compilation -g
|
||||
|
||||
run: |
|
||||
# - name: Install dependencies
|
||||
apt-get update -y
|
||||
apt-get install --quiet -y build-essential git
|
||||
|
||||
## -name: Build v
|
||||
make
|
||||
./v -d debug_malloc -d debug_realloc -o v cmd/v
|
||||
./v -cg -cstrict -o v cmd/v
|
||||
# Test v -realloc arena allocation
|
||||
./v -o vrealloc -prealloc cmd/v && ./vrealloc -o v3 cmd/v && ./v3 -o v4 cmd/v
|
||||
#Test v->c
|
||||
thirdparty/tcc/tcc.exe -version
|
||||
./v -cg -o v cmd/v # Make sure vtcc can build itself twice
|
||||
|
||||
# - name: v self compilation
|
||||
./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
|
||||
|
||||
# - name: v self compilation with -skip-unused
|
||||
./v -skip-unused -o v2 cmd/v && ./v2 -skip-unused -o v3 cmd/v && ./v3 -skip-unused -o v4 cmd/v
|
||||
|
||||
# - name: v doctor
|
||||
./v doctor
|
||||
|
||||
# TODO: run the full V test suite
|
||||
# qemu is very slow, and it also sometimes produces failures that do not occur on real CPUs
|
||||
|
||||
|
||||
ubuntu-tcc-boehm-gc:
|
||||
needs: no-scheduling
|
||||
runs-on: ubuntu-20.04
|
||||
|
|
|
@ -10,6 +10,7 @@ const (
|
|||
'/usr/local/lib/pkgconfig',
|
||||
'/usr/local/share/pkgconfig',
|
||||
'/usr/lib/x86_64-linux-gnu/pkgconfig',
|
||||
'/usr/lib/aarch64-linux-gnu/pkgconfig',
|
||||
'/usr/lib64/pkgconfig',
|
||||
'/usr/lib/pkgconfig',
|
||||
'/usr/share/pkgconfig',
|
||||
|
|
Loading…
Reference in New Issue