Why not fail if /usr/bin/file fails?

[email protected]
Newsgroups gmane.comp.gnu.libtool.general
Message-ID <[email protected]>
Hi.
I'm trying to build https://aur.archlinux.org/packages/mingw-w64-libunistring.

Libtool thinks that the installed dependency libiconv.dll.a has unknown type and refuses to build libunistring dll.

The libtool script calls `file` internally to detect the type, but it suppresses the error output which makes it hard to troubleshoot:

    func_win32_libid ()
    {
      $debug_cmd
    
      win32_libid_type=unknown
      win32_fileres=`file -L $1 2>/dev/null`
      case $win32_fileres in

If I call `file` directly I can see the error:

    [il@arch lib]$ fakeroot file -L /usr/x86_64-w64-mingw32/lib/libiconv.dll.a
    /usr/bin/fakeroot: line 178: 962263 Bad system call         FAKEROOTKEY=$FAKEROOTKEY LD_LIBRARY_PATH="$PATHS" LD_PRELOAD="$LIB" "$@"

Yet make finishes successfully and an invalid package is built.

Is there any reason to ignore non-zero exit code from external programs called by libtool? I don't understand.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.