core/logic/AMBuilder
author Nicholas Hastings <skamonkey@gmail.com>
Wed Oct 09 08:43:08 2013 -0400 (2013-10-09)
changeset 4138 da768ad428cf
parent 4137 11a7aa48621c
child 4139 de7d1cd00703
permissions -rw-r--r--
Move DBManager and DB natives from core to logic (bug 5953, r=fyren).
dvander@2784
     1
# vim: set ts=2 sw=2 tw=99 noet ft=python: 
dvander@2784
     2
import os
dvander@2784
     3
dvander@2784
     4
compiler = SM.DefaultCompiler()
dvander@2784
     5
base = AMBuild.sourceFolder
dvander@2784
     6
compiler['CXXINCLUDES'].append(os.path.join(SM.mmsPath, 'core', 'sourcehook'))
dvander@2784
     7
compiler['CXXINCLUDES'].append(os.path.join(base, 'core', 'logic'))
dvander@2784
     8
compiler['CXXINCLUDES'].append(os.path.join(base, 'public'))
dvander@2784
     9
compiler['CXXINCLUDES'].append(os.path.join(base, 'public', 'sourcepawn'))
dvander@4030
    10
compiler['CXXINCLUDES'].append(os.path.join(base, 'public', 'amtl'))
dvander@2784
    11
compiler['CDEFINES'].append('SM_DEFAULT_THREADER')
dvander@2784
    12
compiler['CDEFINES'].append('SM_LOGIC')
dvander@2784
    13
dvander@2793
    14
if AMBuild.target['platform'] == 'linux':
dvander@2792
    15
	compiler['POSTLINKFLAGS'].append('-lpthread')
dvander@4025
    16
	compiler['POSTLINKFLAGS'].append('-lrt')
ds@3295
    17
if AMBuild.target['platform'] == 'darwin':
ds@3628
    18
	compiler['CFLAGS'].extend(['-Wno-deprecated-declarations'])
ds@3295
    19
	compiler['POSTLINKFLAGS'].extend(['-framework', 'CoreServices'])
dvander@2792
    20
dvander@2784
    21
extension = AMBuild.AddJob('sourcemod.logic')
dvander@2784
    22
binary = Cpp.LibraryBuilder('sourcemod.logic', AMBuild, extension, compiler)
dvander@2784
    23
files = [
dvander@2784
    24
	'common_logic.cpp',
dvander@2784
    25
	'smn_adt_array.cpp',
dvander@2784
    26
	'smn_sorting.cpp',
dvander@2784
    27
	'smn_maplists.cpp',
skamonkey@4137
    28
	'ADTFactory.cpp',
dvander@2784
    29
	'smn_adt_stack.cpp',
dvander@2784
    30
	'thread/ThreadWorker.cpp',
dvander@2784
    31
	'thread/BaseWorker.cpp',
dvander@2784
    32
	'ThreadSupport.cpp',
dvander@2784
    33
	'smn_float.cpp',
dvander@2784
    34
	'TextParsers.cpp',
dvander@2784
    35
	'smn_textparse.cpp',
dvander@2784
    36
	'smn_adt_trie.cpp',
dvander@2784
    37
	'Profiler.cpp',
dvander@2906
    38
	'smn_functions.cpp',
dvander@2989
    39
	'smn_timers.cpp',
dvander@2996
    40
	'smn_players.cpp',
dvander@2999
    41
	'MemoryUtils.cpp',
dvander@3000
    42
	'smn_admin.cpp',
dvander@3001
    43
	'smn_banning.cpp',
dvander@3791
    44
	'smn_filesystem.cpp',
dvander@3002
    45
	'stringutil.cpp',
dvander@3004
    46
	'Translator.cpp',
dvander@3004
    47
	'PhraseCollection.cpp',
dvander@3004
    48
	'smn_lang.cpp',
dvander@3006
    49
	'smn_string.cpp',
dvander@3008
    50
	'smn_handles.cpp',
dvander@3009
    51
	'smn_datapacks.cpp',
dvander@3010
    52
	'smn_gameconfigs.cpp',
dvander@3872
    53
	'smn_fakenatives.cpp',
dvander@3010
    54
	'GameConfigs.cpp',
dvander@3270
    55
	'sm_crc32.cpp',
dvander@3792
    56
	'smn_profiler.cpp',
dvander@3872
    57
	'ShareSys.cpp',
dvander@3872
    58
	'PluginSys.cpp',
dvander@3872
    59
	'HandleSys.cpp',
dvander@3872
    60
	'NativeOwner.cpp',
dvander@3872
    61
	'NativeInvoker.cpp',
dvander@3872
    62
	'ExtensionSys.cpp',
skamonkey@4138
    63
	'DebugReporter.cpp',
skamonkey@4138
    64
	'Database.cpp',
skamonkey@4138
    65
	'smn_database.cpp',
dvander@2784
    66
	]
dvander@2784
    67
if AMBuild.target['platform'] == 'windows':
dvander@2784
    68
	files.append('thread/WinThreads.cpp')
dvander@2784
    69
else:
dvander@2784
    70
	files.append('thread/PosixThreads.cpp')
dvander@2784
    71
binary.AddSourceFiles('core/logic', files)
dvander@2784
    72
SM.AutoVersion('core/logic', binary)
asherkin@3835
    73
SM.ExtractDebugInfo(extension, binary)
dvander@2784
    74
binary.SendToJob()
dvander@2784
    75