automake-commit
[Top][All Lists]
Advanced

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

[Automake-commit] [SCM] GNU Automake branch, experimental/ng/distdir-ref


From: Stefano Lattarini
Subject: [Automake-commit] [SCM] GNU Automake branch, experimental/ng/distdir-refactor, created. v1.12-196-gcb5e1b1
Date: Sun, 06 May 2012 17:00:37 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Automake".

http://git.sv.gnu.org/gitweb/?p=automake.git;a=commitdiff;h=cb5e1b1efe3010a795cb0c45e56080316c93a4da

The branch, experimental/ng/distdir-refactor has been created
        at  cb5e1b1efe3010a795cb0c45e56080316c93a4da (commit)

- Log -----------------------------------------------------------------
commit cb5e1b1efe3010a795cb0c45e56080316c93a4da
Author: Stefano Lattarini <address@hidden>
Date:   Fri May 4 02:26:30 2012 +0200

    [ng] dist: optimize calculation of list of distributed file
    
    Our implementation of the $(am__uniq) make function is slow as
    hell when applied to big lists.  Since that function is used to
    (re)calculate the list of distributed files, its inefficiency
    reflects on *every* run of a Makefile generated by Automake which
    distributes a lot of file.  For example, a null build of the
    Automake tree now takes 20 seconds (!) on my Debian system, while
    earlier it was practically instantaneous (less than half a second).
    
    Luckily, the GNU make manual documents that the $(sort) built-in
    also strip duplicates from the sorted list.  Since we don't care
    about the order of the distributed files (or directories thereof),
    we can use $(sort ...) instead of $(call am__uniq, ...), and live
    happily.
    
    * lib/am/distdir.am (am__dist_files)_: Uniqify content using
    '$(sort)', not '$(am__uniq)'.
    (am__dist_parent_dirs): Likewise.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit c62b42b64c588c98d9b1f370d208056e82b39d8b
Author: Stefano Lattarini <address@hidden>
Date:   Thu May 3 18:56:57 2012 +0200

    [ng] dist: rename some non-public vars to make clear they are internal
    
    The variable $(DISTFILES), $(DIST_COMMON) and $(DIST_SOURCES) have never
    been documented, and they were always intended to be internal variables.
    This is absolutely not evident from their names, though.  So rename them
    like this:
    
        DISTFILES     =>  am__dist_files
        DIST_COMMON   =>  am__dist_common
        DIST_SOURCES  =>  am__dist_sources
    
    * NG-NEWS: Update.
    * automake.in: Adjust code and comments.
    * lib/am/configure.am, lib/am/data.am, lib/am/java.am, lib/am/lisp.am,
    lib/am/python.am, lib/am/scripts.am, lib/am/texi-vers.am: Likewise.
    * lib/am/distdir.am: Likewise, and related variable renamings.
    And throw in a few improvements to comments since we are at it.
    * Several tests: Adjust.
    * syntax-checks.mk: Add rules (and supporting variables) verifying
    that the obsolete 'DIST*' variables are actually not used anymore.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit 42b0536dcc6327b3f09f711671847ac7db879d8c
Author: Stefano Lattarini <address@hidden>
Date:   Thu May 3 18:56:57 2012 +0200

    [ng] dist: strip duplicates from dist files at make (not automake) runtime
    
    We can do this thanks to the new make macros '$(am__uniq)' introduced in
    the recent commit 'v1.12-145-g112d08a'.
    
    * automake.in (handle_dist): Don't "uniq"ify the contents of DIST_COMMON
    here, but instead ...
    * lib/am/distdir.am: ... "uniq"ify the contents of DISTFILES here.
    * t/dist-repeated.sh: Remove sanity check checking for a once expected
    invariant that is not there anymore now.
    * t/distcom4.sh, t/distcom5.sh: Adjust.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

commit d5514ad9e26788c55d802487272a24d5ef7d6776
Author: Stefano Lattarini <address@hidden>
Date:   Tue Apr 24 19:50:00 2012 +0200

    [ng] dist: simplify VPATH handling
    
    Now that we don't need to cater to Sun and Tru64 make, we can simplify
    and rationalize our VPATH support in the creation of the distribution
    directory.  Since we are at it, we clarify some existing comments, add
    some new ones, and remove the obsolete ones.
    
    This change has a little collateral effect in that after it the use of
    "bare" wildcards in EXTRA_DIST does not work as intended anymore:
    
        # Won't distribute all test files in the builddir anymore.
        EXTRA_DIST = *.test
    
    One will have to use the $(wildcard) GNU make builtin instead, as in:
    
        EXTRA_DIST = $(wildcard *.test)
    
    This new limitation is deemed acceptable, especially because "bare"
    wildcards suffer of a number of issues and inconsistencies, and their
    use is mostly deprecated in favor of the $(wildcard) builtin (refer
    to the GNU make manual for more details).
    
    * lib/am/distdir.am (distdir): Extend the comments explaining why, while
    filling up the dist directory, we need to check whether any distributed
    file already exists in there; in particular, refer to some relevant bug
    numbers and past commit IDs.  Remove workarounds and hack required to
    support automatic VPATH rewrites with Sun and Tru64 make.  Refactor the
    recipe using ...
    (am__dist_files_1, am__dist_files_2, am__dist_files,
    am__dist_parent_dirs): This new internal custom GNU make macros.
    * NG-NEWS: Document that "bare" wildcards are not supported anymore
    in EXTRA_DIST definition.
    * t/extra12.sh: Adjust accordingly.
    * t/nodep.sh: Remove, it's giving too much false positives to be
    usable.
    * t/dist-srcdir.sh: New test.
    * t/dist-srcdir2.sh: New test, xfailing.
    
    Signed-off-by: Stefano Lattarini <address@hidden>

-----------------------------------------------------------------------


hooks/post-receive
-- 
GNU Automake



reply via email to

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