From d7afa57597d245bef7b7ff3bd2ad8706406a8931 Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Tue, 24 Dec 2013 21:12:08 +0100 Subject: [PATCH] makedep: Generate a common rule for all objects of a given idl source. --- tools/makedep.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/tools/makedep.c b/tools/makedep.c index c53b6c9c9a8..d580c6a7491 100644 --- a/tools/makedep.c +++ b/tools/makedep.c @@ -66,17 +66,16 @@ static const struct { unsigned int flag; const char *ext; - const char *widl_arg; } idl_outputs[] = { - { FLAG_IDL_TYPELIB, ".tlb", "$(TARGETFLAGS) $(IDLFLAGS) -t" }, - { FLAG_IDL_REGTYPELIB, "_t.res", "$(TARGETFLAGS) $(IDLFLAGS) -t" }, - { FLAG_IDL_CLIENT, "_c.c", "$(IDLFLAGS) -c" }, - { FLAG_IDL_IDENT, "_i.c", "$(IDLFLAGS) -u" }, - { FLAG_IDL_PROXY, "_p.c", "$(IDLFLAGS) -p" }, - { FLAG_IDL_SERVER, "_s.c", "$(IDLFLAGS) -s" }, - { FLAG_IDL_REGISTER, "_r.res", "$(IDLFLAGS) -r" }, - { FLAG_IDL_HEADER, ".h", "$(IDLFLAGS) -h" }, + { FLAG_IDL_TYPELIB, ".tlb" }, + { FLAG_IDL_REGTYPELIB, "_t.res" }, + { FLAG_IDL_CLIENT, "_c.c" }, + { FLAG_IDL_IDENT, "_i.c" }, + { FLAG_IDL_PROXY, "_p.c" }, + { FLAG_IDL_SERVER, "_s.c" }, + { FLAG_IDL_REGISTER, "_r.res" }, + { FLAG_IDL_HEADER, ".h" } }; static struct list sources = LIST_INIT(sources); @@ -1468,14 +1467,16 @@ static struct strarray output_sources(void) for (i = 0; i < sizeof(idl_outputs) / sizeof(idl_outputs[0]); i++) { if (!(source->flags & idl_outputs[i].flag)) continue; - output( "%s%s: $(WIDL)\n", obj, idl_outputs[i].ext ); - output( "\t$(WIDL) $(includes) %s -o $@ %s\n", idl_outputs[i].widl_arg, source->filename ); dest = strmake( "%s%s", obj, idl_outputs[i].ext ); strarray_add( &clean_files, dest ); strarray_add( &targets, dest ); } column = 0; output_filenames( &targets, &column ); + output( ": $(WIDL)\n" ); + output( "\t$(WIDL) $(includes) $(TARGETFLAGS) $(IDLFLAGS) -o $@ %s\n", source->filename ); + column = 0; + output_filenames( &targets, &column ); column += output( ": %s", sourcedep ); } else if (!strcmp( ext, "in" )) /* .in file or man page */ -- 2.11.4.GIT