source-engine/game/client/wscript

95 lines
1.9 KiB
Plaintext
Raw Normal View History

#! /usr/bin/env python
# encoding: utf-8
from waflib import Utils
import os
2021-11-16 20:46:29 +00:00
import vpc_parser
top = '.'
PROJECT_NAME = 'client'
def options(opt):
return
2021-11-16 20:46:29 +00:00
games = {
'hl2': ['client_base.vpc', 'client_hl2.vpc'],
'hl2mp': ['client_base.vpc', 'client_hl2mp.vpc'],
'hl1': ['client_base.vpc', 'client_hl1.vpc'],
'episodic': ['client_base.vpc', 'client_episodic.vpc'],
2021-11-16 20:46:29 +00:00
'portal': ['client_base.vpc', 'client_portal.vpc'],
2022-05-15 18:09:59 +00:00
'hl1mp': ['client_base.vpc', 'client_hl1mp.vpc'],
'cstrike': ['client_base.vpc', 'client_cstrike.vpc'],
2021-11-16 20:46:29 +00:00
'dod': ['client_base.vpc', 'client_dod.vpc']
}
def configure(conf):
2021-11-16 20:46:29 +00:00
game = conf.options.GAMES
conf.env.GAMES = game
conf.env.append_unique('DEFINES', ['DISABLE_STEAM=1'])
2021-11-16 20:46:29 +00:00
if game not in games.keys():
conf.fatal("Couldn't find game: ", game)
def build(bld):
2021-11-16 20:46:29 +00:00
game = vpc_parser.parse_vpcs( bld.env, games[bld.env.GAMES], '../..' )
includes = [
'.',
'game_controls',
'../../common',
'../../public',
'../../public/tier0',
'../../public/tier1',
'../../vgui2/include',
'../../vgui2/controls',
'../shared'
]
libs = [
'tier0',
'particles',
'dmxloader',
'vgui_controls',
'matsys_controls',
'tier1',
'tier2',
'tier3',
'mathlib',
'vstdlib',
'choreoobjects',
'steam_api',
'bitmap',
'vtf',
2021-11-16 20:46:29 +00:00
'RT',
'ZLIB'
]
install_path = bld.env.PREFIX
if bld.env.DEST_OS != 'android':
2022-01-09 16:58:08 +00:00
install_path += '/'+bld.env.GAMES+'/bin'
source = [ 'in_touch.cpp' ]
2022-03-19 12:40:11 +00:00
if bld.env.DEST_OS == 'win32':
libs += ['USER32']
2021-11-16 20:46:29 +00:00
source += game["sources"] + ['../../public/tier0/memoverride.cpp']
2021-11-16 20:46:29 +00:00
includes += game["includes"]
defines = game["defines"]
defines.remove('PROTECTED_THINGS_ENABLE')
bld.shlib(
source = source,
target = PROJECT_NAME,
name = PROJECT_NAME,
features = 'c cxx',
includes = includes,
defines = defines,
use = libs,
install_path = install_path,
subsystem = bld.env.MSVC_SUBSYSTEM,
idx = bld.get_taskgen_count()
)