]> ruderich.org/simon Gitweb - blhc/blhc.git/log
blhc/blhc.git
12 years agoStore exit codes in %exit_code.
Simon Ruderich [Sat, 31 Mar 2012 13:00:34 +0000 (15:00 +0200)]
Store exit codes in %exit_code.

12 years agoDetect more C++ non-verbose builds.
Simon Ruderich [Thu, 29 Mar 2012 15:42:15 +0000 (17:42 +0200)]
Detect more C++ non-verbose builds.

12 years agoWhitespace only change.
Simon Ruderich [Thu, 29 Mar 2012 15:11:30 +0000 (17:11 +0200)]
Whitespace only change.

12 years agoIgnore compiler lines with no files with extensions.
Simon Ruderich [Thu, 29 Mar 2012 15:06:20 +0000 (17:06 +0200)]
Ignore compiler lines with no files with extensions.

This prevents many false positives and shouldn't cause any false
negatives.

Also update $file_extension_regex to exclude ',', ';' and ':' from the
file extension which prevents additional false positives.

12 years agoAlso ignore PIE flags when -shared is used.
Simon Ruderich [Thu, 29 Mar 2012 14:00:43 +0000 (16:00 +0200)]
Also ignore PIE flags when -shared is used.

12 years agoUse tag W-no-compiler-commands in buildd mode.
Simon Ruderich [Tue, 27 Mar 2012 17:08:48 +0000 (19:08 +0200)]
Use tag W-no-compiler-commands in buildd mode.

12 years agoUse I<> for arguments in POD.
Simon Ruderich [Mon, 26 Mar 2012 19:51:30 +0000 (21:51 +0200)]
Use I<> for arguments in POD.

12 years agoList argument for --arch in POD.
Simon Ruderich [Mon, 26 Mar 2012 19:49:40 +0000 (21:49 +0200)]
List argument for --arch in POD.

12 years agoDon't list available options in SYNOPSIS.
Jari Aalto [Mon, 26 Mar 2012 19:47:42 +0000 (21:47 +0200)]
Don't list available options in SYNOPSIS.

12 years agoPrint tag messages including statistics in buildd mode.
Simon Ruderich [Mon, 26 Mar 2012 03:21:33 +0000 (05:21 +0200)]
Print tag messages including statistics in buildd mode.

12 years agoIgnore ', " and ) at the end of the line.
Simon Ruderich [Mon, 26 Mar 2012 02:17:39 +0000 (04:17 +0200)]
Ignore ', " and ) at the end of the line.

Necessary to detect cases like "(gcc test.c)".

12 years agoBe more liberal in non-verbose file name checks.
Simon Ruderich [Mon, 26 Mar 2012 02:11:58 +0000 (04:11 +0200)]
Be more liberal in non-verbose file name checks.

12 years agoUse default CFLAGS for CXXFLAGS too.
Simon Ruderich [Mon, 26 Mar 2012 02:06:13 +0000 (04:06 +0200)]
Use default CFLAGS for CXXFLAGS too.

12 years agoPrecompile flag regexps.
Simon Ruderich [Mon, 26 Mar 2012 02:05:07 +0000 (04:05 +0200)]
Precompile flag regexps.

Speeds up any_flags_used() and all_flags_used().

12 years agoUse simpler regex to catch compiler commands.
Simon Ruderich [Mon, 26 Mar 2012 01:37:38 +0000 (03:37 +0200)]
Use simpler regex to catch compiler commands.

12 years agoUse dedicated loop to ignore beginning of the log file.
Simon Ruderich [Mon, 26 Mar 2012 01:23:47 +0000 (03:23 +0200)]
Use dedicated loop to ignore beginning of the log file.

Prevents a few unnecessary checks for each line.

12 years agoRewrap comments.
Simon Ruderich [Mon, 26 Mar 2012 01:20:27 +0000 (03:20 +0200)]
Rewrap comments.

12 years agoFix indentation.
Simon Ruderich [Mon, 26 Mar 2012 01:18:03 +0000 (03:18 +0200)]
Fix indentation.

Whitespace only change.

12 years agoSupport multiple log files as arguments.
Simon Ruderich [Mon, 26 Mar 2012 01:15:10 +0000 (03:15 +0200)]
Support multiple log files as arguments.

Not really useful at the momemnt because the parser output is not
separated between the files.

12 years agot/tests.t: Remove duplication.
Simon Ruderich [Mon, 26 Mar 2012 01:05:31 +0000 (03:05 +0200)]
t/tests.t: Remove duplication.

'--pie --bindnow' has the same effect as '--all'.

