head	1.20;
access;
symbols
	netbsd-11-0-RC3:1.20
	netbsd-11-0-RC2:1.20
	netbsd-11-0-RC1:1.20
	perseant-exfatfs-base-20250801:1.20
	netbsd-11:1.20.0.12
	netbsd-11-base:1.20
	netbsd-10-1-RELEASE:1.20
	perseant-exfatfs-base-20240630:1.20
	perseant-exfatfs:1.20.0.10
	perseant-exfatfs-base:1.20
	netbsd-8-3-RELEASE:1.18
	netbsd-9-4-RELEASE:1.19
	netbsd-10-0-RELEASE:1.20
	netbsd-10-0-RC6:1.20
	netbsd-10-0-RC5:1.20
	netbsd-10-0-RC4:1.20
	netbsd-10-0-RC3:1.20
	netbsd-10-0-RC2:1.20
	thorpej-ifq:1.20.0.8
	thorpej-ifq-base:1.20
	thorpej-altq-separation:1.20.0.6
	thorpej-altq-separation-base:1.20
	netbsd-10-0-RC1:1.20
	netbsd-10:1.20.0.4
	netbsd-10-base:1.20
	bouyer-sunxi-drm:1.20.0.2
	bouyer-sunxi-drm-base:1.20
	netbsd-9-3-RELEASE:1.19
	thorpej-i2c-spi-conf2:1.19.0.26
	thorpej-i2c-spi-conf2-base:1.19
	thorpej-futex2:1.19.0.24
	thorpej-futex2-base:1.19
	thorpej-cfargs2:1.19.0.22
	thorpej-cfargs2-base:1.19
	cjep_sun2x-base1:1.19
	cjep_sun2x:1.19.0.20
	cjep_sun2x-base:1.19
	cjep_staticlib_x-base1:1.19
	netbsd-9-2-RELEASE:1.19
	cjep_staticlib_x:1.19.0.18
	cjep_staticlib_x-base:1.19
	thorpej-i2c-spi-conf:1.19.0.16
	thorpej-i2c-spi-conf-base:1.19
	thorpej-cfargs:1.19.0.14
	thorpej-cfargs-base:1.19
	thorpej-futex:1.19.0.12
	thorpej-futex-base:1.19
	netbsd-9-1-RELEASE:1.19
	bouyer-xenpvh-base2:1.19
	phil-wifi-20200421:1.19
	bouyer-xenpvh-base1:1.19
	phil-wifi-20200411:1.19
	bouyer-xenpvh:1.19.0.10
	bouyer-xenpvh-base:1.19
	is-mlppp:1.19.0.8
	is-mlppp-base:1.19
	phil-wifi-20200406:1.19
	netbsd-8-2-RELEASE:1.18
	ad-namecache-base3:1.19
	netbsd-9-0-RELEASE:1.19
	netbsd-9-0-RC2:1.19
	ad-namecache-base2:1.19
	ad-namecache-base1:1.19
	ad-namecache:1.19.0.6
	ad-namecache-base:1.19
	netbsd-9-0-RC1:1.19
	phil-wifi-20191119:1.19
	netbsd-9:1.19.0.4
	netbsd-9-base:1.19
	phil-wifi-20190609:1.19
	netbsd-8-1-RELEASE:1.18
	netbsd-8-1-RC1:1.18
	isaki-audio2:1.19.0.2
	isaki-audio2-base:1.19
	pgoyette-compat-merge-20190127:1.18.96.1
	pgoyette-compat-20190127:1.19
	pgoyette-compat-20190118:1.19
	pgoyette-compat-1226:1.19
	pgoyette-compat-1126:1.19
	pgoyette-compat-1020:1.19
	pgoyette-compat-0930:1.19
	pgoyette-compat-0906:1.18
	netbsd-7-2-RELEASE:1.18
	pgoyette-compat-0728:1.18
	netbsd-8-0-RELEASE:1.18
	phil-wifi:1.18.0.98
	phil-wifi-base:1.18
	pgoyette-compat-0625:1.18
	netbsd-8-0-RC2:1.18
	pgoyette-compat-0521:1.18
	pgoyette-compat-0502:1.18
	pgoyette-compat-0422:1.18
	netbsd-8-0-RC1:1.18
	pgoyette-compat-0415:1.18
	pgoyette-compat-0407:1.18
	pgoyette-compat-0330:1.18
	pgoyette-compat-0322:1.18
	pgoyette-compat-0315:1.18
	netbsd-7-1-2-RELEASE:1.18
	pgoyette-compat:1.18.0.96
	pgoyette-compat-base:1.18
	netbsd-7-1-1-RELEASE:1.18
	tls-maxphys-base-20171202:1.18
	matt-nb8-mediatek:1.18.0.94
	matt-nb8-mediatek-base:1.18
	nick-nhusb-base-20170825:1.18
	perseant-stdc-iso10646:1.18.0.92
	perseant-stdc-iso10646-base:1.18
	netbsd-8:1.18.0.90
	netbsd-8-base:1.18
	prg-localcount2-base3:1.18
	prg-localcount2-base2:1.18
	prg-localcount2-base1:1.18
	prg-localcount2:1.18.0.88
	prg-localcount2-base:1.18
	pgoyette-localcount-20170426:1.18
	bouyer-socketcan-base1:1.18
	jdolecek-ncq:1.18.0.86
	jdolecek-ncq-base:1.18
	pgoyette-localcount-20170320:1.18
	netbsd-7-1:1.18.0.84
	netbsd-7-1-RELEASE:1.18
	netbsd-7-1-RC2:1.18
	nick-nhusb-base-20170204:1.18
	netbsd-7-nhusb-base-20170116:1.18
	bouyer-socketcan:1.18.0.82
	bouyer-socketcan-base:1.18
	pgoyette-localcount-20170107:1.18
	netbsd-7-1-RC1:1.18
	nick-nhusb-base-20161204:1.18
	pgoyette-localcount-20161104:1.18
	netbsd-7-0-2-RELEASE:1.18
	nick-nhusb-base-20161004:1.18
	localcount-20160914:1.18
	netbsd-7-nhusb:1.18.0.80
	netbsd-7-nhusb-base:1.18
	pgoyette-localcount-20160806:1.18
	pgoyette-localcount-20160726:1.18
	pgoyette-localcount:1.18.0.78
	pgoyette-localcount-base:1.18
	nick-nhusb-base-20160907:1.18
	nick-nhusb-base-20160529:1.18
	netbsd-7-0-1-RELEASE:1.18
	nick-nhusb-base-20160422:1.18
	nick-nhusb-base-20160319:1.18
	nick-nhusb-base-20151226:1.18
	netbsd-7-0:1.18.0.76
	netbsd-7-0-RELEASE:1.18
	nick-nhusb-base-20150921:1.18
	netbsd-7-0-RC3:1.18
	netbsd-7-0-RC2:1.18
	netbsd-7-0-RC1:1.18
	nick-nhusb-base-20150606:1.18
	nick-nhusb-base-20150406:1.18
	nick-nhusb:1.18.0.74
	nick-nhusb-base:1.18
	netbsd-5-2-3-RELEASE:1.18
	netbsd-5-1-5-RELEASE:1.18
	netbsd-6-0-6-RELEASE:1.18
	netbsd-6-1-5-RELEASE:1.18
	netbsd-7:1.18.0.72
	netbsd-7-base:1.18
	yamt-pagecache-base9:1.18
	yamt-pagecache-tag8:1.18
	netbsd-6-1-4-RELEASE:1.18
	netbsd-6-0-5-RELEASE:1.18
	tls-earlyentropy:1.18.0.70
	tls-earlyentropy-base:1.18
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.18
	riastradh-drm2-base3:1.18
	netbsd-6-1-3-RELEASE:1.18
	netbsd-6-0-4-RELEASE:1.18
	netbsd-5-2-2-RELEASE:1.18
	netbsd-5-1-4-RELEASE:1.18
	netbsd-6-1-2-RELEASE:1.18
	netbsd-6-0-3-RELEASE:1.18
	netbsd-5-2-1-RELEASE:1.18
	netbsd-5-1-3-RELEASE:1.18
	rmind-smpnet-nbase:1.18
	netbsd-6-1-1-RELEASE:1.18
	riastradh-drm2-base2:1.18
	riastradh-drm2-base1:1.18
	riastradh-drm2:1.18.0.68
	riastradh-drm2-base:1.18
	rmind-smpnet:1.18.0.60
	rmind-smpnet-base:1.18
	netbsd-6-1:1.18.0.66
	netbsd-6-0-2-RELEASE:1.18
	netbsd-6-1-RELEASE:1.18
	khorben-n900:1.18.0.64
	netbsd-6-1-RC4:1.18
	netbsd-6-1-RC3:1.18
	agc-symver:1.18.0.62
	agc-symver-base:1.18
	netbsd-6-1-RC2:1.18
	netbsd-6-1-RC1:1.18
	yamt-pagecache-base8:1.18
	netbsd-5-2:1.18.0.58
	netbsd-6-0-1-RELEASE:1.18
	yamt-pagecache-base7:1.18
	netbsd-5-2-RELEASE:1.18
	netbsd-5-2-RC1:1.18
	matt-nb6-plus-nbase:1.18
	yamt-pagecache-base6:1.18
	netbsd-6-0:1.18.0.56
	netbsd-6-0-RELEASE:1.18
	netbsd-6-0-RC2:1.18
	tls-maxphys:1.18.0.54
	tls-maxphys-base:1.18
	matt-nb6-plus:1.18.0.52
	matt-nb6-plus-base:1.18
	netbsd-6-0-RC1:1.18
	jmcneill-usbmp-base10:1.18
	yamt-pagecache-base5:1.18
	jmcneill-usbmp-base9:1.18
	yamt-pagecache-base4:1.18
	jmcneill-usbmp-base8:1.18
	jmcneill-usbmp-base7:1.18
	jmcneill-usbmp-base6:1.18
	jmcneill-usbmp-base5:1.18
	jmcneill-usbmp-base4:1.18
	jmcneill-usbmp-base3:1.18
	jmcneill-usbmp-pre-base2:1.18
	jmcneill-usbmp-base2:1.18
	netbsd-6:1.18.0.50
	netbsd-6-base:1.18
	netbsd-5-1-2-RELEASE:1.18
	netbsd-5-1-1-RELEASE:1.18
	jmcneill-usbmp:1.18.0.48
	jmcneill-usbmp-base:1.18
	jmcneill-audiomp3:1.18.0.46
	jmcneill-audiomp3-base:1.18
	yamt-pagecache-base3:1.18
	yamt-pagecache-base2:1.18
	yamt-pagecache:1.18.0.44
	yamt-pagecache-base:1.18
	rmind-uvmplock-nbase:1.18
	cherry-xenmp:1.18.0.42
	cherry-xenmp-base:1.18
	jym-xensuspend-nbase:1.18
	uebayasi-xip-base7:1.18
	bouyer-quota2-nbase:1.18
	bouyer-quota2:1.18.0.40
	bouyer-quota2-base:1.18
	jruoho-x86intr:1.18.0.38
	jruoho-x86intr-base:1.18
	matt-mips64-premerge-20101231:1.18
	matt-nb5-mips64-premerge-20101231:1.18
	matt-nb5-pq3:1.18.0.36
	matt-nb5-pq3-base:1.18
	netbsd-5-1:1.18.0.34
	uebayasi-xip-base6:1.18
	uebayasi-xip-base5:1.18
	netbsd-5-1-RELEASE:1.18
	uebayasi-xip-base4:1.18
	uebayasi-xip-base3:1.18
	yamt-nfs-mp-base11:1.18
	netbsd-5-1-RC4:1.18
	matt-nb5-mips64-k15:1.18
	uebayasi-xip-base2:1.18
	yamt-nfs-mp-base10:1.18
	netbsd-5-1-RC3:1.18
	netbsd-5-1-RC2:1.18
	uebayasi-xip-base1:1.18
	netbsd-5-1-RC1:1.18
	rmind-uvmplock:1.18.0.32
	rmind-uvmplock-base:1.18
	yamt-nfs-mp-base9:1.18
	uebayasi-xip:1.18.0.30
	uebayasi-xip-base:1.18
	netbsd-5-0-2-RELEASE:1.18
	matt-nb5-mips64-premerge-20091211:1.18
	matt-premerge-20091211:1.18
	yamt-nfs-mp-base8:1.18
	matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.18
	matt-nb4-mips64-k7-u2a-k9b:1.18
	matt-nb5-mips64-u1-k1-k5:1.18
	yamt-nfs-mp-base7:1.18
	matt-nb5-mips64:1.18.0.28
	netbsd-5-0-1-RELEASE:1.18
	jymxensuspend-base:1.18
	yamt-nfs-mp-base6:1.18
	yamt-nfs-mp-base5:1.18
	yamt-nfs-mp-base4:1.18
	yamt-nfs-mp-base3:1.18
	nick-hppapmap-base4:1.18
	nick-hppapmap-base3:1.18
	netbsd-5-0:1.18.0.26
	netbsd-5-0-RELEASE:1.18
	netbsd-5-0-RC4:1.18
	netbsd-5-0-RC3:1.18
	nick-hppapmap-base2:1.18
	netbsd-5-0-RC2:1.18
	jym-xensuspend:1.18.0.24
	jym-xensuspend-base:1.18
	netbsd-5-0-RC1:1.18
	haad-dm-base2:1.18
	haad-nbase2:1.18
	ad-audiomp2:1.18.0.22
	ad-audiomp2-base:1.18
	netbsd-5:1.18.0.20
	netbsd-5-base:1.18
	nick-hppapmap:1.18.0.18
	nick-hppapmap-base:1.18
	matt-mips64-base2:1.18
	haad-dm-base1:1.18
	wrstuden-revivesa-base-4:1.18
	netbsd-4-0-1-RELEASE:1.17
	wrstuden-revivesa-base-3:1.18
	wrstuden-revivesa-base-2:1.18
	wrstuden-fixsa-newbase:1.17
	nick-csl-alignment-base5:1.17
	haad-dm:1.18.0.16
	haad-dm-base:1.18
	wrstuden-revivesa-base-1:1.18
	simonb-wapbl-nbase:1.18
	yamt-pf42-base4:1.18
	simonb-wapbl:1.18.0.14
	simonb-wapbl-base:1.18
	yamt-pf42-base3:1.18
	hpcarm-cleanup-nbase:1.18
	yamt-pf42-baseX:1.18
	yamt-pf42-base2:1.18
	yamt-nfs-mp-base2:1.18
	wrstuden-revivesa:1.18.0.12
	wrstuden-revivesa-base:1.18
	yamt-nfs-mp:1.18.0.10
	yamt-nfs-mp-base:1.18
	yamt-pf42:1.18.0.8
	yamt-pf42-base:1.18
	ad-socklock-base1:1.18
	yamt-lazymbuf-base15:1.18
	yamt-lazymbuf-base14:1.18
	keiichi-mipv6-nbase:1.18
	mjf-devfs2:1.18.0.6
	mjf-devfs2-base:1.18
	nick-net80211-sync:1.18.0.4
	nick-net80211-sync-base:1.18
	keiichi-mipv6:1.18.0.2
	keiichi-mipv6-base:1.18
	bouyer-xeni386-merge1:1.17
	matt-armv6-prevmlocking:1.17
	wrstuden-fixsa-base-1:1.17
	vmlocking2-base3:1.17
	netbsd-4-0:1.17.0.68
	netbsd-4-0-RELEASE:1.17
	bouyer-xeni386-nbase:1.17
	yamt-kmem-base3:1.17
	cube-autoconf:1.17.0.66
	cube-autoconf-base:1.17
	yamt-kmem-base2:1.17
	bouyer-xeni386:1.17.0.64
	bouyer-xeni386-base:1.17
	yamt-kmem:1.17.0.62
	yamt-kmem-base:1.17
	vmlocking2-base2:1.17
	reinoud-bufcleanup-nbase:1.17
	vmlocking2:1.17.0.60
	vmlocking2-base1:1.17
	netbsd-4-0-RC5:1.17
	matt-nb4-arm:1.17.0.58
	matt-nb4-arm-base:1.17
	matt-armv6-nbase:1.18
	jmcneill-base:1.17
	netbsd-4-0-RC4:1.17
	mjf-devfs:1.17.0.56
	mjf-devfs-base:1.18
	bouyer-xenamd64-base2:1.17
	vmlocking-nbase:1.17
	yamt-x86pmap-base4:1.17
	bouyer-xenamd64:1.17.0.54
	bouyer-xenamd64-base:1.17
	netbsd-4-0-RC3:1.17
	yamt-x86pmap-base3:1.17
	yamt-x86pmap-base2:1.17
	netbsd-4-0-RC2:1.17
	yamt-x86pmap:1.17.0.52
	yamt-x86pmap-base:1.17
	netbsd-4-0-RC1:1.17
	matt-armv6:1.17.0.50
	matt-armv6-base:1.17
	jmcneill-pm:1.17.0.48
	jmcneill-pm-base:1.17
	hpcarm-cleanup:1.17.0.46
	hpcarm-cleanup-base:1.18
	nick-csl-alignment:1.17.0.44
	nick-csl-alignment-base:1.17
	matt-mips64:1.17.0.42
	matt-mips64-base:1.17
	netbsd-3-1-1-RELEASE:1.15
	netbsd-3-0-3-RELEASE:1.15
	yamt-idlelwp-base8:1.17
	wrstuden-fixsa:1.17.0.40
	wrstuden-fixsa-base:1.17
	ppcoea-renovation:1.17.0.38
	ppcoea-renovation-base:1.17
	thorpej-atomic:1.17.0.36
	thorpej-atomic-base:1.17
	reinoud-bufcleanup:1.17.0.34
	reinoud-bufcleanup-base:1.17
	mjf-ufs-trans:1.17.0.32
	mjf-ufs-trans-base:1.17
	vmlocking:1.17.0.30
	vmlocking-base:1.17
	ad-audiomp:1.17.0.28
	ad-audiomp-base:1.17
	yamt-idlelwp:1.17.0.26
	post-newlock2-merge:1.17
	newlock2-nbase:1.17
	yamt-splraiseipl-base5:1.17
	yamt-splraiseipl-base4:1.17
	yamt-splraiseipl-base3:1.17
	abandoned-netbsd-4-base:1.17
	abandoned-netbsd-4:1.17.0.18
	netbsd-3-1:1.15.0.14
	netbsd-3-1-RELEASE:1.15
	netbsd-3-0-2-RELEASE:1.15
	yamt-splraiseipl-base2:1.17
	netbsd-3-1-RC4:1.15
	yamt-splraiseipl:1.17.0.22
	yamt-splraiseipl-base:1.17
	netbsd-3-1-RC3:1.15
	yamt-pdpolicy-base9:1.17
	newlock2:1.17.0.20
	newlock2-base:1.17
	yamt-pdpolicy-base8:1.17
	netbsd-3-1-RC2:1.15
	netbsd-3-1-RC1:1.15
	yamt-pdpolicy-base7:1.17
	netbsd-4:1.17.0.24
	netbsd-4-base:1.17
	yamt-pdpolicy-base6:1.17
	chap-midi-nbase:1.17
	netbsd-3-0-1-RELEASE:1.15
	gdamore-uart:1.17.0.16
	gdamore-uart-base:1.17
	simonb-timcounters-final:1.17
	yamt-pdpolicy-base5:1.17
	chap-midi:1.17.0.14
	chap-midi-base:1.17
	yamt-pdpolicy-base4:1.17
	yamt-pdpolicy-base3:1.17
	peter-altq-base:1.17
	peter-altq:1.17.0.12
	yamt-pdpolicy-base2:1.17
	elad-kernelauth-base:1.17
	elad-kernelauth:1.17.0.10
	yamt-pdpolicy:1.17.0.8
	yamt-pdpolicy-base:1.17
	yamt-uio_vmspace-base5:1.17
	simonb-timecounters:1.17.0.6
	simonb-timecounters-base:1.17
	rpaulo-netinet-merge-pcb:1.17.0.4
	rpaulo-netinet-merge-pcb-base:1.17
	yamt-uio_vmspace:1.17.0.2
	netbsd-3-0:1.15.0.12
	netbsd-3-0-RELEASE:1.15
	netbsd-3-0-RC6:1.15
	yamt-readahead-base3:1.16
	netbsd-3-0-RC5:1.15
	netbsd-3-0-RC4:1.15
	netbsd-3-0-RC3:1.15
	yamt-readahead-base2:1.16
	netbsd-3-0-RC2:1.15
	yamt-readahead-pervnode:1.16
	yamt-readahead-perfile:1.16
	yamt-readahead:1.16.0.8
	yamt-readahead-base:1.16
	netbsd-3-0-RC1:1.15
	yamt-vop-base3:1.16
	netbsd-2-0-3-RELEASE:1.14
	netbsd-2-1:1.14.10.1.0.2
	yamt-vop-base2:1.16
	thorpej-vnode-attr:1.16.0.6
	thorpej-vnode-attr-base:1.16
	netbsd-2-1-RELEASE:1.14.10.1
	yamt-vop:1.16.0.4
	yamt-vop-base:1.16
	netbsd-2-1-RC6:1.14.10.1
	netbsd-2-1-RC5:1.14.10.1
	netbsd-2-1-RC4:1.14.10.1
	netbsd-2-1-RC3:1.14.10.1
	netbsd-2-1-RC2:1.14.10.1
	netbsd-2-1-RC1:1.14.10.1
	yamt-lazymbuf:1.16.0.2
	yamt-km-base4:1.15
	netbsd-2-0-2-RELEASE:1.14
	yamt-km-base3:1.15
	netbsd-3:1.15.0.10
	netbsd-3-base:1.15
	yamt-km-base2:1.15
	yamt-km:1.15.0.6
	yamt-km-base:1.15
	kent-audio2:1.15.0.4
	kent-audio2-base:1.15
	netbsd-2-0-1-RELEASE:1.14
	kent-audio1-beforemerge:1.15
	netbsd-2:1.14.0.10
	netbsd-2-base:1.14
	kent-audio1:1.15.0.2
	kent-audio1-base:1.15
	netbsd-2-0-RELEASE:1.14
	netbsd-2-0-RC5:1.14
	netbsd-2-0-RC4:1.14
	netbsd-2-0-RC3:1.14
	netbsd-2-0-RC2:1.14
	netbsd-2-0-RC1:1.14
	netbsd-2-0:1.14.0.8
	netbsd-2-0-base:1.14
	netbsd-1-6-PATCH002-RELEASE:1.13
	netbsd-1-6-PATCH002:1.13
	netbsd-1-6-PATCH002-RC4:1.13
	netbsd-1-6-PATCH002-RC3:1.13
	netbsd-1-6-PATCH002-RC2:1.13
	netbsd-1-6-PATCH002-RC1:1.13
	ktrace-lwp:1.14.0.6
	ktrace-lwp-base:1.16
	netbsd-1-6-PATCH001:1.13
	netbsd-1-6-PATCH001-RELEASE:1.13
	netbsd-1-6-PATCH001-RC3:1.13
	netbsd-1-6-PATCH001-RC2:1.13
	netbsd-1-6-PATCH001-RC1:1.13
	nathanw_sa_end:1.7.2.3
	nathanw_sa_before_merge:1.14
	fvdl_fs64_base:1.14
	gmcgarry_ctxsw:1.14.0.4
	gmcgarry_ctxsw_base:1.14
	gmcgarry_ucred:1.14.0.2
	gmcgarry_ucred_base:1.14
	nathanw_sa_base:1.14
	kqueue-aftermerge:1.14
	kqueue-beforemerge:1.14
	netbsd-1-6-RELEASE:1.13
	netbsd-1-6-RC3:1.13
	netbsd-1-6-RC2:1.13
	netbsd-1-6-RC1:1.13
	netbsd-1-6:1.13.0.10
	netbsd-1-6-base:1.13
	gehenna-devsw:1.13.0.8
	gehenna-devsw-base:1.13
	eeh-devprop:1.13.0.6
	eeh-devprop-base:1.13
	newlock:1.13.0.4
	newlock-base:1.13
	ifpoll-base:1.13
	nathanw_sa:1.7.0.2
	thorpej-mips-cache:1.6.0.2
	thorpej-mips-cache-base:1.7
	thorpej-devvp-base3:1.4
	thorpej-devvp-base2:1.4
	post-chs-ubcperf:1.4
	pre-chs-ubcperf:1.4
	thorpej-devvp:1.4.0.2
	thorpej-devvp-base:1.4
	kqueue:1.3.0.2
	kqueue-base:1.13
	thorpej_scsipi_beforemerge:1.1
	thorpej_scsipi_base:1.1
	thorpej_scsipi:1.1.0.4
	thorpej_scsipi_nbase:1.1;
