# # Obtain the global build environment # include $(AP_WORK)\build\NWGNUenvironment.inc # # Define base targets and rules # TARGETS = libs nlms install clobber_libs clobber_nlms clean installdev .PHONY : $(TARGETS) default all help $(NO_LICENSE_FILE) # Here is where we will use the NO_LICENSE_FILE variable to see if we need to # restart the make with it defined ifdef NO_LICENSE_FILE default: NO_LICENSE_FILE all: NO_LICENSE_FILE install :: NO_LICENSE_FILE installdev :: NO_LICENSE_FILE NO_LICENSE_FILE : $(MAKE) $(MAKECMDGOALS) -f NWGNUmakefile RELEASE=$(RELEASE) DEST="$(INSTALL)" LM_LICENSE_FILE="$(METROWERKS)\license.dat" else # LM_LICENSE_FILE must be defined so use the real targets default: $(SUBDIRS) libs nlms all: $(SUBDIRS) libs nlms install $(TARGETS) :: $(SUBDIRS) install :: nlms $(INSTDIRS) installdev :: $(INSTDEVDIRS) $(INSTDIRS) :: $(CHKNOT) $@\NUL mkdir $@ $(INSTDEVDIRS) :: $(CHKNOT) $@\NUL mkdir $@ endif #NO_LICENSE_FILE check help : @echo targets for RELEASE=$(RELEASE): @echo (default) . . . . libs nlms @echo all . . . . . . . does everything (libs nlms install) @echo libs. . . . . . . builds all libs @echo nlms. . . . . . . builds all nlms @echo install . . . . . builds libs and nlms and copies install files to @echo "$(INSTALL)" @echo installdev. . . . copies headers and files needed for development to @echo "$(INSTALL)" @echo clean . . . . . . deletes $(OBJDIR) dirs, *.err, and *.map @echo clobber_all . . . deletes all possible output from the make @echo clobber_install . deletes all files in $(INSTALL) @$(CMD) echo. @echo Multiple targets can be used on a single nmake command line - @echo (i.e. $(MAKE) clean all) @$(CMD) echo. @echo You can also specify RELEASE=debug, RELEASE=noopt, or RELEASE=optimized @echo The default is RELEASE=optimized clobber_all :: clean clobber_install clobber_prebuild clobber_install :: -$(DELTREE) $(INSTALL) 2>NUL clobber_prebuild :: $(CHK) $(PREBUILD_INST)\*.* $(DEL) $(PREBUILD_INST)\*.* -$(DELTREE) $(PREBUILD_INST) 2> NUL # # build recursive targets # $(SUBDIRS) : FORCE ifneq "$(MAKECMDGOALS)" "clean" $(CMD) echo. @echo Building $(CURDIR)/$@ endif $(MAKE) -C $@ $(MAKECMDGOALS) -f NWGNUmakefile RELEASE=$(RELEASE) DEST="$(INSTALL)" LM_LICENSE_FILE="$(LM_LICENSE_FILE)" $(CMD) echo. FORCE: # # Standard targets # clean :: $(SUBDIRS) @echo Cleaning up $(CURDIR) -$(DELTREE) $(OBJDIR) 2> NUL $(CHK) *.err $(DEL) *.err $(CHK) *.map $(DEL) *.map $(CHK) *.dep $(DEL) *.dep $(CHK) *.tmp $(DEL) *.tmp $(CHK) xc.bat $(DEL) xc.bat -$(DELTREE) $(OBJDIR) 2> NUL $(OBJDIR) :: $(CHKNOT) $(OBJDIR)\nul mkdir $(OBJDIR)