Index: libgpg-error-1.16/src/gen-w32-lock-obj.c =================================================================== --- libgpg-error-1.16/src/gen-w32-lock-obj.c +++ libgpg-error-1.16/src/gen-w32-lock-obj.c @@ -39,17 +39,23 @@ unsigned char *p; int i; - printf ("sizeof CRITICAL_SECTION = %u\n", (int)sizeof (CRITICAL_SECTION)); - printf ("sizeof _gpgrt_lock_t = %u\n", (int)sizeof lk); - + printf ("#pragma pack(push, 8)\n" + "typedef struct\n" + "{\n" + " volatile char _priv[%d];\n" + "} gpgrt_lock_t;\n" + "#pragma pack(pop)\n", + sizeof lk); + memset (&lk, 0, sizeof lk); lk.vers = LOCK_ABI_VERSION; lk.started = -1; - printf ("#define GPGRT_LOCK_INITIALIZER {"); + + printf ("#define GPGRT_LOCK_INITIALIZER {{"); p = (unsigned char *)&lk; for (i=0; i < sizeof lk - 1; i++) printf ("%u,", p[i]); - printf ("%u}\n", p[sizeof(lk)-1]); + printf ("%u}}\n", p[sizeof(lk)-1]); return 0; }