head	1.113;
access;
symbols
	netbsd-11-0-RC3:1.111
	netbsd-11-0-RC2:1.111
	netbsd-11-0-RC1:1.111
	perseant-exfatfs-base-20250801:1.111
	netbsd-11:1.111.0.8
	netbsd-11-base:1.111
	netbsd-10-1-RELEASE:1.110
	perseant-exfatfs-base-20240630:1.111
	perseant-exfatfs:1.111.0.6
	perseant-exfatfs-base:1.111
	netbsd-8-3-RELEASE:1.104.10.1
	netbsd-9-4-RELEASE:1.109
	netbsd-10-0-RELEASE:1.110
	netbsd-10-0-RC6:1.110
	netbsd-10-0-RC5:1.110
	netbsd-10-0-RC4:1.110
	netbsd-10-0-RC3:1.110
	netbsd-10-0-RC2:1.110
	thorpej-ifq:1.111.0.4
	thorpej-ifq-base:1.111
	thorpej-altq-separation:1.111.0.2
	thorpej-altq-separation-base:1.111
	netbsd-10-0-RC1:1.110
	netbsd-10:1.110.0.20
	netbsd-10-base:1.110
	bouyer-sunxi-drm:1.110.0.18
	bouyer-sunxi-drm-base:1.110
	netbsd-9-3-RELEASE:1.109
	thorpej-i2c-spi-conf2:1.110.0.16
	thorpej-i2c-spi-conf2-base:1.110
	thorpej-futex2:1.110.0.14
	thorpej-futex2-base:1.110
	thorpej-cfargs2:1.110.0.12
	thorpej-cfargs2-base:1.110
	cjep_sun2x-base1:1.110
	cjep_sun2x:1.110.0.10
	cjep_sun2x-base:1.110
	cjep_staticlib_x-base1:1.110
	netbsd-9-2-RELEASE:1.109
	cjep_staticlib_x:1.110.0.8
	cjep_staticlib_x-base:1.110
	thorpej-i2c-spi-conf:1.110.0.6
	thorpej-i2c-spi-conf-base:1.110
	thorpej-cfargs:1.110.0.4
	thorpej-cfargs-base:1.110
	thorpej-futex:1.110.0.2
	thorpej-futex-base:1.110
	netbsd-9-1-RELEASE:1.109
	bouyer-xenpvh-base2:1.109
	phil-wifi-20200421:1.109
	bouyer-xenpvh-base1:1.109
	phil-wifi-20200411:1.109
	bouyer-xenpvh:1.109.0.10
	bouyer-xenpvh-base:1.109
	is-mlppp:1.109.0.8
	is-mlppp-base:1.109
	phil-wifi-20200406:1.109
	netbsd-8-2-RELEASE:1.104.10.1
	ad-namecache-base3:1.109
	netbsd-9-0-RELEASE:1.109
	netbsd-9-0-RC2:1.109
	ad-namecache-base2:1.109
	ad-namecache-base1:1.109
	ad-namecache:1.109.0.6
	ad-namecache-base:1.109
	netbsd-9-0-RC1:1.109
	phil-wifi-20191119:1.109
	netbsd-9:1.109.0.4
	netbsd-9-base:1.109
	phil-wifi-20190609:1.109
	netbsd-8-1-RELEASE:1.104.10.1
	netbsd-8-1-RC1:1.104.10.1
	isaki-audio2:1.109.0.2
	isaki-audio2-base:1.109
	pgoyette-compat-merge-20190127:1.106.2.2
	pgoyette-compat-20190127:1.109
	pgoyette-compat-20190118:1.109
	pgoyette-compat-1226:1.109
	pgoyette-compat-1126:1.109
	pgoyette-compat-1020:1.109
	pgoyette-compat-0930:1.109
	pgoyette-compat-0906:1.107
	netbsd-7-2-RELEASE:1.103
	pgoyette-compat-0728:1.107
	netbsd-8-0-RELEASE:1.104.10.1
	phil-wifi:1.107.0.2
	phil-wifi-base:1.107
	pgoyette-compat-0625:1.107
	netbsd-8-0-RC2:1.104.10.1
	pgoyette-compat-0521:1.107
	pgoyette-compat-0502:1.107
	pgoyette-compat-0422:1.107
	netbsd-8-0-RC1:1.104.10.1
	pgoyette-compat-0415:1.107
	pgoyette-compat-0407:1.107
	pgoyette-compat-0330:1.107
	pgoyette-compat-0322:1.107
	pgoyette-compat-0315:1.107
	netbsd-7-1-2-RELEASE:1.103
	pgoyette-compat:1.106.0.2
	pgoyette-compat-base:1.106
	netbsd-7-1-1-RELEASE:1.103
	tls-maxphys-base-20171202:1.104
	matt-nb8-mediatek:1.104.0.14
	matt-nb8-mediatek-base:1.104
	nick-nhusb-base-20170825:1.104
	perseant-stdc-iso10646:1.104.0.12
	perseant-stdc-iso10646-base:1.104
	netbsd-8:1.104.0.10
	netbsd-8-base:1.104
	prg-localcount2-base3:1.104
	prg-localcount2-base2:1.104
	prg-localcount2-base1:1.104
	prg-localcount2:1.104.0.8
	prg-localcount2-base:1.104
	pgoyette-localcount-20170426:1.104
	bouyer-socketcan-base1:1.104
	jdolecek-ncq:1.104.0.6
	jdolecek-ncq-base:1.104
	pgoyette-localcount-20170320:1.104
	netbsd-7-1:1.103.0.36
	netbsd-7-1-RELEASE:1.103
	netbsd-7-1-RC2:1.103
	nick-nhusb-base-20170204:1.104
	netbsd-7-nhusb-base-20170116:1.103
	bouyer-socketcan:1.104.0.4
	bouyer-socketcan-base:1.104
	pgoyette-localcount-20170107:1.104
	netbsd-7-1-RC1:1.103
	nick-nhusb-base-20161204:1.104
	pgoyette-localcount-20161104:1.104
	netbsd-7-0-2-RELEASE:1.103
	nick-nhusb-base-20161004:1.104
	localcount-20160914:1.104
	netbsd-7-nhusb:1.103.0.34
	netbsd-7-nhusb-base:1.103
	pgoyette-localcount-20160806:1.104
	pgoyette-localcount-20160726:1.104
	pgoyette-localcount:1.104.0.2
	pgoyette-localcount-base:1.104
	nick-nhusb-base-20160907:1.104
	nick-nhusb-base-20160529:1.104
	netbsd-7-0-1-RELEASE:1.103
	nick-nhusb-base-20160422:1.104
	nick-nhusb-base-20160319:1.104
	nick-nhusb-base-20151226:1.104
	netbsd-7-0:1.103.0.32
	netbsd-7-0-RELEASE:1.103
	nick-nhusb-base-20150921:1.104
	netbsd-7-0-RC3:1.103
	netbsd-7-0-RC2:1.103
	netbsd-7-0-RC1:1.103
	nick-nhusb-base-20150606:1.104
	nick-nhusb-base-20150406:1.103
	nick-nhusb:1.103.0.30
	nick-nhusb-base:1.103
	netbsd-5-2-3-RELEASE:1.100
	netbsd-5-1-5-RELEASE:1.100
	netbsd-6-0-6-RELEASE:1.103
	netbsd-6-1-5-RELEASE:1.103
	netbsd-7:1.103.0.28
	netbsd-7-base:1.103
	yamt-pagecache-base9:1.103
	yamt-pagecache-tag8:1.103
	netbsd-6-1-4-RELEASE:1.103
	netbsd-6-0-5-RELEASE:1.103
	tls-earlyentropy:1.103.0.26
	tls-earlyentropy-base:1.103
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.103
	riastradh-drm2-base3:1.103
	netbsd-6-1-3-RELEASE:1.103
	netbsd-6-0-4-RELEASE:1.103
	netbsd-5-2-2-RELEASE:1.100
	netbsd-5-1-4-RELEASE:1.100
	netbsd-6-1-2-RELEASE:1.103
	netbsd-6-0-3-RELEASE:1.103
	netbsd-5-2-1-RELEASE:1.100
	netbsd-5-1-3-RELEASE:1.100
	rmind-smpnet-nbase:1.103
	netbsd-6-1-1-RELEASE:1.103
	riastradh-drm2-base2:1.103
	riastradh-drm2-base1:1.103
	riastradh-drm2:1.103.0.24
	riastradh-drm2-base:1.103
	rmind-smpnet:1.103.0.16
	rmind-smpnet-base:1.103
	netbsd-6-1:1.103.0.22
	netbsd-6-0-2-RELEASE:1.103
	netbsd-6-1-RELEASE:1.103
	khorben-n900:1.103.0.20
	netbsd-6-1-RC4:1.103
	netbsd-6-1-RC3:1.103
	agc-symver:1.103.0.18
	agc-symver-base:1.103
	netbsd-6-1-RC2:1.103
	netbsd-6-1-RC1:1.103
	yamt-pagecache-base8:1.103
	netbsd-5-2:1.100.0.42
	netbsd-6-0-1-RELEASE:1.103
	yamt-pagecache-base7:1.103
	netbsd-5-2-RELEASE:1.100
	netbsd-5-2-RC1:1.100
	matt-nb6-plus-nbase:1.103
	yamt-pagecache-base6:1.103
	netbsd-6-0:1.103.0.14
	netbsd-6-0-RELEASE:1.103
	netbsd-6-0-RC2:1.103
	tls-maxphys:1.103.0.12
	tls-maxphys-base:1.103
	matt-nb6-plus:1.103.0.10
	matt-nb6-plus-base:1.103
	netbsd-6-0-RC1:1.103
	jmcneill-usbmp-base10:1.103
	yamt-pagecache-base5:1.103
	jmcneill-usbmp-base9:1.103
	yamt-pagecache-base4:1.103
	jmcneill-usbmp-base8:1.103
	jmcneill-usbmp-base7:1.103
	jmcneill-usbmp-base6:1.103
	jmcneill-usbmp-base5:1.103
	jmcneill-usbmp-base4:1.103
	jmcneill-usbmp-base3:1.103
	jmcneill-usbmp-pre-base2:1.103
	jmcneill-usbmp-base2:1.103
	netbsd-6:1.103.0.8
	netbsd-6-base:1.103
	netbsd-5-1-2-RELEASE:1.100
	netbsd-5-1-1-RELEASE:1.100
	jmcneill-usbmp:1.103.0.6
	jmcneill-usbmp-base:1.103
	jmcneill-audiomp3:1.103.0.4
	jmcneill-audiomp3-base:1.103
	yamt-pagecache-base3:1.103
	yamt-pagecache-base2:1.103
	yamt-pagecache:1.103.0.2
	yamt-pagecache-base:1.103
	rmind-uvmplock-nbase:1.101
	cherry-xenmp:1.101.0.2
	cherry-xenmp-base:1.101
	uebayasi-xip-base7:1.101
	bouyer-quota2-nbase:1.101
	bouyer-quota2:1.100.0.40
	bouyer-quota2-base:1.101
	jruoho-x86intr:1.100.0.38
	jruoho-x86intr-base:1.100
	matt-mips64-premerge-20101231:1.100
	matt-nb5-mips64-premerge-20101231:1.100
	matt-nb5-pq3:1.100.0.36
	matt-nb5-pq3-base:1.100
	netbsd-5-1:1.100.0.34
	uebayasi-xip-base6:1.100
	uebayasi-xip-base5:1.100
	netbsd-5-1-RELEASE:1.100
	uebayasi-xip-base4:1.100
	uebayasi-xip-base3:1.100
	yamt-nfs-mp-base11:1.100
	netbsd-5-1-RC4:1.100
	matt-nb5-mips64-k15:1.100
	uebayasi-xip-base2:1.100
	yamt-nfs-mp-base10:1.100
	netbsd-5-1-RC3:1.100
	netbsd-5-1-RC2:1.100
	uebayasi-xip-base1:1.100
	netbsd-5-1-RC1:1.100
	rmind-uvmplock:1.100.0.32
	rmind-uvmplock-base:1.101
	yamt-nfs-mp-base9:1.100
	uebayasi-xip:1.100.0.30
	uebayasi-xip-base:1.100
	netbsd-5-0-2-RELEASE:1.100
	matt-nb5-mips64-premerge-20091211:1.100
	matt-premerge-20091211:1.100
	yamt-nfs-mp-base8:1.100
	matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.100
	matt-nb4-mips64-k7-u2a-k9b:1.100
	matt-nb5-mips64-u1-k1-k5:1.100
	yamt-nfs-mp-base7:1.100
	matt-nb5-mips64:1.100.0.28
	netbsd-5-0-1-RELEASE:1.100
	jymxensuspend-base:1.100
	yamt-nfs-mp-base6:1.100
	yamt-nfs-mp-base5:1.100
	yamt-nfs-mp-base4:1.100
	jym-xensuspend-nbase:1.101
	yamt-nfs-mp-base3:1.100
	nick-hppapmap-base4:1.100
	nick-hppapmap-base3:1.100
	netbsd-5-0:1.100.0.26
	netbsd-5-0-RELEASE:1.100
	netbsd-5-0-RC4:1.100
	netbsd-5-0-RC3:1.100
	nick-hppapmap-base2:1.100
	netbsd-5-0-RC2:1.100
	jym-xensuspend:1.100.0.24
	jym-xensuspend-base:1.101
	netbsd-5-0-RC1:1.100
	haad-dm-base2:1.100
	haad-nbase2:1.100
	ad-audiomp2:1.100.0.22
	ad-audiomp2-base:1.100
	netbsd-5:1.100.0.20
	netbsd-5-base:1.100
	nick-hppapmap:1.100.0.18
	nick-hppapmap-base:1.100
	matt-mips64-base2:1.100
	haad-dm-base1:1.100
	wrstuden-revivesa-base-4:1.100
	netbsd-4-0-1-RELEASE:1.99
	wrstuden-revivesa-base-3:1.100
	wrstuden-revivesa-base-2:1.100
	wrstuden-fixsa-newbase:1.99
	nick-csl-alignment-base5:1.99
	haad-dm:1.100.0.16
	haad-dm-base:1.100
	wrstuden-revivesa-base-1:1.100
	simonb-wapbl-nbase:1.100
	yamt-pf42-base4:1.100
	simonb-wapbl:1.100.0.14
	simonb-wapbl-base:1.100
	yamt-pf42-base3:1.100
	hpcarm-cleanup-nbase:1.100
	yamt-pf42-baseX:1.100
	yamt-pf42-base2:1.100
	yamt-nfs-mp-base2:1.100
	wrstuden-revivesa:1.100.0.12
	wrstuden-revivesa-base:1.100
	yamt-nfs-mp:1.100.0.10
	yamt-nfs-mp-base:1.100
	yamt-pf42:1.100.0.8
	yamt-pf42-base:1.100
	ad-socklock-base1:1.100
	yamt-lazymbuf-base15:1.100
	yamt-lazymbuf-base14:1.100
	keiichi-mipv6-nbase:1.100
	mjf-devfs2:1.100.0.6
	mjf-devfs2-base:1.100
	nick-net80211-sync:1.100.0.4
	nick-net80211-sync-base:1.100
	keiichi-mipv6:1.100.0.2
	keiichi-mipv6-base:1.100
	bouyer-xeni386-merge1:1.99
	matt-armv6-prevmlocking:1.99
	wrstuden-fixsa-base-1:1.99
	vmlocking2-base3:1.99
	netbsd-4-0:1.99.0.68
	netbsd-4-0-RELEASE:1.99
	bouyer-xeni386-nbase:1.99
	yamt-kmem-base3:1.99
	cube-autoconf:1.99.0.66
	cube-autoconf-base:1.99
	yamt-kmem-base2:1.99
	bouyer-xeni386:1.99.0.64
	bouyer-xeni386-base:1.99
	yamt-kmem:1.99.0.62
	yamt-kmem-base:1.99
	vmlocking2-base2:1.99
	reinoud-bufcleanup-nbase:1.99
	vmlocking2:1.99.0.60
	vmlocking2-base1:1.99
	netbsd-4-0-RC5:1.99
	matt-nb4-arm:1.99.0.58
	matt-nb4-arm-base:1.99
	matt-armv6-nbase:1.100
	jmcneill-base:1.99
	netbsd-4-0-RC4:1.99
	mjf-devfs:1.99.0.56
	mjf-devfs-base:1.99
	bouyer-xenamd64-base2:1.99
	vmlocking-nbase:1.99
	yamt-x86pmap-base4:1.99
	bouyer-xenamd64:1.99.0.54
	bouyer-xenamd64-base:1.99
	netbsd-4-0-RC3:1.99
	yamt-x86pmap-base3:1.99
	yamt-x86pmap-base2:1.99
	netbsd-4-0-RC2:1.99
	yamt-x86pmap:1.99.0.52
	yamt-x86pmap-base:1.99
	netbsd-4-0-RC1:1.99
	matt-armv6:1.99.0.50
	matt-armv6-base:1.99
	jmcneill-pm:1.99.0.48
	jmcneill-pm-base:1.99
	hpcarm-cleanup:1.99.0.46
	hpcarm-cleanup-base:1.100
	nick-csl-alignment:1.99.0.44
	nick-csl-alignment-base:1.99
	matt-mips64:1.99.0.42
	matt-mips64-base:1.99
	netbsd-3-1-1-RELEASE:1.97
	netbsd-3-0-3-RELEASE:1.97
	yamt-idlelwp-base8:1.99
	wrstuden-fixsa:1.99.0.40
	wrstuden-fixsa-base:1.99
	ppcoea-renovation:1.99.0.38
	ppcoea-renovation-base:1.99
	thorpej-atomic:1.99.0.36
	thorpej-atomic-base:1.99
	reinoud-bufcleanup:1.99.0.34
	reinoud-bufcleanup-base:1.99
	mjf-ufs-trans:1.99.0.32
	mjf-ufs-trans-base:1.99
	vmlocking:1.99.0.30
	vmlocking-base:1.99
	ad-audiomp:1.99.0.28
	ad-audiomp-base:1.99
	yamt-idlelwp:1.99.0.26
	post-newlock2-merge:1.99
	newlock2-nbase:1.99
	yamt-splraiseipl-base5:1.99
	yamt-splraiseipl-base4:1.99
	yamt-splraiseipl-base3:1.99
	abandoned-netbsd-4-base:1.99
	abandoned-netbsd-4:1.99.0.18
	netbsd-3-1:1.97.0.14
	netbsd-3-1-RELEASE:1.97
	netbsd-3-0-2-RELEASE:1.97
	yamt-splraiseipl-base2:1.99
	netbsd-3-1-RC4:1.97
	yamt-splraiseipl:1.99.0.22
	yamt-splraiseipl-base:1.99
	netbsd-3-1-RC3:1.97
	yamt-pdpolicy-base9:1.99
	newlock2:1.99.0.20
	newlock2-base:1.99
	yamt-pdpolicy-base8:1.99
	netbsd-3-1-RC2:1.97
	netbsd-3-1-RC1:1.97
	yamt-pdpolicy-base7:1.99
	netbsd-4:1.99.0.24
	netbsd-4-base:1.99
	yamt-pdpolicy-base6:1.99
	chap-midi-nbase:1.99
	netbsd-3-0-1-RELEASE:1.97
	gdamore-uart:1.99.0.16
	gdamore-uart-base:1.99
	simonb-timcounters-final:1.99
	yamt-pdpolicy-base5:1.99
	chap-midi:1.99.0.14
	chap-midi-base:1.99
	yamt-pdpolicy-base4:1.99
	yamt-pdpolicy-base3:1.99
	peter-altq-base:1.99
	peter-altq:1.99.0.12
	yamt-pdpolicy-base2:1.99
	elad-kernelauth-base:1.99
	elad-kernelauth:1.99.0.10
	yamt-pdpolicy:1.99.0.8
	yamt-pdpolicy-base:1.99
	yamt-uio_vmspace-base5:1.99
	simonb-timecounters:1.99.0.6
	simonb-timecounters-base:1.99
	rpaulo-netinet-merge-pcb:1.99.0.4
	rpaulo-netinet-merge-pcb-base:1.99
	yamt-uio_vmspace:1.99.0.2
	netbsd-3-0:1.97.0.12
	netbsd-3-0-RELEASE:1.97
	netbsd-3-0-RC6:1.97
	yamt-readahead-base3:1.98
	netbsd-3-0-RC5:1.97
	netbsd-3-0-RC4:1.97
	netbsd-3-0-RC3:1.97
	yamt-readahead-base2:1.98
	netbsd-3-0-RC2:1.97
	yamt-readahead-pervnode:1.98
	yamt-readahead-perfile:1.98
	yamt-readahead:1.98.0.8
	yamt-readahead-base:1.98
	netbsd-3-0-RC1:1.97
	yamt-vop-base3:1.98
	netbsd-2-0-3-RELEASE:1.96
	netbsd-2-1:1.96.10.1.0.2
	yamt-vop-base2:1.98
	thorpej-vnode-attr:1.98.0.6
	thorpej-vnode-attr-base:1.98
	netbsd-2-1-RELEASE:1.96.10.1
	yamt-vop:1.98.0.4
	yamt-vop-base:1.98
	netbsd-2-1-RC6:1.96.10.1
	netbsd-2-1-RC5:1.96.10.1
	netbsd-2-1-RC4:1.96.10.1
	netbsd-2-1-RC3:1.96.10.1
	netbsd-2-1-RC2:1.96.10.1
	netbsd-2-1-RC1:1.96.10.1
	yamt-lazymbuf:1.98.0.2
	yamt-km-base4:1.97
	netbsd-2-0-2-RELEASE:1.96
	yamt-km-base3:1.97
	netbsd-3:1.97.0.10
	netbsd-3-base:1.97
	yamt-km-base2:1.97
	yamt-km:1.97.0.6
	yamt-km-base:1.97
	kent-audio2:1.97.0.4
	kent-audio2-base:1.97
	netbsd-2-0-1-RELEASE:1.96
	kent-audio1-beforemerge:1.97
	netbsd-2:1.96.0.10
	netbsd-2-base:1.96
	kent-audio1:1.97.0.2
	kent-audio1-base:1.97
	netbsd-2-0-RELEASE:1.96
	netbsd-2-0-RC5:1.96
	netbsd-2-0-RC4:1.96
	netbsd-2-0-RC3:1.96
	netbsd-2-0-RC2:1.96
	netbsd-2-0-RC1:1.96
	netbsd-2-0:1.96.0.8
	netbsd-2-0-base:1.96
	netbsd-1-6-PATCH002-RELEASE:1.93.10.1
	netbsd-1-6-PATCH002:1.93.10.1
	netbsd-1-6-PATCH002-RC4:1.93.10.1
	netbsd-1-6-PATCH002-RC3:1.93.10.1
	netbsd-1-6-PATCH002-RC2:1.93.10.1
	netbsd-1-6-PATCH002-RC1:1.93.10.1
	ktrace-lwp:1.96.0.6
	ktrace-lwp-base:1.98
	netbsd-1-6-PATCH001:1.93.10.1
	netbsd-1-6-PATCH001-RELEASE:1.93.10.1
	netbsd-1-6-PATCH001-RC3:1.93.10.1
	netbsd-1-6-PATCH001-RC2:1.93.10.1
	netbsd-1-6-PATCH001-RC1:1.93.10.1
	nathanw_sa_end:1.89.2.5
	nathanw_sa_before_merge:1.96
	fvdl_fs64_base:1.96
	gmcgarry_ctxsw:1.96.0.4
	gmcgarry_ctxsw_base:1.96
	gmcgarry_ucred:1.96.0.2
	gmcgarry_ucred_base:1.96
	nathanw_sa_base:1.96
	kqueue-aftermerge:1.95
	kqueue-beforemerge:1.95
	netbsd-1-6-RELEASE:1.93.10.1
	netbsd-1-6-RC3:1.93.10.1
	netbsd-1-6-RC2:1.93.10.1
	netbsd-1-6-RC1:1.93.10.1
	netbsd-1-6:1.93.0.10
	netbsd-1-6-base:1.93
	gehenna-devsw:1.93.0.8
	gehenna-devsw-base:1.95
	netbsd-1-5-PATCH003:1.82
	eeh-devprop:1.93.0.6
	eeh-devprop-base:1.93
	newlock:1.93.0.4
	newlock-base:1.93
	ifpoll-base:1.93
	nathanw_sa:1.89.0.2
	thorpej-mips-cache:1.88.0.2
	thorpej-mips-cache-base:1.89
	thorpej-devvp-base3:1.87
	thorpej-devvp-base2:1.87
	post-chs-ubcperf:1.87
	pre-chs-ubcperf:1.87
	thorpej-devvp:1.87.0.4
	thorpej-devvp-base:1.87
	netbsd-1-5-PATCH002:1.82
	kqueue:1.87.0.2
	kqueue-base:1.95
	netbsd-1-5-PATCH001:1.82
	thorpej_scsipi_beforemerge:1.86
	thorpej_scsipi_nbase:1.86
	netbsd-1-5-RELEASE:1.82
	netbsd-1-5-BETA2:1.82
	netbsd-1-5-BETA:1.82
	netbsd-1-4-PATCH003:1.74
	netbsd-1-5-ALPHA2:1.82
	netbsd-1-5:1.82.0.4
	netbsd-1-5-base:1.82
	minoura-xpg4dl-base:1.82
	minoura-xpg4dl:1.82.0.2
	netbsd-1-4-PATCH002:1.74
	chs-ubc2-newbase:1.80
	wrstuden-devbsize-19991221:1.76
	wrstuden-devbsize:1.76.0.8
	wrstuden-devbsize-base:1.76
	kame_141_19991130:1.74
	comdex-fall-1999:1.76.0.6
	comdex-fall-1999-base:1.76
	fvdl-softdep:1.76.0.4
	fvdl-softdep-base:1.76
	thorpej_scsipi:1.76.0.2
	thorpej_scsipi_base:1.86
	netbsd-1-4-PATCH001:1.74
	kame_14_19990705:1.74
	kame_14_19990628:1.74
	kame:1.74.0.6
	chs-ubc2:1.74.0.4
	chs-ubc2-base:1.76
	netbsd-1-4-RELEASE:1.74
	netbsd-1-4:1.74.0.2
	netbsd-1-4-base:1.74
	netbsd-1-3-PATCH003:1.63.2.1
	netbsd-1-3-PATCH003-CANDIDATE2:1.63.2.1
	kenh-if-detach:1.71.0.4
	kenh-if-detach-base:1.71
	netbsd-1-3-PATCH003-CANDIDATE1:1.63.2.1
	netbsd-1-3-PATCH003-CANDIDATE0:1.63.2.1
	chs-ubc:1.71.0.2
	chs-ubc-base:1.71
	eeh-paddr_t:1.69.0.2
	eeh-paddr_t-base:1.69
	netbsd-1-3-PATCH002:1.63.2.1
	netbsd-1-3-PATCH001:1.63.2.1
	gwr-3x3:1.66.0.2
	gwr-3x3-base:1.66
	netbsd-1-3-RELEASE:1.63.2.1
	netbsd-1-3-BETA:1.63.2.1
	netbsd-1-3:1.63.0.2
	netbsd-1-3-base:1.63
	thorpej-signal:1.59.0.6
	thorpej-signal-base:1.59
	marc-pcmcia:1.59.0.4
	marc-pcmcia-bp:1.59
	marc-pcmcia-base:1.63
	bouyer-scsipi:1.59.0.2
	is-newarp-before-merge:1.58
	is-newarp:1.56.0.2
	is-newarp-base:1.56
	netbsd-1-2-PATCH001:1.46
	mrg-vm-swap:1.58.0.2
	thorpej-setroot:1.53.0.2
	netbsd-1-2-RELEASE:1.46
	netbsd-1-2-BETA:1.46
	netbsd-1-2:1.46.0.2
	netbsd-1-2-base:1.46
	netbsd-1-1-PATCH001:1.34.2.1
	netbsd-1-1-RELEASE:1.34.2.1
	netbsd-1-1:1.34.0.2
	netbsd-1-1-base:1.34
	sun3-1-0-base:1.24.0.2
	netbsd-1-0-PATCH06:1.22
	netbsd-1-0-PATCH05:1.22
	netbsd-1-0-PATCH04:1.22
	netbsd-1-0-PATCH03:1.22
	netbsd-1-0-PATCH02:1.22
	netbsd-1-0-PATCH1:1.22
	netbsd-1-0-PATCH0:1.22
	netbsd-1-0-RELEASE:1.22
	netbsd-1-0:1.22.0.2
	netbsd-1-0-base:1.22
	sun3-current:1.13
	sun3-magnum:1.12
	glass-home4:1.12
	magnum-base:1.9
	to_lamp_cvs:1.9
	first_uplaod:1.9;
