Import("env") env.Append( CPPPATH=[ "#/lib/cmsis_core", "#/lib/stm32wb_cmsis/Include", "#/lib/stm32wb_hal/Inc", "#/lib/stm32wb_copro/wpan", ], CPPDEFINES=[ "STM32WB", "STM32WB55xx", "USE_FULL_ASSERT", "USE_FULL_LL_DRIVER", ], SDK_HEADERS=env.GlobRecursive( "*_ll_*.h", Dir("stm32wb_hal/Inc"), exclude="*usb.h", ), ) if env["RAM_EXEC"]: env.Append( CPPDEFINES=[ "VECT_TAB_SRAM", ], ) libenv = env.Clone(FW_LIB_NAME="stm32wb") libenv.Append( CPPPATH=[ "#/lib/stm32wb_copro/wpan/ble", "#/lib/stm32wb_copro/wpan/ble/core", "#/lib/stm32wb_copro/wpan/interface/patterns/ble_thread", "#/lib/stm32wb_copro/wpan/interface/patterns/ble_thread/shci", "#/lib/stm32wb_copro/wpan/interface/patterns/ble_thread/tl", "#/lib/stm32wb_copro/wpan/utilities", ] ) libenv.ApplyLibFlags() sources = libenv.GlobRecursive("*_ll_*.c", "stm32wb_hal/Src/", exclude="*usb.c") sources += Glob( "stm32wb_copro/wpan/interface/patterns/ble_thread/shci/*.c", source=True, ) sources += Glob( "stm32wb_copro/wpan/interface/patterns/ble_thread/tl/*_tl*.c", exclude=[ "stm32wb_copro/wpan/interface/patterns/ble_thread/tl/hci_tl_if.c", "stm32wb_copro/wpan/interface/patterns/ble_thread/tl/shci_tl_if.c", ], source=True, ) sources += [ "stm32wb_copro/wpan/interface/patterns/ble_thread/tl/tl_mbox.c", "stm32wb_copro/wpan/ble/svc/Src/svc_ctl.c", "stm32wb_copro/wpan/ble/core/auto/ble_gap_aci.c", "stm32wb_copro/wpan/ble/core/auto/ble_gatt_aci.c", "stm32wb_copro/wpan/ble/core/auto/ble_hal_aci.c", "stm32wb_copro/wpan/ble/core/auto/ble_hci_le.c", "stm32wb_copro/wpan/ble/core/auto/ble_l2cap_aci.c", "stm32wb_copro/wpan/ble/core/template/osal.c", "stm32wb_copro/wpan/utilities/dbg_trace.c", "stm32wb_copro/wpan/utilities/otp.c", "stm32wb_copro/wpan/utilities/stm_list.c", ] lib = libenv.StaticLibrary("${FW_LIB_NAME}", sources) libenv.Install("${LIB_DIST_DIR}", lib) Return("lib")