spl-core 7.2.6__tar.gz → 7.3.0rc1__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 (68) hide show
  1. {spl_core-7.2.6 → spl_core-7.3.0rc1}/PKG-INFO +1 -1
  2. {spl_core-7.2.6 → spl_core-7.3.0rc1}/pyproject.toml +1 -1
  3. spl_core-7.3.0rc1/src/spl_core/__init__.py +1 -0
  4. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/common.cmake +75 -3
  5. spl_core-7.2.6/src/spl_core/__init__.py +0 -1
  6. {spl_core-7.2.6 → spl_core-7.3.0rc1}/LICENSE +0 -0
  7. {spl_core-7.2.6 → spl_core-7.3.0rc1}/README.md +0 -0
  8. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/__run.py +0 -0
  9. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/common/__init__.py +0 -0
  10. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/common/command_line_executor.py +0 -0
  11. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/common/path.py +0 -0
  12. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/conan.cmake +0 -0
  13. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/config/KConfig +0 -0
  14. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/gcov_maid/__init__.py +0 -0
  15. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/gcov_maid/gcov_maid.py +0 -0
  16. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kconfig/__init__.py +0 -0
  17. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kconfig/kconfig.py +0 -0
  18. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kconfig.cmake +0 -0
  19. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/__init__.py +0 -0
  20. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/create.py +0 -0
  21. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/.vscode/cmake-variants.json +0 -0
  22. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/KConfig +0 -0
  23. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/greeter/CMakeLists.txt +0 -0
  24. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/greeter/doc/_images/screenshot.png +0 -0
  25. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/greeter/doc/index.rst +0 -0
  26. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/greeter/src/greeter.c +0 -0
  27. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/greeter/src/greeter.h +0 -0
  28. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/greeter/test/test_greeter.cc +0 -0
  29. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/main/CMakeLists.txt +0 -0
  30. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/main/doc/index.rst +0 -0
  31. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/src/main/src/main.c +0 -0
  32. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/test/EnglishVariant/test__EnglishVariant.py +0 -0
  33. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/test/German/test__GermanVariant.py +0 -0
  34. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/variants/EnglishVariant/config.cmake +0 -0
  35. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/variants/EnglishVariant/parts.cmake +0 -0
  36. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/variants/GermanVariant/config.cmake +0 -0
  37. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/variants/GermanVariant/config.txt +0 -0
  38. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/application/variants/GermanVariant/parts.cmake +0 -0
  39. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/.gitignore +0 -0
  40. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/.vscode/cmake-kits.json +0 -0
  41. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/.vscode/extensions.json +0 -0
  42. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/.vscode/launch.json +0 -0
  43. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/.vscode/settings.json +0 -0
  44. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/.vscode/tasks.json +0 -0
  45. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/CMakeLists.txt +0 -0
  46. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/README.md +0 -0
  47. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/bootstrap.json +0 -0
  48. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/build.bat +0 -0
  49. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/build.ps1 +0 -0
  50. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/conf.py +0 -0
  51. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/Doxyfile.in +0 -0
  52. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/common/index.rst +0 -0
  53. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/components/index.rst +0 -0
  54. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/doxygen-awesome/LICENSE +0 -0
  55. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/doxygen-awesome/doxygen-awesome.css +0 -0
  56. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/software_architecture/index.rst +0 -0
  57. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/software_requirements/index.rst +0 -0
  58. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/doc/test_report_template.txt +0 -0
  59. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/index.rst +0 -0
  60. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/pipfile +0 -0
  61. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/pytest.ini +0 -0
  62. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/scoopfile.json +0 -0
  63. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/tools/toolchains/clang/toolchain.cmake +0 -0
  64. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/kickstart/templates/project/tools/toolchains/gcc/toolchain.cmake +0 -0
  65. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/main.py +0 -0
  66. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/spl.cmake +0 -0
  67. {spl_core-7.2.6 → spl_core-7.3.0rc1}/src/spl_core/test_utils/base_variant_test_runner.py +0 -0
  68. {spl_core-7.2.6 → spl_core-7.3.0rc1}/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.6
3
+ Version: 7.3.0rc1
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.6"
3
+ version = "7.3.0-rc.1"
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-rc.1"
@@ -183,9 +183,9 @@ macro(spl_create_component)
183
183
  \"reports_output_dir\": \"\"
184
184
  }")
185
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
-
186
+ # handle include directories with global variable
187
+ #list(APPEND target_include_directories__INCLUDES ${CMAKE_CURRENT_LIST_DIR}/src)
188
+ #list(APPEND target_include_directories__INCLUDES ${CMAKE_CURRENT_BINARY_DIR})
189
189
  list(APPEND target_include_directories__INCLUDES ${INCLUDES})
190
190
  list(REMOVE_DUPLICATES target_include_directories__INCLUDES)
191
191
  set(target_include_directories__INCLUDES ${target_include_directories__INCLUDES} PARENT_SCOPE)
@@ -355,6 +355,10 @@ Code Coverage
355
355
  endif(EXISTS ${_component_doc_file})
