@@ -1,5 +1,6 @@
if 'CONFIG_PVRDMA' in config_host
# if not found, CONFIG_PVRDMA should not be set
+ # FIXME: broken on big endian architectures
libumad = cc.find_library('ibumad', required: true)
executable('rdmacm-mux', files('main.c'),
dependencies: [glib, libumad],
@@ -1,5 +1,6 @@
+# FIXME: broken on 32-bit architectures
executable('vhost-user-blk', files('vhost-user-blk.c'),
link_with: libvhost_user,
dependencies: qemuutil,
- build_by_default: targetos == 'linux',
+ build_by_default: false,
install: false)
@@ -813,20 +813,6 @@ class Ninja2Make(NinjaParserEventsWithVars):
self.print(r"ninja-command = $(if $V,,$(if ${.var.description},@printf '%s\n' '$(subst ','\'',${.var.description})' && ))${.var.command}")
self.print(r"ninja-command-restat = $(if $V,,$(if ${.var.description},@printf '%s\n' '$(subst ','\'',${.var.description})' && ))${.var.command} && if test -e $(firstword ${.var.out}); then printf '%s\n' ${.var.out} > $@; fi")
- def mangle_vars_for_make(self, x):
- matches = list(VAR_RE.finditer(x))
-
- # Reverse the match so that expanding later matches does not
- # invalidate m.span() for earlier ones.
- matches.reverse()
- for m in matches:
- match = m.group(1)
- if not match:
- continue
- value = '${.var.' + match + '}'
- x = x[:m.start()] + value + x[m.end():]
- return x
-
def end_file(self):
def natural_sort_key(s, _nsre=re.compile('([0-9]+)')):
return [int(text) if text.isdigit() else text.lower()
@@ -839,8 +825,6 @@ class Ninja2Make(NinjaParserEventsWithVars):
continue
self.print('ninja-targets-%s := %s' % (rule, ' '.join(self.rule_targets[rule])))
self.print('ninja-stamp-%s := %s' % (rule, ' '.join(self.stamp_targets[rule])))
- for name, value in self.rule_vars[rule].items():
- self.print('$(ninja-targets-%s): private .var.%s = %s' % (rule, name, self.mangle_vars_for_make(value)))
self.print('ninja-outputdirs += $(sort $(dir ${ninja-targets-%s}))' % rule)
self.print()
self.print('dummy := $(shell mkdir -p . $(sort $(ninja-outputdirs)))')
@@ -908,6 +892,11 @@ class Ninja2Make(NinjaParserEventsWithVars):
restat = 'restat' in self.scope.build_vars or 'restat' in self.rule_vars[rule]
depfile = scope.expand('${depfile}')
+ build_vars = {
+ 'command': scope.expand('${command}'),
+ 'description': scope.expand('${description}'),
+ 'out': scope.expand('${out}')
+ }
if restat and not depfile:
if len(out) == 1:
@@ -919,10 +908,10 @@ class Ninja2Make(NinjaParserEventsWithVars):
self.print('%s: %s | %s; ${ninja-command-restat}' % (stamp, inputs, orderonly))
self.rule_targets[rule].append(stamp)
self.stamp_targets[rule].append(stamp)
- self.build_vars[stamp] = self.scope.build_vars
+ self.build_vars[stamp] = build_vars
else:
self.print('%s: %s | %s; ${ninja-command}' % (targets, inputs, orderonly))
- self.build_vars[targets] = self.scope.build_vars
+ self.build_vars[targets] = build_vars
if depfile:
self.depfiles.append(depfile)