Hi,
I'm an author of axfer.
On Tue, 08 Jan 2019 18:00:18 +0100, Jay Foster wrote:
I am attempting to build the 1.1.8 release of alsa-utils and getting an error about POLLRDNORM (and others) undefined. This error comes from axfer/waiter-select.c. axfer/waiter-select.c includes "waiter.h", which includes "poll.h". This build is for a linux target.
On Wed, 09 Jan 2019 17:22:36 +0100, Jay Foster wrote:
On 1/9/2019 3:10 AM, Takashi Iwai wrote:
Which libc are you using? The POSIX man page (man poll.h) mentions POLLRDNORM defined there, at least, on my system with glibc 2.27.
This is a legacy ARM product using glibc 2.9.
I'm sorry for the FTBFS but it's out of my notice to build with too-old glibc.
Here, a history of glibc for related events: * glibc-2.9: 2008/11/13 * your version * glibc-2.10: 2009/5/9 * support XPG7/POSIX-2008 * add '__USE_XOPEN2k8' for the avove * glibc-2.19: 2014/2/7 * add '_DEFAULT_SOURCE' macro * XPG7/POSIX-2008 is a default behaviour * glibc-2.20: 2014/9/7 * obsolete '_BSD_SOURCE' and '_SYSV_SOURCE' macros * glibc-2.28: 2018/8/1 * used my environment (Ubuntu 18.10)
The macros, POLLRDNORM and the others, seems to be defined officially in POSIX-2008 and nowadays glibc supports POSIX-2008 as a default. This is the reason that I've never faced your issue in my development period. I guess it's the reason that nothing noted in man of poll(2) and select(2).
I need a bit time to judge whether it's woth to support such old-glibc. Just removal of the newly-introduced macros is a simple solution.
Thanks for your report
Takashi Sakamoto