Made all unit tests pass again.
This commit is contained in:
parent
bae8507753
commit
af0ca6751a
7
build.py
7
build.py
|
@ -637,8 +637,11 @@ class CustomTarget:
|
||||||
self.dependencies.append(c)
|
self.dependencies.append(c)
|
||||||
# GIR scanner will attempt to execute this binary but
|
# GIR scanner will attempt to execute this binary but
|
||||||
# it assumes that it is in path, so always give it a full path.
|
# it assumes that it is in path, so always give it a full path.
|
||||||
totarget = os.path.join('.', c.get_subdir(), c.get_filename())
|
tmp = c.get_filename()
|
||||||
final_cmd.append(totarget)
|
if isinstance(tmp, str):
|
||||||
|
tmp =[tmp]
|
||||||
|
totarget = [os.path.join('.', c.get_subdir(), i) for i in tmp]
|
||||||
|
final_cmd += totarget
|
||||||
elif isinstance(c, list):
|
elif isinstance(c, list):
|
||||||
# Hackety hack, only supports one level of flattening. Should really
|
# Hackety hack, only supports one level of flattening. Should really
|
||||||
# work to arbtrary depth.
|
# work to arbtrary depth.
|
||||||
|
|
|
@ -136,9 +136,15 @@ class NinjaBackend(backends.Backend):
|
||||||
outfile.close()
|
outfile.close()
|
||||||
os.replace(tempfilename, outfilename)
|
os.replace(tempfilename, outfilename)
|
||||||
|
|
||||||
|
def hackety_hack(self, hack):
|
||||||
|
if isinstance(hack, list):
|
||||||
|
return hack[0]
|
||||||
|
return hack
|
||||||
|
|
||||||
def generate_custom_target(self, target, outfile):
|
def generate_custom_target(self, target, outfile):
|
||||||
ofilenames = [os.path.join(target.subdir, i) for i in target.output]
|
ofilenames = [os.path.join(target.subdir, i) for i in target.output]
|
||||||
deps = [os.path.join(i.get_subdir(), i.get_filename()) for i in target.get_dependencies()]
|
# FIXME, should not grab element at zero but rather expand all.
|
||||||
|
deps = [os.path.join(i.get_subdir(), self.hackety_hack(i.get_filename())) for i in target.get_dependencies()]
|
||||||
srcs = [os.path.join(self.build_to_src, target.subdir, i) for i in target.sources]
|
srcs = [os.path.join(self.build_to_src, target.subdir, i) for i in target.sources]
|
||||||
deps += srcs
|
deps += srcs
|
||||||
elem = NinjaBuildElement(ofilenames, 'CUSTOM_COMMAND', deps)
|
elem = NinjaBuildElement(ofilenames, 'CUSTOM_COMMAND', deps)
|
||||||
|
@ -147,7 +153,7 @@ class NinjaBackend(backends.Backend):
|
||||||
if i == '@INPUT@':
|
if i == '@INPUT@':
|
||||||
cmd += srcs
|
cmd += srcs
|
||||||
elif i == '@OUTPUT@':
|
elif i == '@OUTPUT@':
|
||||||
cmd.append += ofilenames
|
cmd += ofilenames
|
||||||
else:
|
else:
|
||||||
cmd.append(i)
|
cmd.append(i)
|
||||||
elem.add_item('COMMAND', cmd)
|
elem.add_item('COMMAND', cmd)
|
||||||
|
|
Loading…
Reference in New Issue