Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 7 Sep 2011 23:02:44 -0700
From: Isaac Dunham <>
Subject: Re: [compatability] sys/cdefs.h not shipped

On Wed, 7 Sep 2011 16:11:05 -0400
Rich Felker <> wrote:

> On Tue, Sep 06, 2011 at 11:48:13PM -0700, Isaac Dunham wrote:
> > sys/cdefs.h is required by TI-RPC (an ipv6 compatible derivative of
> > the 'sun-rpc' code in gnu libc) and by libbsd; there are certainly

> Could you elaborate on what's needed from this file? It's definitely a
> bug for any program to be using the stuff in cdefs.h, which is pretty
> much all double-underscore-prefixed macros for internal use by glibc
> to facilitate compiling in pre-ANSI C compilers, which is almost
> certainly not going to work anyway. Is TI-RPC working on other
> non-GNU/Linux systems, which probably don't have this header?
> Rich
Looks like the issue's mostly __BEGIN_DECLS & __END_DECLS, 
which glibc does thus:
#ifdef  __cplusplus
# define __BEGIN_DECLS  extern "C" {
# define __END_DECLS    }
# define __BEGIN_DECLS
# define __END_DECLS
(Also, sys/cdefs.h exports c90 functions in namespace std, and does other stuff to let headers work with both C & C++).
Besides that, configure has no idea how to handle musl or the machine name, and the chroot I'm using needs fixing...
Isaac Dunham <>

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.