On 07/03/17 15:33, Bernhard Voelker wrote: > I see that src/tr is built _after_ 'make check' in the single-binary > variant (before the gnulib tests): > > ../configure --enable-single-binary=symlinks --quiet \ > --enable-install-program=arch,hostname \ > && make all check-very-expensive VERBOSE=yes > > ... > PASS: tests/factor/t36.sh > ============================================================================ > Testsuite summary for GNU coreutils 8.26.61-10d1d > ============================================================================ > # TOTAL: 592 > # PASS: 549 > # SKIP: 43 > # XFAIL: 0 > # FAIL: 0 > # XPASS: 0 > # ERROR: 0 > ============================================================================ > make[6]: Leaving directory '/tmp/coreutils-8.26.61-10d1d/build3' > GEN check-README > CC src/tr.o > CCLD src/tr > GEN check-duplicate-no-install > GEN sc-avoid-builtin > GEN sc-avoid-io > GEN sc-avoid-non-zero > GEN sc-avoid-path > GEN sc-avoid-timezone > GEN sc-avoid-zeroes > GEN sc-exponent-grouping > GEN sc-lower-case-var > GEN check-texinfo > make[5]: Leaving directory '/tmp/coreutils-8.26.61-10d1d/build3' > make[4]: Leaving directory '/tmp/coreutils-8.26.61-10d1d/build3' > > And the src/ directory looks odd after that: > > lrwxrwxrwx 1 berny users 9 Mar 4 19:18 test -> coreutils > lrwxrwxrwx 1 berny users 9 Mar 4 19:18 timeout -> coreutils > lrwxrwxrwx 1 berny users 9 Mar 4 19:18 touch -> coreutils > -rwxr-xr-x 1 berny users 210159 Mar 4 19:35 tr > -rw-r--r-- 1 berny users 151312 Mar 4 19:35 tr.o > lrwxrwxrwx 1 berny users 9 Mar 4 19:18 true -> coreutils > lrwxrwxrwx 1 berny users 9 Mar 4 19:18 truncate -> coreutils > lrwxrwxrwx 1 berny users 9 Mar 4 19:18 tsort -> coreutils > > This does not affect 'make install', yet I'm wondering if the dependency > is needed (it was introduced together with the rule in commit > v6.9-216-gd6d5658). > > Are there any implementations out there which do not support simple > newline replacements, or could we simply rely on tr(1) installed > on the build host? > > diff --git a/src/local.mk b/src/local.mk > index 84df099..9b2b172 100644 > --- a/src/local.mk > +++ b/src/local.mk > @@ -644,7 +644,7 @@ check-README: > # entry, because if that were to happen, it *would* be installed > # by default. > .PHONY: check-duplicate-no-install > -check-duplicate-no-install: src/tr > +check-duplicate-no-install: > $(AM_V_GEN)test -z "`echo '$(EXTRA_PROGRAMS)' | tr ' ' '\n' | uniq > -d`" > > # Use the just-built 'ginstall', when not cross-compiling.
Good spot. This dependency looks superflous because: - It's not checking an install time issue so is only useful for devs really - tr works fine on solaris and freebsd at least - Our tr will probably be built anyway (and used in the single binary case) - even if tr doesn't work as expected, uniq will absorb the error Please push. thanks! Pádraig
