public override IVerbWorker getWorker(WorkingDirectory workingDirectory) { List<string> args = new List<string>(); //// args.add(BUILD_DEFS //// args.add(boogieasm_flags) args.Add(getAction()); BuildObject captureStdout = null; if (outFlagWorks()) { args.Add("-out"); args.Add(outputFile().getRelativePath()); } else { captureStdout = outputFile(); } BasmModuleAccumulator acc = new BasmModuleAccumulator(context, upstreamObj, includeAllImps()); Util.Assert(acc.ddisp == DependencyDisposition.Complete); args.AddRange(acc.basmModules.Select(module => module.getRelativePath())); args.AddRange(context.getPoundDefines().ToDefArgs()); extendArgs(args); return new ProcessInvokeAsyncWorker( workingDirectory, this, getBoogieasmExecutable().getRelativePath(), args.ToArray(), ProcessExitCodeHandling.NonzeroIsFailure, getDiagnosticsBase(), captureStdout: captureStdout); }
public override IVerbWorker getWorker(WorkingDirectory workingDirectory) { List <string> args = new List <string>(); //// args.add(BUILD_DEFS //// args.add(boogieasm_flags) args.Add(getAction()); BuildObject captureStdout = null; if (outFlagWorks()) { args.Add("-out"); args.Add(outputFile().getRelativePath()); } else { captureStdout = outputFile(); } BasmModuleAccumulator acc = new BasmModuleAccumulator(context, upstreamObj, includeAllImps()); Util.Assert(acc.ddisp == DependencyDisposition.Complete); args.AddRange(acc.basmModules.Select(module => module.getRelativePath())); args.AddRange(context.getPoundDefines().ToDefArgs()); extendArgs(args); return(new ProcessInvokeAsyncWorker( workingDirectory, this, getBoogieasmExecutable().getRelativePath(), args.ToArray(), ProcessExitCodeHandling.NonzeroIsFailure, getDiagnosticsBase(), captureStdout: captureStdout)); }
public override IVerbWorker getWorker() { List <string> args = new List <string>(); //- args.add(BUILD_DEFS //- args.add(boogieasm_flags) args.Add(getAction()); string finalStdoutPath = null; if (outFlagWorks()) { args.Add("-out"); args.Add(outputFile().getRelativePath()); } else { finalStdoutPath = outputFile().getFilesystemPath(); } BasmModuleAccumulator acc = new BasmModuleAccumulator(context, upstreamObj, includeAllImps()); Util.Assert(acc.ddisp == DependencyDisposition.Complete); args.AddRange(acc.basmModules.Select(module => module.getRelativePath())); args.AddRange(context.getPoundDefines().ToDefArgs()); extendArgs(args); return(new ProcessInvokeAsyncWorker(this, getBoogieasmExecutable().getRelativePath(), args.ToArray(), ProcessInvoker.RcHandling.NONZERO_RC_IS_FAILURE, getDiagnosticsBase(), finalStdoutPath: finalStdoutPath)); }
protected IEnumerable <IVerb> getVerifyishVerbs() { //- All the available things that make Beat or Basm ... BasmModuleAccumulator acc = new BasmModuleAccumulator(context, upstreamObj, includeAllImps()); //- Plus the transitive deps. IEnumerable <IVerb> extraDeps = new IVerb[] { context, boogieAsmBuildExecutableVerb }; return(acc.verbs.Concat(extraDeps).Concat(context.getVerbs())); }
public override IEnumerable <BuildObject> getDependencies(out DependencyDisposition ddisp) { BasmModuleAccumulator acc = new BasmModuleAccumulator(context, upstreamObj, includeAllImps()); IEnumerable <BuildObject> result = acc.getDeps(); DependencyDisposition ddisp_extra; IEnumerable <BuildObject> result_extra = getExtraDeps(out ddisp_extra); ddisp = acc.ddisp.combine(ddisp_extra); return(result.Concat(result_extra).Concat(new[] { getBoogieasmExecutable() })); }
public override IEnumerable<BuildObject> getDependencies(out DependencyDisposition ddisp) { BasmModuleAccumulator acc = new BasmModuleAccumulator(context, upstreamObj, includeAllImps()); IEnumerable<BuildObject> result = acc.getDeps(); DependencyDisposition ddisp_extra; IEnumerable<BuildObject> result_extra = getExtraDeps(out ddisp_extra); ddisp = acc.ddisp.combine(ddisp_extra); return result.Concat(result_extra).Concat(new[] { getBoogieasmExecutable() }); }
protected IEnumerable<IVerb> getVerifyishVerbs() { // All the available things that make Beat or Basm ... BasmModuleAccumulator acc = new BasmModuleAccumulator(context, upstreamObj, includeAllImps()); // Plus the transitive deps. IEnumerable<IVerb> extraDeps = new IVerb[] { context, boogieAsmBuildExecutableVerb }; return acc.verbs.Concat(extraDeps).Concat(context.getVerbs()); }