locks; strict;
comment	@# @;


1.20
date	2021.11.08.23.35.43;	author rin;	state Exp;
branches;
next	1.19;
commitid	5ZXXsQRyAfP343gD;

1.19
date	2018.09.22.12.24.02;	author rin;	state Exp;
branches;
next	1.18;
commitid	oPiNEJ7VnAF626TA;

1.18
date	2008.02.18.13.29.46;	author joerg;	state Exp;
branches
	1.18.96.1
	1.18.98.1;
next	1.17;

1.17
date	2005.12.11.12.17.30;	author christos;	state Exp;
branches
	1.17.46.1
	1.17.50.1
	1.17.56.1;
next	1.16;

1.16
date	2005.05.31.04.03.10;	author christos;	state Exp;
branches
	1.16.2.1;
next	1.15;

1.15
date	2004.06.04.04.45.50;	author thorpej;	state Exp;
branches;
next	1.14;

1.14
date	2002.10.05.17.12.09;	author chs;	state Exp;
branches
	1.14.6.1
	1.14.10.1;
next	1.13;

1.13
date	2001.12.19.17.43.54;	author thorpej;	state Exp;
branches;
next	1.12;

1.12
date	2001.12.09.05.00.44;	author atatat;	state Exp;
branches;
next	1.11;

