spl-core 7.2.5__tar.gz → 7.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. {spl_core-7.2.5 → spl_core-7.3.0}/PKG-INFO +1 -1
  2. {spl_core-7.2.5 → spl_core-7.3.0}/pyproject.toml +1 -1
  3. spl_core-7.3.0/src/spl_core/__init__.py +1 -0
  4. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/common.cmake +35 -8
  5. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/main/CMakeLists.txt +1 -0
  6. spl_core-7.3.0/src/spl_core/kickstart/templates/project/.vscode/cmake-kits.json +11 -0
  7. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/.vscode/extensions.json +3 -2
  8. spl_core-7.3.0/src/spl_core/kickstart/templates/project/.vscode/settings.json +115 -0
  9. spl_core-7.3.0/src/spl_core/kickstart/templates/project/.vscode/tasks.json +146 -0
  10. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/CMakeLists.txt +30 -46
  11. spl_core-7.3.0/src/spl_core/kickstart/templates/project/bootstrap.json +5 -0
  12. spl_core-7.3.0/src/spl_core/kickstart/templates/project/build.bat +1 -0
  13. spl_core-7.3.0/src/spl_core/kickstart/templates/project/build.ps1 +374 -0
  14. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/conf.py +16 -17
  15. spl_core-7.3.0/src/spl_core/kickstart/templates/project/pypeline.yaml +9 -0
  16. spl_core-7.3.0/src/spl_core/kickstart/templates/project/pyproject.toml +18 -0
  17. spl_core-7.3.0/src/spl_core/kickstart/templates/project/pytest.ini +15 -0
  18. spl_core-7.3.0/src/spl_core/kickstart/templates/project/scoopfile.json +23 -0
  19. spl_core-7.3.0/src/spl_core/kickstart/templates/project/tools/toolchains/clang/toolchain.cmake +3 -0
  20. spl_core-7.2.5/src/spl_core/__init__.py +0 -1
  21. spl_core-7.2.5/src/spl_core/kickstart/templates/project/.vscode/cmake-kits.json +0 -11
  22. spl_core-7.2.5/src/spl_core/kickstart/templates/project/.vscode/settings.json +0 -45
  23. spl_core-7.2.5/src/spl_core/kickstart/templates/project/.vscode/tasks.json +0 -113
  24. spl_core-7.2.5/src/spl_core/kickstart/templates/project/bootstrap.json +0 -4
  25. spl_core-7.2.5/src/spl_core/kickstart/templates/project/build.bat +0 -1
  26. spl_core-7.2.5/src/spl_core/kickstart/templates/project/build.ps1 +0 -271
  27. spl_core-7.2.5/src/spl_core/kickstart/templates/project/pipfile +0 -8
  28. spl_core-7.2.5/src/spl_core/kickstart/templates/project/pytest.ini +0 -10
  29. spl_core-7.2.5/src/spl_core/kickstart/templates/project/scoopfile.json +0 -14
  30. spl_core-7.2.5/src/spl_core/kickstart/templates/project/tools/toolchains/clang/toolchain.cmake +0 -8
  31. {spl_core-7.2.5 → spl_core-7.3.0}/LICENSE +0 -0
  32. {spl_core-7.2.5 → spl_core-7.3.0}/README.md +0 -0
  33. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/__run.py +0 -0
  34. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/common/__init__.py +0 -0
  35. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/common/command_line_executor.py +0 -0
  36. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/common/path.py +0 -0
  37. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/conan.cmake +0 -0
  38. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/config/KConfig +0 -0
  39. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/gcov_maid/__init__.py +0 -0
  40. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/gcov_maid/gcov_maid.py +0 -0
  41. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kconfig/__init__.py +0 -0
  42. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kconfig/kconfig.py +0 -0
  43. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kconfig.cmake +0 -0
  44. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/__init__.py +0 -0
  45. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/create.py +0 -0
  46. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/.vscode/cmake-variants.json +0 -0
  47. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/KConfig +0 -0
  48. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/greeter/CMakeLists.txt +0 -0
  49. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/greeter/doc/_images/screenshot.png +0 -0
  50. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/greeter/doc/index.rst +0 -0
  51. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/greeter/src/greeter.c +0 -0
  52. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/greeter/src/greeter.h +0 -0
  53. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/greeter/test/test_greeter.cc +0 -0
  54. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/main/doc/index.rst +0 -0
  55. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/src/main/src/main.c +0 -0
  56. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/test/EnglishVariant/test__EnglishVariant.py +0 -0
  57. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/test/German/test__GermanVariant.py +0 -0
  58. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/variants/EnglishVariant/config.cmake +0 -0
  59. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/variants/EnglishVariant/parts.cmake +0 -0
  60. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/variants/GermanVariant/config.cmake +0 -0
  61. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/variants/GermanVariant/config.txt +0 -0
  62. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/application/variants/GermanVariant/parts.cmake +0 -0
  63. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/.gitignore +0 -0
  64. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/.vscode/launch.json +0 -0
  65. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/README.md +0 -0
  66. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/Doxyfile.in +0 -0
  67. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/common/index.rst +0 -0
  68. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/components/index.rst +0 -0
  69. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/doxygen-awesome/LICENSE +0 -0
  70. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/doxygen-awesome/doxygen-awesome.css +0 -0
  71. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/software_architecture/index.rst +0 -0
  72. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/software_requirements/index.rst +0 -0
  73. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/doc/test_report_template.txt +0 -0
  74. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/index.rst +0 -0
  75. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/kickstart/templates/project/tools/toolchains/gcc/toolchain.cmake +0 -0
  76. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/main.py +0 -0
  77. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/spl.cmake +0 -0
  78. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/test_utils/base_variant_test_runner.py +0 -0
  79. {spl_core-7.2.5 → spl_core-7.3.0}/src/spl_core/test_utils/spl_build.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: spl-core
