makefiles: Also store the basename without object dir for generated files.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Alexandre Julliard 2020-09-11 09:53:23 +02:00
parent 22628bcc17
commit 9da7d620ef
1 changed files with 4 additions and 2 deletions

View File

@ -76,6 +76,7 @@ struct incl_file
struct file *file; struct file *file;
char *name; char *name;
char *filename; char *filename;
char *basename; /* base target name for generated files */
char *sourcename; /* source file name for generated headers */ char *sourcename; /* source file name for generated headers */
struct incl_file *included_by; /* file that included this one */ struct incl_file *included_by; /* file that included this one */
int included_line; /* line where this file was included */ int included_line; /* line where this file was included */
@ -975,7 +976,8 @@ static struct incl_file *add_generated_source( struct makefile *make,
memset( file, 0, sizeof(*file) ); memset( file, 0, sizeof(*file) );
file->file = add_file( name ); file->file = add_file( name );
file->name = xstrdup( name ); file->name = xstrdup( name );
file->filename = obj_dir_path( make, filename ? filename : name ); file->basename = xstrdup( filename ? filename : name );
file->filename = obj_dir_path( make, file->basename );
file->file->flags = FLAG_GENERATED; file->file->flags = FLAG_GENERATED;
file->use_msvcrt = make->use_msvcrt; file->use_msvcrt = make->use_msvcrt;
list_add_tail( &make->sources, &file->entry ); list_add_tail( &make->sources, &file->entry );
@ -3122,7 +3124,7 @@ static void output_source_default( struct makefile *make, struct incl_file *sour
if ((source->file->flags & FLAG_GENERATED) && if ((source->file->flags & FLAG_GENERATED) &&
(!make->testdll || !strendswith( source->filename, "testlist.c" ))) (!make->testdll || !strendswith( source->filename, "testlist.c" )))
strarray_add( &make->clean_files, source->filename ); strarray_add( &make->clean_files, source->basename );
if (source->file->flags & FLAG_C_IMPLIB) strarray_add( &make->implib_objs, strmake( "%s.o", obj )); if (source->file->flags & FLAG_C_IMPLIB) strarray_add( &make->implib_objs, strmake( "%s.o", obj ));
if (need_obj) if (need_obj)