From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Petazzoni Date: Tue, 27 Dec 2016 18:07:46 +0100 Subject: [Buildroot] [PATCH v3] support/dependencies: ensure we have 'file' on the host In-Reply-To: <1482775110-24421-1-git-send-email-yann.morin.1998@free.fr> References: <1482775110-24421-1-git-send-email-yann.morin.1998@free.fr> Message-ID: <20161227180746.438a98a6@free-electrons.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net Hello, On Mon, 26 Dec 2016 18:58:30 +0100, Yann E. MORIN wrote: > Recently, the autoconf macros for libtool started using '/usr/bin/file' > to determine the type of library that is generated by the toolchain. > Packages that use this recent version of the libtool autoconf macros > will fail in a rather dramatic way when /usr/bin/file is not present > on the host: the package will still build but no shared library is > generated, which in turn may cause build failures in other packages > that link with it. > > For example, libpng's configure determines that it is not possible to > build a shared library on MIPS64 because the expected output from 'file' > is not present. Therefore, only a static libpng.a is built. Later, > bandwithd links with -lpng but it doesn't use the pkg-config's > Private-Libs (because it's not linking statically) and it doesn't have > access to the NEEDED reference from the shared library. Therefore, it > doesn't link with zlib and fails with > > pngrutil.c:(.text+0x55c): undefined reference to `inflate' > > We cant use host-file because it is itself an autotools package and is > itself using libtool, so this would be a chicken-n-egg problem. Besides, > the libtool script really wants to call /usr/bin/file, so it would not > even find our host-file anyway. > > So, just require that '/usr/bin/file' is present on the host. > > Signed-off-by: "Yann E. MORIN" > Cc: Arnout Vandecappelle > Cc: Baruch Siach > > --- > Changes v2 -> v3: > - explicitly check for /usr/bin/file (arnout) > - reword commit log (Arnout) Applied to master, thanks. Thomas -- Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com