12 years agoWhitespace only change.
Simon Ruderich [Mon, 26 Mar 2012 00:50:57 +0000 (02:50 +0200)]
Whitespace only change.

12 years agoStrip trailing whitspace only when necessary.
Simon Ruderich [Mon, 26 Mar 2012 00:46:31 +0000 (02:46 +0200)]
Strip trailing whitspace only when necessary.

If we don't split a line we don't have to touch it.

12 years agoCall Term::ANSIColor::colorstrip() only when necessary.
Simon Ruderich [Mon, 26 Mar 2012 00:34:47 +0000 (02:34 +0200)]
Call Term::ANSIColor::colorstrip() only when necessary.

Most build logs contain no colors at all and colorstrip() is quite slow.

12 years agoUse /o in regexps where possible.
Simon Ruderich [Mon, 26 Mar 2012 00:34:12 +0000 (02:34 +0200)]
Use /o in regexps where possible.

/o is a bit faster and works fine as our parsing regexps never change.

12 years agoUse hashes instead of regexps to check file extensions.
Simon Ruderich [Mon, 26 Mar 2012 00:19:34 +0000 (02:19 +0200)]
Use hashes instead of regexps to check file extensions.

Hashes are much faster. Additionally this fixes detecting ".c++" files
and false positives caused by files with double extensions (e.g.
".cpp.o") which were not correctly ignored.

12 years agoDifferentiate between CFLAGS and CPPFLAGS.
Simon Ruderich [Sun, 25 Mar 2012 15:41:50 +0000 (17:41 +0200)]
Differentiate between CFLAGS and CPPFLAGS.

12 years agoFix --arch, missing '=s' in GetOptions().
Simon Ruderich [Sat, 24 Mar 2012 17:04:52 +0000 (18:04 +0100)]
Fix --arch, missing '=s' in GetOptions().

Thanks to Bernhard R. Link for spotting this.

12 years agoHandle false positive from make.
Simon Ruderich [Sat, 24 Mar 2012 14:19:22 +0000 (15:19 +0100)]
Handle false positive from make.

12 years agoSort options in POD.
Simon Ruderich [Sat, 24 Mar 2012 00:45:00 +0000 (01:45 +0100)]
Sort options in POD.

Thanks to Jari Aalto for the suggestion.

12 years agoIndent exit codes in the POD with only 4 spaces.
Jari Aalto [Sat, 24 Mar 2012 00:36:25 +0000 (01:36 +0100)]
Indent exit codes in the POD with only 4 spaces.

12 years agoMention log file in synopsis. Use "[options]" for possible options.
Jari Aalto [Sat, 24 Mar 2012 00:33:01 +0000 (01:33 +0100)]
Mention log file in synopsis. Use "[options]" for possible options.

12 years agoDon't color output by default, add --color option.
Simon Ruderich [Sat, 24 Mar 2012 00:23:58 +0000 (01:23 +0100)]
Don't color output by default, add --color option.

Thanks to Jari Aalto for the suggestion.

12 years agoHandle "configure:"/"Configure:" false positives.
Simon Ruderich [Thu, 22 Mar 2012 14:18:33 +0000 (15:18 +0100)]
Handle "configure:"/"Configure:" false positives.

12 years agoRemove unnecessary check for "Depends:".
Simon Ruderich [Thu, 22 Mar 2012 14:02:47 +0000 (15:02 +0100)]
Remove unnecessary check for "Depends:".

The end of the build log is now respected, "Depends:" comes after that.

12 years agoIgnore compiler when used as file suffixes.
Simon Ruderich [Thu, 22 Mar 2012 13:44:12 +0000 (14:44 +0100)]
Ignore compiler when used as file suffixes.

For example "rm test.gcc" isn't a compiler line.

12 years agoDetect i486-gnu-gcc as compiler.
Simon Ruderich [Thu, 22 Mar 2012 13:35:49 +0000 (14:35 +0100)]
Detect i486-gnu-gcc as compiler.

12 years agoDon't perform any tests if hardening-wrapper is used.
Simon Ruderich [Thu, 22 Mar 2012 01:05:50 +0000 (02:05 +0100)]
Don't perform any tests if hardening-wrapper is used.

12 years agoRemove unnecessary loop.
Simon Ruderich [Thu, 22 Mar 2012 00:21:06 +0000 (01:21 +0100)]
Remove unnecessary loop.

12 years agoIgnore unimportant lines at the end of the buildd log.
Simon Ruderich [Thu, 22 Mar 2012 00:08:13 +0000 (01:08 +0100)]
Ignore unimportant lines at the end of the buildd log.

