UEFITool/common/meson.build
Nikolaj Schlej 934ce1f3f8 Kaitai-based Intel ACM and BootGuard parsers
As the first step towards automated parsing, this change set replaces outdated BootGuard-related parsers with shiny new KaitaiStruct-based ones.
It also does the following:
- improves Intel FIT definitions by using the relevant specification
- adds sha1, sha384, sha512 and sm3 digest implementations
- updates LZMA SDK to v22.01
- moves GUIDs out of include files to prevent multiple instantiations
- enforces C++11
- adds Kaitai-based parsers for Intel FIT, BootGuard v1 and BootGuard v2 structures
- makes many small refactorings here, there and everywhere
2022-09-10 13:14:29 +02:00

53 lines
1.1 KiB
Meson

lzma = static_library('lzma',
sources: [
'LZMA/LzmaDecompress.c',
'LZMA/SDK/C/Bra86.c',
'LZMA/SDK/C/LzmaDec.c',
'Tiano/EfiTianoDecompress.c',
],
)
bstrlib = static_library('bstrlib',
sources: [
'bstrlib/bstrlib.c',
'bstrlib/bstrwrap.cpp',
],
)
uefitoolcommon = static_library('uefitoolcommon',
sources: [
'guiddatabase.cpp',
'types.cpp',
'descriptor.cpp',
'ffs.cpp',
'nvram.cpp',
'nvramparser.cpp',
'meparser.cpp',
'fitparser.cpp',
'ffsparser.cpp',
'ffsreport.cpp',
'ffsutils.cpp',
'peimage.cpp',
'treeitem.cpp',
'treemodel.cpp',
'utility.cpp',
'ustring.cpp',
'generated/intel_acbp_v1.cpp',
'generated/intel_acbp_v2.cpp',
'generated/intel_keym_v1.cpp',
'generated/intel_keym_v2.cpp',
'generated/intel_acm.cpp',
'kaitai/kaitaistream.cpp',
'digest/sha1.c',
'digest/sha256.c',
'digest/sha512.c',
'digest/sm3.c',
],
cpp_args: [
'-DU_ENABLE_NVRAM_PARSING_SUPPORT',
'-DU_ENABLE_ME_PARSING_SUPPORT',
'-DU_ENABLE_FIT_PARSING_SUPPORT',
'-DU_ENABLE_GUID_DATABASE_SUPPORT',
],
)