[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: check-duplicate-no-install: depend on 'src/tr' necessary?
From: |
Pádraig Brady |
Subject: |
Re: check-duplicate-no-install: depend on 'src/tr' necessary? |
Date: |
Tue, 7 Mar 2017 17:49:15 -0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 |
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