Team Fortress 2 Source Code as on 22/4/2020
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

102 lines
2.7 KiB

  1. //============ Copyright (c) Valve Corporation, All rights reserved. ==========
  2. //
  3. //=============================================================================
  4. $Macro SRCDIR "..\.."
  5. $Macro OUTBINDIR "$SRCDIR\..\game\bin"
  6. // Initially we link this as itemtest_com.exe, to avoid conflicting with itemtest.exe
  7. $Macro OUTBINNAME "itemtest_com"
  8. // Then we copy the result to itemtest.com so that the command-line version will be
  9. // launched first.
  10. $Macro FINAL_OUTBINNAME "itemtest.com"
  11. $Include "$SRCDIR\vpc_scripts\source_exe_con_base.vpc"
  12. $Include "$SRCDIR\utils\itemtest_lib\itemtest_lib_support.vpc"
  13. $Configuration
  14. {
  15. $Linker
  16. {
  17. $AdditionalDependencies "$BASE comctl32.lib odbc32.lib odbccp32.lib Rpcrt4.lib"
  18. }
  19. // This is a special case... there is a name collision between game/bin/itemtest.com (this project)
  20. // and game/bin/itemtest.exe, so we need a custom build event that doesn't try to copy the .map/.pdb
  21. // for the .com into game/bin to avoid a race condition when doing parallel builds... maybe there's
  22. // a better solution
  23. $PostBuildEvent [!$ANALYZE]
  24. {
  25. $CommandLine "call $SRCDIR\vpc_scripts\valve_p4_edit.cmd $OUTBINDIR\$FINAL_OUTBINNAME $SRCDIR" "\n" \
  26. "copy $QUOTE$(TargetDir)$QUOTE$(TargetFileName) $OUTBINDIR\$FINAL_OUTBINNAME" "\n" \
  27. "if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
  28. "call $SRCDIR\vpc_scripts\valve_p4_edit.cmd $OUTBINDIR\$(TargetName).pdb $SRCDIR" "\n" \
  29. "copy $QUOTE$(TargetDir)$QUOTE$(TargetName).pdb $OUTBINDIR\$(TargetName).pdb" "\n" \
  30. "if ERRORLEVEL 1 goto BuildEventFailed" "\n" \
  31. "goto BuildEventOK" "\n" \
  32. ":BuildEventFailed" "\n" \
  33. "echo *** ERROR! PostBuildStep FAILED for $(ProjectName)! COM is probably running. ***" "\n" \
  34. "del /q $QUOTE$(TargetDir)$QUOTE$(TargetFileName)" "\n" \
  35. "exit 1" "\n" \
  36. ":BuildEventOK" "\n"
  37. $Description "Publishing to $OUTBINDIR"
  38. $ExcludedFromBuild "No"
  39. }
  40. }
  41. $Configuration "Debug"
  42. {
  43. $General
  44. {
  45. $OutputDirectory ".\Debug_itemtest_com"
  46. $IntermediateDirectory ".\Debug_itemtest_com"
  47. }
  48. }
  49. $Configuration "Release"
  50. {
  51. $General
  52. {
  53. $OutputDirectory ".\Release_itemtest_com"
  54. $IntermediateDirectory ".\Release_itemtest_com"
  55. }
  56. }
  57. $Project "itemtest_com"
  58. {
  59. $Folder "Source Files"
  60. {
  61. $File "itemtestapp.cpp"
  62. $File "itemtest_con.cpp"
  63. $File "runexe.cpp"
  64. $Folder "External"
  65. {
  66. $File "$SRCDIR\public\interpolatortypes.cpp"
  67. $File "$SRCDIR\public\movieobjects\movieobjects.cpp"
  68. }
  69. }
  70. $Folder "Header Files"
  71. {
  72. $File "itemtestapp.h"
  73. $File "runexe.h"
  74. $Folder "External"
  75. {
  76. $File "$SRCDIR\public\interpolatortypes.h"
  77. }
  78. }
  79. $Folder "Link Libraries"
  80. {
  81. $Lib appframework
  82. $Lib bitmap
  83. $Lib mathlib
  84. $Lib tier2
  85. $Lib tier3
  86. $ImpLib steam_api
  87. $Lib vtf
  88. }
  89. }