Summary: | don't build and install modules without updates | ||
---|---|---|---|
Product: | [Developer tools] kdesrc-build | Reporter: | Dario Panico <dariopnc> |
Component: | general | Assignee: | Michael Pyne <mpyne> |
Status: | RESOLVED NOT A BUG | ||
Severity: | wishlist | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Dario Panico
2008-02-17 23:35:13 UTC
Well recent versions of CMake will handle this just fine (CMake will rig it so that make won't try to recompile or reinstall anything). The issue is that if the last time the module was built it was interrupted, then you still want to try and build this time even if the source code didn't change. kdesvn-build doesn't really record the status of the last run (and even if it did, it would have to record back far enough in time to the last attempted build of that specific module). So IMO this is not really a huge issue. Now if CMake is trying to reinstall all the artwork even though it's installed that would be a bug but I haven't noticed that issue. SVN commit 841748 by mpyne: Add persistent data store for kdesvn-build. Initially the only things tracked are the last successful build revision, last successful install revision, and the number of consecutive module failures. In addition the user is warned at program end of all modules that have failed to build for more than 3 consecutive build attempts for the module to take a closer look at the issue. If there's other cool things that would be useful for the script to track I'm all ears. The last-successful-rev stuff was initially for tracking if a module should be rebuilt or not. But if required library dependencies have changed in the interim (i.e. qt-copy or kdelibs) then we should allow CMake to do its things no matter what so I will not actually implement that feature after all. But it's still useful to track IMO. CCBUG:157992 M +190 -1 kdesvn-build WebSVN link: http://websvn.kde.org/?view=rev&revision=841748 Closing the bug as INVALID since David Faure brought up a good point to me while I was prototyping how I would implement this: If a module depends on an underlying module (such as qt-copy and kdelibs) then it may be required to build a module even if the source code has not changed since the last successful build and install, if any of the underlying dependencies have changed. kdesvn-build doesn't know all of the underlying dependencies of a given module, and can't track changes to system dependencies anyway (that is all CMake's job). So it is dangerous for kdesvn-build to skip building in order to try and shave a minute. |