I had asked a similar question 2 weeks or so ago.  The conclusion, which DID 
work well was the following.

Rather than having 1 “large” cmake project with sub libraries.

Use the “super-project” system, where you do an ExternalProject_Add for each of 
the projects.  Then for the projects that need the “first executable” you list 
that project as a dependency

Scott

From: CMake [mailto:cmake-boun...@cmake.org] On Behalf Of Craig Scott
Sent: Thursday, March 31, 2016 4:53 PM
To: cmake@cmake.org
Subject: [CMake] Building a tool immediately so it can be used later in same 
CMake run

All,

I originally planned to ask this question directly on this mailing list, but it 
got a bit more involved, so I posted it to stackoverflow instead. I'm 
interested if anyone can shed some more authoritative light on the proposed 
method for the following question:

http://stackoverflow.com/q/36084785/1938798

Short version: invoke a nested cmake-and-build immediately within the main 
CMake run to build a specific target via execute_process(). This makes that 
tool available for use still within the same (main) CMake run. An 
ExternalProject-based technique would normally be a better solution, but in 
this particular case, that wasn't possible.

I'd be interested if anyone can confirm whether the suggested approach is 
guaranteed to be safe for all generators and platforms, or whether there are 
other factors I have not considered in the proposed technique.

Cheers

--
Craig Scott
Melbourne, Australia
http://crascit.com
-- 

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:
http://public.kitware.com/mailman/listinfo/cmake

Reply via email to