[FFmpeg-devel] [PATCH 4/4] tests: Add test for proper header guard

Timothy Gu timothygu99 at gmail.com
Fri Jan 29 03:33:56 CET 2016


---
 tests/fate/source-check.sh | 11 +++++++++++
 tests/ref/fate/source      | 12 ++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/tests/fate/source-check.sh b/tests/fate/source-check.sh
index fb7af98..5524236 100755
--- a/tests/fate/source-check.sh
+++ b/tests/fate/source-check.sh
@@ -16,5 +16,16 @@ git grep -L -E "This file is part of FFmpeg|This file is part of libswresample|"
 "This program is free software; you can redistribute it and/or modify|"\
 "This file is placed in the public domain" | grep -E '\.c$|\.h$|\.S$|\.asm$'
 
+echo Headers without standard inclusion guards:
+for f in `git ls-files | grep '\.h$'` ; do
+    macro="`echo $f | sed \
+        -e '/\/\|^ff/!{s/\(.*\)/ffmpeg\/\1/}' \
+        -e 's/^lib//' \
+        -e 's/[^A-Za-z0-9]\{1\,\}/_/g' \
+        -e 's/_\(a\|v\|av\)f_/_/' \
+    | tr '[:lower:]' '[:upper:]'`"
+
+    grep -L "^#define $macro$" $f
+done
 
 exit 0
diff --git a/tests/ref/fate/source b/tests/ref/fate/source
index 450e064..f6cacb6 100644
--- a/tests/ref/fate/source
+++ b/tests/ref/fate/source
@@ -17,3 +17,15 @@ libswresample/log2_tab.c
 libswscale/log2_tab.c
 tools/uncoded_frame.c
 tools/yuvcmp.c
+Headers without standard inclusion guards:
+cmdutils_common_opts.h
+compat/avisynth/avisynth_c.h
+compat/avisynth/avs/capi.h
+compat/avisynth/avs/config.h
+compat/avisynth/avs/types.h
+compat/avisynth/avxsynth_c.h
+compat/avisynth/windowsPorts/basicDataTypeConversions.h
+compat/avisynth/windowsPorts/windows2linux.h
+compat/float/float.h
+compat/float/limits.h
+libavutil/x86_cpu.h
-- 
1.9.1



More information about the ffmpeg-devel mailing list