[Buildroot] [PATCH 1/1] package/upmpdcli: Add patch to fix OPEN_MAX build error
Thomas Petazzoni
thomas.petazzoni at free-electrons.com
Sat Jul 18 12:36:42 UTC 2015
Dear Jörg Krause,
On Thu, 16 Jul 2015 22:53:12 +0200, Jörg Krause wrote:
> ++#ifndef OPEN_MAX
> ++#define OPEN_MAX 256 /* Guess */
> ++#endif
> ++
This is not the right fix. There is some Linux-specific code in
closefrom.cpp, but it doesn't get used since when you build C++ code
with -std=c++0x, the compiler doesn't define "linux" or "__linux", but
"__linux__", so the following test doesn't work anymore:
#elif (defined(linux) || defined(__linux))
See what the compiler does, without -std=c++0x:
$ ./output/host/usr/bin/powerpc-linux-g++ -dM -E - < /dev/null | grep -i linux#define __linux 1
#define __linux__ 1
#define __gnu_linux__ 1
#define linux 1
And now, with -std=c++0x:
$ ./output/host/usr/bin/powerpc-linux-g++ -std=c++0x -dM -E - < /dev/null | grep -i linux
#define __linux__ 1
#define __gnu_linux__ 1
So, just change the closefrom.cpp Linux test to:
#elif (defined(linux) || defined(__linux) || defined(__linux__))
and it will build fine, and be a lot better than a guessed 256 value.
Can you submit a new patch that does this, and report the proper
solution upstream?
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
More information about the buildroot
mailing list