[winegcc08] Handle -L in a separate array

Richard Cohen richard.cohen at virgin.net
Tue Sep 9 13:14:05 CDT 2003


...rather than adding -L<libpath> to both the DLLs and static libraries
No functional changes.

Changelog:
     Handle -L<dir> in a separate array
-------------- next part --------------
diff -u -r -N tools.7/winewrap.c tools/winewrap.c
--- tools.7/winewrap.c	2003-09-09 16:52:49.000000000 +0100
+++ tools/winewrap.c	2003-09-09 16:36:26.000000000 +0100
@@ -217,7 +217,7 @@
 /* Default output name is the same as mingw-ld */
 static char *output_name = "a.exe";
 
-static strarray *arh_files, *dll_files, *lib_files, *lib_paths, *obj_files;
+static strarray *arh_files, *dll_files, *lib_files, *llib_paths, *lib_paths, *obj_files;
 
 int verbose = 0;
 static int keep_generated = 0;
@@ -324,8 +324,7 @@
 static void add_lib_path(const char* path)
 {
     strarray_add(lib_paths, strdup(path));
-    strarray_add(dll_files, strmake("-L%s", path));
-    strarray_add(lib_files, strmake("-L%s", path));
+    strarray_add(llib_paths, strmake("-L%s", path));
 }
 
 static void add_lib_file(const char* library)
@@ -386,6 +385,8 @@
     strarray_add(wspec_args, strmake("%s.exe", base_name));
     strarray_add(wspec_args, gui_mode ? "-mgui" : "-mcui");
     strarray_add(wspec_args, wrap_o_name);
+    for (i = 0; i < llib_paths->size; i++)
+	strarray_add(wspec_args, llib_paths->base[i]);
     for (i = 0; i < lib_files->size; i++)
 	strarray_add(wspec_args, lib_files->base[i]);
     for (i = 0; i < dll_files->size; i++)
@@ -440,6 +441,7 @@
     strarray_init(dll_files);
     strarray_init(lib_files);
     strarray_init(lib_paths);
+    strarray_init(llib_paths);
     strarray_init(obj_files);
     
     /* include the standard DLL path first */
@@ -547,6 +549,8 @@
 	strarray_add(spec_args, strmake("%s.exe", base_name));
         strarray_add(spec_args, gui_mode ? "-mgui" : "-mcui");
     }
+    for (i = 0; i < llib_paths->size; i++)
+	strarray_add(spec_args, llib_paths->base[i]);
     for (i = 0; i < dll_files->size; i++)
 	strarray_add(spec_args, dll_files->base[i]);
     for (i = 0; i < obj_files->size; i++)
@@ -583,8 +587,8 @@
     strarray_add(link_args, "-Wl,-Bsymbolic,-z,defs");
     strarray_add(link_args, "-lwine");
     strarray_add(link_args, "-lm");
-    for (i = 0; i < lib_files->size; i++)
-	strarray_add(link_args, lib_files->base[i]);
+    for (i = 0; i < llib_paths->size; i++)
+	strarray_add(link_args, llib_paths->base[i]);
     strarray_add(link_args, "-o");
     if (create_wrapper)
 	strarray_add(link_args, strmake("%s-wrap.dll.so", base_file));


More information about the wine-patches mailing list