Best way to integrate sphinx documentation into a project with a large number of code generated sources...

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view

Best way to integrate sphinx documentation into a project with a large number of code generated sources...

Malfettone, Kris

Hi all,

I have a very large project (many thousands of targets) that I manage with CMake.  I currently, as part of my build, code generate the vast majority of sources and some sources are several layers deep of generation steps.  I would like to add in a step to generate Sphinx documentation for my project but because the sphinx generation step must be run after all the various pieces have been generated, so it can parse the generated source files, it can be quite tedious to setup the CMake rules for it.  For instance, the general gist is that I must make sure that the “generate sphinx” target has the proper dependencies on all the various number of pieces that need to build first.  I was wondering if there was an alternative way for me to setup the “generate sphinx” target that I could more easily both ensure that my entire project is built first but not have to specify the dependencies anywhere as I add in more steps or targets into my process.


For instance, one idea I was thinking of was if I modeled my project as two projects one the actual building and the other just the documentation generation.  The second project could reference the other as an external project.  Would that be a good way to go?  Has anyone else dealt with this in the past?



IMPORTANT: The information contained in this email and/or its attachments is confidential. If you are not the intended recipient, please notify the sender immediately by reply and immediately delete this message and all its attachments. Any review, use, reproduction, disclosure or dissemination of this message or any attachment by an unintended recipient is strictly prohibited. Neither this message nor any attachment is intended as or should be construed as an offer, solicitation or recommendation to buy or sell any security or other financial instrument. Neither the sender, his or her employer nor any of their respective affiliates makes any warranties as to the completeness or accuracy of any of the information contained herein or that this message or any of its attachments is free of viruses.


Powered by

Please keep messages on-topic and check the CMake FAQ at:

Kitware offers various services to support the CMake community. For more information on each offering, please visit:

CMake Support:
CMake Consulting:
CMake Training Courses:

Visit other Kitware open-source projects at

Follow this link to subscribe/unsubscribe: