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

Re: [XEN PATCH v7 49/51] build: adding out-of-tree support to the xen build


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Anthony PERARD <anthony.perard@xxxxxxxxxx>
  • Date: Thu, 21 Oct 2021 15:10:35 +0100
  • Authentication-results: esa4.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none
  • Cc: Juergen Gross <jgross@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, "Ian Jackson" <iwj@xxxxxxxxxxxxxx>, Julien Grall <julien@xxxxxxx>, "Stefano Stabellini" <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Volodymyr Babchuk <Volodymyr_Babchuk@xxxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>, "Ross Lagerwall" <ross.lagerwall@xxxxxxxxxx>, Daniel De Graaf <dgdegra@xxxxxxxxxxxxx>, "Daniel P. Smith" <dpsmith@xxxxxxxxxxxxxxxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Thu, 21 Oct 2021 14:11:10 +0000
  • Ironport-data: A9a23:YN1gbKKENJtPx//DFE+R1pMlxSXFcZb7ZxGr2PjKsXjdYENS32QOy mseW2yOaa2NYGr8ft93YN++8UxVscXSx9NgSVFlqX01Q3x08seUXt7xwmUcns+xwm8vaGo9s q3yv/GZdJhcokcxIn5BC5C5xZVG/fjgqoHUVaiUZUideSc+EH140Eo5wrZj6mJVqYPR7z2l6 IuaT/L3YDdJ6xYsWo7Dw/vewP/HlK2aVAIw5jTSV9gS1LPtvyB94KYkDbOwNxPFrrx8RYZWc QphIIaRpQs19z91Yj+sfy2SnkciGtY+NiDW4pZatjTLbrGvaUXe345iXMfwZ3u7hB3TgPcuz 9wO7KCWUAQqNJ/KyLQhUkdHRnQW0a1uoNcrIFC6uM2XiUbHb2Ht07NlC0Re0Y8wo7gtRzsUr LpBdW5LPkvra+GemdpXTsFlgNgjK8/6epsSoHh6wRnSDOo8QICFSKLPjTNd9Gpv2J0WRKmGD yYfQRVeLy7HSQVAA2dNWL8ysryCp1PjVyIN/Tp5ooJoujOOnWSdyoPFM93TYNWGA9pUmkWwo XjP9GD0RBodMbS39z2B9X69g/7VqgnyUokSCb6Q++ZjhRuYwWl7IBEZWVa0u/CRll+1W9UZL VcdvCUps8Aa5EGtC9XwQRC8iHqFpQIHHcpdFfUg7wOAwbaS5ByWbkAIViVEacAmnMYuSCY2y 0SSmNf0GT1otqbTQnWYnp+LqRuiNC5TKnUNDQcGQhEC+MLLu5wog1TESdMLOKy/g8DxGDrw6 yuXtyV4jLIW5eYKyKeT7V3BmyirpJXCUkgy/Aq/dnm+8gpzaYqhZoqpwVvW9/BNKMCeVFbpl HoZn8mT6sgeAJfLkzaCKNjhB5nwuazDameFxwcyQd9xrFxB5kJPY6gK/xYhI04qa/oiYDzqa n3V6VNt5cFMaS7CgbBMX6q9DMEjzK7FHNvjV+zJYtcmXqWdZDNr7wk1OhbOhzGFfFwE1PhlY 8/CIJnE4WMyUPw/lFKLq/EhPajHL8zU7VjYQozn1FyZ2L6aaW/9pVwtYQbWML5RAE9ppmzoH zdj2ymil0o3vA7WOHC/HWsvwbYidyVT6Xfe8JQ/SwJ7ClA6cFzN8teIqV/bR6Rrnr5OisDD9 WynV0lTxTLX3COcdVrXNyw7N+ywBv6TSE7X2wR2YD5EPFB4Oe6SAFo3LcNrLdHLCsQypRKLc xX1U5rZWakeItg20z8ccYP8vORfmOeD3mqz096eSGFnJfZIHlWRkve9J1eH3HReX0Kf6Jply 5X9h1yzfHb2b1k7ZCogQKn0lA3ZULl0sL8aYnYk1fEJJR62r9Qzenev5hL1SulVQSj+KvKh/ 17+KX8lSSPl/ufZKfHF2vKJqZmHCex7EhYIFmXX9+/uZyLb4nCi0clLV+PRJWLRU2b9+aODY +RJzq6jbK1bzQgS64csQax2ya8e5sf0o+MIxApTA3iWPU+gDaltIyfa0JAX5LFN3LJQpSC/R lmLpotBIbyMNc68SAwRKQMpY/6tz/YRnjWOv/05LF+jvH18/aadUFUUNB6J0XQPILxwOYIj4 OEgpM9JtFDv1kt0ao6L13kG+X6NI3oMV7QcmqsbWIK72BA2zlxiYIDHDnOk6p+4dNgRYFIhJ SWZhfSeiu0ElFbCaXc6CVPEwfFZ2cYVoBlPwVIPewaJl97CiqNl1RFd621qHAFczxEB2ONvI Gl7cUZyIPzWrTtvgcFCWUGqGh1AW0LFqhCglQNRmT2LVVSsW0zMMHY5aLSE800u+m5BeiRWo eODw2H/XDe2JMz800Peg6K+RyAPmTCpyjD/pQ==
  • Ironport-hdrordr: A9a23:x3LgD6tOC1dYlDSvdg1TbYyi7skDdtV00zEX/kB9WHVpmszxra 6TddAgpHvJYVcqKRQdcL+7VZVoLUmxyXcx2/h3AV7AZniFhILLFuFfBOLZqlWKcREWtNQttp uIG5IObuEYZmIasS+V2maFL+o=
  • Ironport-sdr: uIbS3Rzip1lnZpIpauQUlkpcOoON0FVDl+Q8GjGt+CBbmwAhvUr4PWOklYpn1qfwBZPaB9SQyC /bgw461+gdc6N6H0I8BVlx2O9q+qs96VvDiOeZSd1BrrDAlGH4MybNJ826HPmripTDNuqWaOWF k4ArbRld+oY7/ljtPh8fCXsQMTk9I04jWbQezOyDLTlARRddcZ9+AwsbS2yrz0pxCYq0adFtvG BT4mSKZOdCJot1Qhnaaf5BfnuoK+I/o2vZ3nZLxsoasvtIVRm7/k86mh7HgP5Fp7LwpAqZNPC3 PpvXyn6UBxVlDOQaLLPyLEA5
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Mon, Oct 18, 2021 at 12:36:45PM +0200, Jan Beulich wrote:
> On 18.10.2021 12:28, Juergen Gross wrote:
> > On 18.10.21 11:51, Anthony PERARD wrote:
> >> On Mon, Oct 18, 2021 at 11:02:20AM +0200, Jan Beulich wrote:
> >>> Oh, now I'm curious as to the why here. I thought use of $(srctree)
> >>> ought to be the exception.
> >>
> >> In Linux, the use of $(srctree) is indeed the exception. This is because
> >> we have VPATH=$(srctree), so when `make` look for a prerequisite or a
> >> target it will look first in the current directory and then in
> >> $(srctree). That works fine as long as the source tree only have sources
> >> and no built files.
> >>
> >> But if we want to be able to build the pv-shim without the linkfarm and
> >> thus using out-of-tree build, we are going to need the ability to build
> >> from a non-clean source tree. I don't think another way is possible.
> > 
> > Is there any reason (apart from historical ones) to build the hypervisor
> > in $(srctree)?
> > 
> > I could see several advantages to build it in another directory as soon
> > as the build system has this capability:
> > 
> > - possibility to have a simple build target for building multiple archs
> >    (assuming the cross-tools are available), leading to probably less
> >    problems with breaking the build of "the other" architecture we are
> >    normally not working with (and in future with e.g. Risc-V being added
> >    this will be even more important)
> > 
> > - possibility to have a debug and a non-debug build in parallel (in fact
> >    at least at SUSE we are working around that by building those with an
> >    intermediate "make clean" for being able to package both variants)
> > 
> > - make clean for the hypervisor part would be just a "rm -r"
> 
> I fully agree, yet ...
> 
> > Yes, this would require us (the developers) to maybe change some habits,
> > but I think this would be better than working around the issues by
> > adding $(srctree) all over the build system.
> 
> ... developers' habits would only be my second concern here (and if that
> had been the only one, then I would not see this as a reason speaking
> against the change, but as said I've never been building from the root,
> and I've also been building sort of out-of-tree all the time). Yet while
> writing this reply I came to realize that my primary concern was wrong:
> People would not need to adjust their spec files (or alike), at least
> not as long as they consume only files living under dist/.
> 
> So, Anthony - thoughts about making the default in-tree Xen build
> actually build into, say, build/xen/?

I don't think I should be the one answering this question. It would
probably be fairly easy to do.

But, I've already got some unfinished patches which add the ability to
do in-tree and out-of-tree at the same time, so I'll propose them and we
can decide whether they are worth it or if they are too much. That is,
after we have at least the ability to do out-of-tree build.

Cheers,

-- 
Anthony PERARD



 


Rackspace

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