Hi Justin,

The EDK II tools should support a binary INF file that has both the drive and 
the compiled depex file in the [Binaries] section.
Using the PcAtChipsetPkg/PcatRealTimeClockRuntimeDex.inf as an example, a valid 
INF for the binary would looks like:
[Defines]
  INF_VERSION                = 0x00010016
  BASE_NAME                  = PcRtc
  FILE_GUID                  = 378D7B65-8DA9-4773-B6E4-A47826A833E1
  MODULE_TYPE                = DXE_RUNTIME_DRIVER
  VERSION_STRING             = 1.0

[Binaries.IA32]
  PE32|Ia32/PcRtc.efi
  DXE_DEPEX|Ia32/PcRtc.depex

The tools do not support building a source depex file without building the 
module from source.

The tools will ignore the sources section if a [Binaries] section does exist; 
so the following is not valid:
[Defines]
  INF_VERSION                = 0x00010016
  BASE_NAME                  = PcRtc
  FILE_GUID                  = 378D7B65-8DA9-4773-B6E4-A47826A833E1
  MODULE_TYPE                = DXE_RUNTIME_DRIVER
  VERSION_STRING             = 1.0
  DPX_SOURCE = myDepexSrc.depex

[Binaries.IA32]
  PE32|Ia32/PcRtc.efi

Nor can you specify a [Depex] section in an INF file that has the binary efi 
file. The following is also not valid
[Defines]
  INF_VERSION                = 0x00010016
  BASE_NAME                  = PcRtc
  FILE_GUID                  = 378D7B65-8DA9-4773-B6E4-A47826A833E1
  MODULE_TYPE                = DXE_RUNTIME_DRIVER
  VERSION_STRING             = 1.0

[Binaries.IA32]
  PE32|Ia32/PcRtc.efi

[Depex]
  gEfiVariableArchProtocolGuid AND gEfiVariableWriteArchProtocolGuid

Cheers,
Larry


From: Andrew Fish [mailto:[email protected]]
Sent: Monday, December 03, 2012 3:25 PM
To: [email protected]
Cc: [email protected]
Subject: Re: [edk2-buildtools] [edk2] binary-only modules and [depex] sections

Sounds like a bug to me.

Thanks,

Andrew

On Dec 3, 2012, at 3:00 PM, 
[email protected]<mailto:[email protected]> wrote:


Hi all,
I have some binary-only drivers with dependency expressions that are not being 
processed. These drivers are not UEFI model drivers.

I see in WorkspaceDatabase.py:
# If the module has only Binaries and no Sources, then ignore [Depex]
if self.Sources == None or self.Sources == []:
    if self.Binaries != None and self.Binaries != []:
        return self._Depex
The intent being obvious from the comment (comes from SVN revision 2135 of 
edk2-buildtools repo). My question is, why are the [Depex] sections ignored 
from INFs with only binaries? I don't see in any of the EDKII documentation 
where this is stated. Is this a behavior that could be changed?


--
Justin Johnson
Platform Software Engineer
Dell, Inc.


------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d_______________________________________________
edk2-devel mailing list
[email protected]<mailto:[email protected]>
https://lists.sourceforge.net/lists/listinfo/edk2-devel

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
edk2-buildtools-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-buildtools-devel

Reply via email to