On 02/22/2013 01:22 PM, Mcdaniel, Daryl wrote:
> IMHO, the easiest way to build a package or module that is not in the
> WORKSPACE tree is to use symbolic links and the standard EDK II build
> system. Create a symbolic link to your package in the root of
> $WORKSPACE or a link to your module within the using package.

As I wrote when this topic came up three weeks ago, the approach you 
suggest won't work when your goal is to create a program that's 
compatible with inclusion in a Linux distribution. The issue is one of 
the assumptions that the package systems (RPM, Debian packages, ebuilds, 
etc.) make about where files go and what permissions they have. Placing 
the source files for a specific package (rEFInd, in my case) within a 
library's source directory (TianoCore's) simply cannot be guaranteed in 
the build system -- at least, not as far as I know for the package 
systems with which I'm familiar. Even dropping the files elsewhere and 
creating symbolic links would be unreliable at best because of 
permissions issues -- creating a symbolic link requires write access 
within the TianoCore tree, but packages can be built by ordinary users 
who might not have such access. Thus, a build process that does not 
touch the library tree is a pre-requisite for building in a way that's 
compatible with building as a Linux package. The only way I can think of 
to build an EFI program in-tree with TianoCore using RPM is to include 
the entire TianoCore tree as a patch to the main program, and that's 
just plain ridiculous.

Of course, this specific reason doesn't apply to every project. If 
you're writing an EFI driver for a hardware device and have no reason to 
distribute it with Linux, you probably don't care about building Linux 
packages, and that's fine. I, OTOH, was developing a boot manager that I 
wanted to be easy to distribute with Linux, so using a Linux-friendly 
build process was high on my list of priorities. Daniel Cardin, who 
started this thread, hasn't said why he wants to build outside of the 
TianoCore tree, or even what platform he's using, so it's hard to say 
what approach would work best for him.

-- 
Rod Smith
[email protected]
http://www.rodsbooks.com

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to