1.11
date	2001.11.27.00.25.32;	author thorpej;	state Exp;
branches;
next	1.10;

1.10
date	2001.11.26.23.54.49;	author thorpej;	state Exp;
branches;
next	1.9;

1.9
date	2001.11.20.12.56.27;	author lukem;	state Exp;
branches;
next	1.8;

1.8
date	2001.11.15.19.35.31;	author thorpej;	state Exp;
branches;
next	1.7;

1.7
date	2001.10.26.06.45.36;	author jmc;	state Exp;
branches
	1.7.2.1;
next	1.6;

1.6
date	2001.10.23.19.26.44;	author thorpej;	state Exp;
branches
	1.6.2.1;
next	1.5;

1.5
date	2001.10.23.17.32.36;	author thorpej;	state Exp;
branches;
next	1.4;

1.4
date	2001.08.02.14.45.40;	author toshii;	state Exp;
branches;
next	1.3;

1.3
date	2001.06.29.02.38.32;	author toshii;	state Exp;
branches
	1.3.2.1;
next	1.2;

1.2
date	2001.05.29.02.20.22;	author mrg;	state Exp;
branches;
next	1.1;

1.1
date	2001.02.23.03.48.08;	author ichiro;	state Exp;
branches
	1.1.2.1
	1.1.4.1;
