From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=17.171.2.33; helo=mail-in23.apple.com; envelope-from=afish@apple.com; receiver=edk2-devel@lists.01.org Received: from mail-in23.apple.com (mail-out23.apple.com [17.171.2.33]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id BEDE521F0DB09 for ; Thu, 29 Mar 2018 07:45:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; d=apple.com; s=mailout2048s; c=relaxed/simple; q=dns/txt; i=@apple.com; t=1522335124; x=2386248724; h=From:Sender:Reply-To:Subject:Date:Message-id:To:Cc:MIME-version:Content-type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-reply-to:References:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=Zn54xZq41Vvx2VGsN+yWDIH3QiBXfGdR5+ymI+ezf9o=; b=eE+7VANal/hl+CZWE3QhhWpcGySjb1ShCE9QLv5QDg+MdwYgZekFnFFbzVzUcxGU NaMu+oUH9GGs3jL2yzDXHt16Pv7jiCMigWATPLHpwbwdwNfT7rNwmij3AwlREM3S 7CRoxAC17cl8XukjjQ5iTcpasZVhZAbUjYvUx4Rw5WZd1kDNeC7P3sWCUZIo+bEh t0esMC2BDIdbOstMyQeK2r/qNA7JUHgos7asqH8M8SRHOVKjrYlm4pb950lPyvTw m4YsJHRgRVgyLso+yeTUCVtJg1Pc96C52C04I5gs6KT1d+z6Q0eOxKcmfjjOqkFr 6EwuzSYM0/Z/RZO/RKSXmg==; Received: from relay23.apple.com (relay23.apple.com [17.171.128.104]) (using TLS with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mail-in23.apple.com (Apple Secure Mail Relay) with SMTP id 7F.65.16187.49DFCBA5; Thu, 29 Mar 2018 07:52:04 -0700 (PDT) X-AuditID: 11ab0217-fe1ff70000003f3b-f9-5abcfd94ed8f Received: from ma1-mmpp-sz09.apple.com (ma1-mmpp-sz09.apple.com [17.171.128.183]) (using TLS with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by relay23.apple.com (Apple SCV relay) with SMTP id AA.81.06106.49DFCBA5; Thu, 29 Mar 2018 07:52:04 -0700 (PDT) MIME-version: 1.0 Received: from [17.234.151.178] by ma1-mmpp-sz09.apple.com (Oracle Communications Messaging Server 8.0.2.2.20180130 64bit (built Jan 30 2018)) with ESMTPSA id <0P6C000O1XAQI0O0@ma1-mmpp-sz09.apple.com> for edk2-devel@lists.01.org; Thu, 29 Mar 2018 07:52:04 -0700 (PDT) Sender: afish@apple.com From: Andrew Fish Date: Thu, 29 Mar 2018 07:52:01 -0700 References: <000401d3c6c0$aef61660$0ce24320$@mc2research.org> <51a644fe-dc27-8153-628b-c13bd37970f9@redhat.com> <3afc6f92-81aa-a90c-289e-2868caade361@redhat.com> <002001d3c6e6$d67d4cf0$8377e6d0$@mc2research.org> <4A89E2EF3DFEDB4C8BFDE51014F606A14E1EF9AF@SHSMSX104.ccr.corp.intel.com> To: "edk2-devel@lists.01.org" In-reply-to: <4A89E2EF3DFEDB4C8BFDE51014F606A14E1EF9AF@SHSMSX104.ccr.corp.intel.com> Message-id: <27981D7F-97A0-4B07-9E0E-36288B4E68CA@apple.com> X-Mailer: Apple Mail (2.3445.6.18) X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrALMWRmVeSWpSXmKPExsUiuLohQ3fK3z1RBmdv6lrsOXSU2YHRo3v2 P5YAxigum5TUnMyy1CJ9uwSujFv3DrMWHG9mrPj04yZjA+Pv/C5GTg4JAROJQ3NvsHUxcnEI CaxnkniybSobTGLJ4wksEImNTBJr7l9nAUnwCghK/Jh8D8xmFgiTeHfkByuILSQwiUni7AI1 EFtYQFzi3ZlNzCA2m4CyxIr5H9gh4nYSc9aeZgKxWQRUJTav/MEMsWAxk8SBBe1gm0UEzCVa 518BK+IEWnDq1BQ2iMU2Eq9ezWGEuE5J4v+uI2DNEgKNbBJTv21gnMAoOAvJgbOQHAhha0l8 f9QKFOcAsuUlDp6XhQhrSjy794kdwtaWePLuAusCRrZVjMK5iZk5upl5RsZ6iQUFOal6yfm5 mxjBQc4kvoPx82vDQ4wCHIxKPLwP5u+OEmJNLCuuzD3EKM3BoiTOe+15Y5SQQHpiSWp2ampB alF8UWlOavEhRiYOTqkGRo9Nu+V89mrMlw99tekE1/4DZl9PnK6sUV6l7sIyT9/mwMSLvS3L P2xt1+BrmsLxPENgRu3b0KaA7iUGb1bMv3r53SSVZ2wRJTPn6jlI9E9kilUsumbyJDCqiOeq dfDJNIVahZ12D74v2K4TdCNshcIdTZO39dWpvKaStVf/cHYt2iB6kOfzayWW4oxEQy3mouJE ANZreBxTAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrMLMWRmVeSWpSXmKPExsUiuLphu+6Uv3uiDBo6NS32HDrK7MDo0T37 H0sAYxSXTUpqTmZZapG+XQJXxq17h1kLjjczVnz6cZOxgfF3fhcjJ4eEgInEkscTWLoYuTiE BDYySay5f50FJMErICjxY/I9MJtZIEzi3ZEfrCC2kMAkJomzC9RAbGEBcYl3ZzYxg9hsAsoS K+Z/YIeI20nMWXuaCcRmEVCV2LzyBzPEgsVMEgcWtLOBJEQEzCVa518BK+IEWnDq1BQ2iMU2 Eq9ezWGEuE5J4v+uI8wTGPlmIblpFpKbIGwtie+PWoHiHEC2vMTB87IQYU2JZ/c+sUPY2hJP 3l1gXcDItopRsCg1J7HSyFgvsaAgJ1UvOT93EyMkKDN2MF6/aXaIUYCDUYmH98H83VFCrIll xZW5hxglOJiVRHjfawCFeFMSK6tSi/Lji0pzUosPMUpzsCiJ8xpw74wSEkhPLEnNTk0tSC2C yTJxcEo1MBodkTygx14X9+dlrkCSePjMw/MXM0wI9UyunvBMck0sA2Orkf89CWuFlwVP2Jdr +kj84YloyGo10njJZX99zYtPqUGhjfz217j3TmCwqywsEnjEXXjPJbLT85c2m8HCWyy+/dnW Gw5yNM6X819/bvfRB9ENYocvFD67fZL5RM71417VMzPmKrEUZyQaajEXFScCAIKVj/dGAgAA X-Content-Filtered-By: Mailman/MimeDel 2.1.26 Subject: Re: Dependency expression inheritance problems X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Mar 2018 14:45:26 -0000 Content-Type: text/plain; CHARSET=US-ASCII Content-Transfer-Encoding: 7BIT Daryl, You can tell the build command to generate a report file to see what depex got constructed by the inherence, and what library instances got resolved for your various library classes. -y REPORTFILE, --report-file=REPORTFILE Create/overwrite the report to the specified filename. -Y REPORTTYPE, --report-type=REPORTTYPE Flags that control the type of build report to generate. Must be one of: [PCD, LIBRARY, FLASH, DEPEX, BUILD_FLAGS, FIXED_ADDRESS, HASH, EXECUTION_ORDER]. To specify more than one flag, repeat this option on the command line and the default flag set is [PCD, LIBRARY, FLASH, DEPEX, HASH, BUILD_FLAGS, FIXED_ADDRESS] Thanks, Andrew Fish > On Mar 29, 2018, at 12:07 AM, Gao, Liming wrote: > > Daryl: > Do you try the source library INF file? EDK2 build system will inherit the depex section from its library. Seemly, this is an issue when the module is the binary library. > > Thanks > Liming >> -----Original Message----- >> From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of >> edk2-lists@mc2research.org >> Sent: Thursday, March 29, 2018 6:48 AM >> To: 'Laszlo Ersek' ; edk2-devel@lists.01.org >> Subject: Re: [edk2] Dependency expression inheritance problems >> >> Laszlo, >> >> I think you are thinking of the old .dxs files. EDK II supports them, but their >> use is discouraged. >> From the "EDK II Build Specification", v1.27: >> "For EDK II modules, the build tools will create the complete dependency >> expression using the information in the [Depex] section along with all [Depex] >> sections from the linked in library instances." >> >> and >> >> "Once all files are parsed, the build tools will do following work for each EDK II >> module: >> ... >> * Inherit library instance dependency ( [Depex] sections) expressions >> if a module does not list a separate dependency file." >> >> So, use of the [Depex] sections in the .DSC and .INF files is supposed to be the >> way to go. >> >> The spec. also states that if a .dxs file is specified, inheritance will not be used >> and the .dxs file must specify every dependency. "Use of a separate file for >> describing the dependencies is discouraged. ... Libraries may also have a >> dependency, [Depex] , section. These dependencies must be appended to >> the module's DEPEX sections unless the module includes a depex (.dxs) file - >> even if the module does not contain a [Depex] section. When a developer >> chooses to write the .dxs file, the developer is responsible for specifying all >> dependencies in the .dxs file." >> >> I believe that according to the spec., what I am attempting should work. The >> EDK II build tools should generate a .depex file for the module that contains >> the module's depex as well as depex' inherited from the module's component >> libraries. >> >> But, I could be misinterpreting the spec. or doing something wrong in the >> build files (.DSC and .INF). >> >> Has anyone actually looked at the .depex that the tools produce and >> compared it to what the expected contents are for binary and hybrid (binary + >> source) builds? >> >> Thanks much, >> Daryl >> >> >> -----Original Message----- >> From: Laszlo Ersek >> Sent: Wednesday, March 28, 2018 11:34 AM >> To: edk2-lists@mc2research.org; edk2-devel@lists.01.org >> Subject: Re: [edk2] Dependency expression inheritance problems >> >> On 03/28/18 20:32, Laszlo Ersek wrote: >>> On 03/28/18 20:14, edk2-lists@mc2research.org wrote: >>>> Hopefully someone on the list can help with this problem. >>>> >>>> >>>> >>>> I have a DXE_DRIVER that links with several libraries. Some of these >>>> libraries are from a binary distribution. I checked the binary >>>> library's .INF file and it has the [LibraryClasses] and [Depex] >>>> sections present in the same format as for a source .INF. (not >>>> comments) >>> >>> Isn't that wrong (from the binary distribution)? The INF spec makes me >>> think think that library instances provided in binary format should >>> ship their standalone .depex files as well, and they should be >>> referenced in the [Binaries] section of the respective lib instance INF file. >>> >>> https://edk2-docs.gitbooks.io/edk-ii-inf-specification/content/2_inf_o >>> verview/215_[depex]_section.html#215-depex-section >>> >>> "Binary .depex files are listed in [Binaries] sections of the INF files." >>> >>> I vaguely recall seeing an example somewhere, but nothing specific. I >>> could be totally wrong. :) >> >> I should have looked a but further in the same spec :) See the "Example" >> section here: >> >> https://edk2-docs.gitbooks.io/edk-ii-inf- >> specification/content/3_edk_ii_inf_file_format/315_[binaries]_section.html >> >> Laszlo >> >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.01.org >> https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel