Message ID | 1411080607-32365-2-git-send-email-roy.franz@linaro.org |
---|---|
State | New |
Headers | show |
>>> On 19.09.14 at 00:49, <roy.franz@linaro.org> wrote: > --- a/xen/Makefile > +++ b/xen/Makefile > @@ -100,6 +100,7 @@ $(TARGET): delete-unfresh-files > $(MAKE) -C tools > $(MAKE) -f $(BASEDIR)/Rules.mk include/xen/compile.h > [ -e include/asm ] || ln -sf asm-$(TARGET_ARCH) include/asm > + [ -e arch/$(TARGET_ARCH)/efi ] && ln -sf $(BASEDIR)/common/efi/* arch/$(TARGET_ARCH)/efi/ I guess this would better be ln -sf ../../../common/efi/* arch/$(TARGET_ARCH)/efi/ - there's no reason to prevent the tree from being moved. Also I hope the recurring link creation upon incremental rebuilds isn't going to cause any kind of problems. Jan
On Fri, 2014-09-19 at 09:49 +0100, Jan Beulich wrote: > >>> On 19.09.14 at 00:49, <roy.franz@linaro.org> wrote: > > --- a/xen/Makefile > > +++ b/xen/Makefile > > @@ -100,6 +100,7 @@ $(TARGET): delete-unfresh-files > > $(MAKE) -C tools > > $(MAKE) -f $(BASEDIR)/Rules.mk include/xen/compile.h > > [ -e include/asm ] || ln -sf asm-$(TARGET_ARCH) include/asm > > + [ -e arch/$(TARGET_ARCH)/efi ] && ln -sf $(BASEDIR)/common/efi/* arch/$(TARGET_ARCH)/efi/ > > I guess this would better be > > ln -sf ../../../common/efi/* arch/$(TARGET_ARCH)/efi/ > > - there's no reason to prevent the tree from being moved. > > Also I hope the recurring link creation upon incremental rebuilds > isn't going to cause any kind of problems. FWIW my finger macros usually use ln -nfs to avoid issues of this type of thing, although maybe that's only for directory targets, since the -n stops it creating ever deeper links within the original target. Ian.
diff --git a/.gitignore b/.gitignore index 6d725aa..1aa4a5b 100644 --- a/.gitignore +++ b/.gitignore @@ -254,6 +254,10 @@ xen/arch/x86/efi.lds xen/arch/x86/efi/check.efi xen/arch/x86/efi/disabled xen/arch/x86/efi/mkreloc +xen/arch/x86/efi/boot.c +xen/arch/x86/efi/runtime.c +xen/arch/x86/efi/compat.c +xen/arch/x86/efi/efi.h xen/ddb/* xen/include/headers.chk xen/include/asm diff --git a/xen/Makefile b/xen/Makefile index 0e58bce..f182df2 100644 --- a/xen/Makefile +++ b/xen/Makefile @@ -100,6 +100,7 @@ $(TARGET): delete-unfresh-files $(MAKE) -C tools $(MAKE) -f $(BASEDIR)/Rules.mk include/xen/compile.h [ -e include/asm ] || ln -sf asm-$(TARGET_ARCH) include/asm + [ -e arch/$(TARGET_ARCH)/efi ] && ln -sf $(BASEDIR)/common/efi/* arch/$(TARGET_ARCH)/efi/ $(MAKE) -f $(BASEDIR)/Rules.mk -C include $(MAKE) -f $(BASEDIR)/Rules.mk -C arch/$(TARGET_ARCH) asm-offsets.s $(MAKE) -f $(BASEDIR)/Rules.mk include/asm-$(TARGET_ARCH)/asm-offsets.h
This moves the EFI boot and runtime services code to the common/efi directory. This code is symbolicly linked back into the arch/x86/efi directory where it is built if a build-time check for PE/COFF support in the toolchain passes. In the PE/COFF supporting case, both the EFI executable and the normal Xen image (with stubbed EFI functions) are built. We can't use the normal common build infrastructure since we are building two versions at the same time, with different EFI related code in each. No code changes, just file movement and make updates. The files are symbolicly linked at build time back toe the original arch/x86/efi directory. This is in preparation for adding ARM EFI support where much of these files can be shared. Signed-off-by: Roy Franz <roy.franz@linaro.org> --- .gitignore | 4 ++++ xen/Makefile | 1 + xen/{arch/x86 => common}/efi/boot.c | 0 xen/{arch/x86 => common}/efi/compat.c | 0 xen/{arch/x86 => common}/efi/efi.h | 0 xen/{arch/x86 => common}/efi/runtime.c | 0 6 files changed, 5 insertions(+) rename xen/{arch/x86 => common}/efi/boot.c (100%) rename xen/{arch/x86 => common}/efi/compat.c (100%) rename xen/{arch/x86 => common}/efi/efi.h (100%) rename xen/{arch/x86 => common}/efi/runtime.c (100%) diff --git a/xen/arch/x86/efi/boot.c b/xen/common/efi/boot.c similarity index 100% rename from xen/arch/x86/efi/boot.c rename to xen/common/efi/boot.c diff --git a/xen/arch/x86/efi/compat.c b/xen/common/efi/compat.c similarity index 100% rename from xen/arch/x86/efi/compat.c rename to xen/common/efi/compat.c diff --git a/xen/arch/x86/efi/efi.h b/xen/common/efi/efi.h similarity index 100% rename from xen/arch/x86/efi/efi.h rename to xen/common/efi/efi.h diff --git a/xen/arch/x86/efi/runtime.c b/xen/common/efi/runtime.c similarity index 100% rename from xen/arch/x86/efi/runtime.c rename to xen/common/efi/runtime.c