gitea makefile test 0.1
This commit is contained in:
+1
-1
@@ -1 +1 @@
|
|||||||
0.1
|
0.3 //test gitea autoflow
|
||||||
@@ -1,34 +1,50 @@
|
|||||||
MCU ?= atmega644pa
|
name: AVR Build
|
||||||
BUILD_TYPE ?= dev
|
|
||||||
VERSION ?= 0.1
|
|
||||||
|
|
||||||
F_CPU ?= 8000000UL
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- dev
|
||||||
|
- live
|
||||||
|
- main
|
||||||
|
pull_request:
|
||||||
|
|
||||||
CC = avr-gcc
|
jobs:
|
||||||
OBJCOPY = avr-objcopy
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
SRC = src/main.c
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
OUTDIR = build/$(BUILD_TYPE)
|
- name: Install AVR toolchain
|
||||||
|
run: |
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y gcc-avr avr-libc binutils-avr make cppcheck
|
||||||
|
|
||||||
ifeq ($(BUILD_TYPE),dev)
|
- name: Set build type from branch
|
||||||
PREFIX = DEV_ENO
|
id: vars
|
||||||
|
run: |
|
||||||
|
BRANCH="${GITHUB_REF_NAME}"
|
||||||
|
|
||||||
|
if [ "$BRANCH" = "dev" ]; then
|
||||||
|
echo "BUILD_TYPE=dev" >> $GITHUB_ENV
|
||||||
|
echo "PREFIX=DEV_ENO" >> $GITHUB_ENV
|
||||||
else
|
else
|
||||||
PREFIX = ENO
|
echo "BUILD_TYPE=live" >> $GITHUB_ENV
|
||||||
endif
|
echo "PREFIX=ENO" >> $GITHUB_ENV
|
||||||
|
fi
|
||||||
|
|
||||||
TARGET = $(OUTDIR)/$(PREFIX)_$(VERSION)
|
echo "VERSION=${GITHUB_SHA::7}" >> $GITHUB_ENV
|
||||||
|
|
||||||
CFLAGS = -mmcu=$(MCU) -DF_CPU=$(F_CPU) -Os -DVERSION=\"$(VERSION)\"
|
- name: Code check
|
||||||
|
run: cppcheck --enable=all --error-exitcode=1 src/
|
||||||
|
|
||||||
all: $(TARGET).hex
|
- name: Build firmware
|
||||||
|
run: |
|
||||||
|
make BUILD_TYPE=$BUILD_TYPE PREFIX=$PREFIX VERSION=$VERSION
|
||||||
|
|
||||||
$(TARGET).elf:
|
- name: Upload hex
|
||||||
@mkdir -p $(OUTDIR)
|
uses: actions/upload-artifact@v4
|
||||||
$(CC) $(CFLAGS) $(SRC) -o $@
|
with:
|
||||||
|
name: firmware-${{ env.BUILD_TYPE }}
|
||||||
$(TARGET).hex: $(TARGET).elf
|
path: build/**/*.hex
|
||||||
$(OBJCOPY) -O ihex -R .eeprom $< $@
|
|
||||||
|
|
||||||
clean:
|
|
||||||
rm -rf build
|
|
||||||
@@ -0,0 +1,34 @@
|
|||||||
|
MCU ?= atmega644pa
|
||||||
|
BUILD_TYPE ?= dev
|
||||||
|
VERSION ?= 0.1
|
||||||
|
|
||||||
|
F_CPU ?= 8000000UL
|
||||||
|
|
||||||
|
CC = avr-gcc
|
||||||
|
OBJCOPY = avr-objcopy
|
||||||
|
|
||||||
|
SRC = src/main.c
|
||||||
|
|
||||||
|
OUTDIR = build/$(BUILD_TYPE)
|
||||||
|
|
||||||
|
ifeq ($(BUILD_TYPE),dev)
|
||||||
|
PREFIX = DEV_ENO
|
||||||
|
else
|
||||||
|
PREFIX = ENO
|
||||||
|
endif
|
||||||
|
|
||||||
|
TARGET = $(OUTDIR)/$(PREFIX)_$(VERSION)
|
||||||
|
|
||||||
|
CFLAGS = -mmcu=$(MCU) -DF_CPU=$(F_CPU) -Os -DVERSION=\"$(VERSION)\"
|
||||||
|
|
||||||
|
all: $(TARGET).hex
|
||||||
|
|
||||||
|
$(TARGET).elf:
|
||||||
|
@mkdir -p $(OUTDIR)
|
||||||
|
$(CC) $(CFLAGS) $(SRC) -o $@
|
||||||
|
|
||||||
|
$(TARGET).hex: $(TARGET).elf
|
||||||
|
$(OBJCOPY) -O ihex -R .eeprom $< $@
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -rf build
|
||||||
Reference in New Issue
Block a user