3
- Version: 7.2.5
3
+ Version: 7.3.0
4
4
  Summary: Software Product Line Support for CMake
5
5
  License: MIT
6
6
  Author: Avengineers
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "spl-core"
3
- version = "7.2.5"
3
+ version = "7.3.0"
4
4
  description = "Software Product Line Support for CMake"
5
5
  authors = ["Avengineers <karsten.guenther@kamg.de>"]
6
6
  license = "MIT"
@@ -0,0 +1 @@
1
+ __version__ = "7.3.0"
@@ -76,6 +76,16 @@ macro(spl_add_test_source fileName)
76
76
  list(APPEND TEST_SOURCES ${to_be_appended})
77
77
  endmacro()
78
78
 
79
+ macro(spl_add_provided_interface directory)
80
+ _spl_get_absolute_path(to_be_appended ${directory})
81
+ list(APPEND PROVIDED_INTERFACES ${to_be_appended})
82
+ endmacro()
83
+
84
+ macro(spl_add_required_interface component)
85
+ _spl_slash_to_underscore(component_name ${component})
86
+ list(APPEND REQUIRED_INTERFACES ${component_name})
87
+ endmacro()
88
+
79
89
  macro(_spl_get_google_test)
80
90
  # GoogleTest requires at least C++14
81
91
  set(CMAKE_CXX_STANDARD 14)
@@ -182,14 +192,6 @@ macro(spl_create_component)
182
192
  \"has_reports\": \"\",
183
193
  \"reports_output_dir\": \"\"
184
194
  }")
185
-
186
- list(APPEND target_include_directories__INCLUDES ${CMAKE_CURRENT_LIST_DIR}/src)
187
- list(APPEND target_include_directories__INCLUDES ${CMAKE_CURRENT_BINARY_DIR})
188
-
189
- list(APPEND target_include_directories__INCLUDES ${INCLUDES})
190
- list(REMOVE_DUPLICATES target_include_directories__INCLUDES)
191
- set(target_include_directories__INCLUDES ${target_include_directories__INCLUDES} PARENT_SCOPE)
192
-
193
195
  if(BUILD_KIT STREQUAL prod)
194
196
  if(SOURCES)
195
197
  # Create the component library
@@ -355,6 +357,31 @@ Code Coverage
355
357
  endif(EXISTS ${_component_doc_file})
356
358
  endif(BUILD_KIT STREQUAL prod)
357
359
 
