On 2009-12-06 18:20+0100 Eric Noulard wrote:

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.


Eric, I didn't see your e-mail before I sent mine. However, now that I have
read yours, I think your above idea of including cmake in the "source"
distribution is an excellent one which answers my two caveats (and also your
additional regeneration caveat above).

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state implementation
for stellar interiors (freeeos.sf.net); PLplot scientific plotting software
package (plplot.org); the libLASi project (unifont.org/lasi); the Loads of
Linux Links project (loll.sf.net); and the Linux Brochure Project
(lbproject.sf.net).
__________________________

Linux-powered Science
__________________________
_______________________________________________
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

Reply via email to