|
Message-ID: <20190629214156.GM1506@brightrain.aerifal.cx> Date: Sat, 29 Jun 2019 17:41:56 -0400 From: Rich Felker <dalias@...c.org> To: musl@...ts.openwall.com Subject: Re: Removing sys/sysmacros.h from sys/types.h On Sat, Jun 29, 2019 at 02:00:46PM -0700, Michael Forney wrote: > On 2019-06-14, Rich Felker <dalias@...c.org> wrote: > > On Fri, Jun 14, 2019 at 01:20:21PM -0700, Benjamin Wright wrote: > >> Hello, > >> > >> Would it be possible to remove the sys/sysmacros.h include from > >> sys/types.h? > >> > >> This change was added in 2011 - > >> https://git.musl-libc.org/cgit/musl/commit/include/sys/types.h?id=f552c792c7ce5a560f214e1104d93ee5b0833967 > >> > >> However it appears to have been removed from other standard libc > >> implementations around ~2015 based on this announcement: > >> https://sourceware.org/ml/libc-alpha/2015-11/msg00253.html > >> > >> This can cause issues with user defined symbol collision of the symbols > >> major, minor or makedev. > > > > Yes, I'd actually forgotten we did this. I'll remove it right away in > > time for the next release. > > I'm just curious if there is a good way to use these macros in > software that is otherwise portable without adding a configure script. > Most BSDs don't have sys/sysmacros.h, and now glibc and musl require > including sys/sysmacros.h to use them. > > It's a shame that while these macros are available on most unix-like > operating systems, they can't be accessed in a generic way. There's really not much of a use for them at all in portable software. Devices having "major/minor numbers", rather than dev_t just being an abstract identifier, is an anachronism that's not really compatible with exploding numbers of device types or operating systems that don't expose any idea of a type/major. If you really do need them, you should probably just search for them with a configure check, first for sys/sysmacros.h, then for any other historical places they might have been found in. Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.