Valve Project Creator: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
mNo edit summary
No edit summary
 
(11 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{LanguageBar}}
The [[Valve Project Creator]] generates project and makefiles for the Source SDK.
The [[Valve Project Creator]] generates project and makefiles for the Source SDK.


Fore more information about building the Source SDK, see [[Source SDK 2013]].
For more information about building the Source SDK, see [[Source SDK 2013]]. To learn more about editing VPC scripts, visit [[Editing VPC scripts]].
 
===How to use===
Valve Project Creator is a command-line tool, so you'll have to use the command-prompt window.
 
An example for a command using the command prompt:
<pre>
C:\Users\someguy\Desktop\source-sdk-2013\mp\src\devtools\bin>vpc /h
</pre>
 
This will print out the help information seen below.
 
Another example:
 
<pre>
C:\Users\someguy\Desktop\source-sdk-2013\mp\src\devtools\bin>vpc +shaders /hl2mp
</pre>
 
This command will create the project file(s) for the <code>shaders</code> project group for the Source 2013 Multiplayer branch.  


===VPC Help Information===
===VPC Help Information===
  VPC - Valve Project Creator For XCode and Makefiles (Build: May 27 2013 11:24:00)
  VPC - Valve Project Creator For Visual Studio, Xbox 360, PlayStation 3, Xcode and Make (Build: Aug 27 2014 12:55:48)
  (C) Copyright 1996-2010, Valve Corporation, All rights reserved.
  (C) Copyright 1996-2010, Valve Corporation, All rights reserved.
   
   
  Source Path: <YOUR SOURCE PATH>
  Source Path: D:\Games\Steam\SteamApps\sourcemods\assets\code-2013
  Target Platform: <CURRENT PLATFORM>
  Target Platform: win32
