View Issue Details [ Jump to Notes ] | [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0008655 | CMake | CMake | public | 2009-03-02 22:00 | 2014-06-02 08:37 | ||||
Reporter | Philip Lowman | ||||||||
Assigned To | Brad King | ||||||||
Priority | normal | Severity | feature | Reproducibility | N/A | ||||
Status | closed | Resolution | fixed | ||||||
Platform | OS | OS Version | |||||||
Product Version | CMake-2-6 | ||||||||
Target Version | Fixed in Version | CMake 2.8.11 | |||||||
Summary | 0008655: Optionally disable relinking targets against shared libraries in the Makefile generator | ||||||||
Description | As discussed recently on the CMake mailing list in the thread "Avoiding a relink". The makefile generator automatically causes all targets that depend on a shared library to relink themselves when it the shared library is relinked. This is a good default behavior but is often annoying at times when a user makes a trivial change to an CPP file (implementation) and would prefer not having "make" relink the entire world. There are workarounds in the form of just making the affected target with "make foo" or "make foo/fast" and running the desired binaries. Presumably an implementation for this in the Makefile generator would be to make dependents of shared libraries depend on a stamp file so they only relink when CMake says so. The problem is twofold, when should CMake say so, and what should be the interface for enabling this functionality. | ||||||||
Additional Information | CMake could catch: * changes to header files (trigger relink) * adding/removing source files (trigger relink) CMake could not easily catch: * A user removing a symbol from a shared library (ideally a relink should be triggered so executables depending on said shared library would get a link error). * Use of "extern" in CPP files. | ||||||||
Tags | No tags attached. | ||||||||
Attached Files | |||||||||
Relationships | |
Relationships |
Notes | |
(0030476) Brad King (manager) 2012-08-13 10:36 |
Sending issues I'm not actively working on to the backlog to await someone with time for them. If an issue you care about is sent to the backlog when you feel it should have been addressed in a different manner, please bring it up on the CMake mailing list for discussion. Sign up for the mailing list here, if you're not already on it: http://www.cmake.org/mailman/listinfo/cmake [^] It's easy to re-activate a bug here if you can find a CMake developer or contributor who has the bandwidth to take it on. |
(0034329) Stephen Kelly (developer) 2013-11-02 11:14 |
Can be controlled with CMAKE_LINK_DEPENDS_NO_SHARED. |
(0035993) Robert Maynard (manager) 2014-06-02 08:37 |
Closing resolved issues that have not been updated in more than 4 months. |
Notes |
Issue History | |||
Date Modified | Username | Field | Change |
2009-03-02 22:00 | Philip Lowman | New Issue | |
2009-09-11 17:42 | Bill Hoffman | Status | new => assigned |
2009-09-11 17:42 | Bill Hoffman | Assigned To | => Brad King |
2012-08-13 10:36 | Brad King | Status | assigned => backlog |
2012-08-13 10:36 | Brad King | Note Added: 0030476 | |
2013-11-02 11:14 | Stephen Kelly | Note Added: 0034329 | |
2013-11-02 11:14 | Stephen Kelly | Status | backlog => resolved |
2013-11-02 11:14 | Stephen Kelly | Fixed in Version | => CMake 2.8.11 |
2013-11-02 11:14 | Stephen Kelly | Resolution | open => fixed |
2014-06-02 08:37 | Robert Maynard | Note Added: 0035993 | |
2014-06-02 08:37 | Robert Maynard | Status | resolved => closed |
Issue History |
Copyright © 2000 - 2018 MantisBT Team |