locks;


1.113
date	2026.04.20.09.47.47;	author thorpej;	state Exp;
branches;
next	1.112;
commitid	gHqDysuna5nrhGCG;

1.112
date	2026.03.21.20.14.57;	author thorpej;	state Exp;
branches;
next	1.111;
commitid	etOtJrKRuTo8ISyG;

1.111
date	2023.06.03.08.52.57;	author lukem;	state Exp;
branches;
next	1.110;
commitid	JFrjk5m11qFkNtrE;

1.110
date	2020.09.07.07.07.32;	author mrg;	state Exp;
branches;
next	1.109;
commitid	kxUKfQdBFJXYj5nC;

1.109
date	2018.09.22.12.24.03;	author rin;	state Exp;
branches;
next	1.108;
commitid	oPiNEJ7VnAF626TA;

1.108
date	2018.09.22.12.05.52;	author rin;	state Exp;
branches;
next	1.107;
commitid	sncfykYl9apYY5TA;

1.107
date	2018.03.07.15.02.36;	author maya;	state Exp;
branches
	1.107.2.1;
next	1.106;
commitid	hu97ChsaBYPcmxtA;

1.106
date	2018.03.03.03.19.36;	author mrg;	state Exp;
branches
	1.106.2.1;
next	1.105;
commitid	7wch2SLenBrlBXsA;

1.105
date	2018.02.25.00.27.16;	author mrg;	state Exp;
branches;
next	1.104;
commitid	rhNeBRRdy64OPasA;

1.104
date	2015.04.15.19.13.47;	author mrg;	state Exp;
branches
	1.104.10.1;
next	1.103;

1.103
date	2011.07.09.15.04.06;	author mrg;	state Exp;
branches
	1.103.12.1
	1.103.30.1;
next	1.102;

1.102
date	2011.07.08.09.34.51;	author mrg;	state Exp;
branches;
next	1.101;

1.101
date	2011.01.21.15.59.09;	author joerg;	state Exp;
branches;
next	1.100;

1.100
date	2008.02.19.14.31.40;	author joerg;	state Exp;
branches
	1.100.32.1
	1.100.38.1
	1.100.40.1;
next	1.99;

1.99
date	2005.12.11.12.19.20;	author christos;	state Exp;
branches
	1.99.50.1;
next	1.98;

1.98
date	2005.05.31.04.03.11;	author christos;	state Exp;
branches
	1.98.2.1;
next	1.97;

1.97
date	2004.06.04.04.45.51;	author thorpej;	state Exp;
branches;
next	1.96;

1.96
date	2002.11.26.18.51.17;	author thorpej;	state Exp;
branches
	1.96.6.1
	1.96.10.1;
next	1.95;

1.95
date	2002.06.04.21.39.12;	author thorpej;	state Exp;
branches;
next	1.94;

1.94
date	2002.05.30.22.02.13;	author thorpej;	state Exp;
branches;
next	1.93;

1.93
date	2002.02.10.18.22.31;	author chs;	state Exp;
branches
	1.93.8.1
	1.93.10.1;
next	1.92;

1.92
date	2001.12.09.05.00.51;	author atatat;	state Exp;
branches;
next	1.91;

1.91
date	2001.11.20.12.56.41;	author lukem;	state Exp;
branches;
next	1.90;

1.90
date	2001.11.20.08.43.40;	author lukem;	state Exp;
branches;
next	1.89;

1.89
date	2001.10.26.06.45.40;	author jmc;	state Exp;
branches
	1.89.2.1;
next	1.88;

1.88
date	2001.10.23.19.26.47;	author thorpej;	state Exp;
branches
	1.88.2.1;
next	1.87;

1.87
date	2001.05.29.02.20.26;	author mrg;	state Exp;
branches
	1.87.2.1;
next	1.86;

1.86
date	2001.02.22.07.11.08;	author chs;	state Exp;
branches
	1.86.2.1;
next	1.85;

1.85
date	2001.02.04.01.26.44;	author tsutsui;	state Exp;
branches;
next	1.84;

1.84
date	2000.12.17.15.52.44;	author jdolecek;	state Exp;
branches;
next	1.83;

1.83
date	2000.12.07.17.51.06;	author jdolecek;	state Exp;
branches;
next	1.82;

1.82
date	2000.05.09.00.56.28;	author hubertf;	state Exp;
branches;
next	1.81;

1.81
date	2000.05.09.00.32.26;	author thorpej;	state Exp;
branches;
next	1.80;

1.80
date	2000.02.01.05.25.48;	author tsutsui;	state Exp;
branches;
next	1.79;

1.79
date	2000.01.24.20.36.17;	author tron;	state Exp;
branches;
next	1.78;

1.78
date	2000.01.19.16.30.01;	author tsutsui;	state Exp;
branches;
next	1.77;

1.77
date	2000.01.19.14.45.13;	author tsutsui;	state Exp;
branches;
next	1.76;

1.76
date	99.07.26.05.20.48;	author cgd;	state Exp;
branches
	1.76.2.1;
next	1.75;

1.75
date	99.07.09.09.53.00;	author mrg;	state Exp;
branches;
next	1.74;

1.74
date	99.01.15.23.21.27;	author thorpej;	state Exp;
branches
	1.74.4.1;
next	1.73;

1.73
date	99.01.08.19.26.15;	author augustss;	state Exp;
branches;
next	1.72;

1.72
date	98.12.13.19.19.38;	author kleink;	state Exp;
branches;
next	1.71;

1.71
date	98.10.15.18.37.16;	author drochner;	state Exp;
branches;
next	1.70;

1.70
date	98.09.05.15.15.18;	author lukem;	state Exp;
branches;
next	1.69;

1.69
date	98.05.31.23.25.43;	author thorpej;	state Exp;
branches;
next	1.68;

1.68
date	98.04.12.23.47.45;	author tv;	state Exp;
branches;
next	1.67;

1.67
date	98.02.05.04.56.30;	author gwr;	state Exp;
branches;
next	1.66;

1.66
date	97.11.12.23.12.32;	author thorpej;	state Exp;
branches
	1.66.2.1;
next	1.65;

1.65
date	97.11.12.22.26.35;	author thorpej;	state Exp;
branches;
next	1.64;

1.64
date	97.10.23.01.39.20;	author gwr;	state Exp;
branches;
next	1.63;

1.63
date	97.10.04.17.14.07;	author gwr;	state Exp;
branches
	1.63.2.1;
next	1.62;

1.62
date	97.10.03.07.17.46;	author lukem;	state Exp;
branches;
next	1.61;

1.61
date	97.09.30.23.04.28;	author christos;	state Exp;
branches;
next	1.60;

1.60
date	97.09.12.07.55.21;	author mycroft;	state Exp;
branches;
next	1.59;

1.59
date	97.03.17.20.59.47;	author gwr;	state Exp;
branches
	1.59.4.1;
next	1.58;

1.58
date	97.02.10.19.23.41;	author gwr;	state Exp;
branches;
next	1.57;

1.57
date	97.02.07.22.55.44;	author gwr;	state Exp;
branches;
next	1.56;

1.56
date	97.02.04.17.15.38;	author gwr;	state Exp;
branches
	1.56.2.1;
next	1.55;

1.55
date	97.02.04.05.08.50;	author perry;	state Exp;
branches;
next	1.54;

1.54
date	97.02.04.04.32.21;	author perry;	state Exp;
branches;
next	1.53;

1.53
date	96.12.17.21.10.35;	author gwr;	state Exp;
branches;
next	1.52;

1.52
date	96.12.01.06.12.38;	author jonathan;	state Exp;
branches;
next	1.51;

1.51
date	96.09.09.21.07.08;	author mycroft;	state Exp;
branches;
next	1.50;

1.50
date	96.08.31.21.41.51;	author mycroft;	state Exp;
branches;
next	1.49;

