2009/12/6 steve naroff <snar...@apple.com>: > Hi, I work on llvm/clang (a client of cmake). > For development, cmake is wonderful (no big issues). > For deployment, cmake's inability to copy it's generated project files to > another machine is causing us some grief. The scenario is quite simple: I > want to copy the llvm/clang source tree over another machine (running the > same OS/tools) and build it *without* having to rerun cmake and generate > *new* project files. Without this ability, it requires the target machine > have cmake installed (which isn't convenient for some clients that want to > build/use/master the result of the llvm/clang build). What was a 1 step > process (open the project file) now becomes a 3 step process (install cmake, > run it to generate the project file, open the project file). > Last time I checked (about a year ago) the usage model I've outlined wasn't > supported. Is this still the case? Is there any workaround? > Thanks for any help with this,
I think that the topic has been discussed several times and each time (I remember) the answer was, this not possible (in general) to make cmake produce a build tree (i.e. project file) which may copied and re-used without CMake. There is the CMAKE_SUPPRESS_REGENERATION which may be used to suppress the "build tree / project file" regeneration (which implies CMake usage) but I think this does not work if your build tree is not exactly the same on the target machine (i.e. full absolute path to file is the same). There is the CMAKE_USE_RELATIVE_PATHS option but Bill said recently that it should be deprecated: http://www.cmake.org/pipermail/cmake/2009-November/033456.html However being able to somehow "prepare" a build tree and give it to a customer/user seems to be important for several people. May be we can achieve this **without** requiring the fact that CMake should not be run. May be we can think of "packaging" CMake itself along with the build tree? My idea is YOU WON'T HAVE TO **INSTALL** CMake but when you unzip your build tree you'll get: - the source tree - the pre-configured build tree - the cmake binary folder. Could be something like: MyProject----------Sources |_____Build |_____CMake Would the idea fits the need? Potential user may step in and tell us what they think? Would it be doable? I think it could be done with some "special" CPack generator but may be CMake developer can tell us what they think of this [may be wrong] idea? With this feature you'll get a "portable" project which contains the source tree, a preconfigured build tree + some cmake binaries corresponding to the build tree. -- Erk Membre de l'April - « promouvoir et défendre le logiciel libre » - http://www.april.org _______________________________________________ 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