-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Doxygen: Only render public files #10206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Doxygen: Only render public files #10206
Conversation
doxygen/mbedtls.doxyfile
Outdated
EXCLUDE = \ | ||
../tf-psa-crypto/drivers/builtin/include/mbedtls/build_info.h \ | ||
../tf-psa-crypto/drivers/builtin/include/mbedtls/oid.h | ||
INPUT = ../include ../tf-psa-crypto/include ../tests/include/alt-dummy |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You may notice that ./drivers/builtin/include is still present in INCLUDE_PATH in the doxyfile. According to doxygen documentation: "The INCLUDE_PATH tag can be used to specify one or more directories that contain include files that are not input files but should be processed by the preprocessor."
In practice, removing this gave weird results, e.g. some macros like MBEDTLS_PSA_HMAC_OPERATION_INIT from crypto_builtin_composites.h were not available in the documentation, and it thought that MBEDTLS_PRIVATE was a function with a few different signatures, so it seems to be correct to leave it.
Yes, I think that makes sense.
I'm not actually sure we want MBEDTLS_PRIVATE
expanded. After all, a private field foo
should be undocumented, not documented under the name private_foo
. But that's not related to the repository split or to the API changes, it's a preexisting quality issue, so it's not particularly relevant for the 1.0/4.0 release. And anyway the correct solution would be more complicated than just leaving MBEDTLS_PRIVATE
unexpanded, since as you note this understandably confuses Doxygen.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pre-existing and unrelated - question: why is ../tests/include/alt-dummy
here? I find it surprising to have something from tests
in the public rendered documentation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See 5186014
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By the way, alt-dummy
probably shouldn't be needed anymore, since we've removed MBEDTLS_xxx_ALT
. But that's a post-1.0 cleanup.
…TE in documentation Signed-off-by: Felix Conway <[email protected]>
Signed-off-by: Felix Conway <[email protected]>
Signed-off-by: Felix Conway <[email protected]>
5e6df91
to
1704578
Compare
Quick rebase to remove |
Signed-off-by: Felix Conway <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
c2b7f85
mbedtls part of and resolves Mbed-TLS/TF-PSA-Crypto#281
Changes doxygen so that only files in ./include, ./tf-psa-crypto/include, and ./tests/include/alt-dummy are rendered (i.e. only public files).
You may notice that ./drivers/builtin/include is still present in INCLUDE_PATH in the doxyfile. According to doxygen documentation: "The INCLUDE_PATH tag can be used to specify one or more directories that contain include files that are not input files but should be processed by the preprocessor."
In practice, removing this gave weird results, e.g. some macros like MBEDTLS_PSA_HMAC_OPERATION_INIT from crypto_builtin_composites.h were not available in the documentation, and it thought that MBEDTLS_PRIVATE was a function with a few different signatures, so it seems to be correct to leave it.
As the mbedtls CI has a readthedocs build, the resulting changes should be viewable there.
PR checklist
Please remove the segment/s on either side of the | symbol as appropriate, and add any relevant link/s to the end of the line.
If the provided content is part of the present PR remove the # symbol.