BuildSystem: Sort input file lists
so that godot package builds reproducibly in spite of indeterministic filesystem readdir order and http://bugs.python.org/issue30461 See https://reproducible-builds.org/ for why this is good. Sort font input file list, so that builtin_fonts.gen.h is created in a reproducible way Sort list of platforms, so that editor/register_exporters.gen.cpp is created in a reproducible way Sort list of source files, so that .a files and resulting godot binaries are created in a reproducible way
This commit is contained in:
parent
f312582326
commit
83b856c046
3 changed files with 3 additions and 2 deletions
|
@ -23,7 +23,7 @@ platform_exporters = []
|
|||
platform_apis = []
|
||||
global_defaults = []
|
||||
|
||||
for x in glob.glob("platform/*"):
|
||||
for x in sorted(glob.glob("platform/*")):
|
||||
if (not os.path.isdir(x) or not os.path.exists(x + "/detect.py")):
|
||||
continue
|
||||
tmppath = "./" + x
|
||||
|
|
|
@ -77,6 +77,7 @@ if env['tools']:
|
|||
# Fonts
|
||||
flist = glob.glob(path + "/../thirdparty/fonts/*.ttf")
|
||||
flist.extend(glob.glob(path + "/../thirdparty/fonts/*.otf"))
|
||||
flist.sort()
|
||||
env.Depends('#editor/builtin_fonts.gen.h', flist)
|
||||
env.CommandNoCache('#editor/builtin_fonts.gen.h', flist, run_in_subprocess(editor_builders.make_fonts_header))
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ def add_source_files(self, sources, filetype, lib_env=None, shared=False):
|
|||
|
||||
if isbasestring(filetype):
|
||||
dir_path = self.Dir('.').abspath
|
||||
filetype = glob.glob(dir_path + "/" + filetype)
|
||||
filetype = sorted(glob.glob(dir_path + "/" + filetype))
|
||||
|
||||
for path in filetype:
|
||||
sources.append(self.Object(path))
|
||||
|
|
Loading…
Reference in a new issue