Use libtool to install apps and remove relative lib paths
PATCH 2/5 xfstests: Use libtool to install applications
In reply to Rich JohnstonThis 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.
--- ltp/Makefile | 2 +- src/Makefile | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-)
ltp/Makefile +1 -1
@@ -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
src/Makefile +3 -3
@@ -74,9 +74,9 @@ LINKTEST = $(LTLINK) [email protected] -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
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
PATCH 3/5 xftests: Use installed libraries only
In reply to Rich JohnstonThe xfstests autotools currently searches locally in
../{acl,attr,dmapi,xfsprogs}
for libraries that xfstests depends upon, in addition to searching for them in their regular installed locations on a system, e.g. /usr/lib. It appears this feature was added (but not documented) so that xfs developers can build and run xfstests without having to install the libraries. This can lead to touble if you expect that xfstests is using the versions of the libraries installed on the system.
If a local library was found and not installed, libtool will create a wrapper script to call the binary from the .libs directory. This patch will remove searching for local libraies so that the installed libraries are always used.
--- m4/package_acldev.m4 | 2 -- m4/package_attrdev.m4 | 4 ---- m4/package_dmapidev.m4 | 2 -- m4/package_xfslibs.m4 | 6 ------ 4 files changed, 14 deletions(-)
m4/package_acldev.m4 +0 -2
@@ -30,8 +30,6 @@ AC_DEFUN([AC_PACKAGE_NEED_ACLINIT_LIBACL exit 1 ]) libacl="-lacl" - test -f `pwd`/../acl/libacl/libacl.la && \ - libacl="`pwd`/../acl/libacl/libacl.la" test -f ${libexecdir}${libdirsuffix}/libacl.la && \ libacl="${libexecdir}${libdirsuffix}/libacl.la" AC_SUBST(libacl)
m4/package_attrdev.m4 +0 -4
@@ -46,8 +46,6 @@ AC_DEFUN([AC_PACKAGE_NEED_GETXATTR_LIBAT exit 1 ]) libattr="-lattr" - test -f `pwd`/../attr/libattr/libattr.la && \ - libattr="`pwd`/../attr/libattr/libattr.la" test -f ${libexecdir}${libdirsuffix}/libattr.la && \ libattr="${libexecdir}${libdirsuffix}/libattr.la" AC_SUBST(libattr)
@@ -62,8 +60,6 @@ AC_DEFUN([AC_PACKAGE_NEED_ATTRGET_LIBATT exit 1 ]) libattr="-lattr" - test -f `pwd`/../attr/libattr/libattr.la && \ - libattr="`pwd`/../attr/libattr/libattr.la" test -f ${libexecdir}${libdirsuffix}/libattr.la && \ libattr="${libexecdir}${libdirsuffix}/libattr.la" AC_SUBST(libattr)
m4/package_dmapidev.m4 +0 -2
@@ -20,8 +20,6 @@ AC_DEFUN([AC_PACKAGE_WANT_DMAPI], echo ]) libdm="-ldm" - test -f `pwd`/../dmapi/libdm/libdm.la && \ - libdm="`pwd`/../dmapi/libdm/libdm.la" test -f ${libexecdir}${libdirsuffix}/libdm.la && \ libdm="${libexecdir}${libdirsuffix}/libdm.la" AC_SUBST(libdm)
m4/package_xfslibs.m4 +0 -6
@@ -51,8 +51,6 @@ AC_DEFUN([AC_PACKAGE_NEED_LIBXFSINIT_LIB exit 1 ]) libxfs="-lxfs" - test -f `pwd`/../xfsprogs/libxfs/libxfs.la && \ - libxfs="`pwd`/../xfsprogs/libxfs/libxfs.la" test -f ${libexecdir}${libdirsuffix}/libxfs.la && \ libxfs="${libexecdir}${libdirsuffix}/libxfs.la" AC_SUBST(libxfs)
@@ -67,8 +65,6 @@ AC_DEFUN([AC_PACKAGE_NEED_OPEN_BY_FSHAND exit 1 ]) libhdl="-lhandle" - test -f `pwd`/../xfsprogs/libhandle/libhandle.la && \ - libhdl="`pwd`/../xfsprogs/libhandle/libhandle.la" test -f ${libexecdir}${libdirsuffix}/libhandle.la && \ libhdl="${libexecdir}${libdirsuffix}/libhandle.la" AC_SUBST(libhdl)
@@ -83,8 +79,6 @@ AC_DEFUN([AC_PACKAGE_NEED_ATTRLIST_LIBHA exit 1 ]) libhdl="-lhandle" - test -f `pwd`/../xfsprogs/libhandle/libhandle.la && \ - libhdl="`pwd`/../xfsprogs/libhandle/libhandle.la" test -f ${libexecdir}${libdirsuffix}/libhandle.la && \ libhdl="${libexecdir}${libdirsuffix}/libhandle.la" AC_SUBST(libhdl)
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
cover Use libtool to install apps and remove relative lib paths
This 5 part patchset (for xfstests, dmapi and xfsdump):
1. Uses libtool to install the binary from the proper location and display a warning if any shared library dependancies are not properly installed.
2. Ensures that a libtool wrapper shell script is not installed in place of the application when libtool wrappers are being used.
3. Removes the undocumented feature which allowed xfs developers to build and run xfstests without having to install the libraries. This can lead to touble if you expect that xfstests is using the versions of the libraries installed on the system.
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
PATCH 1/5 xfstests: Use libtool to install lstat64
Use libtool to install lstat64 on $SCRATCH_MNT instead of cp. 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 lstat64 when libtool wrappers are being used.
--- 120 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
120 +1 -1
@@ -68,7 +68,7 @@ fi #executable file echo "*** copying file ***" -cp src/lstat64 $SCRATCH_MNT +libtool --mode=install install src/lstat64 $SCRATCH_MNT/lstat64 src/lstat64 $SCRATCH_MNT/lstat64 >$tmp.out sleep 5 echo "*** executing file ***"
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
PATCH 4/5 dmapi: Use installed libraries only
In reply to Rich JohnstonIf a local library was found and not installed, libtool will create a wrapper script to call the binary from the .libs directory. This patch will remove searching for local libraies so that the installed libraries are always used.
--- m4/package_xfslibs.m4 | 6 ------ 1 file changed, 6 deletions(-)
m4/package_xfslibs.m4 +0 -6
@@ -40,8 +40,6 @@ AC_DEFUN([AC_PACKAGE_NEED_LIBXFSINIT_LIB exit 1 ]) libxfs="-lxfs" - test -f `pwd`/../xfsprogs/libxfs/libxfs.la && \ - libxfs="`pwd`/../xfsprogs/libxfs/libxfs.la" test -f ${libexecdir}${libdirsuffix}/libxfs.la && \ libxfs="${libexecdir}${libdirsuffix}/libxfs.la" AC_SUBST(libxfs)
@@ -56,8 +54,6 @@ AC_DEFUN([AC_PACKAGE_NEED_OPEN_BY_FSHAND exit 1 ]) libhdl="-lhandle" - test -f `pwd`/../xfsprogs/libhandle/libhandle.la && \ - libhdl="`pwd`/../xfsprogs/libhandle/libhandle.la" test -f ${libexecdir}${libdirsuffix}/libhandle.la && \ libhdl="${libexecdir}${libdirsuffix}/libhandle.la" AC_SUBST(libhdl)
@@ -72,8 +68,6 @@ AC_DEFUN([AC_PACKAGE_NEED_ATTRLIST_LIBHA exit 1 ]) libhdl="-lhandle" - test -f `pwd`/../xfsprogs/libhandle/libhandle.la && \ - libhdl="`pwd`/../xfsprogs/libhandle/libhandle.la" test -f ${libexecdir}${libdirsuffix}/libhandle.la && \ libhdl="${libexecdir}${libdirsuffix}/libhandle.la" AC_SUBST(libhdl)
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
PATCH 5/5 xfsdump: Use installed libraries only
In reply to Rich JohnstonIf a local library was found and not installed, libtool will create a wrapper script to call the binary from the .libs directory. This patch will remove searching for local libraies so that the installed libraries are always used.
--- m4/package_attrdev.m4 | 4 ---- 1 file changed, 4 deletions(-)
m4/package_attrdev.m4 +0 -4
@@ -46,8 +46,6 @@ AC_DEFUN([AC_PACKAGE_NEED_GETXATTR_LIBAT exit 1 ]) libattr="-lattr" - test -f `pwd`/../attr/libattr/libattr.la && \ - libattr="`pwd`/../attr/libattr/libattr.la" test -f ${libexecdir}${libdirsuffix}/libattr.la && \ libattr="${libexecdir}${libdirsuffix}/libattr.la" AC_SUBST(libattr)
@@ -62,8 +60,6 @@ AC_DEFUN([AC_PACKAGE_NEED_ATTRGET_LIBATT exit 1 ]) libattr="-lattr" - test -f `pwd`/../attr/libattr/libattr.la && \ - libattr="`pwd`/../attr/libattr/libattr.la" test -f ${libexecdir}${libdirsuffix}/libattr.la && \ libattr="${libexecdir}${libdirsuffix}/libattr.la" AC_SUBST(libattr)
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 1/5] xfstests: Use libtool to install lstat64
In reply to Rich JohnstonQuoted 5 lines · Rich Johnston
Use libtool to install lstat64 on $SCRATCH_MNT instead of cp. 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 lstat64 when libtool wrappers are being used.
This patch is unnecessary if the configure script does the right thing and refuse to build is library dependencies are not correct.
Cheers,
Dave.
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 2/5] xfstests: Use libtool to install applications
In reply to Rich JohnstonQuoted 8 lines · Rich Johnston
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 <[email protected]>
Looks OK - do any of the dmapi/ makefiles need this treatment?
Cheers,
Dave.
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 3/5] xftests: Use installed libraries only
In reply to Rich JohnstonQuoted 6 lines · Rich Johnston
The xfstests autotools currently searches locally in
../{acl,attr,dmapi,xfsprogs}
for libraries that xfstests depends upon, in addition to searching for them in their regular installed locations on a system, e.g./usr/lib. It appears this feature was added (but not documented) so that xfs developers can build and run xfstests without having to install the libraries. This can lead to touble if
trouble.
(the subject also has a typo)
Quoted 6 lines
you expect that xfstests is using the versions of the libraries installed on the system.
If a local library was found and not installed, libtool will create a wrapper script to call the binary from the .libs directory. This patch will remove searching for local libraies so that the installed libraries are always used.
libraries
Quoted 1 line
Signed-off-by Rich Johnston <[email protected]>
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 4/5] dmapi: Use installed libraries only
In reply to Rich JohnstonQuoted 5 lines · Rich Johnston
If a local library was found and not installed, libtool will create a wrapper script to call the binary from the .libs directory. This patch will remove searching for local libraies so that the installed libraries are always used.
Signed-off-by Rich Johnston <[email protected]>
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 5/5] xfsdump: Use installed libraries only
In reply to Rich JohnstonQuoted 5 lines · Rich Johnston
If a local library was found and not installed, libtool will create a wrapper script to call the binary from the .libs directory. This patch will remove searching for local libraies so that the installed libraries are always used.
Signed-off-by Rich Johnston <[email protected]>
Signature · 7 lines
Dave Chinner [email protected] _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Hey Rich,
Quoted 10 lines · Rich Johnston
This 5 part patchset (for xfstests, dmapi and xfsdump):
1. Uses libtool to install the binary from the proper location and display a warning if any shared library dependancies are not properly installed.
2. Ensures that a libtool wrapper shell script is not installed in place of the application when libtool wrappers are being used.
3. Removes the undocumented feature which allowed xfs developers to build and run xfstests without having to install the libraries. This can lead to touble if you expect that xfstests is using the versions of the libraries installed on the system.
This patchset looks great to me.
Although Dave has mentioned that the first patch probably isn't strictly necessary... I think that it's worth pulling in. Since we build with libtool we should also install with libtool.
Dave also asked about dmapi. I took a brief look at the dmapi Makefiles. It appears the library is already installed using INSTALL_LTLIB.
Looks good!
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Quoted 11 lines · Rich Johnston
This 5 part patchset (for xfstests, dmapi and xfsdump):
1. Uses libtool to install the binary from the proper location and display a warning if any shared library dependancies are not properly installed.
2. Ensures that a libtool wrapper shell script is not installed in place of the application when libtool wrappers are being used.
3. Removes the undocumented feature which allowed xfs developers to build and run xfstests without having to install the libraries. This can lead to touble if you expect that xfstests is using the versions of the libraries installed on the system.
PATCH 1/5 of this series was determined to be unnecessary and was not checked in. PATCHES 2-5 have been checked into the oss.sgi.com repositories.
Regards
--Rich
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 2/5] xfstests: Use libtool to install applications
In reply to Rich JohnstonHi,
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
Quoted 47 lines · Rich Johnston
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 <[email protected]>--- ltp/Makefile | 2 +- src/Makefile | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-)Index: b/ltp/Makefile
===================================================================ltp/Makefile +1
-1@@ -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 .depIndex: b/src/Makefile
===================================================================src/Makefile +0
-2@@ -74,9 +74,9 @@ LINKTEST = $(LTLINK) [email protected] -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
src/Makefile +2
-1- $(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
Quoted 8 lines
%-install:
$(MAKE) -C $* install_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 2/5] xfstests: Use libtool to install applications
Boris,
Most people do not install xfstests, as it is not required to run the tests. Is there a reason you need to install xfstests? It is designed to be run from the directory you did the git clone from. Path is not critical so you could move it anywhere you wish.
i.e.
git clone git://oss.sgi.com/xfs/cmds/xfstests
mv xfstests /new/path/new_xfsdirname
cd /new/path/new_xfsdirname
./check -g auto
--Rich
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 2/5] xfstests: Use libtool to install applications
Quoted 4 lines · Rich Johnston
Boris,
Most people do not install xfstests, as it is not required to run the tests. Is there a reason you need to install xfstests? It is designed to be run from the directory you did the git clone from. Path is not critical so you could move it anywhere you wish.
Just fwiw I've always wished for a properly installable xfstests to make it possible to package it... Just a thought. :)
-Eric
Quoted 7 lines
i.e.
git clonegit://oss.sgi.com/xfs/cmds/xfstests
mv xfstests /new/path/new_xfsdirname
cd /new/path/new_xfsdirname
./check -g auto
Quoted 7 lines
--Rich
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 2/5] xfstests: Use libtool to install applications
In reply to Rich JohnstonRich,
just as Eric guessed, I package the xfstests test suite (and that is also why I need the DIST_ROOT variable functioning properly). Although I can currently work around the problem by doing something like
./configure
make
mkdir -p /var/lib/xfstets/{ltp,src}
make DIST_ROOT=$RPM_BUILD_ROOT install
it certainly is not the best solution to the problem. If the test suite is completely independent from its location then also maybe this could work (I did not try it, yet and I'm still not sure it is the best solution)
./configure --prefix=$RPM_BUILD_ROOT
make
make install
but if that is the case then it'd probably make sense to drop the whole DIST_ROOT support from install-sh script to avoid confusion and update the spec file in bulld/rpm/.
Regards,
Boris
(Rich, sorry for the duplicate message, I forgot to cc mailing list the first time.)
Quoted 7 lines · Rich Johnston
Boris,
Most people do not install xfstests, as it is not required to run the tests. Is there a reason you need to install xfstests? It is designed to be run from the directory you did the git clone from. Path is not critical so you could move it anywhere you wish.
Quoted 9 lines
i.e.
git clone git://oss.sgi.com/xfs/cmds/**xfstests<http://oss.sgi.com/xfs/cmds/xfstests>
mv xfstests /new/path/new_xfsdirname
cd /new/path/new_xfsdirname
./check -g auto--Rich
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 2/5] xfstests: Use libtool to install applications
Quoted 22 lines · Boris Ranto
Rich,
just as Eric guessed, I package the xfstests test suite (and that is also
why I need theDIST_ROOTvariable functioning properly). Although I can currently work around the problem by doing something like./configure
make
mkdir -p/var/lib/xfstets/{ltp,src}
make DIST_ROOT=$RPM_BUILD_ROOT installit certainly is not the best solution to the problem. If the test suite is
completely independent from its location then also maybe this could work (I
did not try it, yet and I'm still not sure it is the best solution)./configure --prefix=$RPM_BUILD_ROOT
make
make install
Quoted 7 lines
but if that is the case then it'd probably make sense to drop the whole
DIST_ROOTsupport from install-sh script to avoid confusion and update the
spec file in bulld/rpm/.Regards,
Boris
Boris,
When you get it working for packaging purposes I'd appreciate a post detailing what works. I thought about packaging xfstests for opensuse a couple years ago but aborted the effort when I realized it was not designed to be installed at the time.
Greg
Signature · 6 lines
Sent from my Android phone with K-9 Mail. Please excuse my brevity. _______________________________________________ xfs mailing list [email protected] http://oss.sgi.com/mailman/listinfo/xfs
Re: [PATCH 2/5] xfstests: Use libtool to install applications
Greg,
sure, currently, I use the following spec file to package it (I've trimmed things like changelog to limit the space used):
--------------------------------------------------- SPEC FILE
-----------------------------------------------------------------------
Name: xfstests Version: 20130415 Release: 3.git Summary: xfs qa tests
Group: misc License: GPL
URL:
http://oss.sgi.com/cgi-bin/gitweb.cgi?p=xfs/cmds/xfstests.git
Source0: $RPM_BUILD_ROOT/SOURCES/xfstests-dev.tar.bz2
BuildRoot:
%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: autoconf, libtool, e2fsprogs-devel, xfsprogs-devel BuildRequires: libacl-devel, libattr-devel, libaio-devel Requires: bash, perl, acl, attr, bind-utils Requires: bc, indent, quota, xfsprogs
%description
The xfsqa test available at git://oss.sgi.com/xfs/cmds/xfstests.git.
%prep
%setup -q -n xfstests-dev
%build
autoheader
autoconf
%configure
make %{?_smp_mflags}
%install
rm -rf $RPM_BUILD_ROOT
# Dirty workaround, xfstests won't build if these two directories do not exist...
mkdir -p /var/lib/xfstests/{ltp,src}
make DIST_ROOT=$RPM_BUILD_ROOT install
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
%doc README/var/lib/xfstests --------------------------------------------------- SPEC FILE
-----------------------------------------------------------------------
Before the libtool was used for installation I didn't need the workaround (mkdir -p /var/lib/xfstets/{src,ltp}). Additionally, there is a template spec file in xfstests git repository (build/rpm/xfstests.spec.in) that you can use.
I get the tar.bz2 package from git repository by:
git archive --format=tar --output xfstests-dev.tar --prefix=xfstests-dev/ bzip2 xfstests-dev.tar
btw: I did not originally write the file, I just maintain it, now. I suppose that Eric Sandeen is the one who originally wrote the .spec file.
Regards,
Boris
Quoted 36 lines · Greg Freemyer
Quoted 22 lines · Boris Ranto
Rich,
just as Eric guessed, I package the xfstests test suite (and that is also
why I need theDIST_ROOTvariable functioning properly). Although I can currently work around the problem by doing something like./configure
make
mkdir -p/var/lib/xfstets/{ltp,src}
make DIST_ROOT=$RPM_BUILD_ROOT installit certainly is not the best solution to the problem. If the test suite is
completely independent from its location then also maybe this could work (I
did not try it, yet and I'm still not sure it is the best solution)./configure --prefix=$RPM_BUILD_ROOT
make
make installQuoted 7 lines
but if that is the case then it'd probably make sense to drop the whole
DIST_ROOTsupport from install-sh script to avoid confusion and update the
spec file in bulld/rpm/.Regards,
BorisBoris,
Quoted 9 lines
When you get it working for packaging purposes I'd appreciate a post detailing what works. I thought about packaging xfstests for opensuse a couple years ago but aborted the effort when I realized it was not designed to be installed at the time.
Greg
--
Sent from my Android phone with K-9 Mail. Please excuse my brevity.
_______________________________________________
xfs mailing list
[email protected]
http://oss.sgi.com/mailman/listinfo/xfs