Update build.yml #26
Workflow file for this run
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 | |
on: [push, pull_request] | |
jobs: | |
build_base: | |
name: Build Base DLL | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Build Base DLL | |
run: | | |
g++ -O3 -std=c++17 -fconcepts -Wall -shared -fpic src/base/*.cpp src/std/*.cpp -I include -o base.dll | |
- name: Upload Base DLL | |
uses: actions/upload-artifact@v2 | |
with: | |
name: base | |
path: base.dll | |
build_analyzer: | |
name: Build Analyzer DLL | |
needs: build_base | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Download Base DLL | |
uses: actions/download-artifact@v2 | |
with: | |
name: base | |
- name: Build Analyzer DLL | |
run: | | |
g++ -O3 -std=c++17 -fconcepts -Wall -shared -fpic src/analyzer.cpp base.dll -I include -o analyzer.dll | |
- name: Upload Analyzer DLL | |
uses: actions/upload-artifact@v2 | |
with: | |
name: analyzer | |
path: analyzer.dll | |
build_compiler: | |
name: Build Compiler DLL | |
needs: build_base | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Download Base DLL | |
uses: actions/download-artifact@v2 | |
with: | |
name: base | |
- name: Build Compiler DLL | |
run: | | |
g++ -O3 -std=c++17 -fconcepts -Wall -shared -fpic src/compiler.cpp base.dll -I include -o compiler.dll | |
- name: Upload Compiler DLL | |
uses: actions/upload-artifact@v2 | |
with: | |
name: compiler | |
path: compiler.dll | |
build_interpreter: | |
name: Build Interpreter DLL | |
needs: build_base | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Download Base DLL | |
uses: actions/download-artifact@v2 | |
with: | |
name: base | |
- name: Build Interpreter DLL | |
run: | | |
g++ -O3 -std=c++17 -fconcepts -Wall -shared -fpic src/interpreter.cpp base.dll -I include -o interpreter.dll | |
- name: Upload Interpreter DLL | |
uses: actions/upload-artifact@v2 | |
with: | |
name: interpreter | |
path: interpreter.dll | |
build_main: | |
name: Build Main EXE | |
needs: [build_analyzer, build_compiler, build_interpreter] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v2 | |
- name: Download Base DLL | |
uses: actions/download-artifact@v2 | |
with: | |
name: base | |
- name: Download Analyzer DLL | |
uses: actions/download-artifact@v2 | |
with: | |
name: analyzer | |
- name: Download Compiler DLL | |
uses: actions/download-artifact@v2 | |
with: | |
name: compiler | |
- name: Download Interpreter DLL | |
uses: actions/download-artifact@v2 | |
with: | |
name: interpreter | |
- name: Build Main EXE | |
run: | | |
g++ -O3 -std=c++17 -fconcepts -Wall src/main.cpp *.dll -I include -o tff.exe | |
- name: Upload Main EXE | |
uses: actions/upload-artifact@v2 | |
with: | |
name: main | |
path: tff.exe |