[3/3] winemaker: Generate def file from spec file with winebuild

André Hentschel nerv at dawncrow.de
Mon Oct 8 16:48:38 CDT 2012


when linking someapp.exe.so needing a somelib.dll.so we need a libsomelib.def

---
 tools/winemaker |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/tools/winemaker b/tools/winemaker
index 4e32fc1..d3dcafc 100755
--- a/tools/winemaker
+++ b/tools/winemaker
@@ -2511,6 +2511,7 @@ sub generate_project_files($)
   }
   print FILEO "\n\n";
   print FILEO "### Tools\n\n";
+  print FILEO "WINEBUILD = winebuild\n";
   print FILEO "CC = winegcc\n";
   print FILEO "CXX = wineg++\n";
   print FILEO "RC = wrc\n";
@@ -2576,7 +2577,9 @@ sub generate_project_files($)
       if (@$target[$T_TYPE] == $TT_DLL && (@$project_settings[$T_FLAGS] & $TF_HASDEF)) {
         print FILEO "\$(${canon}_MODULE).so: \$(${canon}_OBJS) \$(${canon}_MODULE:.dll=.def)\n";
       } elsif (@$target[$T_TYPE] == $TT_DLL) {
-        print FILEO "\$(${canon}_MODULE).so: \$(${canon}_OBJS) \$(${canon}_MODULE:.dll=.spec)\n";
+        print FILEO "lib\$(${canon}_MODULE:.dll=.def): \$(${canon}_MODULE:.dll=.spec)\n";
+        print FILEO "\t\$(WINEBUILD) --def -E \$(${canon}_MODULE:.dll=.spec) -o lib\$(${canon}_MODULE:.dll=.def)\n\n";
+        print FILEO "\$(${canon}_MODULE).so: \$(${canon}_OBJS) \$(${canon}_MODULE:.dll=.spec) lib\$(${canon}_MODULE:.dll=.def)\n";
       } else {
         print FILEO "\$(${canon}_MODULE): \$(${canon}_OBJS)\n";
       }
-- 
1.7.4.1



-- 

Best Regards, André Hentschel


More information about the wine-patches mailing list