Otherwise .c files with #pragma makedep implib will not be built
--
I think that compilation should not need to occur during `make install`; it should just be copying files (and maybe stripping) files into DESTDIR, without any need to modify the build folder.
assuming (of course) that `make all` was up-to-date beforehand. --- tools/makedep.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/tools/makedep.c b/tools/makedep.c index 0bb77ce56df..a4fc08e184a 100644 --- a/tools/makedep.c +++ b/tools/makedep.c @@ -3262,6 +3262,7 @@ static void output_import_lib( struct makefile *make ) output_filename( spec_file ); output_filenames_obj_dir( make, make->implib_files ); output( "\n" ); + strarray_add( &make->all_targets, strmake( "lib%s.a", make->importlib )); add_install_rule( make, make->importlib, strmake( "lib%s.a", make->importlib ), strmake( "d%s/lib%s.a", so_dir, make->importlib )); @@ -3285,6 +3286,7 @@ static void output_import_lib( struct makefile *make ) output_filename( spec_file ); output_filenames_obj_dir( make, make->crossimplib_files ); output( "\n" ); + strarray_add( &make->all_targets, strmake( "lib%s.cross.a", make->importlib )); add_install_rule( make, make->importlib, strmake( "lib%s.cross.a", make->importlib ), strmake( "d%s/lib%s.a", pe_dir, make->importlib )); @@ -3362,6 +3364,7 @@ static void output_static_lib( struct makefile *make ) output_filenames_obj_dir( make, make->object_files ); output_filenames_obj_dir( make, make->unixobj_files ); output( "\n" ); + strarray_add( &make->all_targets, make->staticlib ); add_install_rule( make, make->staticlib, make->staticlib, strmake( "d%s/%s", so_dir, make->staticlib )); } @@ -3378,8 +3381,11 @@ static void output_static_lib( struct makefile *make ) output_filenames_obj_dir( make, make->crossobj_files ); output( "\n" ); if (!make->extlib) + { + strarray_add( &make->all_targets, name ); add_install_rule( make, make->staticlib, name, strmake( "d%s/%s", pe_dir, make->staticlib )); + } } }
Signed-off-by: Kevin Puetz PuetzKevinA@JohnDeere.com
Kevin Puetz PuetzKevinA@JohnDeere.com writes:
Otherwise .c files with #pragma makedep implib will not be built
--
I think that compilation should not need to occur during `make install`; it should just be copying files (and maybe stripping) files into DESTDIR, without any need to modify the build folder.
That's on purpose, building all the importlibs is fairly slow, and not necessary in the vast majority of cases.
Alexandre Julliard julliard@winehq.org writes:
That's on purpose, building all the importlibs is fairly slow, and not necessary in the vast majority of cases.
Ah, OK. I stumbled on this because I ran make install in the wrong terminal tab (one where I did not have environment set for our cross-toolchain), and was surprised to see it trying to build anything. I assumed it was accidental.
Would you like it more if I made it create a "dev" target so one could `make all dev` to actually have all the compiling done? Or would you prefer I just drop this completely? If it's on purpose, and this is how others prefer it, I can certainly deal with it as-is. Just need to do `make install` in the right window :-)
Kevin Puetz PuetzKevinA@JohnDeere.com writes:
Alexandre Julliard julliard@winehq.org writes:
That's on purpose, building all the importlibs is fairly slow, and not necessary in the vast majority of cases.
Ah, OK. I stumbled on this because I ran make install in the wrong terminal tab (one where I did not have environment set for our cross-toolchain), and was surprised to see it trying to build anything. I assumed it was accidental.
Would you like it more if I made it create a "dev" target so one could `make all dev` to actually have all the compiling done? Or would you prefer I just drop this completely? If it's on purpose, and this is how others prefer it, I can certainly deal with it as-is. Just need to do `make install` in the right window :-)
I think 'make install-dev' into a dummy directory is sufficient for the rare case where you'd need to ensure that they are built.