build_renesas.yml 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. name: Build Renesas
  2. on:
  3. pull_request:
  4. push:
  5. release:
  6. types:
  7. - created
  8. jobs:
  9. build-rx:
  10. runs-on: ubuntu-latest
  11. strategy:
  12. fail-fast: false
  13. matrix:
  14. family:
  15. # Alphabetical order
  16. - 'rx'
  17. steps:
  18. - name: Setup Python
  19. uses: actions/setup-python@v2
  20. - name: Checkout TinyUSB
  21. uses: actions/checkout@v3
  22. - name: Checkout common submodules in lib
  23. run: git submodule update --init lib/FreeRTOS-Kernel lib/lwip
  24. - name: Checkout hathach/linkermap
  25. uses: actions/checkout@v3
  26. with:
  27. repository: hathach/linkermap
  28. path: linkermap
  29. - name: Set Toolchain URL
  30. run: echo >> $GITHUB_ENV TOOLCHAIN_URL=http://gcc-renesas.com/downloads/get.php?f=rx/8.3.0.202004-gnurx/gcc-8.3.0.202004-GNURX-ELF.run
  31. - name: Cache Toolchain
  32. uses: actions/cache@v2
  33. id: cache-toolchain
  34. with:
  35. path: ~/cache/
  36. key: ${{ runner.os }}-21-03-30-${{ env.TOOLCHAIN_URL }}
  37. - name: Install Toolchain
  38. if: steps.cache-toolchain.outputs.cache-hit != 'true'
  39. run: |
  40. mkdir -p ~/cache/toolchain/gnurx
  41. wget --progress=dot:mega $TOOLCHAIN_URL -O toolchain.run
  42. chmod +x toolchain.run
  43. ./toolchain.run -p ~/cache/toolchain/gnurx -y
  44. - name: Set Toolchain Path
  45. run: echo >> $GITHUB_PATH `echo ~/cache/toolchain/*/bin`
  46. - name: Get Dependencies
  47. run: python3 tools/get_dependencies.py ${{ matrix.family }}
  48. - name: Build
  49. run: python3 tools/build_family.py ${{ matrix.family }}
  50. - name: Linker Map
  51. run: |
  52. pip install linkermap/
  53. for ex in `ls -d examples/device/*/`; do \
  54. find ${ex} -name *.map -print -quit | \
  55. xargs -I % sh -c 'echo "::group::%"; linkermap -v %; echo "::endgroup::"'; \
  56. done