On Sat, 4 Nov 2000, Julian Elischer wrote:

> The following dependencies seem to be wrong in the code..
> if you do not define inet, (e.g for a process controller with no
> networking)
> then uipc_accf.o will not link because it (wrongly) has it's 
> sysctl linked off 'net.inet'  instead of 'net'.
> once you get around that one you also find the following minimal config:
> ------------
> machine         i386
> cpu             I586_CPU
> ident           MINIMUM
> maxusers        16
> hints           "GENERIC.hints"         #Default places to look for
> devices.
> options               FFS
> options         FFS_ROOT                #FFS usable as root device [keep
> this!]
> device        isa
> device        fdc
> device          npx
> device          sio
> ------------
> fails to compile due to:

I ran into this too, with the following really minimal (not very useful)
machine         i386
cpu             I686_CPU
ident           MIN
maxusers        2
(requires uncomitted fixes/hacks).

> c -c -O -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes 
> -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual 
> -fformat-extensions -ansi  -nostdinc -I-  -I. -I../.. -I../../../include
> -I../../contrib/dev/acpica/Subsystem/Include  -D_KERNEL -include
> opt_global.h -elf  -mpreferred-stack-boundary=2 
> ../../i386/i386/machdep.c
> ../../i386/i386/machdep.c:761: warning: function declaration isn't a
> prototype
> ../../i386/i386/machdep.c: In function `osigreturn':
> ../../i386/i386/machdep.c:771: dereferencing pointer to incomplete type
> ../../i386/i386/machdep.c:767: warning: `scp' might be used
> uninitialized in this function
> *** Error code 1
> because osigreturn_args is defined only in COMPAT_43.
> (making it not really an option) This is in the function
> int
> osigreturn(p, uap)
> (Old_sigreturn)... surely this should also be made conditional on
> COMPAT_43?
> The trouble with that is tha the new sigreturn calls the osigreturn in
> some cases
> if (((struct osigcontext *)ucp)->sc_trapno == 0x01d516)
> to be exact..
> this needs cleaning up. Who understands this stuff?

I sent (not quite right) patches for it to Marcel a year ago.  Just add
(not quite right) COMPAT_43 || COMPAT_SUNOS ifdefs in about 50 places,
and avoid calling osigreturn when it doesn't exist.  The "not quite right"
part is that this has nothing to do with 4.3BSD or SunOS compatibility.
It is for 4.4BSD/FreeBSD[2-3] compatibility.  Precise ifdefs for it could
get very messy.

> It is interesting to see that there is NO way to disable all networking
> (e.g unix domain sockets)

This worked before the accf changes.  I asked Alfred to fix them.  I only
fixed the sysctl problem with it here and am left with the following errors
for my minimal kernel:

uipc_socket.o: In function `sodealloc':
uipc_socket.o(.text+0x262): undefined reference to `M_ACCF'
uipc_socket.o(.text+0x272): undefined reference to `M_ACCF'
uipc_socket.o: In function `do_setopt_accept_filter':
uipc_socket.o(.text+0x1d3e): undefined reference to `M_ACCF'
uipc_socket.o(.text+0x1d4e): undefined reference to `M_ACCF'
uipc_socket.o(.text+0x1dcd): undefined reference to `accept_filt_get'
uipc_socket.o(.text+0x1deb): undefined reference to `M_ACCF'
uipc_socket.o(.text+0x1e2a): undefined reference to `M_ACCF'
uipc_socket.o(.text+0x1e61): undefined reference to `M_ACCF'
uipc_socket.o(.text+0x1e6e): undefined reference to `M_ACCF'


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to