SConscript 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. # RT-Thread building script for JerryScript
  2. import os
  3. from building import *
  4. # get current directory
  5. cwd = GetCurrentDir()
  6. jerry_core_dir = 'jerryscript/jerry-core'
  7. jerry_core = Glob(jerry_core_dir + '/*.c')
  8. jerry_core += Glob(jerry_core_dir + '/api/*.c')
  9. jerry_core += Glob(jerry_core_dir + '/debugger/*.c')
  10. jerry_core += Glob(jerry_core_dir + '/ecma/base/*.c')
  11. jerry_core += Glob(jerry_core_dir + '/ecma/builtin-objects/*.c')
  12. jerry_core += Glob(jerry_core_dir + '/ecma/builtin-objects/typedarray/*.c')
  13. jerry_core += Glob(jerry_core_dir + '/ecma/operations/*.c')
  14. jerry_core += Glob(jerry_core_dir + '/jcontext/*.c')
  15. jerry_core += Glob(jerry_core_dir + '/jmem/*.c')
  16. jerry_core += Glob(jerry_core_dir + '/jrt/*.c')
  17. jerry_core += Glob(jerry_core_dir + '/lit/*.c')
  18. jerry_core += Glob(jerry_core_dir + '/parser/js/*.c')
  19. jerry_core += Glob(jerry_core_dir + '/parser/regexp/*.c')
  20. jerry_core += Glob(jerry_core_dir + '/vm/*.c')
  21. jerry_ext_dir = 'jerryscript/jerry-ext'
  22. jerry_ext = Glob(jerry_ext_dir + '/arg/*.c')
  23. jerry_ext += Glob(jerry_ext_dir + '/handler/*.c')
  24. jerry_ext += Glob(jerry_ext_dir + '/include/*.c')
  25. jerry_ext += Glob(jerry_ext_dir + '/module/*.c')
  26. src = jerry_core + jerry_ext
  27. CPPPATH = [cwd]
  28. jerry_core_dir = cwd + '/jerryscript/jerry-core'
  29. CPPPATH += [jerry_core_dir + '/api']
  30. CPPPATH += [jerry_core_dir + '/debugger']
  31. CPPPATH += [jerry_core_dir + '/ecma/base']
  32. CPPPATH += [jerry_core_dir + '/ecma/builtin-objects']
  33. CPPPATH += [jerry_core_dir + '/ecma/builtin-objects/typedarray']
  34. CPPPATH += [jerry_core_dir + '/ecma/operations']
  35. CPPPATH += [jerry_core_dir + '/include']
  36. CPPPATH += [jerry_core_dir + '/jcontext']
  37. CPPPATH += [jerry_core_dir + '/jmem']
  38. CPPPATH += [jerry_core_dir + '/jrt']
  39. CPPPATH += [jerry_core_dir + '/lit']
  40. CPPPATH += [jerry_core_dir + '/parser/js']
  41. CPPPATH += [jerry_core_dir + '/parser/regexp']
  42. CPPPATH += [jerry_core_dir + '/vm']
  43. jerry_ext_dir = cwd + '/jerryscript/jerry-ext'
  44. CPPPATH += [jerry_ext_dir + '/arg']
  45. CPPPATH += [jerry_ext_dir + '/handler']
  46. CPPPATH += [jerry_ext_dir + '/include']
  47. CPPPATH += [jerry_ext_dir + '/module']
  48. LOCAL_CCFLAGS = ''
  49. import rtconfig
  50. if rtconfig.CROSS_TOOL == 'keil':
  51. LOCAL_CCFLAGS += ' --gnu'
  52. CPPDEFINES = ['JERRY_JS_PARSER', 'JERRY_ENABLE_EXTERNAL_CONTEXT']
  53. if GetDepend('PKG_JERRY_ENABLE_ERROR_MESSAGES'):
  54. CPPDEFINES += ['JERRY_ENABLE_ERROR_MESSAGES']
  55. if GetDepend('PKG_JERRY_ENABLE_LOGGING'):
  56. CPPDEFINES += ['JERRY_ENABLE_LOGGING']
  57. if GetDepend('PKG_JMEM_STATS'):
  58. CPPDEFINES += ['JMEM_STATS']
  59. if GetDepend('PKG_CONFIG_DISABLE_ES2015'):
  60. CPPDEFINES += ['CONFIG_DISABLE_ES2015']
  61. group = DefineGroup('JerryScript', src, depend = ['PKG_USING_JERRYSCRIPT'], CPPPATH = CPPPATH,
  62. CPPDEFINES = CPPDEFINES, LOCAL_CCFLAGS = LOCAL_CCFLAGS)
  63. group = group + SConscript(os.path.join('rtthread-port', 'SConscript'))
  64. Return('group')