From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Pau Monne Subject: Re: [PATCH v4] tools: honour --libdir when it is passed to ./configure Date: Thu, 5 Jul 2012 10:11:28 +0100 Message-ID: <4FF55A40.8050903@citrix.com> References: <1341478690.31696.110.camel@zakaz.uk.xensource.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1341478690.31696.110.camel@zakaz.uk.xensource.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Ian Campbell Cc: Matt Wilson , "xen-devel@lists.xen.org" List-Id: xen-devel@lists.xenproject.org Ian Campbell wrote: > On Wed, 2012-07-04 at 19:18 +0100, Matt Wilson wrote: >> Currently shared libraries are automatically installed into /usr/lib >> or /usr/lib64, depending on the supplied --prefix value and >> $(XEN_TARGET_ARCH). Some systems, like recent Debian and Ubuntu releases, >> do not use /usr/lib64, but instead /usr/lib/x86_64-linux-gnu. >> >> With this change, packagers can supply the desired location for shared >> libraries on the ./configure command line. Packagers need to note that >> the default behaviour on 64-bit Linux systems will be to install shared >> libraries in /usr/lib, not /usr/lib64, unless a --libdir value is provided >> to ./configure. >> >> Additionally, the libfsimage plugins are now loaded explicitly from >> $LIBDIR/fs, removing platform-based decision trees in code. >> >> The LIBLEAFDIR{,_x86_32,_x86_64} make variables and the LIB_PATH >> autoconf substition are no longer used, so this change removes >> m4/default_lib.m4 and regenerates configure. m4/pkg.m4 has been >> refreshed from pkg-config 0.26 to resolve an error, >> "possibly undefined macro: AS_MESSAGE_LOG_FDdnl" when running >> autoconf. > > Was this required due to the removal of default_lib.m4? > >> Signed-off-by: Matt Wilson > > This time I get everything installed in /lib instead of /usr/lib. e.g. > > dist/install/lib/fs instead of the expected dist/install/usr/lib/fs > dist/install/lib/libxenctrl.so and not > dist/install/usr/lib/libxenctrl.so etc etc. > > I suspect this is due to: > > $ head -n 4 config/Tools.mk > # Prefix and install folder > PREFIX := /usr > exec_prefix := ${prefix} > LIBDIR := ${exec_prefix}/lib > > Note the case of prefix vs PREFIX. AFAICT $PREFIX is completely a > Xen-ism while autoconf always uses $prefix. The definitive solution is to convert everything to lowercase, since it's much more comfortable if we are using autoconf. Anyway this is a 4.3 task. > On a hunch I reverted the change to remove m4/default_lib.m4 and this > lead to the expected result. > > I'm going to revert the m4/default_lib.m4 and by extension the m4/pkg.m4 > changes and commit the result (after consulting with Ian J to make sure > the test system can cope with this change). > > Please can you resubmit the other bits separately? I suspect the right > answer will be to include prefix:=@prefix@ in config/Tools.mk.in, but > I've not checked that. > > For reference my test procedure is to do a full "make dist" before and > after each time doing: > find dist | sort> FILE_LIST.BEFORE > (or ....AFTER as appropriate) and then to do > diff -u<(sed -e 's/lib64/lib/' ../FILE_LIST.BEFORE | sort) ../FILE_LIST.AFTER > It'd be useful if you could do something similar as part of your > testing. > > FYI I also tested live migration of PV (booted with pygrub), HVM (w/ > qemu in dom0) and HVM (w/ stubdomains) with xl and PV migration and HVM > migration with xend. Since pygrub and the various save herlpes are some > of the things which have moved around. All seemed fine. > > Thanks, > Ian.