Your message dated Wed, 29 Aug 2018 21:19:09 +0000
with message-id <[email protected]>
and subject line Bug#879073: fixed in coreutils 8.30-1
has caused the Debian Bug report #879073,
regarding coreutils: Recursive definition of $INSTALL when crossbuilding
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
879073: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=879073
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: coreutils
Version: 8.26-3
Severity: normal
Tags: upstream patch

If you crossbuild coreutils (after fixing the manpages issue covered in #721358)
it fails with:

 Recursive variable 'INSTALL' references itself (eventually).$

in context:
----------------
make[4]: Leaving directory '/tmp/buildd/coreutils/coreutils-8.26/po'
Making install in .
make[4]: Entering directory '/tmp/buildd/coreutils/coreutils-8.26'
make[5]: Entering directory '/tmp/buildd/coreutils/coreutils-8.26'
Makefile:3440: *** Recursive variable 'INSTALL' references itself (eventually).$
make[5]: Leaving directory '/tmp/buildd/coreutils/coreutils-8.26'
Makefile:12005: recipe for target 'install-am' failed
make[4]: *** [install-am] Error 2
make[4]: Leaving directory '/tmp/buildd/coreutils/coreutils-8.26'
Makefile:11513: recipe for target 'install-recursive' failed
make[3]: *** [install-recursive] Error 1
make[3]: Leaving directory '/tmp/buildd/coreutils/coreutils-8.26'
Makefile:11999: recipe for target 'install' failed
make[2]: *** [install] Error 2
make[2]: Leaving directory '/tmp/buildd/coreutils/coreutils-8.26'
dh_auto_install: make -j1 install DESTDIR=/tmp/buildd/coreutils/coreutils-8.26/$
debian/rules:34: recipe for target 'override_dh_auto_install' failed
make[1]: *** [override_dh_auto_install] Error 2
make[1]: Leaving directory '/tmp/buildd/coreutils/coreutils-8.26'
debian/rules:25: recipe for target 'binary-arch' failed
make: *** [binary-arch] Error 2
dpkg-buildpackage: error: debian/rules binary-arch gave error exit status 2
------------------


Now clearly someone did something to fix this in the past:
# Use the just-built 'ginstall', when not cross-compiling.
if CROSS_COMPILING
cu_install_program = @INSTALL_PROGRAM@
else
cu_install_program = src/ginstall
endif
INSTALL = $(cu_install_program) -c

however if you resolve this @INSTALL_PROGRAM@ resolves to
$INSTALL_PROGRAM and that defaults to $INSTALL if nothing is
explicitly specified. As you can see, this results in a recursive
definition.

See 
https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Particular-Programs.html
 definition of AC_PROG_INSTALL: (which is used so far as I can tell)
 "Also set the variables INSTALL_PROGRAM and INSTALL_SCRIPT to ‘${INSTALL}’ "

I guess when the above fix was put in $INSTALL_PROGRAM was somehow set
somewhere so that it worked? This could be done in debian/rules but
this should really be fixed upstream.

It's not clear to me exactly what the right way to fix this is, but
this really stupid patch does actually work and illustrates that this is indeed 
the problem:

Index: coreutils-8.26/src/local.mk
===================================================================
--- coreutils-8.26.orig/src/local.mk
+++ coreutils-8.26/src/local.mk
@@ -645,7 +645,7 @@ check-duplicate-no-install: src/tr

 # Use the just-built 'ginstall', when not cross-compiling.
 if CROSS_COMPILING
-cu_install_program = @INSTALL_PROGRAM@
+cu_install_program = install
 else
 cu_install_program = src/ginstall
 endif

It seems likely that there is a better way :-)

I did try just setting $INSTALL_PROGRAM=install in debian/rules but
that didn't propogate the way I was hoping it would, and as I say that
isn't an upstream fix anyway.

To reproduce this issue, cross-build coreutils with:

dpkg --add-architecture arm64
apt --no-install-recommends install crossbuild-essential-arm64
apt build-dep -aarm64 coreutils
DEB_BUILD_OPTIONS=nocheck dpkg-buildpackage -aarm64 -B
 

--- End Message ---
--- Begin Message ---
Source: coreutils
Source-Version: 8.30-1

