fixed the Windows build and updated the build docs

- no absolute paths in the pre-build commands for compiling HLSL shaders
- can set a custom fxc.exe path through the FXCPATH environment variable
This commit is contained in:
myT 2020-02-25 10:37:02 +01:00
parent 7b01f8b8d3
commit c8205f9e4e
4 changed files with 67 additions and 94 deletions

View file

@ -5,8 +5,8 @@
There are 3 supported build toolchains:
- Visual C++ on Windows x64 and x86
- GCC on Linux x64
- GCC on FreeBSD x64
- GCC or Clang on Linux x64
- Clang or GCC on FreeBSD x64
## Directories
@ -22,6 +22,9 @@ There are 3 supported build toolchains:
- The %QUAKE3DIR% environment variable must be defined to the absolute path to copy the .exe and .pdb files to
- NASM.exe is in your path for building the client
- One of the following is true:
- The %FXCPATH% environment variable contains the full path to fxc.exe
- The June 2010 DirectX SDK is installed
**Options**
@ -42,9 +45,10 @@ Here's an example batch script for opening the Visual Studio solution:
cd cnq3\makefiles\windows_vs2013
set QUAKE3DIR=G:\CPMA_tests
set CPMADIR=cpma_dev
set FXCPATH=C:\Program Files (x86)\Windows Kits\8.1\bin\x64\fxc.exe
cnq3.sln
```
With this set-up, you can press F5 and run the engine on the right q3 install and right mod folder immediately.
With this set-up, you can press F5 and run the engine through the Visual C++ debugger on the right q3 install and right mod folder immediately.
## Building on Linux / FreeBSD with GCC
@ -54,8 +58,7 @@ With this set-up, you can press F5 and run the engine on the right q3 install an
|:------|:------:|:------:|:---------------|:----------------|
| NASM | X | X | nasm | nasm |
| SDL 2 | | X | libsdl2-dev | sdl2 |
On FreeBSD, we link against libexecinfo for the backtrace functions. We thus require FreeBSD 10.0 as a minimum target.
On FreeBSD, we link against libexecinfo for the backtrace functions. We thus require FreeBSD 10.0 or later.
**Options**
@ -69,22 +72,31 @@ With this set-up, you can press F5 and run the engine on the right q3 install an
**Notes**
- To create the QUAKE3DIR variable in the build shell, you can use `export QUAKE3DIR=~/games/q3`.
- To delete the variable from the build shell, you can use `unset QUAKE3DIR`.
- To create the QUAKE3DIR variable in the build shell, you can use `export QUAKE3DIR=~/games/q3`
- To delete the variable from the build shell, you can use `unset QUAKE3DIR`
- On FreeBSD, Clang is now the default compiler
- For most Linux distros, GCC is still the default compiler
- To force building with Clang, you can use `CC=clang CXX=clang++` as make/gmake arguments
- To force building with GCC, you can use `CC=gcc CXX=g++` as make/gmake arguments
- You don't have to specify $(CPP), it's not used by any of the makefiles
## Environment variables
There are 2 environment variables used for compiling and debugging:
There are 3 environment variables used for compiling and debugging:
| Env. Var. | Meaning | Example |
|:----------|:------------------------|:------------|
|:----------|:------------------------|:--------------------------------------------------------|
| QUAKE3DIR | absolute directory path | C:\Games\Q3 |
| CPMADIR | mod folder name | cpma |
| FXCPATH | full fxc.exe file path | C:\Program Files (x86)\Windows Kits\8.1\bin\x64\fxc.exe |
| Env. Var. | Windows | Linux / FreeBSD |
|:----------|:-----------------------|:----------------|
| QUAKE3DIR | required for building | optional |
|:----------|:-------------------------|:----------------------|
| QUAKE3DIR | required for building | optional for building |
| CPMADIR | required for debugging | unused |
| FXCPATH | required for building(1) | unused |
1) FXCPATH is optional if you have the June 2010 DirectX SDK installed.
## Building with other compilers

View file

@ -0,0 +1,4 @@
@echo off
set fxc="%FXCPATH%"
if "%FXCPATH%"=="" set fxc="%DXSDK_DIR%Utilities\\bin\\x86\\fxc.exe"
%fxc% %*

View file

@ -5,8 +5,8 @@ premake 5.0.0-alpha10
There are 3 supported build toolchains:
- Visual C++ on Windows x64 and x86
- GCC on Linux x64
- GCC on FreeBSD x64
- GCC or Clang on Linux x64
- Clang or GCC on FreeBSD x64
@TODO: prevent UNICODE and _UNICODE from being #define'd with premake
@TODO: enable Minimal Rebuild from premake (instead of adding /Gm)
@ -72,15 +72,15 @@ local function WIN_CreateShaderPreBuildCommand(name, shaderType, version, option
release = "/O3"
}
local fxc_path = "\"$(DXSDK_DIR)Utilities\\bin\\x86\\fxc.exe\""
local fxc_path = "..\\compile_shader.cmd"
local extra_options = "%{extra_fxc_options_map[cfg.buildcfg]}"..options
local name_suffix = suffix
local target = string.format("%s_%s", shaderType, version)
local entry_point = string.format("%s_main", shaderType)
local var_name = string.format("g_%s%s_%s", name, name_suffix, shaderType)
local abs_path_hlsl = os.realpath(path_src.."\\renderer\\hlsl")
local input_file_name = string.format("%s\\%s.hlsl", abs_path_hlsl, name)
local output_file_name = string.format("%s\\%s%s_%s.h", abs_path_hlsl, name, name_suffix, shaderType)
local path_hlsl = string.format("%s\\renderer\\hlsl", path.translate(make_path_src))
local input_file_name = string.format("%s\\%s.hlsl", path_hlsl, name)
local output_file_name = string.format("%s\\%s%s_%s.h", path_hlsl, name, name_suffix, shaderType)
return string.format("%s %s /nologo /T %s /E %s /Vn %s /Fh %s %s", fxc_path, input_file_name, target, entry_point, var_name, output_file_name, extra_options)
@ -475,8 +475,11 @@ local function ApplyExeProjectSettings(exeName, server)
filter { }
if os.is("windows") then
prebuildcommands { path.translate(CreateGitPreBuildCommand(".cmd"), "\\") }
postbuildcommands { path.translate(CreateExeCopyPostBuildCommand("copy", exeName, ".exe"), "\\") }
postbuildcommands { path.translate(WIN_CreatePdbCopyPostBuildCommand(exeName), "\\") }
postbuildcommands
{
path.translate(CreateExeCopyPostBuildCommand("copy", exeName, ".exe"), "\\"),
path.translate(WIN_CreatePdbCopyPostBuildCommand(exeName), "\\")
}
else
prebuildcommands { CreateGitPreBuildCommand(".sh") }
postbuildcommands { string.format("if [ -n \"$$%s\" ]; then %s; fi",
@ -752,20 +755,26 @@ solution "cnq3"
buildoptions { "-std=c++98" }
if os.is("windows") then
filter "action:vs*"
prebuildcommands { WIN_CreateShaderPreBuildCommand("generic", "vs", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", " /DCNQ3_A2C=1", "_a") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", " /DCNQ3_DITHER=1", "_d") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", " /DCNQ3_A2C=1 /DCNQ3_DITHER=1", "_ad") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("post", "vs", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("post", "ps", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("dl", "vs", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("dl", "ps", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("sprite", "vs", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("sprite", "ps", "4_1", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("mip_start", "cs", "5_0", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("mip_pass", "cs", "5_0", "", "") }
prebuildcommands { WIN_CreateShaderPreBuildCommand("mip_end", "cs", "5_0", "", "") }
local commands =
{
WIN_CreateShaderPreBuildCommand("generic", "vs", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", " /DCNQ3_A2C=1", "_a"),
WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", " /DCNQ3_DITHER=1", "_d"),
WIN_CreateShaderPreBuildCommand("generic", "ps", "4_1", " /DCNQ3_A2C=1 /DCNQ3_DITHER=1", "_ad"),
WIN_CreateShaderPreBuildCommand("post", "vs", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("post", "ps", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("dl", "vs", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("dl", "ps", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("sprite", "vs", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("sprite", "ps", "4_1", "", ""),
WIN_CreateShaderPreBuildCommand("mip_start", "cs", "5_0", "", ""),
WIN_CreateShaderPreBuildCommand("mip_pass", "cs", "5_0", "", ""),
WIN_CreateShaderPreBuildCommand("mip_end", "cs", "5_0", "", "")
}
-- premake doesn't want to spit one Command XML element per pre-build command
-- we generate a full single-line batch command to get around that in the saddest way...
prebuildcommands { table.concat(commands, " && ") }
end
project "libjpeg-turbo"

View file

@ -117,20 +117,7 @@
<AdditionalOptions> %(AdditionalOptions)</AdditionalOptions>
</Lib>
<PreBuildEvent>
<Command>"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_a_ps.h /O0 /Zi /DCNQ3_A2C=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_d_ps.h /O0 /Zi /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ad_ps.h /O0 /Zi /DCNQ3_A2C=1 /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start_cs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass_cs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end_cs.h /O0 /Zi</Command>
<Command>..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh ..\..\code\renderer\hlsl\generic_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh ..\..\code\renderer\hlsl\generic_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh ..\..\code\renderer\hlsl\generic_a_ps.h /O0 /Zi /DCNQ3_A2C=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh ..\..\code\renderer\hlsl\generic_d_ps.h /O0 /Zi /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh ..\..\code\renderer\hlsl\generic_ad_ps.h /O0 /Zi /DCNQ3_A2C=1 /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh ..\..\code\renderer\hlsl\post_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh ..\..\code\renderer\hlsl\post_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh ..\..\code\renderer\hlsl\dl_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh ..\..\code\renderer\hlsl\dl_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh ..\..\code\renderer\hlsl\sprite_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh ..\..\code\renderer\hlsl\sprite_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh ..\..\code\renderer\hlsl\mip_start_cs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh ..\..\code\renderer\hlsl\mip_pass_cs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh ..\..\code\renderer\hlsl\mip_end_cs.h /O0 /Zi</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='debug|Win32'">
@ -155,20 +142,7 @@
<AdditionalOptions> %(AdditionalOptions)</AdditionalOptions>
</Lib>
<PreBuildEvent>
<Command>"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_a_ps.h /O0 /Zi /DCNQ3_A2C=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_d_ps.h /O0 /Zi /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ad_ps.h /O0 /Zi /DCNQ3_A2C=1 /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_vs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_ps.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start_cs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass_cs.h /O0 /Zi
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end_cs.h /O0 /Zi</Command>
<Command>..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh ..\..\code\renderer\hlsl\generic_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh ..\..\code\renderer\hlsl\generic_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh ..\..\code\renderer\hlsl\generic_a_ps.h /O0 /Zi /DCNQ3_A2C=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh ..\..\code\renderer\hlsl\generic_d_ps.h /O0 /Zi /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh ..\..\code\renderer\hlsl\generic_ad_ps.h /O0 /Zi /DCNQ3_A2C=1 /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh ..\..\code\renderer\hlsl\post_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh ..\..\code\renderer\hlsl\post_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh ..\..\code\renderer\hlsl\dl_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh ..\..\code\renderer\hlsl\dl_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh ..\..\code\renderer\hlsl\sprite_vs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh ..\..\code\renderer\hlsl\sprite_ps.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh ..\..\code\renderer\hlsl\mip_start_cs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh ..\..\code\renderer\hlsl\mip_pass_cs.h /O0 /Zi &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh ..\..\code\renderer\hlsl\mip_end_cs.h /O0 /Zi</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|x64'">
@ -203,20 +177,7 @@
<AdditionalOptions> %(AdditionalOptions)</AdditionalOptions>
</Lib>
<PreBuildEvent>
<Command>"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_a_ps.h /O3 /DCNQ3_A2C=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_d_ps.h /O3 /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ad_ps.h /O3 /DCNQ3_A2C=1 /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start_cs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass_cs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end_cs.h /O3</Command>
<Command>..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh ..\..\code\renderer\hlsl\generic_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh ..\..\code\renderer\hlsl\generic_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh ..\..\code\renderer\hlsl\generic_a_ps.h /O3 /DCNQ3_A2C=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh ..\..\code\renderer\hlsl\generic_d_ps.h /O3 /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh ..\..\code\renderer\hlsl\generic_ad_ps.h /O3 /DCNQ3_A2C=1 /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh ..\..\code\renderer\hlsl\post_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh ..\..\code\renderer\hlsl\post_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh ..\..\code\renderer\hlsl\dl_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh ..\..\code\renderer\hlsl\dl_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh ..\..\code\renderer\hlsl\sprite_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh ..\..\code\renderer\hlsl\sprite_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh ..\..\code\renderer\hlsl\mip_start_cs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh ..\..\code\renderer\hlsl\mip_pass_cs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh ..\..\code\renderer\hlsl\mip_end_cs.h /O3</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='release|Win32'">
@ -252,20 +213,7 @@
<AdditionalOptions> %(AdditionalOptions)</AdditionalOptions>
</Lib>
<PreBuildEvent>
<Command>"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_a_ps.h /O3 /DCNQ3_A2C=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_d_ps.h /O3 /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\generic_ad_ps.h /O3 /DCNQ3_A2C=1 /DCNQ3_DITHER=1
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\post_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\dl_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_vs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\sprite_ps.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_start_cs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_pass_cs.h /O3
"$(DXSDK_DIR)Utilities\bin\x86\fxc.exe" C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh C:\Code\cpma_dev\cnq3\code\renderer\hlsl\mip_end_cs.h /O3</Command>
<Command>..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_generic_vs /Fh ..\..\code\renderer\hlsl\generic_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ps /Fh ..\..\code\renderer\hlsl\generic_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_a_ps /Fh ..\..\code\renderer\hlsl\generic_a_ps.h /O3 /DCNQ3_A2C=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_d_ps /Fh ..\..\code\renderer\hlsl\generic_d_ps.h /O3 /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\generic.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_generic_ad_ps /Fh ..\..\code\renderer\hlsl\generic_ad_ps.h /O3 /DCNQ3_A2C=1 /DCNQ3_DITHER=1 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_post_vs /Fh ..\..\code\renderer\hlsl\post_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\post.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_post_ps /Fh ..\..\code\renderer\hlsl\post_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_dl_vs /Fh ..\..\code\renderer\hlsl\dl_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\dl.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_dl_ps /Fh ..\..\code\renderer\hlsl\dl_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T vs_4_1 /E vs_main /Vn g_sprite_vs /Fh ..\..\code\renderer\hlsl\sprite_vs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\sprite.hlsl /nologo /T ps_4_1 /E ps_main /Vn g_sprite_ps /Fh ..\..\code\renderer\hlsl\sprite_ps.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_start.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_start_cs /Fh ..\..\code\renderer\hlsl\mip_start_cs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_pass.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_pass_cs /Fh ..\..\code\renderer\hlsl\mip_pass_cs.h /O3 &amp;&amp; ..\compile_shader.cmd ..\..\code\renderer\hlsl\mip_end.hlsl /nologo /T cs_5_0 /E cs_main /Vn g_mip_end_cs /Fh ..\..\code\renderer\hlsl\mip_end_cs.h /O3</Command>
</PreBuildEvent>
</ItemDefinitionGroup>
<ItemGroup>