Difference between revisions of "Talk:NetBSD 0.8"

From Computer History Wiki
Jump to: navigation, search
(ddb generates using the config program from netbsd08)
Line 79: Line 79:
 
[[User:Dugo|Dugo]] 14:45, 2 December 2010 (UTC)
 
[[User:Dugo|Dugo]] 14:45, 2 December 2010 (UTC)
  
 +
I've made way more progress.. now im making headway on re-making the install sets...
  
looks like I missed something obvious...
+
from my notes:
 
 
<pre>
 
The source for NetBSD is derived from 386BSD 0.1, patched
 
with the 0.2.2 patch kit.  In addition, many programs in
 
UCB's second BSD Networking Software Release which were
 
missing from 386BSD have been integrated into NetBSD, some
 
of the changes from the upcoming 0.2.3 patch kit have been
 
included, and many local additions and bug fixes have
 
been performed. </pre>.
 
 
 
I'm installing 386BSD and going from the 0.2.3 patch kit..
 
[[User:Neozeed|neozeed]] 19:18, 4 December 2010 (PST)
 
 
 
 
 
I've done it!!!!!
 
Using 386 BSD pl22 to fill in the missing parts, I built the remainder of NetBSD 0.8!!!
 
 
 
Here are my notes!
 
 
 
 
<pre>
 
<pre>
/usr/include/machine
 
was /sys/i386/include
 
now /sys/arch/i386/include
 
 
 
 
 
# branch # pwd
 
/usr
 
branch # cat .//src/sys.386bsd/sys/types.h
 
revision 1.1.1.1 intentionally removed
 
branch # cp .//src/sys.386bsd-22/sys/types.h .//src/sys.386bsd/sys/types.h
 
 
 
 
branch # branch # cat .//src/sys.386bsd/sys//stat.h
 
revision 1.1.1.1 intentionally removed
 
branch # cp .//src/sys.386bsd-22/sys/stat.h .//src/sys.386bsd/sys/stat.h
 
 
 
branch # branch # cat /usr/include/sys/fcntl.h
 
revision 1.1.1.1 intentionally removed
 
cp .//src/sys.386bsd-22/sys/fcntl.h .//src/sys.386bsd/sys/fcntl.h
 
 
config from NetBSD8 should now build.
 
 
/usr/src/sys.386bsd/arch
 
ln -s ../conf .
 
ln -s ../arch .
 
ln -s ../kern .
 
ln -s ../net .
 
ln -s ../ufs .
 
ln -s ../vm .
 
/usr/src/sys.386bsd
 
ln -s arch/i386 .
 
 
cp /usr/src/sys.386bsd-22/conf/param.c  /usr/src/sys.386bsd/conf/param.c
 
 
 
cp /usr/src/sys.386bsd-22/sys/param.h /usr/src/sys.386bsd/sys/param.h
 
cp /usr/src/sys.386bsd-22/sys/proc.h /usr/src/sys.386bsd/sys/proc.h
 
cp /usr/src/sys.386bsd-22/sys/errno.h /usr/src/sys.386bsd/sys/errno.h
 
cp /usr/src/sys.386bsd-22/sys/signal.h /usr/src/sys.386bsd/sys/signal.h
 
cp /usr/src/sys.386bsd-22/sys/buf.h /usr/src/sys.386bsd/sys/buf.h
 
cp /usr/src/sys.386bsd-22/sys/systm.h /usr/src/sys.386bsd/sys/systm.h
 
cp /usr/src/sys.386bsd-22/sys/kernel.h /usr/src/sys.386bsd/sys/kernel.h
 
cp /usr/src/sys.386bsd-22/sys/conf.h /usr/src/sys.386bsd/sys/conf.h
 
cp /usr/src/sys.386bsd-22/sys/ioctl.h /usr/src/sys.386bsd/sys/ioctl.h
 
cp /usr/src/sys.386bsd-22/sys/ioctl_compat.h /usr/src/sys.386bsd/sys/ioctl_compat.h
 
cp /usr/src/sys.386bsd-22/sys/ttydefaults.h /usr/src/sys.386bsd/sys/ttydefaults.h
 
cp /usr/src/sys.386bsd-22/sys/tty.h /usr/src/sys.386bsd/sys/tty.h
 
cp /usr/src/sys.386bsd-22/sys/acct.h /usr/src/sys.386bsd/sys/acct.h
 
cp /usr/src/sys.386bsd-22/sys/dkstat.h /usr/src/sys.386bsd/sys/dkstat.h
 
cp /usr/src/sys.386bsd-22/sys/callout.h /usr/src/sys.386bsd/sys/callout.h
 
