mirror of https://github.com/tongzx/nt5src
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.
216 lines
6.1 KiB
216 lines
6.1 KiB
# The CRT can't be built with link-time code generation because of
|
|
# LNK1237: "code gen introduced reference to non-native symbol" for intrinsics.
|
|
FORCENATIVEOBJECT = 1
|
|
|
|
TARGETPATH=obj
|
|
SOURCES =
|
|
|
|
LINKER_FLAGS=-ignore:4006
|
|
LIBRARIAN_FLAGS=-ignore:4006
|
|
|
|
!if 0
|
|
!if $(FREEBUILD)
|
|
D=
|
|
!else
|
|
D=d
|
|
!endif
|
|
!endif
|
|
|
|
RTDLLNAME=msvcrt$(D)
|
|
|
|
SYNCHRONIZE_DRAIN=1
|
|
|
|
!IF "$(CRTLIBTYPE)" == "DLL"
|
|
|
|
TARGETNAME=$(RTDLLNAME)
|
|
TARGETTYPE=DYNLINK
|
|
TARGETPATHLIB=obj
|
|
|
|
LIBRARIAN_FLAGS=$(LIBRARIAN_FLAGS) -ignore:4102
|
|
|
|
DLLBASE=0x10100000
|
|
DLLENTRY=_CRTDLL_INIT
|
|
UMTYPE=windows
|
|
|
|
USE_NOLIBS=1
|
|
|
|
C_DEFINES = "-DDLLNAME="$(RTDLLNAME).dll"" -DNT_BUILD
|
|
|
|
DLLDEF = $(O)\ntcrt.def
|
|
|
|
CONVERT_OBJS = ..\..\..\crtw32\convert\dll\$O\convert.lib
|
|
DIRECT_OBJS = ..\..\..\crtw32\direct\dll\$O\direct.lib
|
|
DLLSTUFF_OBJS = ..\..\..\crtw32\dllstuff\dll\$O\dllstuff.lib
|
|
DOS_OBJS = ..\..\..\crtw32\dos\dll\$O\dos.lib
|
|
EH_OBJS = ..\..\..\crtw32\eh\dll\$O\eh.lib
|
|
EXEC_OBJS = ..\..\..\crtw32\exec\dll\$O\exec.lib
|
|
HEAP_OBJS = ..\..\..\crtw32\heap\dll\$O\heap.lib
|
|
HELPER_OBJS = ..\..\..\crtw32\helper\dll\$O\helper.lib
|
|
LOWIO_OBJS = ..\..\..\crtw32\lowio\dll\$O\lowio.lib
|
|
MBSTRING_OBJS = ..\..\..\crtw32\mbstring\dll\$O\mbstring.lib
|
|
MISC_OBJS = ..\..\..\crtw32\misc\dll\$O\misc.lib
|
|
STARTUP_OBJS = ..\..\..\crtw32\startup\dll\$O\startup.lib
|
|
STDIO_OBJS = ..\..\..\crtw32\stdio\dll\$O\stdio.lib
|
|
STRING_OBJS = ..\..\..\crtw32\string\dll\$O\string.lib
|
|
TIME_OBJS = ..\..\..\crtw32\time\dll\$O\time.lib
|
|
|
|
LINKLIBS = \
|
|
$(CONVERT_OBJS) \
|
|
$(DIRECT_OBJS) \
|
|
$(DLLSTUFF_OBJS) \
|
|
$(DOS_OBJS) \
|
|
$(EH_OBJS) \
|
|
$(EXEC_OBJS) \
|
|
$(HEAP_OBJS) \
|
|
$(HELPER_OBJS) \
|
|
$(LOWIO_OBJS) \
|
|
$(MBSTRING_OBJS) \
|
|
$(MISC_OBJS) \
|
|
$(STARTUP_OBJS) \
|
|
$(STDIO_OBJS) \
|
|
$(STRING_OBJS) \
|
|
$(TIME_OBJS) \
|
|
..\..\..\fpw32\conv\dll\$O\conv.lib \
|
|
..\..\..\fpw32\tran\dll\$O\tran.lib
|
|
|
|
TARGETLIBS = \
|
|
$(SDK_LIB_PATH)\kernel32.lib \
|
|
$(SDK_LIB_PATH)\ntdll.lib
|
|
|
|
!ELSEIF "$(CRTLIBTYPE)" == "DLLLIB"
|
|
|
|
TARGETNAME=$(RTDLLNAME)
|
|
TARGETTYPE=LIBRARY
|
|
|
|
OBJLIBFILES = \
|
|
..\..\..\crtw32\dllstuff\dlllib\$O\dllstuff.lib \
|
|
..\..\..\crtw32\eh\dlllib\$O\eh.lib \
|
|
..\..\..\crtw32\helper\dlllib\$O\helper.lib \
|
|
..\..\..\crtw32\lowio\dlllib\$O\lowio.lib \
|
|
..\..\..\crtw32\misc\dlllib\$O\misc.lib \
|
|
..\..\..\crtw32\startup\dlllib\$O\startup.lib \
|
|
..\..\..\crtw32\stdio\dlllib\$O\stdio.lib \
|
|
!if $(IA64)
|
|
..\..\..\crtw32\string\dll\$(O)\_memmove.obj \
|
|
..\..\..\crtw32\string\dll\$(O)\_memset.obj \
|
|
..\..\..\crtw32\string\dll\$(O)\_memcpy.obj \
|
|
!endif
|
|
..\..\..\crtw32\heap\dlllib\$O\heap.lib \
|
|
..\dll\$O\$(RTDLLNAME).lib
|
|
|
|
!ELSEIF "$(CRTLIBTYPE)" == "MT"
|
|
|
|
TARGETNAME=libcmt$D
|
|
TARGETTYPE=LIBRARY
|
|
|
|
OBJLIBFILES = \
|
|
..\..\..\crtw32\convert\mt\$O\convert.lib \
|
|
..\..\..\crtw32\direct\mt\$O\direct.lib \
|
|
..\..\..\crtw32\dos\mt\$O\dos.lib \
|
|
..\..\..\crtw32\eh\mt\$O\eh.lib \
|
|
..\..\..\crtw32\exec\mt\$O\exec.lib \
|
|
..\..\..\crtw32\helper\mt\$O\helper.lib \
|
|
..\..\..\crtw32\lowio\mt\$O\lowio.lib \
|
|
..\..\..\crtw32\mbstring\mt\$O\mbstring.lib \
|
|
..\..\..\crtw32\misc\mt\$O\misc.lib \
|
|
..\..\..\crtw32\startup\mt\$O\startup.lib \
|
|
..\..\..\crtw32\stdio\mt\$O\stdio.lib \
|
|
..\..\..\crtw32\string\mt\$O\string.lib \
|
|
..\..\..\crtw32\time\mt\$O\time.lib \
|
|
..\..\..\crtw32\heap\mt\$O\heap.lib \
|
|
..\..\..\fpw32\conv\mt\$O\conv.lib \
|
|
..\..\..\fpw32\tran\mt\$O\tran.lib
|
|
|
|
!ELSEIF "$(CRTLIBTYPE)" == "ST"
|
|
|
|
TARGETNAME=libc$D
|
|
TARGETTYPE=LIBRARY
|
|
|
|
OBJLIBFILES = \
|
|
..\..\..\crtw32\convert\st\$O\convert.lib \
|
|
..\..\..\crtw32\direct\st\$O\direct.lib \
|
|
..\..\..\crtw32\dos\st\$O\dos.lib \
|
|
..\..\..\crtw32\eh\st\$O\eh.lib \
|
|
..\..\..\crtw32\exec\st\$O\exec.lib \
|
|
..\..\..\crtw32\helper\st\$O\helper.lib \
|
|
..\..\..\crtw32\lowio\st\$O\lowio.lib \
|
|
..\..\..\crtw32\mbstring\st\$O\mbstring.lib \
|
|
..\..\..\crtw32\misc\st\$O\misc.lib \
|
|
..\..\..\crtw32\startup\st\$O\startup.lib \
|
|
..\..\..\crtw32\stdio\st\$O\stdio.lib \
|
|
..\..\..\crtw32\string\st\$O\string.lib \
|
|
..\..\..\crtw32\time\st\$O\time.lib \
|
|
..\..\..\crtw32\heap\st\$O\heap.lib \
|
|
..\..\..\fpw32\conv\st\$O\conv.lib \
|
|
..\..\..\fpw32\tran\st\$O\tran.lib
|
|
|
|
!ELSEIF "$(CRTLIBTYPE)" == "STP"
|
|
|
|
TARGETNAME=libcp$D
|
|
TARGETTYPE=LIBRARY
|
|
|
|
OBJLIBFILES = \
|
|
..\..\..\crtw32\stdcpp\stp\$O\stdcpp.lib
|
|
|
|
!ELSEIF "$(CRTLIBTYPE)" == "NT"
|
|
|
|
TARGETNAME=libcntpr
|
|
TARGETTYPE=LIBRARY
|
|
|
|
OBJLIBFILES = \
|
|
..\..\..\crtw32\convert\nt\$O\convert.lib \
|
|
..\..\..\crtw32\hack\nt\$O\hack.lib \
|
|
..\..\..\crtw32\helper\nt\$O\helper.lib \
|
|
..\..\..\crtw32\misc\nt\$O\misc.lib \
|
|
..\..\..\crtw32\startup\nt\$O\startup.lib \
|
|
..\..\..\crtw32\stdio\nt\$O\stdio.lib \
|
|
..\..\..\crtw32\string\nt\$O\string.lib \
|
|
..\..\..\fpw32\tran\nt\$O\tran.lib
|
|
|
|
!ELSEIF "$(CRTLIBTYPE)" == "POSIX"
|
|
|
|
TARGETNAME=libcpsx
|
|
TARGETTYPE=LIBRARY
|
|
|
|
OBJLIBFILES = \
|
|
..\..\..\crtw32\convert\psx\$O\convert.lib \
|
|
..\..\..\crtw32\helper\psx\$O\helper.lib \
|
|
..\..\..\crtw32\mbstring\psx\$O\mbstring.lib \
|
|
..\..\..\crtw32\misc\psx\$O\misc.lib \
|
|
..\..\..\crtw32\startup\psx\$O\startup.lib \
|
|
..\..\..\crtw32\stdio\psx\$O\stdio.lib \
|
|
..\..\..\crtw32\string\psx\$O\string.lib \
|
|
..\..\..\crtw32\time\psx\$O\time.lib \
|
|
..\..\..\crtw32\heap\psx\$O\heap.lib \
|
|
..\..\..\fpw32\conv\psx\$O\conv.lib \
|
|
..\..\..\fpw32\tran\psx\$O\tran.lib
|
|
|
|
!ELSEIF "$(CRTLIBTYPE)" == "EXSUP"
|
|
|
|
TARGETNAME=exsup
|
|
TARGETTYPE=LIBRARY
|
|
|
|
OBJLIBFILES = \
|
|
..\..\..\crtw32\misc\nt\$(O)\exsup.obj \
|
|
..\..\..\crtw32\misc\nt\$(O)\exsup2.obj \
|
|
..\..\..\crtw32\misc\nt\$(O)\exsup3.obj \
|
|
..\..\..\crtw32\misc\nt\$(O)\sehsupp.obj \
|
|
..\..\..\crtw32\misc\nt\$(O)\setjmp.obj \
|
|
..\..\..\crtw32\misc\nt\$(O)\setjmp3.obj \
|
|
..\..\..\crtw32\misc\nt\$(O)\setjmpex.obj \
|
|
..\..\..\crtw32\misc\nt\$(O)\longjmp.obj
|
|
|
|
!ELSE
|
|
!ERROR Unsupported Library CRTLIBTYPE: $(CRTLIBTYPE)
|
|
!ENDIF
|
|
|
|
TARGETEXEFILES = $(TARGETPATH)\$(TARGET_DIRECTORY)\$(TARGETNAME).$(TARGETEXT)
|
|
|
|
!if "$(CRTLIBTYPE)" != "DLL"
|
|
PASS1_PUBLISH= \
|
|
!if $(IA64) && "$(CRTLIBTYPE)" == "NT"
|
|
{$(PROJECT_ROOT)\crts\libw32\lib\nt\ia64\libcntpr.lib=$(SDK_LIB_PATH)\libcntpr.lib}
|
|
!else
|
|
{$(TARGETPATH)\$(TARGET_DIRECTORY)\$(TARGETNAME).lib=$(SDK_LIB_PATH)\$(TARGETNAME).lib}
|
|
!endif
|
|
!endif
|