]> git.ipfire.org Git - thirdparty/util-linux.git/commit
build-sys: fix compilation with ncurses and uClibc or musl libc
authorCarlos Santos <casantos@datacom.ind.br>
Thu, 19 Jan 2017 19:27:37 +0000 (17:27 -0200)
committerKarel Zak <kzak@redhat.com>
Fri, 20 Jan 2017 10:07:46 +0000 (11:07 +0100)
commit9ea8ded37b648bbd538cbf9c4d144b8b1a93c1b5
treeb4da5f72d3b22493525df5cf215fbfb83207fb62
parent37410713b2007e7069f081fdedd57a6fe513a48c
build-sys: fix compilation with ncurses and uClibc or musl libc

Compiling util-linux with musl and uClibc-ng toolchains when wide-char
support is not enabled in ncurses results in compilation failures with
the following message:

    error: two or more data types in declaration specifiers
    #define
     wchar_t char

The problem occurs because util-linux #defines its own wchar_t (as char)
when configured without widechar support. This conflicts with definition
of wchar_t contained in stddef.h.

This error can be reproduced running "<toolchain-cc -o test test.c" with
the following test program:

    #include <ctype.h>
    #define wchar_t char
    #include <stddef.h>

    int main()
    {
        return 0;
    }

The only way to avoid the problem it to reorder the inclusion of headers
in some files under the text-utils directory.

Addresses:
  http://autobuild.buildroot.net/results/3a2f228e0fa7b5cc28a13d49f48f1a6aef8d9d7a
  http://autobuild.buildroot.net/results/99e96069f652d511c6212a5bb6be29e68fb1747c
  http://autobuild.buildroot.net/results/2dc5721aef93b7b410153bafad78248fac3db941
  http://autobuild.buildroot.net/results/8a9e197ba7a292b18f8c0c36dca974685556a38a

Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
text-utils/colcrt.c
text-utils/colrm.c
text-utils/column.c