nt.mak.console
author Jan Vrany <jan.vrany@labware.com>
Thu, 27 Oct 2022 14:53:59 +0100
branchjv
changeset 4735 3b11fb3ede98
parent 181 0bb83fada29f
permissions -rw-r--r--
Allow single underscore as method / block argument and temporaries This commit is a follow up for 38b221e.

# TARGTYPE "Win32 (x86) Console Application" 0x0103

!IF "$(CFG)" == ""
CFG=Win32 Debug
!MESSAGE No configuration specified.  Defaulting to Win32 Debug.
!ENDIF 

!IF "$(CFG)" != "Win32 Release" && "$(CFG)" != "Win32 Debug"
!MESSAGE Invalid configuration "$(CFG)" specified.
!MESSAGE You can specify a configuration when running NMAKE on this makefile
!MESSAGE by defining the macro CFG on the command line.  For example:
!MESSAGE 
!MESSAGE NMAKE /f "nt.mak" CFG="Win32 Debug"
!MESSAGE 
!MESSAGE Possible choices for configuration are:
!MESSAGE 
!MESSAGE "Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE "Win32 Debug" (based on "Win32 (x86) Console Application")
!MESSAGE 
!ERROR An invalid configuration is specified.
!ENDIF 

################################################################################
# Begin Project
# PROP Target_Last_Scanned "Win32 Debug"
CPP=cl.exe
RSC=rc.exe

LIBDIR=..\lib
BINDIR=..\bin

ALL : $(LIBDIR)\libcomp.lib $(BINDIR)\libcomp.dll

$(LIBDIR) : 
	if not exist $(LIBDIR)/nul mkdir $(LIBDIR)


!IF  "$(CFG)" == "Win32 Debug"

# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "WinDebug"
# PROP BASE Intermediate_Dir "WinDebug"
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "WinDebug"
# PROP Intermediate_Dir "WinDebug"
OUTDIR=.\WinDebug
INTDIR=.\WinDebug

$(OUTDIR) : 
    if not exist $(OUTDIR)/nul mkdir $(OUTDIR)

DEFS=/D"DEBUG" /D"WIN32" /D"_CONSOLE"
O=obj

# ADD BASE CPP /nologo /W3 /GX /Zi /YX /Od /D "WIN32" /D "DEBUG" /D "_CONSOLE" /FR /c
# ADD CPP /nologo /W3 /GX /Zi /YX /Ob1 /I "..\include" /D "DEBUG" /D "WIN32" /D "_CONSOLE" /FR /c
# SUBTRACT CPP /WX
CPP_PROJ=/nologo /W3 /GX /Zi /YX /Ob1 /I "..\include" $(DEFS) /FR$(INTDIR)/\
 /Fp$(OUTDIR)/"libcompnt.pch" /Fo$(INTDIR)/ /Fd$(OUTDIR)/"libcompnt.pdb" /c 
CPP_OBJS=.\WinDebug/
# ADD BASE RSC /l 0x409 /d "DEBUG"
# ADD RSC /l 0x409 /d "DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo

.\WinDebug\stcnt.bsc : $(OUTDIR)  $(BSC32_SBRS)
    $(BSC32) @<<
  $(BSC32_FLAGS) $(BSC32_SBRS)
<<

LIBRUN=..\lib\librun.lib

LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib /NOLOGO /SUBSYSTEM:console /DEBUG /MACHINE:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib wsock32.lib /NOLOGO /SUBSYSTEM:console /DEBUG /MACHINE:I386

LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib \
 wsock32.lib \
 $(LIBRUN) \
 /NOLOGO /SUBSYSTEM:console /INCREMENTAL:yes\
 /PDB:$(OUTDIR)/"libcompnt.pdb" /DEBUG /MACHINE:I386 /DLL \
 /OUT:"WinDebug\libcomp.dll" /DEF:nt.def 
DEF_FILE=nt.def
LINK32_OBJS= \
              Scanner.$(O)                             \
                Parser.$(O)                            \
                  BCompiler.$(O)                       \
                  Explainer.$(O)                       \
              Variable.$(O)                            \
              ParseNode.$(O)                           \
                PrimaryNd.$(O)                         \
                  VarNode.$(O)                         \
                  SelfNode.$(O)                        \
                    SuperNode.$(O)                     \
                  ConstNode.$(O)                       \
                StatNode.$(O)                          \
                  RetNode.$(O)                         \
                  PrimNd.$(O)                          \
                AssignNd.$(O)                          \
                BlockNode.$(O)                         \
                MessageNd.$(O)                         \
                  UnaryNd.$(O)                         \
                  BinaryNd.$(O)                        \
                  CascadeNd.$(O)                       \
              UndefVar.$(O)                            \
              LazyMethod.$(O)                          \
              SrcFLoader.$(O)                          \
              ImmArray.$(O)                            \
              ObjFHandle.$(O)                          \
              ObjFLoader.$(O)                          \
	libcompInit.obj

$(BINDIR)\libcomp.dll: $(OUTDIR)\libcomp.dll
	-copy $(OUTDIR)\libcomp.dll $(BINDIR)\*.*

$(LIBDIR)\libcomp.lib: $(OUTDIR)\libcomp.lib
	-copy $(OUTDIR)\libcomp.lib $(LIBDIR)\*.*

.\WinDebug\libcomp.lib : $(OUTDIR)  $(DEF_FILE) $(LINK32_OBJS)
    -$(LINK32) @<<
  $(LINK32_FLAGS) $(LINK32_OBJS)
<<

.\WinDebug\libcomp.dll : $(OUTDIR)  $(DEF_FILE) $(LINK32_OBJS) $(LIBRUN)
    $(LINK32) @<<
  $(LINK32_FLAGS) $(LINK32_OBJS)
<<

!ENDIF 

.c{$(CPP_OBJS)}.obj:
   $(CPP) $(CPP_PROJ) $<  

.cpp{$(CPP_OBJS)}.obj:
   $(CPP) $(CPP_PROJ) $<  

.cxx{$(CPP_OBJS)}.obj:
   $(CPP) $(CPP_PROJ) $<  

############################################################################
# Begin Group "src"

STC=..\bin\stc
INCL=-I"..\include"
STCFLAGS=-H..\include
# FFLAGS=-Fo.\WinDebug

.SUFFIXES: .st .obj

.st.obj:
    $(STC) $(INCL) $(FFLAGS) $(STCFLAGS) $(DEFS) -c $<

.c.obj:
    $(CC) $(INCL) $(FFLAGS) $(DEFS) -c $<

# End Source File
############################################################################

# End Group
# End Project
############################################################################