[Mesa-dev] [PATCH 02/14] vc4, vc5: add ETIME fallback define
jsg at jsg.id.au
Wed Feb 28 10:07:19 UTC 2018
On Fri, Jan 19, 2018 at 12:51:30AM +0300, Greg V wrote:
> On 01/18/2018 22:49, Dylan Baker wrote:
> > Quoting Emil Velikov (2018-01-18 10:40:40)
> > > On 18 January 2018 at 17:13, Dylan Baker <dylan at pnwbakers.com> wrote:
> > > > I'm not sure how Emil feels about this (and the related patches) but I think it
> > > > might be better to handle this at the build system level, for meson it would
> > > > look something like (in the top level meson.build):
> > > >
> > > > if cc.get_define('ETIME') == ''
> > > > pre_args += '-DETIME=ETIMEDOUT'
> > > > endif
> > > >
> > > > Which should be a permanent fix. Emil can probably provide an autotools
> > > > equivalent.
> > > >
> > > I'm not sure how the above works on meson - the define can come from
> > > multiple places.
> > > Surely meson does not check every header available on the system?
> > It doesn't, it checks for defines the preprocessor knows about, if you need to
> > check specific headers there's `has_header_symbol`.
> > Maybe this isn't feasible, but it really feels like having to define ETIME all
> > over the tree if it's not defined is fragile and ugly. I'm with you and Eric
> > that FreeBSD really should solve this themselves.
> Looks like OpenBSD and DragonFly don't define ETIME either, but NetBSD and
> illumos do.
> BTW, Elf_Nhdr landed: https://github.com/freebsd/freebsd/commit/f629be4b4612a8942dd5a2e7db8b68397d1186cd
ETIME is a STREAMS errno marked as optional and obsolete in POSIX.
"Strictly Conforming POSIX Applications and Strictly Conforming XSI
Applications shall not use obsolescent features."
More information about the mesa-dev