[LLVMdev] patch: purdy colours for makefiles

Dan Gohman gohman at apple.com
Sun Feb 21 10:15:54 PST 2010


Colors may be purdy, but those echo lines aren't really all that  
interesting.  They're a progress bar in a build system which doesn't  
otherwise do progress bars.  I'd prefer to save color for output which  
is more likely to warrant attention, such as compiler diagnostics.

Thanks,

Dan

On Feb 20, 2010, at 10:59 PM, Kona Blend <kona8lend at gmail.com> wrote:

> Here is a patch to add colour to build output (make) for LLVM sources.
> Feedback and ideas welcome.
>
> The patch replaces $(Echo) usage in some key rules in Makefile.rules
> with $(Banner) which invokes a new script utils/make-banner.sh which
> is capable of adding appropriate ANSI escape sequences.
>
> step1: apply patch
> step2: chmod 755 utils/make-banner.sh
> step3: export MAKE_BANNER_ANSI=1
>
> Next, you must have an xterm or an ANSI capable terminal advertising
> itself via $TERM and matching substring 'xterm'. Now simply set your  
> env
> and make:
>
>    export MAKE_BANNER_ANSI=1
>    make
>
> SOME EXAMPLES:
>    export MAKE_BANNER_ANSI=1
>    utils/make-banner.sh -help
>    utils/make-banner.sh Hello -bold world.
>    utils/make-banner.sh -prefix "llvm[99]:" -bold M4 processing -in  
> file.txt.m4 "->" -out file.txt
>
> PERFORMANCE CONSIDERATIONS
> - total lines of make output to build llvm+clang: 1330
> - sub-shell echo rate: ~1485 lines/second
> - sub-shell make-banner.sh rate: ~267 lines/second
>
> Build speed comparison. Host environment:
> - Mac OS X 10.6.2, gcc-4.2, 8 core host
> - build llvm + clang (debug)
> - llvm and clang trunk at 96719
> - timing command: time make -j8 (times shown are in seconds, USER  
> SYSTEM ELAPSED)
>
> BEFORE PATCH:
>> time make -j8
>    pass1. 1384.373u 226.969s 4:22.87 612.9%
>    pass2. 1385.766u 227.542s 4:18.40 624.3%
>    pass3. 1379.234u 224.674s 4:17.56 622.7%
>
> AFTER PATCH:
>> setenv MAKE_BANNER_ANSI=1
>> time make -j8
>    pass1. 1387.113u 228.287s 4:20.97 618.9%
>    pass2. 1389.143u 228.544s 4:20.58 620.7%
>    pass3. 1386.785u 228.141s 4:20.37 620.2%
>
> --kb
> <835091.txt>
>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev



More information about the llvm-dev mailing list