summaryrefslogtreecommitdiff
path: root/examples/C++NPv1/Makefile
blob: ff16fb9e1f4bf5b1d885838b63e2c0c0500c31a8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#----------------------------------------------------------------------------
#	$Id$
#
#	Makefile for the example programs in "C++ Network Programming,
#	Vol. 1, Resolving Complexity Using Patterns and ACE"
#----------------------------------------------------------------------------

#----------------------------------------------------------------------------
#	Local macros
#----------------------------------------------------------------------------
MAKEFILE=Makefile

MKLIST = Makefile.Iterative_Logging_Server \
	Makefile.Logging_Client \
	Makefile.Process_Per_Connection_Logging_Server \
	Makefile.Reactive_Logging_Server \
	Makefile.Reactive_Logging_Server_Ex \
	Makefile.RT_Thread_Per_Connection_Logging_Server \
	Makefile.Thread_Per_Connection_Logging_Server

## Makefile.Reactive_Logging_Server_Ex.mkfile is a dummy target which will cause
## $(MAKE) -f Makefile.Reactive_Logging_Server_Ex to be invoked
%.mkfile: %
	@echo $(MAKE) -f $< $(MKFILE_TARGET)
	@$(MAKE) -f $< $(MKFILE_TARGET)

# This rule invokes make again with the list of .mkfile targets as a
# parameter.  For example, if the all target is being made, make is invoked
# as follows:
#
# make -f Makefile MKFILE_TARGET=all Makefile.Reactive_Logging_Server_Ex 

all clean depend realclean:
ifneq ($(MKLIST),)
	@echo $(MAKE) -f $(MAKEFILE) MKFILE_TARGET=$@ $(addsuffix .mkfile, $(MKLIST))
	@$(MAKE) -f $(MAKEFILE) MKFILE_TARGET=$@ $(addsuffix .mkfile, $(MKLIST))
endif