I'm trying to make one DXE driver dependent upon another. From the INF spec, it 
appears that I can put "AFTER path/to/dependency.inf" in my driver's Depex 
section. If I try this I get the error below.

(Python 2.7.3 on win32) Traceback (most recent call last):
  File "build.py", line 2032, in Main
  File "build.py", line 1788, in Launch
  File "build.py", line 1618, in _MultiThreadBuildPlatform
  File 
"c:\Users\Public\Documents\BuildPool\BaseTools\build\Source\Python\AutoGen\AutoGen.py",
 line 3460, in CreateCodeFile
  File 
"c:\Users\Public\Documents\BuildPool\BaseTools\build\Source\Python\AutoGen\AutoGen.py",
 line 2520, in _GetDepexTokenList
  File 
"c:\Users\Public\Documents\BuildPool\BaseTools\build\Source\Python\Workspace\WorkspaceDatabase.py",
 line 2377, in _GetDepex
AttributeError: 'InfBuildData' object has no attribute 'BuildDatabase'


Here is the relevant section of WorkspaceDatabase.py

  elif Token.endswith(".inf"):    # module file name
     ModuleFile = os.path.normpath(Token)
     Module = self.BuildDatabase[ModuleFile]
     if Module == None:
        EdkLogger.error('build', RESOURCE_NOT_AVAILABLE, "Module is not found 
in active platform",
                        ExtraData=Token, File=self.MetaFile, Line=Record[-1])
     DepexList.append(Module.Guid)


Should it be self._Bdb[ModuleFile] instead? Or, is there a better way to 
specify an inter-driver dependency? Unfortunately the other driver does not 
export a unique protocol which I can make my driver dependent upon.

Thanks,
David Schollmeyer
Intel CHD
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to