next	;

1.18.96.1
date	2018.09.30.01.45.44;	author pgoyette;	state Exp;
branches;
next	;
commitid	SQ44grEPCeKPh4UA;

1.18.98.1
date	2019.06.10.22.06.16;	author christos;	state Exp;
branches;
next	;
commitid	jtc8rnCzWiEEHGqB;

1.17.46.1
date	2008.02.28.21.47.53;	author rjs;	state Exp;
branches;
next	;

1.17.50.1
date	2008.03.23.02.04.04;	author matt;	state Exp;
branches;
next	;

1.17.56.1
date	2008.02.18.21.04.33;	author mjf;	state Exp;
branches;
next	;

1.16.2.1
date	2008.02.27.08.36.20;	author yamt;	state Exp;
branches;
next	;

1.14.6.1
date	2004.08.03.10.35.04;	author skrll;	state Exp;
branches;
next	1.14.6.2;

1.14.6.2
date	2004.09.18.14.34.51;	author skrll;	state Exp;
branches;
next	1.14.6.3;

1.14.6.3
date	2004.09.21.13.16.00;	author skrll;	state Exp;
branches;
next	1.14.6.4;

1.14.6.4
date	2005.11.10.13.56.14;	author skrll;	state Exp;
branches;
next	;

1.14.10.1
date	2005.02.06.07.45.25;	author jmc;	state Exp;
branches;
next	;

