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

Re: [Xen-devel] Xen 4.9 rc6

Julien Grall writes ("Re: [Xen-devel] Xen 4.9 rc6"):
> On 23/05/17 10:24, M A Young wrote:
> > I had build problems with these two patches added (and before I added
> > them). It looks like at the stage in my build process where
> > make -j2 prefix=/usr tools
> > gets run it is running
> > make -C tools/include install
> > make -C tools/include dist
> > together and it fails soon after when the alignment checks run at the same
> > time.

I think this is happening because, in xen.git/Makeefile:

   dist-tools: dist-tools-public-headers

   dist-%: DESTDIR=$(DISTDIR)/install
   dist-%: install-%
           @: # do nothing

   install-tools: build-tools-public-headers

So make thinks it can try to `build' the targets
build-tools-public-headers and dist-tools-public-headers

The problem here is that
 1. /Makefile needs to invoke each subdirectory exactly
    once, not multiple times, or they come in parallel
 2. /Makefile is (now) confused about when it should
    handle the relationship between different targets for
    the same subcomponent, and when the subdirectory
    Makefile is supposed to do that.

The rule for (2) used to be:
  /Makefile converts  make dist  to  DESTDIR=... make install
  for all other targets, /Makefile's make <target>-<subdir>
  passes the <target> to <subdir> and does not consider
  what <target> might mean and whether it ought to imply
  some other targets in subdir.

I think therefore that maybe this can fixed by:

  * Dropping the `dist-tools' dependency on dist-tools-p.-h.

  * Replacing the `install-tools' dependency by one on

  * Replacing the rules for *-public-headers with something

            $(MAKE) -C tools/include $*

Does this sound plausible ?


Xen-devel mailing list



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