12 years agoAccept `dpkg-buildflags --get *FLAGS` as valid hardening flags.
Simon Ruderich [Wed, 21 Mar 2012 23:49:20 +0000 (00:49 +0100)]
Accept `dpkg-buildflags --get *FLAGS` as valid hardening flags.

`...` isn't expanded by make. Assume dpkg-buildflags returns the correct
flags.

12 years agoDon't split on ; in quotes.
Simon Ruderich [Wed, 21 Mar 2012 23:20:08 +0000 (00:20 +0100)]
Don't split on ; in quotes.

12 years agoDetect compile type (preprocess, compile, link) correctly.
Simon Ruderich [Wed, 21 Mar 2012 19:43:06 +0000 (20:43 +0100)]
Detect compile type (preprocess, compile, link) correctly.

The arguments to gcc (-E, -S, -c) and the file extension are used to
detect the correct type.

This fixes many false positives and a few false negatives.

Thanks to Bernhard R. Link for the idea.

12 years agoHandle more configure false positives.
Simon Ruderich [Tue, 20 Mar 2012 19:45:11 +0000 (20:45 +0100)]
Handle more configure false positives.

12 years agoDetect LINK non-verbose builds.
Simon Ruderich [Tue, 20 Mar 2012 19:32:16 +0000 (20:32 +0100)]
Detect LINK non-verbose builds.

12 years agoMinor cleanup.
Simon Ruderich [Tue, 20 Mar 2012 19:28:29 +0000 (20:28 +0100)]
Minor cleanup.

12 years agoSome source comment fixes.
Simon Ruderich [Tue, 20 Mar 2012 19:27:52 +0000 (20:27 +0100)]
Some source comment fixes.

12 years ago\s includes \n, no need for $ in a few regexps.
Simon Ruderich [Tue, 20 Mar 2012 19:26:06 +0000 (20:26 +0100)]
\s includes \n, no need for $ in a few regexps.

12 years agoFirst work on --buildd.
Simon Ruderich [Mon, 19 Mar 2012 15:03:17 +0000 (16:03 +0100)]
First work on --buildd.

At the moment only missing hardening flags for old builds (old dpkg-dev)
are ignored.

12 years agoImprove documentation about --pie/--bindnow autodetection.
Simon Ruderich [Mon, 19 Mar 2012 13:48:29 +0000 (14:48 +0100)]
Improve documentation about --pie/--bindnow autodetection.

12 years agoDetect more CXX non-verbose builds.
Simon Ruderich [Mon, 19 Mar 2012 04:06:25 +0000 (05:06 +0100)]
Detect more CXX non-verbose builds.

12 years agoIgnore buildd's Depends: output.
Simon Ruderich [Sun, 18 Mar 2012 15:07:00 +0000 (16:07 +0100)]
Ignore buildd's Depends: output.

12 years agoImprove compiler regex to be more compatible.
Simon Ruderich [Sun, 18 Mar 2012 00:33:21 +0000 (01:33 +0100)]
Improve compiler regex to be more compatible.

12 years agoUse /x to make regex more readable.
Simon Ruderich [Sun, 18 Mar 2012 00:23:18 +0000 (01:23 +0100)]
Use /x to make regex more readable.

12 years agoHandle another configure false positive.
Simon Ruderich [Sun, 18 Mar 2012 00:22:18 +0000 (01:22 +0100)]
Handle another configure false positive.

12 years agoAlso support colored non-verbose builds on armhf and hurd.
Simon Ruderich [Sat, 17 Mar 2012 23:38:08 +0000 (00:38 +0100)]
Also support colored non-verbose builds on armhf and hurd.

12 years agoSupport colored non-verbose build systems.
Simon Ruderich [Sat, 17 Mar 2012 23:25:36 +0000 (00:25 +0100)]
Support colored non-verbose build systems.

12 years agoHandle another configure false positive.
Simon Ruderich [Sat, 17 Mar 2012 22:11:12 +0000 (23:11 +0100)]
Handle another configure false positive.

12 years agoCorrectly detect linking for CGI binaries (e.g. test.cgi).
Simon Ruderich [Sat, 17 Mar 2012 21:25:41 +0000 (22:25 +0100)]
Correctly detect linking for CGI binaries (e.g. test.cgi).

12 years agoHandle another configure false positive.
Simon Ruderich [Sat, 17 Mar 2012 21:21:04 +0000 (22:21 +0100)]
Handle another configure false positive.

12 years agoImprove line continuation to handle ignored lines correctly.
Simon Ruderich [Sat, 17 Mar 2012 20:16:03 +0000 (21:16 +0100)]
Improve line continuation to handle ignored lines correctly.

