winemaker: Reenabling the wrapper code

François Gouget fgouget at codeweavers.com
Thu Mar 1 14:08:14 CST 2001


   Winebuild's mechanism does not work on C++ libraries (like the MFC).
The reason is that there is no way to avoid cross library variable
references. The most common type of cross-reference being references to
the virtual table!
   So one has to link with C++ libraries in the unix sense which means
potential initialization order problems.
   So I'm reenabling winemaker's wrapping support.

Changelog:

   François Gouget <fgouget at codeweavers.com>

 * tools/winemaker

   Reenable the wrapper support.


-- 
François Gouget
fgouget at codeweavers.com
-------------- next part --------------
Index: tools/winemaker
===================================================================
RCS file: /home/wine/wine/tools/winemaker,v
retrieving revision 1.16
diff -u -r1.16 winemaker
--- tools/winemaker	2001/02/12 01:22:58	1.16
+++ tools/winemaker	2001/03/01 19:54:47
@@ -405,19 +405,18 @@
       push @{@$target[$T_LIBRARIES]},$';
     } elsif (@$target[$T_TYPE] != $TT_DLL and 
              $option =~ /^--wrap/) {
-      print STDERR "warning: --wrap no longer supported, ignoring\n";
-      #@$target[$T_FLAGS]|=$TF_WRAP;
+      @$target[$T_FLAGS]|=$TF_WRAP;
     } elsif (@$target[$T_TYPE] != $TT_DLL and 
              $option =~ /^--nowrap/) {
       @$target[$T_FLAGS]&=~$TF_WRAP;
     } elsif ($option =~ /^--mfc/) {
       @$target[$T_FLAGS]|=$TF_MFC;
-      #if (@$target[$T_TYPE] != $TT_DLL) {
-      #  @$target[$T_FLAGS]|=$TF_WRAP;
-      #}
+      if (@$target[$T_TYPE] != $TT_DLL) {
+        @$target[$T_FLAGS]|=$TF_WRAP;
+      }
     } elsif ($option =~ /^--nomfc/) {
       @$target[$T_FLAGS]&=~$TF_MFC;
-      #@$target[$T_FLAGS]&=~($TF_MFC|$TF_WRAP);
+      @$target[$T_FLAGS]&=~($TF_MFC|$TF_WRAP);
     } else {
       print STDERR "error: unknown option \"$option\"\n";
       return 0;
@@ -2051,13 +2195,12 @@
     $opt_ask_project_options=$OPT_ASK_YES;
     $opt_ask_target_options=$OPT_ASK_YES;
   } elsif ($arg eq "--wrap") {
-    print STDERR "warning: --wrap no longer supported, ignoring the option\n";
-    #$opt_flags|=$TF_WRAP;
+    $opt_flags|=$TF_WRAP;
   } elsif ($arg eq "--nowrap") {
     $opt_flags&=~$TF_WRAP;
   } elsif ($arg eq "--mfc") {
     $opt_flags|=$TF_MFC;
-    #$opt_flags|=$TF_MFC|$TF_WRAP;
+    $opt_flags|=$TF_MFC|$TF_WRAP;
     $needs_mfc=1;
   } elsif ($arg eq "--nomfc") {
     $opt_flags&=~($TF_MFC|$TF_WRAP);


More information about the wine-patches mailing list