360
+ # Implicitly add default include directories to provided interfaces
361
+ list(APPEND PROVIDED_INTERFACES ${CMAKE_CURRENT_LIST_DIR}/src)
362
+ list(APPEND PROVIDED_INTERFACES ${CMAKE_CURRENT_BINARY_DIR})
363
+ # Get rid of duplicates, in case the default directories where explicitly defined
364
+ list(REMOVE_DUPLICATES PROVIDED_INTERFACES)
365
+
366
+ # Make sure the component provided interfaces are added to the global include directories. Required for backward compatibility.
367
+ foreach(interfaceDir IN LISTS PROVIDED_INTERFACES)
368
+ spl_add_include(${interfaceDir})
369
+ endforeach()
370
+
371
+ list(APPEND target_include_directories__INCLUDES ${INCLUDES})
372
+ list(REMOVE_DUPLICATES target_include_directories__INCLUDES)
373
+ set(target_include_directories__INCLUDES ${target_include_directories__INCLUDES} PARENT_SCOPE)
374
+
375
+ # Define the target public interfaces to be used instead of the global include directories.
376
+ if(TARGET ${component_name})
377
+ foreach(interfaceDir IN LISTS PROVIDED_INTERFACES)
378
+ target_include_directories(${component_name} PUBLIC ${interfaceDir})
379
+ endforeach()
380
+ foreach(component IN LISTS REQUIRED_INTERFACES)
381
+ target_link_libraries(${component_name} PUBLIC ${component})
382
+ endforeach()
383
+ endif()
384
+
358
385
  # Collect all component info for later usage (e.g., in an extension)
359
386
  list(APPEND COMPONENTS_INFO ${_component_info})
360
387
  set(COMPONENTS_INFO ${COMPONENTS_INFO} PARENT_SCOPE)
@@ -1,2 +1,3 @@
1
1
  spl_add_source(src/main.c)
2
+ spl_add_required_interface(src/greeter)
2
3
  spl_create_component(LONG_NAME "Main")
@@ -0,0 +1,11 @@
1
+ [
2
+ {
3
+ "name": "prod",
4
+ "environmentSetupScript": "${workspaceFolder}/build/env_setup.bat"
5
+ },
6
+ {
7
+ "name": "test",
8
+ "toolchainFile": "tools/toolchains/gcc/toolchain.cmake",
9
+ "environmentSetupScript": "${workspaceFolder}/build/env_setup.bat"
10
+ }
11
+ ]
@@ -2,7 +2,6 @@
2
2
  "recommendations": [
3
3
  "mhutchie.git-graph",
4
4
  "ms-vscode.cmake-tools",
5
- "twxs.cmake",
6
5
  "ms-vscode.cpptools",
7
6
  "ms-vscode.cpptools-themes",
8
7
  "visualstudioexptteam.intellicode-api-usage-examples",
@@ -15,6 +14,8 @@
15
14
  "felipecaputo.git-project-manager",
16
15
  "ms-vscode.powershell",
17
16
  "waderyan.gitblame",
18
- "sandcastle.vscode-open"
17
+ "sandcastle.vscode-open",
18
+ "josetr.cmake-language-support-vscode",
19
+ "ibm.output-colorizer"
19
20
  ]
20
21
  }