1.7.2.1
date	2001.10.26.06.45.36;	author nathanw;	state dead;
branches;
next	1.7.2.2;

1.7.2.2
date	2002.01.08.00.24.50;	author nathanw;	state Exp;
branches;
next	1.7.2.3;

1.7.2.3
date	2002.10.18.02.36.58;	author nathanw;	state Exp;
branches;
next	;

1.6.2.1
date	2001.11.12.21.16.58;	author thorpej;	state Exp;
branches;
next	;

1.3.2.1
date	2001.08.03.04.11.31;	author lukem;	state Exp;
branches;
next	1.3.2.2;

1.3.2.2
date	2002.01.10.19.43.35;	author thorpej;	state Exp;
branches;
next	;

1.1.2.1
date	2001.06.21.19.23.10;	author nathanw;	state Exp;
branches;
next	;

1.1.4.1
date	2001.02.23.03.48.08;	author bouyer;	state dead;
branches;
next	1.1.4.2;

1.1.4.2
date	2001.03.12.13.28.19;	author bouyer;	state Exp;
branches;
next	;


desc
@@


1.20
log
@For DDB, generate APCS stack frame so that db_stack_trace_print() works.

XXX
Copy-paste from arm/conf/Makefile.arm.
Convert to ${MACHINE}/conf/Makefile.${MACHINE}.inc.
@
text
@#	$NetBSD: Makefile.hpcarm,v 1.19 2018/09/22 12:24:02 rin 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/hpcarm/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/hpcarm/conf/Makefile.hpcarm
# 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_*"

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

##
## (1) port identification
##
HPCARM=		$S/arch/hpcarm
ARM=		$S/arch/arm
GENASSYM_CONF=	${ARM}/arm32/genassym.cf
GENASSYM_EXTRAS+=	${HPCARM}/hpcarm/genassym.cf

