diff options
-rw-r--r-- | CMakePresets.json | 328 | ||||
-rw-r--r-- | scripts/cmake/options-preset.json | 71 | ||||
-rw-r--r-- | scripts/cmake/platforms/platforms-preset.json | 62 | ||||
-rw-r--r-- | scripts/cmake/toolchains/toolchain-preset.json | 43 | ||||
-rw-r--r-- | source/use_case/usecase-preset.json | 27 |
5 files changed, 339 insertions, 192 deletions
diff --git a/CMakePresets.json b/CMakePresets.json index 819dd01..3500329 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -1,195 +1,139 @@ { - "version": 3, - "cmakeMinimumRequired": { - "major": 3, - "minor": 21, - "patch": 0 + "version": 4, + "cmakeMinimumRequired": { + "major": 3, + "minor": 23, + "patch": 0 + }, + "include": [ + "scripts/cmake/options-preset.json", + "scripts/cmake/platforms/platforms-preset.json", + "scripts/cmake/toolchains/toolchain-preset.json", + "source/use_case/usecase-preset.json" + ], + "configurePresets": [ + { + "name": "simple-gcc", + "displayName": "simple-gcc", + "description": "Target simple platform build with bare-metal gcc toolchain.", + "inherits": [ + "simple-platform", + "gcc-toolchain" + ] }, - "configurePresets": [ - { - "name": "base", - "description": "Base configuration, sets build directory.", - "hidden": true, - "generator": "Unix Makefiles" - }, - { - "name": "gcc-toolchain", - "description": "Use gcc toolchain.", - "hidden": true, - "cacheVariables": { - "CMAKE_TOOLCHAIN_FILE": { - "type": "STRING", - "value": "${sourceDir}/scripts/cmake/toolchains/bare-metal-gcc.cmake" - } - } - }, - { - "name": "armclang-toolchain", - "description": "Use armclang toolchain.", - "hidden": true, - "cacheVariables": { - "CMAKE_TOOLCHAIN_FILE": { - "type": "STRING", - "value": "${sourceDir}/scripts/cmake/toolchains/bare-metal-armclang.cmake" - } - } - }, - { - "name": "mps3-300", - "description": "Target mps3 board, SSE-300 subsystem.", - "hidden": true, - "cacheVariables": { - "TARGET_PLATFORM": { - "type": "STRING", - "value": "mps3" - }, - "TARGET_SUBSYSTEM": { - "type": "STRING", - "value": "sse-300" - } - } - }, - { - "name": "mps3-310", - "description": "Target mps3 board, SSE-310 subsystem.", - "hidden": true, - "cacheVariables": { - "TARGET_PLATFORM": { - "type": "STRING", - "value": "mps3" - }, - "TARGET_SUBSYSTEM": { - "type": "STRING", - "value": "sse-310" - } - } - }, - { - "name": "simple-platform", - "description": "Target simple platform.", - "hidden": true, - "cacheVariables": { - "TARGET_PLATFORM": { - "type": "STRING", - "value": "simple_platform" - } - } - }, - { - "name": "simple-gcc", - "displayName": "simple-gcc", - "description": "Target simple platform build with bare-metal gcc toolchain.", - "inherits": [ - "base", - "simple-platform", - "gcc-toolchain" - ] - }, - { - "name": "simple-clang", - "displayName": "simple-armclang", - "description": "Target simple platform build with bare-metal armclang toolchain.", - "inherits": [ - "base", - "simple-platform", - "armclang-toolchain" - ] - }, - { - "name": "mps3-300-gcc", - "displayName": "mps3-300-gcc", - "description": "Target mps3 board, SSE-300 subsystem with bare-metal gcc toolchain.", - "inherits": [ - "base", - "mps3-300", - "gcc-toolchain" - ] - }, - { - "name": "mps3-300-clang", - "displayName": "mps3-300-armclang", - "description": "Target mps3 board, SSE-300 subsystem with bare-metal armclang toolchain.", - "inherits": [ - "base", - "mps3-300", - "armclang-toolchain" - ] - }, - { - "name": "mps3-310-gcc", - "displayName": "mps3-310-gcc", - "description": "Target mps3 board, SSE-310 subsystem with bare-metal gcc toolchain.", - "inherits": [ - "base", - "mps3-310", - "gcc-toolchain" - ] - }, - { - "name": "mps3-310-clang", - "displayName": "mps3-310-armclang", - "description": "Target mps3 board, SSE-310 subsystem with bare-metal armclang toolchain.", - "inherits": [ - "base", - "mps3-310", - "armclang-toolchain" - ] - }, - { - "name": "native", - "inherits": [ - "base" - ], - "displayName": "native", - "description": "Target native system.", - "cacheVariables": { - "TARGET_PLATFORM": { - "type": "STRING", - "value": "native" - }, - "CMAKE_TOOLCHAIN_FILE": { - "type": "STRING", - "value": "${sourceDir}/scripts/cmake/toolchains/native-gcc.cmake" - } - } - } - ], - "buildPresets": [ - { - "name": "native", - "configurePreset": "native" - }, - { - "name": "mps3-300-gcc", - "configurePreset": "mps3-300-gcc" - }, - { - "name": "mps3-300-clang", - "configurePreset": "mps3-300-clang" - }, - { - "name": "mps3-310-gcc", - "configurePreset": "mps3-310-gcc" - }, - { - "name": "mps3-310-clang", - "configurePreset": "mps3-310-clang" - }, - { - "name": "simple-gcc", - "configurePreset": "simple-gcc" - }, - { - "name": "simple-clang", - "configurePreset": "simple-clang" - } - ], - "testPresets": [ - { - "name": "native-tests", - "description": "native tests", - "displayName": "Run native tests.", - "configurePreset": "native" - } - ] + { + "name": "simple-clang", + "displayName": "simple-armclang", + "description": "Target simple platform build with bare-metal armclang toolchain.", + "inherits": [ + "simple-platform", + "armclang-toolchain" + ] + }, + { + "name": "mps3-300-gcc", + "displayName": "mps3-300-gcc", + "description": "Target mps3 board, SSE-300 subsystem with bare-metal gcc toolchain.", + "inherits": [ + "mps3-300-platform", + "gcc-toolchain" + ] + }, + { + "name": "mps3-300-clang", + "displayName": "mps3-300-armclang", + "description": "Target mps3 board, SSE-300 subsystem with bare-metal armclang toolchain.", + "inherits": [ + "mps3-300-platform", + "armclang-toolchain" + ] + }, + { + "name": "mps3-310-gcc", + "displayName": "mps3-310-gcc", + "description": "Target mps3 board, SSE-310 subsystem with bare-metal gcc toolchain.", + "inherits": [ + "mps3-310-platform", + "gcc-toolchain" + ] + }, + { + "name": "mps3-310-clang", + "displayName": "mps3-310-armclang", + "description": "Target mps3 board, SSE-310 subsystem with bare-metal armclang toolchain.", + "inherits": [ + "mps3-310-platform", + "armclang-toolchain" + ] + }, + { + "name": "native", + "displayName": "native", + "description": "Target native system.", + "inherits": [ + "native-platform", + "native-toolchain" + ] + }, + { + "name": "mps3-300-gcc-custom", + "displayName": "mps3-300-gcc-custom", + "description": "mps3-300-gcc with debug enabled, default option for inference.", + "inherits": [ + "mps3-300-gcc", + "log-debug", + "single-input" + ] + } + ], + "buildPresets": [ + { + "name": "native", + "configurePreset": "native", + "inherits": "usecase-targets" + }, + { + "name": "mps3-300-gcc", + "configurePreset": "mps3-300-gcc", + "inherits": "usecase-targets" + }, + { + "name": "mps3-300-gcc-custom", + "configurePreset": "mps3-300-gcc-custom", + "inherits": "usecase-targets" + }, + { + "name": "mps3-300-clang", + "configurePreset": "mps3-300-clang", + "inherits": "usecase-targets" + }, + { + "name": "mps3-310-gcc", + "configurePreset": "mps3-310-gcc", + "inherits": "usecase-targets" + }, + { + "name": "mps3-310-clang", + "configurePreset": "mps3-310-clang", + "inherits": "usecase-targets" + }, + { + "name": "simple-gcc", + "configurePreset": "simple-gcc", + "inherits": "usecase-targets" + }, + { + "name": "simple-clang", + "configurePreset": "simple-clang", + "inherits": "usecase-targets" + } + ], + "testPresets": [ + { + "name": "native-tests", + "description": "native tests", + "displayName": "Run native tests.", + "configurePreset": "native" + } + ] } diff --git a/scripts/cmake/options-preset.json b/scripts/cmake/options-preset.json new file mode 100644 index 0000000..57b7a7d --- /dev/null +++ b/scripts/cmake/options-preset.json @@ -0,0 +1,71 @@ +{ + "version": 4, + "cmakeMinimumRequired": { + "major": 3, + "minor": 23, + "patch": 0 + }, + "configurePresets": [ + { + "name": "log-trace", + "hidden": true, + "cacheVariables": { + "LOG_LEVEL": { + "type": "STRING", + "value": "LOG_LEVEL_TRACE" + } + } + }, + { + "name": "log-debug", + "hidden": true, + "cacheVariables": { + "LOG_LEVEL": { + "type": "STRING", + "value": "LOG_LEVEL_DEBUG" + } + } + }, + { + "name": "log-info", + "hidden": true, + "cacheVariables": { + "LOG_LEVEL": { + "type": "STRING", + "value": "LOG_LEVEL_INFO" + } + } + }, + { + "name": "log-warning", + "hidden": true, + "cacheVariables": { + "LOG_LEVEL": { + "type": "STRING", + "value": "LOG_LEVEL_WARN" + } + } + }, + { + "name": "log-error", + "hidden": true, + "cacheVariables": { + "LOG_LEVEL": { + "type": "STRING", + "value": "LOG_LEVEL_ERROR" + } + } + }, + { + "name": "single-input", + "hidden": true, + "description": "Use single default input data for each use case.", + "cacheVariables": { + "USE_SINGLE_INPUT": { + "type": "BOOL", + "value": "TRUE" + } + } + } + ] +}
\ No newline at end of file diff --git a/scripts/cmake/platforms/platforms-preset.json b/scripts/cmake/platforms/platforms-preset.json new file mode 100644 index 0000000..7a96d7a --- /dev/null +++ b/scripts/cmake/platforms/platforms-preset.json @@ -0,0 +1,62 @@ +{ + "version": 4, + "cmakeMinimumRequired": { + "major": 3, + "minor": 23, + "patch": 0 + }, + "configurePresets": [ + { + "name": "mps3-300-platform", + "description": "Target mps3 board, SSE-300 subsystem.", + "hidden": true, + "cacheVariables": { + "TARGET_PLATFORM": { + "type": "STRING", + "value": "mps3" + }, + "TARGET_SUBSYSTEM": { + "type": "STRING", + "value": "sse-300" + } + } + }, + { + "name": "mps3-310-platform", + "description": "Target mps3 board, SSE-310 subsystem.", + "hidden": true, + "cacheVariables": { + "TARGET_PLATFORM": { + "type": "STRING", + "value": "mps3" + }, + "TARGET_SUBSYSTEM": { + "type": "STRING", + "value": "sse-310" + } + } + }, + { + "name": "simple-platform", + "description": "Target simple platform.", + "hidden": true, + "cacheVariables": { + "TARGET_PLATFORM": { + "type": "STRING", + "value": "simple_platform" + } + } + }, + { + "name": "native-platform", + "description": "Target native platform.", + "hidden": true, + "cacheVariables": { + "TARGET_PLATFORM": { + "type": "STRING", + "value": "native" + } + } + } + ] +}
\ No newline at end of file diff --git a/scripts/cmake/toolchains/toolchain-preset.json b/scripts/cmake/toolchains/toolchain-preset.json new file mode 100644 index 0000000..728547f --- /dev/null +++ b/scripts/cmake/toolchains/toolchain-preset.json @@ -0,0 +1,43 @@ +{ + "version": 4, + "cmakeMinimumRequired": { + "major": 3, + "minor": 23, + "patch": 0 + }, + "configurePresets": [ + { + "name": "gcc-toolchain", + "description": "Use gcc toolchain.", + "hidden": true, + "cacheVariables": { + "CMAKE_TOOLCHAIN_FILE": { + "type": "STRING", + "value": "${sourceDir}/scripts/cmake/toolchains/bare-metal-gcc.cmake" + } + } + }, + { + "name": "armclang-toolchain", + "description": "Use armclang toolchain.", + "hidden": true, + "cacheVariables": { + "CMAKE_TOOLCHAIN_FILE": { + "type": "STRING", + "value": "${sourceDir}/scripts/cmake/toolchains/bare-metal-armclang.cmake" + } + } + }, + { + "name": "native-toolchain", + "description": "Use native toolchain.", + "hidden": true, + "cacheVariables": { + "CMAKE_TOOLCHAIN_FILE": { + "type": "STRING", + "value": "${sourceDir}/scripts/cmake/toolchains/native-gcc.cmake" + } + } + } + ] +}
\ No newline at end of file diff --git a/source/use_case/usecase-preset.json b/source/use_case/usecase-preset.json new file mode 100644 index 0000000..330fc10 --- /dev/null +++ b/source/use_case/usecase-preset.json @@ -0,0 +1,27 @@ +{ + "version": 4, + "cmakeMinimumRequired": { + "major": 3, + "minor": 23, + "patch": 0 + }, + "buildPresets": [ + { + "name": "usecase-targets", + "description": "Base preset for specifying use-case targets in build presets.", + "hidden": true, + "targets": [ + "all", + "ethos-u-ad", + "ethos-u-asr", + "ethos-u-img_class", + "ethos-u-inference_runner", + "ethos-u-kws_asr", + "ethos-u-kws", + "ethos-u-noise_reduction", + "ethos-u-object_detection", + "ethos-u-vww" + ] + } + ] +}
\ No newline at end of file |