summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2009-04-02 16:44:44 +0200
committerJim Meyering <meyering@redhat.com>2009-04-04 10:49:36 +0200
commit100d4983e77dc0c6b8efb588677ca6c9081d6e03 (patch)
tree9c083f86fa69f5ec7e6a1aac3ad75f361035b068
parentd75bcea4cfc7927535d19d34d8d103621b4a0d6d (diff)
downloadcoreutils-100d4983e77dc0c6b8efb588677ca6c9081d6e03.tar.xz
tests: improve ChangeLog syntax check
* maint.mk (sc_changelog): Use $(VC_LIST_EXCEPT), not find. Don't hang when there are no ChangeLog files. (sc_require_config_h): For the file-name-filter, use grep -l to be slightly more efficient. (sc_require_config_h_first, _header_without_use, sc_program_name): Likewise.
-rw-r--r--maint.mk17
1 files changed, 10 insertions, 7 deletions
diff --git a/maint.mk b/maint.mk
index dd780adb0..ac6a2bc06 100644
--- a/maint.mk
+++ b/maint.mk
@@ -193,7 +193,7 @@ sc_prohibit_have_config_h:
# Nearly all .c files must include <config.h>.
sc_require_config_h:
- @if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then \
+ @if $(VC_LIST_EXCEPT) | grep -l '\.c$$' > /dev/null; then \
grep -L '^# *include <config\.h>' \
$$($(VC_LIST_EXCEPT) | grep '\.c$$') \
| grep . && \
@@ -204,7 +204,7 @@ sc_require_config_h:
# You must include <config.h> before including any other header file.
sc_require_config_h_first:
- @if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then \
+ @if $(VC_LIST_EXCEPT) | grep -l '\.c$$' > /dev/null; then \
fail=0; \
for i in $$($(VC_LIST_EXCEPT) | grep '\.c$$'); do \
grep '^# *include\>' $$i | sed 1q \
@@ -226,7 +226,7 @@ sc_prohibit_HAVE_MBRTOWC:
# re: a regular expression that matches IFF something provided by $h is used.
define _header_without_use
h_esc=`echo "$$h"|sed 's/\./\\./g'`; \
- if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then \
+ if $(VC_LIST_EXCEPT) | grep -l '\.c$$' > /dev/null; then \
files=$$(grep -l '^# *include '"$$h_esc" \
$$($(VC_LIST_EXCEPT) | grep '\.c$$')) && \
grep -LE "$$re" $$files | grep . && \
@@ -332,16 +332,19 @@ sc_obsolete_symbols:
# FIXME: warn about definitions of EXIT_FAILURE, EXIT_SUCCESS, STREQ
-# Each nonempty line must start with a year number, or a TAB.
+# Each nonempty ChangeLog line must start with a year number, or a TAB.
sc_changelog:
- @grep -n '^[^12 ]' $$(find . -maxdepth 2 -name ChangeLog) && \
+ @if $(VC_LIST_EXCEPT) | grep -l '^ChangeLog$$' >/dev/null; then \
+ grep -n '^[^12 ]' \
+ $$($(VC_LIST_EXCEPT) | grep '^ChangeLog$$') && \
{ echo '$(ME): found unexpected prefix in a ChangeLog' 1>&2; \
- exit 1; } || :
+ exit 1; } || :; \
+ fi
# Ensure that each .c file containing a "main" function also
# calls set_program_name.
sc_program_name:
- @if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then \
+ @if $(VC_LIST_EXCEPT) | grep -l '\.c$$' > /dev/null; then \
files=$$(grep -l '^main *(' $$($(VC_LIST_EXCEPT) | grep '\.c$$')); \
grep -LE 'set_program_name *\(m?argv\[0\]\);' $$files \
| grep . && \