Generating for Visual Studio 2013.
   
   
  usage: vpc [options] <+/-/*project or group>
  usage: vpc [options] <+/-/*project or group>
Line 14: Line 34:
  Examples:
  Examples:
   
   
  Single .vcproj generation:
  Single .vcproj generation:
    vpc +client /hl2    <-- Creates a Win32 .vcproj for the HL2 client.
    vpc +client /hl2    <-- Creates a Win32 .vcproj for the HL2 client.
    vpc +shaderapi /x360 <-- Creates a Xbox360 .vcproj for the shaderapi.
    vpc +shaderapi /x360 <-- Creates a Xbox360 .vcproj for the shaderapi.
  Multiple .vcproj generation - Multiple Projects for Games and Platforms:
    vpc +client /hl2 /tf          <-- Creates ALL the Win32 .vcprojs for the HL2 and TF client.
    vpc +gamedlls /allgames        <-- Creates ALL the Win32 .vcprojs for client and server for all GAMES.
    vpc +tools -tier0 /win32 /x360 <-- Creates ALL the Win32 and Xbox360 .vcprojs for the tool projects but not the tier0 project.
   
   
  Multiple .vcproj generation - Multiple Projects for Games and Platforms:
  Use +/- to add or remove projects or groups.
    vpc +client /hl2 /tf          <-- Creates ALL the Win32 .vcprojs for the HL2 and TF client.
  Use *  to add a project and all projects that depend on it.
    vpc +gamedlls /allgames        <-- Creates ALL the Win32 .vcprojs for client and server for all GAMES.
  Use @  to add a project and all projects that it depends on.
    vpc +tools -tier0 /win32 /x360 <-- Creates ALL the Win32 and Xbox360 .vcprojs for the tool projects but not the tier0 project.
  Use /h spew final target build set only (no .vcproj created).
   
   
  Use +/- to add or remove projects or groups.
  Further details can be found on Valve Internal Wiki on VPC.
  Use *  to add a project and all projects that depend on it.
  Use @  to add a project and all projects that it depends on.
  Use /h spew final target build set only (no .vcproj created).
   
   
  Further details can be found on Valve Internal Wiki on VPC.
 
  --- OPTIONS ---
  --- OPTIONS ---
  [/q]:          Quiet mode (quiet mode is automatically on if the VPC_QUIET environment variable is set)
  [/q]:          Quiet mode (quiet mode is automatically on if the VPC_QUIET environment variable is set)
Line 37: Line 57:
  [/testmode]:  Override output .vcproj file to be named 'test.vcproj'
  [/testmode]:  Override output .vcproj file to be named 'test.vcproj'
  [/srcctl]:    Enable source control integration
  [/srcctl]:    Enable source control integration
[/2013]:      Generate projects and solutions for Visual Studio 2013 [default]
[/2012]:      Generate projects and solutions for Visual Studio 2012
[/2010]:      Generate projects and solutions for Visual Studio 2010
[/2005]:      Generate projects and solutions for Visual Studio 2005
[/nounity]:    Disable unity file generation
   
   
  --- Help ---
  --- Help ---
Line 52: Line 77:
  [/callcap]:    Set Reserved $CALLCAP=1
  [/callcap]:    Set Reserved $CALLCAP=1
  [/fastcap]:    Set Reserved $FASTCAP=1
  [/fastcap]:    Set Reserved $FASTCAP=1
[/cert]:      Set Reserved $CERT=1
[/memtest]:    Set Reserved $MEMTEST=1
  [/nofpo]:      Set Reserved $NOFPO=1
  [/nofpo]:      Set Reserved $NOFPO=1
  [/lv]:        Set Reserved $LV=1
  [/lv]:        Set Reserved $LV=1
Line 59: Line 82:
  [/no_steam]:  Set Reserved $NO_STEAM=1
  [/no_steam]:  Set Reserved $NO_STEAM=1
  [/qtdebug]:    Set Reserved $QTDEBUG=1
  [/qtdebug]:    Set Reserved $QTDEBUG=1
  [/no_ceg]:   Set Reserved $NO_CEG=1
  [/no_ceg]:     Set Reserved $NO_CEG=1
  [/upload_ceg]: Set Reserved $UPLOAD_CEG=1
  [/upload_ceg]: Set Reserved $UPLOAD_CEG=1
   
   

Latest revision as of 13:06, 4 September 2024

English (en)Translate (Translate)

The Valve Project Creator generates project and makefiles for the Source SDK.

For more information about building the Source SDK, see Source SDK 2013. To learn more about editing VPC scripts, visit Editing VPC scripts.

How to use

Valve Project Creator is a command-line tool, so you'll have to use the command-prompt window.

An example for a command using the command prompt:

C:\Users\someguy\Desktop\source-sdk-2013\mp\src\devtools\bin>vpc /h 

This will print out the help information seen below.

Another example:

C:\Users\someguy\Desktop\source-sdk-2013\mp\src\devtools\bin>vpc +shaders /hl2mp

This command will create the project file(s) for the shaders project group for the Source 2013 Multiplayer branch.

VPC Help Information

VPC - Valve Project Creator For Visual Studio, Xbox 360, PlayStation 3, Xcode and Make (Build: Aug 27 2014 12:55:48)
(C) Copyright 1996-2010, Valve Corporation, All rights reserved.

Source Path: D:\Games\Steam\SteamApps\sourcemods\assets\code-2013
Target Platform: win32
Generating for Visual Studio 2013.

usage: vpc [options] <+/-/*project or group>

Examples:

  Single .vcproj generation:
    vpc +client /hl2     <-- Creates a Win32 .vcproj for the HL2 client.
    vpc +shaderapi /x360 <-- Creates a Xbox360 .vcproj for the shaderapi.

  Multiple .vcproj generation - Multiple Projects for Games and Platforms:
    vpc +client /hl2 /tf           <-- Creates ALL the Win32 .vcprojs for the HL2 and TF client.
    vpc +gamedlls /allgames        <-- Creates ALL the Win32 .vcprojs for client and server for all GAMES.
    vpc +tools -tier0 /win32 /x360 <-- Creates ALL the Win32 and Xbox360 .vcprojs for the tool projects but not the tier0 project.

  Use +/- to add or remove projects or groups.
  Use *   to add a project and all projects that depend on it.
  Use @   to add a project and all projects that it depends on.
  Use /h spew final target build set only (no .vcproj created).

  Further details can be found on Valve Internal Wiki on VPC.

--- OPTIONS ---
[/q]:          Quiet mode (quiet mode is automatically on if the VPC_QUIET environment variable is set)
[/v]:          Verbose
[/f]:          Force generate .vcproj, otherwise use crc checks
[/dp]:         Decorate project names with platform
[/testmode]:   Override output .vcproj file to be named 'test.vcproj'
[/srcctl]:     Enable source control integration
[/2013]:       Generate projects and solutions for Visual Studio 2013 [default]
[/2012]:       Generate projects and solutions for Visual Studio 2012
[/2010]:       Generate projects and solutions for Visual Studio 2010
[/2005]:       Generate projects and solutions for Visual Studio 2005
[/nounity]:    Disable unity file generation

--- Help ---
[/h]:          Help
[/?]:          Help
[/platforms]:  Spew Platforms
[/games]:      Spew Games
[/projects]:   Spew Projects
[/groups]:     Spew Groups
[/properties]: Spew VS2005 Properties

--- Conditionals ---
[/profile]:    Set Reserved $PROFILE=1
[/retail]:     Set Reserved $RETAIL=1
[/callcap]:    Set Reserved $CALLCAP=1
[/fastcap]:    Set Reserved $FASTCAP=1
[/nofpo]:      Set Reserved $NOFPO=1
[/lv]:         Set Reserved $LV=1
[/demo]:       Set Reserved $DEMO=1
[/no_steam]:   Set Reserved $NO_STEAM=1
[/qtdebug]:    Set Reserved $QTDEBUG=1
[/no_ceg]:     Set Reserved $NO_CEG=1
[/upload_ceg]: Set Reserved $UPLOAD_CEG=1

--- Other ---
[/mksln]:      <.sln filename> - make a solution file
[/p4sln]:      <.sln filename> <changelists...> - make a solution file based on
               the changelist. Changelists can be specific numbers, 0 or "default"
               for the default changelist, or "all" for all active changelists.
[/nop4add]:    Don't automatically add project files to Perforce
[/slnitems]:   <filename> - adds all files listed in <filename> to generated
               solutions
[/showdeps]:   Show an example dependency chain for each project that depends
               on your p4 change list(s).  Use with /p4sln.
[/checkfiles]: Check for the existence of files in $file commands. For debugging vpc files.
               Only works if the currrent directory is the project directory.
[/define:xxx]: Enable a custom conditional $XXX to use for quick testing in VPC files.