llvmbuild/main.py: Let LibraryDependencies.inc deterministic.
authorNAKAMURA Takumi <geek4civic@gmail.com>
Thu, 20 Dec 2012 10:35:18 +0000 (10:35 +0000)
committerNAKAMURA Takumi <geek4civic@gmail.com>
Thu, 20 Dec 2012 10:35:18 +0000 (10:35 +0000)
FYI, llvm and clang can be built deterministically between stage 2 and stage3, among iterative clean rebuilds, with GNU ar;

configure --disable-timestamps
make AR.Flags=crsD RANLIB=echo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@170682 91177308-0d34-0410-b5e6-96231b3b80d8

utils/llvm-build/llvmbuild/main.py

index 27d23d0855d17e83d674515e53de2137ae131a44..32d5395a509f45bb7c5dd6fd7016c5a77514e6d1 100644 (file)
@@ -182,7 +182,9 @@ class LLVMProjectInfo(object):
         # out easily. If we don't, we should special case the check.
 
         self.ordered_component_infos = []
-        components_to_visit = set(self.component_infos)
+        components_to_visit = sorted(
+            set(self.component_infos),
+            key = lambda c: c.name)
         while components_to_visit:
             visit_component_info(iter(components_to_visit).next(), [], set())