MantisBT - CMake
View Issue Details
0015465CMake(No Category)public2015-03-21 05:032016-06-10 14:31
Stephen Kelly 
Kitware Robot 
normalminorhave not tried
closedmoved 
 
 
0015465: Provide a way to build individual files through cmake

CMake has the `--build` command line option providing an abstraction of 'run the build in the specified directory' action. Particular configurations and targets to build can be specified with other options.

A new abstraction could be added for 'build the object for sourcefile f'.

The Makefiles generator already generates targets for each object in each directory. Those targets are not available from the 'top level' of the build dir.

 grantlee/make_build$ cmake .. -G "Unix Makefiles"
 grantlee/make_build$ make -C templates/lib engine.cpp.o

Ninja has native support for 'building the output of a source file' using '^'.

 grantlee/ninja_build$ cmake .. -G Ninja
 grantlee/ninja_build$ ninja ../templates/lib/engine.cpp^
 grantlee/ninja_build$ cmake --build . --target ../templates/lib/engine.cpp^

Ninja seems to build more dependencies of the object file though too (it runs moc via automoc for example, but make seems not to).

It is unknown whether the IDE generators have a way to build an individual file.

As the syntax is different for different tools, it could be useful for cmake to provide a unified abstraction.
No tags attached.
related to 0015462closed Kitware Robot Provide a machine readable way to determine the available generators and other capabilities of the binary 
Issue History
2015-03-21 05:03Stephen KellyNew Issue
2015-03-21 05:08Stephen KellyRelationship addedrelated to 0015462
2015-03-30 16:55Stephen KellyNote Added: 0038365
2016-06-10 14:29Kitware RobotNote Added: 0042740
2016-06-10 14:29Kitware RobotStatusnew => resolved
2016-06-10 14:29Kitware RobotResolutionopen => moved
2016-06-10 14:29Kitware RobotAssigned To => Kitware Robot
2016-06-10 14:31Kitware RobotStatusresolved => closed

Notes
(0038365)
Stephen Kelly   
2015-03-30 16:55   
http://thread.gmane.org/gmane.comp.kde.users.kdevelop/7234 [^]
(0042740)
Kitware Robot   
2016-06-10 14:29   
Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current CMake Issues page linked in the banner at the top of this page.