Ian.Campbell at citrix
Jun 1, 2012, 3:19 AM
Post #7 of 13
On Fri, 2012-06-01 at 11:11 +0100, George Dunlap wrote:
> On 01/06/12 09:29, Ian Campbell wrote:
> > On Thu, 2012-05-31 at 10:54 +0100, Anthony PERARD wrote:
> >> On Thu, May 31, 2012 at 10:42 AM, George Dunlap
> >> <George.Dunlap [at] eu> wrote:
> >>> The strange thing is that there *is* a pygrub in the right place, so
> >>> it appears that thefollowing line ($INSTALL_PYTHON_PROG) is redundant?
> >> It's seems that the right on the script are already set to 755 by the
> >> setup.py, so this $INSTALL_PYTHON_PROG line is probably an extra.
> > What is the conclusion here? Is the original patch correct and/or is
> > there a subsequent additional fix?
> There is a bug (pygrub is installed both in $(DESTDIR)/foo and
> $(DESTDIR)/$(DESTDIR)/foo), and Anthony's first patch (AFAICT) correctly
> fixes the bug (only installed in $(DESTDIR).
> I think there is a redundant command in the Makefile as well, where
> pygrub will be copied to $(DESTDIR)/foo twice. That doesn't cause
> incorrect behavior, but I would probably still consider it a bug.
> So the original patch is correct, but there is a subsequent fix.
> > My scripts does things like:
> > make -C tools XEN_TARGET_ARCH=x86_32 DESTDIR=/tmp/tmp0_hnbt LIBXL_TESTIDL_SEED=42 debug=y -j12 install
> > then tars up /tmp/tmp0_hnbt, copies it to my test box and untars. I've
> > just noticed on my test box:
> > # ls -dl /tmp/tmp*
> > drwxr-xr-x 3 root root 4096 Jun 1 09:26 /tmp/tmp0_hnbt
> > drwxr-xr-x 3 root root 4096 May 18 11:11 /tmp/tmp8D2Mvc
> > drwxr-xr-x 3 root root 4096 May 25 10:21 /tmp/tmpAd2OFq
> > drwxr-xr-x 3 root root 4096 May 18 15:05 /tmp/tmpEqYZpf
> > [...]
> > # find /tmp/tmp* -name pygrub | wc -l
> > 19
> The "right thing" is to find find 2 files named "pygrub" per directory
> (a binary at /usr/lib/xen/bin/pygrub and a link to that binary at
> /usr/bin/pygrub, for compatibility). Without Anthony's patch you would
> get 3. Not sure how that corresponds to the directories you have there...
This is the actual installed files on my test machine, not my build
On my build system I would have had:
/tmp/tmpEqYZpf/usr/bin/pygrub -> /usr/lib/xen/bin/pygrub
I then "tar -C /tmp/tmpEqYZpf cf blah.tar ." and copy+untar blah.tar on
the so that on the target I get:
/usr/bin/pygrub -> /usr/lib/xen/bin/pygrub
Where the last is what I find above via find etc.
Xen-devel mailing list
Xen-devel [at] lists