#
# Makefile for Training.lib
#
# Environment variable Requirements:
#   
#    INCLUDE=foo           // can be set to anything, must be set
#    PATH=                 // must have proper nmake on path
#    FEDROOT=<path>        // MUST point to base of fed src enlistment
#
# nmake args:
#
#   Clean        // will delete all files in destination dir
#   Full         // will Clean, then build all derived files
#   Shell        // opens os-specific cmd/command shell (helps to debug build)
#   RETAIL=      // builds a retail build (default is DEBUG)
#                // no argument is used for debug builds
#
#
#  All derived files (temp files, .res, output of midl, *.obj, *.exe/.dll...
#  are placed directly into the appropriate tree under $(FEDROOT)\Objs.

#  The $(FEDROOT)\Objs tree is created on demand.
#  Since no derived files are placed in the source tree, multiple builds
#  can be run SIMULTANEOUSLY.


SRCROOT=Training
MAINTARGROOT=Training
MAINTARGEXT=lib
INCLUDELOCAL=$(FEDSRC)\Training;$(FEDSRC)\Effect;$(FEDSRC)\Engine;$(FEDSRC)\ZLib;$(FEDSRC)\_Utility;$(FEDSRC)\Igc;$(FEDSRC)\inc;$(FEDSRC)\clintlib;$(FEDSRC)\SoundEngine;$(FEDSRC)\wintrek;$(FEDSRC)\offline;$(FEDSRC)\lobby
PCHROOT=pch
PCHINC=$(FEDSRC)\Training\*.h $(FEDSRC)\igc\*.h $(FEDSRC)\wintrek\*.h $(FEDSRC)\SoundEngine\*.h

!include "..\makefile.inc"

OBJS=	$(DESTDIR)\AbstractTarget.obj                   \
		$(DESTDIR)\TypeIDTarget.obj                     \
		$(DESTDIR)\CurrentTarget.obj                    \
		$(DESTDIR)\PlayerShipTarget.obj                 \
	    $(DESTDIR)\Condition.obj		                \
        $(DESTDIR)\ConditionList.obj                    \
        $(DESTDIR)\TrueCondition.obj                    \
        $(DESTDIR)\AndCondition.obj                     \
        $(DESTDIR)\OrCondition.obj                      \
        $(DESTDIR)\PeriodicCondition.obj                \
        $(DESTDIR)\NTimesCondition.obj                  \
        $(DESTDIR)\TurnShipAboutCondition.obj           \
        $(DESTDIR)\CommandAcknowledgedCondition.obj     \
        $(DESTDIR)\ObjectMovingTowardsCondition.obj     \
        $(DESTDIR)\ObjectWithinRadiusCondition.obj      \
        $(DESTDIR)\ObjectPointingAtCondition.obj        \
        $(DESTDIR)\SuspendedSoundFinishedCondition.obj  \
        $(DESTDIR)\SuspendedPlaySoundAction.obj         \
        $(DESTDIR)\SoundFinishedCondition.obj           \
        $(DESTDIR)\GetRadarLODCondition.obj             \
        $(DESTDIR)\GetControlActiveCondition.obj        \
        $(DESTDIR)\GetStateBitsCondition.obj            \
        $(DESTDIR)\GetShipIsStoppedCondition.obj        \
        $(DESTDIR)\GetShipIsDamagedCondition.obj        \
        $(DESTDIR)\GetShipHasAmmoCondition.obj          \
        $(DESTDIR)\GetShipHasCargoCondition.obj         \
        $(DESTDIR)\GetAutopilotCondition.obj            \
        $(DESTDIR)\GetTargetCondition.obj               \
        $(DESTDIR)\GetSectorCondition.obj               \
        $(DESTDIR)\GetViewSectorCondition.obj           \
        $(DESTDIR)\GetCommandCondition.obj              \
        $(DESTDIR)\GetProbeCountCondition.obj           \
        $(DESTDIR)\GetKeyCondition.obj                  \
        $(DESTDIR)\GetChatCondition.obj                 \
        $(DESTDIR)\ProxyCondition.obj                   \
		$(DESTDIR)\Predicate.obj			            \
		$(DESTDIR)\Action.obj				            \
		$(DESTDIR)\ActionList.obj	    	            \
        $(DESTDIR)\NoAction.obj                         \
        $(DESTDIR)\OneTimeAction.obj                    \
        $(DESTDIR)\ProxyAction.obj                      \
        $(DESTDIR)\SetDisplayModeAction.obj             \
        $(DESTDIR)\SetHUDOverlayAction.obj              \
        $(DESTDIR)\EndMissionAction.obj                 \
        $(DESTDIR)\ResetAction.obj                      \
        $(DESTDIR)\ResetShipAction.obj                  \
        $(DESTDIR)\ConditionalAction.obj                \
        $(DESTDIR)\MessageAction.obj                    \
        $(DESTDIR)\PlaySoundAction.obj                  \
        $(DESTDIR)\SetCommandAction.obj                 \
        $(DESTDIR)\SetSignatureAction.obj               \
        $(DESTDIR)\SetRadarLODAction.obj                \
        $(DESTDIR)\SetAutopilotAction.obj               \
        $(DESTDIR)\SetControlConstraintsAction.obj      \
        $(DESTDIR)\SetControlsAction.obj                \
        $(DESTDIR)\ShowPaneAction.obj                   \
        $(DESTDIR)\ShowEyeballAction.obj                \
        $(DESTDIR)\ReleaseConsumerAction.obj            \
        $(DESTDIR)\CreateObjectAction.obj               \
        $(DESTDIR)\CreateProbeAction.obj                \
        $(DESTDIR)\CreateDroneAction.obj                \
        $(DESTDIR)\CreateWaypointAction.obj             \
        $(DESTDIR)\TurnToAction.obj                     \
        $(DESTDIR)\ToggleWeaponAction.obj               \
        $(DESTDIR)\SwapWeaponAction.obj                 \
        $(DESTDIR)\DoDamageAction.obj                   \
        $(DESTDIR)\RepairRearmAction.obj                \
        $(DESTDIR)\ShipSeesObjectCondition.obj          \
        $(DESTDIR)\GetPickedCondition.obj               \
		$(DESTDIR)\Goal.obj					            \
        $(DESTDIR)\GoalList.obj                         \
		$(DESTDIR)\Training.obj                         \
		$(DESTDIR)\TrainingMission.obj                  \
		$(DESTDIR)\Mission2.obj                         \
		$(DESTDIR)\Mission3.obj                         \
		$(DESTDIR)\Mission4.obj                         \
		$(DESTDIR)\Mission5.obj                         \
		$(DESTDIR)\Mission6.obj

