add porting codes of rt-thread (#494)
This commit is contained in:
88
build-scripts/SConscript
Normal file
88
build-scripts/SConscript
Normal file
@ -0,0 +1,88 @@
|
||||
#
|
||||
# Copyright (c) 2021, RT-Thread Development Team
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||||
#
|
||||
|
||||
import os
|
||||
from building import *
|
||||
|
||||
cwd = GetCurrentDir()
|
||||
objs = []
|
||||
|
||||
WAMR_ROOT_DIR = os.path.join(cwd, "..")
|
||||
|
||||
|
||||
SHARED_DIR = os.path.join(WAMR_ROOT_DIR, 'core', 'shared')
|
||||
|
||||
IWASM_DIR = os.path.join(WAMR_ROOT_DIR, 'core', 'iwasm')
|
||||
|
||||
APP_MGR_DIR = os.path.join(WAMR_ROOT_DIR, 'core', 'app-mgr')
|
||||
|
||||
APP_FRAMEWORK_DIR = os.path.join(WAMR_ROOT_DIR, 'core', 'app-framework')
|
||||
|
||||
DEPS_DIR = os.path.join(WAMR_ROOT_DIR, 'core', 'deps')
|
||||
|
||||
if GetDepend(['WAMR_BUILD_INTERP']):
|
||||
script_path = os.path.join(IWASM_DIR, 'interpreter', 'SConscript')
|
||||
objs += SConscript(script_path)
|
||||
|
||||
|
||||
if GetDepend(['WAMR_BUILD_AOT']):
|
||||
script_path = os.path.join(IWASM_DIR, 'aot', 'SConscript')
|
||||
objs += SConscript(script_path)
|
||||
if GetDepend(['WAMR_BUILD_JIT']):
|
||||
script_path = os.path.join(IWASM_DIR, 'compilation', 'SConscript')
|
||||
objs += SConscript(script_path)
|
||||
|
||||
|
||||
if GetDepend(['WAMR_BUILD_APP_FRAMEWORK']):
|
||||
objs += SConscript(os.path.join(APP_FRAMEWORK_DIR, 'SConscript'))
|
||||
objs += SConscript(os.path.join(SHARED_DIR, 'coap', 'SConscript'))
|
||||
objs += SConscript(os.path.join(APP_MGR_DIR, 'app-manager', 'SConscript'))
|
||||
objs += SConscript(os.path.join(APP_MGR_DIR, 'app-mgr-shared', 'SConscript'))
|
||||
|
||||
|
||||
|
||||
if GetDepend(['WAMR_BUILD_LIBC_BUILTIN']):
|
||||
objs += SConscript(os.path.join(IWASM_DIR, 'libraries', 'libc-builtin', 'SConscript'))
|
||||
|
||||
|
||||
|
||||
if GetDepend(['WAMR_BUILD_LIBC_WASI']):
|
||||
objs += SConscript(os.path.join(IWASM_DIR, 'libraries', 'libc-wasi', 'SConscript'))
|
||||
|
||||
|
||||
if GetDepend(['WAMR_BUILD_LIB_PTHREAD']):
|
||||
objs += SConscript(os.path.join(IWASM_DIR, 'libraries', 'libc-pthread', 'SConscript'))
|
||||
# TODO: 这里加一下
|
||||
|
||||
|
||||
|
||||
# if (WAMR_BUILD_THREAD_MGR EQUAL 1)
|
||||
# include (${IWASM_DIR}/libraries/thread-mgr/thread_mgr.cmake)
|
||||
# endif ()
|
||||
|
||||
if GetDepend(['WAMR_BUILD_THREAD_MGR']):
|
||||
objs += SConscript(os.path.join(IWASM_DIR, 'libraries', 'thread-mgr', 'SConscript'))
|
||||
|
||||
|
||||
|
||||
# if (WAMR_BUILD_LIBC_EMCC EQUAL 1)
|
||||
# include (${IWASM_DIR}/libraries/libc-emcc/libc_emcc.cmake)
|
||||
# endif()
|
||||
|
||||
if GetDepend(['WAMR_BUILD_LIBC_EMCC']):
|
||||
objs += SConscript(os.path.join(IWASM_DIR, 'libraries', 'libc-emmc', 'SConscript'))
|
||||
|
||||
objs += SConscript(os.path.join(cwd, 'SConscript_config'));
|
||||
|
||||
|
||||
objs += SConscript(os.path.join(SHARED_DIR, 'platform', 'rt-thread', 'SConscript'))
|
||||
objs += SConscript(os.path.join(SHARED_DIR, 'mem-alloc', 'SConscript'))
|
||||
objs += SConscript(os.path.join(IWASM_DIR, 'common', 'SConscript'))
|
||||
objs += SConscript(os.path.join(SHARED_DIR, 'utils', 'SConscript'))
|
||||
|
||||
|
||||
|
||||
Return('objs')
|
||||
123
build-scripts/SConscript_config
Normal file
123
build-scripts/SConscript_config
Normal file
@ -0,0 +1,123 @@
|
||||
|
||||
|
||||
import os
|
||||
import re
|
||||
|
||||
from building import *
|
||||
#
|
||||
# Copyright (c) 2021, RT-Thread Development Team
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||||
#
|
||||
|
||||
Import('rtconfig')
|
||||
|
||||
src = Split('''
|
||||
''')
|
||||
objs = []
|
||||
cwd = GetCurrentDir()
|
||||
|
||||
IWASM_INC_DIR = os.path.join(cwd, '..', 'core', 'iwasm', 'include')
|
||||
|
||||
# include_directories (${IWASM_DIR}/include)
|
||||
|
||||
CPPPATH = [IWASM_INC_DIR]
|
||||
|
||||
if rtconfig.BUILD == 'debug':
|
||||
CPPDEFINES = ['BH_DEBUG=1']
|
||||
else:
|
||||
CPPDEFINES = ['BH_DEBUG=0']
|
||||
|
||||
if rtconfig.ARCH == 'arm':
|
||||
if re.match('^cortex-m.*', rtconfig.CPU):
|
||||
print('[WAMR] using thumbv4t')
|
||||
CPPDEFINES += ['BUILD_TARGET_THUMB']
|
||||
CPPDEFINES += [r'BUILD_TARGET=\"thumbv4t\"']
|
||||
elif re.match('^cortex-a.*', rtconfig.CPU):
|
||||
print('[WAMR] using armv7')
|
||||
CPPDEFINES += ['BUILD_TARGET_ARM']
|
||||
CPPDEFINES += [r'BUILD_TARGET=\"armv7\"']
|
||||
elif re.match('^cortex-r.*', rtconfig.CPU):
|
||||
print('[WAMR] using armv7')
|
||||
CPPDEFINES += ['BUILD_TARGET_ARM']
|
||||
CPPDEFINES += [r'BUILD_TARGET=\"armv7\"']
|
||||
elif rtconfig.CPU == 'armv6':
|
||||
print('[WAMR] using armv6')
|
||||
CPPDEFINES += ['BUILD_TARGET_ARM']
|
||||
CPPDEFINES += [r'BUILD_TARGET=\"armv6\"']
|
||||
elif re.match('^arm9*', rtconfig.CPU):
|
||||
print('[WAMR] using armv4')
|
||||
CPPDEFINES += ['BUILD_TARGET_ARM']
|
||||
CPPDEFINES += [r'BUILD_TARGET=\"armv4\"']
|
||||
|
||||
else:
|
||||
print("[WAMR] unknown arch", rtconfig.ARCH)
|
||||
|
||||
|
||||
LIBS = ['m']
|
||||
|
||||
if GetDepend(['WAMR_BUILD_INTERP']):
|
||||
CPPDEFINES += ['WASM_ENABLE_INTERP=1']
|
||||
if GetDepend(['WAMR_BUILD_FAST_INTERP']):
|
||||
CPPDEFINES += ['WASM_ENABLE_FAST_INTERP=1']
|
||||
print("[WAMR] fast interpreter was enabled")
|
||||
else:
|
||||
CPPDEFINES += ['WASM_ENABLE_FAST_INTERP=0']
|
||||
print("[WAMR] fast interpreter was disabled")
|
||||
else:
|
||||
CPPDEFINES += ['WASM_ENABLE_INTERP=0']
|
||||
|
||||
CPPDEFINES += ['WASM_ENABLE_JIT=0']
|
||||
|
||||
if GetDepend(['WAMR_BUILD_MULTI_MODULE']):
|
||||
CPPDEFINES += ['WASM_ENABLE_MULTI_MODULE=1']
|
||||
else:
|
||||
CPPDEFINES += ['WASM_ENABLE_MULTI_MODULE=0']
|
||||
|
||||
if GetDepend(['WAMR_BUILD_SPEC_TEST']):
|
||||
CPPDEFINES += ['WASM_ENABLE_SPEC_TEST=1']
|
||||
print("[WAMR] spec test compatible mode was enabled")
|
||||
|
||||
if GetDepend(['WAMR_BUILD_BULK_MEMORY']):
|
||||
CPPDEFINES += ['WASM_ENABLE_BULK_MEMORY=1']
|
||||
print("[WAMR] Bulk memory feature was enabled")
|
||||
else:
|
||||
CPPDEFINES += ['WASM_ENABLE_BULK_MEMORY=0']
|
||||
|
||||
if GetDepend(['WAMR_BUILD_SHARED_MEMORY']):
|
||||
CPPDEFINES += ['WASM_ENABLE_SHARED_MEMORY=1']
|
||||
print("[WAMR] Shared memory enabled")
|
||||
else:
|
||||
CPPDEFINES += ['WASM_ENABLE_SHARED_MEMORY=0']
|
||||
|
||||
if GetDepend(['WAMR_BUILD_MINI_LOADER']):
|
||||
CPPDEFINES += ['WASM_ENABLE_MINI_LOADER=1']
|
||||
print("[WAMR] mini loader enabled")
|
||||
else:
|
||||
CPPDEFINES += ['WASM_ENABLE_MINI_LOADER=0']
|
||||
|
||||
if GetDepend(['WAMR_DISABLE_HW_BOUND_CHECK']):
|
||||
CPPDEFINES += ['WASM_DISABLE_HW_BOUND_CHECK=1']
|
||||
print("[WAMR] Hardware boundary check disabled")
|
||||
|
||||
if GetDepend(['WAMR_BUILD_SIMD']):
|
||||
CPPDEFINES += ['WASM_ENABLE_SIMD=1']
|
||||
print('[WAMR] SIMD enabled')
|
||||
|
||||
if GetDepend(['WAMR_BUILD_MEMORY_PROFILING']):
|
||||
CPPDEFINES += ['WASM_ENABLE_MEMORY_PROFILING=1']
|
||||
print('[WAMR] Memory profiling enabled')
|
||||
|
||||
if GetDepend(['WAMR_BUILD_CUSTOM_NAME_SECTION']):
|
||||
CPPDEFINES += ['WASM_ENABLE_CUSTOM_NAME_SECTION=1']
|
||||
print('[WAMR] Custom name section enabled')
|
||||
|
||||
if GetDepend(['WAMR_BUILD_TAIL_CALL']):
|
||||
CPPDEFINES += ['WASM_ENABLE_TAIL_CALL=1']
|
||||
print('[WAMR] Tail call enabledd')
|
||||
|
||||
|
||||
group = DefineGroup('wamr_config_common', src, depend = ['PKG_USING_WAMR'], CPPPATH = CPPPATH, CPPDEFINES = CPPDEFINES, LIBS = LIBS)
|
||||
|
||||
Return('group')
|
||||
|
||||
Reference in New Issue
Block a user