GenDepex.exe

Name

GenDepex.exe or GenDepex.py - Convert the dependency string of file to the binary PI dependency expression.

Synopsis

GenDepex.exe [-q | -v | -d] [-m] [-o <OutputFile>] -t <ModuleType>
-e <Expression> | <dependency_expression_file>
GenDepex.exe -h
GenDepex.exe --version

Description

GenDepex generates the binary PI dependency expression according to module type by parsing the input dependency expression string or the preprocessed dxs file. For PEIM module type, the PEI dependency expression will be generated. For DXE_DRIVER, UEFI_DRIVER, DXE_RUNTIME_DRIVER, DXE_SAL_DRIVER and DXE_SMM_DRIVER, the DXE dependency expression will be generated.

GenDepex tool is not a standalone tool. When [Depex] section is specified in module INF, it will be used by the Build tool. The Build tool first parses the content in [depex] section to create the dependency expression string, then GenDepex will parse the generated string. When a [depex] section is not specified, but File.dxs file exist, GenDepex tool will be used together with the Compiler and the EDKII trim tool. The File.dxs first is preprocessed by Compiler, and then processed by the trim tool to remove all other code except for the dependency content, lastly the GenPepex will process the preprocessed dependency file.

Options

If no options are specified, tool prints error message.

--version show program's version number and exit
-h, --help show this help message and exit
-o FILE, --output=FILE
Specify the name of depex file to be generated
-t MODULETYPE, --module-type=MODULETYPE
The type of module for which the dependency expression
serves
-e EXPRESSION, --dependency-expression=EXPRESSION
The string of dependency expression. If this option
presents, the input file will be ignored.
-m, --optimize Do some simple optimization on the expression.
-v, --verbose build with verbose information
-d DEBUG, --debug=DEBUG
Enable debug messages at specified level.
-q, --quiet build with little information

Status codes returned

Return Value

Description

0

The action was completed as requested.

1

The action failed.

Example

  1. Parse the input dependency string based on DXE_DRIVER module type to generate the binary PI dependency expression into the output test.depex file.

    GenDepex.exe -o test.depex -t DXE_DRIVER -e "{ 0x26baccb2, 0x6f42, 0x11d4, {0xbc, 0xe7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } AND { 0xf617b358, 0x12cf, 0x414a, 0xa0, 0x69, 0x60, 0x67, 0x7b, 0xda, 0x13, 0xb3 } END"
  2. Parse the input dependency string based on DXE_DRIVER module type to generate the binary PI dependency expression into the output test.depex file in the optimization mode.

    GenDepex -o test.depex -t DXE_DRIVER -e "{ 0x26baccb2, 0x6f42, 0x11d4, {0xbc, 0xe7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } AND { 0x26baccb2, 0x6f42, 0x11d4, {0xbc, 0xe7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } END" -m

    Same to

    GenDepex -o test.depex -t DXE_DRIVER -e "{ 0x26baccb2, 0x6f42, 0x11d4, {0xbc, 0xe7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } END"
  3. Parse the input preprocessed dependency file (test.iii) based on DXE_DRIVER module type to generate the binary PI dependency expression into the output test.depex.

    GenDepex -o test.depex -t DXE_DRIVER test.iii

    Test.iii file is the preprocessed dxs file like:

    DEPENDENCY_START
    { 0x26baccb2, 0x6f42, 0x11d4, {0xbc, 0xe7, 0x0, 0x80, 0xc7, 0x3c, 0x88, 0x81} } AND
    { 0xf617b358, 0x12cf, 0x414a, 0xa0, 0x69, 0x60, 0x67, 0x7b, 0xda, 0x13, 0xb3 }
    DEPENDENCY_END

Bugs

No known bugs.

Report bugs to [email protected]

Files

None

See also

None

License

Copyright (c) 2007 - 2016, Intel Corporation. All rights reserved.

This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at:

http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.