346 lines
8.5 KiB
Python
346 lines
8.5 KiB
Python
#! /usr/bin/env python
|
|
# encoding: utf-8
|
|
|
|
from waflib import Utils
|
|
import os
|
|
|
|
top = '.'
|
|
PROJECT_NAME = 'stdshader_'
|
|
|
|
def options(opt):
|
|
# stub
|
|
return
|
|
|
|
def configure(conf):
|
|
return
|
|
|
|
def build(bld):
|
|
source_dx9 = [
|
|
'aftershock.cpp',
|
|
'aftershock_helper.cpp',
|
|
'AccumBuff4Sample.cpp',
|
|
'accumbuff5sample.cpp',
|
|
'BaseVSShader.cpp',
|
|
'bik_dx90.cpp',
|
|
'Bloom.cpp',
|
|
'BlurFilterX.cpp',
|
|
'BlurFilterY.cpp',
|
|
'BufferClearObeyStencil_dx9.cpp',
|
|
'cable_dx9.cpp',
|
|
'cloak.cpp',
|
|
'cloak_blended_pass_helper.cpp',
|
|
'cloak_dx9_helper.cpp',
|
|
'cloud_dx9.cpp',
|
|
'colorcorrection.cpp',
|
|
'compositor.cpp',
|
|
'core_dx9.cpp',
|
|
'color_projection.cpp',
|
|
'debugmrttexture.cpp',
|
|
#'debugmorphaccumulator_dx9.cpp', [$WIN32]
|
|
'DebugTextureView.cpp',
|
|
'DecalBaseTimesLightmapAlphaBlendSelfIllum_dx9.cpp',
|
|
'DecalModulate_dx9.cpp',
|
|
'depthwrite.cpp',
|
|
'Downsample.cpp',
|
|
'downsample_nohdr.cpp',
|
|
'Engine_Post_dx9.cpp',
|
|
'emissive_scroll_blended_pass_helper.cpp',
|
|
'eye_refract.cpp',
|
|
'eye_refract_helper.cpp',
|
|
'eyes_dx8_dx9_helper.cpp',
|
|
'eyes_dx9.cpp',
|
|
'eyeglint_dx9.cpp',
|
|
'filmdust_dx8_dx9.cpp',
|
|
'filmgrain_dx8_dx9.cpp',
|
|
'flesh_interior_blended_pass_helper.cpp',
|
|
'floatcombine.cpp',
|
|
'floatcombine_autoexpose.cpp',
|
|
'floattoscreen.cpp',
|
|
'floattoscreen_vanilla.cpp',
|
|
'HDRCombineTo16Bit.cpp',
|
|
'HDRSelectRange.cpp',
|
|
'hsl_filmgrain_pass1.cpp',
|
|
'hsl_filmgrain_pass2.cpp',
|
|
'hsv.cpp',
|
|
'introscreenspaceeffect.cpp',
|
|
'lightmappedgeneric_dx9.cpp',
|
|
'lightmappedgeneric_dx9_helper.cpp',
|
|
'lightmappedreflective.cpp',
|
|
'modulate_dx9.cpp',
|
|
'MonitorScreen_dx9.cpp',
|
|
#'morphaccumulate_dx9.cpp', [$WIN32]
|
|
#'morphweight_dx9.cpp', [$WIN32]
|
|
'motion_blur_dx9.cpp',
|
|
'occlusion_dx9.cpp',
|
|
'particlelitgeneric_dx9.cpp',
|
|
'particlelitgeneric_dx9_helper.cpp',
|
|
'particlesphere_dx9.cpp',
|
|
'pbr_dx9.cpp',
|
|
'portal.cpp',
|
|
'portalstaticoverlay.cpp',
|
|
'portal_refract.cpp',
|
|
'portal_refract_helper.cpp',
|
|
'pyro_vision.cpp',
|
|
'refract.cpp',
|
|
'refract_dx9_helper.cpp',
|
|
#'rendertargetblit_x360.cpp', [$X360]
|
|
'sample4x4.cpp',
|
|
'sample4x4_blend.cpp',
|
|
'screenspace_general.cpp',
|
|
'sfm_blurfilterx.cpp',
|
|
'sfm_blurfiltery.cpp',
|
|
'sfm_downsample.cpp',
|
|
'sfm_integercombine.cpp',
|
|
'shadow.cpp',
|
|
'shadowbuild_dx9.cpp',
|
|
'shadowmodel_dx9.cpp',
|
|
'shatteredglass.cpp',
|
|
'showz.cpp',
|
|
'skin_dx9_helper.cpp',
|
|
'sky_dx9.cpp',
|
|
'sky_hdr_dx9.cpp',
|
|
'sprite_dx9.cpp',
|
|
'spritecard.cpp',
|
|
'teeth.cpp',
|
|
'TreeLeaf.cpp',
|
|
'unlitgeneric_dx9.cpp',
|
|
'unlittwotexture_dx9.cpp',
|
|
'vertexlitgeneric_dx9.cpp',
|
|
'vertexlitgeneric_dx9_helper.cpp',
|
|
'volume_clouds.cpp',
|
|
'volume_clouds_helper.cpp',
|
|
'vortwarp_dx9.cpp',
|
|
'vr_distort_hud.cpp',
|
|
'vr_distort_texture.cpp',
|
|
'warp.cpp',
|
|
'water.cpp',
|
|
'weapon_sheen_pass_helper.cpp',
|
|
'windowimposter_dx90.cpp',
|
|
'wireframe_dx9.cpp',
|
|
'worldtwotextureblend.cpp',
|
|
'worldvertexalpha.cpp',
|
|
'worldvertextransition.cpp',
|
|
'worldvertextransition_dx8_helper.cpp',
|
|
'writez_dx9.cpp',
|
|
'writestencil_dx9.cpp',
|
|
'eyeball.cpp',
|
|
'../../public/tier0/memoverride.cpp'
|
|
# $Folder 'stdshader_dbg Files', [$X360]
|
|
# {
|
|
# 'debugdepth.cpp',
|
|
# 'DebugDrawEnvmapMask.cpp',
|
|
# 'debugluxel.cpp',
|
|
# 'debugnormalmap.cpp',
|
|
# 'debugtangentspace.cpp',
|
|
# 'fillrate.cpp',
|
|
|
|
]
|
|
|
|
source_dx8 = [
|
|
'BaseVSShader.cpp',
|
|
'BlurFilterX_dx80.cpp',
|
|
'bik_dx80.cpp',
|
|
'bik_dx81.cpp',
|
|
'BlurFilterY_dx80.cpp',
|
|
'BufferClearObeyStencil_dx8.cpp',
|
|
'cable_dx8.cpp',
|
|
'cloak_blended_pass_dx8_helper.cpp',
|
|
'cloud_dx8.cpp',
|
|
'core_dx8.cpp',
|
|
'DecalBaseTimesLightmapAlphaBlendSelfIllum_dx8.cpp',
|
|
'detail.cpp',
|
|
'downsample_nohdr_dx80.cpp',
|
|
'dx8fallbacks.cpp',
|
|
'eyes.cpp',
|
|
'emissive_scroll_blended_pass_dx8_helper.cpp',
|
|
'flesh_interior_blended_pass_dx8_helper.cpp',
|
|
'eyes_dx8_dx9_helper.cpp',
|
|
'filmdust_dx8_dx9.cpp',
|
|
'filmgrain_dx8_dx9.cpp',
|
|
'gooinglass.cpp',
|
|
'introscreenspaceeffect_dx80.cpp',
|
|
'lightmappedgeneric_decal.cpp',
|
|
'lightmappedgeneric_dx8.cpp',
|
|
'modulate_dx8.cpp',
|
|
'MonitorScreen_dx8.cpp',
|
|
'occlusion_dx8.cpp',
|
|
'overlay_fit.cpp',
|
|
'particlesphere_dx8.cpp',
|
|
'portal_dx80.cpp',
|
|
'portal_refract_dx8.cpp',
|
|
'portal_refract_dx8_helper.cpp',
|
|
'portalstaticoverlay_dx80.cpp',
|
|
'predator.cpp',
|
|
'refract_dx80.cpp',
|
|
'screenspace_general_dx8.cpp',
|
|
'shadow_dx8.cpp',
|
|
'shadowbuild_dx8.cpp',
|
|
'shadowmodel_dx8.cpp',
|
|
'shatteredglass_dx8.cpp',
|
|
'sprite.cpp',
|
|
'spritecard.cpp',
|
|
'teeth_dx8.cpp',
|
|
'unlitgeneric_dx8.cpp',
|
|
'unlittwotexture_dx8.cpp',
|
|
'vertexlitgeneric_dx8.cpp',
|
|
'vortwarp_dx8.cpp',
|
|
'water_dx80.cpp',
|
|
'water_dx81.cpp',
|
|
'windowimposter_dx80.cpp',
|
|
'wireframe_dx8.cpp',
|
|
'worldtwotextureblend_dx8.cpp',
|
|
'worldvertexalpha_dx8.cpp',
|
|
'WorldVertexTransition_dx8.cpp',
|
|
'worldvertextransition_dx8_helper.cpp',
|
|
'writez_dx8.cpp',
|
|
'writestencil_dx8.cpp',
|
|
'yuv.cpp',
|
|
'../../public/tier0/memoverride.cpp'
|
|
]
|
|
|
|
source_dx7 = [
|
|
'core_dx7.cpp',
|
|
'filmdust_dx7.cpp',
|
|
'filmgrain_dx7.cpp',
|
|
'shatteredglass_dx7.cpp',
|
|
'vertexlitgeneric_dx7.cpp',
|
|
'vortwarp_dx7.cpp',
|
|
'../../public/tier0/memoverride.cpp'
|
|
]
|
|
|
|
source_dx6 = [
|
|
'BufferClearObeyStencil_dx6.cpp',
|
|
'cable_dx6.cpp',
|
|
'cloud.cpp',
|
|
'decal.cpp',
|
|
'DecalBaseTimesLightmapAlphaBlendSelfIllum_dx6.cpp',
|
|
'decalmodulate.cpp',
|
|
'eyeball.cpp',
|
|
'eyes_dx6.cpp',
|
|
'introscreenspaceeffect_dx60.cpp',
|
|
'lightmappedgeneric_dx6.cpp',
|
|
'lightmappedtwotexture.cpp',
|
|
'modulate_dx6.cpp',
|
|
'portal_dx60.cpp',
|
|
'portalstaticoverlay_dx60.cpp',
|
|
'refract_dx60.cpp',
|
|
'rift_dx6.cpp',
|
|
'SetZ.cpp',
|
|
'shadow_dx6.cpp',
|
|
'shadowbuild_dx6.cpp',
|
|
'sky_dx6.cpp',
|
|
'sprite_dx6.cpp',
|
|
'teeth_dx6.cpp',
|
|
'unlitgeneric_dx6.cpp',
|
|
'unlittwotexture_dx6.cpp',
|
|
'vertexlitgeneric_dx6.cpp',
|
|
'viewalpha.cpp',
|
|
'volumetricfog.cpp',
|
|
'water_dx60.cpp',
|
|
'worldtwotextureblend_dx6.cpp',
|
|
'worldvertextransition_dx6.cpp',
|
|
'worldvertextransition_dx6_helper.cpp',
|
|
'writez_dx6.cpp',
|
|
'../../public/tier0/memoverride.cpp'
|
|
]
|
|
|
|
source_dbg = [
|
|
'BaseVSShader.cpp',
|
|
'debugdepth.cpp',
|
|
'DebugDrawEnvmapMask.cpp',
|
|
'debugluxel.cpp',
|
|
'debugnormalmap.cpp',
|
|
'debugtangentspace.cpp',
|
|
'fillrate.cpp',
|
|
]
|
|
|
|
includes = [
|
|
'.',
|
|
'../../public',
|
|
'../../public/tier0',
|
|
'../../public/tier1',
|
|
'../../dx9sdk/include',
|
|
'fxctmp9',
|
|
'vshtmp9',
|
|
'fxctmp9_360',
|
|
'vshtmp9_360'
|
|
] + bld.env.INCLUDES_SDL2
|
|
|
|
defines_dx9 = ['STDSHADER_DX9_DLL_EXPORT', 'FAST_MATERIALVAR_ACCESS']
|
|
defines_dx8 = ['STDSHADER_DX8_DLL_EXPORT', 'FAST_MATERIALVAR_ACCESS']
|
|
defines_dx7 = ['STDSHADER_DX7_DLL_EXPORT', 'FAST_MATERIALVAR_ACCESS']
|
|
defines_dx6 = ['STDSHADER_DX6_DLL_EXPORT', 'FAST_MATERIALVAR_ACCESS']
|
|
defines_dbg = ['STDSHADER_DBG_DLL_EXPORT', 'FAST_MATERIALVAR_ACCESS']
|
|
|
|
libs = ['tier0','shaderlib','tier1','mathlib']
|
|
|
|
if bld.env.DEST_OS == 'android':
|
|
libs += ['ANDROID_SUPPORT']
|
|
|
|
install_path = bld.env.LIBDIR
|
|
|
|
bld.shlib(
|
|
source = source_dx9,
|
|
target = PROJECT_NAME + 'dx9',
|
|
name = PROJECT_NAME + 'dx9',
|
|
features = 'c cxx',
|
|
includes = includes,
|
|
defines = defines_dx9,
|
|
use = libs,
|
|
install_path = install_path,
|
|
subsystem = bld.env.MSVC_SUBSYSTEM,
|
|
idx = bld.get_taskgen_count()
|
|
)
|
|
|
|
# bld.shlib(
|
|
# source = source_dx8,
|
|
# target = PROJECT_NAME + 'dx8',
|
|
# name = PROJECT_NAME + 'dx8',
|
|
# features = 'c cxx',
|
|
# includes = includes,
|
|
# defines = defines_dx8,
|
|
# use = libs,
|
|
# install_path = install_path,
|
|
# subsystem = bld.env.MSVC_SUBSYSTEM,
|
|
# idx = bld.get_taskgen_count()
|
|
# )
|
|
|
|
# bld.shlib(
|
|
# source = source_dx7,
|
|
# target = PROJECT_NAME + 'dx7',
|
|
# name = PROJECT_NAME + 'dx7',
|
|
# features = 'c cxx',
|
|
# includes = includes,
|
|
# defines = defines_dx7,
|
|
# use = libs,
|
|
# install_path = install_path,
|
|
# subsystem = bld.env.MSVC_SUBSYSTEM,
|
|
# idx = bld.get_taskgen_count()
|
|
# )
|
|
|
|
# TODO_ENHANCED(xutaxkamay):
|
|
# bld.shlib(
|
|
# source = source_dx6,
|
|
# target = PROJECT_NAME + 'dx6',
|
|
# name = PROJECT_NAME + 'dx6',
|
|
# features = 'c cxx',
|
|
# includes = includes,
|
|
# defines = defines_dx6,
|
|
# use = libs,
|
|
# install_path = install_path,
|
|
# subsystem = bld.env.MSVC_SUBSYSTEM,
|
|
# idx = bld.get_taskgen_count()
|
|
# )
|
|
|
|
bld.shlib(
|
|
source = source_dbg,
|
|
target = PROJECT_NAME + 'dbg',
|
|
name = PROJECT_NAME + 'dbg',
|
|
features = 'c cxx',
|
|
includes = includes,
|
|
defines = defines_dbg,
|
|
use = libs,
|
|
install_path = install_path,
|
|
subsystem = bld.env.MSVC_SUBSYSTEM,
|
|
idx = bld.get_taskgen_count()
|
|
)
|