All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eryu Guan <guaneryu@gmail.com>
To: Theodore Ts'o <tytso@mit.edu>
Cc: fstests@vger.kernel.org
Subject: Re: [PATCH] Use the original install-sh file from SGI
Date: Fri, 4 May 2018 23:12:32 +0800	[thread overview]
Message-ID: <20180504151232.GD8373@desktop> (raw)
In-Reply-To: <20180503050728.25779-1-tytso@mit.edu>

On Thu, May 03, 2018 at 01:07:28AM -0400, Theodore Ts'o wrote:
> The install-sh file is much more efficient than the libtool version
> (50% faster wall clock time; much more than that when running in a
> qemu emulation build environment).  There doesn't seem to be any real
> need for the libtool version, so bring back the original install-sh
> script.
> 
> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
> ---
> 
> A very large amount of time when running "make install" in a build
> chroot using qemu emulation, such as constructed by running "sudo
> setup-buildchroot --arch-armhf" using the script found here[1] is in
> running the install-sh provided by libtool, which is amazing bloated
> and forks a crazy number of processes to do something very simple.
> 
> As near as I can tell there is zero benefit in using the install-sh
> provided by libtool, so restore the version that SGI originally used.

This saves me 8s on 'make install' (23s -> 15s).

But one problem with this is that after every 'make', install-sh is
overwritten & modified by 'libtoolize -cfi', and git diff complains
about the change.

I think we could follow what xfsprogs does on this, that puts install-sh
in include dir and copy it from there after it's overwritten by
libtoolize.

> 
> [1] https://github.com/tytso/xfstests-bld/blob/master/setup-buildchroot
> 
> 
>  .gitignore |   1 -
>  install-sh | 351 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  2 files changed, 351 insertions(+), 1 deletion(-)
>  create mode 100755 install-sh
> 
> diff --git a/.gitignore b/.gitignore
> index 192ca35e..dfd3da7d 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -24,7 +24,6 @@
>  
>  # libtool
>  /libtool
> -/install-sh

Then we don't need this change.

So the patch would be like:

diff --git a/Makefile b/Makefile
index d97385f90142..1064984573be 100644
--- a/Makefile
+++ b/Makefile
@@ -80,6 +80,7 @@ endif
 
 configure: configure.ac
        libtoolize -cfi
+       cp include/install-sh .
        aclocal -I m4
        autoheader
        autoconf
diff --git a/include/install-sh b/include/install-sh
new file mode 100755
index 000000000000..06d8aa9b6b9c
--- /dev/null
+++ b/include/install-sh
<new file content here>

This looks like a straightforward change, I can fix it on commit if the
change looks sane to you.

Thanks,
Eryu

  reply	other threads:[~2018-05-04 15:12 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-03  5:07 [PATCH] Use the original install-sh file from SGI Theodore Ts'o
2018-05-04 15:12 ` Eryu Guan [this message]
2018-05-04 21:15   ` Theodore Y. Ts'o
2018-05-05  1:36 ` Dave Chinner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180504151232.GD8373@desktop \
    --to=guaneryu@gmail.com \
    --cc=fstests@vger.kernel.org \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.