Skip to content

Conversation

@albert-github
Copy link
Contributor

The default setting for CASE_SENSE_NAMES (in doxygen) is SYSTEM which means that on Linux it is set to YES and on (e.g.) Windows to NO (see analysis in #5262 (comment)). Seen the usage of the EXCLUDE_PATTERN */test* this meant on Windows that also the directory with the name TestKernel was matched and thus excluded. Setting the CASE_SENSE_NAMES explicitly to YES prevents this (on Linux it won't have any effect as here the default was sufficient). Note: Due to a bug in doxygen (see doxygen/doxygen#11519) this would still exclude the pattern. The new setting will only have an effect, on Windows, when, the not yet released, doxygen 1.14.0 or newer will be used.

PR Checklist

The default setting for `CASE_SENSE_NAMES` (in doxygen) is `SYSTEM` which means that on Linux it is set to `YES` and on (e.g.) Windows to `NO` (see analysis in InsightSoftwareConsortium#5262 (comment)).
Seen the usage of the `EXCLUDE_PATTERN` `*/test*` this meant on Windows that also the directory with the name `TestKernel` was matched and thus excluded.
Setting the `CASE_SENSE_NAMES` explicitly to `YES` prevents this (on Linux it won't have any effect as here the default was sufficient).
Note: Due to a bug in doxygen (see doxygen/doxygen#11519) this would still exclude the pattern. The new setting will only have an effect, on Windows, when, the not yet released, doxygen 1.14.0 or newer will be used.
@github-actions github-actions bot added type:Infrastructure Infrastructure/ecosystem related changes, such as CMake or buildbots type:Documentation Documentation improvement or change area:Documentation Issues affecting the Documentation module labels Apr 1, 2025
@dzenanz
Copy link
Member

dzenanz commented Apr 1, 2025

Should this file be updated too?

Can someone remind me why do we have two, nearly identical files?

@dzenanz dzenanz requested a review from thewtex April 1, 2025 15:59
@albert-github
Copy link
Contributor Author

Indeed a bit strange to have 2 nearly the same files, but when they serve to generated different types of documentation it would be good to have them and to update the file too.

I see there are more differences, one notable is about the recent change regarding: ITKStartGrouping / ITKEndGrouping.
For completeness the complete difference between the files:

diff -b -w Utilities/Doxygen/DoxygenConfig.cmake Wrapping/DoxygenConfig.cmake
7c7
< set(DOXYGEN_OUTPUT_DIRECTORY "${ITK_DOXYGEN_OUTPUT_DIR}")
---
> set(DOXYGEN_OUTPUT_DIRECTORY "${ITK_WRAP_DOC_LIBRARY_DIR}")
20,22c20
<     "endsphinx=^^ ^^ ^^"
<     "ITKStartGrouping=@{"
<     "ITKEndGrouping=@}")
---
>     "endsphinx=^^ ^^ ^^")
61,62d58
< set(DOXYGEN_GENERATE_TREEVIEW "YES")
< set(DOXYGEN_DISABLE_INDEX "YES")
76d71
< set(DOXYGEN_MATHJAX_VERSION "MathJax_2")
78d72
< if(ITK_DOXYGEN_SERVER_BASED_SEARCH)
80,82d73
< else()
<   set(DOXYGEN_SERVER_BASED_SEARCH "NO")
< endif()
173,190d163
<
< foreach(
<   _FORMAT IN
<   ITEMS HTML
<         DOCSET
<         CHM
<         QHP
<         ECLIPSEHELP
<         LATEX
<         RTF
<         XML)
<   # map ON/OFF to YES/NO
<   if(ITK_DOXYGEN_${_FORMAT})
<     set(DOXYGEN_GENERATE_${_FORMAT} "YES")
<   else()
<     set(DOXYGEN_GENERATE_${_FORMAT} "NO")
<   endif()
< endforeach()

@thewtex
Copy link
Member

thewtex commented Apr 2, 2025

@albert-github fantastic!

Yes, the config files could be consolidated. The wrapping was merged into the repository from a separate repository, and this is an artifact.

@dzenanz dzenanz merged commit 993fc93 into InsightSoftwareConsortium:master Apr 2, 2025
16 checks passed
@dzenanz
Copy link
Member

dzenanz commented Apr 2, 2025

Merging this as-is. Consolidation can be a new PR.

@albert-github
Copy link
Contributor Author

Merging this as-is. Consolidation can be a new PR.

Shouldn't there be an issue created for this?

@dzenanz
Copy link
Member

dzenanz commented Apr 3, 2025

Thanks for creating the issue and identifying which files need to be updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:Documentation Issues affecting the Documentation module type:Documentation Documentation improvement or change type:Infrastructure Infrastructure/ecosystem related changes, such as CMake or buildbots

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants