!INCLUDE $(NTMAKEENV)\makefile.plt WHNT32TABSRC=..\..\ntos\ke\services.tab WHNT32TAB=..\whnt32\$(O)\whnt32.tab NT32TAB=..\whnt32\$(O)\kesvc.tab # # bash the 64-bit-targetted C compiler so it preprocesses using the # 32-bit defines as we want 32-bit type information # !if $(IA64) WOW64_COMPILER_FLAGS=$(CXX_COMPILER_FLAGS:_WIN64=_WIN32) -DSORTPP_PASS -DGUID_DEFINED WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS:_M_IA64=_M_X86) WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS:_IA64_=_X86_) WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS:DIA64=DX86) WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS) /U_WIN64 /Di386=1 /DBUILD_WOW6432 WOW6432_PREPROCESSOR_FLAGS=$(C_PREPROCESSOR_FLAGS:_WIN64=_WIN32) WOW6432_PREPROCESSOR_FLAGS=$(WOW6432_PREPROCESSOR_FLAGS:_M_IA64=_M_X86) WOW6432_PREPROCESSOR_FLAGS=$(WOW6432_PREPROCESSOR_FLAGS:_IA64_=_X86_) WOW6432_PREPROCESSOR_FLAGS=$(WOW6432_PREPROCESSOR_FLAGS:DIA64=DX86) WOW6432_PREPROCESSOR_FLAGS=/U_WIN64 /Di386=1 /DBUILD_WOW6432 $(WOW6432_PREPROCESSOR_FLAGS) !elseif $(AMD64) WOW64_COMPILER_FLAGS=$(CXX_COMPILER_FLAGS:_WIN64=_WIN32) -DSORTPP_PASS -DGUID_DEFINED WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS:_M_AMD64=_M_X86) WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS:_AMD64_=_X86_) WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS:DAMD64=DX86) WOW64_COMPILER_FLAGS=$(WOW64_COMPILER_FLAGS) /U_WIN64 /Di386=1 /DBUILD_WOW6432 WOW6432_PREPROCESSOR_FLAGS=$(C_PREPROCESSOR_FLAGS:_WIN64=_WIN32) WOW6432_PREPROCESSOR_FLAGS=$(WOW6432_PREPROCESSOR_FLAGS:_M_AMD64=_M_X86) WOW6432_PREPROCESSOR_FLAGS=$(WOW6432_PREPROCESSOR_FLAGS:_AMD64_=_X86_) WOW6432_PREPROCESSOR_FLAGS=$(WOW6432_PREPROCESSOR_FLAGS:DAMD64=DX86) WOW6432_PREPROCESSOR_FLAGS=/U_WIN64 /Di386=1 /DBUILD_WOW6432 $(WOW6432_PREPROCESSOR_FLAGS) !else !error no target cpu. !endif !if "$(WOW64_DEBUG_THUNKGEN)" == "1" SORTPP_FLAGS=$(SORTPP_FLAGS) -l !else SORTPP_FLAGS=$(SORTPP_FLAGS) !endif PPMFILE=$(O)\winincs.ppm NT32HDR=$(O)\nt32.h CXX_COMPILER_NAME=$(CXX_COMPILER_NAME) $(WOW64_COMPILER_FLAGS) -DIN=__in_wow64 -DOUT=__out_wow64 $(WHNT32TAB): $(WHNT32TABSRC) @echo Creating $(WHNT32TAB) from $(WHNT32TABSRC) copy $(WHNT32TABSRC)+..\..\ntdll\wow6432\ntwow64.tab $(O)\whnt32.tmp $(C_PREPROCESSOR_NAME) $(WOW6432_PREPROCESSOR_FLAGS) $(O)\whnt32.tmp > $(WHNT32TAB) del $(O)\whnt32.tmp $(NT32TAB): $(WHNT32TABSRC) $(C_PREPROCESSOR_NAME) $(WOW6432_PREPROCESSOR_FLAGS) $(WHNT32TABSRC) > $(NT32TAB) $(O)\winincs.pp: winincs.cpp cgenhdr.h $(CXX_COMPILER_NAME) /C @<<$(O)\cl.rsp /E /FC winincs.cpp >$(O)\winincs2.pp $(WOW64_COMPILER_FLAGS: = ) <$(O)\winincs.pp $(WOW64_COMPILER_FLAGS: = ) <$(NT32HDR) thunks: $(WHNT32TAB) $(NT32HDR) $(PPMFILE) $(NT32TAB) cleanfiles: -del $(O)\winincs.pp -del $(O)\winincs2.pp -del $(WHNT32TAB) -del $(NT32TAB) -del $(PPMFILE) -del $(NT32HDR) clean: cleanfiles thunks