We believe that the bug you reported is fixed in the latest version of
coreutils, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Michael Stone <[email protected]> (supplier of updated coreutils package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Wed, 29 Aug 2018 16:20:06 -0400
Source: coreutils
Binary: coreutils
Architecture: source amd64
Version: 8.30-1
Distribution: unstable
Urgency: low
Maintainer: Michael Stone <[email protected]>
Changed-By: Michael Stone <[email protected]>
Description:
 coreutils  - GNU core utilities
Closes: 721358 879073
Changes:
 coreutils (8.30-1) unstable; urgency=low
 .
   * New upstream version
     - man pages are distributed again, should fix cross building issues
       (Closes: #721358)
     - fixes problem with install program location when cross building
       (Closes: #879073)
     - env -S support to pass multiple arguments in #! lines
   * Standards version 4.2.1.0 (no changes)
Checksums-Sha1:
 dd0dc187c2d2e7da71dabe70d03eaea22aa838d3 1886 coreutils_8.30-1.dsc
 bd5d495c162730873a2774acd1c5091fbf0c55a4 5359532 coreutils_8.30.orig.tar.xz
 d0c4f10e6a3b8103ab65d9a72530c8db49a3954d 31436 coreutils_8.30-1.debian.tar.xz
 66a42b61c0d5f7611cae7172017148633afbdaca 7213916 
coreutils-dbgsym_8.30-1_amd64.deb
 b57f8c80a5fa91e4bf2b53fe696f55df32e8941e 7288 coreutils_8.30-1_amd64.buildinfo
 0753dc5b66be5bd84eb747b5e7937ca517bd834e 2707128 coreutils_8.30-1_amd64.deb
Checksums-Sha256:
 b23403d9382c9e91a9f63947352dfc9c06d3da9bf97173923026f9abb355446d 1886 
coreutils_8.30-1.dsc
 e831b3a86091496cdba720411f9748de81507798f6130adeaef872d206e1b057 5359532 
coreutils_8.30.orig.tar.xz
 7e397b558de9c9bc49cbabb2707c4902afd0fca97b7eedcb73f94f8421dfe2ca 31436 
coreutils_8.30-1.debian.tar.xz
 b0dbcab0e91fc93bd7e9efde2b70f58bded3bb80f204e7fdefc268f693019b1e 7213916 
coreutils-dbgsym_8.30-1_amd64.deb
 26004a4390f98b12c27e536c5853b8871984d983bd8d605b3c68d0cb83b552a1 7288 
coreutils_8.30-1_amd64.buildinfo
 0a5e93571f9859b4c5fe471ce3fc274b9103b67d3d499ad97e7e5bea6eaf27af 2707128 
coreutils_8.30-1_amd64.deb
Files:
 068d96c865bd472cc92a0f40f1442fed 1886 utils required coreutils_8.30-1.dsc
 ab06d68949758971fe744db66b572816 5359532 utils required 
coreutils_8.30.orig.tar.xz
 493202ee620acaf94f0880b8e1ca0a8a 31436 utils required 
coreutils_8.30-1.debian.tar.xz
 53ea6bf32aef5fb685f8fe54e076cb3f 7213916 debug optional 
coreutils-dbgsym_8.30-1_amd64.deb
 885fe0c5658ad908987d73011843b831 7288 utils required 
coreutils_8.30-1_amd64.buildinfo
 105ed1ceebdc958d742024caf0823371 2707128 utils required 
coreutils_8.30-1_amd64.deb

-----BEGIN PGP SIGNATURE-----

iQJGBAEBCgAwFiEEAtUxX/EfGGGGDh4C9hqs3PoR/94FAluHBj0SHG1zdG9uZUBk
ZWJpYW4ub3JnAAoJEPYarNz6Ef/eg20QAJ85zy1TATJlZ3DJbvYrnf/o6FvE9zIV
vzJeF8xi5CE94UK13r/IhlLPr5MmOMDFTpqT9m35/VolR/Y5GUdhwd8Nlxhuk3nt
sAmvDAxdup8kkVN6dftGrXvh8dnU/fH7Bmf9qZbXljZaOaSRO+FvfXJLzYN35LdW
BX+eoVcia9zV3vRyDJd05DNa5PIz8bV4O9j2Db3x5sSlObr6t8qPFt0ZXpnV5rXo
M9AM2ICEKUZuW3OXigz3dk2biDQu3LVOUFwHevtVnQjCR+ycbGNw4HDUU0fRk4RY
2K4k48K5WznfToQFVFAb1tBcB9wh3zIakgOb/axj8katEYFVOq1vkpxK26l7J3aO
lx2aBKEKoNjK/FJVKU35eCmCee2ZPnWKjW4qWXYupnz0+jLpITqIJZITlhfRe+M9
edv1gyjYJOK40jkQf45k3sbOMAuLmqsjZk5LQgoTpvYtOqAR57z/YZqGsfHgVFkR
8WEFklsZYciAoakkYXIahGg9P7of0R9Pbdf2CEkR4oS7YiMWeE7UzXi0nX+RDprK
vtX+8YQRTWLKrNg2DtgbPmnsybz7gVc0ngLLP0I8/SHJGNeEKDcbbZquIyZvYhmB
ihueFx3YzYgP+O+tC+cJ2B9Y0jrpLVetEmRj0Wwgrcga4WM6FDUnfqjxQMWSMmv+
fdxt6LJCdKP7
=Kvh1
-----END PGP SIGNATURE-----

--- End Message ---

Reply via email to