12 years agoAlso accept -O3, not only -O2.
Simon Ruderich [Sat, 17 Mar 2012 16:43:48 +0000 (17:43 +0100)]
Also accept -O3, not only -O2.

12 years agoSupport architectures which can't use all hardening flags.
Simon Ruderich [Sat, 17 Mar 2012 16:39:17 +0000 (17:39 +0100)]
Support architectures which can't use all hardening flags.

Detect architecture automatically if dpkg-buildpackage is used. It can
also be set with the --arch option.

12 years agoRemove argument $cc_regex of is_non_verbose_build().
Simon Ruderich [Sat, 17 Mar 2012 15:10:42 +0000 (16:10 +0100)]
Remove argument $cc_regex of is_non_verbose_build().

The global definition is now used.

12 years agoMove constants/variables before functions.
Simon Ruderich [Sat, 17 Mar 2012 15:09:58 +0000 (16:09 +0100)]
Move constants/variables before functions.

No other code changes.

12 years agot/logs/configure: Add another configure output.
Simon Ruderich [Sat, 17 Mar 2012 15:08:53 +0000 (16:08 +0100)]
t/logs/configure: Add another configure output.

12 years agoIgnore unimportant lines at the beginning of the log.
Simon Ruderich [Sat, 17 Mar 2012 14:59:08 +0000 (15:59 +0100)]
Ignore unimportant lines at the beginning of the log.

12 years agoSupport verbose builds which use "Compiling filename...".
Simon Ruderich [Fri, 16 Mar 2012 17:18:07 +0000 (18:18 +0100)]
Support verbose builds which use "Compiling filename...".

12 years agoSupport non-verbose messages in verbose build for other build systems.
Simon Ruderich [Fri, 16 Mar 2012 17:07:19 +0000 (18:07 +0100)]
Support non-verbose messages in verbose build for other build systems.

CMake isn't the only one doing that.

12 years agoFix typo in linker command regex.
Simon Ruderich [Fri, 16 Mar 2012 16:44:08 +0000 (17:44 +0100)]
Fix typo in linker command regex.

12 years agot: Add linker test with -o at the end of the line.
Simon Ruderich [Fri, 16 Mar 2012 16:43:32 +0000 (17:43 +0100)]
t: Add linker test with -o at the end of the line.

12 years agot: Add tests for x86_64-linux-gnu-g++.
Simon Ruderich [Fri, 16 Mar 2012 16:31:59 +0000 (17:31 +0100)]
t: Add tests for x86_64-linux-gnu-g++.

12 years agoSupport filenames which contain "~".
Simon Ruderich [Fri, 16 Mar 2012 04:50:09 +0000 (05:50 +0100)]
Support filenames which contain "~".

12 years agoAdd support for versioned gcc version (e.g. gcc-4.6).
Simon Ruderich [Fri, 16 Mar 2012 04:07:21 +0000 (05:07 +0100)]
Add support for versioned gcc version (e.g. gcc-4.6).

12 years agot/logs/verbose-build: Add possible false positive.
Simon Ruderich [Fri, 16 Mar 2012 00:07:30 +0000 (01:07 +0100)]
t/logs/verbose-build: Add possible false positive.

12 years agot/tests.t: Consistently use '..' instead of "..".
Simon Ruderich [Thu, 15 Mar 2012 23:54:13 +0000 (00:54 +0100)]
t/tests.t: Consistently use '..' instead of "..".

This makes pasting tests simpler because \ doesn't has to be escaped
inside '..'.

12 years agoFix indentation, whitespace only change.
Simon Ruderich [Thu, 15 Mar 2012 23:52:27 +0000 (00:52 +0100)]
Fix indentation, whitespace only change.

12 years agoUse non-capturing groups where possible.
Simon Ruderich [Thu, 15 Mar 2012 23:51:58 +0000 (00:51 +0100)]
Use non-capturing groups where possible.

12 years agoCorrectly detect verbose CMake builds.
Simon Ruderich [Thu, 15 Mar 2012 23:48:22 +0000 (00:48 +0100)]
Correctly detect verbose CMake builds.

12 years agoStore regex for compiler commands in a global variable.
Simon Ruderich [Thu, 15 Mar 2012 22:54:41 +0000 (23:54 +0100)]
Store regex for compiler commands in a global variable.

12 years agoFix false positive with file names containg "cc".
Simon Ruderich [Thu, 15 Mar 2012 21:39:57 +0000 (22:39 +0100)]
Fix false positive with file names containg "cc".