LIBARGS= $(NOLOGO) /out:$(MAINTARGFULLPATH)

#
# Dependecies start here
#

$(MAINTARGFULLPATH): $(DESTDIR) $(OBJS)
    lib $(LIBARGS) $(OBJS) $(DESTDIR)\pch.obj

$(DESTDIR)\Condition.obj:			            $(PCHFILE)
$(DESTDIR)\ConditionList.obj:		            $(PCHFILE)
$(DESTDIR)\TrueCondition.obj:                   $(PCHFILE)
$(DESTDIR)\AndCondition.obj:                    $(PCHFILE)
$(DESTDIR)\OrCondition.obj:                     $(PCHFILE)
$(DESTDIR)\PeriodicCondition.obj:               $(PCHFILE)
$(DESTDIR)\NTimesCondition.obj:                 $(PCHFILE)
$(DESTDIR)\TurnShipAboutCondition.obj:          $(PCHFILE)
$(DESTDIR)\CommandAcknowledgedCondition.obj:    $(PCHFILE)
$(DESTDIR)\ObjectMovingTowardsCondition.obj:    $(PCHFILE)
$(DESTDIR)\ObjectWithinRadiusCondition.obj:     $(PCHFILE)
$(DESTDIR)\ObjectPointingAtCondition.obj:       $(PCHFILE)
$(DESTDIR)\SuspendedSoundFinishedCondition.obj: $(PCHFILE)
$(DESTDIR)\SuspendedPlaySoundAction.obj:        $(PCHFILE)
$(DESTDIR)\SoundFinishedCondition.obj:          $(PCHFILE)
$(DESTDIR)\GetRadarLODCondition.obj:            $(PCHFILE)
$(DESTDIR)\GetControlActiveCondition.obj:       $(PCHFILE)
$(DESTDIR)\GetStateBitsCondition.obj:           $(PCHFILE)
$(DESTDIR)\GetShipIsStoppedCondition.obj:       $(PCHFILE)
$(DESTDIR)\GetShipIsDamagedCondition.obj:       $(PCHFILE)
$(DESTDIR)\GetShipHasAmmoCondition.obj:         $(PCHFILE)
$(DESTDIR)\GetShipHasCargoCondition.obj:        $(PCHFILE)
$(DESTDIR)\GetAutopilotCondition.obj:           $(PCHFILE)
$(DESTDIR)\GetTargetCondition.obj:              $(PCHFILE)
$(DESTDIR)\GetSectorCondition.obj:              $(PCHFILE)
$(DESTDIR)\GetViewSectorCondition.obj:          $(PCHFILE)
$(DESTDIR)\GetCommandCondition.obj:             $(PCHFILE)
$(DESTDIR)\GetProbeCountCondition.obj:          $(PCHFILE)
$(DESTDIR)\GetKeyCondition.obj:                 $(PCHFILE)
$(DESTDIR)\GetChatCondition.obj:                $(PCHFILE)
$(DESTDIR)\ProxyCondition.obj:                  $(PCHFILE)
$(DESTDIR)\Predicate.obj:			            $(PCHFILE)
$(DESTDIR)\Action.obj:				            $(PCHFILE)
$(DESTDIR)\ActionList.obj:			            $(PCHFILE)
$(DESTDIR)\NoAction.obj:                        $(PCHFILE)
$(DESTDIR)\OneTimeAction.obj:                   $(PCHFILE)
$(DESTDIR)\ProxyAction.obj:                     $(PCHFILE)
$(DESTDIR)\SetDisplayModeAction.obj:            $(PCHFILE)
$(DESTDIR)\SetHUDOverlayAction.obj:             $(PCHFILE)
$(DESTDIR)\EndMissionAction.obj:                $(PCHFILE)
$(DESTDIR)\ResetAction.obj:                     $(PCHFILE)
$(DESTDIR)\ResetShipAction.obj:                 $(PCHFILE)
$(DESTDIR)\ConditionalAction.obj:               $(PCHFILE)
$(DESTDIR)\MessageAction.obj:                   $(PCHFILE)
$(DESTDIR)\PlaySoundAction.obj:                 $(PCHFILE)
$(DESTDIR)\SetCommandAction.obj:                $(PCHFILE)
$(DESTDIR)\SetSignatureAction.obj:              $(PCHFILE)
$(DESTDIR)\SetRadarLODAction.obj:               $(PCHFILE)
$(DESTDIR)\SetAutopilotAction.obj:              $(PCHFILE)
$(DESTDIR)\SetControlConstraintsAction.obj:     $(PCHFILE)
$(DESTDIR)\SetControlsAction.obj:               $(PCHFILE)
$(DESTDIR)\ShowPaneAction.obj:                  $(PCHFILE)
$(DESTDIR)\ShowEyeballAction.obj:               $(PCHFILE)
$(DESTDIR)\ReleaseConsumerAction.obj:           $(PCHFILE)
$(DESTDIR)\CreateObjectAction.obj:              $(PCHFILE)
$(DESTDIR)\CreateProbeAction.obj:               $(PCHFILE)
$(DESTDIR)\CreateDroneAction.obj:               $(PCHFILE)
$(DESTDIR)\CreateWaypointAction.obj:            $(PCHFILE)
$(DESTDIR)\TurnToAction.obj:                    $(PCHFILE)
$(DESTDIR)\ToggleWeaponAction.obj:              $(PCHFILE)
$(DESTDIR)\SwapWeaponAction.obj:                $(PCHFILE)
$(DESTDIR)\DoDamageAction.obj:                  $(PCHFILE)
$(DESTDIR)\RepairRearmAction.obj:               $(PCHFILE)
$(DESTDIR)\ShipSeesObjectCondition.obj:         $(PCHFILE)
$(DESTDIR)\GetPickedCondition.obj:              $(PCHFILE)
$(DESTDIR)\Goal.obj:				            $(PCHFILE)
$(DESTDIR)\GoalList.obj:                        $(PCHFILE)
$(DESTDIR)\Training.obj:			            $(PCHFILE)
$(DESTDIR)\TrainingMission.obj:	                $(PCHFILE)
$(DESTDIR)\AbstractTarget.obj:			        $(PCHFILE)
$(DESTDIR)\TypeIDTarget.obj:			        $(PCHFILE)
$(DESTDIR)\CurrentTarget.obj:			        $(PCHFILE)
$(DESTDIR)\PlayerShipTarget.obj:			    $(PCHFILE)
$(DESTDIR)\Mission2.obj:			            $(PCHFILE)
$(DESTDIR)\Mission3.obj:			            $(PCHFILE)
$(DESTDIR)\Mission4.obj:			            $(PCHFILE)
$(DESTDIR)\Mission5.obj:			            $(PCHFILE)
$(DESTDIR)\Mission6.obj:			            $(PCHFILE)
