<div dir="ltr"><div><div><div>FYI,<br><br></div>To move this forward, I&#39;ve modifed the top-level kvm-update <a href="http://et.al" target="_blank">et.al</a>. target so that it forces OBJDIR=OBJ.kvm, specifically:<br><br></div>- it invokes &quot;swan-build OBJDIR=OBJ.kvm&quot; <a href="http://et.al" target="_blank">et.al</a>. which, in turn, invokes &quot;make OBJDIR=OBJ.kvm ...&quot;<br><br><div>- in an attempt to avoid unexpected behaviour, should someone just invoke &quot;make&quot; from the KVM command line, it also forces  &quot;OBJDIR=OBJ.kvm&quot; into the current shell&#39;s environment (in general relying on environment variables makes for confusion)<br><br>As a bonus, it also fixes a bug where &quot;swan-build&quot; would &quot;rm -rf OBJ.linux.*&quot;, it now does &quot;rm -rf $(make showobjdir)&quot;, i.e., $(OBJDIR)<br><br></div><div>This means &quot;make check UPDATEONLY=1&quot; is unaffected (other than the above bug fix)<br><br></div><div>Andrew<br></div><br></div>PS: With this in place I can finally tweak the kvm-update target so that it does incremental builds.<br><br></div><div class="gmail_extra"><br><div class="gmail_quote">On 11 March 2015 at 23:26, Andrew Cagney <span dir="ltr">&lt;<a href="mailto:andrew.cagney@gmail.com" target="_blank">andrew.cagney@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><div><div class="h5"><br><div class="gmail_quote">On 11 March 2015 at 15:03, Antony Antony <span dir="ltr">&lt;<a href="mailto:antony@phenome.org" target="_blank">antony@phenome.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><span>On Wed, Mar 11, 2015 at 11:46:12AM -0400, Andrew Cagney wrote:<br>
&gt; Another of my local tweaks.<br>
&gt;<br>
&gt; Currently,  a VM build (swan-build) unhelpfully deletes all OBJ.linux.*<br>
&gt; directories.  This, of course, includes any native build you&#39;ve been<br>
&gt; doing.  I&#39;d like to tweak things so that:<br>
&gt;<br>
&gt; - on the VM OBJDIR has .kvm (.vm?) appended so VM and host builds use<br>
&gt; different directories<br>
&gt; - swan-build, which should only be run on a VM,  deletes OBJ.linix*.vm<br>
&gt; (yes it should rely on &quot;make distclean&quot; but that&#39;s another story)<br>
&gt;<br>
&gt; Since the VM has its own private build directory this also gets us that bit<br>
&gt; closer to not even needing the delete.<br>
<br>
</span>Probably things got better recently. A couple of weeks ago, deleting OBJDIR inside VM was a safe strategy.<br></blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<span><br>
<br>
&gt; I&#39;ve appended the key part of the patch.  The magic grep line matches what<br>
&gt; virt-what does.<br>
&gt;<br>
&gt; Andrew<br>
&gt;<br>
&gt; diff --git a/mk/<a href="http://objdir.mk" target="_blank">objdir.mk</a> b/mk/<a href="http://objdir.mk" target="_blank">objdir.mk</a><br>
&gt; index f86c9db..a581319 100644<br>
&gt; --- a/mk/<a href="http://objdir.mk" target="_blank">objdir.mk</a><br>
&gt; +++ b/mk/<a href="http://objdir.mk" target="_blank">objdir.mk</a><br>
&gt; @@ -56,4 +56,8 @@ BUILDENV:=$(shell uname -s | tr &#39;A-Z&#39; &#39;a-z&#39; | sed -e<br>
&gt; &#39;s/\(.*\)-.*/\1/&#39;)<br>
&gt;  endif<br>
&gt;  export BUILDENV<br>
&gt;<br>
&gt; -OBJDIR?=OBJ.${BUILDENV}.${ARCH}<br>
&gt; +ifeq ($(origin OBJDIR_KVM),undefined)<br>
&gt; +OBJDIR_KVM:=$(shell grep -i QEMU /proc/cpuinfo &gt;/dev/null 2&gt;&amp;1 &amp;&amp; echo<br>
&gt; .kvm)<br>
&gt; +endif<br>
&gt; +<br>
&gt; +OBJDIR?=OBJ.${BUILDENV}.${ARCH}$(OBJDIR_KVM)<br>
<br>
</span>If someone build on kvm, not running full testsuite, just building to install, suddenly directory will have OBJDIR_KVM. That does not sound convenient to me. This probably belong to mk/<a href="http://testing.mk" target="_blank">testing.mk</a> or something. I am not sure if it is good idea for the upstream.<br>
<br></blockquote><br></div></div></div><div class="gmail_quote">I&#39;m not following.  Why is appending .vm a problem?<br>It is certainly shorter than $(uname -r) &quot;3.18.7-200.fc21.x86_64&quot; which should also be added.<br><br></div><div class="gmail_quote">Why modobj isn&#39;t under $(OBJDIR) I don&#39;t know, perhaps it can be fixed?<br></div></div></div>
</blockquote></div><br></div>