xfs
[Top] [All Lists]

Re: [PATCH 2/5] xfstests: Use libtool to install applications

To: Rich Johnston <rjohnston@xxxxxxx>
Subject: Re: [PATCH 2/5] xfstests: Use libtool to install applications
From: Boris Ranto <ranto.boris@xxxxxxxxx>
Date: Tue, 16 Apr 2013 17:54:52 +0200
Cc: xfs-oss <xfs@xxxxxxxxxxx>, Boris Ranto <branto@xxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=ckFJ/NoCNtdQrHjIoNV2No1h70F7wyV+RXrwQO3CY/M=; b=OCdAgn7mytlqk4KouEWIBT6N8S9qbbRBFnTB+IGSVdsmavh5mjlTyB0L1QCxi6PK98 /L+qffXw4QXTwUXCCAynBZhubHJ2a/anAIbZ2lXiBC4NcN95Ej4XmzXGVOE8/YeP5xSz XDYnwOG3CveYBHRbCmgMgYYJyZna9clttHC+DemiHJ2gDR1DUXPGN2c64fDDj0k8tMr3 b5XhZp/mTn42E/2BENfJqsJgyuNomktCG6PwaO+XmlSIx3OiOR0M7wHizMcb2p5QeoFe q8e67T5ZpwItvTNjhfgwVp8fQFMvP6vxuDXWr1ZZU4W0OCfZ/DTJtbOr3Ps1y0VlDFgO 7UrQ==
In-reply-to: <20120828172928.999971219@xxxxxxx>
References: <20120828172605.607853317@xxxxxxx> <20120828172928.999971219@xxxxxxx>
Hi,

this patch introduced a regression as it is no longer possible to install xfstests to non-standard directory. The install-sh script that is packed with xfstests supports DIST_ROOT variable for installation to non-standard directory and hence, the command

make DIST_ROOT=/some/other/dir

worked well before the change. However now, even though libtootl actually calls the install-sh script, the libtool itself also checks that the given installation directory exists. Since the libtool does not respect DIST_ROOT, then unless you already have xfstests installed in /var/lib/xfstets, the installation with DIST_ROOT variable will fail with

libtool: install: `/var/lib/xfstests/ltp' is not a directory

Looking at the libtool script, there does not seem to be a nice way to fix this since it checks that the destination directory exists directly by command 'test -d "$dest".

Hence, possible workarounds include creating xfstests directory structure in /var/lib/xfstest/ before installing to DEST_DIR or reverting this patch. Looking at the libtool --mode=install --help, the command should also support -inst-prefix $DEST_DIR but that did not work in my case (and looking at the source code of libtool script, it does not treat the -inst-prefix option specially in install mode).

Regrads,
Boris



On Tue, Aug 28, 2012 at 7:26 PM, Rich Johnston <rjohnston@xxxxxxx> wrote:
This patch replaces the INSTALL macro with LTINSTALL so that libtool is used
to install the applications.  Libtool will install the binary from the proper
location and display a warning if any shared library dependancies are not
properly installed.  This ensures that a libtool wrapper shell script is not
installed in place of application when libtool wrappers are being used.


Signed-off-by: Rich Johnston <rjohnston@xxxxxxx>

---
 ltp/Makefile |    2 +-
 src/Makefile |    6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

Index: b/ltp/Makefile
===================================================================
--- a/ltp/Makefile
+++ b/ltp/Makefile
@@ -44,7 +44,7 @@ $(TARGETS): $(LIBTEST)

 install: default
        $(INSTALL) -m 755 -d $(PKG_LIB_DIR)/ltp
-       $(INSTALL) -m 755 $(TARGETS) $(PKG_LIB_DIR)/ltp
+       $(LTINSTALL) -m 755 $(TARGETS) $(PKG_LIB_DIR)/ltp
        $(INSTALL) -m 755 $(SCRIPTS) $(PKG_LIB_DIR)/ltp

 -include .dep
Index: b/src/Makefile
===================================================================
--- a/src/Makefile
+++ b/src/Makefile
@@ -74,9 +74,9 @@ LINKTEST = $(LTLINK) $@.c -o $@ $(CFLAGS

 install: default $(addsuffix -install,$(SUBDIRS))
        $(INSTALL) -m 755 -d $(PKG_LIB_DIR)/src
-       $(INSTALL) -m 755 $(TARGETS) $(PKG_LIB_DIR)/src
-       $(INSTALL) -m 755 fill2attr fill2fs fill2fs_check scaleread.sh $(PKG_LIB_DIR)/src
-       $(INSTALL) -m 644 dumpfile $(PKG_LIB_DIR)/src
+       $(LTINSTALL) -m 755 $(TARGETS) $(PKG_LIB_DIR)/src
+       $(LTINSTALL) -m 755 fill2attr fill2fs fill2fs_check scaleread.sh $(PKG_LIB_DIR)/src
+       $(LTINSTALL) -m 644 dumpfile $(PKG_LIB_DIR)/src

 %-install:
        $(MAKE) -C $* install

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs

<Prev in Thread] Current Thread [Next in Thread>