ci: use v instead of ./v in the platform linux/macos/windows/_ci.yml files (#21454)

This commit is contained in:
Delyan Angelov 2024-05-07 21:33:23 +03:00 committed by GitHub
parent 6cc096a4b3
commit 279405a36e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 205 additions and 199 deletions

View file

@ -29,83 +29,83 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Build v
run: make -j4 && ./v symlink -githubci
- name: Build v with -prealloc
run: |
echo $VFLAGS
make -j4 && ./v symlink -githubci
./v -d debug_malloc -d debug_realloc -o v cmd/v
./v -cg -cstrict -o v cmd/v
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
v -o vrealloc -prealloc cmd/v && ./vrealloc -o v3 cmd/v && ./v3 -o v4 cmd/v
- name: All code is formatted
run: ./v test-cleancode
run: v test-cleancode
- name: Install dependencies for examples and tools
run: |
./v retry -- sudo apt update
./v retry -- sudo apt install --quiet -y libssl-dev sqlite3 libsqlite3-dev valgrind
./v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
v retry -- sudo apt update
v retry -- sudo apt install --quiet -y libssl-dev sqlite3 libsqlite3-dev valgrind
v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
# The following is needed for examples/wkhtmltopdf.v
./v retry -- wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb
./v retry -- sudo apt install --quiet -y xfonts-75dpi xfonts-base
./v retry -- sudo apt install --quiet -y expect
./v retry -- sudo dpkg -i wkhtmltox_0.12.6-1.focal_amd64.deb
v retry -- wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.focal_amd64.deb
v retry -- sudo apt install --quiet -y xfonts-75dpi xfonts-base
v retry -- sudo apt install --quiet -y expect
v retry -- sudo dpkg -i wkhtmltox_0.12.6-1.focal_amd64.deb
- name: Test v->c
run: |
thirdparty/tcc/tcc.exe -version
./v -cg -o v cmd/v # Make sure vtcc can build itself twice
# ./v test-all
v -cg -o v cmd/v # Make sure vtcc can build itself twice
# v test-all
- name: v self compilation
run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
run: v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
- name: v self compilation with -skip-unused
run: ./v -skip-unused -o v2 cmd/v && ./v2 -skip-unused -o v3 cmd/v && ./v3 -skip-unused -o v4 cmd/v
run: v -skip-unused -o v2 cmd/v && ./v2 -skip-unused -o v3 cmd/v && ./v3 -skip-unused -o v4 cmd/v
- name: v doctor
run: ./v doctor
run: v doctor
- name: Verify `v test` works
run: |
echo $VFLAGS
./v cmd/tools/test_if_v_test_system_works.v
v cmd/tools/test_if_v_test_system_works.v
./cmd/tools/test_if_v_test_system_works
- name: Test pure V math module
run: ./v -exclude @vlib/math/*.c.v test vlib/math/
run: v -exclude @vlib/math/*.c.v test vlib/math/
- name: Self tests
run: ./v test-self vlib
run: v test-self vlib
# - name: Self tests (-cstrict)
# run: V_CI_CSTRICT=1 ./v -cstrict test-self vlib
# run: V_CI_CSTRICT=1 v -cstrict test-self vlib
- name: Build examples
run: ./v -N -W build-examples
run: v -N -W build-examples
- name: Run the submodule example, using a relative path
run: ./v -W run examples/submodule
run: v -W run examples/submodule
- name: Build v tools
run: ./v -N -W build-tools
run: v -N -W build-tools
- name: Build v binaries
run: ./v -N -W build-vbinaries
run: v -N -W build-vbinaries
- name: Build benches
run: ./v should-compile-all vlib/v/tests/bench/
run: v should-compile-all vlib/v/tests/bench/
- name: Run a VSH script
run: ./v run examples/v_script.vsh
run: v run examples/v_script.vsh
- name: Test v tutorials
run: ./v tutorials/building_a_simple_web_blog_with_vweb/code/blog
run: v tutorials/building_a_simple_web_blog_with_vweb/code/blog
- name: Build cmd/tools/fast
run: cd cmd/tools/fast && ../../../v fast.v && ./fast
run: cd cmd/tools/fast && v fast.v && ./fast
- name: V self compilation with -usecache
run: |
unset VFLAGS
./v -usecache examples/hello_world.v && examples/hello_world
./v -o v2 -usecache cmd/v
v -usecache examples/hello_world.v && examples/hello_world
v -o v2 -usecache cmd/v
./v2 -o v3 -usecache cmd/v
./v3 version
./v3 -o tetris -usecache examples/tetris/tetris.v
- name: Test password input
run: ./v test examples/password/
run: v test examples/password/
- name: Test readline
run: ./v test examples/readline/
run: v test examples/readline/
- name: Test leak detector
run: |
./v -gc boehm_leak -o testcase_leak vlib/v/tests/testcase_leak.vv
v -gc boehm_leak -o testcase_leak vlib/v/tests/testcase_leak.vv
./testcase_leak 2>leaks.txt
grep "Found 1 leaked object" leaks.txt && grep -P ", sz=\s?1000," leaks.txt
- name: Test leak detector not being active for normal compile
run: |
./v -o testcase_leak vlib/v/tests/testcase_leak.vv
v -o testcase_leak vlib/v/tests/testcase_leak.vv
./testcase_leak 2>leaks.txt
[ "$(stat -c %s leaks.txt)" = "0" ]
@ -117,84 +117,84 @@ jobs:
- name: Build V
run: make -j4 && ./v symlink -githubci
- name: All code is formatted
run: ./v test-cleancode
run: v test-cleancode
- name: Install dependencies for examples and tools
run: |
./v retry -- sudo apt update
./v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind
./v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
v retry -- sudo apt update
v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind
v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
- name: Recompile V with -cstrict and gcc
run: v -cc gcc -cg -cstrict -o v cmd/v
- name: Valgrind v.c
run: valgrind --error-exitcode=1 ./v -o v.c cmd/v
run: valgrind --error-exitcode=1 v -o v.c cmd/v
- name: Run sanitizers
run: |
./v -o v2 cmd/v -cflags -fsanitize=thread
./v -o v3 cmd/v -cflags "-fsanitize=undefined -fno-sanitize=alignment"
v -o v2 cmd/v -cflags -fsanitize=thread
v -o v3 cmd/v -cflags "-fsanitize=undefined -fno-sanitize=alignment"
UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v2 -o v.c cmd/v
UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v3 -o v.c cmd/v
# - name: Test V
# run: ./v test-all
# run: v test-all
# - name: Test v binaries
# run: ./v -N -W build-vbinaries
# run: v -N -W build-vbinaries
# - name: Test v->js
# run: ./v -o hi.js examples/hello_v_js.v && node hi.js
# run: v -o hi.js examples/hello_v_js.v && node hi.js
# - name: Build Vorum
# run: ./v retry -- git clone --depth 1 https://github.com/vlang/vorum && cd vorum && ../v . && cd ..
# run: v retry -- git clone --depth 1 https://github.com/vlang/vorum && cd vorum && v . && cd ..
- name: Freestanding
run: ./v -freestanding run vlib/os/bare/bare_example_linux.v
run: v -freestanding run vlib/os/bare/bare_example_linux.v
- name: V self compilation
run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
run: v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
- name: V self compilation with -usecache
run: |
unset VFLAGS
./v -usecache examples/hello_world.v && examples/hello_world
./v -o v2 -usecache cmd/v
v -usecache examples/hello_world.v && examples/hello_world
v -o v2 -usecache cmd/v
./v2 -o v3 -usecache cmd/v
./v3 version
./v3 -o tetris -usecache examples/tetris/tetris.v
- name: Verify `v test` works
run: |
echo $VFLAGS
./v cmd/tools/test_if_v_test_system_works.v
v cmd/tools/test_if_v_test_system_works.v
./cmd/tools/test_if_v_test_system_works
- name: Test pure V math module
run: ./v -exclude @vlib/math/*.c.v test vlib/math/
run: v -exclude @vlib/math/*.c.v test vlib/math/
- name: Self tests
run: ./v test-self vlib
run: v test-self vlib
- name: Self tests (-prod)
run: ./v -o vprod -prod cmd/v && ./vprod test-self vlib
run: v -o vprod -prod cmd/v && ./vprod test-self vlib
- name: Self tests (-cstrict)
run: VTEST_JUST_ESSENTIAL=1 V_CI_CSTRICT=1 ./v -cc gcc -cstrict test-self vlib
run: VTEST_JUST_ESSENTIAL=1 V_CI_CSTRICT=1 v -cc gcc -cstrict test-self vlib
- name: Build examples
run: ./v -N -W build-examples
run: v -N -W build-examples
- name: Build tetris with -autofree
run: ./v -autofree -o tetris examples/tetris/tetris.v
run: v -autofree -o tetris examples/tetris/tetris.v
- name: Build blog tutorial with -autofree
run: ./v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog
run: v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog
- name: Build option_test.c.v with -autofree
run: ./v -autofree vlib/v/tests/option_test.c.v
run: v -autofree vlib/v/tests/option_test.c.v
- name: V self compilation with -parallel-cc
run: |
./v -o v2 -parallel-cc cmd/v
v -o v2 -parallel-cc cmd/v
- name: Build modules
run: |
./v build-module vlib/os
./v build-module vlib/builtin
./v build-module vlib/strconv
./v build-module vlib/time
./v build-module vlib/term
./v build-module vlib/math
./v build-module vlib/strings
./v build-module vlib/v/token
./v build-module vlib/v/ast
./v build-module vlib/v/parser
./v build-module vlib/v/gen/c
./v build-module vlib/v/depgraph
./v build-module vlib/os/cmdline
v build-module vlib/os
v build-module vlib/builtin
v build-module vlib/strconv
v build-module vlib/time
v build-module vlib/term
v build-module vlib/math
v build-module vlib/strings
v build-module vlib/v/token
v build-module vlib/v/ast
v build-module vlib/v/parser
v build-module vlib/v/gen/c
v build-module vlib/v/depgraph
v build-module vlib/os/cmdline
- name: native machine code generation
run: |
./v -o vprod -prod cmd/v
v -o vprod -prod cmd/v
cd cmd/tools
echo "Generating a 1m line V file..."
../../vprod gen1m.v
@ -205,11 +205,11 @@ jobs:
./1m
ls
- name: compile vdoctor.v with -skip-unused and -prod
run: ./v -showcc -skip-unused -cc gcc -prod cmd/tools/vdoctor.v
run: v -showcc -skip-unused -cc gcc -prod cmd/tools/vdoctor.v
- name: compile vup.v with -skip-unused and -prod
run: ./v -showcc -skip-unused -cc gcc -prod cmd/tools/vup.v
run: v -showcc -skip-unused -cc gcc -prod cmd/tools/vup.v
# - run: cd examples/native && ../../v -native hello_world.v && ./hello_world
# - run: cd examples/native && v -native hello_world.v && ./hello_world
# - name: Coveralls GitHub Action
# uses: coverallsapp/github-action@v1.0.1
# with:
@ -225,75 +225,75 @@ jobs:
- name: Build V
run: make -j4 && ./v symlink -githubci
- name: All code is formatted
run: ./v test-cleancode
run: v test-cleancode
- name: Install dependencies for examples and tools
run: |
./v retry -- sudo apt update
./v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind
./v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
./v retry -- sudo apt install --quiet -y clang
v retry -- sudo apt update
v retry -- sudo apt install --quiet -y postgresql libpq-dev libssl-dev sqlite3 libsqlite3-dev valgrind
v retry -- sudo apt install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
v retry -- sudo apt install --quiet -y clang
- name: Recompile V with -cstrict and clang
run: v -cc clang -cg -cstrict -o v cmd/v
- name: Valgrind
run: valgrind --error-exitcode=1 ./v -o v.c cmd/v
run: valgrind --error-exitcode=1 v -o v.c cmd/v
- name: Run sanitizers
run: |
./v -o v2 cmd/v -cflags -fsanitize=memory
./v -o v3 cmd/v -cflags -fsanitize=thread
./v -o v4 cmd/v -cflags -fsanitize=undefined
./v -o v5 cmd/v -cflags -fsanitize=address,pointer-compare,pointer-subtract
v -o v2 cmd/v -cflags -fsanitize=memory
v -o v3 cmd/v -cflags -fsanitize=thread
v -o v4 cmd/v -cflags -fsanitize=undefined
v -o v5 cmd/v -cflags -fsanitize=address,pointer-compare,pointer-subtract
UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v2 -o v.c cmd/v
UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v3 -o v.c cmd/v
UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v4 -o v.c cmd/v
ASAN_OPTIONS=detect_leaks=0 UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v5 -o v.c cmd/v
- name: v self compilation
run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
run: v -o v2 cmd/v && ./v2 -o v3 cmd/v && ./v3 -o v4 cmd/v
- name: v self compilation with -usecache
run: |
unset VFLAGS
./v -usecache examples/hello_world.v && examples/hello_world
./v -o v2 -usecache cmd/v
v -usecache examples/hello_world.v && examples/hello_world
v -o v2 -usecache cmd/v
./v2 -o v3 -usecache cmd/v
./v3 version
./v3 -o tetris -usecache examples/tetris/tetris.v
- name: Verify `v test` works
run: |
echo $VFLAGS
./v cmd/tools/test_if_v_test_system_works.v
v cmd/tools/test_if_v_test_system_works.v
./cmd/tools/test_if_v_test_system_works
- name: Test pure V math module
run: ./v -exclude @vlib/math/*.c.v test vlib/math/
run: v -exclude @vlib/math/*.c.v test vlib/math/
- name: Self tests
run: ./v test-self vlib
run: v test-self vlib
- name: Self tests (vprod)
run: ./v -o vprod -prod cmd/v && ./vprod test-self vlib
run: v -o vprod -prod cmd/v && ./vprod test-self vlib
- name: Self tests (-cstrict)
run: VTEST_JUST_ESSENTIAL=1 V_CI_CSTRICT=1 ./vprod -cstrict test-self vlib
- name: Build examples
run: ./v -N -W build-examples
run: v -N -W build-examples
- name: Build examples with -autofree
run: |
./v -autofree -experimental -o tetris examples/tetris/tetris.v
v -autofree -experimental -o tetris examples/tetris/tetris.v
- name: Build modules
run: |
./v build-module vlib/os
./v build-module vlib/builtin
./v build-module vlib/strconv
./v build-module vlib/time
./v build-module vlib/term
./v build-module vlib/math
./v build-module vlib/strings
./v build-module vlib/v/token
./v build-module vlib/v/ast
./v build-module vlib/v/parser
./v build-module vlib/v/gen/c
./v build-module vlib/v/depgraph
./v build-module vlib/os/cmdline
v build-module vlib/os
v build-module vlib/builtin
v build-module vlib/strconv
v build-module vlib/time
v build-module vlib/term
v build-module vlib/math
v build-module vlib/strings
v build-module vlib/v/token
v build-module vlib/v/ast
v build-module vlib/v/parser
v build-module vlib/v/gen/c
v build-module vlib/v/depgraph
v build-module vlib/os/cmdline
- name: native machine code generation
run: |
./v -o vprod -prod cmd/v
v -o vprod -prod cmd/v
cd cmd/tools
echo "Generating a 1m line V file..."
../../vprod gen1m.v
@ -315,7 +315,7 @@ jobs:
# - name: Build V
# run: make -j4
# - name: V self compilation with -autofree
# run: ./v -o v2 -autofree cmd/v && ./v2 -o v3 -autofree cmd/v && ./v3 -o v4 -autofree cmd/v
# run: v -o v2 -autofree cmd/v && ./v2 -o v3 -autofree cmd/v && ./v3 -o v4 -autofree cmd/v
# musl:
# runs-on: ubuntu-20.04
@ -329,14 +329,14 @@ jobs:
# run: echo $VFLAGS && make -j4 && ./v symlink -githubci
# - uses: actions/checkout@v4
# - name: Install dependencies for examples and tools
# run: ./v retry -- sudo apt install --quiet -y musl musl-tools libssl-dev sqlite3 libsqlite3-dev valgrind
# run: v retry -- sudo apt install --quiet -y musl musl-tools libssl-dev sqlite3 libsqlite3-dev valgrind
# - name: Recompile V with -cg
# run: ./v -cg -o v cmd/v
# run: v -cg -o v cmd/v
# # - name: Test v binaries
# # run: ./v -N -W build-vbinaries
# # run: v -N -W build-vbinaries
# # - name: Test v->js
# # run: ./v -o hi.js examples/hello_v_js.v && node hi.js
# # run: v -o hi.js examples/hello_v_js.v && node hi.js
# - name: quick debug
# run: ./v -stats vlib/strconv/format_test.v
# run: v -stats vlib/strconv/format_test.v
# - name: Self tests
# run: ./v test-self vlib
# run: v test-self vlib

View file

@ -34,23 +34,25 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Build V
run: make -j4 && ./v symlink -githubci && ./v -cg -cstrict -o v cmd/v
run: make -j4 && ./v symlink -githubci
- name: Build V with -cstrict
run: v -cg -cstrict -o v cmd/v
- name: All code is formatted
run: VJOBS=1 ./v test-cleancode
run: VJOBS=1 v test-cleancode
- name: Install dependencies
run: |
echo "PKG_CONFIG_PATH is '$PKG_CONFIG_PATH'"
./v retry -- brew install libpq openssl mercurial
v retry -- brew install libpq openssl mercurial
export LIBRARY_PATH="$LIBRARY_PATH:/usr/local/opt/openssl/lib/"
echo "LIBRARY_PATH is '$LIBRARY_PATH'"
- name: Run sanitizers
run: |
./v -o v2 cmd/v -cflags -fsanitize=undefined
v -o v2 cmd/v -cflags -fsanitize=undefined
UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 ./v2 -o v.c cmd/v
- name: Build V using V
run: ./v -o v2 cmd/v && ./v2 -o v3 cmd/v
run: v -o v2 cmd/v && ./v2 -o v3 cmd/v
- name: Test symlink
run: ./v symlink
run: v symlink
# - name: Set up pg database
# run: |
# pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
@ -58,42 +60,42 @@ jobs:
# psql -d postgres -c 'create database customerdb;'
# psql -d customerdb -f examples/database/pg/mydb.sql
# - name: Test v->c
# run: ./v test-all
# run: v test-all
# - name: Test v binaries
# run: ./v build-vbinaries
# run: v build-vbinaries
# - name: Test v->js
# run: ./v -o hi.js examples/hello_v_js.v && node hi.js
# run: v -o hi.js examples/hello_v_js.v && node hi.js
- name: Verify `v test` works
run: |
echo $VFLAGS
./v cmd/tools/test_if_v_test_system_works.v
v cmd/tools/test_if_v_test_system_works.v
./cmd/tools/test_if_v_test_system_works
- name: Test pure V math module
run: ./v -exclude @vlib/math/*.c.v test vlib/math/
run: v -exclude @vlib/math/*.c.v test vlib/math/
- name: Self tests
run: VJOBS=1 ./v test-self vlib
run: VJOBS=1 v test-self vlib
- name: Build examples
run: ./v build-examples
run: v build-examples
- name: Build tetris with -autofree
run: ./v -autofree -o tetris examples/tetris/tetris.v
run: v -autofree -o tetris examples/tetris/tetris.v
- name: Build blog tutorial with -autofree
run: ./v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog
run: v -autofree -o blog tutorials/building_a_simple_web_blog_with_vweb/code/blog
- name: Build examples with -prod
run: |
./v -prod examples/news_fetcher.v
v -prod examples/news_fetcher.v
- name: v doctor
run: |
./v doctor
v doctor
- name: Test ved
run: |
./v retry -- git clone --depth 1 https://github.com/vlang/ved
v retry -- git clone --depth 1 https://github.com/vlang/ved
cd ved && ../v -o ved .
../v -autofree .
../v -prod .
cd ..
- name: Build V UI examples
run: |
./v retry -- git clone --depth 1 https://github.com/vlang/ui
v retry -- git clone --depth 1 https://github.com/vlang/ui
cd ui
mkdir -p ~/.vmodules
ln -s $(pwd) ~/.vmodules/ui
@ -103,15 +105,15 @@ jobs:
- name: V self compilation with -usecache
run: |
unset VFLAGS
./v -usecache examples/hello_world.v && examples/hello_world
./v -o v2 -usecache cmd/v
v -usecache examples/hello_world.v && examples/hello_world
v -o v2 -usecache cmd/v
./v2 -o v3 -usecache cmd/v
./v3 version
./v3 -o tetris -usecache examples/tetris/tetris.v
- name: V self compilation with -parallel-cc
run: |
./v -o v2 -parallel-cc cmd/v
v -o v2 -parallel-cc cmd/v
- name: Test password input
run: ./v test examples/password/
run: v test examples/password/
- name: Test readline
run: ./v test examples/readline/
run: v test examples/readline/

View file

@ -33,44 +33,45 @@ jobs:
run: |
gcc --version
.\make.bat -gcc
.\v.exe symlink -githubci
- name: All code is formatted
run: ./v test-cleancode
run: v test-cleancode
- name: Test new v.c
run: |
.\v.exe -o v.c cmd/v
v -o v.c cmd/v
gcc -Werror -municode -w v.c -lws2_32
- name: Install dependencies
run: |
.\v.exe setup-freetype
v setup-freetype
.\.github\workflows\windows-install-sqlite.bat
- name: v doctor
run: |
./v doctor
v doctor
- name: Verify `v test` works
run: |
echo $VFLAGS
./v cmd/tools/test_if_v_test_system_works.v
v cmd/tools/test_if_v_test_system_works.v
./cmd/tools/test_if_v_test_system_works
- name: Test pure V math module
run: ./v -exclude @vlib/math/*.c.v test vlib/math/
run: v -exclude @vlib/math/*.c.v test vlib/math/
- name: Self tests
run: .\v.exe test-self vlib
run: v test-self vlib
# - name: Test
# run: .\v.exe test-all
# run: v test-all
- name: Build option_test.c.v with -autofree
run: .\v.exe -autofree vlib/v/tests/option_test.c.v
run: v -autofree vlib/v/tests/option_test.c.v
- name: Test v->js
run: ./v -o hi.js examples/hello_v_js.v && node hi.js
run: v -o hi.js examples/hello_v_js.v && node hi.js
- name: Test v binaries
run: ./v build-vbinaries
run: v build-vbinaries
- name: Build examples
run: ./v build-examples
run: v build-examples
- name: v2 self compilation
run: ./v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
- name: compile vdoctor.v with -skip-unused and -prod
run: ./v -showcc -skip-unused -prod cmd/tools/vdoctor.v
run: v -showcc -skip-unused -prod cmd/tools/vdoctor.v
- name: compile vup.v with -skip-unused and -prod
run: ./v -showcc -skip-unused -prod cmd/tools/vup.v
run: v -showcc -skip-unused -prod cmd/tools/vup.v
msvc:
runs-on: windows-2019
@ -85,37 +86,39 @@ jobs:
echo %VFLAGS%
echo $VFLAGS
.\make.bat -msvc
.\v.exe -cflags /WX self
.\v.exe symlink -githubci
- name: Build V with WX
run: v -cflags /WX self
- name: All code is formatted
run: ./v test-cleancode
run: v test-cleancode
- name: Install dependencies
run: |
.\v.exe setup-freetype
v setup-freetype
.\.github\workflows\windows-install-sqlite.bat
- name: v doctor
run: |
./v doctor
v doctor
- name: Verify `v test` works
run: |
echo $VFLAGS
./v cmd/tools/test_if_v_test_system_works.v
v cmd/tools/test_if_v_test_system_works.v
./cmd/tools/test_if_v_test_system_works
- name: Test pure V math module
run: ./v -exclude @vlib/math/*.c.v test vlib/math/
run: v -exclude @vlib/math/*.c.v test vlib/math/
- name: Self tests
run: |
./v -cg cmd\tools\vtest-self.v
./v test-self vlib
v -cg cmd\tools\vtest-self.v
v test-self vlib
# - name: Test
# run: .\v.exe test-all
# run: v test-all
- name: Test v->js
run: ./v -o hi.js examples/hello_v_js.v && node hi.js
run: v -o hi.js examples/hello_v_js.v && node hi.js
- name: Test v binaries
run: ./v build-vbinaries
run: v build-vbinaries
- name: Build examples
run: ./v build-examples
run: v build-examples
- name: v2 self compilation
run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
tcc:
runs-on: windows-2019
@ -130,82 +133,83 @@ jobs:
- name: Build with make.bat -tcc
run: |
.\make.bat -tcc
.\v.exe symlink -githubci
- name: All code is formatted
run: ./v test-cleancode
run: v test-cleancode
- name: Test new v.c
run: |
.\v.exe -o v.c cmd/v
v -o v.c cmd/v
.\thirdparty\tcc\tcc.exe -Werror -w -ladvapi32 -lws2_32 -bt10 v.c
- name: Install dependencies
run: |
.\v.exe setup-freetype
v setup-freetype
.\.github\workflows\windows-install-sqlite.bat
- name: v doctor
run: |
./v doctor
v doctor
- name: Verify `v test` works
run: |
.\v.exe cmd/tools/test_if_v_test_system_works.v
v cmd/tools/test_if_v_test_system_works.v
.\cmd\tools\test_if_v_test_system_works.exe
- name: Verify `v vlib/v/gen/c/coutput_test.v` works
run: .\v.exe vlib/v/gen/c/coutput_test.v
run: v vlib/v/gen/c/coutput_test.v
- name: Make sure running TCC64 instead of TCC32
run: ./v test .github\workflows\make_sure_ci_run_with_64bit_compiler_test.v
run: v test .github\workflows\make_sure_ci_run_with_64bit_compiler_test.v
- name: Test ./v doc -v clipboard *BEFORE building tools*
run: ./v doc -v clipboard
run: v doc -v clipboard
- name: Test v build-tools
run: ./v -W build-tools
run: v -W build-tools
- name: Test pure V math module
run: ./v -exclude @vlib/math/*.c.v test vlib/math/
run: v -exclude @vlib/math/*.c.v test vlib/math/
- name: Self tests
run: ./v test-self vlib
run: v test-self vlib
- name: Test v->js
run: ./v -o hi.js examples/hello_v_js.v && node hi.js
run: v -o hi.js examples/hello_v_js.v && node hi.js
- name: Test v binaries
run: ./v build-vbinaries
run: v build-vbinaries
- name: Build examples
run: ./v build-examples
run: v build-examples
- name: v2 self compilation
run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v && .\v3.exe -o v4.exe cmd/v
run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v && .\v3.exe -o v4.exe cmd/v
- name: v2 self compilation with -gc boehm
run: .\v.exe -o v2.exe -gc boehm cmd/v && .\v2.exe -o v3.exe -gc boehm cmd/v && .\v3.exe -o v4.exe -gc boehm cmd/v
run: v -o v2.exe -gc boehm cmd/v && .\v2.exe -o v3.exe -gc boehm cmd/v && .\v3.exe -o v4.exe -gc boehm cmd/v
## tcc32
# - name: Build with make.bat -tcc32
# run: |
# Remove-Item -Recurse -Force .\thirdparty\tcc
# .\v.exe wipe-cache
# v wipe-cache
# .\make.bat -tcc32
# - name: Test new v.c
# run: .\v.exe -o v.c cmd/v && .\thirdparty\tcc\tcc.exe -Werror -g -w -ladvapi32 -lws2_32 -bt10 v.c
# run: v -o v.c cmd/v && .\thirdparty\tcc\tcc.exe -Werror -g -w -ladvapi32 -lws2_32 -bt10 v.c
# - name: v doctor
# run: ./v doctor
# run: v doctor
#
# - name: Verify `v test` works
# run: |
# .\v.exe cmd/tools/test_if_v_test_system_works.v
# v cmd/tools/test_if_v_test_system_works.v
# .\cmd\tools\test_if_v_test_system_works.exe
#
# - name: Verify `v vlib/v/gen/c/coutput_test.v` works
# run: |
# .\v.exe vlib/v/gen/c/coutput_test.v
# v vlib/v/gen/c/coutput_test.v
#
# - name: Make sure running TCC32 instead of TCC64
# run: ./v -stats .github\workflows\make_sure_ci_run_with_32bit_compiler_test.v
# run: v -stats .github\workflows\make_sure_ci_run_with_32bit_compiler_test.v
#
# - name: Test v build-tools
# run: ./v -W build-tools
# run: v -W build-tools
#
# - name: Test ./v doc clipboard
# run: ./v doc clipboard
# run: v doc clipboard
#
# - name: Self tests
# run: ./v test-self vlib
# run: v test-self vlib
# - name: Test v->js
# run: ./v -o hi.js examples/hello_v_js.v && node hi.js
# run: v -o hi.js examples/hello_v_js.v && node hi.js
# - name: Test v binaries
# run: ./v build-vbinaries
# run: v build-vbinaries
# - name: Build examples
# run: ./v build-examples
# run: v build-examples
# - name: v2 self compilation
# run: .\v.exe -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v
# run: v -o v2.exe cmd/v && .\v2.exe -o v3.exe cmd/v