[PATCH] makedep: Add various lib*.a targets to make all.

Kevin Puetz PuetzKevinA at JohnDeere.com
Wed Feb 2 13:24:26 CST 2022


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 ));
+        }
     }
 }
 
-- 
2.34.1




More information about the wine-devel mailing list