1.49
date	96.08.12.00.52.11;	author mycroft;	state Exp;
branches;
next	1.48;

1.48
date	96.08.10.06.10.07;	author mycroft;	state Exp;
branches;
next	1.47;

1.47
date	96.08.10.05.29.53;	author mycroft;	state Exp;
branches;
next	1.46;

1.46
date	96.06.20.03.47.27;	author gwr;	state Exp;
branches
	1.46.2.1;
next	1.45;

1.45
date	96.06.18.16.18.34;	author gwr;	state Exp;
branches;
next	1.44;

1.44
date	96.05.11.16.13.07;	author mycroft;	state Exp;
branches;
next	1.43;

1.43
date	96.02.29.20.57.38;	author cgd;	state Exp;
branches;
next	1.42;

1.42
date	96.02.26.02.53.51;	author mycroft;	state Exp;
branches;
next	1.41;

1.41
date	96.02.20.22.03.56;	author gwr;	state Exp;
branches;
next	1.40;

1.40
date	96.02.09.02.21.36;	author mycroft;	state Exp;
branches;
next	1.39;

1.39
date	96.02.03.00.44.26;	author mycroft;	state Exp;
branches;
next	1.38;

1.38
date	96.02.02.20.09.40;	author mycroft;	state Exp;
branches;
next	1.37;

1.37
date	96.02.02.02.37.35;	author mycroft;	state Exp;
branches;
next	1.36;

1.36
date	96.02.01.22.33.05;	author mycroft;	state Exp;
branches;
next	1.35;

1.35
date	95.11.17.23.31.14;	author gwr;	state Exp;
branches;
next	1.34;

1.34
date	95.09.19.23.54.29;	author thorpej;	state Exp;
branches
	1.34.2.1;
next	1.33;

1.33
date	95.07.01.00.51.15;	author gwr;	state Exp;
branches;
next	1.32;

1.32
date	95.06.24.20.48.36;	author christos;	state Exp;
branches;
next	1.31;

1.31
date	95.06.09.21.53.32;	author gwr;	state Exp;
branches;
next	1.30;

1.30
date	95.05.24.20.29.16;	author gwr;	state Exp;
branches;
next	1.29;

1.29
date	95.05.16.22.25.15;	author jtc;	state Exp;
branches;
next	1.28;

1.28
date	95.03.23.19.47.34;	author jtc;	state Exp;
branches;
next	1.27;

1.27
date	95.03.01.05.07.02;	author gwr;	state Exp;
branches;
next	1.26;

1.26
date	95.01.24.05.45.54;	author gwr;	state Exp;
branches;
next	1.25;

1.25
date	95.01.11.20.37.12;	author gwr;	state Exp;
branches;
next	1.24;

1.24
date	94.11.21.21.26.45;	author gwr;	state Exp;
branches;
next	1.23;

1.23
date	94.10.26.09.08.12;	author cgd;	state Exp;
branches;
next	1.22;

1.22
date	94.09.20.16.17.53;	author gwr;	state Exp;
branches
	1.22.2.1;
next	1.21;

1.21
date	94.07.18.14.59.47;	author gwr;	state Exp;
branches;
next	1.20;

1.20
date	94.06.28.21.40.34;	author gwr;	state Exp;
branches
	1.20.2.1;
next	1.19;

1.19
date	94.06.13.15.54.16;	author gwr;	state Exp;
branches;
next	1.18;

1.18
date	94.05.13.15.07.08;	author gwr;	state Exp;
branches;
next	1.17;

1.17
date	94.05.04.05.57.27;	author gwr;	state Exp;
branches;
next	1.16;

1.16
date	94.04.24.20.10.13;	author glass;	state Exp;
branches;
next	1.15;

1.15
date	94.03.01.08.24.01;	author glass;	state Exp;
branches;
next	1.14;

1.14
date	94.02.23.08.28.21;	author glass;	state Exp;
branches;
next	1.13;

1.13
date	94.02.04.08.19.41;	author glass;	state Exp;
branches;
next	1.12;

1.12
date	93.11.23.05.28.35;	author glass;	state Exp;
branches;
next	1.11;

1.11
date	93.11.10.07.42.12;	author deraadt;	state Exp;
branches;
next	1.10;

1.10
date	93.10.12.05.18.58;	author glass;	state Exp;
branches;
next	1.9;

1.9
date	93.08.21.02.16.07;	author glass;	state Exp;
branches;
next	1.8;

1.8
date	93.08.16.16.36.47;	author glass;	state Exp;
branches;
next	1.7;

1.7
date	93.08.15.23.01.58;	author glass;	state Exp;
branches;
next	1.6;

1.6
date	93.08.08.12.16.57;	author glass;	state Exp;
branches;
next	1.5;

1.5
date	93.08.05.23.09.17;	author glass;	state Exp;
branches;
next	1.4;

1.4
date	93.08.03.22.37.07;	author glass;	state Exp;
branches;
next	1.3;

1.3
date	93.07.30.16.54.39;	author glass;	state Exp;
branches;
next	1.2;

1.2
date	93.06.27.00.50.39;	author glass;	state Exp;
branches;
next	1.1;

1.1
date	93.06.25.10.26.08;	author glass;	state Exp;
branches;
next	;

1.107.2.1
date	2019.06.10.22.06.49;	author christos;	state Exp;
branches;
next	;
commitid	jtc8rnCzWiEEHGqB;

1.106.2.1
date	2018.03.15.09.12.04;	author pgoyette;	state Exp;
branches;
next	1.106.2.2;
commitid	lb7w3QtkrVH4axuA;

1.106.2.2
date	2018.09.30.01.45.47;	author pgoyette;	state Exp;
branches;
next	;
commitid	SQ44grEPCeKPh4UA;

1.104.10.1
date	2018.04.12.14.06.14;	author martin;	state Exp;
branches;
next	;
commitid	C31XjSuC0JovT9yA;

1.103.12.1
date	2017.12.03.11.36.46;	author jdolecek;	state Exp;
branches;
next	;
commitid	XcIYRZTAh1LmerhA;

1.103.30.1
date	2015.06.06.14.40.03;	author skrll;	state Exp;
branches;
next	;

1.100.32.1
date	2011.03.05.20.52.11;	author rmind;	state Exp;
branches;
next	;

1.100.38.1
date	2011.06.06.09.06.55;	author jruoho;	state Exp;
branches;
next	;

1.100.40.1
date	2011.02.08.16.19.42;	author bouyer;	state Exp;
branches;
next	;

1.99.50.1
date	2008.03.23.02.04.24;	author matt;	state Exp;
branches;
next	;

1.98.2.1
date	2008.02.27.08.36.26;	author yamt;	state Exp;
branches;
next	;

1.96.6.1
date	2004.08.03.10.42.03;	author skrll;	state Exp;
branches;
next	1.96.6.2;

1.96.6.2
date	2004.09.18.14.41.39;	author skrll;	state Exp;
branches;
next	1.96.6.3;

1.96.6.3
date	2004.09.21.13.23.19;	author skrll;	state Exp;
branches;
next	1.96.6.4;

1.96.6.4
date	2005.11.10.13.59.38;	author skrll;	state Exp;
branches;
next	;

1.96.10.1
date	2005.02.06.07.45.26;	author jmc;	state Exp;
branches;
next	;

1.93.8.1
date	2002.07.15.01.22.15;	author gehenna;	state Exp;
branches;
next	;

1.93.10.1
date	2002.05.30.23.48.43;	author tv;	state Exp;
branches;
next	;

1.89.2.1
date	2001.10.26.06.45.40;	author nathanw;	state dead;
branches;
next	1.89.2.2;

1.89.2.2
date	2002.01.08.00.28.17;	author nathanw;	state Exp;
branches;
next	1.89.2.3;

1.89.2.3
date	2002.02.28.04.12.22;	author nathanw;	state Exp;
branches;
next	1.89.2.4;

1.89.2.4
date	2002.06.20.03.41.41;	author nathanw;	state Exp;
branches;
next	1.89.2.5;

1.89.2.5
date	2002.12.11.06.12.33;	author thorpej;	state Exp;
branches;
next	;

1.88.2.1
date	2001.11.12.21.17.36;	author thorpej;	state Exp;
branches;
next	;

1.87.2.1
date	2002.01.10.19.49.43;	author thorpej;	state Exp;
branches;
next	1.87.2.2;

1.87.2.2
date	2002.03.16.16.00.05;	author jdolecek;	state Exp;
branches;
next	1.87.2.3;

1.87.2.3
date	2002.06.23.17.42.36;	author jdolecek;	state Exp;
branches;
next	;

1.86.2.1
date	2001.06.21.19.36.53;	author nathanw;	state Exp;
branches;
next	;

1.76.2.1
date	2000.11.20.20.27.49;	author bouyer;	state Exp;
branches;
next	1.76.2.2;

1.76.2.2
date	2000.12.13.15.49.38;	author bouyer;	state Exp;
branches;
next	1.76.2.3;

1.76.2.3
date	2001.01.05.17.35.12;	author bouyer;	state Exp;
branches;
next	1.76.2.4;

1.76.2.4
date	2001.02.11.19.12.43;	author bouyer;	state Exp;
branches;
next	1.76.2.5;

1.76.2.5
date	2001.03.12.13.29.35;	author bouyer;	state Exp;
branches;
next	;

1.74.4.1
date	99.08.02.21.45.20;	author thorpej;	state Exp;
branches;
next	;

1.66.2.1
date	98.01.27.19.08.14;	author gwr;	state Exp;
branches;
next	;

1.63.2.1
date	97.11.12.23.42.34;	author thorpej;	state Exp;
branches;
next	;

1.59.4.1
date	97.09.16.03.49.29;	author thorpej;	state Exp;
branches;
next	1.59.4.2;

1.59.4.2
date	97.10.14.10.18.57;	author thorpej;	state Exp;
branches;
next	;

1.56.2.1
date	97.03.12.14.04.30;	author is;	state Exp;
branches;
next	;

1.46.2.1
date	96.06.20.03.47.27;	author gwr;	state dead;
branches;
next	1.46.2.2;

1.46.2.2
date	96.06.20.03.47.28;	author gwr;	state Exp;
branches;
next	;

1.34.2.1
date	95.11.18.07.16.06;	author gwr;	state Exp;
branches;
next	;

1.22.2.1
date	94.09.20.16.17.53;	author gwr;	state dead;
branches;
next	1.22.2.2;

1.22.2.2
date	94.09.20.16.17.54;	author gwr;	state Exp;
branches;
next	;

1.20.2.1
date	94.07.19.16.26.09;	author cgd;	state Exp;
branches;
next	;


desc
@@


1.113
log
@Re-factor genassym.cf into common m68k definitions and platform-specific
ones.
@
text
@# $NetBSD: Makefile.sun3,v 1.112 2026/03/21 20:14:57 thorpej Exp $

# Makefile for NetBSD
#
# This makefile is constructed from a machine description:
#	config machineid
# Most changes should be made in the machine description
#	/sys/arch/sun3/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/sun3/conf/Makefile.sun3
# after which config should be rerun for all machines of that type.
#
# To specify debugging, add the config line: makeoptions DEBUG="-g"
# A better way is to specify -g only for a few files.
#
#	makeoptions DEBUGLIST="uvm* trap if_*"

MACHINE_ARCH=m68k
USETOOLS?=	no
NEED_OWN_INSTALL_TARGET?=no
.include <bsd.own.mk>

##
## (1) port identification
##
SUN3=		$S/arch/sun3
GENASSYM_CONF=	$S/arch/m68k/m68k/genassym.cf
GENASSYM_EXTRAS+= ${SUN3}/${MACHTYPE}/genassym.cf

##
## (2) compile settings
##
CPPFLAGS+=	-Dsun3
CFLAGS+=	${CMACHFLAGS} -fno-defer-pop
CFLAGS+=	-msoft-float
AFLAGS+=	-x assembler-with-cpp
COPTS.sunmon.c+=${CC_WNO_ADDRESS_OF_PACKED_MEMBER} ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :}

##
## (3) libkern and compat
##
OPT_MODULAR=   %MODULAR%

##
## (4) local objects, compile rules, and dependencies
##
.include "$S/arch/m68k/conf/Makefile.kern.m68k.inc"

MD_OBJS=	locore.o
MD_CFILES=
MD_SFILES=	${SUN3}/${MACHTYPE}/locore.s

locore.o: ${SUN3}/${MACHTYPE}/locore.s
	${NORMAL_S}

##
## (5) link settings
##
.if ${MACHTYPE} == "sun3x"
TEXTADDR?=	F8004000
.else
TEXTADDR?=	0E004000
.endif
LINKFORMAT=	-N

##
## (6) port specific target dependencies
##

# For cross-compilation, the "gcc -M" mkdep script is convenient,
# but that does not correctly make rules from *.s files.  The
# easiest work-around is to just list those dependencies here.
locore.o:   assym.h m68k/asm.h m68k/trap.h
copy.o:     assym.h m68k/asm.h $S/sys/errno.h
bcopy.o:    assym.h m68k/asm.h
copypage.o: assym.h m68k/asm.h
lock_stubs.o: assym.h

# depend on CPU configuration
db_machdep.o dvma.o machdep.o pmap.o sun3_startup.o vm_machdep.o: Makefile

# depends on DDB, etc.
stub.o: Makefile

##
## (7) misc settings
##

##
## (8) config(8) generated machinery
##
%INCLUDES

%OBJS

%CFILES

%SFILES

%LOAD

%RULES

##
## (9) port independent kernel machinery
##
.include "$S/conf/Makefile.kern.inc"

##
## (10) Appending make options.
##
%MAKEOPTIONSAPPEND
@


1.112
log
@Re-factor m68k FP exception handling:

- Move the FP exception stubs into the shared trap_subr.s.  Remove as
  many conditionals from the stubs as feasible, having separate stubs
  for each case that needs to be handled.  This doesn't really result
  in any more (or duplicated) code, and makes it all a lot easier to
  read.
- All platforms now call the new fpu_init() function, which is renamed
  from fpu_probe(), and centralizes all of the FP-related initialization.
  Platforms that don't need to probe for the FPU aren't forced to do so;
  the probe only occurs if the fputype is FPU_UNKNOWN at the time fpu_init()
  is called.
- Even on platforms that don't actually need to probe the FPU, make sure
  the "nofault" code is present in trap() to do so; this is meant to reduce
  diffs that need to be resolved later then the trap() function is re-factored.

- On Amiga and Atari, remove the bespoke vectab code and just use the shared
  vec_init().  Additional cleanup is possible in this area.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.111 2023/06/03 08:52:57 lukem Exp $
d29 2
a30 1
GENASSYM_CONF=	${SUN3}/${MACHTYPE}/genassym.cf
@


1.111
log
@bsd.own.mk: rename to CC_WNO_ADDRESS_OF_PACKED_MEMBER

Provide a single variable
	CC_WNO_ADDRESS_OF_PACKED_MEMBER
with options for both clang and gcc, to replace
	CLANG_NO_ADDR_OF_PACKED_MEMBER
	CC_NO_ADDR_OF_PACKED_MEMBER
	GCC_NO_ADDR_OF_PACKED_MEMBER

Using the convention CC_compilerflag, where compilerflag
is based on the full compiler flag name.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.110 2020/09/07 07:07:32 mrg Exp $
d48 2
a56 2
.include "$S/arch/m68k/conf/Makefile.kern.m68k.inc"

@


1.110
log
@don't error array-bounds and packed-member issues with GCC 9.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.109 2018/09/22 12:24:03 rin Exp $
d38 1
a38 1
COPTS.sunmon.c+=${GCC_NO_ADDR_OF_PACKED_MEMBER} ${${ACTIVE_CC} == "gcc" && ${HAVE_GCC:U0} >= 9:? -Wno-error=array-bounds :}
@


1.109
log
@- Determine KERN_AS automatically depending on whether OPT_MODULAR is
  set or not, in the same way as libcompat.

- Specify OPT_MODULAR in the port Makefile instead of KERN_AS.

Now, KERN_AS=library is used for kernels without module(7) for all ports.

OK christos
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.108 2018/09/22 12:05:52 rin Exp $
d38 1
@


1.108
log
@No need to specify COMPAT_AS anymore.
Now, it is automatically determined from OPT_MODULAR.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.107 2018/03/07 15:02:36 maya Exp $
a42 5
.if !empty(OPT_MODULAR)
KERN_AS=	obj
.else
KERN_AS=	library
.endif
@


1.107
log
@Build compat code as .a if not MODULAR.

Removes some more unused functions.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.106 2018/03/03 03:19:36 mrg Exp $
a44 1
COMPAT_AS=	obj
a46 1
COMPAT_AS=	library
@


1.107.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.109 2018/09/22 12:24:03 rin Exp $
d43 7
@


1.106
log
@sun2/sun3:
- build libkern as an archive for non modular builds.  from maya@@
sun3:
- cut down GENERIC a bunch to bring below 2MB.
- reduce UBC_NWINS, MAXEXEC, and PAGER_MAP_DEFAULT_SIZE to recover
  enough lost VA to actually run basic tests.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.105 2018/02/25 00:27:16 mrg Exp $
d44 2
a45 1
KERN_AS=       obj
d47 2
a48 1
KERN_AS=       library
@


1.106.2.1
log
@Synch with HEAD
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.107 2018/03/07 15:02:36 maya Exp $
d44 1
a44 2
KERN_AS=	obj
COMPAT_AS=	obj
d46 1
a46 2
KERN_AS=	library
COMPAT_AS=	library
@


1.106.2.2
log
@Ssync with HEAD
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.109 2018/09/22 12:24:03 rin Exp $
d43 7
@


1.105
log
@add a special rule to build m68k/fpu.c to avoid passing -msoft-float.
fixes GCC 6 kernel builds that use this file.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.104 2015/04/15 19:13:47 mrg Exp $
d42 6
a47 1
KERN_AS=	obj
@


1.104
log
@remove various HAVE_GCC=45 fragments.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.103 2011/07/09 15:04:06 mrg Exp $
d54 2
@


