halflife-thewastes-sdk/dlls/wscript

109 lines
2.2 KiB
Python

#! /usr/bin/env python
# encoding: utf-8
# a1batross, mittorn, 2018
from waflib import Utils
import os
def options(opt):
return
def configure(conf):
if conf.env.COMPILER_CC == 'msvc':
# hl.def removes MSVC function name decoration from GiveFnptrsToDll on Windows.
# Without this, the lookup for this function fails.
hlDefNode = conf.path.find_resource("./thewastes.def")
if hlDefNode is not None:
conf.env.append_value('LINKFLAGS', '/def:%s' % hlDefNode.abspath())
else:
conf.fatal("Could not find hl.def")
def build(bld):
source = [
'./animating.cpp',
'./animation.cpp',
'./bmodels.cpp',
'./buttons.cpp',
'./cbase.cpp',
'./client.cpp',
'./combat.cpp',
'./doors.cpp',
'./effects.cpp',
'./explode.cpp',
'./func_break.cpp',
'./func_tank.cpp',
'./game.cpp',
'./game_deathmatch.cpp',
'./game_lastmanstanding.cpp',
'./game_singleplay.cpp',
'./game_teamplay.cpp',
'./gamerules.cpp',
'./ggrenade.cpp',
'./globals.cpp',
'./h_ai.cpp',
'./h_cycler.cpp',
'./h_export.cpp',
'./items.cpp',
'./lights.cpp',
'./maprules.cpp',
'./monsters.cpp',
'./mortar.cpp',
'./nodes.cpp',
'./observer.cpp',
'./pathcorner.cpp',
'./plane.cpp',
'./plats.cpp',
'./player.cpp',
'../pm_shared/pm_debug.c',
'../pm_shared/pm_math.c',
'../pm_shared/pm_shared.c',
'./schedule.cpp',
'./scripted.cpp',
'./skill.cpp',
'./sound.cpp',
'./soundent.cpp',
'./spectator.cpp',
'./subs.cpp',
'./thewastes.cpp',
'./triggers.cpp',
'./turret.cpp',
'./wpn_shared/tw_akimbos.cpp',
'./wpn_shared/tw_automatics.cpp',
'./wpn_shared/tw_explosives.cpp',
'./wpn_shared/tw_melee.cpp',
'./wpn_shared/tw_shotguns.cpp',
'./wpn_shared/tw_sidearms.cpp',
'./util.cpp',
'../game_shared/voice_gamemgr.cpp',
'./weapons.cpp',
'./world.cpp',
]
defines = []
includes = [
'.',
'../common',
'../engine',
'../pm_shared',
'../game_shared',
'../public'
]
if bld.env.DEST_OS not in ['android', 'dos']:
install_path = os.path.join(bld.env.GAMEDIR, bld.env.SERVER_INSTALL_DIR)
else:
install_path = bld.env.PREFIX
bld.shlib(
source = source,
target = bld.env.SERVER_LIBRARY_NAME + bld.env.POSTFIX,
name = 'server',
features = 'c cxx',
includes = includes,
defines = defines,
install_path = install_path,
subsystem = bld.env.MSVC_SUBSYSTEM,
idx = bld.get_taskgen_count()
)