On Thu, 13 Oct 2011 12:09:41 -0500, Robert Dailey wrote:
First of all I'm using cmake 2.8.6 and generating Visual Studio 2003
projects with it.
There is a particular project that needs to first copy its header
files to a
specific directory in a specific structure. After that, all other
projects
need to reference this project's source code from the installed
location,
not its actual location that it was copied from.
The install() command sounded perfect for this but unfortunately it
seems
that the INSTALL project builds *last*. What I need is for the files
to be
installed/copied FIRST, so that the other projects will succeed when
I build
them.
Any idea if install() can do this? I'm not really sure of the purpose
for
install(), so maybe I'm approaching this wrong.
Yes. Compilation of a project should always be possible without
polluting the system.
For other programs or libraries in the same source tree, install() is
not the right thing.
You have several options:
a)
Copy the headers in the right structure to the build tree and use as
include directory. This also makes your install() command easier: you
just have to copy the directory as-is. However, you have to setup
dependencies correctly so that changed header files (and only those) get
copied again if they changed. If you build in-tree (source dir == build
dir, which is not recommended), such a scheme may have problems.
b)
Is there _any_ reason to no arrange the headers in the source tree in a
way that makes it usuable for direct inclusion?
HS
--
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake