MantisBT - CMake
View Issue Details
0015888CMakeModulespublic2015-12-19 09:442016-06-10 14:31
Ignat Loskutov 
Kitware Robot 
normalfeaturealways
closedmoved 
CMake 3.4.1 
 
0015888: No FindGTK3.cmake by default
For some reason, there is no FindGTK3 module yet, while FindGTK2 and FindGTK (last probably only used by 0000041:0000001.5 retrogrades) exist. It makes many developers re-invent FindGTK3 again and again, while it could be provided with CMake by default instead.
Examples of existing FindGTK3.cmake:
https://github.com/eiskaltdcpp/eiskaltdcpp/blob/master/cmake/FindGTK3.cmake [^] — a clone of FindGTK2.cmake
https://chromium.googlesource.com/external/Webkit/+/master/Source/cmake/FindGTK3.cmake [^] — PkgConfig-based solution
No tags attached.
Issue History
2015-12-19 09:44Ignat LoskutovNew Issue
2015-12-19 09:54Roger LeighNote Added: 0040001
2015-12-19 12:33Ignat LoskutovNote Added: 0040002
2015-12-21 08:44Brad KingNote Added: 0040007
2016-06-10 14:29Kitware RobotNote Added: 0042903
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
(0040001)
Roger Leigh   
2015-12-19 09:54   
The GTK upstream provide pkg-config files for each of the GTK components. They could also provide CMake config files for use with find_package, as e.g the Qt upstream do for Qt5. Has a bug or patch been submitted to the GTK developers to implement this?
(0040002)
Ignat Loskutov   
2015-12-19 12:33   
But it would be strange for GTK to provide configs for all existing build systems, while they use autotools for their source. On the other hand, the corresponding modules for GTK and GTK2 are included already—why not provide one for GTK3 as well?
(0040007)
Brad King   
2015-12-21 08:44   
Re 0015888:0040002: CMake packaging is explained here:

 https://cmake.org/cmake/help/v3.4/manual/cmake-packages.7.html [^]

The reason it is better for the files to come with the project is because they can then know exactly what other files come with them, how they were built, what is available, etc. They can be updated as needed for the project instead of being maintained in CMake. For example, Qt5 doesn't build with CMake but does provide CMake packaging files.

Plain find modules are a last resort because they have to guess everything and maintain lots of information about the corresponding packages.
(0042903)
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.