From: Isaac Dunham <idunham@lavabit.com>
To: musl@lists.openwall.com
Subject: Re: Missing header(s)
Date: Mon, 20 Feb 2012 17:15:03 -0800 [thread overview]
Message-ID: <20120220171503.22c3896c.idunham@lavabit.com> (raw)
In-Reply-To: <20120220191703.GU146@brightrain.aerifal.cx>
[-- Attachment #1: Type: text/plain, Size: 1804 bytes --]
On Mon, 20 Feb 2012 14:17:03 -0500
Rich Felker <dalias@aerifal.cx> wrote:
> Doesn't 3.81 already have some important bugs you need to patch
> anyway? If so you could add ar.h at the same time. This won't be
> needed for musl once I get ar.h added, but it would make the resulting
> build more portable anyway.
It's running OK without patches, but I haven't pushed too hard. As mentioned, I just copied ar.h to /usr/include.
> > By the way, I've put together a sys/cdefs.h header that gets a lot
> > of stuff to compile; ~95% of it is backwards-compatability macros.
> > If you want, I can submit it; I'd add
> I wouldn't mind seeing it, and as long as it's clean I'll probably add
> it...
>
> > #include'ing <sys/cdefs.h> is semi-portable, though (NetBSD, GNU
> > libc)--and the only option if you need to support some old systems
> > as well as c99.
>
> I'm confused how it would be necessary for this. The __STDC__ and
> __STDC_VERSION__ macros give you all you need to make the appropriate
> definitions yourself if you really need to support pre-standardized C.
> If you just need to support C89 and C99, you'd rarely have to test
> anything anyway; just use the intersection of the 2 languages (which
> is equivalent to C89, except that you can't use C99 keywords like
> inline, restrict, _Bool, etc.).
It looks like it's meant to have one header allow the same source to build
with anything from K&R to C99 (in theory).
> As such, I still see apps that include sys/cdefs.h as buggy.
> Rich
I view it like features.h: nonsense, but if it's a choice between getting it building in a minute or an hour, I'd rather get it building sooner. Once I know how broken it is, I can decide whether to clean it up, forget it, or delete it. I'd rather not waste my time on completely broken code.
[-- Attachment #2: cdefs.h --]
[-- Type: text/x-chdr, Size: 653 bytes --]
/* Legacy, meant only for glibc compatability
* These were ripped off from glibc sys/cdefs.h
*/
#warn "sys/cdefs.h is only meant as a temporary measure"
#warn "Any code that requires it needs cleanup"
#ifndef _SYS_CDEFS_H_
#define _SYS_CDEFS_H_
#undef __P
#undef __PMT
#undef __NTH
#define __THROW
#define __P(param) param
#define __PMT(param) param
#define __NTH(param) param
#define __CONCAT(x,y) x ## y
#define __STRING(x) #x
#define __ptr_t void *
#define __long_double_t long double
#ifdef __cplusplus
# define __BEGIN_DECLS extern "C" {
# define __END_DECLS }
#else
# define __BEGIN_DECLS
# define __END_DECLS
#endif
#endif /* _SYS_CDEFS_H_
prev parent reply other threads:[~2012-02-21 1:15 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-20 17:24 Isaac Dunham
2012-02-20 19:17 ` Rich Felker
2012-02-21 1:15 ` Isaac Dunham [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120220171503.22c3896c.idunham@lavabit.com \
--to=idunham@lavabit.com \
--cc=musl@lists.openwall.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
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 NNTP newsgroup(s).