stm32wb.scons 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. Import("env")
  2. env.Append(
  3. CPPPATH=[
  4. "#/lib/cmsis_core",
  5. "#/lib/stm32wb_cmsis/Include",
  6. "#/lib/stm32wb_hal/Inc",
  7. "#/lib/stm32wb_copro/wpan",
  8. ],
  9. CPPDEFINES=[
  10. "STM32WB",
  11. "STM32WB55xx",
  12. "USE_FULL_ASSERT",
  13. "USE_FULL_LL_DRIVER",
  14. ],
  15. SDK_HEADERS=env.GlobRecursive(
  16. "*_ll_*.h",
  17. Dir("stm32wb_hal/Inc"),
  18. exclude="*usb.h",
  19. ),
  20. )
  21. if env["RAM_EXEC"]:
  22. env.Append(
  23. CPPDEFINES=[
  24. "VECT_TAB_SRAM",
  25. ],
  26. )
  27. libenv = env.Clone(FW_LIB_NAME="stm32wb")
  28. libenv.Append(
  29. CPPPATH=[
  30. "#/lib/stm32wb_copro/wpan/ble",
  31. "#/lib/stm32wb_copro/wpan/ble/core",
  32. "#/lib/stm32wb_copro/wpan/interface/patterns/ble_thread",
  33. "#/lib/stm32wb_copro/wpan/interface/patterns/ble_thread/shci",
  34. "#/lib/stm32wb_copro/wpan/interface/patterns/ble_thread/tl",
  35. "#/lib/stm32wb_copro/wpan/utilities",
  36. ]
  37. )
  38. libenv.ApplyLibFlags()
  39. sources = libenv.GlobRecursive("*_ll_*.c", "stm32wb_hal/Src/", exclude="*usb.c")
  40. sources += Glob(
  41. "stm32wb_copro/wpan/interface/patterns/ble_thread/shci/*.c",
  42. source=True,
  43. )
  44. sources += Glob(
  45. "stm32wb_copro/wpan/interface/patterns/ble_thread/tl/*_tl*.c",
  46. source=True,
  47. )
  48. sources += [
  49. "stm32wb_copro/wpan/interface/patterns/ble_thread/tl/tl_mbox.c",
  50. "stm32wb_copro/wpan/ble/svc/Src/svc_ctl.c",
  51. "stm32wb_copro/wpan/ble/core/auto/ble_gap_aci.c",
  52. "stm32wb_copro/wpan/ble/core/auto/ble_gatt_aci.c",
  53. "stm32wb_copro/wpan/ble/core/auto/ble_hal_aci.c",
  54. "stm32wb_copro/wpan/ble/core/auto/ble_hci_le.c",
  55. "stm32wb_copro/wpan/ble/core/auto/ble_l2cap_aci.c",
  56. "stm32wb_copro/wpan/ble/core/template/osal.c",
  57. "stm32wb_copro/wpan/utilities/dbg_trace.c",
  58. "stm32wb_copro/wpan/utilities/otp.c",
  59. "stm32wb_copro/wpan/utilities/stm_list.c",
  60. ]
  61. lib = libenv.StaticLibrary("${FW_LIB_NAME}", sources)
  62. libenv.Install("${LIB_DIST_DIR}", lib)
  63. Return("lib")