bc.mak
author Claus Gittinger <cg@exept.de>
Thu, 21 Nov 1996 19:37:42 +0100
changeset 446 957ee2ac1a2b
parent 318 d74d78448dee
child 517 d5baa136244e
permissions -rw-r--r--
*** empty log message ***

# 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:windows /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:windows /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) \
 /NOPACK /NOLOGO /SUBSYSTEM:windows /INCREMENTAL:yes\
 /PDB:$(OUTDIR)/"libcompnt.pdb" /DEBUG /MACHINE:I386 /DLL \
 /OUT:"WinDebug\libcomp.dll" /DEF:nt.def 
DEF_FILE=nt.def
LINK32_OBJS= \
              Scanner.obj                              \
                Parser.obj                             \
                  BCompiler.obj                        \
                  Explainer.obj                        \
              Variable.obj                             \
              ParseNode.obj                            \
                PrimaryNd.obj                          \
                  VarNode.obj                          \
                  SelfNode.obj                         \
                    SuperNode.obj                      \
                  ConstNode.obj                        \
                StatNode.obj                           \
                  RetNode.obj                          \
                  PrimNd.obj                           \
                AssignNd.obj                           \
                BlockNode.obj                          \
                MessageNd.obj                          \
                  UnaryNd.obj                          \
                  BinaryNd.obj                         \
                  CascadeNd.obj                        \
              UndefVar.obj                             \
              LazyMethod.obj                           \
              SrcFLoader.obj                           \
              ImmArray.obj                             \
              ObjFHandle.obj                           \
              ObjFLoader.obj                           \
	ntLibInit.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
############################################################################