##
## (2) compile settings
##
CPPFLAGS+=	-Dhpcarm -Darm32
CWARNFLAGS+=	-Wcomment
AFLAGS+=	-x assembler-with-cpp

OPT_DDB=	%DDB%
.if !empty(OPT_DDB) && ${HAVE_GCC:U0} > 0
CFLAGS+=	-mapcs-frame
.endif

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

##
## (4) local objects, compile rules, and dependencies
##
MD_OBJS=	locore.o
MD_CFILES=
MD_SFILES=	${HPCARM}/hpcarm/locore.S

locore.o: ${HPCARM}/hpcarm/locore.S assym.h
	${NORMAL_S}

##
## (5) link settings
##
TEXTADDR?=	C0040000
LINKFLAGS_NORMAL=	-X

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

# depend on CPU configuration
cpufunc.o cpufunc_asm.o: Makefile

# depend on DIAGNOSTIC etc.
cpuswitch.o fault.o machdep.o: Makefile

atomic.o bcopyinout.o bcopy_page.o copystr.o cpu_in_cksum.o: assym.h
cpuswitch.o exception.o fiq_subr.o fusu.o sa11x0_irq.o sigcode.o: assym.h
spl.o vectors.o: assym.h

##
## (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.19
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.hpcarm,v 1.18 2008/02/18 13:29:46 joerg Exp $
d39 5
@


1.18
log
@Register assym.h dependencies.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.17 2005/12/11 12:17:30 christos Exp $
d42 1
a42 1
KERN_AS=	obj
@


1.18.98.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.19 2018/09/22 12:24:02 rin Exp $
d42 1
a42 1
OPT_MODULAR=	%MODULAR%
@


1.18.96.1
log
@Ssync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.19 2018/09/22 12:24:02 rin Exp $
d42 1
a42 1
OPT_MODULAR=	%MODULAR%
@


1.17
log
@merge ktrace-lwp.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.14.6.4 2005/11/10 13:56:14 skrll Exp $
d70 4
@


1.17.50.1
log
@sync with HEAD
@
text
@d1 1
a1 1
#	Makefile.hpcarm,v 1.17 2005/12/11 12:17:30 christos Exp
a69 4
atomic.o bcopyinout.o bcopy_page.o copystr.o cpu_in_cksum.o: assym.h
cpuswitch.o exception.o fiq_subr.o fusu.o sa11x0_irq.o sigcode.o: assym.h
spl.o vectors.o: assym.h

@


1.17.46.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.17 2005/12/11 12:17:30 christos Exp $
a69 4
atomic.o bcopyinout.o bcopy_page.o copystr.o cpu_in_cksum.o: assym.h
cpuswitch.o exception.o fiq_subr.o fusu.o sa11x0_irq.o sigcode.o: assym.h
spl.o vectors.o: assym.h

@


1.17.56.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.18 2008/02/18 13:29:46 joerg Exp $
a69 4
atomic.o bcopyinout.o bcopy_page.o copystr.o cpu_in_cksum.o: assym.h
cpuswitch.o exception.o fiq_subr.o fusu.o sa11x0_irq.o sigcode.o: assym.h
spl.o vectors.o: assym.h

@


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


1.16.2.1
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.16 2005/05/31 04:03:10 christos Exp $
a69 4
atomic.o bcopyinout.o bcopy_page.o copystr.o cpu_in_cksum.o: assym.h
cpuswitch.o exception.o fiq_subr.o fusu.o sa11x0_irq.o sigcode.o: assym.h
spl.o vectors.o: assym.h

@


1.15
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.hpcarm,v 1.14 2002/10/05 17:12:09 chs Exp $
d29 1
a29 1
GENASSYM=	${ARM}/arm32/genassym.cf
@


1.14
log
@add missing protos.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.13 2001/12/19 17:43:54 thorpej Exp $
d93 5
@


1.14.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.hpcarm,v 1.14 2002/10/05 17:12:09 chs Exp $
a92 5

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


1.14.6.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.15 2004/06/04 04:45:50 thorpej Exp $
a92 5

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


1.14.6.2
log
@Sync with HEAD.
@
text
@@


1.14.6.3
log
@Fix the sync with head I botched.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.14.6.1 2004/08/03 10:35:04 skrll Exp $
@


1.14.6.4
log
@Sync with HEAD. Here we go again...
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.14.6.3 2004/09/21 13:16:00 skrll Exp $
d29 1
a29 1
GENASSYM_CONF=	${ARM}/arm32/genassym.cf
@


1.13
log
@Remove the MACHINE_ARCH assignment.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.12 2001/12/09 05:00:44 atatat Exp $
a36 1
LOOSE_PROTOTYPES= yes
@


1.12
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.hpcarm,v 1.11 2001/11/27 00:25:32 thorpej Exp $
a19 1
MACHINE_ARCH=arm
@


1.11
log
@Use the generic 32-bit ARM genassym.cf
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.10 2001/11/26 23:54:49 thorpej Exp $
d14 5
d22 1
a22 1

d25 6
a30 40
# 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

# source tree is located via $S relative to the compilation directory
.ifndef S
S!=	cd ../../../..; pwd
.endif
ARM=	$S/arch/arm
HPCARM=	$S/arch/hpcarm

HAVE_EGCS!=	${CC} --version | egrep "^(2\.[89]|egcs)" ; echo
INCLUDES=	-I. -I$S/arch -I$S -nostdinc
CPPFLAGS=	${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -D_KERNEL_OPT -Dhpcarm -Darm32
CWARNFLAGS?=	-Werror -Wall -Wcomment -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} ${CWARNFLAGS}
AFLAGS=		-x assembler-with-cpp -D_LOCORE
LINKFLAGS=	-Ttext C0040000 -e start
STRIPFLAGS=	-g

d33 11
a43 7
%INCLUDES

HOSTED_CC=	${CC}
HOSTED_CPPFLAGS=${CPPFLAGS:S/^-nostdinc$//}
HOSTED_CFLAGS=	${CFLAGS}

### find out what to use for libkern
a44 21
.include "$S/lib/libkern/Makefile.inc"
.ifndef PROF
LIBKERN=	${KERNLIB}
.else
LIBKERN=	${KERNLIB_PROF}
.endif

### find out what to use for libcompat
.include "$S/compat/common/Makefile.inc"
.ifndef PROF
LIBCOMPAT=	${COMPATLIB}
.else
LIBCOMPAT=	${COMPATLIB_PROF}
.endif

# 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).

NORMAL_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
NOPROF_C=	${CC} ${CFLAGS} ${CPPFLAGS} -c $<
NORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<
d46 6
a51 1
HOSTED_C=	${HOSTED_CC} ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} -c $<
d53 2
a54 30
%OBJS

