On Thursday 25 September 2008, Denys Vlasenko wrote: > On Thu, Sep 25, 2008 at 11:24 AM, Denys Vlasenko > > <[EMAIL PROTECTED]> wrote: > > On Thu, Sep 25, 2008 at 2:41 AM, <[EMAIL PROTECTED]> wrote: > >> Author: vapier > >> Date: 2008-09-24 17:41:49 -0700 (Wed, 24 Sep 2008) > >> New Revision: 23475 > >> > >> Log: > >> we dont provide setgroups() replacement, so dont provide the prototype > >> either ... especially since it conflicts on some systems (like Darwin) > > > > This broke uclibc build. > > With attached .config: > > CC libpwdgrp/pwd_grp.o > cc1: warnings being treated as errors > libpwdgrp/pwd_grp.c: In function 'bb_internal_initgroups': > libpwdgrp/pwd_grp.c:665: error: implicit declaration of function > 'setgroups' make[1]: *** [libpwdgrp/pwd_grp.o] Error 1 > make: *** [libpwdgrp] Error 2 > > Maybe frame setgroups decl in #ifdef DARWIN thingy?
ugh, no ... this is a failing of busybox. it is purposefully not pulling in grp.h and thus not getting the setgroups() prototype when the internal pwd/grp stuff is enabled. if you want to continue the "ignore it" route, then the prototype should be limited to that ifdef logic (i dont use the bb pwd/grp replacement code so i wouldnt notice it failing in that case). of course, if the build/host include paths werent so intertwined, it wouldnt be nearely as much of a problem ... we have to make sure libbb.h is "portable" because it gets pulled in by the applet generation code (applets/usage.c). sticking random system prototypes into libbb.h makes this very fragile. -mike
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ busybox mailing list [email protected] http://busybox.net/cgi-bin/mailman/listinfo/busybox