cp /usr/src/sys.386bsd-22/sys/exec.h /usr/src/sys.386bsd/sys/exec.h
 
cp /usr/src/sys.386bsd-22/sys/timeb.h /usr/src/sys.386bsd/sys/timeb.h
 
cp /usr/src/sys.386bsd-22/sys/times.h /usr/src/sys.386bsd/sys/times.h
 
 
 
did I need to?!
 
***cp /usr/src/sys.386bsd-22/kern/dead_vnops.c /usr/src/sys.386bsd/kern/dead_vnops.c
 
 
cp /usr/src/sys.386bsd-22/ufs/inode.h /usr/src/sys.386bsd/ufs/inode.h
 
cp /usr/src/sys.386bsd-22/ufs/dinode.h /usr/src/sys.386bsd/ufs/dinode.h
 
cp /usr/src/sys.386bsd-22/ufs/ufs_bmap.c /usr/src/sys.386bsd/ufs/ufs_bmap.c
 
cp /usr/src/sys.386bsd-22/ufs/ufs_disksubr.c /usr/src/sys.386bsd/ufs/ufs_disksubr.c
 
 
cp /usr/src/sys.386bsd-22/ufs/ufs_inode.c /usr/src/sys.386bsd/ufs/ufs_inode.c
 
cp /usr/src/sys.386bsd-22/ufs/ufs_vnops.c /usr/src/sys.386bsd/ufs/ufs_vnops.c
 
cp /usr/src/sys.386bsd-22/vm/device_pager.c /usr/src/sys.386bsd/vm
 
 
bare kernel should now makedepend.....
 
 
 
cp /usr/src/sys.386bsd-22/kern/init_main.c /usr/src/sys.386bsd/kern/init_main.c
 
cp /usr/src/sys.386bsd-22/kern/kern_acct.c /usr/src/sys.386bsd/kern/kern_acct.c
 
cp /usr/src/sys.386bsd-22/kern/kern_clock.c /usr/src/sys.386bsd/kern/kern_clock.c
 
cp /usr/src/sys.386bsd-22/kern/kern_descrip.c /usr/src/sys.386bsd/kern/kern_descrip.c
 
cp /usr/src/sys.386bsd-22/kern/kern_exit.c /usr/src/sys.386bsd/kern/kern_exit.c
 
cp /usr/src/sys.386bsd-22/kern/kern_fork.c /usr/src/sys.386bsd/kern/kern_fork.c
 
cp /usr/src/sys.386bsd-22/kern/kern_prot.c /usr/src/sys.386bsd/kern/kern_prot.c
 
cp /usr/src/sys.386bsd-22/kern/kern_resource.c /usr/src/sys.386bsd/kern/kern_resource.c
 
cp /usr/src/sys.386bsd-22/kern/kern_sig.c /usr/src/sys.386bsd/kern/kern_sig.c
 
cp /usr/src/sys.386bsd-22/kern/kern_subr.c /usr/src/sys.386bsd/kern/kern_subr.c
 
cp /usr/src/sys.386bsd-22/kern/kern_synch.c /usr/src/sys.386bsd/kern/kern_synch.c
 
cp /usr/src/sys.386bsd-22/kern/subr_prf.c /usr/src/sys.386bsd/kern/subr_prf.c
 
cp /usr/src/sys.386bsd-22/kern/sys_generic.c /usr/src/sys.386bsd/kern/sys_generic.c
 
cp /usr/src/sys.386bsd-22/kern/sys_process.c /usr/src/sys.386bsd/kern/sys_process.c
 
cp /usr/src/sys.386bsd-22/kern/tty.c /usr/src/sys.386bsd/kern/tty.c
 
cp /usr/src/sys.386bsd-22/kern/tty_conf.c /usr/src/sys.386bsd/kern/tty_conf.c
 
cp /usr/src/sys.386bsd-22/kern/vfs_lookup.c /usr/src/sys.386bsd/kern/vfs_lookup.c
 
cp /usr/src/sys.386bsd-22/kern/vfs_subr.c /usr/src/sys.386bsd/kern/vfs_subr.c
 
cp /usr/src/sys.386bsd-22/kern/vfs_syscalls.c /usr/src/sys.386bsd/kern/vfs_syscalls.c
 
cp /usr/src/sys.386bsd-22/kern/vfs_vnops.c /usr/src/sys.386bsd/kern/vfs_vnops.c
 
 
cp /usr/src/sys.386bsd-22/ufs/ufs_lookup.c /usr/src/sys.386bsd/ufs
 
cp /usr/src/sys.386bsd-22/ufs/dir.h /usr/src/sys.386bsd/ufs
 
