From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from EUR01-HE1-obe.outbound.protection.outlook.com (EUR01-HE1-obe.outbound.protection.outlook.com [40.107.13.87]) by mx.groups.io with SMTP id smtpd.web10.54722.1585585656131043591 for ; Mon, 30 Mar 2020 09:27:36 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@armh.onmicrosoft.com header.s=selector2-armh-onmicrosoft-com header.b=bEsx4sey; spf=pass (domain: arm.com, ip: 40.107.13.87, 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=OrGgNwVRk9eo+bm4Bz//8ato597rhqG43MkpCQXS8gE=; b=bEsx4seyG/q5rh+4lSDK0/lNiWQW8l87DfJ0uBUMfEn4UrplghIS+MsWXX7VMQDX97w67f9v5lrwfb32bj8VheMmNavfoz9rT++mQsJgQNmiSO11W24b66AurwDRDhbttbvleoSyJ2/kPvx9P6FYA7lTMJwa3q0t1HFDVLUeY0o= Received: from AM0PR05CA0089.eurprd05.prod.outlook.com (2603:10a6:208:136::29) by DB8PR08MB5209.eurprd08.prod.outlook.com (2603:10a6:10:e5::19) 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 16:27:31 +0000 Received: from AM5EUR03FT021.eop-EUR03.prod.protection.outlook.com (2603:10a6:208:136:cafe::92) by AM0PR05CA0089.outlook.office365.com (2603:10a6:208:136::29) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2856.20 via Frontend Transport; Mon, 30 Mar 2020 16:27:31 +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 AM5EUR03FT021.mail.protection.outlook.com (10.152.16.105) 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 16:27:31 +0000 Received: ("Tessian outbound 66307db0259d:v48"); Mon, 30 Mar 2020 16:27:31 +0000 X-CR-MTA-TID: 64aa7808 Received: from a60cd84450c9.2 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 1A80D6A5-4EDB-4358-8564-8FB20C9581A0.1; Mon, 30 Mar 2020 16:27:26 +0000 Received: from EUR04-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id a60cd84450c9.2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Mon, 30 Mar 2020 16:27:26 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=EaGeIf4+K3J22VSlENapL3wj4pbCNLtFD/pSSB9auXzQccLNdgbPwu33z5rhs7fbKuBK5J/unC2DfBPbFTKF4G7iFm9j862345/4EJGj195CrQGOO13+rRLe1T4dpJrWUYUQAMnED3lXhupf/zjBAb913pO7rWMPhGoijtfSUhrwvRK757VsqlVBe9Xss50MZpJSBbLJUAGb12gu/8vln424gSMQeJKLziCNuM23Rat3IdjAAQlDo8t7FVo4TnKAkApjOh5aecUoo4S89FKGNAIvOedAizP7KbGwntVmgJo+j56ziwOa8uuZ3WSLcADq7FMZ6+itgevyEt7Otx08cw== 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=OrGgNwVRk9eo+bm4Bz//8ato597rhqG43MkpCQXS8gE=; b=JVeO2wRCZXelYN1Ovcl53YGDxRzrNQgqlcFdJ1rA2snNbKC079RjTaEeEn3J7I1ZKXQ/FHPM3T3iBgG/QDnPz275fFwQYg3tLP/oJrAvkpM7z8xWOG8Q5ioyjcKaF3teQqZMD9atGWsxN4Wy0efOjTE//NVIXPYkRffcqpSk+YI0qjA8Il3C1rRpyeuF+FevjO6MNpRFdk9Ki/cIiBG/ll3JDthkcT4id/bavDLhVzrhqgmbrwBj5yqGQUGDt/15cwvItpaUtLw+2mHLzKZmMZCqhXcbkMPkT6EAJ+tPpty9mR8/Rc6LX/J6utVXJiEJ9E4zds7DaC919yLh6RqP5g== 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=OrGgNwVRk9eo+bm4Bz//8ato597rhqG43MkpCQXS8gE=; b=bEsx4seyG/q5rh+4lSDK0/lNiWQW8l87DfJ0uBUMfEn4UrplghIS+MsWXX7VMQDX97w67f9v5lrwfb32bj8VheMmNavfoz9rT++mQsJgQNmiSO11W24b66AurwDRDhbttbvleoSyJ2/kPvx9P6FYA7lTMJwa3q0t1HFDVLUeY0o= Received: from DB7PR08MB3113.eurprd08.prod.outlook.com (52.134.111.149) by DB7PR08MB3771.eurprd08.prod.outlook.com (20.178.84.157) 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 16:27:24 +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 16:27:24 +0000 From: "PierreGondois" To: Pierre Gondois , "devel@edk2.groups.io" CC: "liming.gao@intel.com" , "sami.mujawar@arm.org" , nd , "bob.c.feng@intel.com" 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/rYKhhUqjQ Date: Mon, 30 Mar 2020 16:27:24 +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: x-ts-tracking-id: 5e258bf1-fb18-4045-b173-379a48dcce86.1 x-checkrecipientchecked: true Authentication-Results-Original: spf=none (sender IP is ) smtp.mailfrom=Pierre.Gondois@arm.com; x-originating-ip: [217.140.106.52] x-ms-publictraffictype: Email X-MS-Office365-Filtering-HT: Tenant X-MS-Office365-Filtering-Correlation-Id: 8fbbaf6c-1dc0-4256-ba01-08d7d4c73f0c x-ms-traffictypediagnostic: DB7PR08MB3771:|DB7PR08MB3771:|DB8PR08MB5209: x-ms-exchange-transport-forked: True X-Microsoft-Antispam-PRVS: x-checkrecipientrouted: true nodisclaimer: true x-ms-oob-tlc-oobclassifiers: OLM:8882;OLM:8882; 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)(136003)(396003)(39860400002)(346002)(376002)(366004)(110136005)(71200400001)(66556008)(8676002)(966005)(81156014)(478600001)(54906003)(7696005)(64756008)(53546011)(316002)(76116006)(6506007)(66446008)(8936002)(55016002)(9686003)(66476007)(4326008)(86362001)(81166006)(186003)(33656002)(52536014)(26005)(5660300002)(2906002)(66946007);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: 9pWFzr+Y9jECFFMGbAPbPOHSdRfzyFSKsORi8RDSoYFlv09/8YsKkLE5xzsxKQVPhWV9dFam2cy7viXun2HVR1RMVhhv7d5FbpB8AKUb0xGkunQ4ce3SVzvT2MIzm4O6yDGCau8q6h/sE/Rn5OH86xOpRD/NqDChPJjdlUGYxo/WdJdIrn++gPhAxQrzq9QMjBa3jUGn8pqbboN7E4JBThEO8A+oMD1kNqxQZrc2XP6Nj+0VFj2ffyAll96f5cXx8JQcMHg2XLC8pOzACm4E2MrAKlDh6Xhwb7XvpcAXQHuDsJbVUkjuWGojxbaqkgi+LU0raKloVusD1wrhP6taObeI0AGZrTfYIc4V0JaM05xIeZNi7tFTGCNf+RE088M9uObhIug8R9XfMW/6XesxXtZVgLx0t+1K9jIzSNAyX9/Uyhg6w5GWtpnwAcZqwhH49Cg6yCzyVaELx/KKQ40Op5cNkhrgHLpiHGe3mJdtDxIvibNrmdJ5p/Q2Vjmay0OOSL98t54q735rN71wDVpCYetls4n2Vw+GvzQE2cwaRDZ2r/zNOj34LI6upULX1X9N6C1M4VtWDjvBWS/wcgEkrUVSq+QlQl8AHuWDh/+kX5gue/KozKqpAd/xqRq2Vvfkl6ySu3l6aGPAtHYdReeA5hqqECeawc6JO4zA+w3xtg5GXN/AQeKZd/Xwtub/riKAQiNNjtsXuV5PNkW5cAW+6Q== x-ms-exchange-antispam-messagedata: AyPOW7GDa9UOI7DVzAguXBCnW4rqoC2QmBQZ6kzJ4r2I+6xbF/dXAsGCiY+FzMpU1Nw8QLnHZxn5r2gszBV9iGxdXYSu7tm+u6xWgbawpkAbgEfjoLiupuuB43WpI4q9JBQoVHABzmRqEK4DoGnX5Q== MIME-Version: 1.0 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR08MB3771 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: AM5EUR03FT021.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)(376002)(396003)(346002)(136003)(39860400002)(46966005)(107886003)(336012)(186003)(33656002)(55016002)(8676002)(47076004)(9686003)(2906002)(356004)(81166006)(86362001)(5660300002)(52536014)(26005)(81156014)(8936002)(7696005)(478600001)(6506007)(70206006)(82740400003)(70586007)(110136005)(966005)(54906003)(36906005)(26826003)(4326008)(316002)(53546011);DIR:OUT;SFP:1101; X-MS-Office365-Filtering-Correlation-Id-Prvs: 650c80f5-bd07-478e-e0f6-08d7d4c73aef X-Forefront-PRVS: 0358535363 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: dsGX2/57xn+Qyuf9ES0lGd47E/uxaKIGi9gH4ldu5c3p+ebz69fSp0miN6csrx2MEjJd9lXptRQ0moAn51+3xSzbCwaP53OjbX0Oi+bSeuSV6hZRl2miHcnhBR7IWkGXKyztrkVWM2advm6zQWZET3wymeu7QbRCyIaCwZVcfsw0LJe9QkZJcdVEaQgn4RaHMGvCAWghHEc52hV1jton5wU5SZVw7AnBdM5EQaUxCXQ979XTIuDtnTz7GL00hnZjAcGceRIbnYO41t3TfXWzlU5mYeJxSLIeEBdRetRyGoLPdmO5i81UVKkBAmoTR0UG1kAXtkhyHaS4UGGBLnamgGEpOBxjkKSrLbMI+MyZUlR1Gya4qCf/2un0CfYXde7f9wDgU2gTTn1NuDgsHjBTuBLZZPqn2DsB/MB+4Lyf8I0LK0NDyekl5V3vhTcS/yZtkHug+JM1f7uRhnhb+yhf2Hq/OT8bGikAQflqdpvcs0zvObQLMYHR7Z20tT/7WJmMDGVoNEnWiaf7dVarHnZ/KM+gAtL6HIwqZ7wLwYXDdja7wpC2uZGuINomlChLUa1Fint88q2iD7ezJSeHGFINIJKh06APmqcn58Ht8+lguNMp8To5rQmdx0TYJRo33csEtVCs/d1rvjKYBsG6tJ38kI2OVQvWx7YwdJ93iYiDI0+sw1ysCDcrpQ33kDwd3PSp0PkBp0u5iDqrhWUVF0+/r1WKbOvJsaeM6UJ6J75iQNhSMSSS1ytjS26pXNRl/FDatNYdgbXjoFRdYpPaUUj05u90c2iA/BsYuB4S37rAXJQ= X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Mar 2020 16:27:31.7021 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 8fbbaf6c-1dc0-4256-ba01-08d7d4c73f0c 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: DB8PR08MB5209 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable The Bugzilla ticket number was erroneous in the v1. The v2 is available at:= https://edk2.groups.io/g/devel/message/56663 Regards, Pierre -----Original Message----- From: PierreGondois =20 Sent: 30 March 2020 16:43 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)'