bottleneck testcase based on rubbos
[bottlenecks.git] / rubbos / app / httpd-2.0.64 / build / NWGNUhead.inc
1 #
2 # Obtain the global build environment
3 #
4
5 include $(AP_WORK)\build\NWGNUenvironment.inc
6
7 #
8 # Define base targets and rules
9
10
11 TARGETS = libs nlms install clobber_libs clobber_nlms clean installdev
12
13 .PHONY : $(TARGETS) default all help $(NO_LICENSE_FILE)
14
15 # Here is where we will use the NO_LICENSE_FILE variable to see if we need to
16 # restart the make with it defined
17
18 ifdef NO_LICENSE_FILE
19
20 default: NO_LICENSE_FILE
21
22 all: NO_LICENSE_FILE
23
24 install :: NO_LICENSE_FILE
25
26 installdev :: NO_LICENSE_FILE
27
28 NO_LICENSE_FILE :
29         $(MAKE) $(MAKECMDGOALS) -f NWGNUmakefile RELEASE=$(RELEASE) DEST="$(INSTALL)" LM_LICENSE_FILE="$(METROWERKS)\license.dat"
30
31 else # LM_LICENSE_FILE must be defined so use the real targets
32
33 default: $(SUBDIRS) libs nlms
34
35 all: $(SUBDIRS) libs nlms install
36
37 $(TARGETS) :: $(SUBDIRS)
38
39 install :: nlms $(INSTDIRS)
40
41 installdev :: $(INSTDEVDIRS)
42
43 $(INSTDIRS) ::
44         $(CHKNOT) $@\NUL mkdir $@
45
46 $(INSTDEVDIRS) ::
47         $(CHKNOT) $@\NUL mkdir $@
48
49 endif #NO_LICENSE_FILE check
50
51 help :
52         @echo targets for RELEASE=$(RELEASE):
53         @echo (default) . . . . libs nlms
54         @echo all . . . . . . . does everything (libs nlms install)
55         @echo libs. . . . . . . builds all libs
56         @echo nlms. . . . . . . builds all nlms
57         @echo install . . . . . builds libs and nlms and copies install files to
58         @echo                   "$(INSTALL)"
59         @echo installdev. . . . copies headers and files needed for development to
60         @echo                   "$(INSTALL)"
61         @echo clean . . . . . . deletes $(OBJDIR) dirs, *.err, and *.map
62         @echo clobber_all . . . deletes all possible output from the make
63         @echo clobber_install . deletes all files in $(INSTALL)
64         @$(CMD) echo.
65         @echo Multiple targets can be used on a single nmake command line -
66         @echo (i.e. $(MAKE) clean all)
67         @$(CMD) echo.
68         @echo You can also specify RELEASE=debug, RELEASE=noopt, or RELEASE=optimized
69         @echo The default is RELEASE=optimized
70
71 clobber_all :: clean clobber_install
72
73 clobber_install ::
74         -$(DELTREE) $(INSTALL) 2>NUL
75
76 #
77 # build recursive targets
78 #
79
80 $(SUBDIRS) : FORCE
81 ifneq "$(MAKECMDGOALS)" "clean"
82         $(CMD) echo.
83         @echo Building $(CURDIR)/$@
84 endif
85         $(MAKE) -C $@ $(MAKECMDGOALS) -f NWGNUmakefile RELEASE=$(RELEASE) DEST="$(INSTALL)" LM_LICENSE_FILE="$(LM_LICENSE_FILE)"
86         $(CMD) echo.
87
88 FORCE:
89
90 #
91 # Standard targets
92 #
93
94 clean :: $(SUBDIRS)
95         @echo Cleaning up $(CURDIR)
96         -$(DELTREE) $(OBJDIR) 2> NUL
97         $(CHK) *.err $(DEL) *.err
98         $(CHK) *.map $(DEL) *.map
99         $(CHK) *.d $(DEL) *.d
100         $(CHK) *.tmp $(DEL) *.tmp
101         $(CHK) xc.bat $(DEL) xc.bat
102         -$(DELTREE) $(OBJDIR) 2> NUL
103
104 $(OBJDIR) ::
105         $(CHKNOT) $(OBJDIR)\nul mkdir $(OBJDIR)
106