cgal icon indicating copy to clipboard operation
cgal copied to clipboard

Missing build dependencies

Open albert-github opened this issue 1 year ago • 5 comments

During working on issue #8318 (resulting in proposed pull request #8319) it was discovered that in the file: Documentation/doc/CMakeLists.txt the rule:

execute_process(
  COMMAND ${Python3_EXECUTABLE} ${CGAL_DOC_SCRIPT_DIR}/generate_how_to_cite.py
          ${CGAL_ROOT} ${CMAKE_BINARY_DIR} "${CGAL_BRANCH_BUILD}"
  RESULT_VARIABLE GENERATE_HOW_TO_CITE_RESULT)

does not depend on the different PackageDescription.txt used

albert-github avatar Jun 30 '24 16:06 albert-github

Do you mean that if the bib entry of the package is changed this does not trigger the rebuild of the page with the bib entries for the chapters of a release?

afabri avatar Sep 24 '24 06:09 afabri

I don't 100% remember anymore. We see in #8318 that the PackageDescription.txt of 2 packages changed and that this, apparently, doesn't trigger a rebuild. We see in ./doc/scripts/generate_how_to_cite.py that in the main routine the used PackageDescription.txt are determined, but these dependencies are (of course) not known to CMake and hence no rebuild.

It will, very likely, not be easy to let cmake know the dependencies. Probably some multi-stage approach is necessary (but I have no good idea for this).

albert-github avatar Sep 24 '24 07:09 albert-github

The error will not show up during the CI or a build request in a PR. But we should get an error in the nightly documentation testsuite. We could consider that as good enough.

afabri avatar Sep 24 '24 08:09 afabri

You won't have any issue if you start with a fresh build. So it is only a developer issue.

sloriot avatar Sep 24 '24 08:09 sloriot

Well probably the major issue looks like to be that doxygen doesn't emit a warning for the double but different bib definition. It looks like I found it when I ran a link checker on the project and got a warning like (on June 30, 2024):

List of duplicate and empty anchors
        cgal:ol-kinetic-24a     Lines: 531, 536

on Manual/how_to_cite_cgal.html and Manual/how_to_cite.html.

So it might go unnoticed for a long time.

I made a note of it so I could see what can be done in doxygen ...

albert-github avatar Sep 24 '24 10:09 albert-github