Hi Johan,

Have you tried the trace mode of CMake? I got reasonably useful results with

cmake [path] [options] --trace 2>&1 | grep subdirectory

Gr,
Menno

From: CMake <cmake-boun...@cmake.org<mailto:cmake-boun...@cmake.org>> On Behalf 
Of Johan Holmberg
Sent: Wednesday, August 14, 2019 11:30 AM
To: cmake@cmake.org<mailto:cmake@cmake.org>
Subject: [CMake] Tree-like trace of add_subdirectory & include?

Hi!
I'm trying to understand a large project built with CMake, and think it would 
be very helpful to get a view of which CMake-file "calls" which other 
CMake-file. I'm interested in the chain of calls using "add_subdirectory" and 
"include".

I have looked at the options "--debug-output" and "--trace", but they only give 
a "flat" view of the call graph. And reconstructing a tree-like representation 
from that info seems non-trivial to me.

I'm hoping to get something like this (I hope the intended indentation can be 
seen):

CMakeLists.txt
.... MyMacros/Setup.cmake
.... .... MyMacros/OtherStuff.cmake
.... lib1/CMakeLists.txt
.... lib2/CMakeLists.txt
.... Misc/CMakeLists.txt
.... .... prog_a/CMakeLists.txt
.... .... prog_b/CMakeLists.txt
.... foo/CMakeLists.txt

Is there some way to accomplish this, or something similar?

/Johan Holmberg



Help us improve the spam filter. If this message contains SPAM, click 
here<https://www.mailcontrol.com/sr/jVI8-GHVkQ7GX2PQPOmvUrxf8JpNKDSohA9aQOXjYicVQVEOI1tEcgG89FHd2j098I-NulT5b8LgE3KctAewCA==>
 to report. Thank you, MARIN Support Group

dr. ir. Menno A. Deij-van Rijswijk | Researcher | Research & Development
MARIN | T +31 317 49 35 06 | m.d...@marin.nl<mailto:m.d...@marin.nl> | 
www.marin.nl<http://www.marin.nl>

[LinkedIn]<https://www.linkedin.com/company/marin> [YouTube] 
<http://www.youtube.com/marinmultimedia>  [Twitter] 
<https://twitter.com/MARIN_nieuws>  [Facebook] 
<https://www.facebook.com/marin.wageningen>
MARIN news: Alternative fuels and power systems for support 
vessels<https://www.marin.nl/alternative-fuels-and-power-systems-for-support-vessels>


-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

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

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
https://cmake.org/mailman/listinfo/cmake

Reply via email to