!IF 0

Copyright (c) 1989  Microsoft Corporation

Module Name:

    sources.

Abstract:

    This file specifies the target component being built and the list of
    sources files needed to build that component.  Also specifies optional
    compiler switches and libraries that are unique for the component being
    built.


Author:

    Steve Wood (stevewo) 12-Apr-1990

NOTE:   Commented description of this file is in \nt\bak\bin\sources.tpl

!ENDIF

MAJORCOMP=utils
MINORCOMP=ulib

TARGETNAME=ulib
TARGETPATH=obj
TARGETTYPE=DYNLINK
TARGETLIBS=$(BASEDIR)\public\sdk\lib\*\kernel32.lib    \
           $(BASEDIR)\public\sdk\lib\*\user32.lib      \
           $(BASEDIR)\public\sdk\lib\*\advapi32.lib
DLLENTRY=InitializeUlib

USE_CRTDLL=1
BLDCRT=1

MSC_WARNING_LEVEL=/W3 /WX

SOURCES=rtmsg.rc        \
        arg.cxx         \
        array.cxx       \
        arrayit.cxx     \
        basesys.cxx     \
        bitvect.cxx     \
        bytestrm.cxx    \
        bufstrm.cxx     \
        clasdesc.cxx    \
        cmem.cxx        \
        comm.cxx        \
        contain.cxx     \
        dir.cxx         \
        file.cxx        \
        filestrm.cxx    \
        filter.cxx      \
        fsnode.cxx      \
        hmem.cxx        \
        iterator.cxx    \
        keyboard.cxx    \
        list.cxx        \
        listit.cxx      \
        machine.cxx     \
        mbstr.cxx       \
        mem.cxx         \
        membmgr.cxx     \
        message.cxx     \
        newdel.cxx      \
        object.cxx      \
        path.cxx        \
        pipe.cxx        \
        pipestrm.cxx    \
        program.cxx     \
        prtstrm.cxx     \
        screen.cxx      \
        seqcnt.cxx      \
        smsg.cxx        \
        sortcnt.cxx     \
        sortlist.cxx    \
        sortlit.cxx     \
        stream.cxx      \
        stringar.cxx    \
        system.cxx      \
        timeinfo.cxx    \
        ulib.cxx        \
        wstring.cxx

i386_SOURCES=i386\dosttr.c

INCLUDES=..\inc

PRECOMPILED_INCLUDE= pch.cxx

#
#       Debug support.
#
#       We have 4 levels:
#
#       1.- FREE:               Non-debug
#       2.- NTDBG:              Debug, no memleak
#       3.- MEMLEAK:    2 + memleak
#       4.- STACK_TRACE 3 + stack trace
#
#
#       By default, whenever the NTDEBUG symbol is defined, you get level
#       3. In order to get level 2 you have to define the symbol NOMEMLEAK.
#       In order to get level 4, you have to the file the symbol STACK_TRACE
#
#       In summary here is how to get each one:
#
#       1.- Undefine NTDEBUG
#       2.- define NTDEBUG, define NOMEMLEAK
#       3.- define NTDEBUG, undefine NOMEMLEAK
#       4.- define NTDEBUG, undefine NOMEMLEAK, define STACK_TRACE
#
NO_NOTHIN=-DNO_COMMDLGH -DNO_LZEXPANDH -DNO_MMSYSTEMH -DNO_NB30H
!IF "$(NTDEBUG)" == "cvp" || "$(NTDEBUG)" == "ntsd"
!IFDEF NOMEMLEAK
C_DEFINES=-DCONDITION_HANDLING=1 -DDBG=1 -DUNICODE=1 $(NO_NOTHIN)
!ELSE  # NOMEMLEAK
!IFDEF STACK_TRACE
C_DEFINES=-DCONDITION_HANDLING=1 -DDBG=1 -DMEMLEAK -DSTACK_TRACE -DUNICODE=1 $(NO_NOTHIN)
!ELSE   # STACK_TRACE
C_DEFINES=-DCONDITION_HANDLING=1 -DDBG=1 -DMEMLEAK -DUNICODE=1 $(NO_NOTHIN)
!ENDIF  # STACK_TRACE
!ENDIF # NOMEMLEAK
!ELSE  # NTDEBUG
C_DEFINES=-DCONDITION_HANDLING=1 -DDBG=0 -DUNICODE=1 $(NO_NOTHIN)
!ENDIF # NTDEBUG

CXXFLAGS=+d
UMLIBS=obj\*\ulib.lib

UMTYPE=console

UMTEST=

NTTARGETFILE0=..\inc\rtmsg.h
DLLDEF=