For example "test.cc". Also add another non-verbose test.

12 years agoDetect non-verbose build logs.
Simon Ruderich [Thu, 15 Mar 2012 21:37:30 +0000 (22:37 +0100)]
Detect non-verbose build logs.

Also update exit code for "Missing hardening flags".

12 years agoIgnore more "./configure" false positives.
Simon Ruderich [Thu, 15 Mar 2012 21:27:13 +0000 (22:27 +0100)]
Ignore more "./configure" false positives.

12 years agoAlso support -fpic in -fPIE/-fPIC conflict detection.
Simon Ruderich [Thu, 15 Mar 2012 19:59:30 +0000 (20:59 +0100)]
Also support -fpic in -fPIE/-fPIC conflict detection.

12 years agoAccept libraries with version numbers before ".so".
Simon Ruderich [Thu, 15 Mar 2012 19:57:30 +0000 (20:57 +0100)]
Accept libraries with version numbers before ".so".

12 years agoFix indentation.
Simon Ruderich [Thu, 15 Mar 2012 17:11:42 +0000 (18:11 +0100)]
Fix indentation.

12 years agoAccept libraries which end with a character (e.g. .so.0d).
Simon Ruderich [Thu, 15 Mar 2012 17:10:40 +0000 (18:10 +0100)]
Accept libraries which end with a character (e.g. .so.0d).

12 years agot: Add another linker test.
Simon Ruderich [Thu, 15 Mar 2012 15:31:38 +0000 (16:31 +0100)]
t: Add another linker test.

12 years agoImprove linker command detection to handle line breaks correctly.
Simon Ruderich [Wed, 14 Mar 2012 01:25:11 +0000 (02:25 +0100)]
Improve linker command detection to handle line breaks correctly.

12 years agoDocument linker command detection regex.
Simon Ruderich [Wed, 14 Mar 2012 01:06:16 +0000 (02:06 +0100)]
Document linker command detection regex.

12 years agoImprove linker command detection.
Simon Ruderich [Wed, 14 Mar 2012 01:03:12 +0000 (02:03 +0100)]
Improve linker command detection.

-llib can be used in non linker commands as well.

12 years agoIgnore false positive in ./configure summary.
Simon Ruderich [Tue, 13 Mar 2012 23:02:48 +0000 (00:02 +0100)]
Ignore false positive in ./configure summary.

12 years agoCorrectly handle files with "c++" in their name.
Simon Ruderich [Tue, 13 Mar 2012 22:43:48 +0000 (23:43 +0100)]
Correctly handle files with "c++" in their name.

Names like "c++defs.h-t" and "c++defs.h" are used by some build scripts.

12 years agoSupport versioned libraries (e.g. test.so.1.0.0).
Simon Ruderich [Tue, 13 Mar 2012 21:10:13 +0000 (22:10 +0100)]
Support versioned libraries (e.g. test.so.1.0.0).

12 years agot/tests.t,t/logs/cc: Add test for .cc files.
Simon Ruderich [Tue, 13 Mar 2012 20:46:59 +0000 (21:46 +0100)]
t/tests.t,t/logs/cc: Add test for .cc files.

12 years agoImprove detection of linker commands.
Simon Ruderich [Tue, 13 Mar 2012 20:44:33 +0000 (21:44 +0100)]
Improve detection of linker commands.

Now -o is checked if it links to a binary (no extension) or a library
(.so or .la).

Also add tests.

12 years agobin/blhc: Another fix for libtool --mode=link.
Simon Ruderich [Mon, 12 Mar 2012 16:32:47 +0000 (17:32 +0100)]
bin/blhc: Another fix for libtool --mode=link.

12 years agobin/blhc: Improve regex for libtool --mode=link (and relink).
Simon Ruderich [Sun, 11 Mar 2012 17:39:09 +0000 (18:39 +0100)]
bin/blhc: Improve regex for libtool --mode=link (and relink).

Also add tests.

12 years agot: Add tests for "libtool --mode=compile".
Simon Ruderich [Sat, 10 Mar 2012 21:39:59 +0000 (22:39 +0100)]
t: Add tests for "libtool --mode=compile".

12 years ago.gitignore: Ignore META.json and META.yml.
Simon Ruderich [Sat, 10 Mar 2012 21:36:59 +0000 (22:36 +0100)]
.gitignore: Ignore META.json and META.yml.

12 years agot: Add tests for compiler "x86_64-linux-gnu-gcc".
Simon Ruderich [Sat, 10 Mar 2012 21:33:49 +0000 (22:33 +0100)]
t: Add tests for compiler "x86_64-linux-gnu-gcc".