llnl / llnl/blt

Doxygen not in path -> more explicit message?

Open
#348 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
296
Forks
66
Avg merge
1h 3m
Merged PRs (30d)
1

Description

Doxygen wasn’t in my path... I think we could make the error message more explicit

```
CMake Error at cmake/blt/cmake/SetupDocs.cmake:36 (add_dependencies):
Cannot add target-level dependencies to non-existent target "doxygen_docs".

The add_dependencies works for top-level logical targets created by the
add_executable, add_library, or add_custom_target commands. If you want to
add file-level dependencies see the DEPENDS option of the add_custom_target
and add_custom_command commands.
Call Stack (most recent call first):
src/docs/doxygen/CMakeLists.txt:7 (blt_add_doxygen_target)
```

1. How about making find doxygen _required_?

https://github.com/LLNL/blt/blob/e5564c491cb9032e529768ffc1e7b2696659da92/cmake/thirdparty/SetupThirdParty.cmake#L72

2. Or testing `DOXYGEN_FOUND` when entering the `blt_add_doxygen_target`.

https://github.com/LLNL/blt/blob/e5564c491cb9032e529768ffc1e7b2696659da92/cmake/SetupDocs.cmake#L27

IMO, 1. is legitimate here. But I may be wrong...

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with cmake/thirdparty/SetupThirdParty.cmake around the Doxygen discovery and cmake/SetupDocs.cmake around blt_add_doxygen_target. Reproduce the failure through src/docs/doxygen/CMakeLists.txt with Doxygen unavailable, then determine whether discovery should be required or the target helper should report DOXYGEN_FOUND. Done means the missing-Doxygen case produces an explicit, actionable CMake error.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake
Domain
build-system
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.