feat ✨: Add GitHub Actions workflow for SDCC build and test on CC2530
- This commit adds a new GitHub Actions workflow for building and testing SDCC (Software Development Compiler) on CC2530. - The changes are to update the build process for Zigbee sensor firmware, switching from MSP430 compiler to sdcc and updating object file generation rules. - This commit updates the build system for the project, adding and configuring new paths, compiler settings, and dependencies for the Z-Stack SDK.
This commit is contained in:
57
.gitea/workflows/sdcc.yml
Normal file
57
.gitea/workflows/sdcc.yml
Normal file
@@ -0,0 +1,57 @@
|
||||
name: SDCC Build for CC2530
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
# push:
|
||||
# branches:
|
||||
# - main
|
||||
# pull_request:
|
||||
# branches:
|
||||
# - main
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest # Runs on the latest Ubuntu version available
|
||||
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
github-server-url: ${{ vars.GIT_SERVER_URL }}
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y build-essential libgmp-dev libmpfr-dev libncurses-dev git
|
||||
|
||||
- name: Clone SDCC repository
|
||||
run: |
|
||||
git clone https://github.com/sdcc-team/sdcc.git
|
||||
cd sdcc
|
||||
|
||||
- name: Build SDCC
|
||||
run: |
|
||||
cd sdcc
|
||||
./configure --target=8051 --with-arch=8051 --prefix=/usr/local
|
||||
make
|
||||
sudo make install
|
||||
|
||||
- name: Verify SDCC installation
|
||||
run: |
|
||||
sdcc --version # Verifies if SDCC was installed successfully
|
||||
|
||||
- name: Compile using Makefile
|
||||
run: |
|
||||
cd $GITHUB_WORKSPACE # Navigate to the root of your repo (where the Makefile is located)
|
||||
make # Run the make command to build the project using the Makefile
|
||||
|
||||
# - name: Upload compiled hex file
|
||||
# uses: actions/upload-artifact@v2
|
||||
# with:
|
||||
# name: cc2530-firmware
|
||||
# path: output.ihx # Replace with the actual output file name if different (e.g., .ihx)
|
||||
|
||||
- name: Clean up compiled files
|
||||
run: |
|
||||
cd $GITHUB_WORKSPACE # Navigate back to the project directory
|
||||
make clean # Run the 'make clean' command to delete the compiled files
|
||||
Reference in New Issue
Block a user