+usage: FORCE
+ $(USAGE)
+ $(USAGE)"Makefile targets:"
+ $(USAGE)
+ $(USAGE)"Recursive rules - These are the primatives that traverse the tree"
+ $(USAGE)"invoking the specified command in each subdirectory directory."
+ $(USAGE)"NOTE: all is special, it specifies no target and therefore invokes"
+ $(USAGE)"the default rule for that directory."
+ $(USAGE)"all - recursive DEFAULT rule"
+ $(USAGE)"clean - recursive clean"
+ $(USAGE)"depend - buildmu recursive depend"
+ $(USAGE)"messages - rootbundle recursive messages"
+ $(USAGE)"tests - recursive tests"
+ $(USAGE)"poststarttests - recursive poststarttests"
+ $(USAGE)
+ $(USAGE)"Combinational rules - Combine other rules to achieve results"
+ $(USAGE)"DEFAULT RULE - all, setupdevserver"
+ $(USAGE)"new - clean repositoryclean"
+ $(USAGE)"build - depend all, setupdevserver"
+ $(USAGE)"world - build unittests servertests"
+ $(USAGE)
+ $(USAGE)"Functional rules - Other rules to achieve specified results"
+ $(USAGE)"clobber -removes objects built during compile"
+ $(USAGE)" specifically the following directories are removed:"
+ $(USAGE)" $(PEGASUS_HOME)/bin"
+ $(USAGE)" $(PEGASUS_HOME)/lib"
+ $(USAGE)" $(PEGASUS_HOME)/obj"
+ $(USAGE)"buildmu - builds the mu utility"
+ $(USAGE)"setupdevserver - setup the development server env"
+ $(USAGE)"cleandevserver - cleans the development server env"
+ $(USAGE)"repository - builds the base repository. Does not remove other"
+ $(USAGE)" namespaces than the base namespaces."
+ $(USAGE)"testrepository - builds items for the test suites into the repository"
+ $(USAGE)"repositoryclean - removes the complete repository"
+ $(USAGE)"listplatforms - List all valid platforms"
+ $(USAGE)
+ $(USAGE)"Test rules (accessable here but implemented in TestMakefile)"
+ $(USAGE)"alltests - unittests and servertests"
+ $(USAGE)"unittests - runs the unit functional test"
+ $(USAGE)"servertests - runs basic server tests"
+ $(USAGE)"perftests - runs basic server performance tests"
+ $(USAGE)"standardtests - runs server extended tests"
+ $(USAGE)"testusage - TestMakefile usage"
+ $(USAGE)"testusage2 - TestMakefile usage2"
+ $(USAGE)"stresstests - Runs the default stresstests"
+ $(USAGE)
+ $(USAGE)"--------------------"
+ $(USAGE)"Quick start:"
+ $(USAGE)" After checkout of new tree:"
+ $(USAGE)" use \"make listplatforms\" to view a list of platforms"
+ $(USAGE)" set PEGASUS_PLATFORM=<your platofrm>"
+ $(USAGE)" set PEGASUS_ROOT=<location of your pegasus source>"
+ $(USAGE)" set PEGASUS_HOME=<build output location"
+ $(USAGE)" make world"
+ $(USAGE)
+ $(USAGE)" This will build everthing with a default configuration"
+ $(USAGE)" and run the automated tests."
+ $(USAGE)
+ $(USAGE)"--------------------"
+ $(USAGE)"Examples:"
+ $(USAGE)" After \"cvs checkout\" of new tree: make world"
+ $(USAGE)
+ $(USAGE)" After changes to include files: make"
+ $(USAGE)
+ $(USAGE)" After changes to the files included: make build"
+ $(USAGE)
+ $(USAGE)" After \"cvs update\" or to start over: make new world"
+ $(USAGE)
+
+listplatforms: FORCE
+ $(USAGE)
+ $(USAGE)"The $(words $(VALID_PLATFORMS)) valid platforms are:"
+ $(USAGE)" $(foreach w, $(VALID_PLATFORMS), " $w ")"
+ $(USAGE)
+ $(USAGE)
+
+#########################################################################
+# This section defines any prerequisites that are required by the
+# recursive rules.
+#
+# NOTE: You can add prerequisties for the recursive rules but you cannot
+# add any commands to run as part of the rule. You can define them
+# and make will quietly ignore them and they will not be run either
+# before or after the recursive rule.
+#
+#
+messages: rootbundle
+
+depend: buildmu
+
+#########################################################################
+# This section defines combinational rules
+#
+#-----------------------
+# build target: builds all source
+#
+build: depend all setupdevserver
+
+#------------------------
+# rebuild target is being deprecated instead use "make new build"
+#
+rebuild_msg: FORCE
+ @$(ECHO) "==============================================================================="
+ @$(ECHO) "Makefile: The rebuild target is being deprecated."
+ @$(ECHO) " Use \"make usage\" for a description of the usage model."
+ @$(ECHO) " Consider using \"make new world\" ."
+ @$(ECHO) " Invoking the old rebuild rule now."
+ @$(ECHO) "==============================================================================="
+
+rebuild: rebuild_msg shortsleep new build s_unittests repository
+
+#-----------------------
+# new target: cleans everthing
+#
+# This can be combined on the command line with other rules like:
+#
+# make new build
+# make new world
+
+new: clean repositoryclean
+
+#-----------------------
+# world targets: builds everything and dependent on which target may do testing
+#
+# Typically used after a fresh checkout from CVS
+
+world: build s_unittests servertests
+
+
+############################
+#
+# rules defined in TestMakefile that are repeated here for convenience
+#
+shortsleep: FORCE
+ @$(MAKE) -f TestMakefile shortsleep
+
+servertests: FORCE
+ @ $(MAKE) -f TestMakefile servertests
+
+perftests: FORCE
+ @ $(MAKE) -f TestMakefile perftests
+
+s_unittests: FORCE
+ @ $(MAKE) -f TestMakefile -s unittests
+
+unittests: FORCE
+ @ $(MAKE) -f TestMakefile unittests
+
+standardtests: FORCE
+ @ $(MAKE) -f TestMakefile standardtests