356
356
  endif(BUILD_KIT STREQUAL prod)
357
357
 
358
+ # handle include directories with spl_macros
359
+ spl_add_provided_interfaces("${CMAKE_CURRENT_LIST_DIR}/src")
360
+ spl_add_provided_interfaces("${CMAKE_CURRENT_BINARY_DIR}")
361
+
358
362
  # Collect all component info for later usage (e.g., in an extension)
359
363
  list(APPEND COMPONENTS_INFO ${_component_info})
360
364
  set(COMPONENTS_INFO ${COMPONENTS_INFO} PARENT_SCOPE)
@@ -740,3 +744,71 @@ macro(_spl_create_build_info_file)
740
744
  ]
741
745
  }")
742
746
  endmacro()
747
+
748
+ macro(spl_add_provided_interfaces list_of_directories)
749
+ # Collect all provided interfaces for later usage (e.g., in an extension)
750
+ if(TARGET ${component_name})
751
+ get_target_property(provided_interfaces ${component_name} PROVIDED_INTERFACES)
752
+ if(provided_interfaces STREQUAL "provided_interfaces-NOTFOUND")
753
+ set_target_properties(${component_name} PROPERTIES PROVIDED_INTERFACES "${list_of_directories}")
754
+ else()
755
+ list(APPEND provided_interfaces ${list_of_directories})
756
+ set_target_properties(${component_name} PROPERTIES PROVIDED_INTERFACES "${provided_interfaces}")
757
+ endif()
758
+ endif()
759
+ list(APPEND target_include_directories__INCLUDES ${list_of_directories})
760
+ list(REMOVE_DUPLICATES target_include_directories__INCLUDES)
761
+ set(target_include_directories__INCLUDES ${target_include_directories__INCLUDES} PARENT_SCOPE)
762
+ endmacro()
763
+
764
+ macro(spl_add_required_interfaces list_of_interfaces)
765
+ if(TARGET ${component_name})
766
+ get_target_property(required_interfaces ${component_name} REQUIRED_INTERFACES)
767
+ if(required_interfaces STREQUAL "required_interfaces-NOTFOUND")
768
+ set_target_properties(${component_name} PROPERTIES REQUIRED_INTERFACES "${list_of_interfaces}")
769
+ else()
770
+ list(APPEND required_interfaces ${list_of_interfaces})
771
+ set_target_properties(${component_name} PROPERTIES REQUIRED_INTERFACES "${required_interfaces}")
772
+ endif()
773
+ endif()
774
+ endmacro()
775
+
776
+ macro(spl_resolve_interfaces)
777
+ foreach(component_name ${COMPONENT_NAMES})
778
+ if(TARGET ${component_name})
779
+ # get provided interfaces
780
+ get_target_property(COMP_PROVIDED_INTERFACES ${component_name} PROVIDED_INTERFACES)
781
+ if(NOT COMP_PROVIDED_INTERFACES STREQUAL "COMP_PROVIDED_INTERFACES-NOTFOUND")
782
+ target_include_directories(${component_name} PUBLIC ${COMP_PROVIDED_INTERFACES})
783
+ endif()
784
+
785
+ # get required interfaces
786
+ set(COMP_REQUIRED_INTERFACES "")
787
+ get_target_property(REQUIRED_INTERFACES ${component_name} REQUIRED_INTERFACES)
788
+ if(NOT REQUIRED_INTERFACES STREQUAL "REQUIRED_INTERFACES-NOTFOUND")
789
+ foreach(interface ${REQUIRED_INTERFACES})
790
+ if (TARGET ${interface})
791
+ # if the interface is a target, we can get the provided interfaces
792
+ get_target_property(IF_PROVIDED_INTERFACES ${interface} PROVIDED_INTERFACES)
793
+ list(APPEND COMP_REQUIRED_INTERFACES ${IF_PROVIDED_INTERFACES})
794
+ else()
795
+ # if the interface is not a target, we assume it is a path to an include directory
796
+ _spl_get_absolute_path(absolute_interface ${interface})
797
+ if(EXISTS "${absolute_interface}" AND IS_DIRECTORY "${absolute_interface}")
798
+ list(APPEND COMP_REQUIRED_INTERFACES ${absolute_interface})
799
+ # support the old way of handling includes
800
+ list(APPEND target_include_directories__INCLUDES ${absolute_interface})
801
+ else()
802
+ message(WARNING "Required interface ${interface} not found for component ${component_name}.")
803
+ endif()
804
+ endif()
805
+ endforeach()
806
+ list(REMOVE_DUPLICATES target_include_directories__INCLUDES)
807
+ else()
808
+ set(COMP_REQUIRED_INTERFACES ${target_include_directories__INCLUDES})
809
+ endif()
810
+ # add the include directories to the component
811
+ target_include_directories(${component_name} PUBLIC ${COMP_REQUIRED_INTERFACES})
812
+ endif()
813
+ endforeach()
814
+ endmacro()
@@ -1 +0,0 @@
1
- __version__ = "7.2.6"
File without changes
File without changes