doxygen: use CMake build dir intead of source dir to host generated files#718
doxygen: use CMake build dir intead of source dir to host generated files#718valeriosetti wants to merge 6 commits intoMbed-TLS:developmentfrom
Conversation
2d1dcf7 to
558d9df
Compare
|
There is only a single failure in the CI in but I cannot regenerate it locally even though I use the Ubuntu 16.04 Docker image. Any idea of what might be the reason for such difference? |
|
Unsure precisely why this is failing but there is an ominous comment here # The documentation is built in the source tree thus we can delete the
# build tree.It's possible your framework has changes that you haven't committed? |
|
Size-xs but needs CI rework. Why does this have the framework update? It doesn't have a linked framework PR (although it may need one in the end). |
gilles-peskine-arm
left a comment
There was a problem hiding this comment.
Unfortunately this doesn't work.
| @@ -71,12 +71,12 @@ set(version_number_files | |||
| doxygen/tfpsacrypto.doxyfile) | |||
There was a problem hiding this comment.
This is a bug fix, because you can have different cmake build trees with different configurations and therefore different documentation, so having the documentation in the source tree is incorrect.
But it's also an incompatible change. For users who use a single library configuration, but compile for multiple platforms, or who just use a separate build directory because it's the preferred way with cmake, having the documentation in the source tree was fine, and we're moving their cheese.
So we at the very least need to explain the change in a changelog entry. And I wonder if we should provide some kind of backward compatibility path. But I'm not sure what that would be.
There was a problem hiding this comment.
So we at the very least need to explain the change in a changelog entry. And I wonder if we should provide some kind of backward compatibility path. But I'm not sure what that would be.
No idea either. I can add a symlink in-tree to link to the folder in the build directory, but that doesn't work well for the 1st scenario you described, i.e. you can have different cmake build trees with different configurations and therefore different documentation. In this case only the last one would be kept. However this is also the same behavior we had before and since no one complained about that (at least no one that I'm aware of), can we assume it's a bug nobody noticed?
bjwtaylor
left a comment
There was a problem hiding this comment.
Adding myself as a reviewer for when this one is ready. If you re-request my review when you've actioned @gilles-peskine-arm comments I'll take a look.
…iles Signed-off-by: Valerio Setti <vsetti@baylibre.com>
…Crypto Signed-off-by: Valerio Setti <vsetti@baylibre.com>
"apidoc" is now built into the Cmake's build directory and not in the source tree. While at it also remove references to "apidoc/topic.html" because the file is not generated as part of "tfpsacrypto-apidoc" target build. Signed-off-by: Valerio Setti <vsetti@baylibre.com>
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
bd8eaa7 to
e775742
Compare
| INPUT = @PROJECT_SOURCE_DIR@/include input @PROJECT_SOURCE_DIR@/tests/include/alt-dummy | ||
| FILE_PATTERNS = *.h | ||
| EXCLUDE = ../include/mbedtls/private | ||
| EXCLUDE = @PROJECT_SOURCE_DIR@/include/mbedtls/private |
…tespaces Signed-off-by: Valerio Setti <vsetti@baylibre.com>
gilles-peskine-arm
left a comment
There was a problem hiding this comment.
Please add the issue number to the changelog entry.
| @@ -0,0 +1,3 @@ | |||
| Bugfix | |||
| * Doxygen documentation `apidoc` is now built into CMake's binary folder, | |||
| not in-tree. | |||
There was a problem hiding this comment.
| not in-tree. | |
| not in-tree. Fixes #381. |
Signed-off-by: Valerio Setti <vsetti@baylibre.com>
Description
Use
CMAKE_BINARY_DIRinstead ofCMAKE_CURRENT_SOURCE_DIRto hold the generated files for Doxygen.Resolves #381
PR checklist