# From "Thinking in C++, 2nd Edition, Volume 2" 
# by Bruce Eckel & Chuck Allison
# Available at http://www.BruceEckel.com
# (c)2004 MindView Inc. Copyright notice in Copyright.txt
# Automatically-generated MAKEFILE 
# For examples in directory .\C01
# Invoke with: make compiler-name
# or: make clean

ifneq ($(MAKECMDGOALS),clean)
include ../$(MAKECMDGOALS).mac
endif

.SUFFIXES : .cpp .$(OBJEXT) .exe


Borland:  \
	Nonlocal.exe \
	MyError.exe \
	Nonlocal2.exe \
	Autoexcp.exe \
	Basexcpt.exe \
	Terminator.exe \
	Cleanup.exe \
	Rawp.exe \
	Wrapped.exe \
	Auto_ptr.exe \
	StdExcept.exe \
	Unexpected.exe \
	SafeAssign.exe \
	HasDestructor.$(OBJEXT)

Microsoft:  \
	Nonlocal.exe \
	MyError.exe \
	Nonlocal2.exe \
	Autoexcp.exe \
	Basexcpt.exe \
	Terminator.exe \
	Cleanup.exe \
	Rawp.exe \
	Wrapped.exe \
	Auto_ptr.exe \
	InitExcept.exe \
	FunctionTryBlock.exe \
	StdExcept.exe \
	BadException.exe \
	SafeAssign.exe \
	HasDestructor.$(OBJEXT)

g++:  \
	Nonlocal.exe \
	MyError.exe \
	Nonlocal2.exe \
	Autoexcp.exe \
	Basexcpt.exe \
	Terminator.exe \
	Cleanup.exe \
	Rawp.exe \
	Wrapped.exe \
	Auto_ptr.exe \
	InitExcept.exe \
	FunctionTryBlock.exe \
	StdExcept.exe \
	Unexpected.exe \
	BadException.exe \
	SafeAssign.exe \
	HasDestructor.$(OBJEXT)

edg:  \
	Nonlocal.exe \
	MyError.exe \
	Nonlocal2.exe \
	Autoexcp.exe \
	Basexcpt.exe \
	Terminator.exe \
	Cleanup.exe \
	Rawp.exe \
	Wrapped.exe \
	Auto_ptr.exe \
	InitExcept.exe \
	FunctionTryBlock.exe \
	StdExcept.exe \
	Unexpected.exe \
	BadException.exe \
	SafeAssign.exe \
	HasDestructor.$(OBJEXT)

Metrowerks:  \
	Nonlocal.exe \
	MyError.exe \
	Nonlocal2.exe \
	Autoexcp.exe \
	Basexcpt.exe \
	Terminator.exe \
	Cleanup.exe \
	Rawp.exe \
	Wrapped.exe \
	Auto_ptr.exe \
	InitExcept.exe \
	FunctionTryBlock.exe \
	StdExcept.exe \
	Unexpected.exe \
	BadException.exe \
	SafeAssign.exe \
	HasDestructor.$(OBJEXT)

DigitalMars:  \
	Nonlocal.exe \
	MyError.exe \
	Nonlocal2.exe \
	Autoexcp.exe \
	Basexcpt.exe \
	Terminator.exe \
	Cleanup.exe \
	Rawp.exe \
	Wrapped.exe \
	Auto_ptr.exe \
	InitExcept.exe \
	FunctionTryBlock.exe \
	StdExcept.exe \
	Unexpected.exe \
	BadException.exe \
	SafeAssign.exe \
	HasDestructor.$(OBJEXT)

CodeWizard:
	CodeWizard *.cpp

clean:
ifeq ($(notdir $(SHELL)),COMMAND.COM)
	del *.o
	del *.obj
	del *.exe
	del *.tds
	del *.map
else
	rm -f *.o *.obj *.exe *.tds *.map
endif


Nonlocal.exe: Nonlocal.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

MyError.exe: MyError.cpp


Nonlocal2.exe: Nonlocal2.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Autoexcp.exe: Autoexcp.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Basexcpt.exe: Basexcpt.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Terminator.exe: Terminator.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Cleanup.exe: Cleanup.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Rawp.exe: Rawp.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Wrapped.exe: Wrapped.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Auto_ptr.exe: Auto_ptr.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

InitExcept.exe: InitExcept.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

FunctionTryBlock.exe: FunctionTryBlock.cpp


StdExcept.exe: StdExcept.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Unexpected.exe: Unexpected.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

BadException.exe: BadException.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

SafeAssign.exe: SafeAssign.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

HasDestructor.$(OBJEXT): HasDestructor.cpp