From: "Michael D Kinney" <michael.d.kinney@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
"Feng, Bob C" <bob.c.feng@intel.com>,
"pierre.gondois@arm.com" <pierre.gondois@arm.com>,
Sami Mujawar <Sami.Mujawar@arm.com>,
"Gao, Liming" <liming.gao@intel.com>,
"Kinney, Michael D" <michael.d.kinney@intel.com>
Cc: nd <nd@arm.com>
Subject: Re: [edk2-devel] [PATCH v1 1/1] INF Spec: Add file dependency to [Sources] syntax
Date: Wed, 1 Apr 2020 16:18:31 +0000 [thread overview]
Message-ID: <E92EE9817A31E24EB0585FDF735412F5B9EF2CEF@ORSMSX113.amr.corp.intel.com> (raw)
In-Reply-To: <2a878026944a490e83dc3fbe5726244b@intel.com>
Hi Pierre,
We discussed this in the bug scrub yesterday.
We think there may be a simpler way to address this issue
without extending the INF syntax.
It is our understanding that the ASL files need to be
processed before C files when both are present in an INF.
This is similar to the requirement that UNI files be processed
before C files that is already supported.
Please continue the discussion in Bugzilla with Bob.
Thanks,
Mike
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On
> Behalf Of Bob Feng
> Sent: Wednesday, April 1, 2020 1:53 AM
> To: devel@edk2.groups.io; pierre.gondois@arm.com; Sami
> Mujawar <Sami.Mujawar@arm.com>; Gao, Liming
> <liming.gao@intel.com>
> Cc: nd <nd@arm.com>
> Subject: Re: [edk2-devel] [PATCH v1 1/1] INF Spec: Add
> file dependency to [Sources] syntax
>
> Hi Pierre,
>
> I will review the spec and code change in this week.
>
> Thanks,
> Bob
>
> -----Original Message-----
> From: devel@edk2.groups.io [mailto:devel@edk2.groups.io]
> On Behalf Of PierreGondois
> Sent: Monday, March 30, 2020 11:52 PM
> To: devel@edk2.groups.io; Sami Mujawar
> <Sami.Mujawar@arm.com>; Feng, Bob C
> <bob.c.feng@intel.com>; Gao, Liming
> <liming.gao@intel.com>
> Cc: nd <nd@arm.com>
> Subject: Re: [edk2-devel] [PATCH v1 1/1] INF Spec: Add
> file dependency to [Sources] syntax
>
> Hello Liming and Bob,
> I couldn't find the list of maintainers for the
> specification files, but it seems Liming is a maintainer.
> If a maintainer is missing, please feel free to cc him,
>
> Regards,
> Pierre
>
> -----Original Message-----
> From: PierreGondois <pierre.gondois@arm.com>
> Sent: Monday, March 30, 2020 4:43 PM
> To: devel@edk2.groups.io
> Cc: Pierre Gondois <Pierre.Gondois@arm.com>;
> liming.gao@intel.com; sami.mujawar@arm.org; nd
> <nd@arm.com>
> Subject: [PATCH v1 1/1] INF Spec: Add file dependency to
> [Sources] syntax
>
> From: Pierre Gondois <Pierre.Gondois@arm.com>
>
> BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2464
>
> When building an edk2 module, a C file was including a
> .hex file generated by the compilation of an ASL file.
> To describe this dependency between an ASL file and a C
> file, the edk2 patch,
> - named "BaseTools: Build ASL files before C files",
> - discussed at:
> https://edk2.groups.io/g/devel/message/52550
> has been created.
> This patch allows to establish build dependencies in the
> [Sources] section, between files that are not of the same
> language.
> E.g.:
> [Sources]
> FileName1.X
> FileName2.Y : FileName1.X
> FileName3.Z : FileName1.X FileName2.Y
>
> Here:
> * FileName1.X will be built prior to FileName2.Y.
> * FileName1.X and FileName2.Y will be built prior to
> FileName3.Z.
>
> This patch updates the Inf specification accordingly.
>
> Signed-off-by: Pierre Gondois <pierre.gondois@arm.com>
> ---
>
> The changes can be seen at
> https://github.com/PierreARM/edk2-
> InfSpecification/tree/Bugzilla_2464_Enable_Build_Dependen
> cies_v1
>
> Notes:
> v1:
> - Enable build dependencies in the [Sources] section
>
> 2_inf_overview/25_[sources]_section.md
> | 12 ++++++++++++
> 3_edk_ii_inf_file_format/32_component_inf_definition.md
> | 3 +++
> 3_edk_ii_inf_file_format/39_[sources]_sections.md
> | 6 ++++--
> README.md
> | 1 +
> 4 files changed, 20 insertions(+), 2 deletions(-)
>
> diff --git a/2_inf_overview/25_[sources]_section.md
> b/2_inf_overview/25_[sources]_section.md
> index
> 54757e61e37268eed293a5288e607cf2c7cfacf6..5b9f0a8395ef2be
> 4497d99197dc695625d841830 100644
> --- a/2_inf_overview/25_[sources]_section.md
> +++ b/2_inf_overview/25_[sources]_section.md
> @@ -2,6 +2,7 @@
> 2.5 [Sources] Section
>
> Copyright (c) 2007-2019, Intel Corporation. All rights
> reserved.<BR>
> + Copyright (c) 2020, ARM Limited. All rights
> reserved.<BR>
>
> Redistribution and use in source (original document
> form) and 'compiled'
> forms (converted to PDF, epub, HTML and other formats)
> with or without @@ -94,6 +95,17 @@ The following is an
> example for sources sections.
>
> ```
>
> +The following example depicts the syntax to establish
> dependencies
> +between files of different source types. As shown in the
> example below,
> +Dsdt.asl will be compiled before DadtHandler.c:
> +
> +```ini
> +[Sources.common]
> + DsdtHandler.c : Dsdt.asl
> + DsdtHandler.h
> + Dsdt.asl
> +```
> +
> All Unicode files must be listed in the source section.
> If a Unicode file, `A.uni`, has the statement: `#include
> B.uni`, and `B.uni` has a statement:
> `#include C.uni`, both `B.uni` and `C.uni` files must be
> listed in the INF diff --git
> a/3_edk_ii_inf_file_format/32_component_inf_definition.md
> b/3_edk_ii_inf_file_format/32_component_inf_definition.md
> index
> 164771cb4cfff6e81fbf762a67ff741c190cecde..d776714c24c0baf
> 2348f53dc2576c9feb6f3cb5e 100644
> ---
> a/3_edk_ii_inf_file_format/32_component_inf_definition.md
> +++
> b/3_edk_ii_inf_file_format/32_component_inf_definition.md
> @@ -2,6 +2,7 @@
> 3.2 Component INF Definition
>
> Copyright (c) 2007-2019, Intel Corporation. All rights
> reserved.<BR>
> + Copyright (c) 2020, ARM Limited. All rights
> reserved.<BR>
>
> Redistribution and use in source (original document
> form) and 'compiled'
> forms (converted to PDF, epub, HTML and other formats)
> with or without @@ -133,6 +134,8 @@ The following are
> common definitions used by multiple section types.
> <Eq> ::= <TS> "=" <TS>
> <FieldSeparator> ::= "|"
> <FS> ::= <TS> <FieldSeparator> <TS>
> +<SrcDepSeperator> ::= ":"
> +<DepS> ::= <TS> <SrcDepSeperator> <TS>
> <Wildcard> ::= "*"
> <CommaSpace> ::= "," <Space>*
> <Cs> ::= "," <Space>*
> diff --git
> a/3_edk_ii_inf_file_format/39_[sources]_sections.md
> b/3_edk_ii_inf_file_format/39_[sources]_sections.md
> index
> 810995df26ba409ca2cf3ebe6238aa5d55cf81f1..ac966425101fd44
> a57b09d36f95a0f732eab1c59 100644
> --- a/3_edk_ii_inf_file_format/39_[sources]_sections.md
> +++ b/3_edk_ii_inf_file_format/39_[sources]_sections.md
> @@ -2,6 +2,7 @@
> 3.9 [Sources] Sections
>
> Copyright (c) 2007-2019, Intel Corporation. All rights
> reserved.<BR>
> + Copyright (c) 2020, ARM Limited. All rights
> reserved.<BR>
>
> Redistribution and use in source (original document
> form) and 'compiled'
> forms (converted to PDF, epub, HTML and other formats)
> with or without @@ -74,7 +75,8 @@ This section is not
> valid for a generated "As Built" binary INF file.
> <Options> ::= <FS> [<Family>] [<opt1>]
> <opt1> ::= <FS> [<TagName>] [<opt2>]
> <opt2> ::= <FS> [<ToolCode>] [<opt3>]
> -<opt3> ::= <FS> [<FeatureFlagExpress>]
> +<opt3> ::= <FS> [<FeatureFlagExpress>]
> [<opt4>]
> +<opt4> ::= <DepS> <FileNameDependency>+
> <Family> ::= {"MSFT"} {"GCC"} {"INTEL"}
> {<Wildcard>}
> <TagName> ::= {<ToolWord>} {"*"}
> <ToolCode> ::= _CommandCode_
> @@ -83,7 +85,7 @@ This section is not valid for a
> generated "As Built" binary INF file.
>
> #### Parameters
>
> -**_Filename_**
> +**_Filename_, _FileNameDependency_**
>
> Paths listed in the filename elements of the `[Sources]`
> section must be relative to the directory the INF file
> resides in. Use of "..", "." and "../"
> diff --git a/README.md b/README.md
> index
> 60fba19fd67fd8d3dd33199de23f9bfe20aea7c9..4f771fc0f6e4ff5
> 16be95b1879d58329ab3bbecc 100644
> --- a/README.md
> +++ b/README.md
> @@ -203,3 +203,4 @@ Copyright (c) 2007-2017, Intel
> Corporation. All rights reserved.
> | |
> [#1162](https://bugzilla.tianocore.org/show_bug.cgi?id=11
> 62) Correct the item in Table 1 to align with 3.4 section
> | |
> | 1.28 |
> [#1453](https://bugzilla.tianocore.org/show_bug.cgi?id=14
> 53) Update INF spec to remove EDK related contents
> | Mar 2019 |
> | 1.29 |
> [#1952](https://bugzilla.tianocore.org/show_bug.cgi?id=19
> 52) Add new MODULE_TYPE HOST_APPLICATION
> | July 2019 |
> +| |
> [#2646](https://bugzilla.tianocore.org/show_bug.cgi?id=26
> 46) Add file dependency to [Sources] syntax
> | |
> --
> 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'
>
>
>
>
>
>
next prev parent reply other threads:[~2020-04-01 16:18 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-30 15:43 [PATCH v1 1/1] INF Spec: Add file dependency to [Sources] syntax PierreGondois
2020-03-30 15:51 ` PierreGondois
2020-04-01 8:53 ` [edk2-devel] " Bob Feng
2020-04-01 16:18 ` Michael D Kinney [this message]
2020-04-15 15:40 ` PierreGondois
2020-04-20 18:15 ` PierreGondois
2020-04-23 9:37 ` Bob Feng
2020-04-24 16:30 ` PierreGondois
2020-05-07 8:16 ` Bob Feng
2020-05-01 16:15 ` PierreGondois
2020-03-30 16:27 ` PierreGondois
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=E92EE9817A31E24EB0585FDF735412F5B9EF2CEF@ORSMSX113.amr.corp.intel.com \
--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