diff options
Diffstat (limited to 'sys/conf')
-rw-r--r-- | sys/conf/Makefile.i386 | 190 | ||||
-rw-r--r-- | sys/conf/Makefile.powerpc | 190 | ||||
-rw-r--r-- | sys/conf/NOTES | 197 | ||||
-rw-r--r-- | sys/conf/defines | 15 | ||||
-rw-r--r-- | sys/conf/files | 302 | ||||
-rw-r--r-- | sys/conf/files.i386 | 117 | ||||
-rw-r--r-- | sys/conf/files.newconf | 274 | ||||
-rw-r--r-- | sys/conf/newvers.sh | 48 | ||||
-rw-r--r-- | sys/conf/nfsswapvmunix.c | 152 | ||||
-rw-r--r-- | sys/conf/param.c | 146 | ||||
-rw-r--r-- | sys/conf/systags.sh | 72 |
11 files changed, 1703 insertions, 0 deletions
diff --git a/sys/conf/Makefile.i386 b/sys/conf/Makefile.i386 new file mode 100644 index 0000000..20d1ee9 --- /dev/null +++ b/sys/conf/Makefile.i386 @@ -0,0 +1,190 @@ +# Copyright 1990 W. Jolitz +# from: @(#)Makefile.i386 7.1 5/10/91 +# $Id: Makefile.i386,v 1.23 1994/03/21 20:48:47 ats Exp $ +# +# Makefile for FreeBSD +# +# This makefile is constructed from a machine description: +# config machineid +# Most changes should be made in the machine description +# /sys/i386/conf/``machineid'' +# after which you should do +# config machineid +# Generic makefile changes should be made in +# /sys/i386/conf/Makefile.i386 +# after which config should be rerun for all machines. +# +# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE INVISIBLE TO MAKEFILE +# IF YOU CHANGE THE DEFINITION OF ANY OF THESE RECOMPILE EVERYTHING +# +# -DTRACE compile in kernel tracing hooks +# -DQUOTA compile in file system quotas +# +TOUCH= touch -f -c +LD= /usr/bin/ld +CC= cc +CPP= cpp +STRIP= strip +DBSYM= /usr/sbin/dbsym + +S= ../.. +I386= ../../i386 + +CWARNFLAGS=-W -Wreturn-type -Wcomment +# +# The following flags are next up for working on: +# -Wredundant-decls -Wnested-externs +# +# When working on removing warnings from code, the `-Werror' flag should be +# of material assistance. +# +COPTFLAGS=-O +INCLUDES= -I. -I$S -I$S/sys +COPTS= ${INCLUDES} ${IDENT} -DKERNEL -Di386 -DNPX +ASFLAGS= +CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} +LOAD_ADDRESS?= F0100000 + +NORMAL_C= ${CC} -c ${CFLAGS} ${PROF} $< +NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} ${PARAM} $< +NORMAL_S= ${CPP} -I. -DLOCORE ${COPTS} $< | ${AS} ${ASFLAGS} -o $*.o +DRIVER_C= ${CC} -c ${CFLAGS} ${PROF} $< +DRIVER_C_C= ${CC} -c ${CFLAGS} ${PROF} ${PARAM} $< +SYSTEM_OBJS=locore.o exception.o swtch.o support.o ${OBJS} param.o \ + ioconf.o conf.o machdep.o vnode_if.o +SYSTEM_DEP=Makefile symbols.sort ${SYSTEM_OBJS} libkern.a +SYSTEM_LD_HEAD= @echo loading $@; rm -f $@ +SYSTEM_LD= @${LD} -Bstatic -Z -T ${LOAD_ADDRESS} -o $@ -X ${SYSTEM_OBJS} vers.o libkern.a +SYSTEM_LD_TAIL= @echo rearranging symbols; symorder symbols.sort $@; \ + ${DBSYM} -fT ${LOAD_ADDRESS} $@; ${STRIP} -x $@; size $@; chmod 755 $@ + +# (XXX) ok, this is weird. but we've got a working ed, and a broken ex, and +# the script is identical for either... -- cgd +# +GPROF.EX= /usr/src/lib/csu.i386/gprof.ex +PROFILE_C= ${CC} -S -c ${CFLAGS} $< ; \ + ed - $*.s < ${GPROF.EX} ; \ + ${AS} -o $@ $*.s ; \ + rm -f $*.s + +%OBJS + +%CFILES + +%LOAD + +libkern.a: + -@if [ X${PROF} = X ]; \ + then ln -s $S/libkern/obj/libkern.a libkern.a; \ + else ln -s $S/libkern/obj/libkern_p.a libkern.a; \ + fi; \ + echo ln -s $S/libkern/obj/libkern.a libkern.a + +clean: + rm -f eddep *kernel tags *.o locore.i [a-uw-z]*.s \ + errs linterrs makelinks genassym ,assym.s stamp-assym + +#lint: /tmp param.c +# @lint -hbxn -I. -DGENERIC -Dvolatile= ${COPTS} ${PARAM} \ +# ${I386}/i386/Locore.c ${CFILES} ioconf.c param.c | \ +# grep -v 'struct/union .* never defined' | \ +# grep -v 'possible pointer alignment problem' + +symbols.sort: ${I386}/i386/symbols.raw + grep -v '^#' ${I386}/i386/symbols.raw \ + | sed 's/^ //' | sort -u > symbols.sort + +locore.o: assym.s ${I386}/i386/locore.s machine/trap.h machine/psl.h \ + machine/pte.h ${I386}/isa/vector.s ${I386}/isa/icu.s \ + $S/sys/errno.h machine/specialreg.h \ + ${I386}/isa/icu.h ${I386}/isa/isa.h vector.h $S/net/netisr.h \ + machine/asmacros.h + ${CPP} -I. -DLOCORE ${COPTS} ${I386}/i386/locore.s | \ + ${AS} ${ASFLAGS} -o locore.o + +exception.o: assym.s ${I386}/i386/exception.s machine/trap.h \ + ${I386}/isa/vector.s ${I386}/isa/icu.s \ + $S/sys/errno.h ${I386}/isa/icu.h ${I386}/isa/isa.h vector.h \ + $S/net/netisr.h machine/asmacros.h + ${CPP} -I. -DLOCORE ${COPTS} ${I386}/i386/exception.s | \ + ${AS} ${ASFLAGS} -o exception.o + +swtch.o: assym.s ${I386}/i386/swtch.s \ + $S/sys/errno.h machine/asmacros.h + ${CPP} -I. ${COPTS} ${I386}/i386/swtch.s | \ + ${AS} ${ASFLAGS} -o swtch.o + +support.o: assym.s ${I386}/i386/support.s \ + $S/sys/errno.h machine/asmacros.h + ${CPP} -I. ${COPTS} ${I386}/i386/support.s | \ + ${AS} ${ASFLAGS} -o support.o + +machdep.o: ${I386}/i386/machdep.c Makefile + ${CC} -c ${CFLAGS} -DLOAD_ADDRESS=0x${LOAD_ADDRESS} ${PROF} $< + +# the following is necessary because autoconf.o depends on #if GENERIC +autoconf.o: Makefile + +# depend on network configuration +af.o uipc_proto.o locore.o: Makefile + +# depends on KDB (cons.o also depends on GENERIC) +trap.o cons.o: Makefile + +assym.s: genassym + ./genassym >,assym.s + if cmp -s assym.s ,assym.s; then \ + rm -f ,assym.s; \ + else \ + rm -f assym.s; \ + mv ,assym.s assym.s; \ + fi + +# Some of the defines that genassym outputs may well depend on the +# value of kernel options. +genassym: Makefile + ${CC} ${INCLUDES} -DKERNEL ${IDENT} ${PARAM} \ + ${I386}/i386/genassym.c -static -o genassym + +depend: assym.s param.c vnode_if.h + sh /usr/bin/mkdep -DLOAD_ADDRESS=0x${LOAD_ADDRESS} ${COPTS} ${CFILES} ioconf.c param.c ${I386}/i386/conf.c + sh /usr/bin/mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${I386}/i386/genassym.c + +links: + egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ + sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink + echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ + sort -u | comm -23 - dontlink | \ + sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks + sh makelinks && rm -f dontlink + +tags: + @echo "see $S/kern/Makefile for tags" + +ioconf.o: ioconf.c $S/sys/param.h machine/pte.h $S/sys/buf.h \ + ${I386}/isa/isa_device.h ${I386}/isa/isa.h ${I386}/isa/icu.h + ${CC} -c ${CFLAGS} ioconf.c + +conf.o: ${I386}/i386/conf.c $S/sys/conf.h + ${CC} -c ${CFLAGS} ${I386}/i386/conf.c + +param.c: $S/conf/param.c + -rm -f param.c + cp $S/conf/param.c . + +param.o: param.c Makefile + ${CC} -c ${CFLAGS} ${PARAM} param.c + +vers.o: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP} + sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT} + ${CC} ${CFLAGS} -c vers.c + +vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src + sh $S/kern/vnode_if.sh $S/kern/vnode_if.src +vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src + sh $S/kern/vnode_if.sh $S/kern/vnode_if.src + +%RULES + +# DO NOT DELETE THIS LINE -- make depend uses it + diff --git a/sys/conf/Makefile.powerpc b/sys/conf/Makefile.powerpc new file mode 100644 index 0000000..20d1ee9 --- /dev/null +++ b/sys/conf/Makefile.powerpc @@ -0,0 +1,190 @@ +# Copyright 1990 W. Jolitz +# from: @(#)Makefile.i386 7.1 5/10/91 +# $Id: Makefile.i386,v 1.23 1994/03/21 20:48:47 ats Exp $ +# +# Makefile for FreeBSD +# +# This makefile is constructed from a machine description: +# config machineid +# Most changes should be made in the machine description +# /sys/i386/conf/``machineid'' +# after which you should do +# config machineid +# Generic makefile changes should be made in +# /sys/i386/conf/Makefile.i386 +# after which config should be rerun for all machines. +# +# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE INVISIBLE TO MAKEFILE +# IF YOU CHANGE THE DEFINITION OF ANY OF THESE RECOMPILE EVERYTHING +# +# -DTRACE compile in kernel tracing hooks +# -DQUOTA compile in file system quotas +# +TOUCH= touch -f -c +LD= /usr/bin/ld +CC= cc +CPP= cpp +STRIP= strip +DBSYM= /usr/sbin/dbsym + +S= ../.. +I386= ../../i386 + +CWARNFLAGS=-W -Wreturn-type -Wcomment +# +# The following flags are next up for working on: +# -Wredundant-decls -Wnested-externs +# +# When working on removing warnings from code, the `-Werror' flag should be +# of material assistance. +# +COPTFLAGS=-O +INCLUDES= -I. -I$S -I$S/sys +COPTS= ${INCLUDES} ${IDENT} -DKERNEL -Di386 -DNPX +ASFLAGS= +CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} +LOAD_ADDRESS?= F0100000 + +NORMAL_C= ${CC} -c ${CFLAGS} ${PROF} $< +NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} ${PARAM} $< +NORMAL_S= ${CPP} -I. -DLOCORE ${COPTS} $< | ${AS} ${ASFLAGS} -o $*.o +DRIVER_C= ${CC} -c ${CFLAGS} ${PROF} $< +DRIVER_C_C= ${CC} -c ${CFLAGS} ${PROF} ${PARAM} $< +SYSTEM_OBJS=locore.o exception.o swtch.o support.o ${OBJS} param.o \ + ioconf.o conf.o machdep.o vnode_if.o +SYSTEM_DEP=Makefile symbols.sort ${SYSTEM_OBJS} libkern.a +SYSTEM_LD_HEAD= @echo loading $@; rm -f $@ +SYSTEM_LD= @${LD} -Bstatic -Z -T ${LOAD_ADDRESS} -o $@ -X ${SYSTEM_OBJS} vers.o libkern.a +SYSTEM_LD_TAIL= @echo rearranging symbols; symorder symbols.sort $@; \ + ${DBSYM} -fT ${LOAD_ADDRESS} $@; ${STRIP} -x $@; size $@; chmod 755 $@ + +# (XXX) ok, this is weird. but we've got a working ed, and a broken ex, and +# the script is identical for either... -- cgd +# +GPROF.EX= /usr/src/lib/csu.i386/gprof.ex +PROFILE_C= ${CC} -S -c ${CFLAGS} $< ; \ + ed - $*.s < ${GPROF.EX} ; \ + ${AS} -o $@ $*.s ; \ + rm -f $*.s + +%OBJS + +%CFILES + +%LOAD + +libkern.a: + -@if [ X${PROF} = X ]; \ + then ln -s $S/libkern/obj/libkern.a libkern.a; \ + else ln -s $S/libkern/obj/libkern_p.a libkern.a; \ + fi; \ + echo ln -s $S/libkern/obj/libkern.a libkern.a + +clean: + rm -f eddep *kernel tags *.o locore.i [a-uw-z]*.s \ + errs linterrs makelinks genassym ,assym.s stamp-assym + +#lint: /tmp param.c +# @lint -hbxn -I. -DGENERIC -Dvolatile= ${COPTS} ${PARAM} \ +# ${I386}/i386/Locore.c ${CFILES} ioconf.c param.c | \ +# grep -v 'struct/union .* never defined' | \ +# grep -v 'possible pointer alignment problem' + +symbols.sort: ${I386}/i386/symbols.raw + grep -v '^#' ${I386}/i386/symbols.raw \ + | sed 's/^ //' | sort -u > symbols.sort + +locore.o: assym.s ${I386}/i386/locore.s machine/trap.h machine/psl.h \ + machine/pte.h ${I386}/isa/vector.s ${I386}/isa/icu.s \ + $S/sys/errno.h machine/specialreg.h \ + ${I386}/isa/icu.h ${I386}/isa/isa.h vector.h $S/net/netisr.h \ + machine/asmacros.h + ${CPP} -I. -DLOCORE ${COPTS} ${I386}/i386/locore.s | \ + ${AS} ${ASFLAGS} -o locore.o + +exception.o: assym.s ${I386}/i386/exception.s machine/trap.h \ + ${I386}/isa/vector.s ${I386}/isa/icu.s \ + $S/sys/errno.h ${I386}/isa/icu.h ${I386}/isa/isa.h vector.h \ + $S/net/netisr.h machine/asmacros.h + ${CPP} -I. -DLOCORE ${COPTS} ${I386}/i386/exception.s | \ + ${AS} ${ASFLAGS} -o exception.o + +swtch.o: assym.s ${I386}/i386/swtch.s \ + $S/sys/errno.h machine/asmacros.h + ${CPP} -I. ${COPTS} ${I386}/i386/swtch.s | \ + ${AS} ${ASFLAGS} -o swtch.o + +support.o: assym.s ${I386}/i386/support.s \ + $S/sys/errno.h machine/asmacros.h + ${CPP} -I. ${COPTS} ${I386}/i386/support.s | \ + ${AS} ${ASFLAGS} -o support.o + +machdep.o: ${I386}/i386/machdep.c Makefile + ${CC} -c ${CFLAGS} -DLOAD_ADDRESS=0x${LOAD_ADDRESS} ${PROF} $< + +# the following is necessary because autoconf.o depends on #if GENERIC +autoconf.o: Makefile + +# depend on network configuration +af.o uipc_proto.o locore.o: Makefile + +# depends on KDB (cons.o also depends on GENERIC) +trap.o cons.o: Makefile + +assym.s: genassym + ./genassym >,assym.s + if cmp -s assym.s ,assym.s; then \ + rm -f ,assym.s; \ + else \ + rm -f assym.s; \ + mv ,assym.s assym.s; \ + fi + +# Some of the defines that genassym outputs may well depend on the +# value of kernel options. +genassym: Makefile + ${CC} ${INCLUDES} -DKERNEL ${IDENT} ${PARAM} \ + ${I386}/i386/genassym.c -static -o genassym + +depend: assym.s param.c vnode_if.h + sh /usr/bin/mkdep -DLOAD_ADDRESS=0x${LOAD_ADDRESS} ${COPTS} ${CFILES} ioconf.c param.c ${I386}/i386/conf.c + sh /usr/bin/mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${I386}/i386/genassym.c + +links: + egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ + sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink + echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ + sort -u | comm -23 - dontlink | \ + sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks + sh makelinks && rm -f dontlink + +tags: + @echo "see $S/kern/Makefile for tags" + +ioconf.o: ioconf.c $S/sys/param.h machine/pte.h $S/sys/buf.h \ + ${I386}/isa/isa_device.h ${I386}/isa/isa.h ${I386}/isa/icu.h + ${CC} -c ${CFLAGS} ioconf.c + +conf.o: ${I386}/i386/conf.c $S/sys/conf.h + ${CC} -c ${CFLAGS} ${I386}/i386/conf.c + +param.c: $S/conf/param.c + -rm -f param.c + cp $S/conf/param.c . + +param.o: param.c Makefile + ${CC} -c ${CFLAGS} ${PARAM} param.c + +vers.o: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP} + sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT} + ${CC} ${CFLAGS} -c vers.c + +vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src + sh $S/kern/vnode_if.sh $S/kern/vnode_if.src +vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src + sh $S/kern/vnode_if.sh $S/kern/vnode_if.src + +%RULES + +# DO NOT DELETE THIS LINE -- make depend uses it + diff --git a/sys/conf/NOTES b/sys/conf/NOTES new file mode 100644 index 0000000..90c79b8 --- /dev/null +++ b/sys/conf/NOTES @@ -0,0 +1,197 @@ +# +# LINT -- config file for checking all the sources, tries to pull in +# as much of the source tree as it can. +# +# This kernel is NOT MEANT to be runnable! +# +# $Id: LINT,v 1.70 1994/05/17 23:20:32 jkh Exp $ +# + +machine "i386" +cpu "I386_CPU" +cpu "I486_CPU" +ident LINT +timezone 8 dst +maxusers 10 +maxfdescs 2048 #Max file descriptors per process +options MATH_EMULATE #Support for x87 emulation + +# Do not use in binary distributions +#options GPL_MATH_EMULATE #Support for x87 emualtion via + #new math emulator + +config "386bsd" root on wd0 swap on wd0 and sd0 dumps on wd0 + +# +# options that appear as inline #ifdef's +# +options "COM_BIDIR" #Bidirectional support in sys/isa/sio.c +options "COM_MULTIPORT" #Multiport support in sys/isa/sio.c +options "FIFO_TRIGGER=FIFO_TRIGGER_1" #Use this fifo value in sio.c + +options "COMPAT_43" #compatible with BSD 4.3 +options "SYMTAB_SPACE=113498" #This kernel needs LOTS of symtable +options GATEWAY #internetwork gateway +options KTRACE #kernel tracing + +options "NCONS=8" #number of syscons virtual consoles +options "FAT_CURSOR" #block cursor in syscons or pccons +options "STAR_SAVER" #syscons "stars" screen saver +options "FADE_SAVER" #syscons "fade" screen saver +options "SNAKE_SAVER" #syscons "snake" screen saver +options "BLANK_SAVER" #syscons "blank" screen saver + +#options ALLOW_CONFLICT_IOADDR #no IO addr conflict checks (PS/2 mice) +#options ALLOW_CONFLICT_IRQ #no IRQ conflict checks (mport serial) + +options "TCP_COMPAT_42" #tcp/ip compatible with 4.2 + # ^^^ NOT RECOMMENDED FOR NORMAL USE +options UCONSOLE #x console support +options XSERVER #xserver +options DECBIT #here because clnp.h wanted it here + #support for CLNP ``congestion + #experienced'' bit in ISO-TP +options TROLL #CLNP network error simulator +options ICMPPRINTFS #ICMP packet dump by printf() +options NSERRPRINTFS #ditto for XNS Error protocol + #^^above three NOT RECOMMENTED +options FASTLINKS #support for fast symbolic links +options MACHVMCOMPAT #support for Mach-style vm calls +options IPBROADCASTECHO=1 #send reply to broadcast pings +options IPMASKAGENT=1 #send reply to icmp mask requests +options TPCONS #support X.25 network-layer service +options USER_LDT #allow user-level control of i386 ldt + +# See /sys/i386/doc/sound.doc for information about EXCLUDE options for +# the sound drivers. + +# Multicast support. +options MULTICAST # Multicast code +options MROUTING # Multicast routing + +# +# options that are in sys/conf/files +# +pseudo-device bpfilter 4 #berkeley packet filter +options CCITT +device cd0 #Only need one of these, the code dynamically grows +device ch0 +pseudo-device ddb +pseudo-device devpager +options EON +pseudo-device ether +options FIFO +#pseudo-device imp +options INET #Internet communications protocols +options ISO +options ISOFS #ISO 9660 File System +pseudo-device loop +options MFS #Memory File System +options NFS #Network File System +options NS #Xerox NS communications protocols +options NSIP #XNS over IP +options PCFS #PC (MSDOS) File System +pseudo-device ppp 2 +pseudo-device pty 4 +options QUOTA #enable disk quotas +options RMP #HP remote maint protocol +controller scbus0 +device sd0 +device sd1 +device sd2 +device sd3 +pseudo-device sl 2 +device st0 +device st1 +pseudo-device swappager +options SYSVSHM +options "SHMMAXPGS=64" # 256Kb of sharable memory +options SYSVSEM +options SYSVMSG +#pseudo-device tb #tablet line discipline. +options TPIP # ISO TP class 4 over IP +#pseudo-device tun +device uk0 #unknown scsi devices +pseudo-device vnodepager + +# +# options that are in sys/i386/conf/files.i386 +# +#This is needed here so the isa? below will work +controller isa0 + +# driver for the Adaptec 154x SCSI cards. +controller aha0 at isa? port "IO_AHA0" bio irq 11 drq 5 vector ahaintr +# driver for the Adaptec 174x SCSI cards. +controller ahb0 at isa? bio irq 11 vector ahbintr +# driver for the Bustek 742. +controller bt0 at isa? port "IO_BT0" bio irq 12 vector btintr +# driver for the Seagate ST01/ST02 card, not yet finished. +#controller sg0 at isa? bio irq 5 iomem 0xc8000 iosiz 0x2000 vector sgintr +controller fdc0 at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr +disk fd0 at fdc0 drive 0 +disk fd1 at fdc0 drive 1 +tape ft0 at fdc0 drive 2 + +# driver for the Western Digital and SMCC WD80xx cards, for the Novell +# NE1000/2000 card and the 3COM 3C503 card. +device ed0 at isa? port 0x280 net irq 5 iomem 0xd8000 vector edintr +# driver for the AT&T Starlan card. +device ie0 at isa? port 0x360 net irq 7 iomem 0xd0000 vector ieintr +#driver for the Isolan AT 4114-0 and the Isolink 4110 ethernet card. +device is0 at isa? port 0x280 net irq 10 drq 7 vector isintr +#device ix0 at isa? port 0x320 net irq 10 iomem 0xd0000 iosiz 32768 vector ixintr +# driver for the Etherlink III ( 3C509 ) card, beta version. +device ep0 at isa? port 0x300 net irq 10 vector epintr +#driver for the 3c501 +device el0 at isa? port 0x300 net irq 9 vector elintr + +#special cased above: +#controller isa0 +# interruptless parallel printer port driver +device lpa0 at isa? port "IO_LPT1" tty +device lpa1 at isa? port "IO_LPT2" tty +# interrupt driven parallel printer port driver +device lpt0 at isa? port "IO_LPT3" tty irq 7 vector lptintr +# Driver for Mitsumi CD-ROM players +device mcd0 at isa? port 0x300 bio irq 10 vector mcdintr +# Driver for Logitech and ATI inport bus mice +device mse0 at isa? port 0x23c tty irq 5 vector mseintr +device npx0 at isa? port "IO_NPX" irq 13 vector npxintr +device pc0 at isa? port "IO_KBD" tty irq 1 vector pcrint +#only one of pc0 or sc0 allowed +#device sc0 at isa? port "IO_KBD" tty irq 1 vector scintr +device sio0 at isa? port "IO_COM1" tty irq 4 vector siointr +device sio1 at isa? port "IO_COM2" tty irq 3 vector siointr +device sio2 at isa? port "IO_COM3" tty irq 5 vector siointr +device sio3 at isa? port "IO_COM4" tty irq 9 vector siointr +#PS/2 mouse driver (must follow pc0 or sc0 if enabled). Also enable +#ALLOW_CONFLICT_IOADDR option (see above) if you want to use this. +#device psm0 at isa? port "IO_KBD" tty irq 12 vector psmintr + +pseudo-device speaker +#tw device-driver +controller uha0 at isa? port "IO_UHA0" bio irq 14 drq 5 vector uhaintr +controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr +disk wd0 at wdc0 drive 0 +disk wd1 at wdc0 drive 1 +controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr +disk wd2 at wdc1 drive 0 +disk wd3 at wdc1 drive 1 +device wt0 at isa? port 0x300 bio irq 5 drq 1 vector wtintr + +# Various sound card drivers. +# See /sys/doc/sound.doc for more information. +device snd5 at isa? port 0x330 irq 6 vector mpuintr +device snd4 at isa? port 0x220 irq 15 drq 6 vector gusintr +device snd3 at isa? port 0x388 irq 10 drq 6 vector pasintr +device snd2 at isa? port 0x220 irq 7 drq 1 vector sbintr +device snd6 at isa? port 0x220 irq 7 drq 5 vector sbintr +device snd7 at isa? port 0x300 +device snd1 at isa? port 0x388 + +# The digital speaker driver (/dev/pcaudio). +device pca0 at isa? tty + +# options that have not been resolved yet +pseudo-device log diff --git a/sys/conf/defines b/sys/conf/defines new file mode 100644 index 0000000..ea70463 --- /dev/null +++ b/sys/conf/defines @@ -0,0 +1,15 @@ +/:#if.*[ \t]*KPROF/d +/:#if.*[ \t]*PGINPROF/d +/:#if.*[ \t]*UNFAST/d +/:#if.*[ \t]*INSECURE/d +/:#if.*[ \t]*TRACE/d +/:#if.*[ \t]*DISKMON/d +/:#if.*[ \t]*INTRLVE/d +/:#if.*[ \t]*lint/d +/:#if.*[ \t]*notdef/d +/:#if.*[ \t]*unneeded/d +/:#if.*[ \t]*vax/d +/:#if.*[ \t]*TCPTRUEOOB/d +/:#if.*[ \t]*irele/d +/:#if.*[ \t]*ilock/d +/:#if.*[ \t]*notyet/d diff --git a/sys/conf/files b/sys/conf/files new file mode 100644 index 0000000..c62ea0f --- /dev/null +++ b/sys/conf/files @@ -0,0 +1,302 @@ +ddb/db_access.c optional ddb +ddb/db_aout.c optional ddb +ddb/db_break.c optional ddb +ddb/db_command.c optional ddb +ddb/db_examine.c optional ddb +ddb/db_expr.c optional ddb +ddb/db_input.c optional ddb +ddb/db_lex.c optional ddb +ddb/db_output.c optional ddb +ddb/db_print.c optional ddb +ddb/db_run.c optional ddb +ddb/db_sym.c optional ddb +ddb/db_trap.c optional ddb +ddb/db_variables.c optional ddb +ddb/db_watch.c optional ddb +ddb/db_write_cmd.c optional ddb +isofs/cd9660/cd9660_bmap.c optional cd9660 +isofs/cd9660/cd9660_lookup.c optional cd9660 +isofs/cd9660/cd9660_node.c optional cd9660 +isofs/cd9660/cd9660_rrip.c optional cd9660 +isofs/cd9660/cd9660_util.c optional cd9660 +isofs/cd9660/cd9660_vfsops.c optional cd9660 +isofs/cd9660/cd9660_vnops.c optional cd9660 +kdb/kdb_access.c optional kadb +kdb/kdb_command.c optional kadb +kdb/kdb_ctype.c optional kadb +kdb/kdb_expr.c optional kadb +kdb/kdb_format.c optional kadb +kdb/kdb_input.c optional kadb +kdb/kdb_message.c optional kadb +kdb/kdb_output.c optional kadb +kdb/kdb_pcs.c optional kadb +kdb/kdb_print.c optional kadb +kdb/kdb_runpcs.c optional kadb +kdb/kdb_sym.c optional kadb +kdb/kdb_trap.c optional kadb +kern/imgact_aout.c standard +kern/imgact_shell.c standard +kern/init_main.c standard +kern/init_sysent.c standard +kern/kern_acct.c standard +kern/kern_clock.c standard +kern/kern_descrip.c standard +kern/kern_exec.c standard +kern/kern_exit.c standard +kern/kern_fork.c standard +kern/kern_ktrace.c standard +kern/kern_malloc.c standard +kern/kern_physio.c standard +kern/kern_proc.c standard +kern/kern_prot.c standard +kern/kern_resource.c standard +kern/kern_sig.c standard +kern/kern_subr.c standard +kern/kern_synch.c standard +kern/kern_sysctl.c standard +kern/kern_time.c standard +kern/kern_xxx.c standard +kern/subr_log.c standard +kern/subr_prf.c standard +kern/subr_prof.c standard +kern/subr_rlist.c standard +kern/subr_rmap.c standard +kern/subr_xxx.c standard +kern/sys_generic.c standard +kern/sys_process.c standard +kern/sys_socket.c standard +kern/sysv_shm.c optional sysvshm +kern/tty.c standard +kern/tty_compat.c standard +kern/tty_conf.c standard +kern/tty_pty.c optional pty +kern/tty_subr.c standard +kern/tty_tb.c optional tb +kern/tty_tty.c standard +kern/uipc_domain.c standard +kern/uipc_mbuf.c standard +kern/uipc_proto.c standard +kern/uipc_socket.c standard +kern/uipc_socket2.c standard +kern/uipc_syscalls.c standard +kern/uipc_usrreq.c standard +kern/vfs_bio.c standard +kern/vfs_cache.c standard +kern/vfs_cluster.c standard +kern/vfs_conf.c standard +kern/vfs_init.c standard +kern/vfs_lookup.c standard +kern/vfs_subr.c standard +kern/vfs_syscalls.c standard +kern/vfs_vnops.c standard +miscfs/deadfs/dead_vnops.c standard +miscfs/fdesc/fdesc_vfsops.c optional fdesc +miscfs/fdesc/fdesc_vnops.c optional fdesc +miscfs/fifofs/fifo_vnops.c optional fifo +miscfs/kernfs/kernfs_vfsops.c optional kernfs +miscfs/kernfs/kernfs_vnops.c optional kernfs +miscfs/nullfs/null_subr.c optional nullfs +miscfs/nullfs/null_vfsops.c optional nullfs +miscfs/nullfs/null_vnops.c optional nullfs +miscfs/portal/portal_vfsops.c optional portal +miscfs/portal/portal_vnops.c optional portal +miscfs/procfs/procfs_subr.c optional procfs +miscfs/procfs/procfs_vnops.c optional procfs +miscfs/procfs/procfs_vfsops.c optional procfs +miscfs/procfs/procfs_note.c optional procfs +miscfs/procfs/procfs_mem.c optional procfs +miscfs/procfs/procfs_ctl.c optional procfs +miscfs/procfs/procfs_status.c optional procfs +miscfs/procfs/procfs_regs.c optional procfs +miscfs/procfs/procfs_fpregs.c optional procfs +miscfs/specfs/spec_vnops.c standard +miscfs/umapfs/umap_subr.c optional umapfs +miscfs/umapfs/umap_vfsops.c optional umapfs +miscfs/umapfs/umap_vnops.c optional umapfs +miscfs/union/union_subr.c optional union +miscfs/union/union_vfsops.c optional union +miscfs/union/union_vnops.c optional union +net/bpf.c optional bpfilter +net/bpf_filter.c optional bpfilter +net/if.c standard +net/if_ethersubr.c optional ether +net/if_loop.c optional loop +net/if_sl.c optional sl +net/radix.c standard +net/raw_cb.c standard +net/raw_usrreq.c standard +net/route.c standard +net/rtsock.c standard +net/slcompress.c optional sl +netccitt/ccitt_proto.c optional ccitt +netccitt/llc_input.c optional llc +netccitt/llc_output.c optional llc +netccitt/llc_subr.c optional llc +netccitt/llc_timer.c optional llc +netccitt/pk_llcsubr.c optional llc +netccitt/pk_llcsubr.c optional hdlc +netccitt/hd_debug.c optional hdlc +netccitt/hd_input.c optional hdlc +netccitt/hd_output.c optional hdlc +netccitt/hd_subr.c optional hdlc +netccitt/hd_timer.c optional hdlc +netccitt/if_x25subr.c optional ccitt +netccitt/pk_acct.c optional ccitt +netccitt/pk_debug.c optional ccitt +netccitt/pk_input.c optional ccitt +netccitt/pk_output.c optional ccitt +netccitt/pk_subr.c optional ccitt +netccitt/pk_timer.c optional ccitt +netccitt/pk_usrreq.c optional ccitt +netimp/if_imp.c optional imp +netimp/if_imphost.c optional imp +netimp/raw_imp.c optional imp +netinet/if_ether.c optional ether +netinet/igmp.c optional inet +netinet/in.c optional inet +netinet/in_pcb.c optional inet +netinet/in_proto.c optional inet +netinet/ip_icmp.c optional inet +netinet/ip_input.c optional inet +netinet/ip_mroute.c optional inet mrouting +netinet/ip_output.c optional inet +netinet/raw_ip.c optional inet +netinet/tcp_debug.c optional inet +netinet/tcp_input.c optional inet +netinet/tcp_output.c optional inet +netinet/tcp_subr.c optional inet +netinet/tcp_timer.c optional inet +netinet/tcp_usrreq.c optional inet +netinet/udp_usrreq.c optional inet +netiso/clnp_debug.c optional iso +netiso/clnp_er.c optional iso +netiso/clnp_frag.c optional iso +netiso/clnp_input.c optional iso +netiso/clnp_options.c optional iso +netiso/clnp_output.c optional iso +netiso/clnp_raw.c optional iso +netiso/clnp_subr.c optional iso +netiso/clnp_timer.c optional iso +netiso/cltp_usrreq.c optional iso +netiso/esis.c optional iso +netiso/idrp_usrreq.c optional iso +netiso/if_eon.c optional eon +netiso/iso.c optional iso +netiso/iso_chksum.c optional iso +netiso/iso_pcb.c optional iso +netiso/iso_proto.c optional iso +netiso/iso_snpac.c optional iso +netiso/tp_astring.c optional iso +netiso/tp_astring.c optional tpip +netiso/tp_cons.c optional iso +netiso/tp_driver.c optional iso +netiso/tp_driver.c optional tpip +netiso/tp_emit.c optional iso +netiso/tp_emit.c optional tpip +netiso/tp_inet.c optional iso +netiso/tp_inet.c optional tpip +netiso/tp_input.c optional iso +netiso/tp_input.c optional tpip +netiso/tp_iso.c optional iso +netiso/tp_meas.c optional iso +netiso/tp_meas.c optional tpip +netiso/tp_output.c optional iso +netiso/tp_output.c optional tpip +netiso/tp_pcb.c optional iso +netiso/tp_pcb.c optional tpip +netiso/tp_subr.c optional iso +netiso/tp_subr.c optional tpip +netiso/tp_subr2.c optional iso +netiso/tp_subr2.c optional tpip +netiso/tp_timer.c optional iso +netiso/tp_timer.c optional tpip +netiso/tp_trace.c optional iso +netiso/tp_trace.c optional tpip +netiso/tp_usrreq.c optional iso +netiso/tp_usrreq.c optional tpip +netiso/tuba_subr.c optional iso tuba +netiso/tuba_table.c optional iso tuba +netiso/tuba_usrreq.c optional iso tuba +netns/idp_usrreq.c optional ns +netns/ns.c optional ns +netns/ns_error.c optional ns +netns/ns_input.c optional ns +netns/ns_ip.c optional ns +netns/ns_output.c optional ns +netns/ns_pcb.c optional ns +netns/ns_proto.c optional ns +netns/spp_debug.c optional ns +netns/spp_usrreq.c optional ns +nfs/nfs_bio.c optional nfs +nfs/nfs_node.c optional nfs +nfs/nfs_nqlease.c optional nfs +nfs/nfs_serv.c optional nfs +nfs/nfs_socket.c optional nfs +nfs/nfs_srvcache.c optional nfs +nfs/nfs_subs.c optional nfs +nfs/nfs_syscalls.c optional nfs +nfs/nfs_vfsops.c optional nfs +nfs/nfs_vnops.c optional nfs +scsi/cd.c optional cd +scsi/ch.c optional ch +scsi/scsiconf.c optional scbus +scsi/scsi_base.c optional scbus +scsi/scsi_ioctl.c optional scbus +scsi/sd.c optional sd +scsi/st.c optional st +scsi/su.c optional su +scsi/uk.c optional uk +ufs/ffs/ffs_alloc.c optional ffs +ufs/ffs/ffs_alloc.c optional mfs +ufs/ffs/ffs_balloc.c optional ffs +ufs/ffs/ffs_balloc.c optional mfs +ufs/ffs/ffs_inode.c optional ffs +ufs/ffs/ffs_inode.c optional mfs +ufs/ffs/ffs_subr.c optional ffs +ufs/ffs/ffs_subr.c optional mfs +ufs/ffs/ffs_tables.c optional ffs +ufs/ffs/ffs_tables.c optional mfs +ufs/ffs/ffs_vfsops.c optional ffs +ufs/ffs/ffs_vfsops.c optional mfs +ufs/ffs/ffs_vnops.c optional ffs +ufs/ffs/ffs_vnops.c optional mfs +ufs/lfs/lfs_alloc.c optional lfs +ufs/lfs/lfs_bio.c optional lfs +ufs/lfs/lfs_balloc.c optional lfs +ufs/lfs/lfs_cksum.c optional lfs +ufs/lfs/lfs_debug.c optional lfs +ufs/lfs/lfs_inode.c optional lfs +ufs/lfs/lfs_segment.c optional lfs +ufs/lfs/lfs_subr.c optional lfs +ufs/lfs/lfs_syscalls.c optional lfs +ufs/lfs/lfs_vfsops.c optional lfs +ufs/lfs/lfs_vnops.c optional lfs +ufs/mfs/mfs_vfsops.c optional mfs +ufs/mfs/mfs_vnops.c optional mfs +ufs/ufs/ufs_bmap.c standard +ufs/ufs/ufs_disksubr.c standard +ufs/ufs/ufs_ihash.c standard +ufs/ufs/ufs_inode.c standard +ufs/ufs/ufs_lockf.c standard +ufs/ufs/ufs_lookup.c standard +ufs/ufs/ufs_quota.c standard +ufs/ufs/ufs_vfsops.c standard +ufs/ufs/ufs_vnops.c standard +vm/device_pager.c standard +vm/kern_lock.c standard +vm/swap_pager.c standard +vm/vm_fault.c standard +vm/vm_glue.c standard +vm/vm_init.c standard +vm/vm_kern.c standard +vm/vm_map.c standard +vm/vm_meter.c standard +vm/vm_mmap.c standard +vm/vm_object.c standard +vm/vm_page.c standard +vm/vm_pageout.c standard +vm/vm_pager.c standard +vm/vm_swap.c standard +vm/vm_unix.c standard +vm/vm_user.c standard +vm/vnode_pager.c standard diff --git a/sys/conf/files.i386 b/sys/conf/files.i386 new file mode 100644 index 0000000..f70e799 --- /dev/null +++ b/sys/conf/files.i386 @@ -0,0 +1,117 @@ +# This file tells config what files go into building a kernel, +# files marked standard are always included. +# +# $Id: files.i386,v 1.32 1994/04/29 21:49:02 gclarkii Exp $ +# +i386/i386/autoconf.c standard device-driver +i386/i386/cons.c standard +i386/i386/db_disasm.c optional ddb +i386/i386/db_interface.c optional ddb +i386/i386/db_trace.c optional ddb +i386/i386/in_cksum.c optional inet +i386/i386/math_emulate.c optional math_emulate +i386/i386/mem.c standard +i386/i386/microtime.s standard +i386/i386/ns_cksum.c optional ns +i386/i386/pmap.c standard +i386/i386/procfs_machdep.c optional procfs +i386/i386/sys_machdep.c standard +i386/i386/trap.c standard +i386/i386/vm_machdep.c standard +i386/isa/aha1542.c optional aha device-driver +i386/isa/aha1742.c optional ahb device-driver +i386/isa/bt742a.c optional bt device-driver +i386/isa/clock.c standard +i386/isa/com.c optional com device-driver +i386/isa/fd.c optional fd device-driver +i386/isa/ft.c optional ft device-driver +i386/isa/if_ed.c optional ed device-driver +i386/isa/if_el.c optional el device-driver +i386/isa/if_ep.c optional ep device-driver +i386/isa/if_ie.c optional ie device-driver +i386/isa/if_is.c optional is device-driver +i386/isa/if_ix.c optional ix device-driver +i386/isa/isa.c optional isa device-driver +i386/isa/lpa.c optional lpa device-driver +i386/isa/lpt.c optional lpt device-driver +i386/isa/mcd.c optional mcd device-driver +i386/isa/mse.c optional mse device-driver +i386/isa/npx.c optional npx device-driver +i386/isa/syscons.c optional sc device-driver +i386/isa/pccons.c optional pc device-driver +i386/isa/pcaudio.c optional pca device-driver +i386/isa/psm.c optional psm device-driver +i386/isa/sb.c optional sb device-driver +i386/isa/scd.c optional scd device-driver +i386/isa/sg.c optional sg device-driver +i386/isa/sio.c optional sio device-driver +i386/isa/sound/adlib_card.c optional snd device-driver +i386/isa/sound/audio.c optional snd device-driver +i386/isa/sound/dev_table.c optional snd device-driver +i386/isa/sound/dmabuf.c optional snd device-driver +i386/isa/sound/gus_card.c optional snd device-driver +i386/isa/sound/gus_midi.c optional snd device-driver +i386/isa/sound/gus_vol.c optional snd device-driver +i386/isa/sound/gus_wave.c optional snd device-driver +i386/isa/sound/ics2101.c optional snd device-driver +i386/isa/sound/midi.c optional snd device-driver +i386/isa/sound/midibuf.c optional snd device-driver +i386/isa/sound/mpu401.c optional snd device-driver +i386/isa/sound/opl3.c optional snd device-driver +i386/isa/sound/pas2_card.c optional snd device-driver +i386/isa/sound/pas2_midi.c optional snd device-driver +i386/isa/sound/pas2_mixer.c optional snd device-driver +i386/isa/sound/pas2_pcm.c optional snd device-driver +i386/isa/sound/patmgr.c optional snd device-driver +i386/isa/sound/pro_midi.c optional snd device-driver +i386/isa/sound/sb16_dsp.c optional snd device-driver +i386/isa/sound/sb16_midi.c optional snd device-driver +i386/isa/sound/sb_card.c optional snd device-driver +i386/isa/sound/sb_dsp.c optional snd device-driver +i386/isa/sound/sb_midi.c optional snd device-driver +i386/isa/sound/sb_mixer.c optional snd device-driver +i386/isa/sound/sequencer.c optional snd device-driver +i386/isa/sound/sound_switch.c optional snd device-driver +i386/isa/sound/soundcard.c optional snd device-driver +i386/isa/spkr.c optional speaker +i386/isa/tw.c optional tw device-driver +i386/isa/ultra14f.c optional uha device-driver +i386/isa/wd.c optional wd device-driver +i386/isa/wt.c optional wt device-driver +i386/isa/pcvt/pcvt_drv.c optional vt device-driver +i386/isa/pcvt/pcvt_sup.c optional vt device-driver +i386/isa/pcvt/pcvt_out.c optional vt device-driver +i386/isa/pcvt/pcvt_kbd.c optional vt device-driver +i386/isa/pcvt/pcvt_vtf.c optional vt device-driver +i386/isa/pcvt/pcvt_ext.c optional vt device-driver +gnu/fpemul/div_small.s optional gpl_math_emulate +gnu/fpemul/errors.c optional gpl_math_emulate +gnu/fpemul/fpu_arith.c optional gpl_math_emulate +gnu/fpemul/fpu_aux.c optional gpl_math_emulate +gnu/fpemul/fpu_entry.c optional gpl_math_emulate +gnu/fpemul/fpu_etc.c optional gpl_math_emulate +gnu/fpemul/fpu_trig.c optional gpl_math_emulate +gnu/fpemul/get_address.c optional gpl_math_emulate +gnu/fpemul/load_store.c optional gpl_math_emulate +gnu/fpemul/poly_2xm1.c optional gpl_math_emulate +gnu/fpemul/poly_atan.c optional gpl_math_emulate +gnu/fpemul/poly_div.s optional gpl_math_emulate +gnu/fpemul/poly_l2.c optional gpl_math_emulate +gnu/fpemul/poly_mul64.s optional gpl_math_emulate +gnu/fpemul/poly_sin.c optional gpl_math_emulate +gnu/fpemul/poly_tan.c optional gpl_math_emulate +gnu/fpemul/polynomial.s optional gpl_math_emulate +gnu/fpemul/reg_add_sub.c optional gpl_math_emulate +gnu/fpemul/reg_compare.c optional gpl_math_emulate +gnu/fpemul/reg_constant.c optional gpl_math_emulate +gnu/fpemul/reg_div.s optional gpl_math_emulate +gnu/fpemul/reg_ld_str.c optional gpl_math_emulate +gnu/fpemul/reg_mul.c optional gpl_math_emulate +gnu/fpemul/reg_norm.s optional gpl_math_emulate +gnu/fpemul/reg_round.s optional gpl_math_emulate +gnu/fpemul/reg_u_add.s optional gpl_math_emulate +gnu/fpemul/reg_u_div.s optional gpl_math_emulate +gnu/fpemul/reg_u_mul.s optional gpl_math_emulate +gnu/fpemul/reg_u_sub.s optional gpl_math_emulate +gnu/fpemul/wm_shrx.s optional gpl_math_emulate +gnu/fpemul/wm_sqrt.s optional gpl_math_emulate diff --git a/sys/conf/files.newconf b/sys/conf/files.newconf new file mode 100644 index 0000000..7b0907a --- /dev/null +++ b/sys/conf/files.newconf @@ -0,0 +1,274 @@ +# @(#)files.newconf 8.9 (Berkeley) 3/31/94 + +# generic attributes +define disk +define tape +define ifnet +define tty + +# net device attributes - we have generic code for ether. +# we should have imp but right now it is a pseudo-device. +define ether +# define imp +pseudo-device imp + +# scsi driver and associated stuff +define scsi { target = -1 } +device tg at scsi { drive = -1 } +file dev/scsi/scsi_subr.c scsi + +device sd at tg: disk +file dev/scsi/sd.c sd needs-flag + +# device st at tg: tape -- not yet + +# legitimate pseudo-devices +pseudo-device bpfilter +pseudo-device cd: disk +pseudo-device loop +pseudo-device pty: tty +pseudo-device sl +pseudo-device vn: disk + +# kernel sources +file isofs/cd9660/isofs_bmap.c isofs +file isofs/cd9660/isofs_lookup.c isofs +file isofs/cd9660/isofs_node.c isofs +file isofs/cd9660/isofs_rrip.c isofs +file isofs/cd9660/isofs_util.c isofs +file isofs/cd9660/isofs_vfsops.c isofs +file isofs/cd9660/isofs_vnops.c isofs +file kern/init_main.c +file kern/init_sysent.c +file kern/kern_acct.c +file kern/kern_clock.c +file kern/kern_descrip.c +file kern/kern_exec.c +file kern/kern_exit.c +file kern/kern_fork.c +file kern/kern_ktrace.c ktrace +file kern/kern_malloc.c +file kern/kern_physio.c +file kern/kern_proc.c +file kern/kern_prot.c +file kern/kern_resource.c +file kern/kern_sig.c +file kern/kern_subr.c +file kern/kern_synch.c +file kern/kern_sysctl.c +file kern/kern_time.c +file kern/kern_xxx.c +file kern/subr_autoconf.c +file kern/subr_log.c +file kern/subr_prf.c +file kern/subr_prof.c +file kern/subr_rmap.c +file kern/subr_xxx.c +file kern/sys_generic.c +file kern/sys_process.c +file kern/sys_socket.c +file kern/sysv_shm.c sysvshm +file kern/tty.c +file kern/tty_compat.c +file kern/tty_conf.c +file kern/tty_pty.c pty needs-count +file kern/tty_subr.c +file kern/tty_tb.c tb needs-flag +file kern/tty_tty.c +file kern/uipc_domain.c +file kern/uipc_mbuf.c +file kern/uipc_proto.c +file kern/uipc_socket.c +file kern/uipc_socket2.c +file kern/uipc_syscalls.c +file kern/uipc_usrreq.c +file kern/vfs_bio.c +file kern/vfs_cache.c +file kern/vfs_cluster.c +file kern/vfs_conf.c +file kern/vfs_init.c +file kern/vfs_lookup.c +file kern/vfs_subr.c +file kern/vfs_syscalls.c +file kern/vfs_vnops.c +file miscfs/deadfs/dead_vnops.c +file miscfs/fdesc/fdesc_vfsops.c fdesc +file miscfs/fdesc/fdesc_vnops.c fdesc +file miscfs/fifofs/fifo_vnops.c fifo +file miscfs/kernfs/kernfs_vfsops.c kernfs +file miscfs/kernfs/kernfs_vnops.c kernfs +file miscfs/nullfs/null_subr.c nullfs +file miscfs/nullfs/null_vfsops.c nullfs +file miscfs/nullfs/null_vnops.c nullfs +file miscfs/portal/portal_vfsops.c portal +file miscfs/portal/portal_vnops.c portal +file miscfs/procfs/procfs_subr.c procfs +file miscfs/procfs/procfs_vnops.c procfs +file miscfs/procfs/procfs_vfsops.c procfs +file miscfs/procfs/procfs_note.c procfs +file miscfs/procfs/procfs_mem.c procfs +file miscfs/procfs/procfs_ctl.c procfs +file miscfs/procfs/procfs_status.c procfs +file miscfs/procfs/procfs_regs.c procfs +file miscfs/procfs/procfs_fpregs.c procfs +file miscfs/specfs/spec_vnops.c +file miscfs/umapfs/umap_subr.c umapfs +file miscfs/umapfs/umap_vfsops.c umapfs +file miscfs/umapfs/umap_vnops.c umapfs +file miscfs/union/union_subr.c union +file miscfs/union/union_vfsops.c union +file miscfs/union/union_vnops.c union +file net/bpf.c bpfilter needs-count +file net/bpf_filter.c bpfilter needs-count +file net/if.c +file net/if_ethersubr.c ether needs-flag +file net/if_loop.c loop needs-count +file net/if_sl.c sl needs-count +file net/radix.c +file net/raw_cb.c +file net/raw_usrreq.c +file net/route.c +file net/rtsock.c +file net/slcompress.c sl +file netccitt/ccitt_proto.c ccitt +file netccitt/llc_input.c llc +file netccitt/llc_output.c llc +file netccitt/llc_subr.c llc +file netccitt/llc_timer.c llc +file netccitt/hd_debug.c hdlc +file netccitt/hd_input.c hdlc +file netccitt/hd_output.c hdlc +file netccitt/hd_subr.c hdlc +file netccitt/hd_timer.c hdlc +file netccitt/if_x25subr.c ccitt +file netccitt/pk_acct.c ccitt +file netccitt/pk_debug.c ccitt +file netccitt/pk_input.c ccitt +file netccitt/pk_llcsubr.c llc hdlc +file netccitt/pk_output.c ccitt +file netccitt/pk_subr.c ccitt +file netccitt/pk_timer.c ccitt +file netccitt/pk_usrreq.c ccitt +file netimp/if_imp.c imp needs-count +file netimp/if_imphost.c imp needs-count +file netimp/raw_imp.c imp +file netinet/if_ether.c ether +file netinet/igmp.c inet +file netinet/in.c inet +file netinet/in_pcb.c inet +file netinet/in_proto.c inet +file netinet/ip_icmp.c inet +file netinet/ip_input.c inet +file netinet/ip_mroute.c inet +file netinet/ip_output.c inet +file netinet/raw_ip.c inet +file netinet/tcp_debug.c inet +file netinet/tcp_input.c inet +file netinet/tcp_output.c inet +file netinet/tcp_subr.c inet +file netinet/tcp_timer.c inet +file netinet/tcp_usrreq.c inet +file netinet/udp_usrreq.c inet +file netiso/clnp_debug.c iso +file netiso/clnp_er.c iso +file netiso/clnp_frag.c iso +file netiso/clnp_input.c iso +file netiso/clnp_options.c iso +file netiso/clnp_output.c iso +file netiso/clnp_raw.c iso +file netiso/clnp_subr.c iso +file netiso/clnp_timer.c iso +file netiso/cltp_usrreq.c iso +file netiso/esis.c iso +file netiso/if_eon.c eon +file netiso/idrp_usrreq.c iso +file netiso/iso.c iso +file netiso/iso_chksum.c iso +file netiso/iso_pcb.c iso +file netiso/iso_proto.c iso +file netiso/iso_snpac.c iso +file netiso/tp_astring.c iso tpip +file netiso/tp_cons.c iso +file netiso/tp_driver.c iso tpip +file netiso/tp_emit.c iso tpip +file netiso/tp_inet.c iso tpip +file netiso/tp_input.c iso tpip +file netiso/tp_iso.c iso +file netiso/tp_meas.c iso tpip +file netiso/tp_output.c iso tpip +file netiso/tp_pcb.c iso tpip +file netiso/tp_subr.c iso tpip +file netiso/tp_subr2.c iso tpip +file netiso/tp_timer.c iso tpip +file netiso/tp_trace.c iso tpip +file netiso/tp_usrreq.c iso tpip +file netiso/tuba_subr.c iso tuba +file netiso/tuba_table.c iso tuba +file netiso/tuba_usrreq.c iso tuba +file netns/idp_usrreq.c ns +file netns/ns.c ns +file netns/ns_error.c ns +file netns/ns_input.c ns +file netns/ns_ip.c ns +file netns/ns_output.c ns +file netns/ns_pcb.c ns +file netns/ns_proto.c ns +file netns/spp_debug.c ns +file netns/spp_usrreq.c ns +file nfs/nfs_bio.c nfs +file nfs/nfs_node.c nfs +file nfs/nfs_nqlease.c nfs +file nfs/nfs_serv.c nfs +file nfs/nfs_socket.c nfs +file nfs/nfs_srvcache.c nfs +file nfs/nfs_subs.c nfs +file nfs/nfs_syscalls.c nfs +file nfs/nfs_vfsops.c nfs +file nfs/nfs_vnops.c nfs +file ufs/ffs/ffs_alloc.c ffs mfs +file ufs/ffs/ffs_balloc.c ffs mfs +file ufs/ffs/ffs_inode.c ffs mfs +file ufs/ffs/ffs_subr.c ffs mfs +file ufs/ffs/ffs_tables.c ffs mfs +file ufs/ffs/ffs_vfsops.c ffs mfs +file ufs/ffs/ffs_vnops.c ffs mfs +file ufs/lfs/lfs_alloc.c lfs +file ufs/lfs/lfs_bio.c lfs +file ufs/lfs/lfs_balloc.c lfs +file ufs/lfs/lfs_cksum.c lfs +file ufs/lfs/lfs_debug.c lfs +file ufs/lfs/lfs_inode.c lfs +file ufs/lfs/lfs_segment.c lfs +file ufs/lfs/lfs_subr.c lfs +file ufs/lfs/lfs_syscalls.c lfs +file ufs/lfs/lfs_vfsops.c lfs +file ufs/lfs/lfs_vnops.c lfs +file ufs/mfs/mfs_vfsops.c mfs +file ufs/mfs/mfs_vnops.c mfs +file ufs/ufs/ufs_bmap.c ffs lfs mfs +file ufs/ufs/ufs_disksubr.c ffs lfs mfs +file ufs/ufs/ufs_ihash.c ffs lfs mfs +file ufs/ufs/ufs_inode.c ffs lfs mfs +file ufs/ufs/ufs_lockf.c ffs lfs mfs +file ufs/ufs/ufs_lookup.c ffs lfs mfs +file ufs/ufs/ufs_quota.c ffs lfs mfs +file ufs/ufs/ufs_vfsops.c ffs lfs mfs +file ufs/ufs/ufs_vnops.c ffs lfs mfs +file vm/device_pager.c devpager +file vm/kern_lock.c +file vm/swap_pager.c swappager +file vm/vm_fault.c +file vm/vm_glue.c +file vm/vm_init.c +file vm/vm_kern.c +file vm/vm_map.c +file vm/vm_meter.c +file vm/vm_mmap.c +file vm/vm_object.c +file vm/vm_page.c +file vm/vm_pageout.c +file vm/vm_pager.c +file vm/vm_swap.c +file vm/vm_unix.c +file vm/vm_user.c +file vm/vnode_pager.c vnodepager diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh new file mode 100644 index 0000000..03fdc25 --- /dev/null +++ b/sys/conf/newvers.sh @@ -0,0 +1,48 @@ +#!/bin/sh - +# +# Copyright (c) 1984, 1986, 1990, 1993 +# The Regents of the University of California. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by the University of +# California, Berkeley and its contributors. +# 4. Neither the name of the University nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# @(#)newvers.sh 8.1 (Berkeley) 4/20/94 + +if [ ! -r version ] +then + echo 0 > version +fi + +touch version +v=`cat version` u=${USER-root} d=`pwd` h=`hostname` t=`date` +echo "char ostype[] = \"FreeBSD\";" > vers.c +echo "char osrelease[] = \"2.0.0 (Development)\";" >> vers.c +echo "char sccs[4] = { '@', '(', '#', ')' };" >>vers.c +echo "char version[] = \"FreeBSD 2.0.0 (Development) #${v}: ${t}\\n ${u}@${h}:${d}\\n\";" >>vers.c + +echo `expr ${v} + 1` > version diff --git a/sys/conf/nfsswapvmunix.c b/sys/conf/nfsswapvmunix.c new file mode 100644 index 0000000..f9812eb --- /dev/null +++ b/sys/conf/nfsswapvmunix.c @@ -0,0 +1,152 @@ +/* + * Copyright (c) 1991, 1993 + * The Regents of the University of California. All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Rick Macklem at The University of Guelph. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)nfsswapvmunix.c 8.1 (Berkeley) 6/10/93 + */ + +/* + * Sample NFS swapvmunix configuration file. + * This should be filled in by the bootstrap program. + * See /sys/nfs/nfsdiskless.h for details of the fields. + */ + +#include <sys/param.h> +#include <sys/conf.h> +#include <sys/socket.h> +#include <sys/mount.h> + +#include <net/if.h> +#include <nfs/nfsv2.h> +#include <nfs/nfsdiskless.h> + +extern int nfs_mountroot(); +int (*mountroot)() = nfs_mountroot; + +dev_t rootdev = NODEV; +dev_t argdev = NODEV; +dev_t dumpdev = NODEV; + +struct swdevt swdevt[] = { + { NODEV, 0, 5000 }, /* happy:/u/swap.dopey */ + { 0, 0, 0 } +}; +struct nfs_diskless nfs_diskless = { + { { 'q', 'e', '0', '\0' }, + { 0x10, 0x2, { 0x0, 0x0, 0x83, 0x68, 0x30, 0x2, } }, + { 0x10, 0x2, { 0x0, 0x0, 0x83, 0x68, 0x30, 0xff, } }, + { 0x10, 0x0, { 0x0, 0x0, 0xff, 0xff, 0xff, 0x0, } }, + }, + { 0x10, 0x2, { 0x0, 0x0, 0x83, 0x68, 0x30, 0x12, } }, + { + (struct sockaddr *)0, SOCK_DGRAM, 0, (nfsv2fh_t *)0, + 0, 8192, 8192, 10, 100, (char *)0, + }, + { + 0xf, + 0x9, + 0x0, + 0x0, + 0x1, + 0x0, + 0x0, + 0x0, + 0xc, + 0x0, + 0x0, + 0x0, + 0x6, + 0x0, + 0x0, + 0x0, + 0x27, + 0x18, + 0x79, + 0x27, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + }, + { 0x10, 0x2, { 0x8, 0x1, 0x83, 0x68, 0x30, 0x5, } }, + "happy", + { + (struct sockaddr *)0, SOCK_DGRAM, 0, (nfsv2fh_t *)0, + 0, 8192, 8192, 10, 100, (char *)0, + }, + { + 0x0, + 0x9, + 0x0, + 0x0, + 0x1, + 0x0, + 0x0, + 0x0, + 0xc, + 0x0, + 0x0, + 0x0, + 0x2, + 0x0, + 0x0, + 0x0, + 0xd0, + 0x48, + 0x42, + 0x25, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + 0x0, + }, + { 0x10, 0x2, { 0x8, 0x1, 0x83, 0x68, 0x30, 0x5, } }, + "happy", +}; diff --git a/sys/conf/param.c b/sys/conf/param.c new file mode 100644 index 0000000..c871594 --- /dev/null +++ b/sys/conf/param.c @@ -0,0 +1,146 @@ +/* + * Copyright (c) 1980, 1986, 1989, 1993 + * The Regents of the University of California. All rights reserved. + * (c) UNIX System Laboratories, Inc. + * All or some portions of this file are derived from material licensed + * to the University of California by American Telephone and Telegraph + * Co. or Unix System Laboratories, Inc. and are reproduced herein with + * the permission of UNIX System Laboratories, Inc. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)param.c 8.2 (Berkeley) 1/21/94 + */ + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/socket.h> +#include <sys/proc.h> +#include <sys/vnode.h> +#include <sys/file.h> +#include <sys/callout.h> +#include <sys/clist.h> +#include <sys/mbuf.h> +#include <sys/kernel.h> + +#include <ufs/ufs/quota.h> + +#ifdef SYSVSHM +#include <machine/vmparam.h> +#include <sys/shm.h> +#endif + +/* + * System parameter formulae. + * + * This file is copied into each directory where we compile + * the kernel; it should be modified there to suit local taste + * if necessary. + * + * Compiled with -DHZ=xx -DTIMEZONE=x -DDST=x -DMAXUSERS=xx + */ + +#ifndef HZ +#define HZ 100 +#endif +int hz = HZ; +int tick = 1000000 / HZ; +int tickadj = 30000 / (60 * HZ); /* can adjust 30ms in 60s */ +struct timezone tz = { TIMEZONE, DST }; +#define NPROC (20 + 16 * MAXUSERS) +int maxproc = NPROC; +#define NTEXT NPROC +int vm_cache_max = NTEXT/2 + 16; +#define NVNODE (NPROC + NTEXT + 100) +int desiredvnodes = NVNODE; +int maxfiles = 3 * (NPROC + MAXUSERS) + 80; +int ncallout = 16 + NPROC; +int nclist = 60 + 12 * MAXUSERS; +int nmbclusters = NMBCLUSTERS; +int fscale = FSCALE; /* kernel uses `FSCALE', user uses `fscale' */ + +/* + * Values in support of System V compatible shared memory. XXX + */ +#ifdef SYSVSHM +#define SHMMAX (SHMMAXPGS*NBPG) +#define SHMMIN 1 +#define SHMMNI 32 /* <= SHMMMNI in shm.h */ +#define SHMSEG 8 +#define SHMALL (SHMMAXPGS/CLSIZE) + +struct shminfo shminfo = { + SHMMAX, + SHMMIN, + SHMMNI, + SHMSEG, + SHMALL +}; +#endif + +/* + * These are initialized at bootstrap time + * to values dependent on memory size + */ +int nbuf, nswbuf; + +/* + * These have to be allocated somewhere; allocating + * them here forces loader errors if this file is omitted + * (if they've been externed everywhere else; hah!). + */ +struct callout *callout; +struct cblock *cfree; +struct buf *buf, *swbuf; +char *buffers; + +/* + * Proc/pgrp hashing. + * Here so that hash table sizes can depend on MAXUSERS/NPROC. + * Hash size must be a power of two. + * NOW omission of this file will cause loader errors! + */ + +#if NPROC > 1024 +#define PIDHSZ 512 +#else +#if NPROC > 512 +#define PIDHSZ 256 +#else +#if NPROC > 256 +#define PIDHSZ 128 +#else +#define PIDHSZ 64 +#endif +#endif +#endif + +struct proc *pidhash[PIDHSZ]; +struct pgrp *pgrphash[PIDHSZ]; +int pidhashmask = PIDHSZ - 1; diff --git a/sys/conf/systags.sh b/sys/conf/systags.sh new file mode 100644 index 0000000..90714d7 --- /dev/null +++ b/sys/conf/systags.sh @@ -0,0 +1,72 @@ +#! /bin/sh +# +# Copyright (c) 1992, 1993 +# The Regents of the University of California. All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by the University of +# California, Berkeley and its contributors. +# 4. Neither the name of the University nor the names of its contributors +# may be used to endorse or promote products derived from this software +# without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# @(#)systags.sh 8.1 (Berkeley) 6/10/93 +# +# systags.sh - construct a system tags file using dependence relations +# in a .depend file +# +# First written May 16, 1992 by Van Jacobson, Lawrence Berkeley Laboratory. +# +# from: $Header: systags.sh,v 1.7 92/07/12 08:18:21 torek Exp $ + +rm -f tags tags.tmp tags.cfiles tags.sfiles tags.hfiles +MACHINE=`machine` +sed -e "s,\./machine/,../../$MACHINE/include/,g" \ + -e 's,[a-z][^/ ]*/\.\./,,g' .depend | awk '{ + for (i = 1; i <= NF; ++i) { + t = substr($i, length($i) - 1) + if (t == ".c") + cfiles[$i] = 1; + else if (t == ".h") + hfiles[$i] = 1; + else if (t == ".s") + sfiles[$i] = 1; + } + }; + END { + for (i in cfiles) + print i > "tags.cfiles"; + for (i in sfiles) + print i > "tags.sfiles"; + for (i in hfiles) + print i > "tags.hfiles"; + }' + +ctags -t -d -w `cat tags.cfiles tags.hfiles tags.sfiles` +egrep -o "^ENTRY\(.*\)|^ALTENTRY\(.*\)" `cat tags.sfiles` | \ + sed "s;\([^:]*\):\([^(]*\)(\([^, )]*\)\(.*\);\3 \1 /^\2(\3\4$/;" >> tags + +mv tags tags.tmp +sort -u tags.tmp > tags +rm tags.tmp tags.cfiles tags.sfiles tags.hfiles |