# vim: set sts=2 ts=8 sw=2 tw=99 et ft=python: import os project = SM.HL2Project(builder, 'sdktools.ext') project.sources += [ 'extension.cpp', 'variant-t.cpp', 'inputnatives.cpp', 'output.cpp', 'outputnatives.cpp', 'tempents.cpp', 'tenatives.cpp', 'teamnatives.cpp', 'trnatives.cpp', 'vcaller.cpp', 'vcallbuilder.cpp', 'vdecoder.cpp', 'vglobals.cpp', 'vhelpers.cpp', 'vnatives.cpp', 'voice.cpp', 'vsound.cpp', 'clientnatives.cpp', 'hooks.cpp', 'gamerulesnatives.cpp', 'vstringtable.cpp', '../../public/smsdk_ext.cpp', '../../public/CDetour/detours.cpp', '../../public/asm/asm.c', '../../public/libudis86/decode.c', '../../public/libudis86/itab.c', '../../public/libudis86/syn-att.c', '../../public/libudis86/syn-intel.c', '../../public/libudis86/syn.c', '../../public/libudis86/udis86.c', ] project.compiler.defines += ['HAVE_STRING_H']; for sdk_name in SM.sdks: sdk = SM.sdks[sdk_name] for arch in SM.archs: if not arch in sdk.platformSpec[builder.target.platform]: continue binary = SM.HL2Config(project, 'sdktools.ext.' + sdk.ext, sdk, arch) binary.compiler.cxxincludes += [ os.path.join(sdk.path, 'game', 'shared'), os.path.join(builder.sourcePath, 'public', 'jit'), os.path.join(builder.sourcePath, 'public', 'jit', 'x86'), ] if sdk.name != 'episode1': binary.compiler.defines += ['HOOKING_ENABLED'] if binary.compiler.behavior == 'gcc': binary.compiler.cxxflags += ['-Wno-invalid-offsetof'] SM.extensions += builder.Add(project)