217 lines
6.1 KiB
Plaintext
217 lines
6.1 KiB
Plaintext
|
# 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
|