Re: [edk2] Pull in pre-built library during edk2 build?

2017-04-06 Thread Peter Hornyack
Thank you Laszlo and others for the suggestions! I'll try out that
patch with PACKAGES_PATH and it looks like I should be able to get
this working.

Thanks,
Peter

On Thu, Apr 6, 2017 at 4:16 PM, Laszlo Ersek  wrote:
> On 04/07/17 00:46, Laszlo Ersek wrote:
>
>> 0001-ExternalSslPkg-create-INF-files-for-OpensslLib-binar.patch
>>
>>
>> From 4672a027f54c54574129f9c9cc947c80f7bc4d9f Mon Sep 17 00:00:00 2001
>> From: Laszlo Ersek 
>> Date: Thu, 6 Apr 2017 22:56:04 +0200
>> Subject: [PATCH] ExternalSslPkg: create INF files for OpensslLib binaries
>>
>> Signed-off-by: Laszlo Ersek
>> ---
>>  .../Library/OpensslLib/OpensslLibBin.inf   | 33 
>> ++
>>  .../Library/OpensslLib/OpensslLibBinCrypto.inf | 33 
>> ++
>>  2 files changed, 66 insertions(+)
>>  create mode 100644 ExternalSslPkg/Library/OpensslLib/OpensslLibBin.inf
>>  create mode 100644 ExternalSslPkg/Library/OpensslLib/OpensslLibBinCrypto.inf
>>
>> diff --git a/ExternalSslPkg/Library/OpensslLib/OpensslLibBin.inf 
>> b/ExternalSslPkg/Library/OpensslLib/OpensslLibBin.inf
>> new file mode 100644
>> index ..703fddb47606
>> --- /dev/null
>> +++ b/ExternalSslPkg/Library/OpensslLib/OpensslLibBin.inf
>> @@ -0,0 +1,33 @@
>> +## @file
>> +#  This module provides binary OpenSSL Library implementation.
>> +#
>> +#  Copyright (C) 2017, Red Hat, Inc.
>> +#  Copyright (c) 2010 - 2017, Intel Corporation. All rights reserved.
>> +#  This program and the accompanying materials are licensed and made 
>> available
>> +#  under the terms and conditions of the BSD License which accompanies this
>> +#  distribution.  The full text of the license may be found at
>> +#  http://opensource.org/licenses/bsd-license.php
>> +#
>> +#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
>> +#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR
>> +#  IMPLIED.
>> +#
>> +##
>> +
>> +[Defines]
>> +  INF_VERSION= 1.25
>> +  BASE_NAME  = OpensslLibBin
>> +  FILE_GUID  = d0d4d4cf-460c-4752-9c9b-6d821b2ffe49
>> +  MODULE_TYPE= BASE
>> +  VERSION_STRING = 1.0
>> +  LIBRARY_CLASS  = OpensslLib
>> +
>> +[Binaries.IA32]
>> +  LIB|DEBUG/IA32/OpensslLib.lib|DEBUG
>> +  LIB|NOOPT/IA32/OpensslLib.lib|NOOPT
>> +  LIB|RELEASE/IA32/OpensslLib.lib|RELEASE
>> +
>> +[Binaries.X64]
>> +  LIB|DEBUG/X64/OpensslLib.lib|DEBUG
>> +  LIB|NOOPT/X64/OpensslLib.lib|NOOPT
>> +  LIB|RELEASE/X64/OpensslLib.lib|RELEASE
>
> I submitted , so
> that the next version of the INF spec
> 
> document the LIB file type as well, for the [Binaries] sections of INF
> files that belong to library instances.
>
> Thanks
> Laszlo
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] Pull in pre-built library during edk2 build?

2017-04-06 Thread Peter Hornyack
I'd like to make an adjustment to the edk2 build (locally, not for
upstream) and I'm hoping someone can offer some guidance.

My goal is to pre-build an edk2 library in a separate build process,
then pull that library into the full build later on. Specifically I'm
building my firmware image using OvmfPkgX64.dsc, but I want to build
OpensslLib (CryptoPkg/Library/OpensslLib/OpensslLib.inf) in advance,
then pull the resulting lib into the full build later. How can I
achieve this?

In my build output I can see that when OpensslLib.inf is built, all of
the openssl .c files are compiled into .obj files, then an ar command
wraps those up into OpensslLib.lib. I want to pull those steps out and
pre-build OpensslLib.lib, but I've been unable to find where/how the
edk2 build grabs that .lib file and turns it into the final firmware
image. I've reviewed the edk2 build documentation but still can't
figure this out. Can anyone point me to the right place in the edk2
build files where I can make this happen? Or perhaps is there an
example of this already in the edk2 build that I can imitate?

Thanks,
Peter
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel