12.2 Adding Custom Compression Tools
This section covers how to add a customized compress tool, such as TianoCompress tool.
First, one specific GUID is assigned to the added tool, which can be used to
specify this tool and its compressed data. Then the tool path and GUID needs to
be added into tools_def.txt file, for example TianoCompress tool used for
all tool chains, Target and Archs can be added like:
*_*_*_TIANOCOMPRESS_PATH = DEF(TOOL_PATH)\TianoCompress.exe
*_*_*_TIANOCOMPRESS_GUID = A31280AD-481E-41B6-95E8-127F4C984779
Next, "$(TOOLNAME)" can be specified in build_rule.txt file to call this
tool. And, its GUID value is supported in FDF file to call this tool, which is
used to create the EFI guided section data. For TianoCompress tool,
"$(TIANOCOMPRESS)" is used in build_rule.txt file,
A31280AD-481E-41B6-95E8-127F4C984779 is used in FDF file.
NT32.fdf file uses TianoCompress tool to create the guided data like:
[Rule.Common.PEIM.TIANOCOMPRESSED]
FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {
PEI_DEPEX PEI_DEPEX Optional |.depex
GUIDED A31280AD-481E-41B6-95E8-127F4C984779 {
PE32 PE32 |.efi
UI STRING="$(MODULE_NAME)" Optional
VERSION STRING = "$(INF_VERSION)" OptionalBUILD_NUM = $(BUILD_NUMBER)
}
}