Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 458818 - app-emulation/xen-tools-4.2.1-r1: $(get_libdir) is not respected during taking care of qemu relevant binaries
Summary: app-emulation/xen-tools-4.2.1-r1: $(get_libdir) is not respected during takin...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: Normal normal (vote)
Assignee: Ian Delaney (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-02-23 05:25 UTC by Tomoatsu Shimada
Modified: 2013-03-05 18:20 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tomoatsu Shimada 2013-02-23 05:25:05 UTC
qemu related binaries installed to /usr/lib64/xen/bin even though it's being built in 32-bit platform

Reproducible: Always

Steps to Reproduce:
1. emerge xen-tools-4.2.1-r1 in x86 (not 64) platform with USE=qemu
Actual Results:  
qemu binaries installed to /usr/lib64/xen/bin

Expected Results:  
qemu binaries installed to /usr/lib/xen/bin

workaround I have taken:

--- xen-tools-4.2.1-r1.ebuild.orig	2013-02-23 04:39:25.610773971 +0000
+++ xen-tools-4.2.1-r1.ebuild	2013-02-23 04:55:00.278775019 +0000
@@ -267,9 +267,9 @@
 		keepdir /var/log/xen-consoles
 	fi
 
-	if use qemu; then
-		mkdir -p "${D}"usr/lib64/xen/bin || die
-		mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/lib64/xen/bin/ || die
+	if use qemu && [ $(get_libdir) != "lib" ]; then
+		mkdir -p "${D}"usr/$(get_libdir)/xen/bin || die
+		mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/$(get_libdir)/xen/bin/ || die
 	fi
 
 	# For -static-libs wrt Bug 384355
Comment 1 Ian Delaney (RETIRED) gentoo-dev 2013-03-04 15:21:59 UTC
eeer, I'm puzzled. Let's do some sanity checks here, though I find it difficult to fathom you haven't got this right.

1. $(get_libdir) can == either lib, lib32 || lib64.
[ $(get_libdir) != "lib" ] then would be equiv. to 
$(get_libdir) == "lib64" or "lib32"

which is accounting for the possible values for if use amd64.

however your description indicates this is a correction for the case of x86

2. I would expect line 1 to read 

if use qemu && use x86; then
OR 
if use qemu && [ $(get_libdir) == "lib" ]; then
making it to account for the case of use x86.

If you've arrived at this and you're running on an x86, it follows you've tried it, tested it and subsequently entered it here.  tilt.  Now let me point out I am in a 64 system here, but I have an x86 system I can boot into so as to run this.  Chrooting into the x86 system I find untrustworthy.  I will re-boot into it after you reply here.

3. mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/lib64/xen/bin/ || die
does appear indeed wrong, hard-coding the moves to lib64.  Indeed it need account for the 32-bit platform.   

Can you make line 1 read { if use qemu && use x86 }; then
OR split into a nested 2 lines
if use qemu; then
        if use x86; then

and adjust lines 2 & 3 to suit, and re-post with what works. Once you get that more robust form, I'll reboot, run and test in x86 and polish off the case of elif use amd64.
thx
Comment 2 Paul Freeman 2013-03-05 18:14:23 UTC
confirm results as exactly described  by Tomoatsu Shimada  on x86, instead of the patch mentioned above we have used a simple nested set of if's (providing the correct test logic):


--- xen-tools-4.2.1-r1.ebuild	2013-02-22 11:01:03.000000000 +0000
+++ xen-tools-4.2.1-r1.ebuild	2013-03-05 17:52:01.203779603 +0000
@@ -268,8 +268,11 @@
 	fi
 
 	if use qemu; then
-		mkdir -p "${D}"usr/lib64/xen/bin || die
-		mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/lib64/xen/bin/ || die
+		if use x86; then
+			dodir /usr/lib/xen/bin/
+		elif use amd64; then
+			mv "${D}"usr/lib/xen/bin/qemu* "${D}"usr/$(get_libdir)/xen/bin/ || die
+		fi
 	fi
 
 	# For -static-libs wrt Bug 384355


tested and working on both x86 and amd64


https://bugs.gentoo.org/458818 "app-emulation/xen-tools-4.2.1-r1: $(get_libdir) is not respected during taking care of qemu relevant binaries"; Gentoo Linux, Applications; IN_P; shimarin:idella4
Comment 3 Ian Delaney (RETIRED) gentoo-dev 2013-03-05 18:20:56 UTC
  05 Mar 2013; Ian Delaney <idella4@gentoo.org> xen-tools-4.2.0-r3.ebuild,
  xen-tools-4.2.1-r2.ebuild:
  Fix paths for qemu files, fixes Bug #458818 by Tomoatsu Shimada