freebsd-dev/sys/conf/files.i386
Bill Paul c854fc1092 Commit the first cut of Project Evil, also known as the NDISulator.
Yes, it's what you think it is. Yes, you should run away now.

This is a special compatibility module for allowing Windows NDIS
miniport network drivers to be used with FreeBSD/x86. This provides
_binary_ NDIS compatibility (not source): you can run NDIS driver
code, but you can't build it. There are three main parts:

sys/compat/ndis: the NDIS compat API, which provides binary
compatibility functions for many routines in NDIS.SYS, HAL.dll
and ntoskrnl.exe in Windows (these are the three modules that
most NDIS miniport drivers use). The compat module also contains
a small PE relocator/dynalinker which relocates the Windows .SYS
image and then patches in our native routines.

sys/dev/if_ndis: the if_ndis driver wrapper. This module makes
use of the ndis compat API and can be compiled with a specially
prepared binary image file (ndis_driver_data.h) containing the
Windows .SYS image and registry key information parsed out of the
accompanying .INF file. Once if_ndis.ko is built, it can be loaded
and unloaded just like a native FreeBSD kenrel module.

usr.sbin/ndiscvt: a special utility that converts foo.sys and foo.inf
into an ndis_driver_data.h file that can be compiled into if_ndis.o.
Contains an .inf file parser graciously provided by Matt Dodd (and
mercilessly hacked upon by me) that strips out device ID info and
registry key info from a .INF file and packages it up with a binary
image array. The ndiscvt(8) utility also does some manipulation of
the segments within the .sys file to make life easier for the kernel
loader. (Doing the manipulation here saves the kernel code from having
to move things around later, which would waste memory.)

ndiscvt is only built for the i386 arch. Only files.i386 has been
updated, and none of this is turned on in GENERIC. It should probably
work on pc98. I have no idea about amd64 or ia64 at this point.

This is still a work in progress. I estimate it's about %85 done, but
I want it under CVS control so I can track subsequent changes. It has
been tested with exactly three drivers: the LinkSys LNE100TX v4 driver
(Lne100v4.sys), the sample Intel 82559 driver from the Windows DDK
(e100bex.sys) and the Broadcom BCM43xx wireless driver (bcmwl5.sys). It
still needs to have a net80211 stuff added to it. To use it, you would
do something like this:

# cd /sys/modules/ndis
# make; make load
# cd /sys/modules/if_ndis
# ndiscvt -i /path/to/foo.inf -s /path/to/foo.sys -o ndis_driver_data.h
# make; make load
# sysctl -a | grep ndis

All registry keys are mapped to sysctl nodes. Sometimes drivers refer
to registry keys that aren't mentioned in foo.inf. If this happens,
the NDIS API module creates sysctl nodes for these keys on the fly so
you can tweak them.

An example usage of the Broadcom wireless driver would be:

# sysctl hw.ndis0.EnableAutoConnect=1
# sysctl hw.ndis0.SSID="MY_SSID"
# sysctl hw.ndis0.NetworkType=0 (0 for bss, 1 for adhoc)
# ifconfig ndis0 <my ipaddr> netmask 0xffffff00 up

Things to be done:

- get rid of debug messages
- add in ndis80211 support
- defer transmissions until after a status update with
  NDIS_STATUS_CONNECTED occurs
- Create smarter lookaside list support
- Split off if_ndis_pci.c and if_ndis_pccard.c attachments
- Make sure PCMCIA support works
- Fix ndiscvt to properly parse PCMCIA device IDs from INF files
- write ndisapi.9 man page
2003-12-11 22:34:37 +00:00

411 lines
16 KiB
Plaintext