cp /usr/src/sys.386bsd-22/ufs/ufs_vfsops.c /usr/src/sys.386bsd/ufs
 
 
 
../../kern/kern_xxx.c: In function getdomainname:
 
../../kern/kern_xxx.c:114: `domainnamelen' undeclared (first use this function)
 
../../kern/kern_xxx.c:114: (Each undeclared identifier is reported only once
 
../../kern/kern_xxx.c:114: for each function it appears in.)
 
../../kern/kern_xxx.c:116: `domainname' undeclared (first use this function)
 
../../kern/kern_xxx.c: In function setdomainname:
 
../../kern/kern_xxx.c:132: `domainname' undeclared (first use this function)
 
../../kern/kern_xxx.c:134: `domainnamelen' undeclared (first use this function)
 
/sys/sys/kernel.h add in there
 
char domainname[MAXHOSTNAMELEN];
 
int domainnamelen;
 
 
 
../../kern/subr_xxx.c: In function strlen:
 
../../kern/subr_xxx.c:202: argument `s1' doesn't match function prototype
 
*** Error code 1
 
#ifdef NEED_STRLEN
 
strlen(s1)
 
        const register char *s1;
 
{
 
changes into
 
char *s1;
 
 
 
 
cp /usr/src/sys.386bsd-22/i386/i386/conf.c /usr/src/sys.386bsd/arch/i386/i386/conf.c
 
  
these are not generating for some reason.....
+
export DESTDIR=/tmp
cp /usr/src/sys.386bsd-22/compile/J/dcfclk.h /usr/src/sys.386bsd/arch/compile/J
+
cp /usr/src/sys.386bsd-22/compile/J/speaker.h /usr/src/sys.386bsd/arch/compile/J
+
find ./ -name 'obj' -exec rm {} \;
branch # cat /usr/src/sys.386bsd-22/compile/J/speaker.h
 
#define NSPEAKER 0
 
branch # cat /usr/src/sys.386bsd-22/compile/J/dcfclk.h
 
#define NDCFCLK 0
 
  
 +
make obj
 +
make
 +
make install
  
without INET these bomb...
 
../../net/../netinet/if_ether.h:89: field `ac_ipaddr' has incomplete type
 
../../net/../netinet/if_ether.h:96: field `at_iaddr' has incomplete type
 
../../net/if_ethersubr.c: In function ether_output:
 
../../net/if_ethersubr.c:92: storage size of `idst' isn't known
 
  
 +
etc
 +
---
 +
make distribution
  
I needed to poach /sys/sys/select.h from NetBSD 0.9
 
then remoeve the selwakeup portion.
 
 
/sys/net/if.c  ether_output... isn't defined????
 
 
</pre>
 
</pre>
  
And a DMESG
+
I figure I'll leave the tgz's on a filesystem, boot with a floppy, rm -rf most of the file system, unpack, configure and go.
 
 
<pre>
 
386BSD 0.1 (GENERICISA) #2: Sun Dec  5 13:30:14 PST 2010
 
  root@branch.oldbsd.org:/usr/src/sys.386bsd/arch/compile/J
 
real mem  = 67104768
 
avail mem = 64663552
 
pc0 at 0x60-0x6f irq 1 on isa
 
pc0: color
 
wdc0 at 0x1f0-0x1f7 irq 14 on isa
 
wdc0: <QEMU HARDDISK>
 
wd0 at wdc0 slave 0
 
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
 
ne0 at 0x320 irq 10 on isa
 
ethernet address 52:54:00:12:34:56npx0 at 0xf0 irq 13 on isa
 
wdc0: extra interrupt
 
wdc0: extra interrupt
 
ISA strayintr 4004ff
 
ISA strayintr 4004ff
 
ISA strayintr 4004ff
 
ISA strayintr 2ff
 
ISA strayintr 2ff
 
ISA strayintr 2ff
 
ISA strayintr 2ff
 
ISA strayintr 2ff
 
ISA strayintr 2ff
 
ISA strayintr 2ff
 
Too many ISA strayintr not logging any more
 
</pre>
 

Revision as of 03:33, 6 December 2010

tty.c needs to cantain a bit more than "revision 1.4 intentionally removed" to compile a 0.8 kernel

The originals for these are missing in the tarball:

