#! /usr/bin/env python # encoding: utf-8 # a1batross, mittorn, 2018 from waflib import Utils import os def options(opt): opt.load('vgui') def configure(conf): conf.env.INCLUDES_SDL = ['../external/SDL2'] conf.env.LIBPATH_SDL = ['../linux'] conf.env.LIB_SDL = ['SDL2'] conf.define('GOLDSOURCE_SUPPORT', 1) conf.load('vgui') if not conf.check_vgui(): conf.fatal('VGUI was enabled but VGUI cannot be used') def build(bld): libs = ['VGUI', 'SDL', 'DL', 'M'] defines = ['CLIENT_DLL'] includes = ['.', '../dlls', '../common', '../engine', '../pm_shared', '../game_shared', '../public', '../external/SDL2'] source = [ './ev_thewastes.cpp', './thewastes/hl_baseentity.cpp', './thewastes/hl_events.cpp', './thewastes/hl_objects.cpp', './thewastes/hl_weapons.cpp', '../common/interface.cpp', '../dlls/thewastes.cpp', '../dlls/wpn_shared/tw_akimbos.cpp', '../dlls/wpn_shared/tw_automatics.cpp', '../dlls/wpn_shared/tw_explosives.cpp', '../dlls/wpn_shared/tw_melee.cpp', '../dlls/wpn_shared/tw_shotguns.cpp', '../dlls/wpn_shared/tw_sidearms.cpp', '../game_shared/vgui_scrollbar2.cpp', '../game_shared/vgui_slider2.cpp', '../game_shared/voice_banmgr.cpp', '../game_shared/voice_status.cpp', '../game_shared/voice_vgui_tweakdlg.cpp', './ammo.cpp', './ammo_secondary.cpp', './ammohistory.cpp', './cdll_int.cpp', './com_weapons.cpp', './death.cpp', './demo.cpp', './entity.cpp', './env_fog.cpp', './ev_common.cpp', './events.cpp', './flashlight.cpp', './GameStudioModelRenderer.cpp', './geiger.cpp', './health.cpp', './hud.cpp', './hud_msg.cpp', './hud_redraw.cpp', './hud_servers.cpp', './hud_spectator.cpp', './hud_update.cpp', './in_camera.cpp', './input.cpp', './input_mouse.cpp', './input_goldsource.cpp', './input_xash3d.cpp', './menu.cpp', './message.cpp', './parsebsp.cpp', './ParseBspEnt.cpp', './parsemsg.cpp', './ParticleBase.cpp', '../pm_shared/pm_debug.c', '../pm_shared/pm_math.c', '../pm_shared/pm_shared.c', './saytext.cpp', './status_icons.cpp', './statusbar.cpp', './studio_util.cpp', './studioevent.cpp', './StudioModelRenderer.cpp', './text_message.cpp', './thewastes_hud.cpp', './train.cpp', './tri.cpp', './twm.cpp', './util.cpp', '../game_shared/vgui_checkbutton2.cpp', './vgui_ConsolePanel.cpp', './vgui_ControlConfigPanel.cpp', './vgui_CustomObjects.cpp', '../game_shared/vgui_grid.cpp', '../game_shared/vgui_helpers.cpp', './vgui_int.cpp', './vgui_ItemSelection.cpp', '../game_shared/vgui_listbox.cpp', '../game_shared/vgui_loadtga.cpp', './vgui_MOTDWindow.cpp', './vgui_SchemeManager.cpp', './vgui_ScorePanel.cpp', './vgui_ServerBrowser.cpp', './vgui_teammenu.cpp', './vgui_TheWastesViewport.cpp', './view.cpp', ] if bld.env.DEST_OS not in ['android', 'dos']: install_path = os.path.join(bld.env.GAMEDIR, bld.env.CLIENT_INSTALL_DIR) else: install_path = bld.env.PREFIX bld.shlib( source = source, target = 'client' + bld.env.POSTFIX, name = 'client', features = 'c cxx', includes = includes, defines = defines, use = libs, install_path = install_path, subsystem = bld.env.MSVC_SUBSYSTEM, idx = bld.get_taskgen_count() )