public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
* AC_HEADER_MAJOR vs. glibc 2.25(-to-be)
@ 2016-09-01  2:27 Zack Weinberg
  2016-09-01  3:24 ` Paul Eggert
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Zack Weinberg @ 2016-09-01  2:27 UTC (permalink / raw)
  To: autoconf; +Cc: GNU C Library

glibc 2.25 is going to deprecate the definition of 'major', 'minor',
and 'makedev' by  sys/types.h; see
https://sourceware.org/bugzilla/show_bug.cgi?id=19239 for rationale.
(It was found to be impractical to remove sys/types.h from stdlib.h.)
Unfortunately, AC_HEADER_MAJOR does not detect that these macros are
now throwing warning messages if you don't include sys/sysmacros.h,
and this is reported to break software that uses -Werror (see the very
end of the above bug report).

The ideal solution to this problem would be if there _already existed_
a way for sys/types.h to detect that it's being included by an
autoconf test program.  When it saw that, it would not define
major/minor/makedev at all, which would poke AC_HEADER_MAJOR to go
looking for sys/sysmacros.h.  Inspecting a trivial generated configure
script, though, I don't see any obvious method.  A less ideal method
would be for autoconf and glibc to agree on a macro that
AC_HEADER_MAJOR would define before including sys/types.h, with the
same effect -- I consider this less than ideal mainly because there's
no schedule for autoconf 2.70, whereas glibc 2.25 is due out in about
five months.

Have I missed either a way to carry out the ideal solution, or a third
alternative?  Failing that, can we get the ball rolling on option B,
please?

zw

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2016-09-14  1:38 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-01  2:27 AC_HEADER_MAJOR vs. glibc 2.25(-to-be) Zack Weinberg
2016-09-01  3:24 ` Paul Eggert
2016-09-02  1:09   ` Zack Weinberg
2016-09-13 21:37     ` Eric Blake
2016-09-13 22:31       ` Eric Blake
2016-09-13 22:38         ` Eric Blake
2016-09-14  1:38       ` Zack Weinberg
2016-09-01  4:37 ` Nick Bowler
2016-09-01  5:51   ` Florian Weimer
2016-09-02  1:16   ` Zack Weinberg
2016-09-02  1:32     ` Paul Eggert
2016-09-02  1:58       ` Zack Weinberg
2016-09-13 21:51     ` Eric Blake
2016-09-01  8:35 ` Florian Weimer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).