| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- from fbt.version import get_fast_git_version_id
- Import("env")
- env.Append(
- CPPPATH=[
- "#/lib/toolbox",
- ],
- SDK_HEADERS=[
- File("manchester_decoder.h"),
- File("manchester_encoder.h"),
- File("path.h"),
- File("random_name.h"),
- File("sha256.h"),
- File("crc32_calc.h"),
- File("dir_walk.h"),
- File("md5.h"),
- File("args.h"),
- File("saved_struct.h"),
- File("version.h"),
- File("float_tools.h"),
- File("value_index.h"),
- File("tar/tar_archive.h"),
- File("stream/stream.h"),
- File("stream/file_stream.h"),
- File("stream/string_stream.h"),
- File("stream/buffered_file_stream.h"),
- File("protocols/protocol_dict.h"),
- File("pretty_format.h"),
- File("hex.h"),
- ],
- )
- libenv = env.Clone(tools=["fbt_version"], FW_LIB_NAME="toolbox")
- libenv.ApplyLibFlags()
- # Git Version management
- version_depends = []
- version_id_data = get_fast_git_version_id()
- if version_id_data:
- version_depends = Value(version_id_data)
- # Only invoke version generator if preliminary check target (version_depends) has changed
- build_version = libenv.VersionBuilder(
- Dir("."),
- version_depends,
- )
- fw_version_json = libenv.InstallAs(
- "${BUILD_DIR}/${FIRMWARE_BUILD_CFG}.json", "version.json"
- )
- Alias("version_json", fw_version_json)
- env.Append(FW_VERSION_JSON=fw_version_json)
- # Default(fw_version_json)
- if not version_depends:
- libenv.Precious(build_version)
- libenv.AlwaysBuild(build_version)
- sources = libenv.GlobRecursive("*.c")
- libenv.Append(CPPPATH=[libenv.Dir(".")])
- lib = libenv.StaticLibrary("${FW_LIB_NAME}", sources)
- libenv.Install("${LIB_DIST_DIR}", lib)
- Return("lib")
|