Re: xfstest and chromeos

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On Fri, Jan 27, 2017 at 08:02:30AM -1000, Mike Frysinger wrote:
> > Right, but I'm able to create libtool without any problems and messing
> > with aclocal.m4 and acinclude.m4, et. al.  I probably am relying on
> > libtoolize from the local Debian or Guubuntu build host, though.  Is
> > that the issue you're having with ChromeOS?  That you're using a
> > different version of the libtool/autoconf macros?
> 
> if we wanted, we could do all this manually too, but i don't think it
> makes sense to force every developer to learn autotools and how to set
> up a local copy.  Gwendal's patch makes things "just work" w/out
> having to learn anything new.  the overhead is, arguably, negligible.

Most developers are forced to learn autotools, since it's generally
considered good practice by people who use libtools at all to not
check in build artifacts into the git tree.  And developers can also
check out my xfstests-bld git tree if they wanted something completely
turnkey.   Not that it's all that hard:

if test -z "$SKIP_XFSTESTS" ; then
    build_start "xfstests"
    (cd xfstests-dev; \
     ver=$(git describe --always --dirty); echo "xfstests	$ver ($(git log -1 --pretty=%cD))" > ../xfstests.ver ; \
     autoheader ; autoconf ; \
     CFLAGS="$LCF -I$DESTDIR/include -fno-stack-protector" \
     CPPFLAGS="-I$DESTDIR/include" \
     LDFLAGS="$LLF -static -L$DESTDIR/lib" \
     LIBS=-lpthread \
     ./configure $cross ; \
     make $J LLDFLAGS=$EXEC_LLDFLAGS PLDLIBS="$android_compat" \
	  LIBTOOL="/usr/bin/libtool --tag=CC" BUILD_VERBOSE=1)
fi

I personally don't mind checking in generated build artificats such as
"configure" into the git tree --- see how I do things with e2fsprogs
--- but I also have the good taste to absolutely consider libtool
and automake as abominations from hell.  :-)

If you want to try to convince Darrin and From: Theodore Ts'o <tytso@xxxxxxx>
To: Mike Frysinger <vapier@xxxxxxxxxxxx>
Cc: Gwendal Grignou <gwendal@xxxxxxxxxxxx>, fstests@xxxxxxxxxxxxxxx
Bcc: tytso@xxxxxxx
Subject: Re: xfstest and chromeos
Reply-To: 
In-Reply-To: <CAAbOScmd_j-HgZj929fbWzs3JjLkB817dJ_A-ghLyD7kHjh7GA@xxxxxxxxxxxxxx>

On Fri, Jan 27, 2017 at 08:02:30AM -1000, Mike Frysinger wrote:
> > Right, but I'm able to create libtool without any problems and messing
> > with aclocal.m4 and acinclude.m4, et. al.  I probably am relying on
> > libtoolize from the local Debian or Guubuntu build host, though.  Is
> > that the issue you're having with ChromeOS?  That you're using a
> > different version of the libtool/autoconf macros?
> 
> if we wanted, we could do all this manually too, but i don't think it
> makes sense to force every developer to learn autotools and how to set
> up a local copy.  Gwendal's patch makes things "just work" w/out
> having to learn anything new.  the overhead is, arguably, negligible.

Most developers are forced to learn autotools, since it's generally
considered good practice by people who use libtools at all to not
check in build artifacts into the git tree.  And developers can also
check out my xfstests-bld git tree if they wanted something completely
turnkey.   Not that it's all that hard:

if test -z "$SKIP_XFSTESTS" ; then
    build_start "xfstests"
    (cd xfstests-dev; \
     autoheader ; autoconf ; \
     CFLAGS="$LCF -I$DESTDIR/include -fno-stack-protector" \
     CPPFLAGS="-I$DESTDIR/include" \
     LDFLAGS="$LLF -static -L$DESTDIR/lib" \
     LIBS=-lpthread \
     ./configure $cross ; \
     make $J LLDFLAGS=$EXEC_LLDFLAGS PLDLIBS="$android_compat" \
	  LIBTOOL="/usr/bin/libtool --tag=CC" BUILD_VERBOSE=1)
fi

At least for xfstests, "autoheader ; autoconf ; configure ; make"
should be sufficient.  It's really not that hard.  And for cross
compilations, it's just:

    cross="--build=$(config.guess) --host=$CROSS_COMPILE"

and then using "configure $cross" instead.  I guess I'm not
understanding why it's considered tricky.

						- Ted

P.S.  I personally don't mind checking in generated build artificats
such as "configure" into the git tree --- see how I do things with
e2fsprogs --- but I also have the good taste to absolutely consider
libtool and automake as abominations from hell.  :-)

Especially given that xfstests and xfsprogs only need to work on Linux
these days (we have enough other Linixisms that it would be hopeless
to get it to work on, say, BSD or Open Solaris), in my opinion the
right thing to do would be to completely ditch automake and libtool;
e2fsprogs autoconf mainly for things like "--enable-elf-shlibs" and
using Makefile fragments included as part of the configure process is
plenty to handle shared libraries.  But that's up to Darrick and Eryu
to decide.  :-)

--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux