forked from jensewe/custom_fakelag
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAMBuilder
More file actions
60 lines (48 loc) · 2.1 KB
/
AMBuilder
File metadata and controls
60 lines (48 loc) · 2.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# vim: set sts=2 ts=8 sw=2 tw=99 et ft=python:
import os, sys
projectName = 'custom_fakelag'
# smsdk_ext.cpp will be automatically added later
sourceFiles = [
'extension.cpp',
'wrappers.cpp',
'NET_LagPacket_Detour.cpp',
"net_ws_queued_packet_sender.cpp",
'LagSystem.cpp',
'PlayerLagManager.cpp',
# 'CDetour/detours.cpp',
# 'asm/asm.c',
# ] + list(map(lambda x : 'libudis86/' + x, ['decode.c', 'itab.c', 'syn-att.c', 'syn-intel.c', 'syn.c', 'udis86.c']))
]
# SM 1.10+ compilation changes
if os.path.isfile(os.path.join(Extension.sm_root, 'public', 'libudis86', 'decode.c')):
sourceFiles += [
os.path.join(Extension.sm_root, 'public', 'libudis86', 'decode.c'),
os.path.join(Extension.sm_root, 'public', 'libudis86', 'itab.c'),
os.path.join(Extension.sm_root, 'public', 'libudis86', 'syn-att.c'),
os.path.join(Extension.sm_root, 'public', 'libudis86', 'syn-intel.c'),
os.path.join(Extension.sm_root, 'public', 'libudis86', 'syn.c'),
os.path.join(Extension.sm_root, 'public', 'libudis86', 'udis86.c')
]
###############
# Make sure to edit PackageScript, which copies your files to their appropriate locations
# Simple extensions do not need to modify past this point.
project = builder.LibraryProject(projectName + '.ext')
if os.path.isfile(os.path.join(builder.currentSourcePath, 'sdk', 'smsdk_ext.cpp')):
# Use the copy included in the project
project.sources += [os.path.join('sdk', 'smsdk_ext.cpp')]
else:
# Use the copy included with SM 1.6 and newer
project.sources += [os.path.join(Extension.sm_root, 'public', 'smsdk_ext.cpp')]
project.sources += sourceFiles
for sdk_name in ['css', 'tf2', 'dods', 'hl2dm', 'csgo', 'l4d', 'l4d2']:
if sdk_name not in Extension.sdks:
continue
sdk = Extension.sdks[sdk_name]
for cxx in Extension.all_targets:
if not cxx.target.arch in sdk.platformSpec[cxx.target.platform]:
continue
binary = Extension.HL2Config(project, cxx, projectName + '.ext.' + sdk.ext, sdk, builder)
Extension.AddCDetour(binary)
compiler = binary.compiler
compiler.defines += ['HAVE_STRING_H'];
Extension.extensions = builder.Add(project)