%CFILES

%SFILES

# 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
.else
#LINKFLAGS+=	-S
LINKFLAGS+=	-X
.endif
d56 9
a64 73
%LOAD

assym.h: $S/kern/genassym.sh ${ARM}/arm32/genassym.cf
	cat ${ARM}/arm32/genassym.cf ${GENASSYM_EXTRAS} | \
	    sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \
	    > 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 modedefs.c

__CLEANDEPEND: .USE
	rm -f .depend

clean: __CLEANKERNEL

cleandir distclean: __CLEANKERNEL __CLEANDEPEND

lint:
	@@lint -hbxncez -Dvolatile= ${CPPFLAGS} -UKGDB \
	    ${HPCARM}/hpcarm/Locore.c ${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=	${HPCARM}/hpcarm/locore.S param.c ioconf.c ${CFILES} ${SFILES}
depend: .depend
.depend: ${SRCS} assym.h param.c
	${MKDEP} ${AFLAGS} ${CPPFLAGS} ${HPCARM}/hpcarm/locore.S
	${MKDEP} -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
	test -z "${SFILES}" || ${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
	sh $S/kern/genassym.sh ${MKDEP} -f assym.dep ${CFLAGS} \
	    ${CPPFLAGS} < ${HPCARM}/hpcarm/genassym.cf
	@@sed -e 's/.*\.o:.*\.c/assym.h:/' < assym.dep >> .depend
	@@rm -f assym.dep

dependall: depend all


# depend on root or device configuration
autoconf.o conf.o: Makefile

# depend on network
uipc_proto.o: Makefile

# depend on maxusers
assym.h: Makefile
d72 12
d85 1
a85 2
locore.o: ${HPCARM}/hpcarm/locore.S assym.h
	${NORMAL_S}
d87 1
a87 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
d90 5
@


1.10
log
@Allow port-specific Makefile fragments to specify a list of additional
genassym.cf fragments, if desired.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.9 2001/11/20 12:56:27 lukem Exp $
d42 1
d60 2
d127 2
a128 2
assym.h: $S/kern/genassym.sh ${HPCARM}/hpcarm/genassym.cf
	cat ${HPCARM}/hpcarm/genassym.cf ${GENASSYM_EXTRAS} | \
@


1.9
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.hpcarm,v 1.8 2001/11/15 19:35:31 thorpej Exp $
d125 3
a127 2
	sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \
	    < ${HPCARM}/hpcarm/genassym.cf > assym.h.tmp && \
@


1.8
log
@MACHINE_ARCH == arm on hpcarm.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.7 2001/10/26 06:45:36 jmc Exp $
d44 1
a44 1
HAVE_EGCS!=	${CC} --version | egrep "^(2\.[89]|egcs)" ; echo 
d49 1
a49 1
# XXX always get it right.  --thorpej 
d188 1
a188 1
 
d190 1
a190 1
uipc_proto.o: Makefile 
d195 1
a195 1
# depend on CPU configuration 
@


1.7
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.hpcarm,v 1.6 2001/10/23 19:26:44 thorpej Exp $
d15 1
a15 1
MACHINE_ARCH=arm32
@


1.7.2.1
log
@file Makefile.hpcarm was added on branch nathanw_sa on 2002-01-08 00:24:50 +0000
@
text
@d1 217
@


1.7.2.2
log
@Catch up to -current.
@
text
@a0 93
#	$NetBSD: Makefile.hpcarm,v 1.7.2.1 2002/01/08 00:24:50 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/hpcarm/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/hpcarm/conf/Makefile.hpcarm
# 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_*"

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

##
## (1) port identification
##
HPCARM=		$S/arch/hpcarm
ARM=		$S/arch/arm
GENASSYM=	${ARM}/arm32/genassym.cf
GENASSYM_EXTRAS+=	${HPCARM}/hpcarm/genassym.cf

##
## (2) compile settings
##
CPPFLAGS+=	-Dhpcarm -Darm32
CWARNFLAGS+=	-Wcomment
LOOSE_PROTOTYPES= yes
AFLAGS+=	-x assembler-with-cpp

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

##
## (4) local objects, compile rules, and dependencies
##
MD_OBJS=	locore.o
MD_CFILES=
MD_SFILES=	${HPCARM}/hpcarm/locore.S

locore.o: ${HPCARM}/hpcarm/locore.S assym.h
	${NORMAL_S}

##
## (5) link settings
##
TEXTADDR?=	C0040000
LINKFLAGS_NORMAL=	-X

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

# depend on CPU configuration
cpufunc.o cpufunc_asm.o: Makefile

# depend on DIAGNOSTIC etc.
cpuswitch.o fault.o machdep.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.7.2.3
log
@Catch up to -current.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.7.2.2 2002/10/18 02:36:58 nathanw Exp $
d37 1
@


1.6
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.hpcarm,v 1.5 2001/10/23 17:32:36 thorpej Exp $
d16 1
@


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


1.5
log
@Pull in <bsd.own.mk> to get the correct toolchain definitions for
the USE_NEW_TOOLCHAIN case.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.4 2001/08/02 14:45:40 toshii Exp $
d14 2
@


1.4
log
@Change the start address to load the kernel.  We have 768k more free
memory now.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.3 2001/06/29 02:38:32 toshii Exp $
d14 2
@


1.3
log
@Use ld -X instead of -x, to keep local symbols for DDB.

XXX does other arm ports need this change?
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.2 2001/05/29 02:20:22 mrg Exp $
d51 1
a51 1
LINKFLAGS=	-Ttext C0100000 -e start
@


1.3.2.1
log
@update to -current
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.4 2001/08/02 14:45:40 toshii Exp $
d51 1
a51 1
LINKFLAGS=	-Ttext C0040000 -e start
@


1.3.2.2
log
@Sync kqueue branch with -current.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.3.2.1 2001/08/03 04:11:31 lukem 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 2
a16 24
USETOOLS?=	no
NEED_OWN_INSTALL_TARGET?=no
.include <bsd.own.mk>

##
## (1) port identification
##
HPCARM=		$S/arch/hpcarm
ARM=		$S/arch/arm
GENASSYM=	${ARM}/arm32/genassym.cf
GENASSYM_EXTRAS+=	${HPCARM}/hpcarm/genassym.cf

##
## (2) compile settings
##
CPPFLAGS+=	-Dhpcarm -Darm32
CWARNFLAGS+=	-Wcomment
LOOSE_PROTOTYPES= yes
AFLAGS+=	-x assembler-with-cpp

##
## (3) libkern and compat
##
KERN_AS=	obj
d18 35
a52 6
##
## (4) local objects, compile rules, and dependencies
##
MD_OBJS=	locore.o
MD_CFILES=
MD_SFILES=	${HPCARM}/hpcarm/locore.S
d54 1
a54 2
locore.o: ${HPCARM}/hpcarm/locore.S assym.h
	${NORMAL_S}
d56 3
a58 9
##
## (5) link settings
##
TEXTADDR?=	C0040000
LINKFLAGS_NORMAL=	-X

##
## (6) port specific target dependencies
##
d60 23
a82 5
# depend on CPU configuration
cpufunc.o cpufunc_asm.o: Makefile

# depend on DIAGNOSTIC etc.
cpuswitch.o fault.o machdep.o: Makefile
d84 1
a84 8
##
## (7) misc settings
##

##
## (8) config(8) generated machinery
##
%INCLUDES
d92 25
d119 93
a212 5

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


1.2
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.hpcarm,v 1.1 2001/02/23 03:48:08 ichiro Exp $
d114 1
a114 1
LINKFLAGS+=	-x
@


1.1
log
@hpcarm:
kernel for StrongARM-based WinCE PDA machine.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.arm32,v 1.54 2000/12/17 15:52:40 jdolecek Exp $
d41 1
a41 1
CPPFLAGS=	${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -Dhpcarm -Darm32
@


1.1.4.1
log
@file Makefile.hpcarm was added on branch thorpej_scsipi on 2001-03-12 13:28:19 +0000
@
text
@d1 212
@


1.1.4.2
log
@Sync with HEAD.
@
text
@a0 212
#	$NetBSD: Makefile.hpcarm,v 1.1.4.1 2001/03/12 13:28:19 bouyer 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/hpcarm/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/hpcarm/conf/Makefile.hpcarm
# after which config should be rerun for all machines of that type.

# 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

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

HAVE_EGCS!=	${CC} --version | egrep "^(2\.[89]|egcs)" ; echo 
INCLUDES=	-I. -I$S/arch -I$S -nostdinc
CPPFLAGS=	${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -Dhpcarm -Darm32
CWARNFLAGS?=	-Werror -Wall -Wcomment -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} ${CWARNFLAGS}
AFLAGS=		-x assembler-with-cpp -D_LOCORE
LINKFLAGS=	-Ttext C0100000 -e start
STRIPFLAGS=	-g

%INCLUDES

HOSTED_CC=	${CC}
HOSTED_CPPFLAGS=${CPPFLAGS:S/^-nostdinc$//}
HOSTED_CFLAGS=	${CFLAGS}

### find out what to use for libkern
KERN_AS=	obj
.include "$S/lib/libkern/Makefile.inc"
.ifndef PROF
LIBKERN=	${KERNLIB}
.else
LIBKERN=	${KERNLIB_PROF}
.endif

### find out what to use for libcompat
.include "$S/compat/common/Makefile.inc"
.ifndef PROF
LIBCOMPAT=	${COMPATLIB}
.else
LIBCOMPAT=	${COMPATLIB_PROF}
.endif

# 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).

NORMAL_C=	${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $<
NOPROF_C=	${CC} ${CFLAGS} ${CPPFLAGS} -c $<
NORMAL_S=	${CC} ${AFLAGS} ${CPPFLAGS} -c $<

HOSTED_C=	${HOSTED_CC} ${HOSTED_CFLAGS} ${HOSTED_CPPFLAGS} -c $<

%OBJS

%CFILES

%SFILES

# 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
.else
#LINKFLAGS+=	-S
LINKFLAGS+=	-x
.endif

%LOAD

assym.h: $S/kern/genassym.sh ${HPCARM}/hpcarm/genassym.cf
	sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \
	    < ${HPCARM}/hpcarm/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 modedefs.c

__CLEANDEPEND: .USE
	rm -f .depend

clean: __CLEANKERNEL

cleandir distclean: __CLEANKERNEL __CLEANDEPEND

lint:
	@@lint -hbxncez -Dvolatile= ${CPPFLAGS} -UKGDB \
	    ${HPCARM}/hpcarm/Locore.c ${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=	${HPCARM}/hpcarm/locore.S param.c ioconf.c ${CFILES} ${SFILES}
depend: .depend
.depend: ${SRCS} assym.h param.c
	${MKDEP} ${AFLAGS} ${CPPFLAGS} ${HPCARM}/hpcarm/locore.S
	${MKDEP} -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
	test -z "${SFILES}" || ${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
	sh $S/kern/genassym.sh ${MKDEP} -f assym.dep ${CFLAGS} \
	    ${CPPFLAGS} < ${HPCARM}/hpcarm/genassym.cf
	@@sed -e 's/.*\.o:.*\.c/assym.h:/' < assym.dep >> .depend
	@@rm -f assym.dep

dependall: depend all


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

# depend on maxusers
assym.h: Makefile

# depend on CPU configuration 
cpufunc.o cpufunc_asm.o: Makefile

# depend on DIAGNOSTIC etc.
cpuswitch.o fault.o machdep.o: Makefile


locore.o: ${HPCARM}/hpcarm/locore.S assym.h
	${NORMAL_S}

# 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

%RULES
@


1.1.2.1
log
@Catch up to -current.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.hpcarm,v 1.1 2001/02/23 03:48:08 ichiro Exp $
d41 1
a41 1
CPPFLAGS=	${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -D_KERNEL_OPT -Dhpcarm -Darm32
@
