]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
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:06:57 +0000 (11:06 +0100)
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

index 62f84251a0b4a59a8d7ee3f0ec6d4a8d2c5d6519..f37635093e7c05a5735f2fcb3d5453cb73edd570 100644 (file)
@@ -46,8 +46,8 @@
 #include <getopt.h>
 
 #include "nls.h"
-#include "widechar.h"
 #include "c.h"
+#include "widechar.h"
 #include "closestream.h"
 
 /*
index 431eae0d2fec371b93aad6228dcf6ad21982d57c..e799cd10f45d7fdf1e6fc66e8c29d4099cbd6331 100644 (file)
@@ -44,9 +44,9 @@
 #include <unistd.h>
 
 #include "nls.h"
-#include "widechar.h"
 #include "strutils.h"
 #include "c.h"
+#include "widechar.h"
 #include "closestream.h"
 
 /*
index b8d31c989a451085f74c52467ee65bbcc21826b6..e0144a2df330c204f42c8c4242183413818d2d10 100644 (file)
@@ -50,8 +50,8 @@
 #include <getopt.h>
 
 #include "nls.h"
-#include "widechar.h"
 #include "c.h"
+#include "widechar.h"
 #include "xalloc.h"
 #include "strutils.h"
 #include "closestream.h"