Use stable topological sort when sorting prerequisites.
authorJan Vrany <jan.vrany@fit.cvut.cz>
Thu, 05 Jun 2014 13:26:41 +0200
changeset 16540 12807abd853b
parent 16539 3d95a92c99f7
child 16541 d258a79cee6e
Use stable topological sort when sorting prerequisites.
ProjectDefinition.st
--- a/ProjectDefinition.st	Thu Jun 05 13:25:45 2014 +0200
+++ b/ProjectDefinition.st	Thu Jun 05 13:26:41 2014 +0200
@@ -1008,6 +1008,7 @@
         ].
 ! !
 
+
 !ProjectDefinition class methodsFor:'accessing - tests'!
 
 excludedFromTestSuite
@@ -6555,6 +6556,7 @@
 
     orderedTuples := OrderedCollection new.
     allPreRequisites := self allPreRequisites:aSelector.
+    allPreRequisites := allPreRequisites collect:[ :e | e asString ].
 
     "/JV@2013-03-13: Added asSortedCollection to make the order of packages
     "/as stable as possible. Makes merging of makefiles a lot easier.
@@ -6582,7 +6584,7 @@
     (orderedTuples includes:[:el | el first = el second]) ifTrue:[
         self halt:'oops - something seems to depend upon itself'
     ].
-    sortedPackages := orderedTuples topologicalSort.
+    sortedPackages := orderedTuples topologicalSortStable: true.
 
     "packages which only result from extension methods are used for computing the sort order,
      but they are not added, if not present in the first place"
@@ -6598,7 +6600,7 @@
     "
 
     "Modified: / 13-04-2011 / 15:19:13 / sr"
-    "Modified (comment): / 13-03-2013 / 00:40:55 / Jan Vrany <jan.vrany@fit.cvut.cz>"
+    "Modified: / 05-06-2014 / 12:22:52 / Jan Vrany <jan.vrany@fit.cvut.cz>"
 !
 
 allReferences
@@ -7456,11 +7458,11 @@
 !ProjectDefinition class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.502 2014-04-14 08:55:56 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.503 2014-06-05 11:26:41 vrany Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.502 2014-04-14 08:55:56 stefan Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/ProjectDefinition.st,v 1.503 2014-06-05 11:26:41 vrany Exp $'
 !
 
 version_SVN