Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Nov 1995 13:25:30 +1100
From:      Bruce Evans <bde@zeta.org.au>
To:        asami@cs.berkeley.edu, mark@grondar.za
Cc:        CVS-commiters@freefall.freebsd.org, cvs-ports@freefall.freebsd.org, markm@freefall.freebsd.org
Subject:   Re: URGENT: Re: cvs commit: ports/security/pidentd/patches patch-ae
Message-ID:  <199511220225.NAA22683@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>********************************************************************
>This is a big problem.  I don't know who changed the include files,
>but that person should be on this list (i.e., committers).  Whoever
>that is, can you please step forward and explain the differences
>between 2.1 and 2.2 in this area?
>********************************************************************

phk removed some polluting #includes from <sys/sysctl.h>.

> * What version are you running? I did this to fix compiles in 2.2-CURRENT.

> * > cc -c -I. -O2 -m486 -pipe -fno-strength-reduce -DFREEBSD  -DINCLUDE_EXTENSIONS -DHAVE_KVM kernel/freebsd.c
> * > In file included from /usr/include/sys/sysctl.h:48,
> * >                  from kernel/freebsd.c:16:
> * > /usr/include/sys/ucred.h:47: `NGROUPS' undeclared here (not in a function)

>This was on 2.1 (thud).

In 2.1, <sys/sysctl.h> included <sys/ucred.h>.  Including <sys/ucred.h>
doesn't work unless NGROUPS is already defined.  NGROUPS is a POSIX value
that is defined in (a file included by) <limits.h>.  It also happens to
be defined in (a file included by) <sys/param.h> and in <sys/syslimits.h>.

Mark apparently fixed a problem for 2.1 by removing <sys/sysctl.h>.  The
correct fix was probably to include <limits.h> or <sys/param.h> or to
complain until someone fixes <sys/ucred.h>.

>Hmm.  I tried it in my -current machine (made world from last night),
>it fails at a different place. :<

>---
>>> make
>Checksums OK.
>===>  Configuring for pidentd-2.6.1
>===>  Building for pidentd-2.6.1
>Building for FreeBSD 2.x ...
>cc -O2 -m486 -pipe -fno-strength-reduce -DFREEBSD  -DINCLUDE_EXTENSIONS -DHAVE_KVM -c identd.c
>cc -O2 -m486 -pipe -fno-strength-reduce -DFREEBSD  -DINCLUDE_EXTENSIONS -DHAVE_KVM -c parse.c
>cc -c -I. -O2 -m486 -pipe -fno-strength-reduce -DFREEBSD  -DINCLUDE_EXTENSIONS -DHAVE_KVM kernel/freebsd.c
>kernel/freebsd.c: In function `k_getuid':
>kernel/freebsd.c:215: `KERN_FILE' undeclared (first use this function)
>kernel/freebsd.c:215: (Each undeclared identifier is reported only once
>kernel/freebsd.c:215: for each function it appears in.)
>*** Error code 1

KERN_FILE is defined in <sys/sysctl.h>.  <sys/sysctl.h> is not included by
any other header.

Bruce

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511220225.NAA22683>