2023-01-21 12:39:30 +00:00
|
|
|
name: Build and Test the Prog8 compiler
|
|
|
|
|
|
|
|
on:
|
|
|
|
push:
|
|
|
|
workflow_dispatch:
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
|
|
|
|
steps:
|
|
|
|
- name: Checkout code
|
2023-06-09 17:51:04 +00:00
|
|
|
uses: actions/checkout@v3
|
2023-01-21 12:39:30 +00:00
|
|
|
|
2023-05-29 21:43:08 +00:00
|
|
|
- name: build and install recent 64tass
|
|
|
|
run: |
|
|
|
|
sudo apt-get install -y make build-essential
|
2023-05-29 21:46:47 +00:00
|
|
|
git clone --depth=1 https://github.com/irmen/64tass
|
2023-05-29 21:43:08 +00:00
|
|
|
cd 64tass
|
|
|
|
make -j4
|
2023-05-29 21:44:10 +00:00
|
|
|
sudo make install
|
2023-01-21 13:02:08 +00:00
|
|
|
|
2023-01-21 14:24:07 +00:00
|
|
|
- name: Set up JDK 11
|
2023-06-09 17:51:04 +00:00
|
|
|
uses: actions/setup-java@v3
|
2023-01-21 12:39:30 +00:00
|
|
|
with:
|
|
|
|
java-version: 11
|
2023-01-21 12:47:09 +00:00
|
|
|
distribution: adopt
|
2023-01-21 12:39:30 +00:00
|
|
|
|
|
|
|
- name: Build and test with Gradle
|
2023-01-21 14:24:07 +00:00
|
|
|
run: ./gradlew build shadowJar --no-daemon
|
2024-02-09 23:38:32 +00:00
|
|
|
|
2023-01-21 13:25:17 +00:00
|
|
|
- name: Create compiler shadowJar artifact
|
2023-01-21 13:19:01 +00:00
|
|
|
uses: actions/upload-artifact@v3
|
|
|
|
with:
|
2023-01-21 13:47:32 +00:00
|
|
|
name: prog8-compiler-jar-zipped
|
2023-01-21 13:25:17 +00:00
|
|
|
path: compiler/build/libs/*-all.jar
|
2024-02-09 23:38:32 +00:00
|
|
|
|
|
|
|
- uses: MCJack123/ghaction-generate-release-hashes@v4
|
2024-02-10 01:07:37 +00:00
|
|
|
if: "github.event.release"
|
2024-02-09 23:38:32 +00:00
|
|
|
with:
|
|
|
|
hash-type: sha256
|
|
|
|
file-name: hashes.txt
|
|
|
|
- uses: actions/upload-artifact@v3
|
2024-02-10 01:07:37 +00:00
|
|
|
if: "github.event.release"
|
2024-02-09 23:38:32 +00:00
|
|
|
with:
|
|
|
|
name: Artifact Hashes
|
|
|
|
path: hashes.txt
|