S&B Volcano vaporizer remote control with Pi Pico W
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

cmake.yml 2.2KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. # https://github.com/raspberrypi/pico-examples/blob/master/.github/workflows/cmake.yml
  2. name: Firmware
  3. # build for each push and pull request
  4. on: [push, pull_request]
  5. env:
  6. BUILD_TYPE: Release
  7. jobs:
  8. build:
  9. runs-on: ubuntu-latest
  10. steps:
  11. - name: Install dependencies
  12. run: sudo apt-get install -y cxxtest build-essential gcc-arm-none-eabi mtools zip
  13. - name: Checkout repo
  14. uses: actions/checkout@v4
  15. with:
  16. path: repo
  17. fetch-depth: 0
  18. - name: Checkout repo submodules
  19. working-directory: ${{github.workspace}}/repo
  20. run: git submodule update --init
  21. - name: Checkout pico-sdk submodules
  22. working-directory: ${{github.workspace}}/repo/pico-sdk
  23. run: git submodule update --init
  24. - name: Create Build Environment
  25. working-directory: ${{github.workspace}}/repo
  26. run: cmake -E make_directory ${{github.workspace}}/repo/build
  27. - name: Configure CMake
  28. shell: bash
  29. working-directory: ${{github.workspace}}/repo/build
  30. run: cmake .. -DPICO_BOARD=pico_w -DCMAKE_BUILD_TYPE=$BUILD_TYPE
  31. - name: Get core count
  32. id: core_count
  33. run : cat /proc/cpuinfo | grep processor | wc -l
  34. - name: Build
  35. working-directory: ${{github.workspace}}/repo/build
  36. shell: bash
  37. run: cmake --build . --config $BUILD_TYPE --parallel $(nproc)
  38. - name: Upload a Build Artifact
  39. uses: actions/upload-artifact@v4.0.0
  40. with:
  41. name: firmware.uf2
  42. path: ${{github.workspace}}/repo/build/picowota_gadget.uf2
  43. if-no-files-found: error
  44. - name: Upload a Build Artifact
  45. uses: actions/upload-artifact@v4.0.0
  46. with:
  47. name: update.elf
  48. path: ${{github.workspace}}/repo/build/gadget.elf
  49. if-no-files-found: error
  50. - name: Archive release files
  51. if: startsWith(github.ref, 'refs/tags/')
  52. run: |
  53. cd ${{github.workspace}}/repo/build
  54. zip -r picowota_gadget.uf2 gadget.elf firmware
  55. - name: Upload release files
  56. if: startsWith(github.ref, 'refs/tags/')
  57. uses: softprops/action-gh-release@v1
  58. with:
  59. files: ${{github.workspace}}/repo/build/firmware.zip