func (s *GCCPreprocRunnerForDiscoveringIncludes) Run(ctx *types.Context) error { properties, _, err := prepareGCCPreprocRecipeProperties(ctx, s.SourceFilePath, s.TargetFilePath, s.Includes) if err != nil { return i18n.WrapError(err) } verbose := ctx.Verbose logger := ctx.GetLogger() if properties[constants.RECIPE_PREPROC_MACROS] == constants.EMPTY_STRING { //generate PREPROC_MACROS from RECIPE_CPP_PATTERN properties[constants.RECIPE_PREPROC_MACROS] = GeneratePreprocPatternFromCompile(properties[constants.RECIPE_CPP_PATTERN]) } stderr, err := builder_utils.ExecRecipeCollectStdErr(properties, constants.RECIPE_PREPROC_MACROS, true, verbose, false, logger) if err != nil { return i18n.WrapError(err) } ctx.SourceGccMinusE = string(stderr) return nil }