import os from building import * # get current directory cwd = GetCurrentDir() jerry_core_dir = cwd + '/jerryscript/jerry-core' SOURCE_CORE = Glob(jerry_core_dir + '/*.c') SOURCE_CORE_API = Glob(jerry_core_dir + '/api/*.c') SOURCE_CORE_DEBUG = Glob(jerry_core_dir + '/debugger/*.c') SOURCE_CORE_ECMA_BASE = Glob(jerry_core_dir + '/ecma/base/*.c') SOURCE_CORE_ECMA_BUILTINS = Glob(jerry_core_dir + '/ecma/builtin-objects/*.c') SOURCE_CORE_ECMA_BUILTINS_TYPEDARRAY = Glob(jerry_core_dir + '/ecma/builtin-objects/typedarray/*.c') SOURCE_CORE_ECMA_OPERATIONS = Glob(jerry_core_dir + '/ecma/operations/*.c') SOURCE_CORE_JCONTEXT = Glob(jerry_core_dir + '/jcontext/*.c') SOURCE_CORE_JMEM = Glob(jerry_core_dir + '/jmem/*.c') SOURCE_CORE_JRT = Glob(jerry_core_dir + '/jrt/*.c') SOURCE_CORE_LIT = Glob(jerry_core_dir + '/lit/*.c') SOURCE_CORE_PARSER_JS = Glob(jerry_core_dir + '/parser/js/*.c') SOURCE_CORE_PARSER_REGEXP = Glob(jerry_core_dir + '/parser/regexp/*.c') SOURCE_CORE_VM = Glob(jerry_core_dir + '/vm/*.c') SOURCE_CORE_PORT = Glob(cwd + '/rtthread-port/*.c') jerry_core = SOURCE_CORE jerry_core += SOURCE_CORE_API jerry_core += SOURCE_CORE_DEBUG jerry_core += SOURCE_CORE_ECMA_BASE jerry_core += SOURCE_CORE_ECMA_BUILTINS jerry_core += SOURCE_CORE_ECMA_BUILTINS_TYPEDARRAY jerry_core += SOURCE_CORE_ECMA_OPERATIONS jerry_core += SOURCE_CORE_JCONTEXT jerry_core += SOURCE_CORE_JMEM jerry_core += SOURCE_CORE_JRT jerry_core += SOURCE_CORE_LIT jerry_core += SOURCE_CORE_PARSER_JS jerry_core += SOURCE_CORE_PARSER_REGEXP jerry_core += SOURCE_CORE_PORT jerry_core += SOURCE_CORE_VM jerry_ext_dir = cwd + '/jerryscript/jerry-ext' SOURCE_EXT_ARG = Glob(jerry_ext_dir + '/arg/*.c') SOURCE_EXT_HANDLER = Glob(jerry_ext_dir + '/handler/*.c') SOURCE_EXT_INCLUDE = Glob(jerry_ext_dir + '/include/*.c') SOURCE_EXT_MODULE = Glob(jerry_ext_dir + '/module/*.c') jerry_ext = SOURCE_EXT_ARG + SOURCE_EXT_HANDLER + SOURCE_EXT_INCLUDE + SOURCE_EXT_MODULE src = jerry_core + jerry_ext path = [cwd] path += [cwd + '/rtthread-port'] path += [jerry_core_dir + '/api'] path += [jerry_core_dir + '/debugger'] path += [jerry_core_dir + '/ecma/base'] path += [jerry_core_dir + '/ecma/builtin-objects'] path += [jerry_core_dir + '/ecma/builtin-objects/typedarray'] path += [jerry_core_dir + '/ecma/operations'] path += [jerry_core_dir + '/include'] path += [jerry_core_dir + '/jcontext'] path += [jerry_core_dir + '/jmem'] path += [jerry_core_dir + '/jrt'] path += [jerry_core_dir + '/lit'] path += [jerry_core_dir + '/parser/js'] path += [jerry_core_dir + '/parser/regexp'] path += [jerry_core_dir + '/vm'] path += [jerry_ext_dir + '/arg'] path += [jerry_ext_dir + '/handler'] path += [jerry_ext_dir + '/include'] path += [jerry_ext_dir + '/module'] LOCAL_CCFLAGS = '' import rtconfig if rtconfig.CROSS_TOOL == 'keil': LOCAL_CCFLAGS += ' --gnu' CPPDEFINES = ['JERRY_JS_PARSER', 'JERRY_ENABLE_ERROR_MESSAGES'] if GetDepend('PKG_JERRY_ENABLE_LOGGING'): CPPDEFINES += ['JERRY_ENABLE_LOGGING'] if GetDepend('PKG_JMEM_STATS'): CPPDEFINES += ['JMEM_STATS'] group = DefineGroup('JerryScript', src, depend = ['PKG_USING_JERRYSCRIPT'], CPPPATH = path, CPPDEFINES = CPPDEFINES, LOCAL_CCFLAGS = LOCAL_CCFLAGS) list = os.listdir(cwd) for item in list: if os.path.isfile(os.path.join(cwd, item, 'SConscript')): group = group + SConscript(os.path.join(item, 'SConscript')) Return('group')