/netbsd-0.8/src/src/bin/df/df.c
/netbsd-0.8/src/src/include/ar.h
/netbsd-0.8/src/src/include/assert.h
/netbsd-0.8/src/src/include/ctype.h
/netbsd-0.8/src/src/include/grp.h
/netbsd-0.8/src/src/include/nlist.h
/netbsd-0.8/src/src/include/protocols/dumprestore.h
/netbsd-0.8/src/src/include/pwd.h
/netbsd-0.8/src/src/include/setjmp.h
/netbsd-0.8/src/src/include/time.h
/netbsd-0.8/src/src/include/utmp.h
/netbsd-0.8/src/src/lib/libc/gen/ctype_.c
/netbsd-0.8/src/src/lib/libc/gen/isctype.c
/netbsd-0.8/src/src/sbin/restore/dirs.c
/netbsd-0.8/src/src/sbin/restore/pathnames.h
/netbsd-0.8/src/src/sbin/restore/restore.h
/netbsd-0.8/src/src/sbin/restore/tape.c
/netbsd-0.8/src/src/sys/arch/i386/i386/conf.c
/netbsd-0.8/src/src/sys/conf/param.c
/netbsd-0.8/src/src/sys/kern/init_main.c
/netbsd-0.8/src/src/sys/kern/kern_acct.c
/netbsd-0.8/src/src/sys/kern/kern_clock.c
/netbsd-0.8/src/src/sys/kern/kern_descrip.c
/netbsd-0.8/src/src/sys/kern/kern_exit.c
/netbsd-0.8/src/src/sys/kern/kern_fork.c
/netbsd-0.8/src/src/sys/kern/kern_prot.c
/netbsd-0.8/src/src/sys/kern/kern_resource.c
/netbsd-0.8/src/src/sys/kern/kern_sig.c
/netbsd-0.8/src/src/sys/kern/kern_subr.c
/netbsd-0.8/src/src/sys/kern/kern_synch.c
/netbsd-0.8/src/src/sys/kern/subr_disk.c
/netbsd-0.8/src/src/sys/kern/subr_prf.c
/netbsd-0.8/src/src/sys/kern/sys_generic.c
/netbsd-0.8/src/src/sys/kern/sys_process.c
/netbsd-0.8/src/src/sys/kern/sysv_shm.c
/netbsd-0.8/src/src/sys/kern/tty.c
/netbsd-0.8/src/src/sys/kern/tty_conf.c
/netbsd-0.8/src/src/sys/kern/vfs_lookup.c
/netbsd-0.8/src/src/sys/kern/vfs_subr.c
/netbsd-0.8/src/src/sys/kern/vfs_syscalls.c
/netbsd-0.8/src/src/sys/kern/vfs_vnops.c
/netbsd-0.8/src/src/sys/sys/acct.h
/netbsd-0.8/src/src/sys/sys/buf.h
/netbsd-0.8/src/src/sys/sys/callout.h
/netbsd-0.8/src/src/sys/sys/conf.h
/netbsd-0.8/src/src/sys/sys/dkstat.h
/netbsd-0.8/src/src/sys/sys/errno.h
/netbsd-0.8/src/src/sys/sys/exec.h
/netbsd-0.8/src/src/sys/sys/fcntl.h
/netbsd-0.8/src/src/sys/sys/ioctl.h
/netbsd-0.8/src/src/sys/sys/ioctl_compat.h
/netbsd-0.8/src/src/sys/sys/ipc.h
/netbsd-0.8/src/src/sys/sys/kernel.h
/netbsd-0.8/src/src/sys/sys/param.h
/netbsd-0.8/src/src/sys/sys/proc.h
/netbsd-0.8/src/src/sys/sys/shm.h
/netbsd-0.8/src/src/sys/sys/signal.h
/netbsd-0.8/src/src/sys/sys/stat.h
/netbsd-0.8/src/src/sys/sys/systm.h
/netbsd-0.8/src/src/sys/sys/timeb.h
/netbsd-0.8/src/src/sys/sys/times.h
/netbsd-0.8/src/src/sys/sys/tty.h
/netbsd-0.8/src/src/sys/sys/ttydefaults.h
/netbsd-0.8/src/src/sys/sys/types.h
/netbsd-0.8/src/src/sys/ufs/dir.h
/netbsd-0.8/src/src/sys/ufs/ufs_lookup.c
/netbsd-0.8/src/src/sys/ufs/ufs_vfsops.c
/netbsd-0.8/src/src/usr.bin/m4/serv.c
/netbsd-0.8/src/src/usr.bin/mesg/mesg.c
/netbsd-0.8/src/src/usr.sbin/lpr/common_source/common.c
/netbsd-0.8/src/src/usr.sbin/lpr/lpr/lpr.c

Dugo 14:45, 2 December 2010 (UTC)

I've made way more progress.. now im making headway on re-making the install sets...

from my notes:


export DESTDIR=/tmp
 
find ./ -name 'obj' -exec rm {} \;

make obj
make
make install


etc
---
make distribution

I figure I'll leave the tgz's on a filesystem, boot with a floppy, rm -rf most of the file system, unpack, configure and go.