# Master makefile for Thinking in C++, 2nd Ed. by Bruce Eckel
# at http://www.BruceEckel.com
# Compiles all the code in the book
# Copyright notice in Copyright.txt

help: 
	@echo To compile all programs from 
	@echo Thinking in C++, 2nd Ed., type
	@echo one of the following commands,
	@echo according to your compiler:
	@echo make Borland
	@echo make Microsoft
	@echo make all
	@echo make gcc

Borland:
	cd C02
	make -f Borland.makefile
	cd ..
	cd C03
	make -f Borland.makefile
	cd ..
	cd C04
	make -f Borland.makefile
	cd ..
	cd C05
	make -f Borland.makefile
	cd ..
	cd C06
	make -f Borland.makefile
	cd ..
	cd C07
	make -f Borland.makefile
	cd ..
	cd C08
	make -f Borland.makefile
	cd ..
	cd C09
	make -f Borland.makefile
	cd ..
	cd C10
	make -f Borland.makefile
	cd ..
	cd C11
	make -f Borland.makefile
	cd ..
	cd C12
	make -f Borland.makefile
	cd ..
	cd C13
	make -f Borland.makefile
	cd ..
	cd C14
	make -f Borland.makefile
	cd ..
	cd C15
	make -f Borland.makefile
	cd ..
	cd C16
	make -f Borland.makefile
	cd ..

Microsoft:
	cd C02
	make -f Microsoft.makefile
	cd ..
	cd C03
	make -f Microsoft.makefile
	cd ..
	cd C04
	make -f Microsoft.makefile
	cd ..
	cd C05
	make -f Microsoft.makefile
	cd ..
	cd C06
	make -f Microsoft.makefile
	cd ..
	cd C07
	make -f Microsoft.makefile
	cd ..
	cd C08
	make -f Microsoft.makefile
	cd ..
	cd C09
	make -f Microsoft.makefile
	cd ..
	cd C10
	make -f Microsoft.makefile
	cd ..
	cd C11
	make -f Microsoft.makefile
	cd ..
	cd C12
	make -f Microsoft.makefile
	cd ..
	cd C13
	make -f Microsoft.makefile
	cd ..
	cd C14
	make -f Microsoft.makefile
	cd ..
	cd C15
	make -f Microsoft.makefile
	cd ..
	cd C16
	make -f Microsoft.makefile
	cd ..

all:
	cd C02
	make -f all.makefile
	cd ..
	cd C03
	make -f all.makefile
	cd ..
	cd C04
	make -f all.makefile
	cd ..
	cd C05
	make -f all.makefile
	cd ..
	cd C06
	make -f all.makefile
	cd ..
	cd C07
	make -f all.makefile
	cd ..
	cd C08
	make -f all.makefile
	cd ..
	cd C09
	make -f all.makefile
	cd ..
	cd C10
	make -f all.makefile
	cd ..
	cd C11
	make -f all.makefile
	cd ..
	cd C12
	make -f all.makefile
	cd ..
	cd C13
	make -f all.makefile
	cd ..
	cd C14
	make -f all.makefile
	cd ..
	cd C15
	make -f all.makefile
	cd ..
	cd C16
	make -f all.makefile
	cd ..

gcc:
	cd C02; make -f gcc.makefile
	cd C03; make -f gcc.makefile
	cd C04; make -f gcc.makefile
	cd C05; make -f gcc.makefile
	cd C06; make -f gcc.makefile
	cd C07; make -f gcc.makefile
	cd C08; make -f gcc.makefile
	cd C09; make -f gcc.makefile
	cd C10; make -f gcc.makefile
	cd C11; make -f gcc.makefile
	cd C12; make -f gcc.makefile
	cd C13; make -f gcc.makefile
	cd C14; make -f gcc.makefile
	cd C15; make -f gcc.makefile
	cd C16; make -f gcc.makefile