1.104.10.1
log
@Pull up following revision(s) (requested by mrg in ticket #745):

	sys/arch/sun3/conf/Makefile.sun3: revision 1.106
	sys/arch/sun3/conf/Makefile.sun3: revision 1.107
	sys/arch/sun3/conf/GENERIC3X: revision 1.131
	sys/arch/sun3/include/param3.h: revision 1.57
	sys/arch/sun3/conf/GENERIC: revision 1.177
	sys/arch/sun3/conf/GENERIC: revision 1.178
	sys/arch/sun3/include/vmparam3.h: revision 1.39

sun3:
- build libkern as an archive for non modular builds.  from maya@@
- cut down GENERIC a bunch to bring below 2MB.
- reduce UBC_NWINS, MAXEXEC, and PAGER_MAP_DEFAULT_SIZE to recover
  enough lost VA to actually run basic tests.

also disable SYSCTL_INCLUDE_DESCR.

copy sun3 disables to sun3x mostly.  it has the same ufsboot 2MB limit.

Build compat code as .a if not MODULAR.

Removes some more unused functions.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.104 2015/04/15 19:13:47 mrg Exp $
a41 2
OPT_MODULAR=   %MODULAR%
.if !empty(OPT_MODULAR)
a42 5
COMPAT_AS=	obj
.else
KERN_AS=	library
COMPAT_AS=	library
.endif
@


1.103
log
@fix previous and use a correct make construct
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.102 2011/07/08 09:34:51 mrg Exp $
a35 1
.if defined(HAVE_GCC) && ${HAVE_GCC} != 45
a36 1
.endif
@


1.103.12.1
log
@update from HEAD
@
text
@d1 1
a1 1
# $NetBSD$
d36 1
d38 1
@


1.103.30.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.104 2015/04/15 19:13:47 mrg Exp $
d36 1
d38 1
@


1.102
log
@don't use -msoft-float for GCC 4.5.  -msoft-float passes down -mno-float
to the assembler, which barfs, and i can't see any way to disable it just
for sun3/fpu.c.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.101 2011/01/21 15:59:09 joerg Exp $
d36 1
a36 1
.if defined(HAVE_GCC) ${HAVE_GCC} == 45
@


1.101
log
@Switch remaining platforms to modern CPP for assembler.
@
text
@d1 1
a1 1
# $NetBSD: src/sys/arch/sun3/conf/Makefile.sun3,v 1.100 2008-02-19 14:31:40 joerg Exp $
d35 4
a38 1
CFLAGS+=	${CMACHFLAGS} -msoft-float -fno-defer-pop
@


1.100
log
@Add missing assym.h dependency.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.99 2005/12/11 12:19:20 christos Exp $
d36 1
a36 1
AFLAGS+=	-x assembler-with-cpp -traditional-cpp
@


1.100.38.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.101 2011/01/21 15:59:09 joerg Exp $
d36 1
a36 1
AFLAGS+=	-x assembler-with-cpp
@


1.100.32.1
log
@sync with head
@
text
@d1 1
a1 1
# $NetBSD$
d36 1
a36 1
AFLAGS+=	-x assembler-with-cpp
@


1.100.40.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.101 2011/01/21 15:59:09 joerg Exp $
d36 1
a36 1
AFLAGS+=	-x assembler-with-cpp
@


1.99
log
@merge ktrace-lwp.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.96.6.4 2005/11/10 13:59:38 skrll Exp $
d74 1
@


1.99.50.1
log
@sync with HEAD
@
text
@d1 1
a1 1
# Makefile.sun3,v 1.99 2005/12/11 12:19:20 christos Exp
a73 1
lock_stubs.o: assym.h
@


1.98
log
@s/GENASSYM/GENASSYM_CONF/ so we can use "GENASSYM" as the program name.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.97 2004/06/04 04:45:51 thorpej Exp $
@


1.98.2.1
log
@sync with head.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.98 2005/05/31 04:03:11 christos Exp $
a73 1
lock_stubs.o: assym.h
@


1.97
log
@Add the %MAKEOPTIONSAPPEND token at the end of the file, after the
common Makefile.kern.inc has been included.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.96 2002/11/26 18:51:17 thorpej Exp $
d29 1
a29 1
GENASSYM=	${SUN3}/${MACHTYPE}/genassym.cf
@


1.96
log
@The traditional C preprocessor is fixed in GCC 3.3 now, so no need
to skip -traditional-cpp for HAVE_GCC3.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.95 2002/06/04 21:39:12 thorpej Exp $
d104 5
@


1.96.10.1
log
@Pull up patch (requested by martti in ticket #1086)
Move ipf to sys/dist/ipf and sync w. trunk
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.96 2002/11/26 18:51:17 thorpej Exp $
a103 5

##
## (10) IPF source directory
##
CPPFLAGS+=	-I$S/dist/ipf
@


1.96.6.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.97 2004/06/04 04:45:51 thorpej Exp $
a103 5

##
## (10) Appending make options.
##
%MAKEOPTIONSAPPEND
@


1.96.6.2
log
@Sync with HEAD.
@
text
@@


1.96.6.3
log
@Fix the sync with head I botched.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.96.6.1 2004/08/03 10:42:03 skrll Exp $
@


1.96.6.4
log
@Sync with HEAD. Here we go again...
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.96.6.3 2004/09/21 13:23:19 skrll Exp $
d29 1
a29 1
GENASSYM_CONF=	${SUN3}/${MACHTYPE}/genassym.cf
@


1.95
log
@Don't use -traditional-cpp if HAVE_GCC3.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.94 2002/05/30 22:02:13 thorpej Exp $
a35 3
.if defined(HAVE_GCC3)
AFLAGS+=	-x assembler-with-cpp
.else
a36 1
.endif
@


1.94
log
@Get rid of the XDEFS thing; the new toolchain provides a proper
cross compilation environment.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.93 2002/02/10 18:22:31 chs Exp $
d36 3
d40 1
@


1.93
log
@add "-m68030" for sun3x, addresses PR 15312.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.92 2001/12/09 05:00:51 atatat Exp $
d34 1
a34 3
XDEFS=		-undef -D__NetBSD__ -Dm68k -Dmc68000 -D__m68k__ -D__ELF__
DEFINES=	-Dsun3
CPPFLAGS+=	${XDEFS} ${DEFINES}
@


1.93.8.1
log
@catch up with -current.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.95 2002/06/04 21:39:12 thorpej Exp $
d34 3
a36 1
CPPFLAGS+=	-Dsun3
a37 3
.if defined(HAVE_GCC3)
AFLAGS+=	-x assembler-with-cpp
.else
a38 1
.endif
@


1.93.10.1
log
@Pull up revision 1.94 (requested by thorpej in ticket #99):
Get rid of the XDEFS thing; the new toolchain provides a proper
cross compilation environment.
@
text
@d1 1
a1 1
# $NetBSD$
d34 3
a36 1
CPPFLAGS+=	-Dsun3
@


1.92
log
@Roll the rest of the ports over to the new MI kernel build machinery.
Any problems reported by testers have been fixed, and massive
cross-compiling of kernels has shown that any problems that remain
with actually building kernels are not related to this.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.91 2001/11/20 12:56:41 lukem Exp $
d37 1
a37 1
CFLAGS+=	-msoft-float -fno-defer-pop
@


1.91
log
@cleanup:
	options SPACE TAB
	makeoptions TAB
	psuedo-device TAB
	remove trailing whitespace
	replace multiple spaces -> tabs
	options "FOO" -> options FOO
	options "FOO=bar" -> options FOO=bar
	options "FOO=\"bar\"" -> options FOO="\"bar\""
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.90 2001/11/20 08:43:40 lukem Exp $
d14 5
d22 1
a22 1

d25 9
a33 34
# DEBUG is set to -g if debugging.
# PROF is set to -pg if profiling.

AR?=	ar
AS?=	as
CC?=	cc
CPP?=	cpp
LD?=	ld
LORDER?=lorder
MKDEP?=	mkdep
NM?=	nm
RANLIB?=ranlib
SIZE?=	size
STRIP?=	strip
TSORT?=	tsort -q

COPTS?=	-O2 -fno-defer-pop

# source tree is located via $S relative to the compilation directory
.ifndef S
S!=	cd ../../../..; pwd
.endif
SUN3=	$S/arch/sun3

.if ${MACHTYPE} == "sun3x"
TEXTADDR=F8004000
.else
TEXTADDR=0E004000
.endif

# Override CPP defaults entirely, so cross-compilation works.
# Keep -nostdinc before all -I flags, similar for -undef ...
HAVE_EGCS!=	${CC} --version | egrep "^(2\.[89]|egcs)" ; echo
INCLUDES=	-nostdinc -I. -I$S/arch -I$S
d35 8
a42 19
DEFINES=	-D_KERNEL -D_KERNEL_OPT -Dsun3
CPPFLAGS=	${INCLUDES} ${XDEFS} ${DEFINES} ${IDENT} ${PARAM}
# Make it easy to override this on the command line...
CWARNFLAGS?= 	-Werror -Wall -Wstrict-prototypes -Wmissing-prototypes \
		-Wpointer-arith
# XXX Delete -Wuninitialized for now, since the compiler doesn't
# XXX always get it right.  --thorpej
CWARNFLAGS+=	-Wno-uninitialized
.if (${HAVE_EGCS} != "")
CWARNFLAGS+=	-Wno-main
.endif
CFLAGS= 	${DEBUG} ${COPTS} -msoft-float ${CWARNFLAGS}
AFLAGS=		-x assembler-with-cpp -traditional-cpp -D_LOCORE
LINKFLAGS=	-N -Ttext ${TEXTADDR} -e start
STRIPFLAGS=	-g

%INCLUDES

### find out what to use for libkern
a43 6
.include "$S/lib/libkern/Makefile.inc"
.ifndef PROF
LIBKERN=	${KERNLIB}
.else
LIBKERN=	${KERNLIB_PROF}
.endif
d45 6
a50 7
### find out what to use for libcompat
.include "$S/compat/common/Makefile.inc"
.ifndef PROF
LIBCOMPAT=	${COMPATLIB}
.else
LIBCOMPAT=	${COMPATLIB_PROF}
.endif
d52 2
a53 2
# compile rules: rules are named NORMAL_${SUFFIX} where SUFFIX is
# the file suffix, capitalized (e.g. C for a .c file).
d55 5
a59 35
NORMAL_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
NOPROF_C=	${CC} ${CFLAGS} ${CPPFLAGS} -c $<
NORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<

# These comments help identify sections in the generated Makefile.
# OBJS, CFILES, SFILES follow:

%OBJS

%CFILES

%SFILES

# OBJS, CFILES, SFILES done.

# load lines for config "xxx" will be emitted as:
# xxx: ${SYSTEM_DEP} swapxxx.o
#	${SYSTEM_LD_HEAD}
#	${SYSTEM_LD} swapxxx.o
#	${SYSTEM_LD_TAIL}
SYSTEM_OBJ=	locore.o \
		param.o ioconf.o ${OBJS} ${LIBCOMPAT} ${LIBKERN}
SYSTEM_DEP=	Makefile ${SYSTEM_OBJ}
SYSTEM_LD_HEAD=	@@rm -f $@@
SYSTEM_LD=	@@echo ${LD} ${LINKFLAGS} -o $@@ '$${SYSTEM_OBJ}' vers.o; \
		${LD} ${LINKFLAGS} -o $@@ ${SYSTEM_OBJ} vers.o
SYSTEM_LD_TAIL=	@@${SIZE} $@@; chmod 755 $@@

DEBUG?=
.if ${DEBUG} == "-g"
LINKFLAGS+=	-X
SYSTEM_LD_TAIL+=; \
		echo mv -f $@@ $@@.gdb; mv -f $@@ $@@.gdb; \
		echo ${STRIP} ${STRIPFLAGS} -o $@@ $@@.gdb; \
		${STRIP} ${STRIPFLAGS} -o $@@ $@@.gdb
d61 1
a61 1
LINKFLAGS+=	-S
d63 1
d65 3
a67 65
# LOAD+

%LOAD

# LOAD-

assym.h: $S/kern/genassym.sh ${SUN3}/${MACHTYPE}/genassym.cf
	sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \
	    < ${SUN3}/${MACHTYPE}/genassym.cf > assym.h.tmp && \
	mv -f assym.h.tmp assym.h

param.c: $S/conf/param.c
	rm -f param.c
	cp $S/conf/param.c .

param.o: param.c Makefile
	${NORMAL_C}

ioconf.o: ioconf.c
	${NORMAL_C}

newvers: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP}
	sh $S/conf/newvers.sh
	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c vers.c

__CLEANKERNEL: .USE
	@@echo "${.TARGET}ing the kernel objects"
	rm -f eddep *netbsd netbsd.gdb tags *.[io] [a-z]*.s \
	    [Ee]rrs linterrs makelinks assym.h.tmp assym.h

__CLEANDEPEND: .USE
	rm -f .depend

clean: __CLEANKERNEL

cleandir distclean: __CLEANKERNEL __CLEANDEPEND

lint:
	@@lint -hbxncez -Dvolatile= ${CPPFLAGS} -UKGDB \
	    ${CFILES} ioconf.c param.c | \
	    grep -v 'static function .* unused'

tags:
	@@echo "see $S/kern/Makefile for tags"

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

SRCS=	${SUN3}/${MACHTYPE}/locore.s \
	param.c ioconf.c ${CFILES} ${SFILES}

depend: .depend
.depend: ${SRCS} assym.h param.c
	${MKDEP} ${CPPFLAGS} param.c ioconf.c ${CFILES}
	sh $S/kern/genassym.sh ${MKDEP} -f assym.dep ${CFLAGS} \
	  ${CPPFLAGS} < ${SUN3}/${MACHTYPE}/genassym.cf
	@@sed -e 's/.*\.o:.*\.c/assym.h:/' < assym.dep >> .depend
	@@rm -f assym.dep

dependall: depend all
a68 5

# XXX - see below
#	${MKDEP} -a ${APPFLAGS} ${SUN3}/${MACHTYPE}/locore.s
#	${MKDEP} -a ${APPFLAGS} ${SFILES}
#
a76 9
# depend on root or device configuration
conf.o: Makefile

# depend on network or filesystem configuration
uipc_proto.o vfs_conf.o: Makefile

# depend on maxusers
machdep.o: Makefile

d83 12
a94 2
locore.o: ${SUN3}/${MACHTYPE}/locore.s
	${NORMAL_S}
d96 1
a96 1
# Generated rules follow:
d98 1
a98 11
# The install target can be redefined by putting a
# install-kernel-${MACHINE_NAME} target into /etc/mk.conf
MACHINE_NAME!=  uname -n
install: install-kernel-${MACHINE_NAME}
.if !target(install-kernel-${MACHINE_NAME}})
install-kernel-${MACHINE_NAME}:
	rm -f /onetbsd
	ln /netbsd /onetbsd
	cp netbsd /nnetbsd
	mv /nnetbsd /netbsd
.endif
d101 5
@


1.90
log
@- pull in opt_kgdb.h where necessary
- replace opt_kgdb_machdep.h with opt_kgdb.h
- defparam opt_kgdb.h:
	KGDB_DEV KGDB_DEVNAME KGDB_DEVADDR KGDB_DEVRATE KGDB_DEVMODE
- move from opt_ddbparam.h to opt_ddb.h:
	DDB_FROMCONSOLE DDB_ONPANIC DDB_HISTORY_SIZE DDB_BREAK_CHAR SYMTAB_SPACE
- replace KGDBDEV with KGDB_DEV
- replace KGDBADDR with KGDB_DEVADDR
- replace KGDBMODE with KGDB_DEVMODE
- replace KGDBRATE with KGDB_DEVRATE
- use `9600' instead of `0x2580' for 9600 baud rate
- use correct quotes for  options KGDB_DEVNAME="\"com\""
- use correct quotes for  options KGDB_DEV="17*256+0"
- remove unnecessary dependancy on Makefile for kgdb_stub.o
- minor whitespace cleanup
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.89 2001/10/26 06:45:40 jmc Exp $
d52 1
a52 1
HAVE_EGCS!=	${CC} --version | egrep "^(2\.[89]|egcs)" ; echo 
d61 1
a61 1
# XXX always get it right.  --thorpej 
d213 3
a215 3
 
# depend on network or filesystem configuration 
uipc_proto.o vfs_conf.o: Makefile 
d220 1
a220 1
# depend on CPU configuration 
@


1.89
log
@Change defaults for kernel compiles. Default all to USETOOLS?=no and have
the etc Makefile override that by putting USETOOLS into $.MAKEOVERRIDES
This way the default for kernel compiles is still to use the installed
toolchain instead of depending on $TOOLDIR. $TOOLDIR can be used by
simply adding USETOOLS=yes to the command line as usual.

Adjust each ports template to set the default no setting and also pull in
bsd.own.mk if they weren't already to ensure they'll build correctly
with the new toolchain setup.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.88 2001/10/23 19:26:47 thorpej Exp $
a221 3

# depends on KGDBDEV, KGDBRATE
kgdb_stub.o: Makefile
@


1.89.2.1
log
@file Makefile.sun3 was added on branch nathanw_sa on 2002-01-08 00:28:17 +0000
@
text
@d1 246
@


1.89.2.2
log
@Catch up to -current.
@
text
@a0 105
# $NetBSD: Makefile.sun3,v 1.89.2.1 2002/01/08 00:28:17 nathanw Exp $

# Makefile for NetBSD
#
# This makefile is constructed from a machine description:
#	config machineid
# Most changes should be made in the machine description
#	/sys/arch/sun3/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/sun3/conf/Makefile.sun3
# after which config should be rerun for all machines of that type.
#
# To specify debugging, add the config line: makeoptions DEBUG="-g"
# A better way is to specify -g only for a few files.
#
#	makeoptions DEBUGLIST="uvm* trap if_*"

MACHINE_ARCH=m68k
USETOOLS?=	no
NEED_OWN_INSTALL_TARGET?=no
.include <bsd.own.mk>

##
## (1) port identification
##
SUN3=		$S/arch/sun3
GENASSYM=	${SUN3}/${MACHTYPE}/genassym.cf

##
## (2) compile settings
##
XDEFS=		-undef -D__NetBSD__ -Dm68k -Dmc68000 -D__m68k__ -D__ELF__
DEFINES=	-Dsun3
CPPFLAGS+=	${XDEFS} ${DEFINES}
CFLAGS+=	-msoft-float -fno-defer-pop
AFLAGS+=	-x assembler-with-cpp -traditional-cpp

##
## (3) libkern and compat
##
KERN_AS=	obj

##
## (4) local objects, compile rules, and dependencies
##
MD_OBJS=	locore.o
MD_CFILES=
MD_SFILES=	${SUN3}/${MACHTYPE}/locore.s

locore.o: ${SUN3}/${MACHTYPE}/locore.s
	${NORMAL_S}

##
## (5) link settings
##
.if ${MACHTYPE} == "sun3x"
TEXTADDR?=	F8004000
.else
TEXTADDR?=	0E004000
.endif
LINKFORMAT=	-N

##
## (6) port specific target dependencies
##

# For cross-compilation, the "gcc -M" mkdep script is convenient,
# but that does not correctly make rules from *.s files.  The
# easiest work-around is to just list those dependencies here.
locore.o:   assym.h m68k/asm.h m68k/trap.h
copy.o:     assym.h m68k/asm.h $S/sys/errno.h
bcopy.o:    assym.h m68k/asm.h
copypage.o: assym.h m68k/asm.h

# depend on CPU configuration
db_machdep.o dvma.o machdep.o pmap.o sun3_startup.o vm_machdep.o: Makefile

# depends on DDB, etc.
stub.o: Makefile

##
## (7) misc settings
##

##
## (8) config(8) generated machinery
##
%INCLUDES

%OBJS

%CFILES

%SFILES

%LOAD

%RULES

##
## (9) port independent kernel machinery
##
.include "$S/conf/Makefile.kern.inc"
@


1.89.2.3
log
@Catch up to -current.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.89.2.2 2002/02/28 04:12:22 nathanw Exp $
d37 1
a37 1
CFLAGS+=	${CMACHFLAGS} -msoft-float -fno-defer-pop
@


1.89.2.4
log
@Catch up to -current.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.89.2.3 2002/06/20 03:41:41 nathanw Exp $
d34 3
a36 1
CPPFLAGS+=	-Dsun3
a37 3
.if defined(HAVE_GCC3)
AFLAGS+=	-x assembler-with-cpp
.else
a38 1
.endif
@


1.89.2.5
log
@Sync with HEAD.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.89.2.4 2002/12/11 06:12:33 thorpej Exp $
d36 3
d40 1
@


1.88
log
@Set MACHINE_ARCH explicitly in Makefiles for which it is constant.
Also, since config(8) now explcitly sets MACHINE, there is no need
to do it here in the Makefile.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.87 2001/05/29 02:20:26 mrg Exp $
d16 3
@


1.88.2.1
log
@Sync the thorpej-mips-cache branch with -current.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.89 2001/10/26 06:45:40 jmc Exp $
a15 3
USETOOLS?=	no

.include <bsd.own.mk>
@


1.87
log
@define _KERNEL_OPT as well as _KERNEL. we will use this in the future to
get kernel "opt_foo.h" headers, rather than _KERNEL && !_LKM.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.86 2001/02/22 07:11:08 chs Exp $
d15 2
a18 4

# XXX - Make cross-build work...
MACHINE_ARCH=m68k
MACHINE=sun3
@


1.87.2.1
log
@Sync kqueue branch with -current.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.92 2001/12/09 05:00:51 atatat Exp $
a13 5
#
# To specify debugging, add the config line: makeoptions DEBUG="-g"
# A better way is to specify -g only for a few files.
#
#	makeoptions DEBUGLIST="uvm* trap if_*"
d15 4
d20 33
a52 13
USETOOLS?=	no
NEED_OWN_INSTALL_TARGET?=no
.include <bsd.own.mk>

##
## (1) port identification
##
SUN3=		$S/arch/sun3
GENASSYM=	${SUN3}/${MACHTYPE}/genassym.cf

##
## (2) compile settings
##
d54 19
a72 8
DEFINES=	-Dsun3
CPPFLAGS+=	${XDEFS} ${DEFINES}
CFLAGS+=	-msoft-float -fno-defer-pop
AFLAGS+=	-x assembler-with-cpp -traditional-cpp

##
## (3) libkern and compat
##
d74 6
d81 23
a103 6
##
## (4) local objects, compile rules, and dependencies
##
MD_OBJS=	locore.o
MD_CFILES=
MD_SFILES=	${SUN3}/${MACHTYPE}/locore.s
d105 1
a105 2
locore.o: ${SUN3}/${MACHTYPE}/locore.s
	${NORMAL_S}
d107 20
a126 5
##
## (5) link settings
##
.if ${MACHTYPE} == "sun3x"
TEXTADDR?=	F8004000
d128 1
a128 1
TEXTADDR?=	0E004000
a129 1
LINKFORMAT=	-N
d131 65
a195 3
##
## (6) port specific target dependencies
##
d197 5
d210 10
a219 1
# depend on CPU configuration
d222 3
d228 2
a229 8
##
## (7) misc settings
##

##
## (8) config(8) generated machinery
##
%INCLUDES
d231 1
a231 1
%OBJS
d233 11
a243 5
%CFILES

%SFILES

%LOAD
a245 5

##
## (9) port independent kernel machinery
##
.include "$S/conf/Makefile.kern.inc"
@


1.87.2.2
log
@Catch up with -current.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.87.2.1 2002/01/10 19:49:43 thorpej Exp $
d37 1
a37 1
CFLAGS+=	${CMACHFLAGS} -msoft-float -fno-defer-pop
@


1.87.2.3
log
@catch up with -current on kqueue branch
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.87.2.2 2002/03/16 16:00:05 jdolecek Exp $
d34 3
a36 1
CPPFLAGS+=	-Dsun3
a37 3
.if defined(HAVE_GCC3)
AFLAGS+=	-x assembler-with-cpp
.else
a38 1
.endif
@


1.86
log
@switch sun3 to ELF.  highlight include:
add "%" prefix to register names in assembly code.
change assembly functions to return values in %a0 instead of %d0.
C symbols no longer prepend an underscore, adjust assembly code for this.
32-bit values are now 32-bit aligned instead of 16-bit aligned,
adjust structure packing and padding to override this where necessary.
make EXEC_ELF std, make EXEC_AOUT and COMPAT_AOUT_M68K optional.
use the MI loadfile() instead of several home-grown versions.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.85 2001/02/04 01:26:44 tsutsui Exp $
d54 1
a54 1
DEFINES=	-D_KERNEL -Dsun3
@


1.86.2.1
log
@Catch up to -current.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.86 2001/02/22 07:11:08 chs Exp $
d54 1
a54 1
DEFINES=	-D_KERNEL -D_KERNEL_OPT -Dsun3
@


1.85
log
@Add -D__m68k__ to XDEF.
It is required by sys/compat/linux/common/linux_exec.h.

XXX: -undef is still required?
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.84 2000/12/17 15:52:44 jdolecek Exp $
d53 1
a53 1
XDEFS=		-undef -D__NetBSD__ -Dm68k -Dmc68000 -D__m68k__
d66 1
a66 3
# No, we may NOT assume that the compiler does -x whatever...
APPFLAGS=	-P -traditional ${CPPFLAGS} -D_LOCORE
AFLAGS=
d94 1
a94 6

# Do NOT assume the compiler does "-x funny_format" (gcc-specific)
# This needs an intermediate file.  The original file is always
# safe in some far away directory, so just use the base name.
NORMAL_S=	${CPP} ${APPFLAGS} $< > $*.s ;\
		${AS} ${AFLAGS} -o $@@ $*.s ; rm $*.s
@


1.84
log
@delete obsolete comment
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.83 2000/12/07 17:51:06 jdolecek Exp $
d53 1
a53 1
XDEFS=		-undef -D__NetBSD__ -Dm68k -Dmc68000
@


1.83
log
@convert to use genassym.cf & genassym.sh, as other ports do
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.82 2000/05/09 00:56:28 hubertf Exp $
a13 6
#
# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE VISIBLE 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
@


1.82
log
@Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.81 2000/05/09 00:32:26 thorpej Exp $
d150 4
a153 11
# Use awk to cross-build assym.h from the genassym.s file.
assym.h: genassym.o $S/kern/genassym.awk
	awk -f $S/kern/genassym.awk < genassym.s > assym.h.tmp
	mv -f assym.h.tmp $@@

# The above rule lists genassym.o as a prerequisite so that the
# generated .depend rule is effective, even though we actually
# use genassym.s instead.   This always creates both.
genassym.o: ${SUN3}/${MACHTYPE}/genassym.c
	${CC} ${CPPFLAGS} -S $<
	${CC} -c $*.s
d203 4
a206 1
	${MKDEP} -a ${CPPFLAGS} ${SUN3}/${MACHTYPE}/genassym.c
@


1.81
log
@HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well.  Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.80 2000/02/01 05:25:48 tsutsui Exp $
d249 12
@


1.80
log
@Revert STRIPPROG -> STRIP
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.79 2000/01/24 20:36:17 tron Exp $
d57 1
a57 1
HAVE_GCC28!=	${CC} --version | egrep "^(2\.8|egcs)" ; echo 
d65 4
a68 1
.if (${HAVE_GCC28} != "")
@


1.79
log
@Add "dependall" target for comfort.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.78 2000/01/19 16:30:01 tsutsui Exp $
d38 1
a38 1
STRIPPROG?=strip
d135 2
a136 2
		echo ${STRIPPROG} ${STRIPFLAGS} -o $@@ $@@.gdb; \
		${STRIPPROG} ${STRIPFLAGS} -o $@@ $@@.gdb
@


1.78
log
@STRIP -> STRIPPROG
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.77 2000/01/19 14:45:13 tsutsui Exp $
d208 3
@


1.77
log
@Change STRIPFLAGS=-g for cross-toolchains.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.76 1999/07/26 05:20:48 cgd Exp $
d38 1
a38 1
STRIP?=	strip
d135 2
a136 2
		echo ${STRIP} ${STRIPFLAGS} -o $@@ $@@.gdb; \
		${STRIP} ${STRIPFLAGS} -o $@@ $@@.gdb
@


1.76
log
@be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.75 1999/07/09 09:53:00 mrg Exp $
d73 1
a73 1
STRIPFLAGS=	-d
@


1.76.2.1
log
@Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.82 2000/05/09 00:56:28 hubertf Exp $
d57 1
a57 1
HAVE_EGCS!=	${CC} --version | egrep "^(2\.[89]|egcs)" ; echo 
d65 1
a65 4
# XXX Delete -Wuninitialized for now, since the compiler doesn't
# XXX always get it right.  --thorpej 
CWARNFLAGS+=	-Wno-uninitialized
.if (${HAVE_EGCS} != "")
d73 1
a73 1
STRIPFLAGS=	-g
a208 3
dependall: depend all


a242 12

# The install target can be redefined by putting a
# install-kernel-${MACHINE_NAME} target into /etc/mk.conf
MACHINE_NAME!=  uname -n
install: install-kernel-${MACHINE_NAME}
.if !target(install-kernel-${MACHINE_NAME}})
install-kernel-${MACHINE_NAME}:
	rm -f /onetbsd
	ln /netbsd /onetbsd
	cp netbsd /nnetbsd
	mv /nnetbsd /netbsd
