summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJim Meyering <meyering@redhat.com>2009-04-23 08:21:38 +0200
committerJim Meyering <meyering@redhat.com>2009-04-23 21:01:52 +0200
commitcbc4d9bd1366b0ed277b5dfe2585d22d4070e969 (patch)
treee902717af626d80fd0998be336394a250e926d47 /src
parentc74fbaefebe91ca60e3a8582613a3714c740df65 (diff)
downloadcoreutils-cbc4d9bd1366b0ed277b5dfe2585d22d4070e969.tar.xz
avoid parallel "make distcheck" failure due to two run-in-src/ rules
Move the check-AUTHORS rule from "syntax-check" to "check". * maint.mk (local-checks-available): Remove check-AUTHORS. (check-AUTHORS): Remove rule. * src/Makefile.am (CLEANFILES): Add $(no_install__progs), since they too are built sometimes. (check-AUTHORS): Split a longer-than-80 sed command. (../AUTHORS): Remove obsolete rule.
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am34
1 files changed, 7 insertions, 27 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 9aaf73979..be134be01 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -69,6 +69,10 @@ EXTRA_DIST = dcgen dircolors.hin tac-pipe.c \
BUILT_SOURCES =
CLEANFILES = $(SCRIPTS) su
+# Also remove these sometimes-built programs.
+# For example, even when excluded, they're built via check-AUTHORS.
+CLEANFILES += $(no_install__progs)
+
AM_CPPFLAGS = -I$(top_srcdir)/lib
noinst_LIBRARIES = libver.a
@@ -359,7 +363,7 @@ pm = progs-makefile
pr = progs-readme
# Ensure that the list of programs in README matches the list
# of programs we can build.
-check: check-README check-duplicate-no-install
+check: check-README check-duplicate-no-install check-AUTHORS
.PHONY: check-README
check-README:
rm -rf $(pr) $(pm)
@@ -394,36 +398,12 @@ check-AUTHORS: $(all_programs)
fi; \
LC_ALL=en_US.UTF-8 ./$$exe --version \
| perl -0 -pi -e 's/,\n/, /gm' \
- |sed -n '/Written by /{ s//'"$$i"': /; s/,* and /, /; s/\.$$//; p; }'; \
+ | sed -n -e '/Written by /{ s//'"$$i"': /;' \
+ -e 's/,* and /, /; s/\.$$//; p; }'; \
done > $(au_actual)
@sed -n '/^[^ ][^ ]*:/p' $(top_srcdir)/AUTHORS > $(au_dotdot)
@diff $(au_actual) $(au_dotdot) && rm -f $(au_actual) $(au_dotdot)
-# Extract the list of authors from each file.
-sed_filter = s/^ *//;s/N_ (//;s/^"//;s/")*$$//
-# Sometimes the string is on the same line as the #define...
-s1 = '/^\#define AUTHORS \([^\\]\)/{;s//\1/;$(sed_filter);p;q;}'
-# Sometimes the string is on the backslash-continued line after the #define.
-s2 = '/^\#define AUTHORS \\\\/{;n;$(sed_filter);p;q;}'
-../AUTHORS: $(SOURCES)
- rm -f $@-t
- ( \
- set -e; \
- echo "Here are the names of the programs in this package,"; \
- echo "each followed by the name(s) of its author(s)."; \
- echo; \
- for i in $(SOURCES); do \
- a=`sed -n $(s1) $$i`; \
- test "$$a" && : \
- || a=`sed -n $(s2) $$i`; \
- if test "$$a"; then \
- prog=`echo $$i|sed 's/\.c$$//'`; \
- echo "$$prog: $$a"; \
- fi; \
- done | $(ASSORT) -u ) > $@-t
- chmod a-w $@-t
- mv $@-t $@
-
# The following rule is not designed to be portable,
# and relies on tools that not everyone has.