* [Patch 2/5] DEC Spec: !error statement is not permitted in DEC file
2018-05-31 0:56 [Patch 1/5] Build Spec: Add !error statement support Yonghong Zhu
@ 2018-05-31 0:56 ` Yonghong Zhu
2018-05-31 0:56 ` [Patch 3/5] DSC Spec: Add !error statement support Yonghong Zhu
` (5 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Yonghong Zhu @ 2018-05-31 0:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Liming Gao, Michael Kinney, Kevin W Shaw
Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
---
2_dec_file_overview/22_declaration_file_format.md | 6 +++++-
3_edk_ii_dec_file_format/32_package_declaration_dec_definitions.md | 6 +++++-
README.md | 2 ++
3 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/2_dec_file_overview/22_declaration_file_format.md b/2_dec_file_overview/22_declaration_file_format.md
index 6ec30ff..4ebe23f 100644
--- a/2_dec_file_overview/22_declaration_file_format.md
+++ b/2_dec_file_overview/22_declaration_file_format.md
@@ -1,9 +1,9 @@
<!--- @file
2.2 Declaration File Format
- Copyright (c) 2007-2017, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2007-2018, Intel Corporation. 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
modification, are permitted provided that the following conditions are met:
@@ -404,5 +404,9 @@ PCD C name separated by a period "`.`" character. PCD C names are used in C
code and must follow the C variable name rule.
### 2.2.8 Conditional Directive Statements (!if...)
Conditional statements are NOT permitted in EDK II DEC files.
+
+### 2.2.9 !error Statements
+
+The `!error` statement is NOT permitted in EDK II DEC files.
diff --git a/3_edk_ii_dec_file_format/32_package_declaration_dec_definitions.md b/3_edk_ii_dec_file_format/32_package_declaration_dec_definitions.md
index dcf73d4..a3120f3 100644
--- a/3_edk_ii_dec_file_format/32_package_declaration_dec_definitions.md
+++ b/3_edk_ii_dec_file_format/32_package_declaration_dec_definitions.md
@@ -399,11 +399,15 @@ The conditional statements are not permitted anywhere within the DEC file.
### 3.2.4 !include Statement
The !include statement is not permitted in an EDK II DEC file.
-### 3.2.5 Special Comment Blocks
+### 3.2.5 !error Statement
+
+The `!error` statement is not permitted in an EDK II DEC file.
+
+### 3.2.6 Special Comment Blocks
This section defines special format comment blocks that contain information
about this package. These command blocks are not required.
The _UEFI Distribution Package Specification_ states the for a given PCD Token
diff --git a/README.md b/README.md
index bd076c0..1c593e9 100644
--- a/README.md
+++ b/README.md
@@ -169,5 +169,7 @@ Copyright (c) 2007-2017, Intel Corporation. All rights reserved.
| | [#465](https://bugzilla.tianocore.org/show_bug.cgi?id=465) DEC spec: document private definitions | |
| | [#482](https://bugzilla.tianocore.org/show_bug.cgi?id=482) DEC Spec: add clarification for [Ppis], [Guids], [Protocols], [Includes] Private support | |
| 1.27 | Update Version to 1.27 | Mar 2018 |
| | Add flexible PCD value format into spec | |
| | Add structure PCD definition syntax | |
+| | Add clarification that !error statement is not permitted in DEC file | |
+
\ No newline at end of file
--
2.6.1.windows.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Patch 3/5] DSC Spec: Add !error statement support
2018-05-31 0:56 [Patch 1/5] Build Spec: Add !error statement support Yonghong Zhu
2018-05-31 0:56 ` [Patch 2/5] DEC Spec: !error statement is not permitted in DEC file Yonghong Zhu
@ 2018-05-31 0:56 ` Yonghong Zhu
2018-05-31 0:56 ` [Patch 4/5] FDF " Yonghong Zhu
` (4 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Yonghong Zhu @ 2018-05-31 0:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Liming Gao, Michael Kinney, Kevin W Shaw
Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
---
2_dsc_overview/22_build_description_file_format.md | 21 +++++++++++++---
.../33_platform_dsc_definition.md | 28 ++++++++++++++++++++++
README.md | 1 +
3 files changed, 47 insertions(+), 3 deletions(-)
diff --git a/2_dsc_overview/22_build_description_file_format.md b/2_dsc_overview/22_build_description_file_format.md
index 9c5c9f8..1ce890f 100644
--- a/2_dsc_overview/22_build_description_file_format.md
+++ b/2_dsc_overview/22_build_description_file_format.md
@@ -1,9 +1,9 @@
<!--- @file
2.2 Build Description File Format
- Copyright (c) 2006-2017, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006-2018, Intel Corporation. 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
modification, are permitted provided that the following conditions are met:
@@ -641,11 +641,26 @@ The following are examples of conditional directives.
!else
# The strings do not match exactly
!endif
```
-### 2.2.9 Expressions
+### 2.2.9 !error Statement
+
+The `!error` statement may appear within any section of EDK II DSC file. The
+argument of this statement is an error message, it causes build tool to stop
+at the location where the statement is encountered and error message following
+the `!error` statement is output as a message.
+
+The following example show the valid usage of the `!error` statement.
+
+```ini
+!if $(FEATURE_ENABLE) == TRUE
+ !error "unsupported feature!"
+!endif
+```
+
+### 2.2.10 Expressions
Expressions can be used in conditional directive comparison statements and in
value fields for Macros and PCDs in the DSC and FDF files.
Refer to the EDK II Expression Syntax Specification for additional information.
@@ -702,11 +717,11 @@ names specified on the command line or come from the `Conf/target.txt` file.
For logical expressions, any non-zero value must be considered `TRUE`.
Invalid expressions must cause a build break with an appropriate error message.
-### 2.2.10 Section Handling
+### 2.2.11 Section Handling
The DSC file parsing routines must process the sections so that common
architecture sections are logically merged with the architecturally specific
sections. The architectural sections need to be processed so that they are
logically after the common section. It is recommended that EDK II developers
diff --git a/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md b/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md
index 313fc20..d99e20b 100644
--- a/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md
+++ b/3_edk_ii_dsc_file_format/33_platform_dsc_definition.md
@@ -734,5 +734,33 @@ as well as to define new entries.
**********
**Note:** The extension used in the example, "mak", is just a three
character extension, and would not processed by `make` or `nmake` commands. It
might just as well have been "foo".
**********
+
+### 3.3.5 !error Statements
+
+Use of this statement is optional.
+
+#### Summary
+This section defines the `!error` statement in EDK II Platform (DSC) files.
+This statement is used to cause build tool to stop at the location where the
+statement is encountered and error message following the `!error` statement
+is output as a message.
+
+#### Prototype
+
+`<ErrorStatement> ::= <TS> "!error" <MTS> <ErrorMessage> <EOL>`
+`<ErrorMessage> ::= <AsciiString>`
+
+#### Parameters
+
+**_ErrorMessage_**
+
+It should in the same line with `!error` statement, and it can consist of several
+words not necessarily in quotes.
+
+#### Example (EDK II DSC)
+
+```
+!error "unsupported feature!"
+```
diff --git a/README.md b/README.md
index 3e14b34..54d50cb 100644
--- a/README.md
+++ b/README.md
@@ -190,5 +190,6 @@ Copyright (c) 2006-2017, Intel Corporation. All rights reserved.
| | Update Skuid value to support Hex number | |
| | Add flexible PCD value format into spec | |
| | Add syntax to support SKU ID inherit from another SKU ID | |
| | Add DefaultStores section to describe the default setting | |
| | Add structure PCD field value assignment syntax | |
+| | Add !error statement section | |
--
2.6.1.windows.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Patch 4/5] FDF Spec: Add !error statement support
2018-05-31 0:56 [Patch 1/5] Build Spec: Add !error statement support Yonghong Zhu
2018-05-31 0:56 ` [Patch 2/5] DEC Spec: !error statement is not permitted in DEC file Yonghong Zhu
2018-05-31 0:56 ` [Patch 3/5] DSC Spec: Add !error statement support Yonghong Zhu
@ 2018-05-31 0:56 ` Yonghong Zhu
2018-05-31 0:56 ` [Patch 5/5] INF Spec: !error statement is not permitted in INF file Yonghong Zhu
` (3 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Yonghong Zhu @ 2018-05-31 0:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Liming Gao, Michael Kinney, Kevin W Shaw
Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
---
.../22_flash_description_file_format.md | 17 +++++++++++-
3_edk_ii_fdf_file_format/32_fdf_definition.md | 30 +++++++++++++++++++++-
README.md | 1 +
3 files changed, 46 insertions(+), 2 deletions(-)
diff --git a/2_fdf_design_discussion/22_flash_description_file_format.md b/2_fdf_design_discussion/22_flash_description_file_format.md
index 368ce32..8b29fda 100644
--- a/2_fdf_design_discussion/22_flash_description_file_format.md
+++ b/2_fdf_design_discussion/22_flash_description_file_format.md
@@ -615,11 +615,26 @@ The following is an example of conditional statements.
# FOO is not defined while BARFOO is either NOT defined or does not
# equal "FOOBAR"
!endif
```
-### 2.2.9 Expressions
+### 2.2.9 !error Statement
+
+The `!error` statement may appear within any section of EDK II FDF file. The
+argument of this statement is an error message, it causes build tool to stop
+at the location where the statement is encountered and error message following
+the `!error` statement is output as a message.
+
+The following example show the valid usage of the `!error` statement.
+
+```ini
+!if $(FEATURE_ENABLE) == TRUE
+ !error "unsupported feature!"
+!endif
+```
+
+### 2.2.10 Expressions
Expressions can be used in conditional directive comparison statements and in
value fields for Macros and PCDs in the DSC and FDF files.
Expressions follow C relation, equality, logical and bitwise precedence and
diff --git a/3_edk_ii_fdf_file_format/32_fdf_definition.md b/3_edk_ii_fdf_file_format/32_fdf_definition.md
index 1379db4..a097751 100644
--- a/3_edk_ii_fdf_file_format/32_fdf_definition.md
+++ b/3_edk_ii_fdf_file_format/32_fdf_definition.md
@@ -1,9 +1,9 @@
<!--- @file
3.2 FDF Definition
- Copyright (c) 2006-2017, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2006-2018, Intel Corporation. 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
modification, are permitted provided that the following conditions are met:
@@ -663,5 +663,33 @@ build system must exit with an appropriate error message.
!include myPlatform/NvRamDefs.txt
!include myFeatures.mak
!include $(WORKSPACE)/PackageDir/Features.dsc
!include $(MACRO1)/AnotherDir/$(MACRO2)/Features.dsc
```
+
+### 3.2.5 !error Statements
+
+Use of this statement is optional.
+
+#### Summary
+This section defines the `!error` statement in EDK II FDF files.
+This statement is used to cause build tool to stop at the location where the
+statement is encountered and error message following the `!error` statement
+is output as a message.
+
+#### Prototype
+
+`<ErrorStatement> ::= <TS> "!error" <MTS> <ErrorMessage> <EOL>`
+`<ErrorMessage> ::= <AsciiString>`
+
+#### Parameters
+
+**_ErrorMessage_**
+
+It should in the same line with `!error` statement, and it can consist of several
+words not necessarily in quotes.
+
+#### Example (EDK II FDF)
+
+```
+!error "unsupported feature!"
+```
\ No newline at end of file
diff --git a/README.md b/README.md
index 7615e05..042e2ca 100644
--- a/README.md
+++ b/README.md
@@ -209,5 +209,6 @@ Copyright (c) 2006-2017, Intel Corporation. All rights reserved.
| | [#520](https://bugzilla.tianocore.org/show_bug.cgi?id=520) FDF spec: Update Precedence of PCD Values | |
| | [#585](https://bugzilla.tianocore.org/show_bug.cgi?id=585) FDF Spec: Update the FDF_SPECIFICATION version to 0x0001001B or 1.27 | |
| 1.28 | Update version to 1.28 | March 2018 |
| | Per PI 1.6 to extend FFS alignment to 16M | |
| | Per PI 1.6 to support FV extended header entry contain the used size of FV | |
+| | Add !error statement section | |
--
2.6.1.windows.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Patch 5/5] INF Spec: !error statement is not permitted in INF file
2018-05-31 0:56 [Patch 1/5] Build Spec: Add !error statement support Yonghong Zhu
` (2 preceding siblings ...)
2018-05-31 0:56 ` [Patch 4/5] FDF " Yonghong Zhu
@ 2018-05-31 0:56 ` Yonghong Zhu
2018-05-31 10:27 ` [Patch 1/5] Build Spec: Add !error statement support Laszlo Ersek
` (2 subsequent siblings)
6 siblings, 0 replies; 10+ messages in thread
From: Yonghong Zhu @ 2018-05-31 0:56 UTC (permalink / raw)
To: edk2-devel; +Cc: Liming Gao, Michael Kinney, Kevin W Shaw
Cc: Liming Gao <liming.gao@intel.com>
Cc: Michael Kinney <michael.d.kinney@intel.com>
Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
---
2_inf_overview/22_information_file_general_rules.md | 8 ++++++--
3_edk_ii_inf_file_format/32_component_inf_definition.md | 8 ++++++--
README.md | 1 +
3 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/2_inf_overview/22_information_file_general_rules.md b/2_inf_overview/22_information_file_general_rules.md
index 55038f5..4741917 100644
--- a/2_inf_overview/22_information_file_general_rules.md
+++ b/2_inf_overview/22_information_file_general_rules.md
@@ -1,9 +1,9 @@
<!--- @file
2.2 Information File General Rules
- Copyright (c) 2007-2017, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2007-2018, Intel Corporation. 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
modification, are permitted provided that the following conditions are met:
@@ -329,10 +329,14 @@ satisfy a library class dependency.
### 2.2.7 Conditional Directive Statements (!if...)
Conditional statements are NOT permitted in the EDK II INF files.
-### 2.2.8 Expressions
+### 2.2.8 !error Statement
+
+The `!error` statement is NOT permitted in the EDK II INF files.
+
+### 2.2.9 Expressions
Expressions are supported in specific statements within the EDK II INF files.
The expression syntax is defined in the _EDK II Expression Syntax
Specification_.
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 5c6d8ac..7725ffe 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
@@ -1,9 +1,9 @@
<!--- @file
3.2 Component INF Definition
- Copyright (c) 2007-2017, Intel Corporation. All rights reserved.<BR>
+ Copyright (c) 2007-2018, Intel Corporation. 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
modification, are permitted provided that the following conditions are met:
@@ -425,11 +425,15 @@ The conditional statements are not permitted anywhere within the INF file.
### 3.2.4 !include Statement
The `!include` statement is not permitted in an EDK II INF file.
-### 3.2.5 Special Comment Blocks
+### 3.2.5 !error Statement
+
+The `!error` statement is not permitted in an EDK II INF file.
+
+### 3.2.6 Special Comment Blocks
This section defines special format comment blocks that contain information
about this module. These comment blocks are not required. They may appear at
the end of any section within the INF file, however it is preferred that they
appear at the end of the file. The format of these comment blocks is the
diff --git a/README.md b/README.md
index 194d3e3..7d112f3 100644
--- a/README.md
+++ b/README.md
@@ -196,5 +196,6 @@ Copyright (c) 2007-2017, Intel Corporation. All rights reserved.
| | [#463](https://bugzilla.tianocore.org/show_bug.cgi?id=463) INF spec: document the LIB file type under the [Binaries] Section | |
| | [#548](https://bugzilla.tianocore.org/show_bug.cgi?id=548) [INF spec] INF [LibraryClasses] section should not support ModuleType | |
| | [#522](https://bugzilla.tianocore.org/show_bug.cgi?id=522) INF spec: add the clarification that PCD value may from build command | |
| 1.27 | Update version to 1.27 | Mar 2018 |
| | Add Flexible PCD value format support | |
+| | Add clarification that !error statement is not permitted in INF file | |
--
2.6.1.windows.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [Patch 1/5] Build Spec: Add !error statement support
2018-05-31 0:56 [Patch 1/5] Build Spec: Add !error statement support Yonghong Zhu
` (3 preceding siblings ...)
2018-05-31 0:56 ` [Patch 5/5] INF Spec: !error statement is not permitted in INF file Yonghong Zhu
@ 2018-05-31 10:27 ` Laszlo Ersek
2018-06-01 0:15 ` Zhu, Yonghong
2018-06-04 20:05 ` Kinney, Michael D
2018-06-07 8:00 ` Gao, Liming
6 siblings, 1 reply; 10+ messages in thread
From: Laszlo Ersek @ 2018-05-31 10:27 UTC (permalink / raw)
To: Yonghong Zhu, edk2-devel; +Cc: Michael Kinney, Kevin W Shaw, Liming Gao
Hello Yonghong,
On 05/31/18 02:56, Yonghong Zhu wrote:
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Michael Kinney <michael.d.kinney@intel.com>
> Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
> ---
> 8_pre-build_autogen_stage/82_auto-generation_process.md | 6 ++++++
> README.md | 3 ++-
> 2 files changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/8_pre-build_autogen_stage/82_auto-generation_process.md b/8_pre-build_autogen_stage/82_auto-generation_process.md
> index 8f8f29b..abfa55c 100644
> --- a/8_pre-build_autogen_stage/82_auto-generation_process.md
> +++ b/8_pre-build_autogen_stage/82_auto-generation_process.md
> @@ -1058,10 +1058,16 @@ hash value file into the directory specified by binary-destination at the build
> When --hash and --binary-source are specified, build tool will try to get the binary
> files from the binary source directory at the build phase. If the cached binary has
> the same hash value, it will be directly used. Otherwise, build tool will compile the
> source files and generate the binary files.
>
> +#### 8.2.4.16 !error Statement
> +
> +The DSC and FDF file can use `!error` statement. The argument of this statement is an
> +error message, it causes build tool to stop at the location where the statement is
> +encountered and error message following the `!error` statement is output as a message.
> +
> ### 8.2.5 Post processing
>
> Once all files are parsed, the build tools will do following work for each EDK
> II module:
>
> diff --git a/README.md b/README.md
> index 18e46c9..9ca8733 100644
> --- a/README.md
> +++ b/README.md
> @@ -223,6 +223,7 @@ Copyright (c) 2008-2017, Intel Corporation. All rights reserved.
> | | [#775](https://bugzilla.tianocore.org/show_bug.cgi?id=775) Build spec: Add description about auto detect thread number | |
> | | Add Flexible PCD value format into spec | |
> | | Update PCD value and SKU, DefaultStore info in build report | |
> | | Clarify structure PCD field value assignment precedence | |
> | | Update description for build handles PCDs for SKU support | |
> -| | Add statement about module scoped `<Pcd*>` section override scope | |
> +| | Add statement about module scoped `<Pcd*>` section override scope | |
> +| | Add !error statement section | |
>
I think the correct TianoCore BZ is not 775, but 701; compare:
https://bugzilla.tianocore.org/show_bug.cgi?id=775
"Allow build tools to auto-detect MAX_CONCURRENT_THREAD_NUMBER"
https://bugzilla.tianocore.org/show_bug.cgi?id=701
"RFE: please introduce !error directive"
Thanks!
Laszlo
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Patch 1/5] Build Spec: Add !error statement support
2018-05-31 10:27 ` [Patch 1/5] Build Spec: Add !error statement support Laszlo Ersek
@ 2018-06-01 0:15 ` Zhu, Yonghong
0 siblings, 0 replies; 10+ messages in thread
From: Zhu, Yonghong @ 2018-06-01 0:15 UTC (permalink / raw)
To: Laszlo Ersek, edk2-devel@lists.01.org
Cc: Kinney, Michael D, Shaw, Kevin W, Gao, Liming, Zhu, Yonghong
Hi Laszlo,
I didn't add Bugzilla info for !error bug. When I commit this patch, I will add this Bugzilla info.
Best Regards,
Zhu Yonghong
-----Original Message-----
From: Laszlo Ersek [mailto:lersek@redhat.com]
Sent: Thursday, May 31, 2018 6:27 PM
To: Zhu, Yonghong <yonghong.zhu@intel.com>; edk2-devel@lists.01.org
Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Shaw, Kevin W <kevin.w.shaw@intel.com>; Gao, Liming <liming.gao@intel.com>
Subject: Re: [edk2] [Patch 1/5] Build Spec: Add !error statement support
Hello Yonghong,
On 05/31/18 02:56, Yonghong Zhu wrote:
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Michael Kinney <michael.d.kinney@intel.com>
> Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
> ---
> 8_pre-build_autogen_stage/82_auto-generation_process.md | 6 ++++++
> README.md | 3 ++-
> 2 files changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/8_pre-build_autogen_stage/82_auto-generation_process.md
> b/8_pre-build_autogen_stage/82_auto-generation_process.md
> index 8f8f29b..abfa55c 100644
> --- a/8_pre-build_autogen_stage/82_auto-generation_process.md
> +++ b/8_pre-build_autogen_stage/82_auto-generation_process.md
> @@ -1058,10 +1058,16 @@ hash value file into the directory specified
> by binary-destination at the build When --hash and --binary-source
> are specified, build tool will try to get the binary files from the
> binary source directory at the build phase. If the cached binary has
> the same hash value, it will be directly used. Otherwise, build tool will compile the source files and generate the binary files.
>
> +#### 8.2.4.16 !error Statement
> +
> +The DSC and FDF file can use `!error` statement. The argument of this
> +statement is an error message, it causes build tool to stop at the
> +location where the statement is encountered and error message following the `!error` statement is output as a message.
> +
> ### 8.2.5 Post processing
>
> Once all files are parsed, the build tools will do following work for
> each EDK II module:
>
> diff --git a/README.md b/README.md
> index 18e46c9..9ca8733 100644
> --- a/README.md
> +++ b/README.md
> @@ -223,6 +223,7 @@ Copyright (c) 2008-2017, Intel Corporation. All rights reserved.
> | | [#775](https://bugzilla.tianocore.org/show_bug.cgi?id=775) Build spec: Add description about auto detect thread number | |
> | | Add Flexible PCD value format into spec | |
> | | Update PCD value and SKU, DefaultStore info in build report | |
> | | Clarify structure PCD field value assignment precedence | |
> | | Update description for build handles PCDs for SKU support | |
> -| | Add statement about module scoped `<Pcd*>` section override scope | |
> +| | Add statement about module scoped `<Pcd*>` section override scope | |
> +| | Add !error statement section | |
>
I think the correct TianoCore BZ is not 775, but 701; compare:
https://bugzilla.tianocore.org/show_bug.cgi?id=775
"Allow build tools to auto-detect MAX_CONCURRENT_THREAD_NUMBER"
https://bugzilla.tianocore.org/show_bug.cgi?id=701
"RFE: please introduce !error directive"
Thanks!
Laszlo
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Patch 1/5] Build Spec: Add !error statement support
2018-05-31 0:56 [Patch 1/5] Build Spec: Add !error statement support Yonghong Zhu
` (4 preceding siblings ...)
2018-05-31 10:27 ` [Patch 1/5] Build Spec: Add !error statement support Laszlo Ersek
@ 2018-06-04 20:05 ` Kinney, Michael D
2018-06-05 12:36 ` Zhu, Yonghong
2018-06-07 8:00 ` Gao, Liming
6 siblings, 1 reply; 10+ messages in thread
From: Kinney, Michael D @ 2018-06-04 20:05 UTC (permalink / raw)
To: Zhu, Yonghong, edk2-devel@lists.01.org, Kinney, Michael D
Cc: Shaw, Kevin W, Gao, Liming
Yonghong,
I think it should be stated that the build tool also
returns an error code. This allows scripts that invoke
build to check the returned error code.
Mike
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-
> bounces@lists.01.org] On Behalf Of Yonghong Zhu
> Sent: Wednesday, May 30, 2018 5:56 PM
> To: edk2-devel@lists.01.org
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>;
> Shaw, Kevin W <kevin.w.shaw@intel.com>; Gao, Liming
> <liming.gao@intel.com>
> Subject: [edk2] [Patch 1/5] Build Spec: Add !error
> statement support
>
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Michael Kinney <michael.d.kinney@intel.com>
> Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
> ---
> 8_pre-build_autogen_stage/82_auto-generation_process.md
> | 6 ++++++
> README.md
> | 3 ++-
> 2 files changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/8_pre-build_autogen_stage/82_auto-
> generation_process.md b/8_pre-
> build_autogen_stage/82_auto-generation_process.md
> index 8f8f29b..abfa55c 100644
> --- a/8_pre-build_autogen_stage/82_auto-
> generation_process.md
> +++ b/8_pre-build_autogen_stage/82_auto-
> generation_process.md
> @@ -1058,10 +1058,16 @@ hash value file into the
> directory specified by binary-destination at the build
> When --hash and --binary-source are specified, build
> tool will try to get the binary
> files from the binary source directory at the build
> phase. If the cached binary has
> the same hash value, it will be directly used.
> Otherwise, build tool will compile the
> source files and generate the binary files.
>
> +#### 8.2.4.16 !error Statement
> +
> +The DSC and FDF file can use `!error` statement. The
> argument of this statement is an
> +error message, it causes build tool to stop at the
> location where the statement is
> +encountered and error message following the `!error`
> statement is output as a message.
> +
> ### 8.2.5 Post processing
>
> Once all files are parsed, the build tools will do
> following work for each EDK
> II module:
>
> diff --git a/README.md b/README.md
> index 18e46c9..9ca8733 100644
> --- a/README.md
> +++ b/README.md
> @@ -223,6 +223,7 @@ Copyright (c) 2008-2017, Intel
> Corporation. All rights reserved.
> | |
> [#775](https://bugzilla.tianocore.org/show_bug.cgi?id=77
> 5) Build spec: Add description about auto detect thread
> number
> | |
> | | Add Flexible PCD value format into spec
> | |
> | | Update PCD value and SKU, DefaultStore
> info in build report
> | |
> | | Clarify structure PCD field value
> assignment precedence
> | |
> | | Update description for build handles
> PCDs for SKU support
> | |
> -| | Add statement about module scoped
> `<Pcd*>` section override scope
> | |
> +| | Add statement about module scoped
> `<Pcd*>` section override scope
> | |
> +| | Add !error statement section
> | |
> --
> 2.6.1.windows.1
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Patch 1/5] Build Spec: Add !error statement support
2018-06-04 20:05 ` Kinney, Michael D
@ 2018-06-05 12:36 ` Zhu, Yonghong
0 siblings, 0 replies; 10+ messages in thread
From: Zhu, Yonghong @ 2018-06-05 12:36 UTC (permalink / raw)
To: Kinney, Michael D, edk2-devel@lists.01.org
Cc: Shaw, Kevin W, Gao, Liming, Zhu, Yonghong
Hi Mike,
Yes, build tool will return error code when build break. This is the document patch to add '!error' statement.
Best Regards,
Zhu Yonghong
-----Original Message-----
From: Kinney, Michael D
Sent: Tuesday, June 05, 2018 4:06 AM
To: Zhu, Yonghong <yonghong.zhu@intel.com>; edk2-devel@lists.01.org; Kinney, Michael D <michael.d.kinney@intel.com>
Cc: Shaw, Kevin W <kevin.w.shaw@intel.com>; Gao, Liming <liming.gao@intel.com>
Subject: RE: [edk2] [Patch 1/5] Build Spec: Add !error statement support
Yonghong,
I think it should be stated that the build tool also returns an error code. This allows scripts that invoke build to check the returned error code.
Mike
> -----Original Message-----
> From: edk2-devel [mailto:edk2-devel-
> bounces@lists.01.org] On Behalf Of Yonghong Zhu
> Sent: Wednesday, May 30, 2018 5:56 PM
> To: edk2-devel@lists.01.org
> Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Shaw, Kevin W
> <kevin.w.shaw@intel.com>; Gao, Liming <liming.gao@intel.com>
> Subject: [edk2] [Patch 1/5] Build Spec: Add !error statement support
>
> Cc: Liming Gao <liming.gao@intel.com>
> Cc: Michael Kinney <michael.d.kinney@intel.com>
> Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
> ---
> 8_pre-build_autogen_stage/82_auto-generation_process.md
> | 6 ++++++
> README.md
> | 3 ++-
> 2 files changed, 8 insertions(+), 1 deletion(-)
>
> diff --git a/8_pre-build_autogen_stage/82_auto-
> generation_process.md b/8_pre-
> build_autogen_stage/82_auto-generation_process.md
> index 8f8f29b..abfa55c 100644
> --- a/8_pre-build_autogen_stage/82_auto-
> generation_process.md
> +++ b/8_pre-build_autogen_stage/82_auto-
> generation_process.md
> @@ -1058,10 +1058,16 @@ hash value file into the directory specified
> by binary-destination at the build When --hash and --binary-source
> are specified, build tool will try to get the binary files from the
> binary source directory at the build phase. If the cached binary has
> the same hash value, it will be directly used.
> Otherwise, build tool will compile the source files and generate the
> binary files.
>
> +#### 8.2.4.16 !error Statement
> +
> +The DSC and FDF file can use `!error` statement. The
> argument of this statement is an
> +error message, it causes build tool to stop at the
> location where the statement is
> +encountered and error message following the `!error`
> statement is output as a message.
> +
> ### 8.2.5 Post processing
>
> Once all files are parsed, the build tools will do following work for
> each EDK II module:
>
> diff --git a/README.md b/README.md
> index 18e46c9..9ca8733 100644
> --- a/README.md
> +++ b/README.md
> @@ -223,6 +223,7 @@ Copyright (c) 2008-2017, Intel Corporation. All
> rights reserved.
> | |
> [#775](https://bugzilla.tianocore.org/show_bug.cgi?id=77
> 5) Build spec: Add description about auto detect thread number
> | |
> | | Add Flexible PCD value format into spec
> | |
> | | Update PCD value and SKU, DefaultStore
> info in build report
> | |
> | | Clarify structure PCD field value
> assignment precedence
> | |
> | | Update description for build handles
> PCDs for SKU support
> | |
> -| | Add statement about module scoped
> `<Pcd*>` section override scope
> | |
> +| | Add statement about module scoped
> `<Pcd*>` section override scope
> | |
> +| | Add !error statement section
> | |
> --
> 2.6.1.windows.1
>
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [Patch 1/5] Build Spec: Add !error statement support
2018-05-31 0:56 [Patch 1/5] Build Spec: Add !error statement support Yonghong Zhu
` (5 preceding siblings ...)
2018-06-04 20:05 ` Kinney, Michael D
@ 2018-06-07 8:00 ` Gao, Liming
6 siblings, 0 replies; 10+ messages in thread
From: Gao, Liming @ 2018-06-07 8:00 UTC (permalink / raw)
To: Zhu, Yonghong, edk2-devel@lists.01.org; +Cc: Kinney, Michael D, Shaw, Kevin W
Reviewed-by: Liming Gao <liming.gao@intel.com>
>-----Original Message-----
>From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of
>Yonghong Zhu
>Sent: Thursday, May 31, 2018 8:56 AM
>To: edk2-devel@lists.01.org
>Cc: Kinney, Michael D <michael.d.kinney@intel.com>; Shaw, Kevin W
><kevin.w.shaw@intel.com>; Gao, Liming <liming.gao@intel.com>
>Subject: [edk2] [Patch 1/5] Build Spec: Add !error statement support
>
>Cc: Liming Gao <liming.gao@intel.com>
>Cc: Michael Kinney <michael.d.kinney@intel.com>
>Cc: Kevin W Shaw <kevin.w.shaw@intel.com>
>Contributed-under: TianoCore Contribution Agreement 1.1
>Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com>
>---
> 8_pre-build_autogen_stage/82_auto-generation_process.md | 6 ++++++
> README.md | 3 ++-
> 2 files changed, 8 insertions(+), 1 deletion(-)
>
>diff --git a/8_pre-build_autogen_stage/82_auto-generation_process.md
>b/8_pre-build_autogen_stage/82_auto-generation_process.md
>index 8f8f29b..abfa55c 100644
>--- a/8_pre-build_autogen_stage/82_auto-generation_process.md
>+++ b/8_pre-build_autogen_stage/82_auto-generation_process.md
>@@ -1058,10 +1058,16 @@ hash value file into the directory specified by
>binary-destination at the build
> When --hash and --binary-source are specified, build tool will try to get the
>binary
> files from the binary source directory at the build phase. If the cached binary
>has
> the same hash value, it will be directly used. Otherwise, build tool will compile
>the
> source files and generate the binary files.
>
>+#### 8.2.4.16 !error Statement
>+
>+The DSC and FDF file can use `!error` statement. The argument of this
>statement is an
>+error message, it causes build tool to stop at the location where the
>statement is
>+encountered and error message following the `!error` statement is output as
>a message.
>+
> ### 8.2.5 Post processing
>
> Once all files are parsed, the build tools will do following work for each EDK
> II module:
>
>diff --git a/README.md b/README.md
>index 18e46c9..9ca8733 100644
>--- a/README.md
>+++ b/README.md
>@@ -223,6 +223,7 @@ Copyright (c) 2008-2017, Intel Corporation. All rights
>reserved.
> | | [#775](https://bugzilla.tianocore.org/show_bug.cgi?id=775) Build
>spec: Add description about auto detect thread number
>| |
> | | Add Flexible PCD value format into spec
>| |
> | | Update PCD value and SKU, DefaultStore info in build report
>| |
> | | Clarify structure PCD field value assignment precedence
>| |
> | | Update description for build handles PCDs for SKU support
>| |
>-| | Add statement about module scoped `<Pcd*>` section override
>scope
>| |
>+| | Add statement about module scoped `<Pcd*>` section override
>scope
>| |
>+| | Add !error statement section
>| |
>--
>2.6.1.windows.1
>
>_______________________________________________
>edk2-devel mailing list
>edk2-devel@lists.01.org
>https://lists.01.org/mailman/listinfo/edk2-devel
^ permalink raw reply [flat|nested] 10+ messages in thread