Windows NT 4.0 source code leak
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
!IF 0
Copyright (c) 1994-1996 Microsoft Corporation
Module Name:
mipsmk.inc
Abstract:
This module contains the MIPs specific build controls. It is included by makefile.def.
Revision History:
!ENDIF
# # Mips option control #
!undef USE_MAPSYM
UMBASE=$(UMBASE:*=mips) UMLIBS=$(UMLIBS:*=mips) NTRES=$(NTRES:*=mips) UMRES=$(UMRES:*=mips) UMOBJS=$(UMOBJS:*=mips) LINKLIBS=$(LINKLIBS:*=mips) GDI_DRIVER_LIBS=$(GDI_DRIVER_LIBS:*=mips) DLLBASE=$(DLLBASE:*=mips) DLLDEF=$(DLLDEF:*=mips) MACHINE_TARGETLIBS=$(MACHINE_TARGETLIBS:*=mips) TARGET=$(TARGET:*=mips) DYNLINK_LIB=$(DYNLINK_LIB:*=mips) TARGETEXEFILES=$(TARGETEXEFILES:*=mips) TARGETLIBFILES=$(TARGETLIBFILES:*=mips) TARGETOBJFILES=$(TARGETOBJFILES:*=mips) UMOBJFILES=$(UMOBJFILES:*=mips) UMEXEFILES=$(UMEXEFILES:*=mips) HEADERFILE=$(HEADERFILE:*=mips) HEADEROBJNAME=$(HEADEROBJNAME:*=mips) HEADEROBJ=$(HEADEROBJ:*=mips) PRECOMPILED=$(PRECOMPILED:*=mips) PRECOMPILED_CXX=$(PRECOMPILED_CXX:*=mips) PRECOMPILED_TARGET=$(PRECOMPILED_TARGET:*=mips) MFC_STATIC_LIB=$(MFC_STATIC_LIB:*=mips) CRT_LIB_PATH=$(CRT_LIB_PATH:*=mips) SDK_LIB_PATH=$(SDK_LIB_PATH:*=mips) ORDER=$(ORDER:*=mips)
!ifdef NTTARGETFILES NTTARGETFILES=$(NTTARGETFILES:*=mips) !endif !ifdef NTTARGETFILE0 NTTARGETFILE0=$(NTTARGETFILE0:*=mips) !endif !ifdef NTTARGETFILE1 NTTARGETFILE1=$(NTTARGETFILE1:*=mips) !endif
!IF "$(GPSIZE)" != "0"
!ifdef DEBUG_CRTS LIBC_LIB=$(SDK_LIB_PATH)\smalld.lib $(LIBC_LIB) !else LIBC_LIB=$(SDK_LIB_PATH)\small.lib $(LIBC_LIB) !endif
LINKGPSIZE=-gpsize:$(GPSIZE)
!ENDIF
LINKER_FLAGS = $(LINKER_FLAGS) -merge:.xdata=.rdata
MIPS_ENDIAN=MIPSEL
ENTRY_SUFFIX= GDI_ENTRY_SUFFIX=
!IFDEF MIPS_WARNING_LEVEL MSC_WARNING_LEVEL=$(MIPS_WARNING_LEVEL) !ENDIF
!ifdef MIPS_PERFFLAGS PERFFLAGS = $(MIPS_PERFFLAGS) !endif
DEFAULT_MSC_OPT = $(DEFAULT_MSC_OPT:/Oxs=/Ox)
# Set MSC_OPTIMIZATION. # Order of precedence: # Platform specific override # Environment variable # System Default
!if defined(MIPS_OPTIMIZATION) MSC_OPTIMIZATION=$(MIPS_OPTIMIZATION) !elseif !defined(MSC_OPTIMIZATION) MSC_OPTIMIZATION=$(DEFAULT_MSC_OPT) !endif
DBGFLAGS=$(DBGFLAGS) $(MSC_OPTIMIZATION)
!IFDEF MIPS_CPPFLAGS MSC_CPPFLAGS=$(MIPS_CPPFLAGS) !ENDIF
# # Now a bunch of MIPS stuff #
!ifndef USE_PDB_TO_COMPILE DBGFLAGS=$(DBGFLAGS:/Zi=-Z7) DBGFLAGS=$(DBGFLAGS:-Zi=-Z7) !else ! if "$(TARGETTYPE)" == "LIBRARY" DBGFLAGS=$(DBGFLAGS) /Fd$(TARGETPATH)\$(TARGET_DIRECTORY)\$(TARGETNAME).pdb ! else DBGFLAGS=$(DBGFLAGS) /Fd$(MAKEDIR)\$(_OBJ_DIR)\mips^\ ! endif !endif
!ifdef BROWSER_INFO DBGFLAGS=$(DBGFLAGS) /FR$(MAKEDIR)\$(_OBJ_DIR)\mips^\ !endif
!IFDEF NTBBT DBGFLAGS=$(DBGFLAGS) /Z7 LINKER_FLAGS=$(LINKER_FLAGS) -debug:full -debugtype:cv,fixup USE_PDB=1 !ENDIF
!IFNDEF MIPS_R3000 MIPS_CPU=-DR4000 -D_M_MRX000=4000 MIPS_TRAP_FILE=x4trap.obj !ELSE MIPS_CPU=-DR3000 -D_M_MRX000=3000 MIPS_TRAP_FILE=x3trap.obj !ENDIF
MIPS_ASM_DEFINES=$(MIPS_ASMCPP) ENV_DEFINES=$(LIBC_DEFINES) $(C_DEFINES) $(NET_C_DEFINES) $(MSC_CPPFLAGS) $(NTCPPFLAGS)
STD_DEFINES=-DENABLE_RESTRICTED -DMIPS=1 -D_MIPS_=1 -D$(MIPS_ENDIAN) -DNO_EXT_KEYS -DCONDITION_HANDLING=1 $(STD_DEFINES)
STDFLAGS=-c MS_MIPS=1
!if 0 # Enable when /GF and /cbstring are tested together ! ifdef NO_READONLY_STRINGS STRING_POOLING = /Gf ! else STRING_POOLING = /GF ! endif !else # STRING_POOLING = /Gf STRING_POOLING= !endif
!ifdef USE_NATIVE_EH EH_FLAGS=/GX /GR !else EH_FLAGS=/GX- /GR- !endif
!ifndef DOWNLEVEL_COMPILE DOWNLEVEL_COMPILE = 0 !endif !if $(DOWNLEVEL_COMPILE) MIPS3_INSTR = -QMmips2 MACHINE_TARGETLIBS=$(MACHINE_TARGETLIBS) $(SDK_LIB_PATH)\tlssup35.obj !else MIPS3_INSTR = -QMmips3 -d2QMGtlsa !endif
MSC_C_COMPILER_NAME=cl -nologo
CDEFINES=$(STD_DEFINES) $(MIPS_CPU) $(TARGET_DBG_DEFINES) $(ENV_DEFINES) CFLAGS=$(MIPS_FLAGS) $(NTMIPSFLAGS) $(STDFLAGS) $(DBGFLAGS) $(PERFFLAGS) $(USER_C_FLAGS) AFLAGS=-Gy $(MIPS_FLAGS) $(NTMIPSFLAGS) $(STDFLAGS) $(DBGFLAGS) $(PERFFLAGS) $(MIPS3_INSTR)
MIPS_CDEFINES=$(CDEFINES) MIPS_CFLAGS=$(CFLAGS) -Zel -Zp8 -Gy $(MSC_WARNING_LEVEL) -QMOb4000 $(MIPS3_INSTR) $(CBSTRING) $(EH_FLAGS) $(STRING_POOLING) -Gt$(GPSIZE) MIPS_CFLAGS=$(MIPS_CFLAGS:-Qmips=-QM)
C_PREPROCESSOR_NAME = $(MSC_C_COMPILER_NAME) C_COMPILER_NAME = $(MSC_C_COMPILER_NAME) CXX_COMPILER_NAME = $(MSC_C_COMPILER_NAME) MIPS_ASSEMBLER_NAME = $(MSC_C_COMPILER_NAME)
GLOBAL_C_FLAGS = -Imips\ -I. $(INCPATH0) $(CDEFINES) $(MIPS_CFLAGS) \ -DFPO=1 -D__stdcall= -D__cdecl= -D_LANGUAGE_C -DLANGUAGE_C $(MFC_FLAGS)
NP_COMPILER_FLAGS = $(GLOBAL_C_FLAGS) $(COMPILER_WARNINGS)
C_COMPILER_FLAGS = $(NP_COMPILER_FLAGS) $(PRECOMPILED) CXX_COMPILER_FLAGS = $(NP_COMPILER_FLAGS) $(PRECOMPILED_CXX) C_PREPROCESSOR_FLAGS = $(GLOBAL_C_FLAGS) -EP -Tc
C_PREPROCESSOR = $(C_PREPROCESSOR_NAME) $(C_PREPROCESSOR_FLAGS) C_COMPILER = $(C_COMPILER_NAME) $(C_COMPILER_FLAGS) CXX_COMPILER = $(CXX_COMPILER_NAME) $(CXX_COMPILER_FLAGS)
ECHO_MSG=ClMips $< " $(C_COMPILER) " ECHO_CXX_MSG=ClMips $< " $(CXX_COMPILER) "
ECHO_PRECOMPILED_MSG1=CpMips $(PRECOMPILED_INCLUDE) \ "$(C_COMPILER_NAME) $(PRECOMPILED_FLAG) $(PRECOMPILED_SOURCEFILE) \ $(C_COMPILER_FLAGS) /Yl$(TARGETNAME) /Yc$(?F) $(HEADERFILE) $(HEADEROBJ)"
ECHO_PRECOMPILED_MSG2=CpMips $(PRECOMPILED_INCLUDE) \ "$(C_COMPILER_NAME) $(PRECOMPILED_FLAG) \ $(C_COMPILER_FLAGS) /Yl$(TARGETNAME) /Yc$(?F) $(HEADERFILE) $(HEADEROBJ)"
MIPS_CRFILTER=echo SHOULDN'T NEED TO CRFILTER THIS!
!if $(FREEBUILD) !IFNDEF MIPS_ENABLE_DIVIDE_CHECK MIPS_CFLAGS=$(MIPS_CFLAGS) -d2aNoDivCheck !ENDIF !ENDIF
# # Use Mips MCL for assembler files. #
MIPS_ASSEMBLER_FLAGS = -nologo -Gt$(GPSIZE) -Ge -c $(MIPS_CPU_SWITCHES) \ -Imips\ -I. $(INCPATH0) $(CDEFINES) \ $(AFLAGS) -D_LANGUAGE_ASSEMBLY
MIPS_ASSEMBLER = $(MIPS_ASSEMBLER_NAME) $(MIPS_ASSEMBLER_FLAGS)
{..\mips\}.s{$(_OBJ_DIR)\mips\}.obj: @-erase $@ >nul 2>&1 @echo AsMips $< " $(MIPS_ASSEMBLER) " @$(MIPS_ASSEMBLER_NAME) @<< -Fo$(MAKEDIR)\$@ $< $(MIPS_ASSEMBLER_FLAGS: = ) <<NOKEEP
{mips\}.s{$(_OBJ_DIR)\mips\}.obj: @-erase $@ >nul 2>&1 @echo AsMips $< " $(MIPS_ASSEMBLER) $(MIPS_ASSEMBLER_FLAGS)" @$(MIPS_ASSEMBLER_NAME) @<< -Fo$(MAKEDIR)\$@ $< $(MIPS_ASSEMBLER_FLAGS: = ) <<NOKEEP
!IFDEF CAIRO_PRODUCT !IFDEF _CAIROMIPSTREE _NTTREE=$(_CAIROMIPSTREE) _NTTREE_NO_SPLIT=$(_CAIROMIPSTREE_NS) !ENDIF !ELSEIFDEF _NTMIPSTREE _NTTREE=$(_NTMIPSTREE) _NTTREE_NO_SPLIT=$(_NTMIPSTREE_NS) !ENDIF
!IFDEF _NTMIPSLIBS _NTLIBS=$(_NTMIPSLIBS) !ENDIF
COPYDST=$(MIPSCOPYDST) LIB_COPY=ntmipscp.cmd
NTTEST_LINK_OPTIONS= -base:0x10000 -entry:KiSystemStartup
|