# component2/SConscript
Import("env")
import os
from pathlib import Path

with open(env["PROJECT_TOOL_S"]) as f:
    exec(f.read())

_SDK_PATH = os.path.normpath(
    os.environ.get("SDK_PATH", str(Path(os.getcwd()) / ".." / ".."))
)

if "CONFIG_AXCL_ENABLED" in os.environ:
    axcl = os.environ.get('EXT_AXCL_PATH', check_wget_down("https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/linux/llm/m5stack_axcl_msp_v3_6_2.tar.gz", 'm5stack_axcl_msp_v3_6_2.tar.gz'))
    SRCS = []
    INCLUDE = []
    PRIVATE_INCLUDE = []
    REQUIREMENTS = []
    STATIC_LIB = []
    DYNAMIC_LIB = []
    DEFINITIONS = ['-O2', '-std=c++17']
    DEFINITIONS_PRIVATE = []
    LDFLAGS = []
    LINK_SEARCH_PATH = []

    SRCS += Glob('middleware/*.cc')
    INCLUDE.append(ADir("."))
    INCLUDE += [os.path.join(axcl, "axcl_linux_ax650/include")]

    LINK_SEARCH_PATH += [os.path.join(axcl, "axcl_linux_arm64/lib")]

    env["COMPONENTS"].append(
        {
            "target": os.path.basename(env["component_dir"]),
            "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,
            "REGISTER": "static",
        }
    )
