Root        = ../../../.. ;
UseDirectX  = yes ;
DXversion   = "11" ;
UseRHI      = yes ;
export UseRHI ;
include $(Root)/shared/jambase ;
include $(Root)/dev/Core/platform.jam ;
include $(Root)/dev/Driver/platform.jam ;
include common.jam ;


UseDefAppLibs   = yes ;
UseOpenAL       = yes ;
UseNet          = yes ;
AddIncludes    += ../Common _generated ../Common/_generated ;
AddLibs         = 
  $(InputLib) $(RHI.lib) $(AudioLib) $(NetLib)
  Audiolization10-rhi
  Engine-rhi Camera Visualization30 Animation20
  Physics20-rhi Game GameUI-rhi Logic3D-rhi
  Render2D-rhi
  DebugUtility-rhi
  Application
  ImageUtility
  ;
CPPopt         += -DUSE_RHI=1 ;



SeparateTmpDir     = yes ;
SeparateTmpDirName = LD45-win ;

ld45_CodeGen ;

Application LD45-$(Config) : 
  $(ld45_GeneratedCode)
  ld45_Common.cpp
  ld45_SloMo.cpp
  ld45_ActionCamera.cpp
  ld45_EntityPart_PlayerCtrl.cpp
  ld45_EntityPart_Proximity.cpp
  ld45_EntityPart_Pod.cpp
  ld45_EntityPart_Weapon.cpp
  ld45_EntityPart_OmniLight.cpp
  ld45_EntityPart_VanishFX.cpp
  ld45_Behaviours.cpp
  ld45_Renderable.cpp
  ld45_RenderPipeline.cpp
  ld45_App.cpp
  ld45_App_Mission.cpp
  ld45_App_MainMenu.cpp
  ld45_Location.cpp
  ;

CopyFiles 
  $(Root)/bin-$(Platform)/CommonMaterials.lp2
  LudumDare45-app.lc
  LudumDare45-dev.lc
  ;

if ( $(Platform) == win32 )    { dyn_music = "@($(ContentDir)/_Prototype/LudumDare45/music/*.ogg:M)" ; }

for ( m in $(dyn_music) )
{
    CopyFile $(OutDir)/music/$(m:BS=.music) : $(m) ;
}


PackConfig $(OutDir)/LudumDare45-app.lcb : LudumDare45-app.lc ;



Archive ld45-config.arch :
  "config/*.lc"
  "config/camera/*.lcs"
  "config/entity/*.lc"
  "config/part/*.lc"
  "config/entity/*.lcs"
  "config/fx/*.lc"
  "config/fx/*.ps"
  "config/motion/*.lc"
  "config/ui/*.lcs"
  "world/level*.lc"  
  "text/*.inf"  
  "text/*.txt"
  ;


depends all : LD45-$(Config) ;
