Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAGw6cBvptg8sXgjp_ZpPLcxtUkOP8qXMcQrLwR5NqmfJmhr76Q@mail.gmail.com>
Date: Sat, 29 Jun 2019 15:11:23 -0700
From: Michael Forney <mforney@...rney.org>
To: musl@...ts.openwall.com
Subject: Re: Removing sys/sysmacros.h from sys/types.h

On 2019-06-29, Rich Felker <dalias@...c.org> wrote:
>> 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.

The case I'm interested in is implementing ls(1), which needs a way to
display the dev_t in a human readable way, and tar(1) since the ustar
format stores devmajor and devminor separately.

But anyway, I guess adding a configure script is the only reliable way
to use them. I wonder if any of the BSDs would consider adding
sys/sysmacros.h...

Thanks for your input.

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.