automake-patches
[Top][All Lists]
Advanced

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

Re: fast make install


From: Ralf Wildenhues
Subject: Re: fast make install
Date: Sat, 8 Mar 2008 14:09:03 +0100
User-agent: Mutt/1.5.17+20080114 (2008-01-14)

* Ralf Wildenhues wrote on Thu, Jan 24, 2008 at 12:13:13AM CET:
> Here's the proposed patch (generated files not shown), still missing
> Autoconf version requirement.  It does the fast install for HEADERS,
> DATA, PYTHON, LIBRARIES, and TEXINFOS outputs.
> 
> Comments, reviews, etc., greatly appreciated.

The Autoconf version requirement has just been committed.  I have not
yet added fast install for any other file types; notrans_*MANS will be
simple once Peter's changes are in, but for all the rewriting types I
haven't yet found a way to do it that isn't very ugly and quite
involved.

Applied as shown in
<http://thread.gmane.org/gmane.comp.sysutils.automake.patches/2945/focus=3088>,
except that I edited the ChangeLog message a bit as below.

Cheers,
Ralf

2008-03-08  Ralf Wildenhues  <address@hidden>

        Use `install' with multiple files at once for some primaries.
        With nobase targets, at most 50 files are installed at once,
        to avoid quadratic string concatenation and line length limits.
        This isn't yet done with base targets.  One hope is that there,
        the typical file name length is lower.  If this turns out to be
        a problem, it should be revisited.

        * lib/am/inst-vars.am (am__nobase_list): New helper macro for
        installation of multiple nobase files at once: sorts and lists
        files keyed by their target directory.
        * lib/am/data.am (%DIR%%PRIMARY%_INSTALL): No need to set it to
        $(install_sh_DATA) any more, not even for nobase targets.
        (install-%DIR%%PRIMARY%): Split base and nobase cases.
        Rewrite to pass lists of files which all go in the same
        directory to `install'.  In the nobase case, make use of
        $(am__nobase_list) and $(MKDIR_P) each directory before
        populating it.  Take care of files in source and build trees,
        and avoid creating directories where no files are to be
        installed.
        * lib/am/libs.am (%DIR%LIBRARIES_INSTALL): Likewise.
        (install-%DIR%LIBRARIES): Likewise.
        * lib/am/python.am (%DIR%PYTHON_INSTALL): Likewise.
        (install-%DIR%PYTHON): Likewise.  Also take care to keep note of
        a list for byte compilation after installation.
        * lib/am/texinfos.am (install-dvi-am, install-html-am)
        (install-info-am, install-pdf-am, install-ps-am): Use file lists
        to install multiple files at once.
        * NEWS: Update.
        Suggested by Akim Demaille.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]