From: Cole Robinson Date: Wed, 3 Apr 2019 21:45:02 +0000 (-0400) Subject: build-aux: header-ifdef: Handle #pragma once X-Git-Tag: v5.3.0-rc1~235 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ac41ffb8fa1235c226377397842c6c240a677d87;p=thirdparty%2Flibvirt.git build-aux: header-ifdef: Handle #pragma once If we see it, skip all remaining header guard checks Acked-by: Eric Blake Signed-off-by: Cole Robinson --- diff --git a/build-aux/header-ifdef.pl b/build-aux/header-ifdef.pl index 297696eb70..401f25fb81 100644 --- a/build-aux/header-ifdef.pl +++ b/build-aux/header-ifdef.pl @@ -32,6 +32,7 @@ my $STATE_GUARD_START = 6; my $STATE_GUARD_DEFINE = 7; my $STATE_GUARD_END = 8; my $STATE_EOF = 9; +my $STATE_PRAGMA = 10; my $file = " "; my $ret = 0; @@ -132,6 +133,8 @@ while (<>) { } elsif ($state == $STATE_GUARD_START) { if (/^$/) { &mistake("$file: too many blank lines after copyright header"); + } elsif(/#pragma once/) { + $state = $STATE_PRAGMA; } elsif (/#ifndef $ifdef$/) { $state = $STATE_GUARD_DEFINE; } else { @@ -147,6 +150,8 @@ while (<>) { if (m,#endif /\* $ifdef \*/$,) { $state = $STATE_EOF; } + } elsif ($state == $STATE_PRAGMA) { + next; } elsif ($state == $STATE_EOF) { die "$file: unexpected content after '#endif /* $ifdef */'"; } else {