# This file tells config what files go into building a kernel,
# files marked standard are always included.
#
# $FreeBSD$
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
# dependency lines other than the first are silently ignored.
#
linux_genassym.o optional compat_linux \
dependency "$S/i386/linux/linux_genassym.c" \
compile-with "${CC} ${CFLAGS:N-fno-common} -c ${.IMPSRC}" \
no-obj no-implicit-rule \
clean "linux_genassym.o"
#
linux_assym.h optional compat_linux \
dependency "$S/kern/genassym.sh linux_genassym.o" \
compile-with "sh $S/kern/genassym.sh linux_genassym.o > ${.TARGET}" \
no-obj no-implicit-rule before-depend \
clean "linux_assym.h"
#
svr4_genassym.o optional compat_svr4 \
dependency "$S/i386/svr4/svr4_genassym.c" \
compile-with "${CC} ${CFLAGS:N-fno-common} -c ${.IMPSRC}" \
no-obj no-implicit-rule \
clean "svr4_genassym.o"
#
svr4_assym.h optional compat_svr4 \
dependency "$S/kern/genassym.sh svr4_genassym.o" \
compile-with "sh $S/kern/genassym.sh svr4_genassym.o > ${.TARGET}" \
no-obj no-implicit-rule before-depend \
clean "svr4_assym.h"
#
font.h optional sc_dflt_font \
compile-with "uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x16.fnt && file2c 'static u_char dflt_font_16[16*256] = {' '};' < ${SC_DFLT_FONT}-8x16 > font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x14.fnt && file2c 'static u_char dflt_font_14[14*256] = {' '};' < ${SC_DFLT_FONT}-8x14 >> font.h && uudecode < /usr/share/syscons/fonts/${SC_DFLT_FONT}-8x8.fnt && file2c 'static u_char dflt_font_8[8*256] = {' '};' < ${SC_DFLT_FONT}-8x8 >> font.h" \
no-obj no-implicit-rule before-depend \
clean "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 ${SC_DFLT_FONT}-8x8"
#
atkbdmap.h optional atkbd_dflt_keymap \
compile-with "/usr/sbin/kbdcontrol -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h" \
no-obj no-implicit-rule before-depend \
clean "atkbdmap.h"
#
ukbdmap.h optional ukbd_dflt_keymap \
compile-with "/usr/sbin/kbdcontrol -L ${UKBD_DFLT_KEYMAP} | sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /' > ukbdmap.h" \
no-obj no-implicit-rule before-depend \
clean "ukbdmap.h"
#
msysosak.o optional fla \
dependency "$S/contrib/dev/fla/i386/msysosak.o.uu" \
compile-with "uudecode < $S/contrib/dev/fla/i386/msysosak.o.uu" \
no-implicit-rule
#
trlld.o optional oltr \
dependency "$S/contrib/dev/oltr/i386-elf.trlld.o.uu" \
compile-with "uudecode < $S/contrib/dev/oltr/i386-elf.trlld.o.uu" \
no-implicit-rule
#
hal.o optional ath_hal \
dependency "$S/contrib/dev/ath/freebsd/i386-elf.hal.o.uu" \
compile-with "uudecode < $S/contrib/dev/ath/freebsd/i386-elf.hal.o.uu" \
no-implicit-rule
#
#
compat/linux/linux_file.c optional compat_linux
compat/linux/linux_getcwd.c optional compat_linux
compat/linux/linux_ioctl.c optional compat_linux
compat/linux/linux_ipc.c optional compat_linux
compat/linux/linux_mib.c optional compat_linux
compat/linux/linux_misc.c optional compat_linux
compat/linux/linux_signal.c optional compat_linux
compat/linux/linux_socket.c optional compat_linux
compat/linux/linux_stats.c optional compat_linux
compat/linux/linux_sysctl.c optional compat_linux
compat/linux/linux_uid16.c optional compat_linux
compat/linux/linux_util.c optional compat_linux
compat/ndis/kern_ndis.c optional ndisapi pci pccard
compat/ndis/subr_hal.c optional ndisapi pci pccard
compat/ndis/subr_ndis.c optional ndisapi pci pccard
compat/ndis/subr_ntoskrnl.c optional ndisapi pci pccard
compat/ndis/subr_pe.c optional ndisapi pci pccard
compat/pecoff/imgact_pecoff.c optional pecoff_support
compat/svr4/imgact_svr4.c optional compat_svr4
compat/svr4/svr4_fcntl.c optional compat_svr4
compat/svr4/svr4_filio.c optional compat_svr4
compat/svr4/svr4_ioctl.c optional compat_svr4
compat/svr4/svr4_ipc.c optional compat_svr4
compat/svr4/svr4_misc.c optional compat_svr4
compat/svr4/svr4_resource.c optional compat_svr4
compat/svr4/svr4_signal.c optional compat_svr4
compat/svr4/svr4_socket.c optional compat_svr4
compat/svr4/svr4_sockio.c optional compat_svr4
compat/svr4/svr4_stat.c optional compat_svr4
compat/svr4/svr4_stream.c optional compat_svr4
compat/svr4/svr4_syscallnames.c optional compat_svr4
compat/svr4/svr4_sysent.c optional compat_svr4
compat/svr4/svr4_sysvec.c optional compat_svr4
compat/svr4/svr4_termios.c optional compat_svr4
compat/svr4/svr4_ttold.c optional compat_svr4
contrib/dev/fla/fla.c optional fla
contrib/dev/oltr/if_oltr.c optional oltr
contrib/dev/oltr/trlldbm.c optional oltr
contrib/dev/oltr/trlldhm.c optional oltr
contrib/dev/oltr/trlldmac.c optional oltr
bf_enc.o optional ipsec ipsec_esp \
dependency "$S/crypto/blowfish/arch/i386/bf_enc.S $S/crypto/blowfish/arch/i386/bf_enc_586.S $S/crypto/blowfish/arch/i386/bf_enc_686.S" \
compile-with "${CC} -c -I$S/crypto/blowfish/arch/i386 ${ASM_CFLAGS} ${WERROR} ${.IMPSRC}" \
no-implicit-rule
crypto/des/arch/i386/des_enc.S optional ipsec ipsec_esp
crypto/des/des_ecb.c optional netsmbcrypto
crypto/des/arch/i386/des_enc.S optional netsmbcrypto
crypto/des/des_setkey.c optional netsmbcrypto
bf_enc.o optional crypto \
dependency "$S/crypto/blowfish/arch/i386/bf_enc.S $S/crypto/blowfish/arch/i386/bf_enc_586.S $S/crypto/blowfish/arch/i386/bf_enc_686.S" \
compile-with "${CC} -c -I$S/crypto/blowfish/arch/i386 ${ASM_CFLAGS} ${WERROR} ${.IMPSRC}" \
no-implicit-rule
crypto/des/arch/i386/des_enc.S optional crypto
crypto/des/des_ecb.c optional crypto
crypto/des/des_setkey.c optional crypto
dev/advansys/adv_isa.c optional adv isa
dev/aic/aic_isa.c optional aic isa
dev/ar/if_ar.c optional ar
dev/ar/if_ar_pci.c optional ar pci
dev/ar/if_ar_isa.c optional ar isa
dev/cm/if_cm_isa.c optional cm isa
dev/cx/csigma.c optional cx
dev/cx/cxddk.c optional cx
dev/cx/if_cx.c optional cx
dev/ed/if_ed_isa.c optional ed isa
dev/fb/fb.c optional fb
dev/fb/fb.c optional vga
dev/fb/splash.c optional splash
dev/fb/vga.c optional vga
dev/fe/if_fe_isa.c optional fe isa
dev/if_ndis/if_ndis.c optional ndis pci pccard
dev/kbd/atkbd.c optional atkbd
dev/kbd/atkbdc.c optional atkbdc
dev/kbd/kbd.c optional atkbd
dev/kbd/kbd.c optional kbd
dev/kbd/kbd.c optional sc
dev/kbd/kbd.c optional ukbd
dev/kbd/kbd.c optional vt
dev/lnc/if_lnc_isa.c optional lnc isa
dev/ppc/ppc.c optional ppc
dev/ppc/ppc_puc.c optional ppc puc pci
dev/sbni/if_sbni.c optional sbni
dev/sbni/if_sbni_isa.c optional sbni isa
dev/sbni/if_sbni_pci.c optional sbni pci
dev/sio/sio.c optional sio
dev/sio/sio_isa.c optional sio isa
dev/sr/if_sr_isa.c optional sr isa
dev/syscons/apm/apm_saver.c optional apm_saver apm
dev/syscons/schistory.c optional sc
dev/syscons/scmouse.c optional sc
dev/syscons/scterm.c optional sc
dev/syscons/scterm-dumb.c optional sc
dev/syscons/scterm-sc.c optional sc
dev/syscons/scvesactl.c optional sc vga vesa
dev/syscons/scvgarndr.c optional sc vga
dev/syscons/scvidctl.c optional sc
dev/syscons/scvtb.c optional sc
dev/syscons/syscons.c optional sc
dev/syscons/sysmouse.c optional sc
dev/uart/uart_cpu_i386.c optional uart
geom/geom_bsd.c standard
geom/geom_bsd_enc.c standard
geom/geom_mbr.c standard
geom/geom_mbr_enc.c standard
i386/acpica/OsdEnvironment.c optional acpi
i386/acpica/acpi_machdep.c optional acpi
i386/acpica/acpi_wakeup.c optional acpi
acpi_wakecode.h optional acpi \
dependency "$S/i386/acpica/acpi_wakecode.S" \
compile-with "${MAKE} -f $S/i386/acpica/Makefile MAKESRCPATH=$S/i386/acpica" \
no-obj no-implicit-rule before-depend \
clean "acpi_wakecode.h acpi_wakecode.o acpi_wakecode.bin"
#
i386/acpica/madt.c optional acpi apic
i386/bios/apm.c optional apm
i386/bios/mca_machdep.c optional mca
i386/bios/smapi.c optional smapi
i386/bios/smapi_bios.S optional smapi
i386/bios/smbios.c optional smbios
i386/bios/vpd.c optional vpd
i386/i386/apic_vector.s optional apic
i386/i386/atomic.c standard \
compile-with "${CC} -c ${CFLAGS} ${DEFINED_PROF:S/^$/-fomit-frame-pointer/} ${.IMPSRC}"
i386/i386/autoconf.c standard
i386/i386/bios.c standard
i386/i386/bioscall.s standard
i386/i386/busdma_machdep.c standard
i386/i386/critical.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/dump_machdep.c standard
i386/i386/elan-mmcr.c optional cpu_elan
i386/i386/elan-mmcr.c optional cpu_soekris
i386/i386/elf_machdep.c standard
i386/i386/exception.s standard
i386/i386/geode.c optional cpu_geode
i386/i386/i386-gdbstub.c optional ddb
i386/i386/i686_mem.c standard
i386/i386/identcpu.c standard
i386/i386/in_cksum.c optional inet
i386/i386/initcpu.c standard
i386/i386/intr_machdep.c standard
i386/i386/io_apic.c optional apic
i386/i386/k6_mem.c standard
i386/i386/legacy.c standard
i386/i386/local_apic.c optional apic
i386/i386/locore.s standard no-obj
i386/i386/machdep.c standard
i386/i386/mem.c standard
i386/i386/mp_clock.c optional smp
i386/i386/mp_machdep.c optional smp
i386/i386/mpboot.s optional smp
i386/i386/mptable.c optional apic
i386/i386/mptable_pci.c optional apic pci
i386/i386/nexus.c standard
i386/i386/perfmon.c optional perfmon
i386/i386/perfmon.c optional perfmon profiling-routine
i386/i386/pmap.c standard
i386/i386/support.s standard
i386/i386/swtch.s standard
i386/i386/sys_machdep.c standard
i386/i386/trap.c standard
i386/i386/tsc.c standard
i386/i386/vm86.c standard
i386/i386/vm_machdep.c standard
i386/ibcs2/ibcs2_errno.c optional ibcs2
i386/ibcs2/ibcs2_fcntl.c optional ibcs2
i386/ibcs2/ibcs2_ioctl.c optional ibcs2
i386/ibcs2/ibcs2_ipc.c optional ibcs2
i386/ibcs2/ibcs2_isc.c optional ibcs2
i386/ibcs2/ibcs2_isc_sysent.c optional ibcs2
i386/ibcs2/ibcs2_misc.c optional ibcs2
i386/ibcs2/ibcs2_msg.c optional ibcs2
i386/ibcs2/ibcs2_other.c optional ibcs2
i386/ibcs2/ibcs2_signal.c optional ibcs2
i386/ibcs2/ibcs2_socksys.c optional ibcs2
i386/ibcs2/ibcs2_stat.c optional ibcs2
i386/ibcs2/ibcs2_sysent.c optional ibcs2
i386/ibcs2/ibcs2_sysi86.c optional ibcs2
i386/ibcs2/ibcs2_sysvec.c optional ibcs2
i386/ibcs2/ibcs2_util.c optional ibcs2
i386/ibcs2/ibcs2_xenix.c optional ibcs2
i386/ibcs2/ibcs2_xenix_sysent.c optional ibcs2
i386/ibcs2/imgact_coff.c optional ibcs2
i386/isa/asc.c count asc
i386/isa/atpic.c standard
i386/isa/atpic_vector.s standard
i386/isa/clock.c standard
i386/isa/ctx.c optional ctx
i386/isa/cy.c count cy
i386/isa/elink.c optional ep
i386/isa/elink.c optional ie
i386/isa/gpib.c optional gp
i386/isa/gsc.c count gsc
i386/isa/if_el.c count el
i386/isa/if_le.c count le
i386/isa/if_rdp.c count rdp
i386/isa/isa.c optional isa
i386/isa/isa_compat.c optional isa compat_oldisa \
warning "Old ISA driver compatibility shims present."
i386/isa/isa_dma.c optional isa
i386/isa/istallion.c optional stli nowerror
i386/isa/mse.c optional mse
i386/isa/nmi.c standard
i386/isa/npx.c optional npx
i386/isa/pcf.c optional pcf
i386/isa/pcvt/pcvt_drv.c optional vt
i386/isa/pcvt/pcvt_ext.c optional vt
i386/isa/pcvt/pcvt_kbd.c optional vt
i386/isa/pcvt/pcvt_out.c optional vt
i386/isa/pcvt/pcvt_sup.c optional vt
i386/isa/pcvt/pcvt_vtf.c optional vt
i386/isa/pmtimer.c optional pmtimer
i386/isa/prof_machdep.c optional profiling-routine
i386/isa/spic.c optional spic
i386/isa/spigot.c count spigot
i386/isa/spkr.c optional speaker
i386/isa/stallion.c optional stl nowerror
i386/isa/vesa.c optional vga vesa
i386/isa/wt.c count wt
i386/linux/imgact_linux.c optional compat_linux
i386/linux/linux_dummy.c optional compat_linux
i386/linux/linux_locore.s optional compat_linux \
dependency "linux_assym.h"
i386/linux/linux_machdep.c optional compat_linux
i386/linux/linux_ptrace.c optional compat_linux
i386/linux/linux_sysent.c optional compat_linux
i386/linux/linux_sysvec.c optional compat_linux
i386/pci/pci_cfgreg.c optional pci
i386/pci/pci_bus.c optional pci
i386/svr4/svr4_locore.s optional compat_svr4 \
dependency "svr4_assym.h" \
warning "COMPAT_SVR4 is broken and should be avoided"
i386/svr4/svr4_machdep.c optional compat_svr4
#
# isdn4bsd, needed for isic | iwic | ifpi | ifpi2 | ihfc | ifpnp | itjc
#
i4b/layer1/i4b_hdlc.c optional itjc
i4b/layer1/i4b_hdlc.c optional ihfc
i4b/layer1/i4b_l1dmux.c optional isic
i4b/layer1/i4b_l1lib.c optional isic
i4b/layer1/i4b_l1dmux.c optional iwic
i4b/layer1/i4b_l1lib.c optional iwic
i4b/layer1/i4b_l1dmux.c optional ifpi
i4b/layer1/i4b_l1lib.c optional ifpi
i4b/layer1/i4b_l1dmux.c optional ifpi2
i4b/layer1/i4b_l1lib.c optional ifpi2
i4b/layer1/i4b_l1dmux.c optional ihfc
i4b/layer1/i4b_l1lib.c optional ihfc
i4b/layer1/i4b_l1dmux.c optional ifpnp
i4b/layer1/i4b_l1lib.c optional ifpnp
i4b/layer1/i4b_l1dmux.c optional itjc
i4b/layer1/i4b_l1lib.c optional itjc
#
# isdn4bsd, isic
#
i4b/layer1/isic/i4b_asuscom_ipac.c optional isic
i4b/layer1/isic/i4b_avm_a1.c optional isic
i4b/layer1/isic/i4b_bchan.c optional isic
i4b/layer1/isic/i4b_ctx_s0P.c optional isic
i4b/layer1/isic/i4b_drn_ngo.c optional isic
i4b/layer1/isic/i4b_dynalink.c optional isic
i4b/layer1/isic/i4b_elsa_qs1i.c optional isic
i4b/layer1/isic/i4b_elsa_qs1p.c optional isic pci
i4b/layer1/isic/i4b_elsa_pcc16.c optional isic
i4b/layer1/isic/i4b_hscx.c optional isic
i4b/layer1/isic/i4b_isac.c optional isic
i4b/layer1/isic/i4b_isic.c optional isic
i4b/layer1/isic/i4b_isic_isa.c optional isic
i4b/layer1/isic/i4b_isic_pnp.c optional isic
i4b/layer1/isic/i4b_itk_ix1.c optional isic
i4b/layer1/isic/i4b_l1.c optional isic
i4b/layer1/isic/i4b_l1fsm.c optional isic
i4b/layer1/isic/i4b_siemens_isurf.c optional isic
i4b/layer1/isic/i4b_sws.c optional isic
i4b/layer1/isic/i4b_tel_s016.c optional isic
i4b/layer1/isic/i4b_tel_s0163.c optional isic
i4b/layer1/isic/i4b_tel_s08.c optional isic
i4b/layer1/isic/i4b_usr_sti.c optional isic
i4b/layer1/isic/i4b_diva.c optional isic
#
# isdn4bsd, iwic
#
i4b/layer1/iwic/i4b_iwic_pci.c optional iwic pci
i4b/layer1/iwic/i4b_iwic_dchan.c optional iwic pci
i4b/layer1/iwic/i4b_iwic_bchan.c optional iwic pci
i4b/layer1/iwic/i4b_iwic_fsm.c optional iwic pci
i4b/layer1/iwic/i4b_iwic_l1if.c optional iwic pci
#
# isdn4bsd, ifpi
#
i4b/layer1/ifpi/i4b_ifpi_pci.c optional ifpi pci
i4b/layer1/ifpi/i4b_ifpi_isac.c optional ifpi pci
i4b/layer1/ifpi/i4b_ifpi_l1.c optional ifpi pci
i4b/layer1/ifpi/i4b_ifpi_l1fsm.c optional ifpi pci
#
# isdn4bsd, ifpi2
#
i4b/layer1/ifpi2/i4b_ifpi2_pci.c optional ifpi2 pci
i4b/layer1/ifpi2/i4b_ifpi2_isacsx.c optional ifpi2 pci
i4b/layer1/ifpi2/i4b_ifpi2_l1.c optional ifpi2 pci
i4b/layer1/ifpi2/i4b_ifpi2_l1fsm.c optional ifpi2 pci
#
# isdn4bsd, ifpnp
#
i4b/layer1/ifpnp/i4b_ifpnp_avm.c optional ifpnp
i4b/layer1/ifpnp/i4b_ifpnp_isac.c optional ifpnp
i4b/layer1/ifpnp/i4b_ifpnp_l1.c optional ifpnp
i4b/layer1/ifpnp/i4b_ifpnp_l1fsm.c optional ifpnp
#
# isdn4bsd, ihfc
#
i4b/layer1/ihfc/i4b_ihfc_l1if.c optional ihfc
i4b/layer1/ihfc/i4b_ihfc_pnp.c optional ihfc
i4b/layer1/ihfc/i4b_ihfc_drv.c optional ihfc
#
# isdn4bsd, itjc
#
i4b/layer1/itjc/i4b_itjc_pci.c optional itjc
i4b/layer1/itjc/i4b_itjc_isac.c optional itjc
i4b/layer1/itjc/i4b_itjc_l1.c optional itjc
i4b/layer1/itjc/i4b_itjc_l1fsm.c optional itjc
#
isa/atkbd_isa.c optional atkbd
isa/atkbdc_isa.c optional atkbdc
isa/fd.c optional fdc
isa/psm.c optional psm
isa/syscons_isa.c optional sc
isa/vga_isa.c optional vga
kern/imgact_aout.c optional compat_aout
kern/imgact_gzip.c optional gzip
libkern/divdi3.c standard
libkern/moddi3.c standard
libkern/qdivrem.c standard
libkern/ucmpdi2.c standard
libkern/udivdi3.c standard
libkern/umoddi3.c standard
pci/cy_pci.c optional cy pci
pci/agp_intel.c optional agp
pci/agp_via.c optional agp
pci/agp_sis.c optional agp
pci/agp_ali.c optional agp
pci/agp_amd.c optional agp
pci/agp_i810.c optional agp
pci/agp_nvidia.c optional agp