chore(lvgl_private): remove unnecessary private header file includes #6418
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of the feature or fix
Hi, we upgraded LVGL on our system. Our CI encountered the problem that the upper-level application based on LVGL reported that
ft2build.h
(freetype compilation configuration file) could not be found.After investigation, we found that
lv_freetype_private.h
was also exposed to the public space inlvgl_private.h
(see this PR: #5913). The original design was thatlv_freetype_private.h
was only used internally in freetype porting layer, so only the directory whereft2build.h
was located was exposed to LVGL. Iflv_freetype_private.h
was exposed to the public space, the compilation system would need to open theft2build.h
directory to all applications that uselvgl_private.h
(and these programs originally only wanted to access display and indev), which is very likely to cause naming pollution and compilation conflicts!!!I think
lvgl_private.h
should only contain necessary modules, rather than adding all*_private.h
files for the sake of convenience. For new special requirements, we should package them into carefully designed public APIs, and eventually guide applications to gradually move away fromlvgl_private.h
.Notes
lv_conf_template.h
run lv_conf_internal_gen.py and update Kconfig.scripts/code-format.py
(astyle version v3.4.12 needs to be installed) and follow the Code Conventions.