31 lines
		
	
	
		
			878 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			878 B
		
	
	
	
		
			Python
		
	
	
	
	
	
# vim: set sts=2 ts=8 sw=2 tw=99 et ft=python:
 | 
						|
import os
 | 
						|
 | 
						|
for arch in SM.archs:
 | 
						|
  binary = SM.ExtLibrary(builder, 'bintools.ext', arch)
 | 
						|
  binary.compiler.defines += ['HOOKING_ENABLED']
 | 
						|
  binary.compiler.cxxincludes += [
 | 
						|
    os.path.join(SM.mms_root, 'core', 'sourcehook'),
 | 
						|
    os.path.join(builder.sourcePath, 'public', 'jit'),
 | 
						|
    os.path.join(builder.sourcePath, 'public', 'jit', 'x86'),
 | 
						|
  ]
 | 
						|
  if binary.compiler.family == 'gcc' or binary.compiler.family == 'clang':
 | 
						|
    binary.compiler.cxxflags += ['-fno-rtti']
 | 
						|
  elif binary.compiler.family == 'msvc':
 | 
						|
    binary.compiler.cxxflags += ['/GR-']
 | 
						|
 | 
						|
  binary.sources += [
 | 
						|
    'extension.cpp',
 | 
						|
    'CallMaker.cpp',
 | 
						|
    'CallWrapper.cpp',
 | 
						|
    '../../public/smsdk_ext.cpp'
 | 
						|
  ]
 | 
						|
  
 | 
						|
  if arch == 'x64':
 | 
						|
    binary.sources += ['jit_call_x64.cpp']
 | 
						|
  else:
 | 
						|
    binary.sources += ['jit_call.cpp']
 | 
						|
 | 
						|
  SM.extensions += [builder.Add(binary)]
 | 
						|
 |