[CMake] CMake terminology
Ruslan Baratov
ruslan_baratov at yahoo.com
Sat Jun 25 11:22:30 EDT 2016
On 25-Jun-16 10:02, Eric Noulard wrote:
> Hi there,
>
> I'd like to give my opinion here.
> I agree that the fact that the cmake ui (qt or curse) makes it
> possible to separate configure from generate
> is an implementation detail. In fact one could perfectly decide that
> the "configure" step should "generate "
> each time it is run. Making it two-step save some time for big project
> but I have already seen people forgetting
> to generate and asking themselves why they didn't get any makefiles...
>
> Nevertheless from a user point of view explaining that there are
> different "time" because CMake is a buid system **generator** and not
> a build tool seems very important to me.
>
> Some action may be run during CMake time some may be done during Build
> time.
> For me CMake run is configure+generate.
>
> I did gave a tutorial which is now a bit outdated where I tried to
> picture this.
> See attached file or:
> https://github.com/TheErk/CMake-tutorial
>
> my 2 cents.
Actually it doesn't conflicts with steps notions. "cmake time" for GUI =
"cmake configure" step + "cmake generate" step, "cmake time" for
command-line = "cmake configure+generate" step.
Also by one step you can trigger events from different "times", i.e.
"cmake --build _builds --target install" will run "Install time" which
can trigger commands from "Build time", which even can trigger commands
from "CMake time" (if CMakeLists.txt changed for example).
>
> 2016-06-25 2:33 GMT+02:00 Ruslan Baratov via CMake <cmake at cmake.org
> <mailto:cmake at cmake.org>>:
>
> There is cmake **build** step: cmake --build _builds
>
> So in GUI it's:
> * cmake configure
> * cmake generate
> * IDE build (which you can do with cmake --build so it can be
> called "cmake build" step)
>
> in cmd:
> * cmake configure+generate
> * cmake build
>
> Also I can call it "cmake step" in docs about some C++ project,
> but if the docs about cmake itself I think this term is too wide
>
>
> On 25-Jun-16 02:13, Craig Scott wrote:
>> In documentation, blog articles, etc. I just call it the "cmake"
>> step (or sometimes the "project setup" step if talking in a more
>> project-wide sense). For many users, the separate configure and
>> generate steps are somewhat of an implementation detail, so it
>> makes more sense to give it a single term. I'm not aware of any
>> generally accepted term, but the ones I use seem to be fairly
>> easy to understand, especially for those new to CMake. YMMV.
>>
>> On Saturday, 25 June 2016, Ruslan Baratov via CMake
>> <cmake at cmake.org <mailto:cmake at cmake.org>> wrote:
>>
>> On 24-Jun-16 23:49, Robert Maynard wrote:
>>
>> Please run the configure and generate steps by
>>
>> It's too long :)
>>
>> Also it doesn't express the fact that it's a single action,
>> consider:
>> "To add variables on configure and generate steps use '-D'"
>> "Before running configure and generate steps note that old
>> variables from cache can be used"
>> etc.
>>
>>
>>
>> On Fri, Jun 24, 2016 at 4:40 PM, Ruslan Baratov
>> <ruslan_baratov at yahoo.com> wrote:
>>
>> On 24-Jun-16 23:25, Robert Maynard wrote:
>>
>> cmake from the command line is still running the
>> two stages, it just
>> doesn't allow for feedback/input from the user
>> between the two stages.
>>
>> Yes, I understand that. Question is about the name of
>> the step. I.e. when I
>> do write manual what should I choose
>> Please run configure step by: cmake -H. -B_builds
>> or
>> Please run generate step by: cmake -H. -B_builds
>> ?
>>
>> May be both versions are correct? Or both incorrect?
>>
>> Ruslo
>>
>>
>> On Fri, Jun 24, 2016 at 4:06 PM, Ruslan Baratov
>> via CMake
>> <cmake at cmake.org> wrote:
>>
>> Hi,
>>
>> I have a question about CMake terminology.
>> When we are using CMake GUI
>> there
>> are two buttons "Configure" and "Generate",
>> hence we have two stages:
>>
>> 1. Configure step, when we do configuring
>> project, effectively creating
>> file
>> with cache variables (which we can modify)
>> without really generating
>> native
>> tools files like Makefile/*.sln/etc.
>>
>> 2. Generate step, when we do generating
>> project using file with cache
>> variables, i.e. create those Makefile/*.sln/etc.
>>
>> The question is about command line version of
>> CMake. Since we do creating
>> file with cache and generate native tools
>> files in one step what is the
>> right term? Is it a configure step because we
>> read user's '-D' and create
>> cache file? Is it a generate step because
>> native tools files generated
>> at
>> the end? May be there is a third name to
>> describe the fact that it's
>> configure+generate step?
>>
>> Thanks, Ruslo
>> --
>>
>> Powered by www.kitware.com
>> <http://www.kitware.com>
>>
>> Please keep messages on-topic and check the
>> CMake FAQ at:
>> http://www.cmake.org/Wiki/CMake_FAQ
>>
>> Kitware offers various services to support
>> the CMake community. For more
>> information on each offering, please visit:
>>
>> CMake Support:
>> http://cmake.org/cmake/help/support.html
>> CMake Consulting:
>> http://cmake.org/cmake/help/consulting.html
>> CMake Training Courses:
>> http://cmake.org/cmake/help/training.html
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Follow this link to subscribe/unsubscribe:
>> http://public.kitware.com/mailman/listinfo/cmake
>>
>>
>>
>>
>> --
>>
>> Powered by www.kitware.com <http://www.kitware.com>
>>
>> Please keep messages on-topic and check the CMake FAQ at:
>> http://www.cmake.org/Wiki/CMake_FAQ
>>
>> Kitware offers various services to support the CMake
>> community. For more information on each offering, please visit:
>>
>> CMake Support: http://cmake.org/cmake/help/support.html
>> CMake Consulting: http://cmake.org/cmake/help/consulting.html
>> CMake Training Courses: http://cmake.org/cmake/help/training.html
>>
>> Visit other Kitware open-source projects at
>> http://www.kitware.com/opensource/opensource.html
>>
>> Follow this link to subscribe/unsubscribe:
>> http://public.kitware.com/mailman/listinfo/cmake
>>
>>
>>
>> --
>> Craig Scott
>> Melbourne, Australia
>> http://crascit.com
>>
>
>
> --
>
> Powered by www.kitware.com <http://www.kitware.com>
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Kitware offers various services to support the CMake community.
> For more information on each offering, please visit:
>
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/cmake
>
>
>
>
> --
> Eric
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20160625/9d3f006e/attachment-0001.html>
More information about the CMake
mailing list