@@ -0,0 +1,115 @@
1
+ {
2
+ "python.testing.pytestEnabled": true,
3
+ "python.testing.unittestEnabled": false,
4
+ "python.analysis.include": [
5
+ "test",
6
+ "build/modules/spl-core-src"
7
+ ],
8
+ "[python]": {
9
+ "editor.defaultFormatter": "charliermarsh.ruff"
10
+ },
11
+ "[cmake]": {
12
+ "editor.defaultFormatter": "josetr.cmake-language-support-vscode"
13
+ },
14
+ "cmake.configureOnOpen": false,
15
+ "cmake.buildDirectory": "${workspaceFolder}/build/${variant:variant}/${buildKit}/${buildType}",
16
+ "cmake.configureSettings": {
17
+ "BUILD_KIT": "${buildKit}",
18
+ "CMAKE_MESSAGE_LOG_LEVEL": "STATUS",
19
+ "BUILD_TYPE": "${buildType}",
20
+ },
21
+ "cmake.generator": "Ninja",
22
+ "cmake.debugConfig": {
23
+ "MIMode": "gdb",
24
+ "miDebuggerPath": "gdb",
25
+ "stopAtEntry": true
26
+ },
27
+ "cmake.configureOnEdit": false,
28
+ "cmake.buildBeforeRun": false,
29
+ "cmake.options.statusBarVisibility": "compact",
30
+ "cmake.buildToolArgs": [],
31
+ "git.ignoreLimitWarning": true,
32
+ "C_Cpp.errorSquiggles": "enabled",
33
+ "C_Cpp.default.cStandard": "gnu17",
34
+ "C_Cpp.default.configurationProvider": "ms-vscode.cmake-tools",
35
+ "C_Cpp.formatting": "clangFormat",
36
+ "editor.formatOnSave": true,
37
+ "files.insertFinalNewline": true,
38
+ "files.trimTrailingWhitespace": true,
39
+ "files.associations": {
40
+ "*.h": "c",
41
+ "*.c": "c",
42
+ "Jenkinsfile": "groovy",
43
+ "*.py": "python",
44
+ "array": "cpp",
45
+ "string_view": "cpp",
46
+ "initializer_list": "cpp",
47
+ "span": "cpp",
48
+ "any": "cpp",
49
+ "atomic": "cpp",
50
+ "bit": "cpp",
51
+ "*.tcc": "cpp",
52
+ "cctype": "cpp",
53
+ "charconv": "cpp",
54
+ "chrono": "cpp",
55
+ "clocale": "cpp",
56
+ "cmath": "cpp",
57
+ "compare": "cpp",
58
+ "concepts": "cpp",
59
+ "condition_variable": "cpp",
60
+ "cstdarg": "cpp",
61
+ "cstddef": "cpp",
62
+ "cstdint": "cpp",
63
+ "cstdio": "cpp",
64
+ "cstdlib": "cpp",
65
+ "cstring": "cpp",
66
+ "ctime": "cpp",
67
+ "cwchar": "cpp",
68
+ "cwctype": "cpp",
69
+ "deque": "cpp",
70
+ "forward_list": "cpp",
71
+ "list": "cpp",
72
+ "map": "cpp",
73
+ "set": "cpp",
74
+ "string": "cpp",
75
+ "unordered_map": "cpp",
76
+ "unordered_set": "cpp",
77
+ "vector": "cpp",
78
+ "exception": "cpp",
79
+ "algorithm": "cpp",
80
+ "functional": "cpp",
81
+ "iterator": "cpp",
82
+ "memory": "cpp",
83
+ "memory_resource": "cpp",
84
+ "numeric": "cpp",
85
+ "optional": "cpp",
86
+ "random": "cpp",
87
+ "ratio": "cpp",
88
+ "system_error": "cpp",
89
+ "tuple": "cpp",
90
+ "type_traits": "cpp",
91
+ "utility": "cpp",
92
+ "format": "cpp",
93
+ "fstream": "cpp",
94
+ "iomanip": "cpp",
95
+ "iosfwd": "cpp",
96
+ "iostream": "cpp",
97
+ "istream": "cpp",
98
+ "limits": "cpp",
99
+ "mutex": "cpp",
100
+ "new": "cpp",
101
+ "numbers": "cpp",
102
+ "ostream": "cpp",
103
+ "semaphore": "cpp",
104
+ "sstream": "cpp",
105
+ "stdexcept": "cpp",
106
+ "stop_token": "cpp",
107
+ "streambuf": "cpp",
108
+ "thread": "cpp",
109
+ "typeinfo": "cpp",
110
+ "variant": "cpp"
111
+ },
112
+ "git.repositoryScanMaxDepth": 3,
113
+ "git-graph.maxDepthOfRepoSearch": 3,
114
+ "editor.tabSize": 4,
115
+ }
@@ -0,0 +1,146 @@
1
+ {
2
+ "version": "2.0.0",
3
+ "tasks": [
4
+ {
5
+ "label": "Get mandatory tools",
6
+ "detail": "Installation of mandatory tools",
7
+ "type": "shell",
8
+ "command": ".\\build.ps1 -install",
9
+ "problemMatcher": []
10
+ },
11
+ {
12
+ "label": "Environment",
13
+ "detail": "Print all environment variables for debugging purposes",
14
+ "type": "shell",
15
+ "command": "dir env:",
16
+ "problemMatcher": []
17
+ },
18
+ {
19
+ "label": "Configure variant",
20
+ "detail": "Feature configuration using KConfig",
21
+ "type": "shell",
22
+ "command": ".venv/Scripts/poetry run guiconfig",
23
+ "options": {
24
+ "env": {
25
+ "KCONFIG_CONFIG": "variants/${input:variant}/config.txt"
26
+ }
27
+ },
28
+ "problemMatcher": []
29
+ },
30
+ {
31
+ "label": "Open variant test report",
32
+ "detail": "Open the variant's overall test report in your web browser",
33
+ "command": "${workspaceFolder}/build/${input:variant}/test/Debug/reports/html/index.html",
34
+ "type": "shell",
35
+ "presentation": {
36
+ "reveal": "always"
37
+ },
38
+ "group": {
39
+ "kind": "build",
40
+ "isDefault": false
41
+ }
42
+ },
43
+ {
44
+ "label": "Open variant coverage report",
45
+ "detail": "Open the variant's overall coverage report in your web browser",
46
+ "command": "${workspaceFolder}/build/${input:variant}/test/Debug/reports/coverage/index.html",
47
+ "type": "shell",
48
+ "presentation": {
49
+ "reveal": "always"
50
+ },
51
+ "group": {
52
+ "kind": "build",
53
+ "isDefault": false
54
+ }
55
+ },
56
+ {
57
+ "label": "Open component test report",
58
+ "detail": "Open the component's test report in your web browser",
59
+ "command": "${workspaceFolder}/build/${input:variant}/test/Debug/${input:component}/reports/html/index.html",
60
+ "type": "shell",
61
+ "presentation": {
62
+ "reveal": "always"
63
+ },
64
+ "group": {
65
+ "kind": "build",
66
+ "isDefault": false
67
+ }
68
+ },
69
+ {
70
+ "label": "Open component coverage report",
71
+ "detail": "Open the component's coverage report in your web browser",
72
+ "command": "${workspaceFolder}/build/${input:variant}/test/Debug/${input:component}/reports/coverage/index.html",
73
+ "type": "shell",
74
+ "presentation": {
75
+ "reveal": "always"
76
+ },
77
+ "group": {
78
+ "kind": "build",
79
+ "isDefault": false
80
+ }
81
+ },
82
+ {
83
+ "label": "Generate PAYC options file",
84
+ "detail": "Generate Polyspace-As-You-Code options file for the selected variant",
85
+ "command": "./build.ps1",
86
+ "args": [
87
+ "-command",
88
+ "sple_static_analysis.exe generate-ps-options-file --project-root-dir ${workspaceFolder} --variant ${input:variant} --build-kit prod --build-type ${input:buildType} --payc --output-folder ./build"
89
+ ],
90
+ "type": "shell",
91
+ "presentation": {
92
+ "reveal": "always"
93
+ },
94
+ "group": {
95
+ "kind": "build",
96
+ "isDefault": false
97
+ }
98
+ },
99
+ {
100
+ "label": "Generate Polyspace BF options file",
101
+ "detail": "Generate Polyspace Bug Finder options file for the selected variant",
102
+ "command": "./build.ps1",
103
+ "args": [
104
+ "-command",
105
+ "sple_static_analysis.exe generate-ps-options-file --project-root-dir ${workspaceFolder} --variant ${input:variant} --build-kit prod --build-type Debug --output-folder ./variants/${input:variant}"
106
+ ],
107
+ "type": "shell",
108
+ "presentation": {
109
+ "reveal": "always"
110
+ },
111
+ "group": {
112
+ "kind": "build",
113
+ "isDefault": false
114
+ }
115
+ }
116
+ ],
117
+ "inputs": [
118
+ {
119
+ "type": "pickString",
120
+ "id": "variant",
121
+ "description": "Which variant do you want to select?",
122
+ "options": [
123
+ "EnglishVariant",
124
+ "GermanVariant"
125
+ ]
126
+ },
127
+ {
128
+ "type": "pickString",
129
+ "id": "component",
130
+ "description": "Which component do you want to select?",
131
+ "options": [
132
+ "src/greeter",
133
+ "src/main"
134
+ ]
135
+ },
136
+ {
137
+ "type": "pickString",
138
+ "id": "buildType",
139
+ "description": "Which build type do you want to use?",
140
+ "options": [
141
+ "Debug",
142
+ "Release"
143
+ ]
144
+ }
145
+ ]
146
+ }
@@ -1,46 +1,30 @@
1
- # cmake project definition
2
- cmake_minimum_required(VERSION 3.24.0)
3
- cmake_policy(VERSION 3.24)
4
-
5
- # configure the current variant to be build
6
- set(BUILD_KIT prod CACHE STRING "Target Group to build.")
7
-
8
- include(${CMAKE_SOURCE_DIR}/variants/${VARIANT}/config.cmake)
9
-
10
- if(BUILD_KIT STREQUAL prod)
11
- project(${VARIANT} C ASM)
12
- else()
13
- # In case of test the project is a C++ project due to GTest usage
14
- project(${VARIANT} C ASM CXX)
15
- endif()
16
-
17
- # Fetch all external dependencies into modules directory
18
- set(FETCHCONTENT_BASE_DIR ${CMAKE_SOURCE_DIR}/build/modules CACHE INTERNAL "")
19
- set(FETCHCONTENT_QUIET FALSE)
20
- include(FetchContent)
21
-
22
- # Include spl-core
23
- if(DEFINED ENV{SPLCORE_PATH})
24
- message(WARNING "SPLCORE_PATH defined! Use fixed SPL-CORE version from: $ENV{SPLCORE_PATH}")
25
- include($ENV{SPLCORE_PATH}/spl.cmake)
26
- else()
27
- # Fetch spl-core
28
- FetchContent_Declare(
29
- spl-core
30
- GIT_REPOSITORY https://github.com/avengineers/spl-core.git
31
- GIT_TAG develop
32
- )
33
- FetchContent_MakeAvailable(spl-core)
34
-
35
- # Include spl-core
36
- include(${spl-core_SOURCE_DIR}/cmake/spl.cmake)
37
- endif()
38
-
39
- include(${CMAKE_SOURCE_DIR}/variants/${VARIANT}/parts.cmake)
40
-
41
- # add all components' include directories to the include paths of each component
42
- foreach(component_name ${COMPONENT_NAMES})
43
- if(TARGET ${component_name})
44
- target_include_directories(${component_name} PUBLIC ${target_include_directories__INCLUDES})
45
- endif()
46
- endforeach()
1
+ # cmake project definition
2
+ cmake_minimum_required(VERSION 3.24.0)
3
+ cmake_policy(VERSION 3.24)
4
+
5
+ # configure the current variant to be build
6
+ set(BUILD_KIT prod CACHE STRING "Target Group to build.")
7
+
8
+ include(${CMAKE_SOURCE_DIR}/variants/${VARIANT}/config.cmake)
9
+
10
+ if(BUILD_KIT STREQUAL prod)
11
+ project(${VARIANT} C ASM)
12
+ else()
13
+ # C++ project due to GTest usage
14
+ project(${VARIANT} C ASM CXX)
15
+ endif()
16
+
17
+ # Fetch all external dependencies into modules directory
18
+ set(FETCHCONTENT_BASE_DIR ${CMAKE_SOURCE_DIR}/build/modules CACHE INTERNAL "")
19
+ set(FETCHCONTENT_QUIET FALSE)
20
+ include(FetchContent)
21
+
22
+ # Include spl-core
23
+ if(DEFINED ENV{SPLCORE_PATH})
24
+ message(WARNING "SPLCORE_PATH defined! Use fixed SPL-CORE version from: $ENV{SPLCORE_PATH}")
25
+ include($ENV{SPLCORE_PATH}/spl.cmake)
26
+ else()
27
+ include(".venv/Lib/site-packages/spl_core/spl.cmake")
28
+ endif()
29
+
30
+ include(${CMAKE_SOURCE_DIR}/variants/${VARIANT}/parts.cmake)
@@ -0,0 +1,5 @@
1
+ {
2
+ "python_version": "3.11",
3
+ "python_package_manager": "poetry>=2.0",
4
+ "scoop_ignore_scoopfile": true
5
+ }
@@ -0,0 +1 @@
1
+ powershell -ExecutionPolicy Bypass -File %~dp0build.ps1 -waitForKey %* || exit /b 1