dvander@87: # vim: set ts=2 sw=2 tw=99 noet ft=python: dvander@103: # dvander@103: # Copyright (C) 2004-2012 David Anderson dvander@103: # dvander@103: # This file is part of SourcePawn. dvander@103: # dvander@103: # SourcePawn is free software: you can redistribute it and/or modify it under dvander@103: # the terms of the GNU General Public License as published by the Free dvander@103: # Software Foundation, either version 3 of the License, or (at your option) dvander@103: # any later version. dvander@103: # dvander@103: # SourcePawn is distributed in the hope that it will be useful, but WITHOUT ANY dvander@103: # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS dvander@103: # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. dvander@103: # dvander@103: # You should have received a copy of the GNU General Public License along with dvander@103: # SourcePawn. If not, see http://www.gnu.org/licenses/. dvander@103: # dvander@87: import os dvander@87: dvander@87: compiler = KE.DefaultCompiler() dvander@87: base = AMBuild.sourceFolder dvander@87: dvander@87: compiler['CXXINCLUDES'].append(os.path.join(base, 'include')) dvander@87: dvander@88: job = AMBuild.AddJob('keima') dvander@88: library = Cpp.StaticLibraryBuilder('keima', AMBuild, job, compiler) dvander@87: files = [ dvander@87: 'API.cpp', dvander@87: 'Array.cpp', dvander@87: 'BytecodeCompiler.cpp', dvander@87: 'BytecodeEmitter.cpp', dvander@87: 'CompileContext.cpp', dvander@87: 'Environments.cpp', dvander@87: 'Exception.cpp', dvander@87: 'FixedArray.cpp', dvander@87: 'Functions.cpp', dvander@87: 'GlobalRoots.cpp', dvander@87: 'Heap.cpp', dvander@87: 'Interpreter.cpp', dvander@87: 'Modules.cpp', dvander@87: 'NameBinding.cpp', dvander@87: 'Opcodes.cpp', dvander@87: 'Parser.cpp', dvander@87: 'PoolAllocator.cpp', dvander@87: 'Reference.cpp', dvander@87: 'RootScopes.cpp', dvander@87: 'Scanner.cpp', dvander@87: 'Scopes.cpp', dvander@87: 'SemanticAnalysis.cpp', dvander@87: 'Spaces.cpp', dvander@87: 'Stack.cpp', dvander@87: 'StringPool.cpp', dvander@87: 'Strings.cpp', dvander@87: 'Structures.cpp', dvander@87: 'TypeManager.cpp', dvander@87: 'Types.cpp', dvander@87: 'Zone.cpp' dvander@87: ] dvander@87: if AMBuild.target['platform'] == 'windows': dvander@87: files.append('Platform-Windows.cpp') dvander@87: else: dvander@87: files.append('Platform-Posix.cpp') dvander@87: library.AddSourceFiles('src', files) dvander@87: library.SendToJob() dvander@87: