Rewrite the shared Kconfig header when following M5Unit-NFC #34
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build(arduino-esp32:2.x) | |
| env: | |
| SKETCH_NAMES_FIND_START: ./examples/UnitUnified | |
| REQUIRED_LIBRARIES: M5Unified,M5UnitUnified,M5Unit-NFC | |
| on: | |
| push: | |
| tags-ignore: | |
| - '*.*.*' | |
| - 'v*.*.*' | |
| branches: | |
| - '*' | |
| paths: | |
| - 'src/**.cpp' | |
| - 'src/**.hpp' | |
| - 'src/**.h' | |
| - 'src/**.c' | |
| - 'examples/UnitUnified/**.ino' | |
| - 'examples/UnitUnified/**.cpp' | |
| - 'examples/UnitUnified/**.hpp' | |
| - 'examples/UnitUnified/**.h' | |
| - 'examples/UnitUnified/**.c' | |
| - '.github/workflows/arduino-esp-v2-build-check.yml' | |
| pull_request: | |
| paths: | |
| - 'src/**.cpp' | |
| - 'src/**.hpp' | |
| - 'src/**.h' | |
| - 'src/**.c' | |
| - 'examples/UnitUnified/**.ino' | |
| - 'examples/UnitUnified/**.cpp' | |
| - 'examples/UnitUnified/**.hpp' | |
| - 'examples/UnitUnified/**.h' | |
| - 'examples/UnitUnified/**.c' | |
| - '.github/workflows/arduino-esp-v2-build-check.yml' | |
| workflow_dispatch: | |
| defaults: | |
| run: | |
| shell: bash | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: ${{ matrix.nfctype }}:${{ matrix.sketch }}:${{matrix.board}}@${{matrix.platform-version}} | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 12 | |
| strategy: | |
| fail-fast: false | |
| max-parallel: 20 | |
| matrix: | |
| platform-url: | |
| - https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| # Cross design (skill m5-build-ci-matrix §3): the board axis is carried by one | |
| # representative per distinct code path. NFCA (WS1850S over I2C, addI2C) and UHF | |
| # (JRD4035 over UART, addUART) are different units on different transports, so both | |
| # stay on the board axis. NFCB is the same unit, bus and wiring helper as NFCA, so | |
| # one build on the representative board is enough to prove its stack compiles. | |
| nfctype: | |
| - NFCA | |
| # - NFCB # via include (m5stack-core-esp32 only): same unit/bus/wiring as NFCA | |
| sketch: | |
| - Detect | |
| build-properties: | |
| - "-DUSING_UNIT_RFID2" | |
| # Build CI board axis = distinct compile config only (skill m5-build-ci-matrix). | |
| # esp32:esp32 2.0.x covers only ESP32 / ESP32-S3 (no C6/H2/P4). | |
| board: | |
| - m5stack-core-esp32 # espressif32 x ESP32 (xtensa-esp32) | |
| - m5stack-cores3 # espressif32 x ESP32-S3 (separate GCC target) | |
| # - m5stack-atom # ESP32: represented by m5stack-core-esp32 | |
| # - m5stack-atoms3 # ESP32-S3: represented by m5stack-cores3 | |
| # - m5stack-core2 # ESP32: represented by m5stack-core-esp32 | |
| # - m5stack-coreink # ESP32: represented by m5stack-core-esp32 | |
| # - m5stack-fire # ESP32: represented by m5stack-core-esp32 | |
| platform-version: | |
| - 2.0.17 | |
| platform: | |
| - esp32 | |
| archi: | |
| - esp32 | |
| include: | |
| # Specific sketches (NFCA, USING_UNIT_RFID2, Core only) | |
| - sketch: Dump | |
| nfctype: NFCA | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "-DUSING_UNIT_RFID2" | |
| - sketch: ValueBlock | |
| nfctype: NFCA | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "-DUSING_UNIT_RFID2" | |
| - sketch: ReadWrite | |
| nfctype: NFCA | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "-DUSING_UNIT_RFID2" | |
| - sketch: NDEF | |
| nfctype: NFCA | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "-DUSING_UNIT_RFID2" | |
| - sketch: PolicyOverride | |
| nfctype: NFCA | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "-DUSING_UNIT_RFID2" | |
| # Detect (NFCB, USING_UNIT_RFID2, Core only) - moved off the board axis above | |
| - sketch: Detect | |
| nfctype: NFCB | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "-DUSING_UNIT_RFID2" | |
| # JapanIDCard (NFCB, USING_UNIT_RFID2, Core only) | |
| - sketch: JapanIDCard | |
| nfctype: NFCB | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "-DUSING_UNIT_RFID2" | |
| # UHF-RFID (UART, single unit, no USING_* define). | |
| # Detect covers the board axis; the rest go on Core for the API axis, | |
| # the same shape the NFC-A / NFC-B families use above. | |
| - sketch: Detect | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: Detect | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-cores3 | |
| build-properties: "" | |
| - sketch: Dump | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: ReadWrite | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: ReaderSettings | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: Lock | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: Kill | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: WriteEPC | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: SleepIdle | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: MonzaQT | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: PermanentLock | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: NxpG2X | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| - sketch: NxpReadProtect | |
| nfctype: UHF | |
| platform-url: https://espressif.github.io/arduino-esp32/package_esp32_index.json | |
| platform: esp32 | |
| archi: esp32 | |
| platform-version: 2.0.17 | |
| board: m5stack-core-esp32 | |
| build-properties: "" | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Prepare libraries list | |
| id: libs | |
| run: | | |
| { | |
| echo "yaml<<EOF" | |
| echo "$REQUIRED_LIBRARIES" | tr ',' '\n' | while read -r lib; do | |
| echo "- name: $lib" | |
| done | |
| echo "- source-path: ./" | |
| echo "EOF" | |
| } >> "$GITHUB_OUTPUT" | |
| - name: Compile examples | |
| uses: arduino/compile-sketches@v1 | |
| with: | |
| fqbn: ${{ matrix.platform }}:${{ matrix.archi }}:${{ matrix.board }} | |
| platforms: | | |
| - name: ${{ matrix.platform }}:${{ matrix.archi }} | |
| source-url: ${{ matrix.platform-url }} | |
| version: ${{ matrix.platform-version }} | |
| libraries: ${{ steps.libs.outputs.yaml }} | |
| sketch-paths: | | |
| - ${{ env.SKETCH_NAMES_FIND_START }}/${{ matrix.nfctype }}/${{ matrix.sketch }} | |
| cli-compile-flags: | | |
| - --build-property | |
| - build.extra_flags=${{ matrix.build-properties }} |