public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: <edk2-lists@mc2research.org>
To: "'Laszlo Ersek'" <lersek@redhat.com>, <edk2-devel@lists.01.org>
Subject: Re: Undefined types referenced in MdePkg
Date: Wed, 1 Aug 2018 16:51:10 -0700	[thread overview]
Message-ID: <01c501d429f2$867424d0$935c6e70$@mc2research.org> (raw)
In-Reply-To: 

Laszlo,

Thank you for the pointers to the dependent header files.

I agree that main API header files should include any headers that they depend upon and not require the developer to search out the dependencies.  Most modern pre-processors and compilers have optimizations to mitigate reading the same header file multiple times.  This invalidates the old rationale for policies that don't allow header files to include other header files.

Now, I need to find out why my search tool didn't find those headers.  ☹

In gratitude,
Daryl McDaniel
The Year of the Justifiably Defensive Lobster.
The Season of the fraternizing CEOs.

-----Original Message-----
From: edk2-devel <edk2-devel-bounces@lists.01.org> On Behalf Of Laszlo Ersek
Sent: Wednesday, August 1, 2018 2:56 PM
To: edk2-lists@mc2research.org; edk2-devel@lists.01.org
Subject: Re: [edk2] Undefined types referenced in MdePkg

On 08/01/18 19:49, edk2-lists@mc2research.org wrote:
> When including MdePkg/Include/Library/HobLib.h in my project I get 
> errors indicating that the following types are undefined:
> 
> *	EFI_RESOURCE_TYPE, lines 206 and 231
> *	EFI_RESOURCE_ATTRIBUTE_TYPE, lines 207 and 232
> 
>  
> 
> A similar thing is happening with MdePkg/Include/Protocol/FirmwareVolume2.h.
> 
> *	EFI_FV_FILE_ATTRIBUTES, lines 309, 443, 612
> 
>  
> 
> I updated my EDK II tree then searched the entire tree for these 
> types.  They only show up in the locations mentioned above; never defined.
> 
>  
> 
> Am I missing something or are these really undefined?
> 
>  
> 
> I don't want to just disable these errors since that could hide a 
> bigger problem.

IMO, the header files you mention should include the following files,
respectively:

- MdePkg/Include/Library/HobLib.h
  --> MdePkg/Include/Pi/PiHob.h

- MdePkg/Include/Protocol/FirmwareVolume2.h
  --> MdePkg/Include/Pi/PiFirmwareVolume.h

I'm firmly in the camp that believes that developers should not have to hunt down themselves the dependencies of the main API header file that they are actually interested in.

Thanks
Laszlo
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel



  reply	other threads:[~2018-08-01 23:51 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-01 17:49 Undefined types referenced in MdePkg edk2-lists
2018-08-01 21:55 ` Laszlo Ersek
2018-08-01 23:51   ` edk2-lists [this message]
2018-08-02 13:05     ` Gao, Liming
2018-08-02 18:24       ` Laszlo Ersek

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='01c501d429f2$867424d0$935c6e70$@mc2research.org' \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox