kconfig check: move rules to kconfigcheck.toml
- Jun 30, 2024
-
-
Oliver Smith authored
-
Oliver Smith authored
Move all kconfig rules from pmb.config to a separate toml file pmb/data/kconfigcheck.toml. This is a fallback, pmbootstrap now prefers loading kconfigcheck.toml from the currently checked out pmaports branch if it exists. This finally allows having separate kconfig check rules per pmaports branch and makes the workflow of adjusting these rules much more pleasant as the rules and kernel configs can just be adjusted at the same time in pmaports! This patch also moves the definition of what rules should be checked for community and main devices, those that have pmb:kconfigcheck-community in their linux APKBUILD, to the new kconfigcheck.toml. This should make it much more intuitive, previously one needed to find the place in the pmbootstrap source and edit it there. Furthermore the "enforce_check" logic is removed. Previously pmbootstrap would print warnings for failed config checks in some cases, but not exit with error which was very confusing. Now exit 0 means all checks passed and exit 1 means, that there is at least one error. Use toml for the file, as discussed in pmbootstrap issue 2165. Python 3.11 has a native toml reader, use tomli for previous Python versions for compatibility.
-
Oliver Smith authored
Create new pmb/commands/kconfig_check.py and _edit.py files and move related code there.
-
Oliver Smith authored
Prepare to move the kconfigcheck config into pmaports, so it can be different per branch and so we can adjust it at the same time as adjusting the kernel configs. Once it is moved, pmbootstrap will not know the cateogry names in advance anymore, so remove the logic for having category-specific argument names. In a future patch, we could add an option to manually override the categories to be tested with one specific category (taking a string argument), if there is demand for that.
-