mirror of
https://github.com/m5stack/StackFlow.git
synced 2026-05-20 11:32:11 -07:00
84 lines
3.1 KiB
Python
84 lines
3.1 KiB
Python
import os
|
|
|
|
Import('env')
|
|
with open(env['PROJECT_TOOL_S']) as f:
|
|
exec(f.read())
|
|
|
|
|
|
SRCS = append_srcs_dir(ADir('src'))
|
|
INCLUDE = [ADir('include'), ADir('.')]
|
|
PRIVATE_INCLUDE = [ADir('../include')]
|
|
REQUIREMENTS = ['pthread','atomic','rt', 'dl', 'm', 'ax_msp', 'utilities', 'eventpp', 'StackFlow']
|
|
STATIC_LIB = []
|
|
DYNAMIC_LIB = []
|
|
DEFINITIONS = []
|
|
DEFINITIONS_PRIVATE = []
|
|
LDFLAGS = []
|
|
LINK_SEARCH_PATH = []
|
|
STATIC_FILES = []
|
|
|
|
python_venv = check_wget_down("https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/linux/llm/m5stack_llm-llm-python-venv_v1.7.tar.gz", 'm5stack_llm-llm-python-venv_v1.7.tar.gz')
|
|
|
|
# REQUIREMENTS += ['Backward_cpp']
|
|
# DYNAMIC_LIB += [ AFile('../static_lib/libdw.so.1'),
|
|
# AFile('../static_lib/libelf.so.1'),
|
|
# AFile('../static_lib/libz.so.1'),
|
|
# AFile('../static_lib/liblzma.so.5'),
|
|
# AFile('../static_lib/libbz2.so.1.0')]
|
|
# DEFINITIONS += ["-DENABLE_BACKWARD"]
|
|
DEFINITIONS += ['-O2']
|
|
DEFINITIONS += ['-std=c++17']
|
|
LDFLAGS+=['-Wl,-rpath=/opt/m5stack/lib', '-Wl,-rpath=/usr/local/m5stack/lib', '-Wl,-rpath=/usr/local/m5stack/lib/gcc-10.3', '-Wl,-rpath=/opt/lib', '-Wl,-rpath=/opt/usr/lib', '-Wl,-rpath=./']
|
|
REQUIREMENTS += ['ax_engine', 'ax_interpreter', 'ax_sys', 'utilities']
|
|
LINK_SEARCH_PATH += [ADir('../static_lib')]
|
|
|
|
|
|
INCLUDE += [ADir('src/runner'), ADir('src/runner/utils')]
|
|
INCLUDE += [ADir('../static_lib/include/sentencepiece'),
|
|
ADir('../static_lib/include/protobuf-lite'),
|
|
ADir('../static_lib/include/abseil-cpp'),
|
|
ADir('../static_lib/include/re2')]
|
|
|
|
static_file = Glob('../static_lib/module-llm/libabsl_*')
|
|
static_file += [AFile('../static_lib/module-llm/libre2.a'), AFile('../static_lib/module-llm/libsentencepiece.a'), AFile('../static_lib/module-llm/libsentencepiece_train.a')]
|
|
STATIC_LIB += static_file * 4
|
|
|
|
STATIC_FILES += [os.path.join(python_venv, 'llm')]
|
|
STATIC_FILES += Glob('scripts/tokenizer_*.py')
|
|
STATIC_FILES += Glob('models/mode_*.json')
|
|
STATIC_FILES += [AFile('scripts/llm-llm_tokenizer_auto.py')]
|
|
|
|
IGNORE_FILES = []
|
|
IGNORE_FILES += ['llm']
|
|
|
|
import json
|
|
if not os.path.exists('../dist'):
|
|
os.makedirs('../dist')
|
|
ignore = {'ignore':[]}
|
|
try:
|
|
with open('../dist/fileignore', 'a+') as f:
|
|
f.seek(0)
|
|
ignore = json.load(f)
|
|
except:
|
|
pass
|
|
ignore['ignore'] += IGNORE_FILES
|
|
ignore['ignore'] = list(set(ignore['ignore']))
|
|
with open('../dist/fileignore', 'w') as f:
|
|
json.dump(ignore, f, indent=4)
|
|
|
|
env['COMPONENTS'].append({'target':'llm_llm-1.12',
|
|
'SRCS':SRCS,
|
|
'INCLUDE':INCLUDE,
|
|
'PRIVATE_INCLUDE':PRIVATE_INCLUDE,
|
|
'REQUIREMENTS':REQUIREMENTS,
|
|
'STATIC_LIB':STATIC_LIB,
|
|
'DYNAMIC_LIB':DYNAMIC_LIB,
|
|
'DEFINITIONS':DEFINITIONS,
|
|
'DEFINITIONS_PRIVATE':DEFINITIONS_PRIVATE,
|
|
'LDFLAGS':LDFLAGS,
|
|
'LINK_SEARCH_PATH':LINK_SEARCH_PATH,
|
|
'STATIC_FILES':STATIC_FILES,
|
|
'REGISTER':'project'
|
|
})
|
|
|