aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreter/interpreterobjects.py
diff options
context:
space:
mode:
authorkira78 <kira78@users.noreply.github.com>2021-07-04 20:37:35 -0400
committerGitHub <noreply@github.com>2021-07-04 17:37:35 -0700
commit4f49fa8315024014727ebe5347f506beb56b668e (patch)
tree290a4768f0675ba87d0f1dd6dca24b8f1412b26d /mesonbuild/interpreter/interpreterobjects.py
parent0d0f2cdafd7597ff84baf7a4790f3f016fe2337f (diff)
downloadmeson-4f49fa8315024014727ebe5347f506beb56b668e.zip
meson-4f49fa8315024014727ebe5347f506beb56b668e.tar.gz
meson-4f49fa8315024014727ebe5347f506beb56b668e.tar.bz2
dependencies: Deterministic LLVM compile and link arg ordering (#8959)
* dependencies: Deterministic LLVM compile and link arg ordering In LLVMDependencyConfigTool, the members compile_args and required_modules are either converted to or stored as sets, which do not have a stable ordering. This results in nondeterministic builds, particularly with required_modules causing the order in which the LLVM libraries are linked in to the output binaries to change across independent builds. As any guarantee about ordering for compile_args is lost by being converted from a list to a set and back, and the modules added to required_modules was even already sorted once, sort both when converting them to lists. * Use mesonlib.OrderedSet instead of sorting the sets. Co-authored-by: Kaelyn Takata <kaelyn.alexi@protonmail.com>
Diffstat (limited to 'mesonbuild/interpreter/interpreterobjects.py')
0 files changed, 0 insertions, 0 deletions