Subversion Repositories Krakow BASIC

Rev

Rev 18 | Rev 20 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
14 nishi 1
# $Id$
10 nishi 2
 
14 nishi 3
name: "Build Krakow BASIC"
4
 
10 nishi 5
on:
6
  workflow_dispatch:
7
  push:
8
 
9
concurrency:
10
  group: "build"
11
  cancel-in-progress: true
12
 
13
jobs:
14
  build-c64:
15
    name: "Build for Commodore 64"
16
    runs-on: ubuntu-latest
15 nishi 17
 
10 nishi 18
    permissions:
19
      contents: write
20
 
21
    steps:
22
    - name: Checkout
23
      uses: actions/checkout@v4
24
    - name: Install packages
25
      run: sudo apt-get install cc65
26
    - name: Make sure it is clean
27
      run: make clean PLATFORM=c64
28
    - name: Make
29
      run: make PLATFORM=c64
30
    - name: Rename
31
      run: cp BASIC/krakow.80 krakow-c64.80
32
    - name: Upload artifact
33
      uses: actions/upload-artifact@v4
34
      with:
15 nishi 35
        name: build-c64
36
        path: krakow-c64.80
16 nishi 37
 
19 nishi 38
  build-arduino:
39
    name: "Build for Arduino"
40
    runs-on: ubuntu-latest
41
 
42
    permissions:
43
      contents: write
44
 
45
    steps:
46
    - name: Checkout
47
      uses: actions/checkout@v4
48
    - name: Install packages
49
      run: sudo apt-get install avr-gcc
50
    - name: Make sure it is clean
51
      run: make clean PLATFORM=arduino
52
    - name: Make
53
      run: make PLATFORM=c64
54
    - name: Rename
55
      run: cp BASIC/krakow.hex krakow-arduino.hex
56
    - name: Upload artifact
57
      uses: actions/upload-artifact@v4
58
      with:
59
        name: build-arduino
60
        path: krakow-arduino.hex
61
 
16 nishi 62
  release:
63
    name: "Release"
64
    runs-on: ubuntu-latest
65
 
17 nishi 66
    permissions:
16 nishi 67
      contents: write
68
 
19 nishi 69
    needs: [build-c64, build-arduino]
16 nishi 70
 
71
    steps:
72
    - name: Checkout
73
      uses: actions/checkout@v4
74
    - name: Download from build-c64
75
      uses: actions/download-artifact@v4
76
      with:
77
        name: build-c64
19 nishi 78
    - name: Download from build-arduino
79
      uses: actions/download-artifact@v4
80
      with:
81
        name: build-arduino
18 nishi 82
    - name: Delete old release
83
      run: gh release delete "$(make get-version)" --cleanup-tag -y || true
84
      env:
85
        GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
86
    - name: Release
19 nishi 87
      run: gh release create -t "v$(make get-version)" "$(make get-version)" krakow-c64.80 krakow-arduino.hex -n "Version \`$(make get-version)\` was build in this release"
18 nishi 88
      env:
89
        GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}