Author: jgardou
Date: Thu Sep 25 18:25:47 2014
New Revision: 64282
URL:
http://svn.reactos.org/svn/reactos?rev=64282&view=rev
Log:
[KERNEL32]
- Introduce kernel32_vista.dll, aiming at adding implementation of vista+ routines (for
wine modules) without screwing kernel32 export list.
[MSI][PDH][SNMPAPI]
- Link to kernel32_vista
Added:
trunk/reactos/dll/win32/kernel32_vista/
trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt (with props)
trunk/reactos/dll/win32/kernel32_vista/DllMain.c (with props)
trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c (with props)
trunk/reactos/dll/win32/kernel32_vista/k32_vista.h (with props)
trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec (with props)
Modified:
trunk/reactos/dll/win32/CMakeLists.txt
trunk/reactos/dll/win32/msi/CMakeLists.txt
trunk/reactos/dll/win32/pdh/CMakeLists.txt
trunk/reactos/dll/win32/snmpapi/CMakeLists.txt
Modified: trunk/reactos/dll/win32/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/CMakeLists.txt?r…
==============================================================================
--- trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014
@@ -71,6 +71,7 @@
add_subdirectory(jscript)
add_subdirectory(jsproxy)
add_subdirectory(kernel32)
+add_subdirectory(kernel32_vista)
add_subdirectory(loadperf)
add_subdirectory(localspl)
add_subdirectory(localui)
Added: trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/C…
==============================================================================
--- trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt (added)
+++ trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47
2014
@@ -0,0 +1,24 @@
+
+add_definitions(-D_KERNEL32_)
+
+remove_definitions(-D_WIN32_WINNT=0x502)
+add_definitions(-D_WIN32_WINNT=0x600)
+
+spec2def(kernel32_vista.dll kernel32_vista.spec ADD_IMPORTLIB)
+
+list(APPEND SOURCE
+ DllMain.c
+ GetTickCount64.c
+)
+
+add_library(kernel32_vista SHARED
+ ${SOURCE}
+ ${CMAKE_CURRENT_BINARY_DIR}/kernel32_vista.def
+)
+
+set_module_type(kernel32_vista win32dll HOTPATCHABLE ENTRYPOINT DllMain 12)
+
+add_importlibs(kernel32_vista kernel32)
+
+add_dependencies(kernel32_vista psdk)
+add_cd_file(TARGET kernel32_vista DESTINATION reactos/system32 FOR all)
Propchange: trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/reactos/dll/win32/kernel32_vista/DllMain.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/D…
==============================================================================
--- trunk/reactos/dll/win32/kernel32_vista/DllMain.c (added)
+++ trunk/reactos/dll/win32/kernel32_vista/DllMain.c [iso-8859-1] Thu Sep 25 18:25:47
2014
@@ -0,0 +1,14 @@
+
+#include "k32_vista.h"
+
+BOOL
+WINAPI
+DllMain(HANDLE hDll,
+ DWORD dwReason,
+ LPVOID lpReserved)
+{
+ /* For now, there isn't much to do */
+ if (dwReason == DLL_PROCESS_ATTACH)
+ DisableThreadLibraryCalls(hDll);
+ return TRUE;
+}
Propchange: trunk/reactos/dll/win32/kernel32_vista/DllMain.c
------------------------------------------------------------------------------
charset = UTF-8
Propchange: trunk/reactos/dll/win32/kernel32_vista/DllMain.c
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: trunk/reactos/dll/win32/kernel32_vista/DllMain.c
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/G…
==============================================================================
--- trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c (added)
+++ trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c [iso-8859-1] Thu Sep 25
18:25:47 2014
@@ -0,0 +1,25 @@
+
+#include "k32_vista.h"
+
+/*
+ * @implemented
+ */
+ULONGLONG
+WINAPI
+GetTickCount64(VOID)
+{
+ ULARGE_INTEGER TickCount;
+
+ while (TRUE)
+ {
+ TickCount.HighPart = (ULONG)SharedUserData->TickCount.High1Time;
+ TickCount.LowPart = SharedUserData->TickCount.LowPart;
+
+ if (TickCount.HighPart == (ULONG)SharedUserData->TickCount.High2Time) break;
+
+ YieldProcessor();
+ }
+
+ return (UInt32x32To64(TickCount.LowPart, SharedUserData->TickCountMultiplier)
>> 24) +
+ (UInt32x32To64(TickCount.HighPart, SharedUserData->TickCountMultiplier)
<< 8);
+}
Propchange: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c
------------------------------------------------------------------------------
charset = UTF-8
Propchange: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/k…
==============================================================================
--- trunk/reactos/dll/win32/kernel32_vista/k32_vista.h (added)
+++ trunk/reactos/dll/win32/kernel32_vista/k32_vista.h [iso-8859-1] Thu Sep 25 18:25:47
2014
@@ -0,0 +1,11 @@
+
+#pragma once
+
+/* PSDK/NDK Headers */
+#define WIN32_NO_STATUS
+#include <windef.h>
+#include <winbase.h>
+
+#include <ndk/kefuncs.h>
+#include <ndk/psfuncs.h>
+
Propchange: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h
------------------------------------------------------------------------------
charset = UTF-8
Propchange: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h
------------------------------------------------------------------------------
svn:mime-type = text/plain
Added: trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/k…
==============================================================================
--- trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec (added)
+++ trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec [iso-8859-1] Thu Sep 25
18:25:47 2014
@@ -0,0 +1,2 @@
+
+@ stdcall -ret64 GetTickCount64(void)
Propchange: trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/reactos/dll/win32/msi/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msi/CMakeLists.t…
==============================================================================
--- trunk/reactos/dll/win32/msi/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/msi/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014
@@ -83,6 +83,7 @@
#fixme : should be in delayed imports
imagehlp
msvcrt
+ kernel32_vista
kernel32
ntdll)
Modified: trunk/reactos/dll/win32/pdh/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/pdh/CMakeLists.t…
==============================================================================
--- trunk/reactos/dll/win32/pdh/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/pdh/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014
@@ -14,5 +14,5 @@
add_library(pdh SHARED ${SOURCE})
set_module_type(pdh win32dll)
target_link_libraries(pdh wine)
-add_importlibs(pdh msvcrt kernel32 ntdll)
+add_importlibs(pdh msvcrt kernel32_vista kernel32 ntdll)
add_cd_file(TARGET pdh DESTINATION reactos/system32 FOR all)
Modified: trunk/reactos/dll/win32/snmpapi/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/snmpapi/CMakeLis…
==============================================================================
--- trunk/reactos/dll/win32/snmpapi/CMakeLists.txt [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/snmpapi/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014
@@ -14,5 +14,5 @@
add_library(snmpapi SHARED ${SOURCE} snmpapi.rc)
set_module_type(snmpapi win32dll)
target_link_libraries(snmpapi wine)
-add_importlibs(snmpapi msvcrt kernel32 ntdll)
+add_importlibs(snmpapi msvcrt kernel32_vista kernel32 ntdll)
add_cd_file(TARGET snmpapi DESTINATION reactos/system32 FOR all)