misc.scons 983 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. Import("env")
  2. from fbt.util import GLOB_FILE_EXCLUSION
  3. env.Append(
  4. CPPPATH=[
  5. "#/lib/digital_signal",
  6. "#/lib/fnv1a_hash",
  7. "#/lib/heatshrink",
  8. "#/lib/micro-ecc",
  9. "#/lib/nanopb",
  10. "#/lib/u8g2",
  11. ],
  12. CPPDEFINES=[
  13. "PB_ENABLE_MALLOC",
  14. ],
  15. SDK_HEADERS=[
  16. File("micro-ecc/uECC.h"),
  17. ],
  18. )
  19. libenv = env.Clone(FW_LIB_NAME="misc")
  20. libenv.ApplyLibFlags()
  21. sources = []
  22. libs_recurse = [
  23. "digital_signal",
  24. "micro-ecc",
  25. "u8g2",
  26. "update_util",
  27. ]
  28. for lib in libs_recurse:
  29. sources += libenv.GlobRecursive("*.c*", lib)
  30. libs_plain = [
  31. "nanopb",
  32. ]
  33. for lib in libs_plain:
  34. sources += Glob(
  35. lib + "/*.c*",
  36. exclude=GLOB_FILE_EXCLUSION,
  37. source=True,
  38. )
  39. sources += Glob(
  40. "heatshrink/heatshrink_*.c*",
  41. exclude=GLOB_FILE_EXCLUSION,
  42. source=True,
  43. )
  44. lib = libenv.StaticLibrary("${FW_LIB_NAME}", sources)
  45. libenv.Install("${LIB_DIST_DIR}", lib)
  46. Return("lib")