Changeset 57865 in vbox
- Timestamp:
- Sep 23, 2015 1:42:40 AM (10 years ago)
- svn:sync-xref-src-repo-rev:
- 102828
- Location:
- trunk
- Files:
-
- 11 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Config.kmk
r57649 r57865 742 742 VBOX_WITH_NATIVE_DTRACE = 1 743 743 endif 744 # Makes it possible to run some of the testcases and tools on older 745 # windows versions (only define when buildling win.x86). 746 #VBOX_WITH_MORE_NT4_COMPAT_BINARIES = 1 744 747 ## @} 745 748 … … 3994 3997 $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.amd64)_LIB)/oldnames.lib 3995 3998 TEMPLATE_VBOXR3EXE_POST_CMDS = $(VBOX_SIGN_IMAGE_CMDS) 3999 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" 4000 TEMPLATE_VBOXR3EXE_POST_CMDS.win.x86 = $(if $(eq $(tool_do),LINK_LIBRARY),,$(VBOX_PE_SET_VERSION) $(out)$$(NLTAB)$(TEMPLATE_VBOXR3EXE_POST_CMDS)) 4001 TEMPLATE_VBOXR3EXE_LNK_DEPS.win.x86 = $(if $(eq $(tool_do),LINK_LIBRARY),,$(VBOX_PE_SET_VERSION)) 4002 TEMPLATE_VBOXR3EXE_LDFLAGS.win.x86 = \ 4003 -Include:_vcc100_kernel32_fakes_cpp \ 4004 -Include:_vcc100_kernel32_fakes_asm 4005 TEMPLATE_VBOXR3EXE_LIBS.win.x86 = \ 4006 $(PATH_STAGE_LIB)/RuntimeR3VccTricks$(VBOX_SUFF_LIB) 4007 TEMPLATE_VBOXR3EXE_LIBS.x86 = \ 4008 $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.x86)_LIB)/oldnames.lib \ 4009 $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \ 4010 $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib 4011 endif 3996 4012 3997 4013 else # the gcc guys … … 4396 4412 endif 4397 4413 TEMPLATE_VBoxR3Tool_LIBS = $(LIB_RUNTIME) $(TEMPLATE_VBOXR3EXE_LIBS) 4414 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" 4415 TEMPLATE_VBoxR3Tool_LIBS.x86 = \ 4416 $(PATH_STAGE_LIB)/RuntimeR3VccTricks$(VBOX_SUFF_LIB) \ 4417 $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.x86)_LIB)/oldnames.lib 4418 endif 4398 4419 4399 4420 # … … 4464 4485 TEMPLATE_VBOXR3TSTEXE_LDFLAGS = $(filter-out -IntegrityCheck, $(TEMPLATE_VBOXR3EXE_LDFLAGS)) 4465 4486 endif 4487 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" 4488 TEMPLATE_VBOXR3TSTEXE_POST_CMDS.win.x86 = $(if $(eq $(tool_do),LINK_LIBRARY),,$(VBOX_PE_SET_VERSION) $(out)) 4489 TEMPLATE_VBOXR3TSTEXE_LIBS.x86 = \ 4490 $(PATH_STAGE_LIB)/RuntimeR3VccTricks$(VBOX_SUFF_LIB) \ 4491 $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.x86)_LIB)/oldnames.lib 4492 endif 4466 4493 4467 4494 # … … 4552 4579 HC_ARCH_BITS=32 ARCH_BITS=32 4553 4580 4581 4582 4583 # 4584 # Template for building libraries that are linked into VBoxRT.dll 4585 # and it's variations, pedantic variation. 4586 # 4587 TEMPLATE_VBoxR3RuntimeDll = For libraries that are linked into VBoxRT. 4588 TEMPLATE_VBoxR3RuntimeDll_EXTENDS = VBoxR3Dll 4589 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" 4590 TEMPLATE_VBoxR3RuntimeDll_CFLAGS = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBoxR3Dll_CFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) 4591 TEMPLATE_VBoxR3RuntimeDll_CXXFLAGS = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBoxR3Dll_CXXFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) 4592 TEMPLATE_VBoxR3RuntimeDll_LIBS.x86 = $(filter-out $(PATH_TOOL_$(TEMPLATE_VBOXR3EXE_TOOL.win.x86)_LIB)/%, $(TEMPLATE_VBoxR3Dll_LIBS.x86)) \ 4593 $(PATH_TOOL_$(TEMPLATE_VBoxR3RuntimeDll_TOOL.win.x86)_LIB)/oldnames.lib \ 4594 $(PATH_TOOL_$(TEMPLATE_VBoxR3RuntimeDll_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \ 4595 $(PATH_TOOL_$(TEMPLATE_VBoxR3RuntimeDll_TOOL.win.x86)_LIB)/libcpmt$(VBOX_VCC_CRT_TYPE).lib 4596 endif 4597 4598 # 4599 # Template for building libraries that are linked into VBoxRT.dll 4600 # and it's variations, non-pedantic variation. 4601 # 4602 TEMPLATE_VBoxR3RuntimeDllNonPedantic = For libraries that are linked into VBoxRT, but must be excluded from -pedantic warnings. 4603 TEMPLATE_VBoxR3RuntimeDllNonPedantic_EXTENDS = VBoxR3DllNonPedantic 4604 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && $(KBUILD_TARGET_ARCH) == "x86" 4605 TEMPLATE_VBoxR3RuntimeDllNonPedantic_CFLAGS = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBoxR3DllNonPedantic_CFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) 4606 TEMPLATE_VBoxR3RuntimeDllNonPedantic_CXXFLAGS = $(filter-out -MD$(VBOX_VCC_CRT_TYPE), $(TEMPLATE_VBoxR3DllNonPedantic_CXXFLAGS)) -MT$(VBOX_VCC_CRT_TYPE) 4607 endif 4554 4608 4555 4609 -
trunk/src/VBox/Runtime/Makefile.kmk
r57813 r57865 1336 1336 VBoxRT_SDKS += VBOX_OPENSSL 1337 1337 VBoxRT_SDKS.win = $(VBOX_WINPSDK) $(VBOX_WINDDK) VBOX_NTDLL 1338 if1of ($(KBUILD_TARGET)$(VBOX_WITH_HARDENING), darwin win$(VBOX_WITH_HARDENING)) 1338 if1of ($(KBUILD_TARGET), win) 1339 VBoxRT_INST = $(INST_DLL) $(INST_TESTCASE) $(VBOX_INST_TOOLS) 1340 else if1of ($(KBUILD_TARGET)$(VBOX_WITH_HARDENING), darwin win$(VBOX_WITH_HARDENING)) 1339 1341 VBoxRT_INST = $(INST_DLL) $(INST_TESTCASE) 1340 1342 endif … … 1452 1454 $$(VBoxRT_0_OUTDIR)/VBoxRT.def: \ 1453 1455 $(PATH_SUB_CURRENT)/r3/win/VBoxRT-$$(if-expr $$(KBUILD_TARGET_ARCH) == amd64,win64,win32).def \ 1454 $(PATH_SUB_CURRENT)/r3/win/$(if $(VBOX_OSE),VBoxRT-openssl-ose.def,VBoxRT-openssl.def) 1456 $(PATH_SUB_CURRENT)/r3/win/$(if $(VBOX_OSE),VBoxRT-openssl-ose.def,VBoxRT-openssl.def) \ 1457 $(if-expr "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" && defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES)\ 1458 ,$(PATH_SUB_CURRENT)/r3/win/VBoxRT-msvcr100-win32.def ,) #$(PATH_SUB_CURRENT)/r3/win/VBoxRT-msvcp100-win32.def 1455 1459 $(RM) -f -- $@ 1456 1460 $(REDIRECT) -wto $@ -- $(CAT_EXT) $^ … … 1459 1463 if1of (VBoxRT,$(DLLS)) 1460 1464 $(call VBOX_SET_VER_INFO_DLL,VBoxRT,VirtualBox Runtime) 1465 endif 1466 1467 1468 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" 1469 # 1470 # Hacks for running tests on NT 4. Really ugly! 1471 # 1472 # We put most of the CRT in VBoxRT because we cannot even load msvcr100.dll 1473 # or msvcp100.dll on NT4 because of kernel32.dll dependencies. More hacks 1474 # in RuntimeR3VccTricks. 1475 # 1476 TEMPLATE_VBoxR3RuntimeDllItself = xx 1477 TEMPLATE_VBoxR3RuntimeDllItself_EXTENDS = VBoxR3RuntimeDll 1478 TEMPLATE_VBoxR3RuntimeDllItself_LIBS.win.x86 = \ 1479 $(filter-out $(PATH_STAGE_LIB)/RuntimeR3VccTricks%, $(TEMPLATE_VBoxR3RuntimeDll_LIBS.win.x86)) 1480 TEMPLATE_VBoxR3RuntimeDllItself_SOURCES = \ 1481 r3/win/vcc100-kernel32-fakes.cpp \ 1482 r3/win/vcc100-kernel32-fakesA.asm \ 1483 r3/win/vcc100-msvcrt-fakes.cpp 1484 VBoxRT_TEMPLATE = VBoxR3RuntimeDllItself 1485 VBoxRT_TEMPLATE.win.x86 = VBoxR3RuntimeDllItself 1486 VBoxRT_DEFS.win.x86 = $(TEMPLATE_VBoxR3RuntimeDll_DEFS.win.x86) _CRTIMP_PURE="__declspec(dllexport)" 1487 VBoxRT_LDFLAGS.win.x86 = /IGNORE:4049 /IGNORE:4217 1488 VBoxRT_LIBS.win.x86 = \ 1489 $(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/oldnames.lib \ 1490 $(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/libcmt.lib \ 1491 $(PATH_TOOL_$(VBOX_VCC_TOOL_STEM)X86_LIB)/libcpmt.lib 1461 1492 endif 1462 1493 … … 2493 2524 r3/win/vcc100-kernel32-fakesA.asm 2494 2525 2526 if defined(VBOX_WITH_MORE_NT4_COMPAT_BINARIES) && "$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH)" == "win.x86" # Ugly hacks... :-) 2527 RuntimeR3VccTricks_SOURCES += $(RuntimeR3VccTricks_0_OUTDIR)/dynobjs.lib 2528 RuntimeR3VccTricks_CLEAN = $(RuntimeR3VccTricks_0_OUTDIR)/dynobjs.lib 2529 RuntimeR3VccTricks_VBOX_LIBCMT_NEEDED = \ 2530 2531 $$(RuntimeR3VccTricks_0_OUTDIR)/dynobjs.lib: \ 2532 $$(PATH_TOOL_$$(TEMPLATE_VBoxR3Dll_TOOL.win.x86)_LIB)/msvcrt$(VBOX_VCC_CRT_TYPE).lib \ 2533 $$(PATH_TOOL_$$(TEMPLATE_VBoxR3Dll_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \ 2534 $$(LIB_RUNTIME) \ 2535 $(MAKEFILE) | $$(dir $$@) 2536 $(RM) -f -- "$@" 2537 # $(REDIRECT) -C $(dir $@) -- $(KBUILD_DEVTOOLS)/common/openwatcom/v1.9-r2/binnt/wlib \ 2538 # $(PATH_TOOL_$(TEMPLATE_VBoxR3Dll_TOOL.win.x86)_LIB)/libcmt$(VBOX_VCC_CRT_TYPE).lib \ 2539 # $(foreach file, $(RuntimeR3VccTricks_VBOX_LIBCMT_NEEDED), *$(file)) 2540 $(KBUILD_DEVTOOLS)/common/openwatcom/v1.9-r2/binnt/wlib [email protected] $< \ 2541 -MSVCR100.dll \ 2542 $(addprefix $(RuntimeR3VccTricks_0_OUTDIR)/, $(RuntimeR3VccTricks_VBOX_LIBCMT_NEEDED)) \ 2543 -chandler4gs.obj 2544 $(KBUILD_DEVTOOLS)/common/openwatcom/v1.9-r2/binnt/wlib -o=$@ \ 2545 $(LIB_RUNTIME) \ 2546 [email protected] 2547 $(RM) -f -- [email protected] $(addprefix $(RuntimeR3VccTricks_0_OUTDIR)/, $(RuntimeR3VccTricks_VBOX_LIBCMT_NEEDED)) 2548 endif 2549 2495 2550 2496 2551 # -
trunk/src/VBox/Runtime/common/path/RTPathGlob.cpp
r57696 r57865 45 45 #if defined(RT_OS_WINDOWS) 46 46 # include <Windows.h> 47 # include "../../r3/win/internal-r3-win.h" 47 48 48 49 #elif defined(RT_OS_OS2) … … 500 501 /* Since this is used at the start of a pattern, we assume 501 502 we've got more than enough buffer space. */ 503 AssertReturn(g_pfnGetSystemWindowsDirectoryW, VERR_SYMBOL_NOT_FOUND); 502 504 PRTUTF16 pwszTmp = (PRTUTF16)pszBuf; 503 UINT cch = GetSystemWindowsDirectoryW(pwszTmp, (UINT)(cbBuf / sizeof(WCHAR)));505 UINT cch = g_pfnGetSystemWindowsDirectoryW(pwszTmp, (UINT)(cbBuf / sizeof(WCHAR))); 504 506 if (cch >= 2) 505 507 { … … 547 549 { 548 550 Assert(pszBuf); Assert(cbBuf); 551 AssertReturn(g_pfnGetSystemWindowsDirectoryW, VERR_SYMBOL_NOT_FOUND); 549 552 RTUTF16 wszSystemRoot[MAX_PATH]; 550 UINT cchSystemRoot = GetSystemWindowsDirectoryW(wszSystemRoot, MAX_PATH);553 UINT cchSystemRoot = g_pfnGetSystemWindowsDirectoryW(wszSystemRoot, MAX_PATH); 551 554 if (cchSystemRoot > 0) 552 555 return RTUtf16ToUtf8Ex(wszSystemRoot, cchSystemRoot, &pszBuf, cbBuf, pcchValue); -
trunk/src/VBox/Runtime/r3/win/init-win.cpp
r57358 r57865 57 57 /** The native ntdll.dll handle. */ 58 58 DECLHIDDEN(HMODULE) g_hModNtDll = NULL; 59 /** GetSystemWindowsDirectoryW or GetWindowsDirectoryW (NT4). */ 60 DECLHIDDEN(PFNGETWINSYSDIR) g_pfnGetSystemWindowsDirectoryW = NULL; 59 61 60 62 … … 293 295 rc = rtR3InitNativeObtrusiveWorker(); 294 296 297 /* 298 * Resolve some kernel32.dll APIs we may need but aren't necessarily 299 * present in older windows versions. 300 */ 301 g_pfnGetSystemWindowsDirectoryW = (PFNGETWINSYSDIR)GetProcAddress(g_hModKernel32, "GetSystemWindowsDirectoryW"); 302 if (g_pfnGetSystemWindowsDirectoryW) 303 g_pfnGetSystemWindowsDirectoryW = (PFNGETWINSYSDIR)GetProcAddress(g_hModKernel32, "GetWindowsDirectoryW"); 304 295 305 return rc; 296 306 } -
trunk/src/VBox/Runtime/r3/win/internal-r3-win.h
r55401 r57865 93 93 extern DECLHIDDEN(HMODULE) g_hModNtDll; 94 94 extern DECLHIDDEN(OSVERSIONINFOEXW) g_WinOsInfoEx; 95 typedef UINT (WINAPI *PFNGETWINSYSDIR)(LPWSTR,UINT); 96 extern DECLHIDDEN(PFNGETWINSYSDIR) g_pfnGetSystemWindowsDirectoryW; 95 97 #endif 96 98 -
trunk/src/VBox/Runtime/r3/win/vcc100-kernel32-fakes.cpp
r57358 r57865 30 30 *********************************************************************************************************************************/ 31 31 #include <iprt/cdefs.h> 32 #include <iprt/types.h> 32 33 33 34 #ifndef RT_ARCH_X86 … … 140 141 } 141 142 143 144 extern "C" int vcc100_kernel32_fakes_cpp(void) 145 { 146 return 42; 147 } 148 -
trunk/src/VBox/Runtime/r3/win/vcc100-kernel32-fakesA.asm
r42239 r57865 18 18 19 19 BEGINDATA 20 GLOBALNAME vcc100_kernel32_fakes_asm 20 21 21 22 MAKE_IMPORT_ENTRY DecodePointer, 4 -
trunk/src/libs/kStuff/Makefile.kmk
r56301 r57865 23 23 # 24 24 LIBRARIES += VBox-kStuff 25 VBox-kStuff_TEMPLATE = VB OXR325 VBox-kStuff_TEMPLATE = VBoxR3RuntimeDll 26 26 VBox-kStuff_DEFS = IN_RT_R3 27 27 VBox-kStuff_DEFS.strict = K_STRICT KLDRMODMACHO_STRICT KLDRMODMACHO_STRICT2 -
trunk/src/libs/liblzf-3.4/Makefile.kmk
r56301 r57865 25 25 LIBRARIES += VBox-liblzf-static 26 26 endif 27 VBox-liblzf_TEMPLATE = VB OXR327 VBox-liblzf_TEMPLATE = VBoxR3RuntimeDll 28 28 VBox-liblzf_BLD_TYPE = release # WARNING! Always optimizing this lib. 29 29 VBox-liblzf_DEFS = ULTRA_FAST=1 HLOG=12 -
trunk/src/libs/libxml2-2.6.31/Makefile.kmk
r56301 r57865 22 22 LIBRARIES += VBox-libxml2 23 23 endif 24 VBox-libxml2_TEMPLATE = VB OXR3NP24 VBox-libxml2_TEMPLATE = VBoxR3RuntimeDllNonPedantic 25 25 VBox-libxml2_SDKS = VBOX_ZLIB 26 26 VBox-libxml2_DEFS = _REENTRANT # the latter triggers thread support, see xmlversion-default.h and win32xmlversion.h. -
trunk/src/libs/zlib-1.2.6/Makefile.kmk
r56301 r57865 24 24 LIBRARIES += VBox-zlib-static 25 25 endif 26 VBox-zlib_TEMPLATE = VB OXR326 VBox-zlib_TEMPLATE = VBoxR3RuntimeDll 27 27 VBox-zlib_DEFS = verbose=-1 NO_VIZ=1 28 28 VBox-zlib_SOURCES = \
Note:
See TracChangeset
for help on using the changeset viewer.