<div>What I am looking for:</div><div><ul><li>Download library </li><li>Extract It </li><li>Apply custom patch </li><li>Run configure </li><li>Run build command </li></ul><div>What library I am trying to build  are:</div></div>
<div><ul><li>Openssl</li><li>Boost</li><li>Thrift</li><li>C-ares</li><li>Curl</li><li>Pcre</li><li>Nginx </li><li>ICU</li><li>JsonCPP<br><br></li></ul>I think I can do these things using external module: <a href="http://cmake.org/cmake/help/v2.8.8/cmake.html#module:ExternalProject">http://cmake.org/cmake/help/v2.8.8/cmake.html#module:ExternalProject</a> </div>
<div><br></div><div>But I have following question?</div><div><ol><li>I have different type of build and with different directory. Is it going to build all these library for every different target? If yes it will be painful as all these library take one hour to build. Is there a way I can control it and it only build it once. As library remains same for all these targets. </li>
<li>On switching directory to different name. Cmake force everything to be rebuild-ed. Will it be same for external library. If yes? How to solve this problem. I don&#39;t want to rebuild the library if I am not changing them and want to use them while switching to different branches without building them. </li>
</ol><div><br></div></div><div><br></div>regards<div>Vivek Goel</div><br>