From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR01-VE1-obe.outbound.protection.outlook.com (EUR01-VE1-obe.outbound.protection.outlook.com [40.107.14.49]) by mx.groups.io with SMTP id smtpd.web11.53408.1585583509273964568 for ; Mon, 30 Mar 2020 08:51:50 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=DFzTxpzf; spf=pass (domain: arm.com, ip: 40.107.14.49, mailfrom: pierre.gondois@arm.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=09oRzp5pMlsU6t6BFDHjvIPRsgRy+u/BHxTRyNJaZSw=; b=DFzTxpzfSJR9sHvaEMOea1fUYM7QkJiSHm0dnfr6V6U6ViDwlyyJAFKOUBpqTi/vnzHvWbYwHPylb4imfYZbajFpwtMIa5fA5HJUH7fGldKNN7oTj87a3vFPfrIp3AoCLP08UMeqJsmJDWTCu/zJNkGncFvfFbZUdA57pupZ0VI= Received: from DB7PR05CA0040.eurprd05.prod.outlook.com (2603:10a6:10:2e::17) by AM7PR08MB5414.eurprd08.prod.outlook.com (2603:10a6:20b:105::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2856.19; Mon, 30 Mar 2020 15:51:46 +0000 Received: from DB5EUR03FT033.eop-EUR03.prod.protection.outlook.com (2603:10a6:10:2e:cafe::1f) by DB7PR05CA0040.outlook.office365.com (2603:10a6:10:2e::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2856.19 via Frontend Transport; Mon, 30 Mar 2020 15:51:46 +0000 Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; edk2.groups.io; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;edk2.groups.io; dmarc=bestguesspass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5EUR03FT033.mail.protection.outlook.com (10.152.20.76) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2856.17 via Frontend Transport; Mon, 30 Mar 2020 15:51:46 +0000 Received: ("Tessian outbound 6835489d965f:v48"); Mon, 30 Mar 2020 15:51:46 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 9f6e8827168c94f6 X-CR-MTA-TID: 64aa7808 Received: from bcdb2a3aa1f4.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9B174984-CC2A-4198-8C86-052936B2DA8B.1; Mon, 30 Mar 2020 15:51:40 +0000 Received: from EUR02-HE1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id bcdb2a3aa1f4.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 30 Mar 2020 15:51:40 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=I/sXusfK7cHIEfBUPc7SJccTXzBWER+qOgWvAuP5MdouKqNXFldyDvQjYcrOaa/BykR3KNURCHoC+CA+X9o5ufFzWSUsLLj7hPL8fUFY0be98LsgDjMT/KGtB/DhyUGhwmRf5wkBKoSVf57owJ5qh7naX7Tk4Ni17Xk/xOXouoGm0RRf10S+fdOEpUCF9TT9UUEUzVQKlJl0q5O7amAz2Pf2cQOSLeSm/NqViu84X3SDvFb/JAaEW7zmY+kaWZ8A0dB0mhvHi6LPAnY35Mr+mO4ZYdihWlNSR7dA0C9xjz7TKtTNtWNnoQVn+vbcQz+0cGmuk8vhSg8xER6mq1SwKQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=09oRzp5pMlsU6t6BFDHjvIPRsgRy+u/BHxTRyNJaZSw=; b=U6gJCGxZ2k5Sorar6Ryrt+xIJ9zHVlIuOlBQEAqNxyeRSxe9Cp24/Z5k+MxqbJnfLq/5vcmPvMnzLpS/2cbFMVerf2JntyOZf6tHazecBFIKyZQ59sR6QulFf46sn8mh7dujsTLeS12SWvmFaKTM7p8hWC9Xq/dUc7pMLWdfLU3ZcAduOMEUDGRzN7d73R6cu186saSlKMttTCplVtvQT3tSrziON0Jfn+5n3v68ncYwJ3BdbLpglML0D/EAaay7RqDngO7AJ60ToxYkNqjxZ6mJtHWfaFUVrbBc29Q1bH29r74vteMuDmLDrUDh9vKi6nAhLN43vvsRxt6TCQeH2g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=09oRzp5pMlsU6t6BFDHjvIPRsgRy+u/BHxTRyNJaZSw=; b=DFzTxpzfSJR9sHvaEMOea1fUYM7QkJiSHm0dnfr6V6U6ViDwlyyJAFKOUBpqTi/vnzHvWbYwHPylb4imfYZbajFpwtMIa5fA5HJUH7fGldKNN7oTj87a3vFPfrIp3AoCLP08UMeqJsmJDWTCu/zJNkGncFvfFbZUdA57pupZ0VI= Received: from DB7PR08MB3113.eurprd08.prod.outlook.com (52.134.111.149) by DB7SPR01MB0010.eurprd08.prod.outlook.com (52.135.141.159) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2856.18; Mon, 30 Mar 2020 15:51:37 +0000 Received: from DB7PR08MB3113.eurprd08.prod.outlook.com ([fe80::60d3:1160:c077:67ed]) by DB7PR08MB3113.eurprd08.prod.outlook.com ([fe80::60d3:1160:c077:67ed%3]) with mapi id 15.20.2856.019; Mon, 30 Mar 2020 15:51:37 +0000 From: "PierreGondois" To: "devel@edk2.groups.io" , Sami Mujawar , "bob.c.feng@intel.com" , "liming.gao@intel.com" CC: nd Subject: Re: [PATCH v1 1/1] INF Spec: Add file dependency to [Sources] syntax Thread-Topic: [PATCH v1 1/1] INF Spec: Add file dependency to [Sources] syntax Thread-Index: AQHWBqn/l8W92Vtq30iwMBklvn/rYKhhSAfw Date: Mon, 30 Mar 2020 15:51:37 +0000 Message-ID: References: <20200330154307.48220-1-pierre.gondois@arm.com> In-Reply-To: <20200330154307.48220-1-pierre.gondois@arm.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Pierre.Gondois@arm.com; x-originating-ip: [217.140.99.251] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 3c515f69-05da-4705-6126-08d7d4c2405d x-ms-traffictypediagnostic: DB7SPR01MB0010:|DB7SPR01MB0010:|AM7PR08MB5414: x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:10000;OLM:10000; x-forefront-prvs: 0358535363 X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB7PR08MB3113.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(10001)(10009020)(4636009)(376002)(366004)(136003)(39860400002)(346002)(396003)(52536014)(5660300002)(6506007)(55016002)(2906002)(86362001)(8676002)(81156014)(478600001)(7696005)(33656002)(81166006)(76116006)(66946007)(316002)(64756008)(110136005)(66476007)(966005)(66446008)(53546011)(186003)(66556008)(9686003)(26005)(8936002)(71200400001)(4326008);DIR:OUT;SFP:1101; received-spf: None (protection.outlook.com: arm.com does not designate permitted sender hosts) X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: HY5qGpicjD56T0RP9F0pb7NhLH8JAzvqc5LBWD97ntiWeBP9hIjr2IvQ4K3Pz9zUf5Jm7l61VWNOTg4CI5vNGPsYSFi9RA5jEQ50QKxkI++rfBO+sxgbaVgFx4ManTmQeaxdI3DmmHRmawh2ejIGLubKaSQ57JB8N6N7E0nA2S5UlZ9bsdbT4pPCitFbfREAWcfL7HVxgqCbNTEqBMBKHOycoBmmCMbysXPQ/AvAg91N+xLor4V8rg9pgXTq4jG6vh4aRgXbhKpeQyAaRQIyNIr5nbIfw142MigHGIMR7RoQlzmSIVB9lnOqwfRLtUa/bnmM4keVBAu0v94iENGx+6jAvTxQhAJDrcl0ewe1DoI7jKxL5W9zItHA04TWFu6o+Q7jVVSIVXT9WNHiVkzIjFC73EbumSN9fiA56ndjUkDH0yz61ugcOsQwMAkoNb0KrOYeCylTwE8t+CwWo+iBo4T2OBVNnrIYhidEx6t/KXsDTLmYylmpe2qYTB7WEnb9L6JhONI431COm28tXZu2dB4oCp0gWPL2zOTnMXFMl+CQSCMNbnQmjoW/xjXXet6JiCCNlxOwtERU0MZ5KCUIlvoLDWcXEWk9KzsDbHHQZMMtz4taXgi4AvTL4E/sgs1c4JxD5EXGKcPYxYEjSwWnVzIrJcakRuBhVGMcYHjm0/eZengLBs0Bow6USpqX+IKzVWIlix4n0CHFmhOX7DdhjA== x-ms-exchange-antispam-messagedata: 4RE/EQOCg3FMFT2TjGZ0N/uFAzQklw7DcWuzqLCezjtLk5/6/+dilA6MSr7Lcj4jA2rYCiMP8emhQ1VcFs1BRefAp5eaNxRql/rXI1X4WlX8+Lj58euTb/K1KHg1xXYcGkOWtJOco9PqQaz0YZBECQ== MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7SPR01MB0010 Original-Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Pierre.Gondois@arm.com; Return-Path: Pierre.Gondois@arm.com X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5EUR03FT033.eop-EUR03.prod.protection.outlook.com X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFTY:;SFS:(10001)(10009020)(4636009)(346002)(136003)(396003)(376002)(39860400002)(46966005)(26005)(110136005)(52536014)(4326008)(186003)(7696005)(336012)(26826003)(33656002)(478600001)(47076004)(9686003)(966005)(82740400003)(53546011)(81156014)(356004)(8676002)(8936002)(81166006)(6506007)(70586007)(316002)(70206006)(2906002)(55016002)(86362001)(5660300002);DIR:OUT;SFP:1101; X-MS-Office365-Filtering-Correlation-Id-Prvs: 8088e64d-b9a6-409b-e6fe-08d7d4c23b1d X-Forefront-PRVS: 0358535363 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: gP+/lioLu/kpw/y8a9lL6Pr95ORKwEVxBJBlEYjXNjgJu4ET52RRWxam3pQmd07tQIbkkXo0QF0D5gDjEDbFjmTygUsyJ9VqBx+h/jWgFe9TKETeVz4VeKXvoYtmAs7WXH6x4dUuPWlMF6bMRzSbr1CU07iUO6sbryql7oyXoxgMCxVTQitEUZtODaHJJCZ4rfcrsRfbFj2nXFtZG4QniDJ0xD1djHzLRW2Fv/Ram/8a6KtWdc8AIqtwtuGK3DfukRKTCLrmqnx+EcFxjkbTR3sfg91hpAy3skRzsf/rZH8jfA86kx1c0yblqDC1+tFgTt0R71jka3hZEFlaAUmfQI30yb+uAXg/Xw6T+GHgmnxpw/3uge8FfspMkNMaQ/mov5QE9yTsNk5L2/NikQfMKWMr7eFsge8j3sefSYUTxiByk5ww6rRDtQF7Z1S1/+8IRUtgU3Yif1NIvGcjllpwNHp7Hxqgl/wMV12vEWC5+ceKzXaPh7mpZLSchjoBcwXbHb1XYF6yjPb7Q63OLLagMJJxFZPg+LhZWxE4KM6w8XrnsvAYnb8WahYoxo4cMzsGg3NCOeA9gxS44Dp8LVrr6W3CvJxtrNokxERrnslmJL75x7iZTYYqh0fYqzBwnKvnkX5MPVP2TMxQwY+ErKlXYkBaZ6ii+yho9WI3Rk3tgwOWecCVtSH+aOzvfHhPO1+n86nO12tSIWPyosYh8ZkpQVn7Wo7gTVaEoUTaFiCf1LWnbsEC/FZesUyZ/ZEhUw+vY7WLoN8g/Hsx6ZdUsOzcfDOs1AMhdY7n55cLgCa+UZk= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Mar 2020 15:51:46.4739 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 3c515f69-05da-4705-6126-08d7d4c2405d X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM7PR08MB5414 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable 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 =20 Sent: Monday, March 30, 2020 4:43 PM To: devel@edk2.groups.io Cc: Pierre Gondois ; liming.gao@intel.com; sami.muj= awar@arm.org; nd Subject: [PATCH v1 1/1] INF Spec: Add file dependency to [Sources] syntax From: Pierre Gondois BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=3D2464 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 patc= h, - 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 --- The changes can be seen at https://github.com/PierreARM/edk2-InfSpecificati= on/tree/Bugzilla_2464_Enable_Build_Dependencies_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_[so= urces]_section.md index 54757e61e37268eed293a5288e607cf2c7cfacf6..5b9f0a8395ef2be4497d99197dc= 695625d841830 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 =20 Copyright (c) 2007-2019, Intel Corporation. All rights reserved.
+ Copyright (c) 2020, ARM Limited. All rights reserved.
=20 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. =20 ``` =20 +The following example depicts the syntax to establish dependencies=20 +between files of different source types. As shown in the example below,=20 +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_e= dk_ii_inf_file_format/32_component_inf_definition.md index 164771cb4cfff6e81fbf762a67ff741c190cecde..d776714c24c0baf2348f53dc257= 6c9feb6f3cb5e 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 =20 Copyright (c) 2007-2019, Intel Corporation. All rights reserved.
+ Copyright (c) 2020, ARM Limited. All rights reserved.
=20 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 se= ction types. ::=3D "=3D" ::=3D "|" ::=3D + ::=3D ":" + ::=3D ::=3D "*" ::=3D "," * ::=3D "," * diff --git a/3_edk_ii_inf_file_format/39_[sources]_sections.md b/3_edk_ii_i= nf_file_format/39_[sources]_sections.md index 810995df26ba409ca2cf3ebe6238aa5d55cf81f1..ac966425101fd44a57b09d36f95= a0f732eab1c59 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 =20 Copyright (c) 2007-2019, Intel Corporation. All rights reserved.
+ Copyright (c) 2020, ARM Limited. All rights reserved.
=20 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" binar= y INF file. ::=3D [] [] ::=3D [] [] ::=3D [] [] - ::=3D [] + ::=3D [] [] + ::=3D + ::=3D {"MSFT"} {"GCC"} {"INTEL"} {} ::=3D {} {"*"} ::=3D _CommandCode_ @@ -83,7 +85,7 @@ This section is not valid for a generated "As Built" bina= ry INF file. =20 #### Parameters =20 -**_Filename_** +**_Filename_, _FileNameDependency_** =20 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..4f771fc0f6e4ff516be95b1879d= 58329ab3bbecc 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=3D11= 62) Correct the item in Table 1 to align with 3.4 section = = | = | | 1.28 | [#1453](https://bugzilla.tianocore.org/show_bug.cgi?id=3D14= 53) Update INF spec to remove EDK related contents = = = = | Mar 2019 = | | 1.29 | [#1952](https://bugzilla.tianocore.org/show_bug.cgi?id=3D19= 52) Add new MODULE_TYPE HOST_APPLICATION = = | July= 2019 | +| | [#2646](https://bugzilla.tianocore.org/show_bug.cgi?id=3D26= 46) Add file dependency to [Sources] syntax = = | = | -- 'Guid(CE165669-3EF3-493F-B85D-6190EE5B9759)'