wow64cpu-Wow64Transition: Remove wow64cpu -> kernel32 dependencies.

This commit is contained in:
Zebediah Figura 2018-08-09 14:23:15 -05:00
parent eb5196c132
commit 0e828a225e
2 changed files with 77 additions and 36 deletions

View File

@ -5181,7 +5181,7 @@ fi
# |
# | Modified files:
# | * configure, configure.ac, dlls/ntdll/loader.c, dlls/ntdll/ntdll.spec, dlls/wow64cpu/Makefile.in,
# | dlls/wow64cpu/wow64cpu.spec
# | dlls/wow64cpu/wow64cpu.spec, dlls/wow64cpu/wow64cpu_main.c
# |
if test "$enable_wow64cpu_Wow64Transition" -eq 1; then
patch_apply wow64cpu-Wow64Transition/0001-wow64cpu-Add-stub-dll.patch

View File

@ -1,16 +1,18 @@
From 9598e08f8b900be94d23df995105b210c4f7567f Mon Sep 17 00:00:00 2001
From 162044fcf5d46edd5cc3c0994ec6085f5cdc3a53 Mon Sep 17 00:00:00 2001
From: Zebediah Figura <z.figura12@gmail.com>
Date: Tue, 7 Aug 2018 21:05:56 -0500
Subject: [PATCH 1/2] wow64cpu: Add stub dll.
---
configure | 2 ++
configure.ac | 1 +
dlls/wow64cpu/Makefile.in | 1 +
dlls/wow64cpu/wow64cpu.spec | 25 +++++++++++++++++++++++++
4 files changed, 29 insertions(+)
configure | 2 ++
configure.ac | 1 +
dlls/wow64cpu/Makefile.in | 6 ++++++
dlls/wow64cpu/wow64cpu.spec | 25 +++++++++++++++++++++++++
dlls/wow64cpu/wow64cpu_main.c | 28 ++++++++++++++++++++++++++++
5 files changed, 62 insertions(+)
create mode 100644 dlls/wow64cpu/Makefile.in
create mode 100644 dlls/wow64cpu/wow64cpu.spec
create mode 100644 dlls/wow64cpu/wow64cpu_main.c
diff --git a/configure b/configure
index 337ce91..477fe02 100755
@ -46,42 +48,81 @@ index be247ea..376b818 100644
WINE_CONFIG_MAKEFILE(dlls/wpcap)
diff --git a/dlls/wow64cpu/Makefile.in b/dlls/wow64cpu/Makefile.in
new file mode 100644
index 0000000..261363f
index 0000000..d05ff34
--- /dev/null
+++ b/dlls/wow64cpu/Makefile.in
@@ -0,0 +1 @@
+MODULE = wow64cpu.dll
@@ -0,0 +1,6 @@
+MODULE = wow64cpu.dll
+EXTRADLLFLAGS = -nodefaultlibs
+IMPORTS = winecrt0 ntdll
+
+C_SRCS = \
+ wow64cpu_main.c
diff --git a/dlls/wow64cpu/wow64cpu.spec b/dlls/wow64cpu/wow64cpu.spec
new file mode 100644
index 0000000..2d074ee
index 0000000..0ea2b4d
--- /dev/null
+++ b/dlls/wow64cpu/wow64cpu.spec
@@ -0,0 +1,25 @@
+@ stub CpuFlushInstructionCache
+@ stub CpuGetContext
+@ stub CpuGetStackPointer
+@ stub CpuInitializeStartupContext
+@ stub CpuNotifyAffinityChange
+@ stub CpuNotifyAfterFork
+@ stub CpuNotifyBeforeFork
+@ stub CpuNotifyDllLoad
+@ stub CpuNotifyDllUnload
+@ stub CpuPrepareForDebuggerAttach
+@ stub CpuProcessDebugEvent
+@ stub CpuProcessInit
+@ stub CpuProcessTerm
+@ stub CpuResetFloatingPoint
+@ stub CpuResetToConsistentState
+@ stub CpuSetContext
+@ stub CpuSetInstructionPointer
+@ stub CpuSetStackPointer
+@ stub CpuSimulate
+@ stub CpuSuspendLocalThread
+@ stub CpuSuspendThread
+@ stub CpuThreadInit
+@ stub CpuThreadTerm
+@ stub TurboDispatchJumpAddressEnd
+@ stub TurboDispatchJumpAddressStart
+# @ stub CpuFlushInstructionCache
+# @ stub CpuGetContext
+# @ stub CpuGetStackPointer
+# @ stub CpuInitializeStartupContext
+# @ stub CpuNotifyAffinityChange
+# @ stub CpuNotifyAfterFork
+# @ stub CpuNotifyBeforeFork
+# @ stub CpuNotifyDllLoad
+# @ stub CpuNotifyDllUnload
+# @ stub CpuPrepareForDebuggerAttach
+# @ stub CpuProcessDebugEvent
+# @ stub CpuProcessInit
+# @ stub CpuProcessTerm
+# @ stub CpuResetFloatingPoint
+# @ stub CpuResetToConsistentState
+# @ stub CpuSetContext
+# @ stub CpuSetInstructionPointer
+# @ stub CpuSetStackPointer
+# @ stub CpuSimulate
+# @ stub CpuSuspendLocalThread
+# @ stub CpuSuspendThread
+# @ stub CpuThreadInit
+# @ stub CpuThreadTerm
+# @ stub TurboDispatchJumpAddressEnd
+# @ stub TurboDispatchJumpAddressStart
diff --git a/dlls/wow64cpu/wow64cpu_main.c b/dlls/wow64cpu/wow64cpu_main.c
new file mode 100644
index 0000000..9bf8012
--- /dev/null
+++ b/dlls/wow64cpu/wow64cpu_main.c
@@ -0,0 +1,28 @@
+/*
+ * Copyright 2018 Zebediah Figura
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#include "config.h"
+#include <stdarg.h>
+#include "windef.h"
+#include "winternl.h"
+
+BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, void *reserved )
+{
+ if (reason == DLL_PROCESS_ATTACH) LdrDisableThreadCalloutsForDll( inst );
+ return TRUE;
+}
--
2.7.4