.endif
@


1.76.2.2
log
@Sync with HEAD (for UBC fixes).
@
text
@d1 1
a1 1
# $NetBSD$
d150 11
a160 4
assym.h: $S/kern/genassym.sh ${SUN3}/${MACHTYPE}/genassym.cf
	sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \
	    < ${SUN3}/${MACHTYPE}/genassym.cf > assym.h.tmp && \
	mv -f assym.h.tmp assym.h
d210 1
a210 4
	sh $S/kern/genassym.sh ${MKDEP} -f assym.dep ${CFLAGS} \
	  ${CPPFLAGS} < ${SUN3}/${MACHTYPE}/genassym.cf
	@@sed -e 's/.*\.o:.*\.c/assym.h:/' < assym.dep >> .depend
	@@rm -f assym.dep
@


1.76.2.3
log
@Sync with HEAD
@
text
@d14 6
@


1.76.2.4
log
@Sync with HEAD.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.76.2.3 2001/01/05 17:35:12 bouyer Exp $
d53 1
a53 1
XDEFS=		-undef -D__NetBSD__ -Dm68k -Dmc68000 -D__m68k__
@


1.76.2.5
log
@Sync with HEAD.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.76.2.4 2001/02/11 19:12:43 bouyer Exp $
d53 1
a53 1
XDEFS=		-undef -D__NetBSD__ -Dm68k -Dmc68000 -D__m68k__ -D__ELF__
d66 3
a68 1
AFLAGS=		-x assembler-with-cpp -traditional-cpp -D_LOCORE
d96 6
a101 1
NORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<
@


1.75
log
@clean up a bit after jason :)

- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.74 1999/01/15 23:21:27 thorpej Exp $
d134 3
a136 2
		mv -f $@@ $@@.gdb; cp -p $@@.gdb $@@; \
		${STRIP} ${STRIPFLAGS} $@@
@


1.74
log
@Don't define "mc68020".  Nothing uses it.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.73 1999/01/08 19:26:15 augustss Exp $
d74 2
@


1.74.4.1
log
@Update from trunk.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.76 1999/07/26 05:20:48 cgd Exp $
a74 2
%INCLUDES

d132 2
a133 3
		echo mv -f $@@ $@@.gdb; mv -f $@@ $@@.gdb; \
		echo ${STRIP} ${STRIPFLAGS} -o $@@ $@@.gdb; \
		${STRIP} ${STRIPFLAGS} -o $@@ $@@.gdb
@


