Bug 297847

Summary: kdesrc-build changes the order of modules without reason, breaking compilation
Product: [Developer tools] kdesrc-build Reporter: David Faure <faure>
Component: generalAssignee: Michael Pyne <mpyne>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: Git   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:

Description David Faure 2012-04-10 14:16:47 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20100101 Firefox/10.0.1
Build Identifier: 

My kdesrc-buildrc (for kde frameworks) has "cmake" as the very first module to build.
However kdesrc-build seems to decide that other modules should be built before it, which breaks compilation since the older system cmake is found instead [when building from scratch].



Reproducible: Always

Steps to Reproduce:

module cmake-git
  repository git://cmake.org/cmake.git
end module
module-set
    repository kde-projects
    use-modules extra-cmake-modules kdesrc-build automoc cagibi attica soprano polkit-qt-1
end module-set

Actual Results:  
Building extra-cmake-modules (1/21)
[....]
Building cmake-git (15/21)
[....]

Expected Results:  
cmake should be built first. I know that kdesrc-build has logic to reorder modules based on the kde projects xml (right?), but unknown modules should be left in the order coming from kdesrc-buildrc.

Either that, or I need to know how to force a module to be compiled first ;-)
Comment 1 Michael Pyne 2012-04-11 00:31:16 UTC
Try setting the new option "ordering-tier" to 0 for your cmake-git module.

In the meantime I can try to make the auto-grouping introduced in 089edc6a affect non kde-projects modules such that they are built before kdesupport-modules by default (right now they are built after everything).

Having the sorting really affect only the kde-projects modules will be a bit harder.
Comment 2 Michael Pyne 2012-04-14 01:20:53 UTC
Git commit e1a2c2850336285b90bc0e1cebaa5fe2b1ce0770 by Michael Pyne.
Committed on 14/04/2012 at 03:17.
Pushed by mpyne into branch 'master'.

Revert "Bracket modules into sorted tiers."

This reverts commit 089edc6a73646bce540d39c784fd2991cdefd1d2.

Although auto-grouping is a nice easy way to get approximately right
dependency ordering, it doesn't work in all situations.

The "Best" thing would be to only sort within kde-project modules (as
expanded) but for now just back out this commit so I don't break
customized rc-files.

M  +0    -21   doc/index.docbook
M  +1    -77   kdesrc-build

http://commits.kde.org/kdesrc-build/e1a2c2850336285b90bc0e1cebaa5fe2b1ce0770