Subject: custom kernel doesn't build on macppc (long)
To: Netbsd-current Users <current-users@NetBSD.org>
From: d.zanon@infinito.it <d.zanon@infinito.it>
List: current-users
Date: 09/12/2004 16:06:57
Hi!
I am trying to build a slightly modified kernel on my -current
PowerBook G4 to enable some features.

powerbook# diff GENERIC MYKERNEL
163c163
< options       FONT_GALLANT12x22
---
 > options       FONT_SONY8x16
181c181
< config                netbsd  root on ? type ?
---
 > config                netbsd  root on wd0e type ffs
249c249
< #options      OFB_ENABLE_CACHE        # Speed up console
---
 > options       OFB_ENABLE_CACHE        # Speed up console
322c322
< #snapper* at obio?                    # Snapper audio device
---
 > snapper* at obio?                     # Snapper audio device
458c458
< #audio*       at snapper?
---
 > audio*        at snapper?

Building always fails:

#      link  MYKERNEL/netbsd
/usr/src/obj/tooldir.NetBSD-2.0_BETA-powerpc/bin/powerpc--netbsd-ld -N 
-Ttext
0x100000 -e __start -S -o netbsd ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o

*** Failed target:  netbsd
*** Failed command: echo '# ' " link MYKERNEL/netbsd"; echo
/usr/src/obj/tooldir.NetBSD-2.0_BETA-powerpc/bin/powerpc--netbsd-ld -N 
-Ttext
0x100000 -e __start -S -o netbsd '${SYSTEM_OBJ}' '${EXTRA_OBJ}' vers.o;
/usr/src/obj/tooldir.NetBSD-2.0_BETA-powerpc/bin/powerpc--netbsd-ld -N 
-Ttext
0x100000 -e __start -S -o netbsd locore.o devsw.o ioconf.o param.o arc4.o
sysmon_envsys.o sysmon.o aarp.o at_control.o at_proto.o ddp_input.o 
ddp_output.o
ddp_usrreq.o igmp.o in.o in_pcb.o in_proto.o ip_icmp.o ip_id.o ip_input.o
ip_output.o raw_ip.o tcp_debug.o tcp_input.o tcp_output.o tcp_subr.o 
tcp_timer.o
tcp_usrreq.o udp_usrreq.o fil.o ip_auth.o ip_fil_netbsd.o ip_frag.o 
ip_htable.o
ip_log.o ip_lookup.o ip_nat.o ip_pool.o ip_proxy.o ip_scan.o ip_state.o
ip_sync.o dest6.o frag6.o icmp6.o in6.o in6_cksum.o in6_ifattach.o in6_pcb.o
in6_proto.o in6_src.o ip6_forward.o ip6_id.o ip6_input.o ip6_mroute.o
ip6_output.o mld6.o nd6.o nd6_nbr.o nd6_rtr.o raw_ip6.o route6.o 
udp6_output.o
udp6_usrreq.o aurateconv.o i2c_exec.o i2c_bitbang.o at24cxx.o lpt.o mii.o
mii_bitbang.o mii_physubr.o ukphy_subr.o acphy.o amhphy.o bmtphy.o brgphy.o
tlphy.o nsphy.o nsphyter.o glxtphy.o gphyter.o qsphy.o inphy.o iophy.o 
exphy.o
lxtphy.o makphy.o icsphy.o sqphy.o tqphy.o dmphy.o pnaphy.o urlphy.o ukphy.o
smc93cx6.o aic7xxx.o aic7xxx_osm.o aic7xxx_seeprom.o adv.o advlib.o 
advmcode.o
adw.o bha.o iha.o isp.o isp_netbsd.o isp_target.o siop_common.o siop.o 
esiop.o
an.o awi.o am79c930.o wi.o atw.o elink3.o elinkxl.o am79900.o lance.o gem.o
dp8390.o pdq.o pdq_ifsubr.o cy.o ncr53c9x.o i82557.o smc83c170.o mb86960.o
ne2000.o com.o ac97.o rtl80x9.o rtl81x9.o wdc.o tulip.o aic6915.o dl10019.o
ax88190.o ohci.o mtd803.o cd9660_bmap.o cd9660_lookup.o cd9660_node.o
cd9660_rrip.o cd9660_util.o cd9660_vfsops.o cd9660_vnops.o fdesc_vfsops.o
fdesc_vnops.o kernfs_subr.o kernfs_vfsops.o kernfs_vnops.o null_vfsops.o
null_vnops.o overlay_vfsops.o overlay_vnops.o portal_vfsops.o portal_vnops.o
procfs_cmdline.o procfs_ctl.o procfs_fd.o procfs_fpregs.o procfs_linux.o
procfs_map.o procfs_mem.o procfs_note.o procfs_regs.o procfs_status.o
procfs_subr.o procfs_vfsops.o procfs_vnops.o umap_subr.o umap_vfsops.o
umap_vnops.o union_subr.o union_vfsops.o union_vnops.o msdosfs_conv.o
msdosfs_denode.o msdosfs_fat.o msdosfs_lookup.o msdosfs_vfsops.o 
msdosfs_vnops.o
krpc_subr.o nfs_bio.o nfs_boot.o nfs_bootdhcp.o nfs_kq.o nfs_node.o
nfs_nqlease.o nfs_serv.o nfs_socket.o nfs_srvcache.o nfs_subs.o 
nfs_syscalls.o
nfs_vfsops.o nfs_vnops.o ext2fs_alloc.o ext2fs_balloc.o ext2fs_bmap.o
ext2fs_bswap.o ext2fs_inode.o ext2fs_lookup.o ext2fs_readwrite.o 
ext2fs_subr.o
ext2fs_vfsops.o ext2fs_vnops.o ffs_alloc.o ffs_balloc.o ffs_inode.o
ffs_softdep.o ffs_subr.o ffs_tables.o ffs_vfsops.o ffs_vnops.o 
ffs_appleufs.o
lfs_alloc.o lfs_balloc.o lfs_bio.o lfs_cksum.o lfs_debug.o lfs_inode.o
lfs_segment.o lfs_subr.o lfs_syscalls.o lfs_vfsops.o lfs_vnops.o 
mfs_vfsops.o
mfs_vnops.o ufs_bmap.o ufs_ihash.o ufs_inode.o ufs_lookup.o ufs_quota.o
ufs_vfsops.o ufs_vnops.o db_access.o db_aout.o db_break.o db_command.o
db_examine.o db_expr.o db_input.o db_lex.o db_output.o db_print.o db_run.o
db_sym.o db_trap.o db_variables.o db_watch.o db_write_cmd.o db_xxx.o 
auconv.o
audio.o ccd.o clock_subr.o clockctl.o md.o midi.o mm.o mulaw.o radio.o rnd.o
rndpool.o vnd.o core_elf32.o core_netbsd.o cnmagic.o exec_aout.o exec_conf.o
exec_elf32.o exec_script.o exec_subr.o init_main.o init_sysctl.o 
init_sysent.o
kern_acct.o kern_clock.o kern_descrip.o kern_event.o kern_exec.o kern_exit.o
kern_fork.o kern_kthread.o kern_ktrace.o kern_ksyms.o kern_lkm.o kern_lock.o
kern_lwp.o kern_malloc.o kern_ntptime.o kern_physio.o kern_proc.o 
kern_prot.o
kern_ras.o kern_resource.o kern_sa.o kern_sig.o kern_systrace.o kern_subr.o
kern_synch.o kern_sysctl.o kern_time.o kern_timeout.o kern_uuid.o kern_xxx.o
subr_autoconf.o subr_devsw.o subr_disk.o subr_evcnt.o subr_extent.o 
subr_log.o
subr_pool.o subr_prf.o subr_prof.o subr_prop.o subr_userconf.o subr_xxx.o
sys_generic.o sys_pipe.o sys_pmc.o sys_process.o sys_socket.o sysv_ipc.o
sysv_msg.o sysv_sem.o sysv_shm.o tty.o tty_conf.o tty_pty.o tty_subr.o 
tty_tty.o
uipc_domain.o uipc_mbuf.o uipc_mbuf2.o uipc_proto.o uipc_sem.o uipc_socket.o
uipc_socket2.o uipc_syscalls.o uipc_usrreq.o vfs_bio.o vfs_cache.o 
vfs_getcwd.o
vfs_init.o vfs_lockf.o vfs_lookup.o vfs_subr.o vfs_syscalls.o vfs_vnops.o
vnode_if.o dead_vnops.o fifo_vnops.o genfs_vnops.o layer_subr.o 
layer_vfsops.o
layer_vnops.o spec_vnops.o sync_subr.o sync_vnops.o bpf.o bpf_filter.o
bsd-comp.o if.o if_bridge.o bridgestp.o if_ethersubr.o if_fddisubr.o 
if_gif.o
if_ieee1394subr.o if_loop.o if_media.o if_ppp.o if_sl.o if_spppsubr.o 
if_tun.o
if_vlan.o if_pppoe.o pfil.o ppp-deflate.o ppp_tty.o radix.o raw_cb.o
raw_usrreq.o route.o rtsock.o slcompress.o zlib.o ieee80211.o 
ieee80211_compat.o
ieee80211_crypto.o ieee80211_input.o ieee80211_ioctl.o ieee80211_node.o
ieee80211_output.o ieee80211_proto.o ieee80211_rssadapt.o if_arp.o in_gif.o
ip_ecn.o ip_encap.o in6_gif.o uvm_amap.o uvm_anon.o uvm_aobj.o uvm_bio.o
uvm_device.o uvm_fault.o uvm_glue.o uvm_init.o uvm_io.o uvm_km.o uvm_loan.o
uvm_map.o uvm_meter.o uvm_mmap.o uvm_page.o uvm_pager.o uvm_pdaemon.o
uvm_pglist.o uvm_stat.o uvm_swap.o uvm_unix.o uvm_user.o uvm_vnode.o 
copystr.o
fubyte.o fuswintr.o in_cksum.o mem.o openpic.o pmap_subr.o powerpc_machdep.o
process_machdep.o setfault.o sig_machdep.o sigcode.o subyte.o suword.o
suswintr.o sys_machdep.o syscall.o vm_machdep.o setjmp.o db_memrw.o 
db_disasm.o
db_interface.o db_trace.o altivec.o cpu_subr.o oea_machdep.o pmap.o 
fpu.o trap.o
compat_13_machdep.o compat_16_machdep.o ossaudio.o linux_blkio.o 
linux_cdrom.o
linux_errno.o linux_exec.o linux_exec_elf32.o linux_exec_aout.o linux_fdio.o
linux_file.o linux_hdio.o linux_ioctl.o linux_ipc.o linux_misc.o 
linux_sched.o
linux_signal.o linux_signo.o linux_socket.o linux_sysctl.o linux_termios.o
linux_uselib.o linux_time.o linux_machdep.o linux_ptrace.o linux_syscalls.o
linux_sysent.o linux_exec_powerpc.o linux_pipe.o linux_ipccall.o
linux_misc_notalpha.o linux_sig_notalpha.o linux_sigaction.o 
linux_socketcall.o
linux_llseek.o linux_olduname.o linux_file64.o linux_sigcode.o linux_trap.o
linux_syscall.o ofw_machdep.o ofwmagic.o openfirm.o autoconf.o bus_dma.o 
clock.o
disksubr.o extintr.o machdep.o dbdma.o procfs_machdep.o softintr.o cons.o
scsipiconf.o scsipi_base.o scsipi_ioctl.o scsipi_verbose.o scsi_base.o
atapi_base.o atapi_wdc.o scsiconf.o atapiconf.o cd.o ch.o sd.o st.o 
st_scsi.o
ss.o ss_mustek.o ss_scanjet.o uk.o wd.o ata_wdc.o ata.o openfirmio.o 
mainbus.o
cpu.o pci_machdep.o bandit.o grackle.o uninorth.o pci.o pci_map.o 
pci_quirks.o
pci_subr.o pci_usrreq.o cy82c693.o ahc_pci.o if_mtd_pci.o adv_pci.o 
adw_pci.o
adwlib.o adwmcode.o pcscp.o bha_pci.o isp_pci.o if_ep_pci.o if_ex_pci.o 
if_fpa.o
if_le_pci.o if_pcn.o siop_pci_common.o siop_pci.o esiop_pci.o iha_pci.o 
trm.o
pciide_common.o pciide.o acardide.o aceride.o artsata.o cmdide.o cypide.o
hptide.o optiide.o piixide.o pdcide.o satalink.o siside.o slide.o 
viaide.o ppb.o
cy_pci.o if_fxp_pci.o if_gem_pci.o if_ne_pci.o if_tl.o if_lmc.o 
if_lmc_common.o
if_lmc_media.o if_lmc_nbsd.o bktr_audio.o bktr_card.o bktr_core.o bktr_os.o
bktr_tuner.o eap.o if_epic_pci.o puc.o pucdata.o com_puc.o cyber.o lpt_puc.o
ohci_pci.o fwohci_pci.o if_vr.o if_sip.o if_gsip.o if_stge.o if_wm.o 
if_bge.o
if_rtk_pci.o if_tlp_pci.o if_sf_pci.o if_ste.o pccbb.o if_an_pci.o 
if_atw_pci.o
if_wi_pci.o if_re.o wsdisplay.o wsemulconf.o wsemul_dumb.o wsemul_vt100.o
wsemul_vt100_subr.o wsemul_vt100_chars.o wsemul_vt100_keys.o wsevent.o 
wskbd.o
wskbdutil.o wsmouse.o wsmux.o wsfont.o rasops.o rasops8.o ofb.o pchb.o 
kauai.o
obio.o mediabay.o esp.o mesh.o if_mc.o am79c950.o if_bm.o zs.o z8530sc.o
z8530tty.o adb.o adb_direct.o pm_direct.o apm.o aed.o akbd.o ams.o abtn.o
nvram.o wdc_obio.o if_wi_obio.o usb.o usbdi.o usbdi_util.o usb_mem.o 
usb_subr.o
usb_quirks.o uhub.o ezload.o uaudio.o ucom.o ugen.o hid.o uhidev.o 
uhid.o ukbd.o
ukbdmap.o ums.o ulpt.o umass.o umass_isdata.o umass_quirks.o umass_scsipi.o
uyap.o udsbr.o if_aue.o if_cue.o if_kue.o if_url.o if_uax.o if_udav.o 
umodem.o
uscanner.o fwohci.o if_fw.o cardslot.o cardbus.o cardbus_map.o 
cardbus_exrom.o
rbus.o if_ex_cardbus.o if_atw_cardbus.o if_tlp_cardbus.o if_rtk_cardbus.o
pcmcia.o pcmcia_cis.o pcmcia_cis_quirks.o if_ep_pcmcia.o if_ne_pcmcia.o
com_pcmcia.o wdc_pcmcia.o if_mbe_pcmcia.o if_awi_pcmcia.o if_wi_pcmcia.o
rbus_machdep.o snapper.o
/usr/obj/sys/arch/macppc/compile/MYKERNEL/lib/compat/libcompat.a
/usr/obj/sys/arch/macppc/compile/MYKERNEL/lib/kern/libkern.o vers.o
swapnetbsd.o
*** Error code 1

Stop.
nbmake: stopped in /usr/obj/sys/arch/macppc/compile/MYKERNEL

Why? What can I do?
Thanks for your replies!
Bye,
Davide