1.73
log
@Add -Wpointer-arith warning since `void *' arithmetic is not ANSI C.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.72 1998/12/13 19:19:38 kleink Exp $
d60 1
a60 1
DEFINES=	-D_KERNEL -Dmc68020 -Dsun3
@


1.72
log
@Add -Werror and -Wmissing-prototypes, like most other ports do.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.71 1998/10/15 18:37:16 drochner Exp $
d63 2
a64 1
CWARNFLAGS?= 	-Werror -Wall -Wstrict-prototypes -Wmissing-prototypes
@


1.71
log
@change handling of libkern:
-sys/lib/libkern builds as library per default (as it was documented all
 the time)
-ports able to LKM set "KERN_AS=obj" explicitely in their Makefiles
 (for now; should depend on actual "option LKM" or -better- functions
 included for LKM use should be pulled in by a stub)
-always link libcompat before libkern - libkern stuff can be referred to
 by libcompat, but not the other way
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.70 1998/09/05 15:15:18 lukem Exp $
d63 1
a63 1
CWARNFLAGS?= 	-Wall -Wstrict-prototypes # -Wmissing-prototypes -Werror
@


1.70
log
@distclean is a synonym for cleandir
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.69 1998/05/31 23:25:43 thorpej Exp $
d75 1
d120 1
a120 1
		param.o ioconf.o ${OBJS} ${LIBKERN} ${LIBCOMPAT}
@


1.69
log
@Specify a non-profiling C rule.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.68 1998/04/12 23:47:45 tv Exp $
d178 1
a178 1
cleandir: __CLEANKERNEL __CLEANDEPEND
@


1.68
log
@Add -Wno-main conditional on compiler being gcc 2.8 or egcs.  (This adds
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.67 1998/02/05 04:56:30 gwr Exp $
d94 1
@


1.67
log
@Merge arch/sun3x into arch/sun3
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.66.2.1 1998/01/27 19:08:14 gwr Exp $
d57 1
d63 4
a66 1
CWARNFLAGS= 	-Wall -Wstrict-prototypes # -Wmissing-prototypes -Werror
@


1.66
log
@Make sure CPP, AR, AS, and RANLIB are defined.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.65 1997/11/12 22:26:35 thorpej Exp $
d49 6
d66 2
a67 2
AFLAGS= 	-m68020
LINKFLAGS=	-N -Ttext 0E004000 -e start
d145 1
a145 1
genassym.o: ${SUN3}/sun3/genassym.c
d191 1
a191 1
SRCS=	${SUN3}/sun3/locore.s \
d197 1
a197 1
	${MKDEP} -a ${CPPFLAGS} ${SUN3}/sun3/genassym.c
d200 1
a200 1
#	${MKDEP} -a ${APPFLAGS} ${SUN3}/sun3/locore.s
d229 1
a229 1
locore.o: ${SUN3}/sun3/locore.s
@


1.66.2.1
log
@Let ${MACHTYPE} select sun3 vs sun3x differences.
@
text
@d1 1
a1 1
# $NetBSD: Makefile.sun3,v 1.66 1997/11/12 23:12:32 thorpej Exp $
a48 6
.if ${MACHTYPE} == "sun3x"
TEXTADDR=F8004000
.else
TEXTADDR=0E004000
.endif

d60 2
a61 2
AFLAGS=
LINKFLAGS=	-N -Ttext ${TEXTADDR} -e start
d139 1
a139 1
genassym.o: ${SUN3}/${MACHTYPE}/genassym.c
d185 1
a185 1
SRCS=	${SUN3}/${MACHTYPE}/locore.s \
d191 1
a191 1
	${MKDEP} -a ${CPPFLAGS} ${SUN3}/${MACHTYPE}/genassym.c
d194 1
a194 1
#	${MKDEP} -a ${APPFLAGS} ${SUN3}/${MACHTYPE}/locore.s
d223 1
a223 1
locore.o: ${SUN3}/${MACHTYPE}/locore.s
@


1.65
log
@Define LORDER, NM, and TSORT here, like we do the rest of the tools.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.64 1997/10/23 01:39:20 gwr Exp $
d28 1
d36 1
d40 1
@


1.64
log
@Generate assym.h into assym.h.tmp first, then move it.  (safety)
Add a dependency for stub.o:Makefile
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.63 1997/10/04 17:14:07 gwr Exp $
d32 1
d34 1
d37 1
@


1.63
log
@use common genassym.awk
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.62 1997/10/03 07:17:46 lukem Exp $
d127 2
a128 1
	awk -f $S/kern/genassym.awk < genassym.s > $@@
d213 3
@


1.63.2.1
log
@Sync w/ trunk: tool definitions, generate assym.h in a safer way,
stub.o depends on Makefile.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.66 1997/11/12 23:12:32 thorpej Exp $
a27 1
AR?=	ar
a31 1
LORDER?=lorder
a32 2
NM?=	nm
RANLIB?=ranlib
a34 2
TSORT?=	tsort -q

d127 1
a127 2
	awk -f $S/kern/genassym.awk < genassym.s > assym.h.tmp
	mv -f assym.h.tmp $@@
a211 3

# depends on DDB, etc.
stub.o: Makefile
@


1.62
log
@define SIZE?=size, and use ${SIZE} instead of size. makes cross
compilation easier
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.61 1997/09/30 23:04:28 christos Exp $
d126 2
a127 2
assym.h: genassym.o ${SUN3}/sun3/genassym.awk
	awk -f ${SUN3}/sun3/genassym.awk < genassym.s > $@@
@


1.61
log
@PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.60 1997/09/12 07:55:21 mycroft Exp $
d33 1
d107 1
a107 1
SYSTEM_LD_TAIL=	size $@@; chmod 755 $@@
@


1.60
log
@Kill vestiges of Locore.c.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.59 1997/03/17 20:59:47 gwr Exp $
d149 7
d157 3
a159 4
clean: cleankernel
cleankernel:
	rm -f eddep *netbsd netbsd.gdb tags *.[io] [a-z]*.s \
	    [Ee]rrs linterrs makelinks genassym genassym.o assym.h
@


1.59
log
@Fixup dependencies
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.58 1997/02/10 19:23:41 gwr Exp $
d157 1
a157 2
	    ${SUN3}/sun3/Locore.c ${CFILES} \
	    ioconf.c param.c | \
@


1.59.4.1
log
@Update marc-pcmcia branch from trunk.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.60 1997/09/12 07:55:21 mycroft Exp $
d157 2
a158 1
	    ${CFILES} ioconf.c param.c | \
@


1.59.4.2
log
@Update marc-pcmcia branch from trunk.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.59.4.1 1997/09/16 03:49:29 thorpej Exp $
a32 1
SIZE?=	size
d106 1
a106 1
SYSTEM_LD_TAIL=	@@${SIZE} $@@; chmod 755 $@@
d125 2
a126 2
assym.h: genassym.o $S/kern/genassym.awk
	awk -f $S/kern/genassym.awk < genassym.s > $@@
d149 3
a151 2
__CLEANKERNEL: .USE
	@@echo "${.TARGET}ing the kernel objects"
d153 1
a153 8
	    [Ee]rrs linterrs makelinks assym.h.tmp assym.h

__CLEANDEPEND: .USE
	rm -f .depend

clean: __CLEANKERNEL

cleandir: __CLEANKERNEL __CLEANDEPEND
@


1.58
log
@Add -fno-defer-pop to COPTS (helps ddb backtrace).
Add AFLAGS=-m68020 and use it with ${AS} commands.
Depend kgdb_stub.o on Makefile (KGDBDEV, KGDBRATE).
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.57 1997/02/07 22:55:44 gwr Exp $
d150 2
a151 1
clean:
d186 5
a190 3
# easiest compromise is to just list those dependencies here.
locore.o: assym.h machine/trap.h m68k/trap.h
copy.o:   assym.h $S/sys/errno.h
d193 1
a193 1
autoconf.o conf.o: Makefile
d199 1
a199 1
genassym.o machdep.o: Makefile
@


1.57
log
@Get rid of HOSTED_CC.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.56 1997/02/04 17:15:38 gwr Exp $
d34 1
a34 1
COPTS?=	-O2
d49 1
a49 1
CWARNFLAGS= 	-Werror -Wall -Wstrict-prototypes # -Wmissing-prototypes
d53 1
d82 1
a82 1
		${AS} -o $@@ $*.s ; rm $*.s
d125 1
a125 1
assym.h: genassym.o genassym.s ${SUN3}/sun3/genassym.awk
d129 4
a132 5
# generated .depend rule is effective, even though we really use
# the genassym.s file.   This always creates both.  Also create
# the .i file so it can be examined (or compiled elsewhere).
genassym.o genassym.s : genassym.i
	${CC} ${COPTS} -S $*.i
a134 3
genassym.i: ${SUN3}/sun3/genassym.c
	${CC} ${CPPFLAGS} -E $< > $*.i

d200 3
@


1.56
log
@change :: to :
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.55 1997/02/04 05:08:50 perry Exp $
a35 3
# Need to override this for cross compilation.
HOSTED_CC?=	${CC}

d72 2
a73 2
# compile rules: rules are named ${TYPE}_${SUFFIX} where TYPE is NORMAL or
# HOSTED}, and SUFFIX is the file suffix, capitalized (e.g. C for a .c file).
d123 11
a133 2
assym.h: genassym
	./genassym >assym.h
d135 2
a136 8
# Doing a cross-build of this is very tricky, and very dependent
# on compatibility of things like structure member alignment in
# the compiler used as HOSTED_CC (must match the native compiler).
# Often this is not possible at all, and you just have to build
# the assym.h file by hand on some other machine. -gwr
genassym: ${SUN3}/sun3/genassym.c
	${CC} ${CPPFLAGS} -E $< > $@@.i
	${HOSTED_CC} -o $@@ $@@.i
@


1.56.2.1
log
@Merge in changes from The Trunk
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.58 1997/02/10 19:23:41 gwr Exp $
d34 4
a37 1
COPTS?=	-O2 -fno-defer-pop
d52 1
a52 1
CWARNFLAGS= 	-Wall -Wstrict-prototypes # -Wmissing-prototypes -Werror
a55 1
AFLAGS= 	-m68020
d75 2
a76 2
# compile rules: rules are named NORMAL_${SUFFIX} where SUFFIX is
# the file suffix, capitalized (e.g. C for a .c file).
d84 1
a84 1
		${AS} ${AFLAGS} -o $@@ $*.s ; rm $*.s
d126 11
a136 10
# Use awk to cross-build assym.h from the genassym.s file.
assym.h: genassym.o ${SUN3}/sun3/genassym.awk
	awk -f ${SUN3}/sun3/genassym.awk < genassym.s > $@@

# The above rule lists genassym.o as a prerequisite so that the
# generated .depend rule is effective, even though we actually
# use genassym.s instead.   This always creates both.
genassym.o: ${SUN3}/sun3/genassym.c
	${CC} ${CPPFLAGS} -S $<
	${CC} -c $*.s
a202 3

# depends on KGDBDEV, KGDBRATE
kgdb_stub.o: Makefile
@


1.55
log
@Nuke some options GENERIC residue.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.54 1997/02/04 04:32:21 perry Exp $
d153 1
a153 1
clean::
d177 1
a177 1
depend:: .depend
@


1.54
log
@Nuke some GENERIC residue.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.53 1996/12/17 21:10:35 gwr Exp $
d159 1
a159 1
	    ${SUN3}/sun3/Locore.c ${CFILES} ${SUN3}/sun3/swapgeneric.c \
@


1.53
log
@Make this compile with -Werror -Wall -Wstrict-prototypes
(finally! yea!)  Also get rid of __BROKEN_INDIRECT_CONFIG
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.52 1996/12/01 06:12:38 jonathan Exp $
d158 1
a158 1
	@@lint -hbxncez -DGENERIC -Dvolatile= ${CPPFLAGS} -UKGDB \
@


1.52
log
@* Replace explicit -O2 in CFLAGS with  COPTS macro. Default COPTS?= -O2.
  Lets users over-ride with makeoptions COPTS="..." in kernel config files.

  Leave `mandatory' flags (like  -msoft-float which  on m68k enforces no
  FP in kernel) in CFLAGS.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.51 1996/09/09 21:07:08 mycroft Exp $
