Support Copy&Paste #34
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build binary artifacts | |
#on: | |
# push: | |
# tags: | |
# - weekly.** | |
# - 0.** | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
build-linux: | |
runs-on: ubuntu-20.04 | |
env: | |
CC: gcc | |
ZIPNAME: vide_linux.zip | |
steps: | |
- name: Setup V | |
uses: vlang/setup-v@v1 | |
with: | |
# Default: ${{ github.token }} | |
token: ${{ github.token }} | |
version: 'weekly.2023.02' | |
version-file: '' | |
check-latest: true | |
stable: false | |
architecture: '' | |
- uses: actions/checkout@v1 | |
- name: Compile | |
run: | | |
sudo apt-get -qq update | |
sudo apt-get -qq install libgc-dev | |
sudo apt install build-essential | |
sudo apt-get --yes --force-yes install libxi-dev libxcursor-dev mesa-common-dev | |
sudo apt-get --yes --force-yes install libgl1-mesa-glx | |
v install https://github.com/isaiahpatton/ui | |
git clone https://github.com/isaiahpatton/vide | |
v -cc $CC -skip-unused -gc boehm vide | |
- name: Remove excluded | |
run: | | |
rm -rf .git | |
- name: Create ZIP archive | |
run: | | |
zip -r9 --symlinks $ZIPNAME vide/ | |
- name: Create artifact | |
uses: actions/upload-artifact@v2 | |
with: | |
name: linux | |
path: vide_linux.zip | |
build-macos: | |
runs-on: macos-latest | |
env: | |
CC: clang | |
ZIPNAME: vide_macos.zip | |
steps: | |
- name: Setup V | |
uses: vlang/setup-v@v1 | |
with: | |
# Default: ${{ github.token }} | |
token: ${{ github.token }} | |
version: 'weekly.2023.02' | |
version-file: '' | |
check-latest: true | |
stable: false | |
architecture: '' | |
- uses: actions/checkout@v1 | |
- name: Compile | |
run: | | |
v install https://github.com/isaiahpatton/ui | |
git clone https://github.com/isaiahpatton/vide | |
v -cc $CC -skip-unused -gc boehm vide | |
- name: Remove excluded | |
run: | | |
rm -rf .git | |
- name: Create ZIP archive | |
run: | | |
zip -r9 --symlinks $ZIPNAME vide/ | |
- name: Create artifact | |
uses: actions/upload-artifact@v2 | |
with: | |
name: macos | |
path: vide_macos.zip | |
build-windows: | |
runs-on: windows-latest | |
env: | |
CC: msvc | |
ZIPNAME: vide_windows.zip | |
steps: | |
- name: Setup V | |
uses: vlang/setup-v@v1 | |
with: | |
# Default: ${{ github.token }} | |
token: ${{ github.token }} | |
version: 'weekly.2023.02' | |
version-file: '' | |
check-latest: true | |
stable: false | |
architecture: '' | |
- uses: actions/checkout@v1 | |
- uses: msys2/setup-msys2@v2 | |
- name: Compile | |
run: | | |
git clone https://github.com/vlang/v | |
cd v | |
.\make.bat | |
.\v.exe install https://github.com/isaiahpatton/ui | |
.\v.exe symlink | |
git clone https://github.com/isaiahpatton/vide | |
v -cc gcc -skip-unused -gc boehm -cflags -static vide | |
- name: Remove excluded | |
shell: msys2 {0} | |
run: | | |
rm -rf .git | |
cd v | |
cd vide | |
rm -rf *.v | |
rm -rf .git | |
cd .. | |
cd .. | |
- name: Create archive | |
shell: msys2 {0} | |
run: | | |
cd v | |
cd vide | |
cd .. | |
powershell Compress-Archive vide $ZIPNAME | |
mv $ZIPNAME ../ | |
cd .. | |
# NB: the powershell Compress-Archive line is from: | |
# https://superuser.com/a/1336434/194881 | |
# It is needed, because `zip` is not installed by default :-| | |
- name: Create artifact | |
uses: actions/upload-artifact@v2 | |
with: | |
name: windows | |
path: vide_windows.zip |