intention of stubs with arch flag, specially in msvcp*

Alexandre Julliard julliard at winehq.org
Wed Sep 15 12:44:24 CDT 2010


André Hentschel <nerv at dawncrow.de> writes:

> The last one silently gets ignored, but the one with the arch flag causes winebuild
> to put some extra assembler code into the dll.
>
> So is this intented?

No. Try something like this:

diff --git a/tools/winebuild/parser.c b/tools/winebuild/parser.c
index bc483c9..755084e 100644
--- a/tools/winebuild/parser.c
+++ b/tools/winebuild/parser.c
@@ -385,7 +385,11 @@ static int parse_spec_stub( ORDDEF *odp, DLLSPEC *spec )
 {
     odp->u.func.nb_args = 0;
     odp->link_name = xstrdup("");
-    odp->flags |= FLAG_CPU(CPU_x86) | FLAG_CPU(CPU_x86_64); /* don't bother generating stubs for Winelib */
+    /* don't bother generating stubs for Winelib */
+    if (odp->flags & FLAG_CPU_MASK)
+        odp->flags &= FLAG_CPU(CPU_x86) | FLAG_CPU(CPU_x86_64);
+    else
+        odp->flags |= FLAG_CPU(CPU_x86) | FLAG_CPU(CPU_x86_64);
     return 1;
 }
 
-- 
Alexandre Julliard
julliard at winehq.org



More information about the wine-devel mailing list