d24 5
d30 1
d34 4
a37 1
COPTS?= 	-O2
d46 2
a47 1
INCLUDES=	-I. -I$S/arch -I$S -nostdinc
d49 7
a55 5
CPPFLAGS=	${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL \
		-Dmc68020 -Dsun3 ${XDEFS}
CWARNFLAGS= 	-Werror # -Wall -Wstrict-prototypes -Wmissing-prototypes
CFLAGS= 	${DEBUG} ${COPTS} ${CWARNFLAGS} -msoft-float
AFLAGS=		-x assembler-with-cpp -traditional-cpp -D_LOCORE
a58 4
HOSTED_CC=	${CC}
HOSTED_CPPFLAGS=${CPPFLAGS:S/^-nostdinc$//}
HOSTED_CFLAGS=	${CFLAGS}

a78 1
NORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<
d80 8
a87 1
HOSTED_C=	${HOSTED_CC} ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} -c $<
d95 2
d108 1
a108 1
SYSTEM_LD_TAIL=	@@size $@@; chmod 755 $@@
d114 2
a115 2
		echo cp $@@ $@@.gdb; rm -f $@@.gdb; cp $@@ $@@.gdb; \
		echo ${STRIP} ${STRIPFLAGS} $@@; ${STRIP} ${STRIPFLAGS} $@@
d120 2
d124 2
d129 8
a136 5
genassym: genassym.o
	${CC} -o $@@ genassym.o

genassym.o: ${SUN3}/sun3/genassym.c
	${HOSTED_C}
d176 1
d179 2
a180 3
	${MKDEP} ${AFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
	${MKDEP} -a ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} \
	    ${SUN3}/sun3/genassym.c
a191 1

d204 2
d207 1
a207 2
locore.o: ${SUN3}/sun3/locore.s assym.h
	${NORMAL_S}
@


1.51
log
@Move strip(1) flags into a separate variable, so that $STRIP can
be passed to subordinate make(1)s.  Remove $TOUCH.  Add HOSTED_CC,
HOSTED_CPPFLAGS, and HOSTED_CFLAGS, and use them when depending genassym.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.50 1996/08/31 21:41:51 mycroft Exp $
d28 1
d42 1
a42 1
CFLAGS= 	${DEBUG} ${CWARNFLAGS} -O2 -msoft-float
@


1.50
log
@Wrap the default definition of `S' in `.ifndef'.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.49 1996/08/12 00:52:11 mycroft Exp $
d27 1
a27 2
STRIP?=	strip -d
TOUCH?=	touch -f -c
d44 5
d72 1
a72 1
HOSTED_C=	${NORMAL_C:S/^-pg$//:S/^-p$//:S/^-nostdinc$//}
d98 1
a98 1
		echo ${STRIP} $@@; ${STRIP} $@@
d155 2
a156 1
	${MKDEP} -a ${CFLAGS} ${CPPFLAGS} ${SUN3}/sun3/genassym.c
@


1.49
log
@Put  into .  Remove hooks for `config-dependent' and
`device-driver' flags.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.48 1996/08/10 06:10:07 mycroft Exp $
d31 1
d33 1
@


1.48
log
@* Add a HOSTED_C_C variable, which strips `-p', `-pg', and
`-nostdinc', and use it when building genassym.
* Use `-nostdinc' just to be sure we're self-contained.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.47 1996/08/10 05:29:53 mycroft Exp $
d37 2
a38 1
CPPFLAGS=	${INCLUDES} ${IDENT} -D_KERNEL -Dmc68020 -Dsun3 ${XDEFS}
d60 2
a61 4
# compile rules: rules are named ${TYPE}_${SUFFIX}${CONFIG_DEP}
# where TYPE is NORMAL, DRIVER, or PROFILE}; SUFFIX is the file suffix,
# capitalized (e.g. C for a .c file), and CONFIG_DEP is _C if the file
# is marked as config-dependent.
a63 5
NORMAL_C_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<

DRIVER_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
DRIVER_C_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<

a64 1
NORMAL_S_C=	${CC} ${AFLAGS} ${CPPFLAGS} ${PARAM} -c $<
d66 1
a66 1
HOSTED_C_C=	${NORMAL_C_C:S/^-pg$//:S/^-p$//:S/^-nostdinc$//}
d106 1
a106 1
	${HOSTED_C_C}
d113 1
a113 1
	${NORMAL_C_C}
d128 1
a128 1
	@@lint -hbxncez -DGENERIC -Dvolatile= ${CPPFLAGS} ${PARAM} -UKGDB \
d149 1
a149 1
	${MKDEP} -a ${CFLAGS} ${CPPFLAGS} ${PARAM} ${SUN3}/sun3/genassym.c
@


1.47
log
@* Define CWARNFLAGS and MKDEP in some moderately consistent fashion.
* Make S expand to an absolute path at compile time.
* Use `-S' rather than `-x' to remove debugging symbols.
* Garbage collect unused variables.
* Reverse a handful of port-specific changes that do not correspond to
the common build model and are not needed.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.46 1996/06/20 03:47:27 gwr Exp $
d35 1
a35 1
INCLUDES=	-I. -I$S/arch -I$S
d73 2
d113 1
a113 1
	${NORMAL_C_C}
@


1.46
log
@Take control over the kernel libraries so cross-build is easier.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.45 1996/06/18 16:18:34 gwr Exp $
a23 1
AS?=	as
a24 1
CPP?=	cpp
d31 2
a32 2
S=	../../../..
SUN3=	../..
d35 6
a40 8
INCLUDES=	-nostdinc -I. -I$S/arch -I$S
XDEFS= 		-undef -D__NetBSD__ -Dm68k -Dmc68000
DEFINES=	-D_KERNEL -Dmc68020 -Dsun3
CPPFLAGS=	${INCLUDES} ${XDEFS} ${DEFINES} ${IDENT}
# Make it easy to override this on the command line...
WFLAGS= 	-Werror # -Wall -Wstrict-prototypes -Wmissing-prototypes
CFLAGS= 	${DEBUG} -O2 -msoft-float ${WFLAGS}
APPFLAGS=	-P -traditional ${CPPFLAGS} -D_LOCORE
d43 2
a44 2
# What to use for libkern: (see ../compile/libkern)
# Note, this can be shared by all kernel configs.
d46 1
a46 1
LIBKERN=	../libkern/libkern.o
d48 1
a48 1
LIBKERN=	../libkern/libkern.po
d51 7
a57 3
# What to use for libcompat:
# Would like to share this too, but it's config dependent.
LIBCOMPAT=	libcompat.a
d70 2
a71 6
NORMAL_S=	${CPP} ${APPFLAGS} $< > $*.s ;\
		${AS} -o $@@ $*.s ; rm $*.s
NORMAL_S_C=	${CPP} ${APPFLAGS} ${PARAM} $< > $*.s ;\
		${AS} -o $@@ $*.s ; rm $*.s

# OBJS, CFILES, SFILES follow:
a78 2
# OBJS, CFILES, SFILES done.

a101 2
# LOAD+

a103 10
# LOAD-

.include "../libcompat/Makefile.inc"

${LIBKERN} : .NOTMAIN .FORCE
	@@echo "making sure libkern is up-to-date..."
	@@(cd ../libkern ; ${MAKE})

.FORCE:

a150 1

d152 3
a154 4
.depend: ${SRCS} assym.h param.c ${COMPAT_DEPENDS}
	${MKDEP} ${CPPFLAGS} param.c ioconf.c ${CFILES}
	${MKDEP} -a ${CPPFLAGS} ${PARAM} ${SUN3}/sun3/genassym.c
	${MKDEP} -a ${CPPFLAGS} ${COMPAT_DEPENDS}
d166 1
d179 2
a180 1
locore.o: ${SUN3}/sun3/locore.s
a181 2

# Rules follow
@


1.46.2.1
log
@file Makefile.sun3 was added on branch netbsd-1-2 on 1996-06-20 03:47:28 +0000
@
text
@d1 203
@


1.46.2.2
log
@Take control over the kernel libraries so cross-build is easier.
@
text
@a0 203
#	$NetBSD: Makefile.sun3,v 1.46 1996/06/20 03:47:27 gwr Exp $

# Makefile for NetBSD
#
# This makefile is constructed from a machine description:
#	config machineid
# Most changes should be made in the machine description
#	/sys/arch/sun3/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/sun3/conf/Makefile.sun3
# after which config should be rerun for all machines of that type.
#
# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE VISIBLE 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

# DEBUG is set to -g if debugging.
# PROF is set to -pg if profiling.

AS?=	as
CC?=	cc
CPP?=	cpp
LD?=	ld
MKDEP?=	mkdep
STRIP?=	strip -d
TOUCH?=	touch -f -c

# source tree is located via $S relative to the compilation directory
S=	../../../..
SUN3=	../..

# Override CPP defaults entirely, so cross-compilation works.
INCLUDES=	-nostdinc -I. -I$S/arch -I$S
XDEFS= 		-undef -D__NetBSD__ -Dm68k -Dmc68000
DEFINES=	-D_KERNEL -Dmc68020 -Dsun3
CPPFLAGS=	${INCLUDES} ${XDEFS} ${DEFINES} ${IDENT}
# Make it easy to override this on the command line...
WFLAGS= 	-Werror # -Wall -Wstrict-prototypes -Wmissing-prototypes
CFLAGS= 	${DEBUG} -O2 -msoft-float ${WFLAGS}
APPFLAGS=	-P -traditional ${CPPFLAGS} -D_LOCORE
LINKFLAGS=	-N -Ttext 0E004000 -e start

# What to use for libkern: (see ../compile/libkern)
# Note, this can be shared by all kernel configs.
.ifndef PROF
LIBKERN=	../libkern/libkern.o
.else
LIBKERN=	../libkern/libkern.po
.endif

# What to use for libcompat:
# Would like to share this too, but it's config dependent.
LIBCOMPAT=	libcompat.a

# compile rules: rules are named ${TYPE}_${SUFFIX}${CONFIG_DEP}
# where TYPE is NORMAL, DRIVER, or PROFILE}; SUFFIX is the file suffix,
# capitalized (e.g. C for a .c file), and CONFIG_DEP is _C if the file
# is marked as config-dependent.

NORMAL_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
NORMAL_C_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<

DRIVER_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
DRIVER_C_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} ${PARAM} -c $<

NORMAL_S=	${CPP} ${APPFLAGS} $< > $*.s ;\
		${AS} -o $@@ $*.s ; rm $*.s
NORMAL_S_C=	${CPP} ${APPFLAGS} ${PARAM} $< > $*.s ;\
		${AS} -o $@@ $*.s ; rm $*.s

# OBJS, CFILES, SFILES follow:

%OBJS

%CFILES

%SFILES

# OBJS, CFILES, SFILES done.

# load lines for config "xxx" will be emitted as:
# xxx: ${SYSTEM_DEP} swapxxx.o
#	${SYSTEM_LD_HEAD}
#	${SYSTEM_LD} swapxxx.o
#	${SYSTEM_LD_TAIL}
SYSTEM_OBJ=	locore.o \
		param.o ioconf.o ${OBJS} ${LIBKERN} ${LIBCOMPAT}
SYSTEM_DEP=	Makefile ${SYSTEM_OBJ}
SYSTEM_LD_HEAD=	@@rm -f $@@
SYSTEM_LD=	@@echo ${LD} ${LINKFLAGS} -o $@@ '$${SYSTEM_OBJ}' vers.o; \
		${LD} ${LINKFLAGS} -o $@@ ${SYSTEM_OBJ} vers.o
SYSTEM_LD_TAIL=	@@size $@@; chmod 755 $@@

DEBUG?=
.if ${DEBUG} == "-g"
LINKFLAGS+=	-X
SYSTEM_LD_TAIL+=; \
		echo cp $@@ $@@.gdb; rm -f $@@.gdb; cp $@@ $@@.gdb; \
		echo ${STRIP} $@@; ${STRIP} $@@
.else
LINKFLAGS+=	-S
.endif

# LOAD+

%LOAD

# LOAD-

.include "../libcompat/Makefile.inc"

${LIBKERN} : .NOTMAIN .FORCE
	@@echo "making sure libkern is up-to-date..."
	@@(cd ../libkern ; ${MAKE})

.FORCE:

assym.h: genassym
	./genassym >assym.h

genassym: genassym.o
	${CC} -o $@@ genassym.o

genassym.o: ${SUN3}/sun3/genassym.c
	${NORMAL_C_C}

param.c: $S/conf/param.c
	rm -f param.c
	cp $S/conf/param.c .

param.o: param.c Makefile
	${NORMAL_C_C}

ioconf.o: ioconf.c
	${NORMAL_C}

newvers: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP}
	sh $S/conf/newvers.sh
	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c vers.c


clean::
	rm -f eddep *netbsd netbsd.gdb tags *.[io] [a-z]*.s \
	    [Ee]rrs linterrs makelinks genassym genassym.o assym.h

lint:
	@@lint -hbxncez -DGENERIC -Dvolatile= ${CPPFLAGS} ${PARAM} -UKGDB \
	    ${SUN3}/sun3/Locore.c ${CFILES} ${SUN3}/sun3/swapgeneric.c \
	    ioconf.c param.c | \
	    grep -v 'static function .* unused'

tags:
	@@echo "see $S/kern/Makefile for tags"

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

SRCS=	${SUN3}/sun3/locore.s \
	param.c ioconf.c ${CFILES} ${SFILES}

depend:: .depend
.depend: ${SRCS} assym.h param.c ${COMPAT_DEPENDS}
	${MKDEP} ${CPPFLAGS} param.c ioconf.c ${CFILES}
	${MKDEP} -a ${CPPFLAGS} ${PARAM} ${SUN3}/sun3/genassym.c
	${MKDEP} -a ${CPPFLAGS} ${COMPAT_DEPENDS}

# XXX - see below
#	${MKDEP} -a ${APPFLAGS} ${SUN3}/sun3/locore.s
#	${MKDEP} -a ${APPFLAGS} ${SFILES}
#
# For cross-compilation, the "gcc -M" mkdep script is convenient,
# but that does not correctly make rules from *.s files.  The
# easiest compromise is to just list those dependencies here.
locore.o: assym.h machine/trap.h m68k/trap.h
copy.o:   assym.h $S/sys/errno.h

# depend on root or device configuration
autoconf.o conf.o: Makefile
 
# depend on network or filesystem configuration 
uipc_proto.o vfs_conf.o: Makefile 

# depend on maxusers
genassym.o machdep.o: Makefile

# depend on CPU configuration 
db_machdep.o dvma.o machdep.o pmap.o sun3_startup.o vm_machdep.o: Makefile

locore.o: ${SUN3}/sun3/locore.s
	${NORMAL_S}

# Rules follow

%RULES
@


1.45
log
@Several minor changes to make cross-compilation easier.
(I do most compiles on a sparc these days...)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.44 1996/05/11 16:13:07 mycroft Exp $
d38 3
a40 2
DEFINES=	-undef -D__NetBSD__ -D_KERNEL -Dmc68020 -Dsun3
CPPFLAGS=	${INCLUDES} ${DEFINES} ${IDENT}
d47 2
a48 2
# What to use for libkern:
.include "$S/lib/libkern/Makefile.inc"
d50 1
a50 1
LIBKERN=	${KERNLIB}
d52 1
a52 1
LIBKERN=	${KERNLIB_PROF}
d56 2
a57 6
.include "$S/compat/common/Makefile.inc"
.ifndef PROF
LIBCOMPAT=	${COMPATLIB}
.else
LIBCOMPAT=	${COMPATLIB_PROF}
.endif
d83 2
d108 2
d112 10
d171 1
a171 1
.depend: ${SRCS} assym.h param.c
d174 1
@


1.44
log
@Make `make depend' work for libraries.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.43 1996/02/29 20:57:38 cgd Exp $
d28 1
d36 8
a43 4
INCLUDES=	-I. -I$S/arch -I$S
CPPFLAGS=	${INCLUDES} ${IDENT} -D_KERNEL -Dmc68020 -Dsun3
CFLAGS=		${DEBUG} -O2 -Werror -msoft-float
AFLAGS=		-x assembler-with-cpp -traditional-cpp -D_LOCORE
d54 1
a54 1
### find out what to use for libcompat
d73 6
a78 2
NORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<
NORMAL_S_C=	${CC} ${AFLAGS} ${CPPFLAGS} ${PARAM} -c $<
d158 1
d161 2
a162 4
	mkdep ${AFLAGS} ${CPPFLAGS} ${SUN3}/sun3/locore.s
	mkdep -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
	mkdep -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
	mkdep -a ${CFLAGS} ${CPPFLAGS} ${PARAM} ${SUN3}/sun3/genassym.c
d164 9
d186 2
d189 1
a189 2
locore.o: ${SUN3}/sun3/locore.s assym.h
	${NORMAL_S}
@


1.43
log
@Do not build vnode_if.[ch] for each kernel.  Build them once, like the
various syscall sources/headers, and just compile them.  From PR 2142, OK'd
by mycroft.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.42 1996/02/26 02:53:51 mycroft Exp $
d149 1
a149 1
depend: .depend
@


1.42
log
@Define build programs with `?=', so they can be overridden with `makeoptions'.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.40 1996/02/09 02:21:36 mycroft Exp $
a24 1
AWK?=	awk
d83 1
a83 1
		vnode_if.o param.o ioconf.o ${OBJS} ${LIBKERN} ${LIBCOMPAT}
a110 3
vnode_if.c vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src
	AWK="${AWK}" sh $S/kern/vnode_if.sh $S/kern/vnode_if.src

d127 1
a127 1
	rm -f eddep *netbsd netbsd.gdb tags vnode_if.[ch] *.[io] [a-z]*.s \
d148 1
a148 1
	vnode_if.c param.c ioconf.c ${CFILES} ${SFILES}
d150 1
a150 1
.depend: ${SRCS} assym.h vnode_if.h param.c
d152 1
a152 1
	mkdep -a ${CFLAGS} ${CPPFLAGS} vnode_if.c param.c ioconf.c ${CFILES}
@


1.41
log
@keep static symbols
@
text
@d24 7
a30 7
AS=	as
AWK=	awk
CC=	cc
CPP=	cpp
LD=	ld
STRIP=	strip -d
TOUCH=	touch -f -c
@


1.40
log
@Fix mkdep problems due to missing flags.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.39 1996/02/03 00:44:26 mycroft Exp $
d98 1
a98 1
LINKFLAGS+=	-x
@


1.39
log
@Use `-traditional-cpp' when building .s and .S files.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.38 1996/02/02 20:09:40 mycroft Exp $
d39 1
a39 1
AFLAGS=		-D_LOCORE
d69 2
a70 2
NORMAL_S=	${CC} -traditional-cpp -x assembler-with-cpp ${AFLAGS} ${CPPFLAGS} -c $<
NORMAL_S_C=	${CC} -traditional-cpp -x assembler-with-cpp ${AFLAGS} ${CPPFLAGS} ${PARAM} -c $<
d155 1
a155 1
	mkdep -x assembler-with-cpp ${AFLAGS} ${CPPFLAGS} ${SUN3}/sun3/locore.s
d157 1
a157 1
	mkdep -a -x assembler-with-cpp ${AFLAGS} ${CPPFLAGS} ${SFILES}
@


1.38
log
@Clone these, and fix many bugs.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.37 1996/02/02 02:37:35 mycroft Exp $
d69 2
a70 2
NORMAL_S=	${CC} -x assembler-with-cpp ${AFLAGS} ${CPPFLAGS} -c $<
NORMAL_S_C=	${CC} -x assembler-with-cpp ${AFLAGS} ${CPPFLAGS} ${PARAM} -c $<
@


1.37
log
@assym.s -> assym.h
(Some ports did this already.)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.36 1996/02/01 22:33:05 mycroft Exp $
a2 1
#
d10 1
a10 1
#	 config machineid
d21 3
a23 3
# DEBUG is set to -g by config if debugging is requested (config -g).
DEBUG?=-O
# PROF is set to -pg by config if profiling is requested (config -p).
d25 1
d29 1
d36 5
a40 4
INCLUDES= -I. -I../.. -I$S/arch -I$S/sys -I$S
COPTS=	${INCLUDES} ${IDENT} -D_KERNEL -Dmc68020 -Dsun3
# We do NOT want accidental FP instructions in the kernel.
CFLAGS= -Werror -msoft-float ${DEBUG} ${COPTS}
d63 2
a64 2
NORMAL_C=	${CC} ${CFLAGS} ${PROF} -c $<
NORMAL_C_C=	${CC} ${CFLAGS} ${PROF} ${PARAM} -c $<
d66 2
a67 2
DRIVER_C=	${CC} ${CFLAGS} ${PROF} -c $<
DRIVER_C_C=	${CC} ${CFLAGS} ${PROF} ${PARAM} -c $<
d69 2
a70 7
PROFILE_C=	${CC} ${COPTS} -S $<; \
		ex - $*.s < ${GPROF.EX}; \
		${AS} -o $@@ $*.s; \
		rm -f $*.s

NORMAL_S=	${CPP} ${COPTS} $< | ${AS} -o $@@
NORMAL_S_C=	${CPP} ${COPTS} ${PARAM} $< | ${AS} -o $@@
d76 2
d83 9
d93 4
a96 1
LDX=-X
d98 1
a98 1
LDX=-S
a99 11
SYSTEM_OBJ=	locore.o vnode_if.o ${OBJS} param.o ioconf.o
SYSTEM_DEP=	Makefile ${SYSTEM_OBJ} ${LIBKERN} ${LIBCOMPAT}
SYSTEM_LD_HEAD=	@@echo loading $@@; rm -f $@@
SYSTEM_LD=	-@@echo ${LD} ${LDX} -n -N -e start -T 0E004000 -o $@@ \
		    '$${SYSTEM_OBJ}' vers.o ${LIBKERN} ${LIBCOMPAT}; \
		${LD} ${LDX} -n -N -e start -T 0E004000 -o $@@ \
		    ${SYSTEM_OBJ} vers.o ${LIBKERN} ${LIBCOMPAT}
SYSTEM_LD_TAIL=	@@size $@@; chmod 755 $@@; \
		[ X${DEBUG} = X-g ] && { \
		echo cp $@@ $@@.gdb; rm -f $@@.gdb; cp $@@ $@@.gdb; \
		echo strip -d $@@; strip -d $@@; } || true
d103 2
a104 3
newvers:
	sh $S/conf/newvers.sh
	${CC} $(CFLAGS) -c vers.c
d106 2
a107 3
clean::
	rm -f eddep netbsd* tags *.o locore.i [a-z]*.s \
		Errs errs linterrs makelinks vnode_if.[ch] genassym
d109 2
a110 6
lint: /tmp param.c
	@@lint -hbxn -DGENERIC -Dvolatile= ${COPTS} ${PARAM} -UKGDB \
	    ${SUN3}/sun3/Locore.c ${CFILES} ${SUN3}/sun3/swapgeneric.c \
	    ioconf.c param.c | \
	    grep -v 'struct/union .* never defined' | \
	    grep -v 'possible pointer alignment problem'
d112 2
a113 3
locore.o: assym.h ${SUN3}/sun3/locore.s ${SUN3}/include/asm.h \
	  ${SUN3}/include/trap.h $S/arch/m68k/include/trap.h
	${CPP} -D_LOCORE ${COPTS} ${SUN3}/sun3/locore.s | ${AS} -o locore.o
d115 3
a117 2
# depends on root or device configuration
autoconf.o conf.o : Makefile
d119 2
a120 2
# depends on the supported CPU types
locore.o sun3_startup.o pmap.o trap.o : Makefile
d122 2
a123 2
# depends on network or filesystem configuration
uipc_proto.o vfs_conf.o kern_xxx.o : Makefile
d125 8
a132 2
# depend on maxusers
assym.h: Makefile
d134 5
a138 2
assym.h: genassym
	./genassym >assym.h
d140 2
a141 7
genassym:
	${CC} ${INCLUDES} ${IDENT} ${PARAM} -Dmc68020 -Dsun3 \
	    -o genassym ${SUN3}/sun3/genassym.c

depend: assym.h ioconf.c param.c vnode_if.c
	mkdep ${COPTS} ${CFILES} ioconf.c param.c vnode_if.c
	mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${SUN3}/sun3/genassym.c
d148 1
a148 1
	  sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks
d151 9
a159 2
tags:
	@@echo "see $S/kern/Makefile for tags"
d161 5
a165 2
ioconf.o: ioconf.c
	${CC} ${CFLAGS} -c ioconf.c
d167 2
a168 3
param.c: $S/conf/param.c
	rm -f param.c
	cp $S/conf/param.c .
d170 2
a171 2
param.o: param.c Makefile
	${CC} ${CFLAGS} ${PARAM} -c param.c
a172 3
vers.o: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP}
	sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT}
	${CC} ${CFLAGS} -c vers.c
d174 2
a175 2
vnode_if.c vnode_if.h : $S/kern/vnode_if.sh $S/kern/vnode_if.src
	AWK="${AWK}" sh $S/kern/vnode_if.sh $S/kern/vnode_if.src
@


1.36
log
@LOCORE -> _LOCORE
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.35 1995/11/17 23:31:14 gwr Exp $
d118 1
a118 1
locore.o: assym.s ${SUN3}/sun3/locore.s ${SUN3}/include/asm.h \
d132 1
a132 1
assym.s: Makefile
d134 2
a135 2
assym.s: genassym
	./genassym >assym.s
d141 1
a141 1
depend: assym.s ioconf.c param.c vnode_if.c
@


1.35
log
@Switch to ncr_si (will just do PIO for now) and cleanup
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.34 1995/09/19 23:54:29 thorpej Exp $
d120 1
a120 1
	${CPP} -DLOCORE ${COPTS} ${SUN3}/sun3/locore.s | ${AS} -o locore.o
@


1.34
log
@Compile the kernel with -Werror -fno-builtin.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.33 1995/07/01 00:51:15 gwr Exp $
d9 1
a9 1
#	/sys/conf/``machineid''
d13 1
a13 1
#	/sys/conf/Makefile.``machinetype''
d38 1
a38 1
CFLAGS= -Werror -fno-builtin -msoft-float ${DEBUG} ${COPTS}
d114 1
a114 1
	    ioconf.c param.c| \
d122 2
a123 2
# the following is necessary because autoconf.o depends on #if GENERIC
autoconf.o: Makefile
d125 2
a126 2
# depends on device configuration
conf.o : Makefile
d129 1
a129 6
uipc_proto.o vfs_conf.o : Makefile

# depends on value of SYMTAB_SPACE
db_aout.o : Makefile

sun3_startup.o pmap.o kern_xxx.o: Makefile
@


1.34.2.1
log
@From HEAD: Use ncr_si (in PIO mode), also cleanup
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.35 1995/11/17 23:31:14 gwr Exp $
d9 1
a9 1
#	/sys/arch/sun3/conf/``machineid''
d13 1
a13 1
#	/sys/arch/sun3/conf/Makefile.sun3
d38 1
a38 1
CFLAGS= -Werror -msoft-float ${DEBUG} ${COPTS}
d114 1
a114 1
	    ioconf.c param.c | \
d122 2
a123 2
# depends on root or device configuration
autoconf.o conf.o : Makefile
d125 2
a126 2
# depends on the supported CPU types
locore.o sun3_startup.o pmap.o trap.o : Makefile
d129 6
a134 1
uipc_proto.o vfs_conf.o kern_xxx.o : Makefile
@


1.33
log
@Add ${LIBKERN} ${LIBCOMPAT} to SYSTEM_DEP so they are built.
Move ${DEBUG} from ${CC} to ${CFLAGS} for compatibility.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.32 1995/06/24 20:48:36 christos Exp $
d38 1
a38 1
CFLAGS= -msoft-float ${DEBUG} ${COPTS}
@


1.32
log
@Makefile.`arch`:	- Add -lcompat
			- Change clean: target to be a double dep one,
			  so libraries can use the clean target too
			- Add genassym to the clean targets
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.31 1995/06/09 21:53:32 gwr Exp $
d26 1
a26 1
CC=	cc ${DEBUG}
d38 1
a38 1
CFLAGS= -msoft-float ${COPTS}
d90 1
a90 1
SYSTEM_DEP=	Makefile ${SYSTEM_OBJ}
@


1.31
log
@Retool for native build.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.30 1995/05/24 20:29:16 gwr Exp $
d48 8
d93 1
a93 1
		    '$${SYSTEM_OBJ}' vers.o ${LIBKERN}; \
d95 1
a95 1
		    ${SYSTEM_OBJ} vers.o ${LIBKERN}
d107 1
a107 1
clean:
d109 1
a109 1
		Errs errs linterrs makelinks vnode_if.[ch]
@


1.30
log
@Merged locore code back into locore.s
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.29 1995/05/16 22:25:15 jtc Exp $
a20 6
#
# For cross development, uncomment XINC, and
# copy a few things from NetBSD:/usr/include
# into compile/xinc : nlist.h setjmp.h stab.h
XINC = -nostdinc -I../xinc
AWK = nawk
d25 3
a27 3
AS=	gas 
CC=	gcc -msoft-float ${DEBUG}
CPP=	gcpp
a29 1
GPROF.EX=/usr/src/usr.lib/libc/csu/sun3/gmon.ex
a33 1
LIBKERN=../libkern.a
d35 1
a35 1
INCLUDES= ${XINC} -I. -I../.. -I$S -I$S/sys -I$S/arch
d37 10
a46 1
CFLAGS=	${COPTS}
d53 2
a54 2
NORMAL_C=	${CC} -c ${CFLAGS} ${PROF} $<
NORMAL_C_C=	${CC} -c ${CFLAGS} ${PROF} ${PARAM} $<
d56 2
a57 2
DRIVER_C=	${CC} -c ${CFLAGS} ${PROF} $<
DRIVER_C_C=	${CC} -c ${CFLAGS} ${PROF} ${PARAM} $<
d59 1
a59 1
PROFILE_C=	${CC} -S -c ${COPTS} $<; \
a75 1
DEBUG?=
a81 1
#SYSTEM_DEP=	Makefile symbols.sort ${SYSTEM_OBJ}
a87 2
#SYSTEM_LD_TAIL= @@echo rearranging symbols;\
#		symorder symbols.sort $@@;\
d91 1
a91 1
		echo strip $@@; strip $@@; } || true
a109 4
symbols.sort: ${SUN3}/sun3/symbols.raw
	grep -v '^#' ${SUN3}/sun3/symbols.raw \
	    | sed 's/^	//' | sort -u > symbols.sort

d112 1
a112 3
	${CPP} -DLOCORE ${COPTS} ${SUN3}/sun3/locore.s > plocore.s
	echo "" >>plocore.s
	${AS} -o locore.o plocore.s
a127 3
# depend on network configuration
af.o uipc_proto.o locore.o: Makefile

d135 2
a136 2
	${CC} ${INCLUDES} ${IDENT} ${PARAM} -Dmc68020 -Dsun3 -o genassym \
	    ${SUN3}/sun3/genassym.c
d140 1
a140 1
	mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${SUN3}/sun3/genassym.c 
d154 1
a154 1
	${CC} -c ${CFLAGS} ioconf.c
d161 1
a161 1
	${CC} -c ${CFLAGS} ${PARAM} param.c
@


1.29
log
@Removing -DKERNEL, transition to _KERNEL has been completed
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.28 1995/03/23 19:47:34 jtc Exp $
d118 1
a118 4
	${S}/sys/syscall.h ${SUN3}/sun3/lib.s ${SUN3}/sun3/m68k.s \
	${SUN3}/sun3/signal.s ${SUN3}/sun3/process.s \
	${SUN3}/sun3/softint.s ${SUN3}/sun3/interrupt.s \
	${SUN3}/sun3/trap.s
@


1.28
log
@Added -D_KERNEL to CFLAGS alongside each -DKERNEL.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.27 1995/03/01 05:07:02 gwr Exp $
d44 1
a44 1
COPTS=	${INCLUDES} ${IDENT} -DKERNEL -D_KERNEL -Dmc68020 -Dsun3
@


1.27
log
@Minor tweaks: avoid accidental FPU instructions,
allow DEBUG=-O override on the make command line.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.26 1995/01/24 05:45:54 gwr Exp $
d44 1
a44 1
COPTS=	${INCLUDES} ${IDENT} -DKERNEL -Dmc68020 -Dsun3
@


1.26
log
@Include vnode_if.c in mkdep args.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.25 1995/01/11 20:37:12 gwr Exp $
d29 1
a29 1
# DEBUG=-g XXX
d32 1
a32 1
CC=	gcc -O ${DEBUG}
@


1.25
log
@Cleanup (cpp flags just once)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.sun3,v 1.24 1994/11/21 21:26:45 gwr Exp $
d153 2
a154 2
depend: assym.s param.c vnode_if.h
	mkdep ${COPTS} ${CFILES} ioconf.c param.c
@


1.24
log
@Lots of changes.  Fairly stable now.
@
text
@d1 1
a1 1
#	$NetBSD$
d33 1
a33 1
CPP=	gcpp -traditional ${XINC}
@


1.23
log
@new RCS ID format.
@
text
@d3 2
a4 1
# Makefile for 4.4 BSD
d21 1
a21 1

d104 1
a104 1
		Errs errs linterrs makelinks
@


1.22
log
@Turn on optimization.
@
text
@d1 2
a2 1
# $Id: Makefile.sun3,v 1.20.2.1 1994/07/19 16:26:09 cgd Exp $
@


1.22.2.1
log
@file Makefile.sun3 was added on branch netbsd-1-0 on 1994-09-20 16:17:54 +0000
@
text
@d1 183
@


1.22.2.2
log
@Turn on optimization.
@
text
@a0 183
# $Id: Makefile.sun3,v 1.22 1994/09/20 16:17:53 gwr Exp $
# Makefile for 4.4 BSD
#
# This makefile is constructed from a machine description:
#	config machineid
# Most changes should be made in the machine description
#	/sys/conf/``machineid''
# after which you should do
#	 config machineid
# Machine generic makefile changes should be made in
#	/sys/conf/Makefile.``machinetype''
# after which config should be rerun for all machines of that type.
#
# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE VISIBLE 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

# For cross development, uncomment XINC, and
# copy a few things from NetBSD:/usr/include
# into compile/xinc : nlist.h setjmp.h stab.h
XINC = -nostdinc -I../xinc
AWK = nawk

# DEBUG is set to -g by config if debugging is requested (config -g).
# DEBUG=-g XXX
# PROF is set to -pg by config if profiling is requested (config -p).
AS=	gas 
CC=	gcc -O ${DEBUG}
CPP=	gcpp -traditional ${XINC}
LD=	ld
TOUCH=	touch -f -c
GPROF.EX=/usr/src/usr.lib/libc/csu/sun3/gmon.ex

# source tree is located via $S relative to the compilation directory
S=	../../../..
SUN3=	../..
LIBKERN=../libkern.a

INCLUDES= ${XINC} -I. -I../.. -I$S -I$S/sys -I$S/arch
COPTS=	${INCLUDES} ${IDENT} -DKERNEL -Dmc68020 -Dsun3
CFLAGS=	${COPTS}

# compile rules: rules are named ${TYPE}_${SUFFIX}${CONFIG_DEP}
# where TYPE is NORMAL, DRIVER, or PROFILE}; SUFFIX is the file suffix,
# capitalized (e.g. C for a .c file), and CONFIG_DEP is _C if the file
# is marked as config-dependent.

NORMAL_C=	${CC} -c ${CFLAGS} ${PROF} $<
NORMAL_C_C=	${CC} -c ${CFLAGS} ${PROF} ${PARAM} $<

DRIVER_C=	${CC} -c ${CFLAGS} ${PROF} $<
DRIVER_C_C=	${CC} -c ${CFLAGS} ${PROF} ${PARAM} $<

PROFILE_C=	${CC} -S -c ${COPTS} $<; \
		ex - $*.s < ${GPROF.EX}; \
		${AS} -o $@@ $*.s; \
		rm -f $*.s

NORMAL_S=	${CPP} ${COPTS} $< | ${AS} -o $@@
NORMAL_S_C=	${CPP} ${COPTS} ${PARAM} $< | ${AS} -o $@@

%OBJS

%CFILES

# load lines for config "xxx" will be emitted as:
# xxx: ${SYSTEM_DEP} swapxxx.o
#	${SYSTEM_LD_HEAD}
#	${SYSTEM_LD} swapxxx.o
#	${SYSTEM_LD_TAIL}
DEBUG?=
.if ${DEBUG} == "-g"
LDX=-X
.else
LDX=-S
.endif
SYSTEM_OBJ=	locore.o vnode_if.o ${OBJS} param.o ioconf.o
#SYSTEM_DEP=	Makefile symbols.sort ${SYSTEM_OBJ}
SYSTEM_DEP=	Makefile ${SYSTEM_OBJ}
SYSTEM_LD_HEAD=	@@echo loading $@@; rm -f $@@
SYSTEM_LD=	-@@echo ${LD} ${LDX} -n -N -e start -T 0E004000 -o $@@ \
		    '$${SYSTEM_OBJ}' vers.o ${LIBKERN}; \
		${LD} ${LDX} -n -N -e start -T 0E004000 -o $@@ \
		    ${SYSTEM_OBJ} vers.o ${LIBKERN}
#SYSTEM_LD_TAIL= @@echo rearranging symbols;\
#		symorder symbols.sort $@@;\
SYSTEM_LD_TAIL=	@@size $@@; chmod 755 $@@; \
		[ X${DEBUG} = X-g ] && { \
		echo cp $@@ $@@.gdb; rm -f $@@.gdb; cp $@@ $@@.gdb; \
		echo strip $@@; strip $@@; } || true

%LOAD

newvers:
	sh $S/conf/newvers.sh
	${CC} $(CFLAGS) -c vers.c

clean:
	rm -f eddep netbsd* tags *.o locore.i [a-z]*.s \
		Errs errs linterrs makelinks

lint: /tmp param.c
	@@lint -hbxn -DGENERIC -Dvolatile= ${COPTS} ${PARAM} -UKGDB \
	    ${SUN3}/sun3/Locore.c ${CFILES} ${SUN3}/sun3/swapgeneric.c \
	    ioconf.c param.c| \
	    grep -v 'struct/union .* never defined' | \
	    grep -v 'possible pointer alignment problem'

symbols.sort: ${SUN3}/sun3/symbols.raw
	grep -v '^#' ${SUN3}/sun3/symbols.raw \
	    | sed 's/^	//' | sort -u > symbols.sort

locore.o: assym.s ${SUN3}/sun3/locore.s ${SUN3}/include/asm.h \
	${S}/sys/syscall.h ${SUN3}/sun3/lib.s ${SUN3}/sun3/m68k.s \
	${SUN3}/sun3/signal.s ${SUN3}/sun3/process.s \
	${SUN3}/sun3/softint.s ${SUN3}/sun3/interrupt.s \
	${SUN3}/sun3/trap.s
	${CPP} -DLOCORE ${COPTS} ${SUN3}/sun3/locore.s > plocore.s
	echo "" >>plocore.s
	${AS} -o locore.o plocore.s

# the following is necessary because autoconf.o depends on #if GENERIC
autoconf.o: Makefile

# depends on device configuration
conf.o : Makefile

# depends on network or filesystem configuration
uipc_proto.o vfs_conf.o : Makefile

# depends on value of SYMTAB_SPACE
db_aout.o : Makefile

sun3_startup.o pmap.o kern_xxx.o: Makefile

# depend on network configuration
af.o uipc_proto.o locore.o: Makefile

# depend on maxusers
assym.s: Makefile

assym.s: genassym
	./genassym >assym.s

genassym:
	${CC} ${INCLUDES} ${IDENT} ${PARAM} -Dmc68020 -Dsun3 -o genassym \
	    ${SUN3}/sun3/genassym.c

depend: assym.s param.c vnode_if.h
	mkdep ${COPTS} ${CFILES} ioconf.c param.c
	mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${SUN3}/sun3/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
	${CC} -c ${CFLAGS} ioconf.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 vnode_if.h : $S/kern/vnode_if.sh $S/kern/vnode_if.src
	AWK="${AWK}" sh $S/kern/vnode_if.sh $S/kern/vnode_if.src

%RULES
@


1.21
log
@Add mising dependency
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.20 1994/06/28 21:40:34 gwr Exp $
d30 1
a30 1
CC=	gcc ${DEBUG}
@


1.20
log
@Move vnode_if.o earlier in the OBJ list.
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.18 1994/05/13 15:07:08 gwr Exp $
d129 3
@


1.20.2.1
log
@from trunk, per gwr.
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.21 1994/07/18 14:59:47 gwr Exp $
a128 3

# depends on network or filesystem configuration
uipc_proto.o vfs_conf.o : Makefile
@


1.19
log
@Update for new FS code (vnode_if.*)
@
text
@a23 1
# Uncomment this if you do not have GNU awk (just plain nawk)
d79 1
a79 1
SYSTEM_OBJ=	locore.o ${OBJS} param.o ioconf.o vnode_if.o
d178 1
a178 1
	AWK=${AWK} sh $S/kern/vnode_if.sh $S/kern/vnode_if.src
@


1.18
log
@SCSI driver works!
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.17 1994/05/04 05:57:27 gwr Exp $
d23 3
a25 1
# XINC = -nostdinc -I../xinc
d78 1
a78 1
LDX=-x
d80 1
a80 1
SYSTEM_OBJ=	locore.o ${OBJS} param.o ioconf.o
d149 1
a149 1
depend: assym.s param.c
d177 3
@


1.17
log
@Make conf.o depend on the Makefile
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.16 1994/04/24 20:10:13 glass Exp $
d20 4
d26 1
a26 1
DEBUG=-g
d30 1
a30 1
CPP=	gcpp -traditional
d40 1
a40 1
INCLUDES= -I. -I../.. -I$S -I$S/sys -I$S/arch
d128 3
@


1.16
log
@fixed to use new queue stuff. random diffs to make ddb stuff mostly compile
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.15 1994/03/01 08:24:01 glass Exp $
d121 3
@


1.15
log
@cleanup
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.14 1994/02/23 08:28:21 glass Exp $
d36 1
a36 1
INCLUDES= -I. -I../.. -I$S -I$S/sys
@


1.14
log
@boots, presents shell prompt, and doesn't crash immediately
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.13 1994/02/04 08:19:41 glass Exp $
d122 1
a122 1
sun3_startup.o: Makefile
@


1.13
log
@sun3 port works under NetBSD-current now.  rcsids probably fucked
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.14 94/02/03 21:26:40 glass Exp $
d36 1
a36 1
INCLUDES= -I. -I$S -I$S/sys
@


1.12
log
@Now works with current tree, as opposed to the july 8th tree in which it was
written.
Requires magnum infrastructure now, particularly the clock stuff.
Fails to exec init because the /sbin/init binary
is a sunos binary.  Next step is to integrate sunos compatibility code
from /sys/compat/sunos, and the amiga port.
Does not yet implement MACHINE_NOCONTIG support.

[from glass Mon Nov 22 21:22:45 PST 1993  home tag: home2]
@
text
@d1 1
a1 1
# $Id: Makefile.sun3,v 1.11 1993/11/10 07:42:12 deraadt Exp $
d111 1
a111 2
	${S}/sys/syscall.h ${SUN3}/sun3/lib.s \
	${SUN3}/sun3/copy.s ${SUN3}/sun3/m68k.s \
@


1.11
log
@some cleanup, better than sending adam reminder notes
@
text
@d1 1
a1 1
# $Id: $
d78 1
a78 1
SYSTEM_LD=	-@@echo ${LD} ${LDX} -p -N -e start -T 0E004000 -o $@@ \
d80 1
a80 1
		${LD} ${LDX} -p -N -e start -T 0E004000 -o $@@ \
d110 6
a115 6
locore.o: assym.s ${SUN3}/sun3/locore.s 
locore.o: ${SUN3}/include/trap.h ${SUN3}/include/psl.h 
locore.o: ${SUN3}/include/cpu.h ${SUN3}/include/control.h
#locore.o: assym.s ${SUN3}/sun3/vectors.s ${SUN3}/sun3/locore.s 
#locore.o: ${SUN3}/include/trap.h ${SUN3}/include/psl.h ${SUN3}/sun3/pte.h
#locore.o: ${SUN3}/include/cpu.h
@


1.10
log
@sun3 port updated. netboot integrated.
@
text
@d1 1
a1 1
#
d22 1
d34 1
d68 6
d78 4
a81 5
SYSTEM_LD=	@@strip=-x; [ X${DEBUG} = X-g ] && strip=-X; \
		${LD} -n -o $@@ -e _start -N -T 0E004000 ${SYSTEM_OBJ} vers.o
#SYSTEM_LD=	@@strip=-x; [ X${DEBUG} = X-g ] && strip=-X; \
#                ${LD} $$strip -n -o $@@ -e _start -N -X -T 0E004000 ${SYSTEM_OBJ} vers.o

@


1.9
log
@snapshot. for uploading.  gets lost in swtch after enablertclock()
@
text
@d132 1
a132 1
	mkdep ${COPTS} ${CFILES} ioconf.c param.c ${SUN3}/sun3/locore.s
@


1.8
log
@cute bug that mycroft fixed in the hp300 stuff
@
text
@d132 2
a133 2
	mkdep ${COPTS} ${CFILES} ioconf.c param.c
	mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${SUN3}/sun3/genassym.c ${SUN3}/sun3/locore.s
@


1.7
log
@runs up to and including configure().
todo: exceptions, interrupt support, make isrs affect vector table
kernel/user stacks
@
text
@d89 1
a89 1
	rm -f eddep *vmunix tags *.o locore.i [a-z]*.s \
@


1.6
log
@make config -g work, add timesink config
@
text
@d116 1
a116 3
# the following are necessary because the files depend on the types of
# hp cpu's included in the system configuration
clock.o machdep.o autoconf.o conf.o: Makefile
@


1.5
log
@gets to consinit() and blows up
@
text
@d23 1
a23 1
AS=	gas ${DEBUG}
d80 1
a80 1
		echo strip -d $@@; strip -d $@@; } || true
@


1.4
log
@it links with out any unresolved symbols, last few are just stubs
because we aren't likely to get near execing init for a while
@
text
@d25 1
a25 1
CPP=	cpp
d71 3
a73 1
                ${LD} $$strip -n -o $@@ -e _start -N -X -T 0E004000 ${SYSTEM_OBJ} vers.o
d135 1
a135 1
	mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${SUN3}/sun3/genassym.c locore.s
@


1.3
log
@Fri Jul 30 16:52:00 PDT 1993:
snapshot.  things compile but don't link.  pmap stuff compiles but
just starting work on interfacing it to the vm system.  current projects
appear to be both physical memory and virtual memory maps.
@
text
@d71 2
a72 1
		${LD} $$strip -n -o $@@ -e start ${SYSTEM_OBJ} vers.o
d133 1
a133 1
	mkdep -a -p ${INCLUDES} ${IDENT} ${PARAM} ${SUN3}/sun3/genassym.c
@


1.2
log
@use gas; add support for more stuff 
@
text
@d24 1
a24 1
CC=	cc ${DEBUG}
@


1.1
log
@initial commit.  little of this actually works
@
text
@d23 1
a23 1
AS=	as ${DEBUG}
d100 1
a100 1
locore.o: assym.s ${SUN3}/sun3/locore.s ${SUN3}/sun3/vectors.s ${SUN3/sun3/lib.s
@
