ci: extract v_apps_and_modules_compile.yml
parent
b10cf3e0f4
commit
d1b8a67bca
|
@ -85,6 +85,7 @@ jobs:
|
|||
- name: g++ version
|
||||
run: g++-9 --version
|
||||
- name: V self compilation with g++
|
||||
continue-on-error: true
|
||||
run: ./v -cc g++-9 -no-std -cflags -std=c++11 -o v2 cmd/v && ./v2 -cc g++-9 -no-std -cflags -std=c++11 -o v3 cmd/v
|
||||
## - name: Running tests with g++
|
||||
## run: ./v -cc g++-9 test-self
|
||||
|
@ -93,6 +94,7 @@ jobs:
|
|||
run: ./v -autofree -o v2 cmd/v ## NB: this does not mean it runs, but at least keeps it from regressing
|
||||
|
||||
- name: Shader examples can be build
|
||||
continue-on-error: true
|
||||
run: |
|
||||
wget https://github.com/floooh/sokol-tools-bin/raw/33d2e4cc26088c6c28eaef5467990f8940d15aab/bin/linux/sokol-shdc
|
||||
chmod +x ./sokol-shdc
|
||||
|
@ -146,117 +148,3 @@ jobs:
|
|||
./v test-parser -S examples/regex_example_fuzz.v
|
||||
./v test-parser -S examples/2048/2048_fuzz.v
|
||||
|
||||
v-apps-compile:
|
||||
runs-on: ubuntu-20.04
|
||||
timeout-minutes: 121
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build V
|
||||
run: make && sudo ./v symlink
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install --quiet -y libgc-dev
|
||||
sudo apt-get install --quiet -y libsodium-dev libssl-dev sqlite3 libsqlite3-dev valgrind
|
||||
sudo apt-get install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
|
||||
sudo apt-get install --quiet -y xfonts-75dpi xfonts-base
|
||||
|
||||
## vls
|
||||
- name: Clone VLS
|
||||
run: git clone --depth 1 https://github.com/vlang/vls
|
||||
- name: Build VLS
|
||||
run: pushd vls; v cmd/vls ; popd
|
||||
- name: Build VLS with -prod
|
||||
run: pushd vls; v -prod cmd/vls; popd
|
||||
- name: Build VLS with -gc boehm -skip-unused
|
||||
run: pushd vls; v -gc boehm -skip-unused cmd/vls; popd
|
||||
|
||||
## vsl
|
||||
- name: Clone VSL
|
||||
run: git clone --depth 1 https://github.com/vlang/vsl ~/.vmodules/vsl
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get install --quiet -y --no-install-recommends gfortran liblapacke-dev libopenblas-dev libgc-dev
|
||||
- name: Execute Tests using Pure V Backend
|
||||
run: ~/.vmodules/vsl/bin/test
|
||||
- name: Execute Tests using Pure V Backend with Pure V Math
|
||||
run: ~/.vmodules/vsl/bin/test --use-cblas
|
||||
- name: Execute Tests using Pure V Backend and Garbage Collection enabled
|
||||
run: ~/.vmodules/vsl/bin/test --use-gc boehm
|
||||
- name: Execute Tests using Pure V Backend with Pure V Math and Garbage Collection enabled
|
||||
run: ~/.vmodules/vsl/bin/test --use-cblas --use-gc boehm
|
||||
|
||||
## vtl
|
||||
- name: Clone VTL
|
||||
run: git clone --depth 1 https://github.com/vlang/vtl ~/.vmodules/vtl
|
||||
- name: Install dependencies
|
||||
run: sudo apt-get install --quiet -y --no-install-recommends gfortran liblapacke-dev libopenblas-dev libgc-dev
|
||||
- name: Execute Tests using Pure V Backend
|
||||
run: ~/.vmodules/vtl/bin/test
|
||||
- name: Execute Tests using Pure V Backend with Pure V Math
|
||||
run: ~/.vmodules/vtl/bin/test --use-cblas
|
||||
- name: Execute Tests using Pure V Backend and Garbage Collection enabled
|
||||
run: ~/.vmodules/vtl/bin/test --use-gc boehm
|
||||
- name: Execute Tests using Pure V Backend with Pure V Math and Garbage Collection enabled
|
||||
run: ~/.vmodules/vtl/bin/test --use-cblas --use-gc boehm
|
||||
|
||||
## vab
|
||||
- name: Clone vab
|
||||
run: git clone --depth 1 https://github.com/vlang/vab
|
||||
- name: Build vab
|
||||
run: cd vab; ../v ./vab.v ; cd ..
|
||||
- name: Build vab with -gc boehm -skip-unused
|
||||
run: cd vab; ../v -gc boehm -skip-unused ./vab.v ; cd ..
|
||||
|
||||
## gitly
|
||||
- name: Install markdown
|
||||
run: git clone https://github.com/vlang/markdown ~/.vmodules/markdown
|
||||
- name: Build Gitly
|
||||
run: |
|
||||
git clone --depth 1 https://github.com/vlang/gitly
|
||||
cd gitly
|
||||
../v .
|
||||
# ./gitly -ci_run
|
||||
../v -autofree .
|
||||
../v -o x tests/first_run.v
|
||||
./x
|
||||
cd ..
|
||||
|
||||
## libsodium
|
||||
- name: Install libsodium-dev package
|
||||
run: sudo apt-get install --quiet -y libsodium-dev
|
||||
- name: Install the libsodium wrapper
|
||||
run: git clone https://github.com/vlang/libsodium ~/.vmodules/libsodium
|
||||
- name: Test libsodium
|
||||
run: VJOBS=1 ./v -stats test ~/.vmodules/libsodium
|
||||
|
||||
|
||||
## vex
|
||||
- name: Install Vex dependencies
|
||||
run: sudo apt-get install --quiet -y libsodium-dev libssl-dev sqlite3 libsqlite3-dev
|
||||
- name: Install Vex
|
||||
run: mkdir -p ~/.vmodules/nedpals; git clone https://github.com/nedpals/vex ~/.vmodules/nedpals/vex
|
||||
- name: Compile all of the Vex examples
|
||||
run: ./v should-compile-all ~/.vmodules/nedpals/vex/examples
|
||||
- name: Compile the simple Vex example with -gc boehm -skip-unused
|
||||
run: ./v -gc boehm -skip-unused ~/.vmodules/nedpals/vex/examples/simple_example.v
|
||||
- name: Run Vex Tests
|
||||
run: ./v test ~/.vmodules/nedpals/vex
|
||||
|
||||
## Go2V
|
||||
- name: Clone & Build go2v
|
||||
run: git clone --depth=1 https://github.com/vlang/go2v go2v/
|
||||
- name: Build go2v
|
||||
run: ./v go2v/
|
||||
## - name: Run tests for go2v
|
||||
## run: VJOBS=1 ./v -stats test go2v/
|
||||
|
||||
## vlang/pdf
|
||||
- name: Clone & Build vlang/pdf
|
||||
run: git clone --depth=1 https://github.com/vlang/pdf ~/.vmodules/pdf/
|
||||
- name: PDF examples should compile
|
||||
run: ./v should-compile-all ~/.vmodules/pdf/examples
|
||||
|
||||
## vpm modules
|
||||
- name: Install UI through VPM
|
||||
run: ./v install ui
|
||||
|
|
|
@ -0,0 +1,145 @@
|
|||
name: V Apps and Modules
|
||||
|
||||
on:
|
||||
push:
|
||||
paths-ignore:
|
||||
- "**.md"
|
||||
pull_request:
|
||||
paths-ignore:
|
||||
- "**.md"
|
||||
|
||||
concurrency:
|
||||
group: build-other-${{ github.event.pull_request.number || github.sha }}
|
||||
cancel-in-progress: true
|
||||
|
||||
jobs:
|
||||
v-apps-compile:
|
||||
runs-on: ubuntu-20.04
|
||||
timeout-minutes: 121
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Build V
|
||||
run: make && sudo ./v symlink
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install --quiet -y libgc-dev
|
||||
sudo apt-get install --quiet -y libsodium-dev libssl-dev sqlite3 libsqlite3-dev valgrind
|
||||
sudo apt-get install --quiet -y libfreetype6-dev libxi-dev libxcursor-dev libgl-dev
|
||||
sudo apt-get install --quiet -y xfonts-75dpi xfonts-base
|
||||
|
||||
- name: Install UI through VPM
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Official VPM modules should be installable"
|
||||
./v install ui
|
||||
|
||||
- name: Build V Language Server (VLS)
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Clone VLS"
|
||||
git clone --depth 1 https://github.com/vlang/vls
|
||||
echo "Build VLS"
|
||||
pushd vls; v cmd/vls ; popd
|
||||
echo "Build VLS with -prod"
|
||||
pushd vls; v -prod cmd/vls; popd
|
||||
echo "Build VLS with -gc boehm -skip-unused"
|
||||
pushd vls; v -gc boehm -skip-unused cmd/vls; popd
|
||||
|
||||
- name: Build VSL
|
||||
continue-on-error: true
|
||||
run: |
|
||||
git clone --depth 1 https://github.com/vlang/vsl ~/.vmodules/vsl
|
||||
sudo apt-get install --quiet -y --no-install-recommends gfortran liblapacke-dev libopenblas-dev libgc-dev
|
||||
echo "Execute Tests using Pure V Backend"
|
||||
~/.vmodules/vsl/bin/test
|
||||
echo "Execute Tests using Pure V Backend with Pure V Math"
|
||||
~/.vmodules/vsl/bin/test --use-cblas
|
||||
echo "Execute Tests using Pure V Backend and Garbage Collection enabled"
|
||||
~/.vmodules/vsl/bin/test --use-gc boehm
|
||||
echo "Execute Tests using Pure V Backend with Pure V Math and Garbage Collection enabled"
|
||||
~/.vmodules/vsl/bin/test --use-cblas --use-gc boehm
|
||||
|
||||
- name: Build VTL
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Clone VTL"
|
||||
git clone --depth 1 https://github.com/vlang/vtl ~/.vmodules/vtl
|
||||
echo "Install dependencies"
|
||||
sudo apt-get install --quiet -y --no-install-recommends gfortran liblapacke-dev libopenblas-dev libgc-dev
|
||||
echo "Execute Tests using Pure V Backend"
|
||||
~/.vmodules/vtl/bin/test
|
||||
echo "Execute Tests using Pure V Backend with Pure V Math"
|
||||
~/.vmodules/vtl/bin/test --use-cblas
|
||||
echo "Execute Tests using Pure V Backend and Garbage Collection enabled"
|
||||
~/.vmodules/vtl/bin/test --use-gc boehm
|
||||
echo "Execute Tests using Pure V Backend with Pure V Math and Garbage Collection enabled"
|
||||
~/.vmodules/vtl/bin/test --use-cblas --use-gc boehm
|
||||
|
||||
- name: Build VAB
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Clone vab"
|
||||
git clone --depth 1 https://github.com/vlang/vab
|
||||
echo "Build vab"
|
||||
cd vab; ../v ./vab.v ; cd ..
|
||||
echo "Build vab with -gc boehm -skip-unused"
|
||||
cd vab; ../v -gc boehm -skip-unused ./vab.v ; cd ..
|
||||
|
||||
- name: Build Gitly
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Clone markdown"
|
||||
git clone https://github.com/vlang/markdown ~/.vmodules/markdown
|
||||
echo "Clone Gitly"
|
||||
git clone --depth 1 https://github.com/vlang/gitly
|
||||
cd gitly
|
||||
echo "Build Gitly"
|
||||
../v .
|
||||
echo "Build Gitly with -autofree"
|
||||
../v -autofree .
|
||||
echo "Run first_run.v"
|
||||
../v run tests/first_run.v
|
||||
# ./gitly -ci_run
|
||||
|
||||
- name: Build libsodium
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Install libsodium-dev package"
|
||||
sudo apt-get install --quiet -y libsodium-dev
|
||||
echo "Clone the libsodium wrapper"
|
||||
git clone https://github.com/vlang/libsodium ~/.vmodules/libsodium
|
||||
echo "Test libsodium"
|
||||
VJOBS=1 ./v -stats test ~/.vmodules/libsodium
|
||||
|
||||
- name: Build VEX
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Install Vex dependencies"
|
||||
sudo apt-get install --quiet -y libsodium-dev libssl-dev sqlite3 libsqlite3-dev
|
||||
echo "Clone Vex"
|
||||
mkdir -p ~/.vmodules/nedpals; git clone https://github.com/nedpals/vex ~/.vmodules/nedpals/vex
|
||||
echo "Compile all of the Vex examples"
|
||||
./v should-compile-all ~/.vmodules/nedpals/vex/examples
|
||||
echo "Compile the simple Vex example with -gc boehm -skip-unused"
|
||||
./v -gc boehm -skip-unused ~/.vmodules/nedpals/vex/examples/simple_example.v
|
||||
echo "Run Vex Tests"
|
||||
./v test ~/.vmodules/nedpals/vex
|
||||
|
||||
- name: Build go2v
|
||||
continue-on-error: true
|
||||
run: |
|
||||
echo "Clone go2v"
|
||||
clone --depth=1 https://github.com/vlang/go2v go2v/
|
||||
echo "Build go2v"
|
||||
./v go2v/
|
||||
## echo "Run tests for go2v"
|
||||
## VJOBS=1 ./v -stats test go2v/
|
||||
|
||||
- name: Build vlang/pdf
|
||||
continue-on-error: true
|
||||
run: |
|
||||
git clone --depth=1 https://github.com/vlang/pdf ~/.vmodules/pdf/
|
||||
echo "PDF examples should compile"
|
||||
./v should-compile-all ~/.vmodules/pdf/examples
|
Loading…
Reference in New Issue