| { |
| "version": "2.0.0", |
| "tasks": [ |
| { |
| "label": "Build specific example", |
| "type": "shell", |
| "command": "scripts/run_in_build_env.sh", |
| "args": [ |
| "./scripts/build/build_examples.py --target ${input:exampleTarget} build" |
| ], |
| "group": "build", |
| "problemMatcher": { |
| "base": "$gcc" |
| } |
| }, |
| { |
| "label": "Main Build", |
| "type": "shell", |
| "command": "scripts/build/default.sh", |
| "group": { |
| "kind": "build", |
| "isDefault": true |
| }, |
| "isBackground": false, |
| "presentation": { |
| "reveal": "always", |
| "panel": "shared" |
| }, |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": ["relative", "${workspaceFolder}/out/default/"] |
| } |
| }, |
| { |
| "label": "Build & Test (all)", |
| "type": "shell", |
| "command": "./gn_build.sh", |
| "group": "build", |
| "isBackground": false, |
| "presentation": { |
| "reveal": "always", |
| "panel": "shared" |
| }, |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": ["relative", "${workspaceFolder}/out/debug/"] |
| } |
| }, |
| { |
| "label": "Update compilation database", |
| "type": "shell", |
| "command": "scripts/helpers/update_compile_commands.sh", |
| "group": "none", |
| "dependsOn": "Build & Test (all)", |
| "isBackground": false, |
| "presentation": { |
| "reveal": "always", |
| "panel": "shared" |
| }, |
| "problemMatcher": [] |
| }, |
| { |
| "label": "Run Unit and Functional Tests", |
| "type": "shell", |
| "command": "scripts/tests/all_tests.sh", |
| "group": "test", |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": ["relative", "${workspaceFolder}/out/default/"] |
| } |
| }, |
| { |
| "label": "Bootstrap", |
| "type": "shell", |
| "command": "bash scripts/bootstrap.sh", |
| "group": "none", |
| "problemMatcher": ["$gcc"] |
| }, |
| { |
| "label": "Clean Output", |
| "type": "shell", |
| "command": "scripts/helpers/clean.sh", |
| "group": "none", |
| "problemMatcher": ["$gcc"] |
| }, |
| { |
| "label": "Clean Tree", |
| "type": "shell", |
| "command": "scripts/helpers/clean_tree.sh", |
| "group": "none", |
| "problemMatcher": ["$gcc"] |
| }, |
| { |
| "label": "Build Minimal MDNS Example", |
| "type": "shell", |
| "command": "scripts/examples/gn_build_example.sh examples/minimal-mdns out/minimal_mdns 'chip_build_tools=false is_debug=false optimize_for_size=true'", |
| "group": "build", |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": [ |
| "relative", |
| "${workspaceFolder}/out/minimal_mdns/" |
| ] |
| } |
| }, |
| { |
| "label": "QEMU: run esp32-qemu unit tests", |
| "type": "shell", |
| "command": "scripts/tests/esp32_qemu_tests.sh /tmp/test_logs", |
| "problemMatcher": [] |
| }, |
| { |
| "label": "Build nRF Connect Pigweed Example (nRF52840)", |
| "type": "shell", |
| "command": "source scripts/activate.sh && scripts/examples/nrfconnect_example.sh pigweed-app nrf52840dk_nrf52840", |
| "group": "build", |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": [ |
| "relative", |
| "${workspaceFolder}/examples/pigweed-app/nrfconnect/build/nrf52840dk_nrf52840" |
| ] |
| } |
| }, |
| { |
| "label": "Build i.MX Linux examples", |
| "type": "shell", |
| "command": "./scripts/examples/imxlinux_example.sh ${input:imxExampleTarget} out/aarch64", |
| "group": "build", |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": ["relative", "${workspaceFolder}/out/aarch64/"] |
| } |
| }, |
| { |
| "label": "Run Mbed Application", |
| "type": "shell", |
| "command": "scripts/examples/mbed_example.sh", |
| "args": [ |
| "-c=${input:mbedCommand}", |
| "-a=${input:mbedApp}", |
| "-b=${input:mbedTarget}", |
| "-p=${input:mbedProfile}", |
| "-T=${input:mbedAppType}" |
| ], |
| "group": "build", |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": [ |
| "relative", |
| "${workspaceFolder}/examples/${input:mbedApp}/mbed/build" |
| ] |
| } |
| }, |
| { |
| "label": "Run Mbed Unit Tests", |
| "type": "shell", |
| "command": "scripts/tests/mbed/mbed_unit_tests.sh", |
| "args": [ |
| "-c=${input:mbedCommand}", |
| "-b=${input:mbedTarget}", |
| "-p=${input:mbedProfile}" |
| ], |
| "group": "build", |
| "problemMatcher": { |
| "base": "$gcc", |
| "fileLocation": [ |
| "relative", |
| "${workspaceFolder}/src/test_driver/mbed/unit_tests/build" |
| ] |
| } |
| }, |
| { |
| "label": "Flash EFR32 board", |
| "type": "shell", |
| "command": "python3", |
| "args": [ |
| "${workspaceFolder}/out/${input:exampleTarget}/chip-efr32-*.flash.py" |
| ], |
| "problemMatcher": { |
| "base": "$gcc" |
| } |
| }, |
| { |
| "label": "Build LightingApp (Tizen)", |
| "type": "shell", |
| "command": "scripts/run_in_build_env.sh", |
| "args": [ |
| "${workspaceFolder}/scripts/build/build_examples.py --target tizen-arm-light --enable-flashbundle build" |
| ], |
| "group": "build", |
| "problemMatcher": { |
| "base": "$gcc" |
| } |
| }, |
| { |
| "label": "Connect to device (Tizen)", |
| "type": "shell", |
| "command": "sdb", |
| "args": ["connect", "${input:tizenTargetDeviceAddress}"], |
| "problemMatcher": [], |
| "runOptions": { |
| "reevaluateOnRerun": false |
| } |
| }, |
| { |
| "label": "Install LightingApp (Tizen)", |
| "type": "shell", |
| "command": "sdb", |
| "args": [ |
| "-s", |
| "${input:tizenTargetDeviceAddressSdb}", |
| "install", |
| "${workspaceFolder}/out/tizen-arm-light/package/out/org.tizen.matter.example.lighting-1.0.0.tpk" |
| ], |
| "problemMatcher": [], |
| "runOptions": { |
| "reevaluateOnRerun": false |
| } |
| }, |
| { |
| "label": "Launch LightingApp with gdbserver attached (Tizen)", |
| "type": "shell", |
| "command": "bash", |
| "args": [ |
| "${workspaceFolder}/scripts/helpers/tizen_gdbserver_run.sh", |
| "--app-name", |
| "org.tizen.matter.example.lighting", |
| "--target", |
| "${input:tizenTargetDeviceAddressSdb}" |
| ], |
| "problemMatcher": [], |
| "runOptions": { |
| "reevaluateOnRerun": false |
| }, |
| "isBackground": false, |
| "presentation": { |
| "echo": true, |
| "reveal": "always", |
| "focus": false, |
| "panel": "dedicated", |
| "showReuseMessage": true, |
| "clear": true |
| } |
| } |
| ], |
| "inputs": [ |
| { |
| "type": "pickString", |
| "id": "mbedCommand", |
| "description": "What do you want to do?", |
| "options": ["build", "flash", "build-flash"], |
| "default": "build" |
| }, |
| { |
| "type": "pickString", |
| "id": "mbedApp", |
| "description": "What mbed application do you want to use?", |
| "options": [ |
| "lock-app", |
| "lighting-app", |
| "pigweed-app", |
| "all-clusters-app", |
| "shell", |
| "ota-requestor-app" |
| ], |
| "default": "lock-app" |
| }, |
| { |
| "type": "pickString", |
| "id": "mbedTarget", |
| "description": "What mbed target do you want to use?", |
| "options": ["CY8CPROTO_062_4343W"], |
| "default": "CY8CPROTO_062_4343W" |
| }, |
| { |
| "type": "pickString", |
| "id": "mbedProfile", |
| "description": "What mbed profile do you want to use?", |
| "options": ["release", "develop", "debug"], |
| "default": "release" |
| }, |
| { |
| "type": "pickString", |
| "id": "mbedAppType", |
| "description": "What mbed application type do you want to use?", |
| "options": ["simple", "boot", "upgrade"], |
| "default": "simple" |
| }, |
| { |
| "type": "promptString", |
| "id": "exampleGlob", |
| "description": "What applications to build (e.g. '*m5stack*' or 'esp32-*')" |
| }, |
| { |
| "type": "pickString", |
| "id": "imxExampleTarget", |
| "description": "What example application type do you want to build?", |
| "options": [ |
| "examples/chip-tool", |
| "examples/lighting-app/linux", |
| "examples/thermostat/linux" |
| ], |
| "default": "examples/chip-tool" |
| }, |
| { |
| "type": "pickString", |
| "id": "exampleTarget", |
| "description": "What target to build", |
| "options": [ |
| "ameba-amebad-all-clusters", |
| "android-androidstudio-arm-chip-tool", |
| "android-androidstudio-arm64-chip-tool", |
| "android-androidstudio-x64-chip-tool", |
| "android-androidstudio-x86-chip-tool", |
| "android-arm-chip-tool", |
| "android-arm64-chip-test", |
| "android-arm64-chip-tool", |
| "android-arm64-chip-tvserver", |
| "android-x64-chip-tool", |
| "android-x86-chip-tool", |
| "bouffalolab-bl602-iot-matter-v1-light", |
| "bouffalolab-bl602-iot-matter-v1-light-rpc-115200", |
| "bouffalolab-bl602-night-light-light", |
| "bouffalolab-xt-zb6-devkit-light", |
| "bouffalolab-xt-zb6-devkit-light-rpc-115200", |
| "bouffalolab-bl706-night-light-light", |
| "efr32-brd4161a-light", |
| "efr32-brd4163a-light", |
| "efr32-brd4164a-light", |
| "efr32-brd4166a-light", |
| "efr32-brd4170a-light", |
| "efr32-brd4186a-light", |
| "efr32-brd4187a-light", |
| "efr32-brd4304a-light", |
| "efr32-brd4161a-light-rpc", |
| "efr32-brd4163a-light-rpc", |
| "efr32-brd4164a-light-rpc", |
| "efr32-brd4166a-light-rpc", |
| "efr32-brd4170a-light-rpc", |
| "efr32-brd4186a-light-rpc", |
| "efr32-brd4187a-light-rpc", |
| "efr32-brd4304a-light-rpc", |
| "efr32-brd4161a-lock", |
| "efr32-brd4163a-lock", |
| "efr32-brd4164a-lock", |
| "efr32-brd4166a-lock", |
| "efr32-brd4170a-lock", |
| "efr32-brd4186a-lock", |
| "efr32-brd4187a-lock", |
| "efr32-brd4304a-lock", |
| "efr32-brd4161a-unit-test", |
| "efr32-brd4163a-unit-test", |
| "efr32-brd4164a-unit-test", |
| "efr32-brd4166a-unit-test", |
| "efr32-brd4170a-unit-test", |
| "efr32-brd4186a-unit-test", |
| "efr32-brd4187a-unit-test", |
| "efr32-brd4304a-unit-test", |
| "efr32-brd4161a-switch", |
| "efr32-brd4163a-switch", |
| "efr32-brd4164a-switch", |
| "efr32-brd4166a-switch", |
| "efr32-brd4170a-switch", |
| "efr32-brd4186a-switch", |
| "efr32-brd4187a-switch", |
| "efr32-brd4304a-switch", |
| "efr32-brd4161a-window-covering", |
| "efr32-brd4163a-window-covering", |
| "efr32-brd4164a-window-covering", |
| "efr32-brd4166a-window-covering", |
| "efr32-brd4170a-window-covering", |
| "efr32-brd4186a-window-covering", |
| "efr32-brd4187a-window-covering", |
| "efr32-brd4304a-window-covering", |
| "esp32-c3devkit-all-clusters", |
| "esp32-devkitc-all-clusters", |
| "esp32-devkitc-all-clusters-ipv6only", |
| "esp32-devkitc-bridge", |
| "esp32-devkitc-lock", |
| "esp32-devkitc-shell", |
| "esp32-devkitc-temperature-measurement", |
| "esp32-m5stack-all-clusters", |
| "esp32-m5stack-all-clusters-ipv6only", |
| "esp32-m5stack-all-clusters-rpc", |
| "esp32-m5stack-all-clusters-rpc-ipv6only", |
| "infineon-psoc6-all-clusters", |
| "infineon-psoc6-lock", |
| "infineon-psoc6-light", |
| "linux-arm64-all-clusters", |
| "linux-arm64-all-clusters-ipv6only", |
| "linux-arm64-chip-tool", |
| "linux-arm64-chip-tool-ipv6only", |
| "linux-arm64-rpc-console", |
| "linux-arm64-thermostat", |
| "linux-arm64-thermostat-ipv6only", |
| "linux-x64-all-clusters", |
| "linux-x64-all-clusters-ipv6only", |
| "linux-x64-chip-tool", |
| "linux-x64-chip-tool-ipv6only", |
| "linux-x64-rpc-console", |
| "linux-x64-thermostat", |
| "linux-x64-thermostat-ipv6only", |
| "mbed-CY8CPROTO_062_4343W-all-clusters-debug", |
| "mbed-CY8CPROTO_062_4343W-all-clusters-develop", |
| "mbed-CY8CPROTO_062_4343W-all-clusters-release", |
| "mbed-CY8CPROTO_062_4343W-light-debug", |
| "mbed-CY8CPROTO_062_4343W-light-develop", |
| "mbed-CY8CPROTO_062_4343W-light-release", |
| "mbed-CY8CPROTO_062_4343W-lock-debug", |
| "mbed-CY8CPROTO_062_4343W-lock-develop", |
| "mbed-CY8CPROTO_062_4343W-lock-release", |
| "mbed-CY8CPROTO_062_4343W-pigweed-debug", |
| "mbed-CY8CPROTO_062_4343W-pigweed-develop", |
| "mbed-CY8CPROTO_062_4343W-pigweed-release", |
| "mbed-CY8CPROTO_062_4343W-shell-debug", |
| "mbed-CY8CPROTO_062_4343W-shell-develop", |
| "mbed-CY8CPROTO_062_4343W-shell-release", |
| "nrf-nrf52840-light", |
| "nrf-nrf52840-light-rpc", |
| "nrf-nrf52840-lock", |
| "nrf-nrf52840-pump", |
| "nrf-nrf52840-pump-controller", |
| "nrf-nrf52840-shell", |
| "nrf-nrf5340-light", |
| "nrf-nrf5340-light-rpc", |
| "nrf-nrf5340-lock", |
| "nrf-nrf5340-pump", |
| "nrf-nrf5340-pump-controller", |
| "nrf-nrf5340-shell", |
| "qpg-qpg6100-lock", |
| "telink-tlsr9518adk80d-all-clusters", |
| "telink-tlsr9518adk80d-all-clusters-minimal", |
| "telink-tlsr9518adk80d-light", |
| "telink-tlsr9518adk80d-light-switch", |
| "telink-tlsr9518adk80d-ota-requestor", |
| "tizen-arm-light" |
| ] |
| }, |
| { |
| "type": "promptString", |
| "id": "tizenTargetDeviceAddress", |
| "description": "Enter the target device address and port in format <address>:<port>" |
| }, |
| { |
| "id": "tizenTargetDeviceAddressSdb", |
| "type": "command", |
| "command": "shellCommand.execute", |
| "args": { |
| "command": "sdb devices | grep -v 'List of devices attached' |awk '{print $1 \"|\" $1, $3, \"(\" $2 \")\"}'", |
| "fieldSeparator": "|", |
| "description": "Select target device" |
| } |
| } |
| ] |
| } |