Add ambuild 2.2 support
This commit is contained in:
@@ -1,29 +1,44 @@
|
||||
# vim: set sts=2 ts=8 sw=2 tw=99 et ft=python:
|
||||
import os
|
||||
|
||||
if not "SM" in globals():
|
||||
SM = Extension
|
||||
|
||||
projectName = 'a2sqcache'
|
||||
|
||||
project = SM.HL2Project(builder, projectName + '.ext')
|
||||
project.sources += [
|
||||
'extension.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 cxx in builder.targets:
|
||||
for sdk_name in SM.sdks:
|
||||
sdk = SM.sdks[sdk_name]
|
||||
|
||||
for sdk_name in SM.sdks:
|
||||
sdk = SM.sdks[sdk_name]
|
||||
if not cxx.target.arch in sdk.platformSpec[cxx.target.platform]:
|
||||
continue
|
||||
|
||||
binary = SM.HL2Config(project, projectName + '.ext', sdk)
|
||||
binary = SM.HL2Library(builder, cxx, projectName + '.ext.' + sdk.ext, sdk)
|
||||
|
||||
SM.extensions += builder.Add(project)
|
||||
binary.compiler.defines += [
|
||||
'HAVE_STRING_H',
|
||||
]
|
||||
|
||||
if cxx.target.platform == 'linux':
|
||||
cxx.postlink += ['-lpthread', '-lrt']
|
||||
elif cxx.target.platform == 'mac':
|
||||
cxx.cflags += ['-Wno-deprecated-declarations']
|
||||
cxx.postlink += ['-framework', 'CoreServices']
|
||||
|
||||
if cxx.family == 'gcc' or cxx.family == 'clang':
|
||||
cxx.cxxflags += ['-fno-rtti']
|
||||
elif cxx.family == 'msvc':
|
||||
cxx.cxxflags += ['/GR-']
|
||||
|
||||
binary.sources += [
|
||||
'extension.cpp',
|
||||
os.path.join(SM.sm_root, 'extensions', 'sm-ext-common', 'mathstubs.c'),
|
||||
os.path.join(SM.sm_root, 'public', 'smsdk_ext.cpp'),
|
||||
os.path.join(SM.sm_root, 'public', 'CDetour', 'detours.cpp'),
|
||||
os.path.join(SM.sm_root, 'public', 'asm', 'asm.c'),
|
||||
os.path.join(SM.sm_root, 'public', 'libudis86', 'decode.c'),
|
||||
os.path.join(SM.sm_root, 'public', 'libudis86', 'itab.c'),
|
||||
os.path.join(SM.sm_root, 'public', 'libudis86', 'syn-att.c'),
|
||||
os.path.join(SM.sm_root, 'public', 'libudis86', 'syn-intel.c'),
|
||||
os.path.join(SM.sm_root, 'public', 'libudis86', 'syn.c'),
|
||||
os.path.join(SM.sm_root, 'public', 'libudis86', 'udis86.c'),
|
||||
]
|
||||
|
||||
SM.extensions += [builder.Add(binary)]
|
||||
|
||||
Reference in New Issue
Block a user