Bug 19615

Summary: cannot build current kernel (30-june-2000)
Product: Base System Reporter: patrick <patrick>
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Unspecified   
Hardware: Any   
OS: Any   

Description patrick 2000-07-01 04:40:01 UTC
I got the current kernel sourcetree from ftp.freebsd.org (30-june-2000)
and I set-up a configfile. after make depend and copying the /usr/src/sys/crypto dir from an older kerneltree (it was missing in the current one and without it the kernel doesn't compile, see earlier reported prob) I started make.

I get the following error:
cc -c -O -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmis
sing-prototypes -Wpointer-arith -Winline -Wcast-qual  -fformat-extensions -a
nsi  -nostdinc -I- -I. -I../.. -I/usr/include  -D_KERNEL -include
opt_global.h -elf  -mpreferred-stack-boundary=2  ../../i386/i386/bios.c
cc -c -x
assembler-with-cpp -DLOCORE -O -Wall -Wredundant-decls -Wnested-externs -Wst
rict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  
-fformat-extensions -ansi  -nostdinc -I- -I. -I../.. -I/usr/include  -D_KERN
EL -include opt_global.h -elf  -mpreferred-stack-boundary=2
../../i386/i386/bioscall.s
/tmp/cca13049.s: Assembler messages:
/tmp/cca13049.s:773: Error: operands given don't match any known 386
instruction
/tmp/cca13049.s:838: Error: operands given don't match any known 386
instruction
*** Error code 1

Stop in /usr/src/sys/compile/GATEWAY.

Fix: 

I copied the src/sys/i386/i386/bioscall.s file from my original srctree to
the current tree.

I did a diff check between the current and the 4.0-20000608-stable one that I now use and the output is:

root@kessen / > diff bioscall.old bioscall.new
26c26
<  * $FreeBSD: src/sys/i386/i386/bioscall.s,v 1.6 1999/08/28 00:43:41 peter
Exp $
---
>  * $FreeBSD: src/sys/i386/i386/bioscall.s,v 1.7 2000/05/22 17:02:53 obrien
Exp $
68c68
<       lcall   _bioscall_vector
---
>       lcall   *_bioscall_vector
133c133
<       lcall   _bioscall_vector        /* 16-bit call */
---
>       lcall   *_bioscall_vector       /* 16-bit call */

hmm. I don't see a problem, maybe I used diff wrongly but this solves the
problem anyway.
How-To-Repeat: get the current kernel sources, copy the crypto/blowfish over from your old /usr/src/sys dir and make a kernel config file and build it.
Comment 1 k 2000-08-03 15:53:47 UTC
Hi Patrick

I belive that the problems you have are due to src/sys tree out of sync.

Even thou you say in the subject that it is current I belive you use 
stable-src.

Yes,
sys/crypto seems to be missing in FreeBSD-Stable src on ftp.freebsd.org
and this needs to be fixed.

You mention that you copied your old sys/crypto into place which will
make that part out of sync with the rest.

Please remove src/sys and see the handbook about obtaining FreeBSD
http://www.FreeBSD.org/handbook/mirrors.html

I recommend using CVSup to fetch your src.
This works greate for me and I get sys/crypto as I should.

I think that the other PR you submitted is also a  
problem that comes from this out-of-sync.

http://www.FreeBSD.org/cgi/query-pr.cgi?pr=19616

Please try to get new src and report back if it works or not.

Thanks 
Johan K
Comment 2 Johan Karlsson freebsd_committer freebsd_triage 2000-08-24 09:41:55 UTC
State Changed
From-To: open->feedback

Have you been able to solve this problem?
Comment 3 Johan Karlsson freebsd_committer freebsd_triage 2001-02-25 11:05:24 UTC
State Changed
From-To: feedback->closed

Feedback timed-out.