[CMake] Would it be possible to have cmake make final binaries?

Eric Noulard eric.noulard at gmail.com
Tue Aug 31 17:39:52 EDT 2010


2010/8/31 David Cole <david.cole at kitware.com>:
> Steps 7 thru 10 on your list may be performed by the command lines:
>   cmake --build . --config Release
>   cmake --build . --target install --config Release
>   (equivalent to the "make; make install" parts of your example command
> line)
> Causing that to happen in delicious GUI form would be simple enough... But
> do enough people want this...?

Speaking for a one-line install (or buid package) command
using CMake would be nice.

I did craft one small (not bulletproof at all) CMake script
which can be called as

$ cmake -P CMake-autoinstall.cmake
-- Trying to autoinstall CMake version  using
http://www.cmake.org/files/v2.8/cmake-2.8.2.tar.gz file...
-- Downloading...
-- Already there: nothing to do
-- Unarchiving the file
-- CMake version 2.8.2 has been unarchived in /home/eric/CMake/tmp/cmake-2.8.2.
-- Configuring with CMake...
-- Building with cmake --build ...
-- Create package RPM with CPack...
-- CMake version 2.8.2 has been built in /home/eric/CMake/tmp/cmake-2.8.2.
-- CMake package(s) are:
/home/eric/CMake/tmp/cmake-2.8.2-build/cmake-2.8.2-Linux-x86_64.rpm

The example file is attached. It does not handle error case very nicely
and should probable put all logs in files instead of var.

In my case the "autoinstall" file is building an RPM and in my case I don't
want the 3) to 5) steps (default configure option should be enough).

May be a GUI would help to chose some parameters of the "autoinstall script"
version, CPack generator etc... but I don't think it must be the current
"cmake-gui".

> We've talked about a "build" button in the cmake-gui before, but if errors
> occur, you have to go elsewhere to edit code anyhow.
> If we have a build button, we have to:
> - make sure we handle voluminous output from the build tools
> - provide a way to interrupt a build in progress when the observer can't
> wait any longer...
> It shouldn't be hard, but it's not entirely trivial either. Deliciousness
> never is.

My opinion is that "automagicall one big button  (or small script) makes it all"
shouldn't handle error case at all.

Average user won't go and inspect why it fails.
He would probably just tell the project releaser that he/she did a poor job
and wait for him/her to fix that :-)

> What do others think? Is this a thing you've always wanted, or something
> you've never even wished for...?

One-line install command (or one button)
would be great but I think that if for any reason the automagic process
fails don't try to help the user with that but just point out the error file.

If it's a "power user" he will go back to current cmake UI.
If it's an average user he may file the error file back to the project releaser.

-- 
Erk
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: CMake-autoinstall.cmake
Type: text/x-cmake
Size: 3249 bytes
Desc: not available
URL: <http://www.cmake.org/pipermail/cmake/attachments/20100831/8b5f8ef0/attachment-0001.bin>


More information about the CMake mailing list