summaryrefslogblamecommitdiffstats
path: root/private/nw/nw16/tsr/makefile
blob: 61ae19b1235e753378ca4a34684a9bedd0ebe316 (plain) (tree)































































































































































































                                                                                                    
!IF 0

Copyright (c) 1991 & 1993  Microsoft Corporation

Module Name:

    makefile

Abstract:

    makefile for Vdm NetWare Redir program

Author:

    Richard L Firth (rfirth) 13-Sep-1991

Revision History:

    13-Sep-1991 rfirth
        Created

!ENDIF



.SUFFIXES:
.SUFFIXES:  .asm .h

#
# nmake doesn't work properly if we try to stick the objects in obj, so put
# them in current dir for now. WHEN CHANGE OBJPATH TO BE OBJ, CHANGE clean TOO
#

#OBJPATH     = .
OBJPATH     = obj

ASM         = masm
!IFDEF NTVDM_BASED_BUILD
LINK        = link16
!ELSE
LINK        = link
!ENDIF

#
# set the country info
#

!if "$(LANGUAGE)" == "JPN"
COUNTRY=jpn
!elseif "$(LANGUAGE)" == "CHT"
COUNTRY=cht
!elseif "$(LANGUAGE)" == "CHS"
COUNTRY=chs
!elseif "$(LANGUAGE)" == "KOR"
COUNTRY=kor
!ENDIF

!IFNDEF COUNTRY
COUNTRY=usa
!ENDIF

#
# convert NTDEBUG into DEBUG flag. NTDEBUG can be not present or retail, either
# of which mean no debugging; or ntsd, cvp or sym, which means debugging support
# required
#

!IFDEF NTDEBUG
!IF "$(NTDEBUG)" == "retail"
DEBUGGING=0
!ELSE
DEBUGGING=1
!ENDIF
!ELSE
DEBUGGING=0
!ENDIF

#
# assembler and linker debugging options
#

!IF $(DEBUGGING)
ASMDEBUG    = /DDEBUG=1 /Zi
LINKDEBUG   = /CO
!ELSE
ASMDEBUG    = /DDEBUG=0
LINKDEBUG   =
!ENDIF
ASMINC      = /I$(_NTROOT)\public\sdk\inc /I$(_NTROOT)\private\mvdm\dos\v86\inc /I..\..\inc /I..\inc
ASMFLAGS    = /Mx
LINKFLAGS   = /MAP /CP:1

#
# any other non-debug related options (for assembler) go in USERDEFS
#

#USERDEFS    = /DCALL_DOS /DVERBOSE
#USERDEFS    = /DCALL_DOS



#
# Inference rules - asm to obj, h to inc
#

.asm{$(OBJPATH)\}.obj:
    $(ASM) $(ASMINC) $(ASMDEBUG) $(USERDEFS) $<,$@;

.asm.lst:
    $(ASM) $(ASMINC) $(ASMDEBUG) $(USERDEFS) /L $<;



#
# what it is we're building
#

TARGET      = $(OBJPATH)\nw16.exe
MAPFILE     = $(TARGET:.exe=.map)
DEFFILE     = ;

OBJS        = $(OBJPATH)\nw16.obj       \
              $(OBJPATH)\resident.obj

LIBS        =



#
# how to build it
#

all:    makedir $(TARGET)

$(TARGET):  $(OBJS)
    $(LINK) @<<
$(OBJS)
$(TARGET) $(LINKFLAGS) $(LINKDEBUG)
$(MAPFILE)
$(LIBS)
$(DEFFILE)
<<


#
# where to put it
#

    binplace $(TARGET)


#
# clean build - delete all objs
#

#clean:  makedir clean2
clean:  clean2

clean2:
    if exist $(OBJPATH)\*.obj del $(OBJPATH)\*.obj
    $(MAKE)

#
# makedir - ensure the subdirectory for the object files exists
#

makedir:
    @-if not exist $(OBJPATH) md $(OBJPATH)



#
# file dependencies
#

$(OBJPATH)\nw16.obj:            \
        nw16.asm                \
        debugmac.inc            \
        asmmacro.inc            \
        segorder.inc            \
        messages.inc            \
        ..\inc\nwdos.inc

$(OBJPATH)\resident.obj:        \
        resident.asm            \
        segorder.inc            \
        debugmac.inc            \
        asmmacro.inc            \
        ..\inc\nwdos.inc

messages.inc: ..\..\inc\$(COUNTRY)\messages.inc
    copy ..\..\inc\$(COUNTRY)\messages.inc .