# vim: set ts=2 sw=2 tw=99 noet ft=python: 
# 
# Copyright (C) 2004-2012 David Anderson
# 
# This file is part of SourcePawn.
# 
# SourcePawn is free software: you can redistribute it and/or modify it under
# the terms of the GNU General Public License as published by the Free
# Software Foundation, either version 3 of the License, or (at your option)
# any later version.
# 
# SourcePawn is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License along with
# SourcePawn. If not, see http://www.gnu.org/licenses/.
#
import os

compiler = KE.DefaultCompiler()
base = AMBuild.sourceFolder

compiler['CXXINCLUDES'].append(os.path.join(base, 'include'))

job = AMBuild.AddJob('keima')
library = Cpp.StaticLibraryBuilder('keima', AMBuild, job, compiler)
files = [
	'API.cpp',
	'Array.cpp',
	'Box.cpp',
	'compiler/BytecodeEmitter.cpp',
	'compiler/CompileContext.cpp',
	'compiler/ConstantEvaluator.cpp',
	'compiler/HIR.cpp',
	'compiler/NameBinding.cpp',
	'compiler/Parser.cpp',
	'compiler/Scanner.cpp',
	'compiler/Scopes.cpp',
	'compiler/SemanticAnalysis.cpp',
	'compiler/Symbols.cpp',
	'Environments.cpp',
	'Exception.cpp',
	'FixedArray.cpp',
	'Functions.cpp',
	'GlobalRoots.cpp',
	'Heap.cpp',
	'Interpreter.cpp',
	'Modules.cpp',
	'NativeTable.cpp',
	'Opcodes.cpp',
	'PoolAllocator.cpp',
	'Reference.cpp',
	'RootScopes.cpp',
	'Spaces.cpp',
	'Stack.cpp',
	'StringPool.cpp',
	'Strings.cpp',
	'Structures.cpp',
	'TypeManager.cpp',
	'Types.cpp',
	'Zone.cpp'
]
if AMBuild.target['platform'] == 'windows':
	files.append('Platform-Windows.cpp')
else:
	files.append('Platform-Posix.cpp')
library.AddSourceFiles('src', files)
library.SendToJob()

