# Makefile for CALLLIST
# MSC 8.0 / VC 1.0

PROJ = CALLLIST
CC = cl
OBJS_EXT =
LIBS_EXT =

# --- COMPILER ---

# /AS  memory model small
# /Fc  combined listing file
# /FPa alternate math	(best but not with intrinsic functions!)
# /FPc emulator calls
# /G3  Prozessor
# /Gs  stack checking off
# /Gf  string pooling (not recommended)
# /Gr  register calling
# /W3  Warning level
# /Zp2 structure alignment


CNORMFLAGS = /AS /Fc /Gs /G3 /Gr /W3 /FPc /Zp1

# /Zi  information for debugging/profiling
CDEBUGFLAGS =
#/Zi

#
# /Oa  no aliasing
# /Oe  global register allocation
# /Og  global common subexpressions
#	/Oc local
# /Oi  generate intrinsic functions
# 	/Ob2 at compilers will
# 	/OV9 with large functions
# /Ol  loop optimization (aliasing)
# /Ot  prefer speed
# /Oz  aggressive loop optimization
#
# /Od disables optimizations
# /Oo- no peephole

#COPTIMIZATIONS = /Od
COPTIMIZATIONS = /Oa /Oe /Og /Oi /Ob2 /OV9 /Ol /Ot /Oz

CFLAGS = $(CNORMFLAGS) $(COPTIMIZATIONS) $(CDEBUGFLAGS)

# --- LINKER ---

LDEBUG =
#/CODEVIEW

LFLAGS = /NOI /STACK:5120 /ONERROR:NOEXE $(LDEBUG)

LIBS =
#oldnames slibce
MAPFILE =
DEFFILE =

# --- DEPENDENCIES ---

MAIN_DEP = 

all:    $(PROJ).EXE

MAIN.OBJ:       MAIN.C $(MAIN_DEP)
	$(CC) $(CFLAGS) /c MAIN.C

$(PROJ).EXE::   MAIN.OBJ $(OBJS_EXT) $(LIBS)
	echo >NUL @<<$(PROJ).CRF
MAIN.OBJ +
$(OBJS_EXT)
$(PROJ).EXE
$(MAPFILE)
\msvc\lib\+
$(LIBS)
$(DEFFILE);
<<
	link $(LFLAGS) @$(PROJ).CRF
        copy $(PROJ).exe c:\powrbbs
