#################################
# Builds other example programs #
#################################
CC = $(CONF_CC)
CFLAGS = $(CONF_CFLAGS) -I../lib $(CONF_DEBUG)
LDFLAGS = $(CONF_LDFLAGS) $(CONF_DEBUG)

################
# Source files #
################
SRCS =	tvguid01.cc tvguid02.cc tvguid03.cc tvguid04.cc tvguid05.cc \
	tvguid06.cc tvguid07.cc tvguid08.cc tvguid09.cc tvguid10.cc \
	tvguid11.cc tvguid12.cc tvguid13.cc tvguid14.cc tvguid15.cc \
	tvguid16.cc

###################
# Other variables #
###################
RCS = $(SRCS)
DISTFILES = Makefile mkdepend $(RCS)

#######################
# Rules to make files #
#######################
.c.o:
	$(CC) $(CFLAGS) -c $<

.cc.o:
	$(CC) $(CFLAGS) -c $<

###########
# Targets #
###########
all: confcheck \
	tvguid01 tvguid02 tvguid03 tvguid04 tvguid05 \
	tvguid06 tvguid07 tvguid08 tvguid09 tvguid10 \
	tvguid11 tvguid12 tvguid13 tvguid14 tvguid15 \
	tvguid16

tvguid01: tvguid01.o
	$(CC) $(LDFLAGS) -o tvguid01 tvguid01.o $(CONF_LIBS)

tvguid02: tvguid02.o
	$(CC) $(LDFLAGS) -o tvguid02 tvguid02.o $(CONF_LIBS)

tvguid03: tvguid03.o
	$(CC) $(LDFLAGS) -o tvguid03 tvguid03.o $(CONF_LIBS)

tvguid04: tvguid04.o
	$(CC) $(LDFLAGS) -o tvguid04 tvguid04.o $(CONF_LIBS)

tvguid05: tvguid05.o
	$(CC) $(LDFLAGS) -o tvguid05 tvguid05.o $(CONF_LIBS)

tvguid06: tvguid06.o
	$(CC) $(LDFLAGS) -o tvguid06 tvguid06.o $(CONF_LIBS)

tvguid07: tvguid07.o
	$(CC) $(LDFLAGS) -o tvguid07 tvguid07.o $(CONF_LIBS)

tvguid08: tvguid08.o
	$(CC) $(LDFLAGS) -o tvguid08 tvguid08.o $(CONF_LIBS)

tvguid09: tvguid09.o
	$(CC) $(LDFLAGS) -o tvguid09 tvguid09.o $(CONF_LIBS)

tvguid10: tvguid10.o
	$(CC) $(LDFLAGS) -o tvguid10 tvguid10.o $(CONF_LIBS)

tvguid11: tvguid11.o
	$(CC) $(LDFLAGS) -o tvguid11 tvguid11.o $(CONF_LIBS)

tvguid12: tvguid12.o
	$(CC) $(LDFLAGS) -o tvguid12 tvguid12.o $(CONF_LIBS)

tvguid13: tvguid13.o
	$(CC) $(LDFLAGS) -o tvguid13 tvguid13.o $(CONF_LIBS)

tvguid14: tvguid14.o
	$(CC) $(LDFLAGS) -o tvguid14 tvguid14.o $(CONF_LIBS)

tvguid15: tvguid15.o
	$(CC) $(LDFLAGS) -o tvguid15 tvguid15.o $(CONF_LIBS)

tvguid16: tvguid16.o
	$(CC) $(LDFLAGS) -o tvguid16 tvguid16.o $(CONF_LIBS)

.PHONY:	ciall coall clean dist confcheck

###################
# Store revisions #
###################
ciall:
	ci Makefile $(RCS)

#####################
# Recover revisions #
#####################
coall:
	co $(RCS)

########################
# Remove garbage files #
########################
clean:
	rm -f hello *.bak *.o *~
	rm -f tvision
	rm -f tvguid01 tvguid02 tvguid03 tvguid04 tvguid05 \
	tvguid06 tvguid07 tvguid08 tvguid09 tvguid10 \
	tvguid11 tvguid12 tvguid13 tvguid14 tvguid15 \
	tvguid16

############################
# Package-making procedure #
############################
destdir = ../$(CONF_DISTDIR)/examples

dist: $(DISTFILES)
	@for file in $(DISTFILES); do \
		ln $$file $(destdir) || { \
			echo Copying $$file instead; \
			cp -p $$file $(destdir); \
		}; \
	done

###########################################
# Check if external variables are defined #
###########################################
confcheck:
	@if test -z "$(CONF_VERSION)"; then \
		echo Please run the main makefile; \
		exit 1; \
	fi

# Automatically generated dependencies
tvguid01.o: tvguid01.cc
tvguid02.o: tvguid02.cc
tvguid03.o: tvguid03.cc
tvguid04.o: tvguid04.cc
tvguid05.o: tvguid05.cc
tvguid06.o: tvguid06.cc
tvguid07.o: tvguid07.cc
tvguid08.o: tvguid08.cc
tvguid09.o: tvguid09.cc
tvguid10.o: tvguid10.cc
tvguid11.o: tvguid11.cc
tvguid12.o: tvguid12.cc
tvguid13.o: tvguid13.cc
tvguid14.o: tvguid14.cc
tvguid15.o: tvguid15.cc
tvguid16.o: tvguid16.cc
# Makefile ends here
