gen_build_files.sh: exclude hidden directories
authorPaulius Zaleckas <paulius.zaleckas@gmail.com>
Mon, 30 Jan 2012 01:34:56 +0000 (02:34 +0100)
committerDenys Vlasenko <vda.linux@googlemail.com>
Mon, 30 Jan 2012 01:34:56 +0000 (02:34 +0100)
I am using quilt to manage patches internally. Quilt creates dir .pc
and stores unmodified files there. Since I made change in one of
Config.src quilt made a copy in .pc/xxx.patch/xxx/Config.src. When
I run make it calls gen_build_files.sh and it generates
.pc/xxx.patch/xxx/Config.in. Now when I want to pop patch quilt
thinks I have made changes to original xxx/Config.in.

IMO the best solution is just to ignore hidden directories in
gen_build_files.sh. This also results in shorter build time in case
busybox is under git/svn versioning, since it avoids searching
many directories for Config.src.

Signed-off-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
scripts/gen_build_files.sh

index c42fe9f..0989b2f 100755 (executable)
@@ -52,14 +52,17 @@ sed -n 's@^//applet:@@p' "$srctree"/*/*.c "$srctree"/*/*/*.c \
 # We add line continuation backslash after each line,
 # and insert empty line before each line which doesn't start
 # with space or tab
-sed -n -e 's@^//usage:\([ \t].*\)$@\1 \\@p' -e 's@^//usage:\([^ \t].*\)$@\n\1 \\@p' "$srctree"/*/*.c "$srctree"/*/*/*.c \
+sed -n -e 's@^//usage:\([ \t].*\)$@\1 \\@p' -e 's@^//usage:\([^ \t].*\)$@\n\1 \\@p' \
+       "$srctree"/*/*.c "$srctree"/*/*/*.c \
 | generate \
        "$srctree/include/usage.src.h" \
        "include/usage.h" \
        "/* DO NOT EDIT. This file is generated from usage.src.h */"
 
 # (Re)generate */Kbuild and */Config.in
-{ cd -- "$srctree" && find . -type d; } | while read -r d; do
+# We skip .dotdirs - makes git/svn/etc users happier
+{ cd -- "$srctree" && find . -type d -not '(' -name '.?*' -prune ')'; } \
+| while read -r d; do
        d="${d#./}"
 
        src="$srctree/$d/Kbuild.src"