[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH v2] firmware/shim : filter output files during Xen tree setup

On Wed, Jul 25, 2018 at 1:10 AM, Jan Beulich <JBeulich@xxxxxxxx> wrote:
>>> On 25.07.18 at 02:28, <christopher.w.clark@xxxxxxxxx> wrote:
> --- a/tools/firmware/xen-dir/Makefile
> +++ b/tools/firmware/xen-dir/Makefile
> @@ -11,6 +11,10 @@ D=xen-root
>  LINK_DIRS=config xen
>  LINK_FILES=Config.mk

> +# Files to exclude from the link farm
> +EXCLUDE_FILES=xen xen.gz xen-syms xen-syms.map xen.efi xen.efi.map \
> +              efi.lds xen.lds mkelf32 mkreloc

> So what about the auxiliary ones created there, like ..xen-syms.* or
> ..xen.efi.*

Thanks for this feedback. After rebuilding binutils to include an EFI-capable linker, and then all tools dependent on that, and then building the Xen tree, these files have become evident.

I added handling for these to the exclusion list, and tested with each of Xen 4.10.1(*), 4.11.0 and staging: Each build passes "make", "make install" in fresh trees without rebuilding the shim during the install step.

The 4.10.1 test was with this additional commit applied:
  commit 8717e7417cebeae162fd61ea4cbdcdd422748f08
  Author: Juergen Gross <jgross@xxxxxxxx>
    shim: don't let build modify shim.config

I'll post a v3 patch with the updated exclusion list as per above.

To amend my earlier reply to v1, here's a diff between the initial linkfarm.stamp
and one resulting after a first incremental re-build: 

--- .../tools/firmware/xen-dir/linkfarm.stamp
+++ .../tools/firmware/xen-dir/linkfarm.stamp

I think all additions here should be considered as exclusion candidates.

The unfortunate thing about that list is that it is quite a bit longer and will be more vulnerable to change. It includes header files which makes me wary of it. You could shorten it with some wildcard matching, and you'll be approaching something similar to the gitignore file content, as Roger had pointed towards, but my preference is to leave it alone.

None of the options here that are short of a rewrite are great, but the short exclusion list improves the behaviour for non-incremental builds, which is a benefit for downstream and production builds where incremental builds are not a requirement.


Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.