head	1.39;
access;
symbols
	netbsd-11-0-RELEASE:1.39
	netbsd-11-0-RC7:1.39
	netbsd-11-0-RC6:1.39
	netbsd-11-0-RC5:1.39
	netbsd-11-0-RC4:1.39
	netbsd-11-0-RC3:1.39
	netbsd-11-0-RC2:1.39
	netbsd-11-0-RC1:1.39
	perseant-exfatfs-base-20250801:1.39
	netbsd-11:1.39.0.8
	netbsd-11-base:1.39
	netbsd-10-1-RELEASE:1.38.4.1
	perseant-exfatfs-base-20240630:1.39
	perseant-exfatfs:1.39.0.6
	perseant-exfatfs-base:1.39
	netbsd-8-3-RELEASE:1.30
	netbsd-9-4-RELEASE:1.30
	netbsd-10-0-RELEASE:1.38.4.1
	netbsd-10-0-RC6:1.38.4.1
	netbsd-10-0-RC5:1.38.4.1
	netbsd-10-0-RC4:1.38.4.1
	netbsd-10-0-RC3:1.38.4.1
	netbsd-10-0-RC2:1.38.4.1
	thorpej-ifq:1.39.0.4
	thorpej-ifq-base:1.39
	thorpej-altq-separation:1.39.0.2
	thorpej-altq-separation-base:1.39
	netbsd-10-0-RC1:1.38.4.1
	netbsd-10:1.38.0.4
	netbsd-10-base:1.38
	bouyer-sunxi-drm:1.38.0.2
	bouyer-sunxi-drm-base:1.38
	netbsd-9-3-RELEASE:1.30
	thorpej-i2c-spi-conf2:1.36.0.20
	thorpej-i2c-spi-conf2-base:1.36
	thorpej-futex2:1.36.0.18
	thorpej-futex2-base:1.36
	thorpej-cfargs2:1.36.0.16
	thorpej-cfargs2-base:1.36
	cjep_sun2x-base1:1.36
	cjep_sun2x:1.36.0.14
	cjep_sun2x-base:1.36
	cjep_staticlib_x-base1:1.36
	netbsd-9-2-RELEASE:1.30
	cjep_staticlib_x:1.36.0.12
	cjep_staticlib_x-base:1.36
	thorpej-i2c-spi-conf:1.36.0.10
	thorpej-i2c-spi-conf-base:1.36
	thorpej-cfargs:1.36.0.8
	thorpej-cfargs-base:1.36
	thorpej-futex:1.36.0.6
	thorpej-futex-base:1.36
	netbsd-9-1-RELEASE:1.30
	bouyer-xenpvh-base2:1.36
	phil-wifi-20200421:1.36
	bouyer-xenpvh-base1:1.36
	phil-wifi-20200411:1.36
	bouyer-xenpvh:1.36.0.4
	bouyer-xenpvh-base:1.36
	is-mlppp:1.36.0.2
	is-mlppp-base:1.36
	phil-wifi-20200406:1.36
	netbsd-8-2-RELEASE:1.30
	ad-namecache-base3:1.36
	netbsd-9-0-RELEASE:1.30
	netbsd-9-0-RC2:1.30
	ad-namecache-base2:1.36
	ad-namecache-base1:1.31
	ad-namecache:1.30.0.20
	ad-namecache-base:1.30
	netbsd-9-0-RC1:1.30
	phil-wifi-20191119:1.30
	netbsd-9:1.30.0.18
	netbsd-9-base:1.30
	phil-wifi-20190609:1.30
	netbsd-8-1-RELEASE:1.30
	netbsd-8-1-RC1:1.30
	isaki-audio2:1.30.0.16
	isaki-audio2-base:1.30
	pgoyette-compat-merge-20190127:1.30
	pgoyette-compat-20190127:1.30
	pgoyette-compat-20190118:1.30
	pgoyette-compat-1226:1.30
	pgoyette-compat-1126:1.30
	pgoyette-compat-1020:1.30
	pgoyette-compat-0930:1.30
	pgoyette-compat-0906:1.30
	netbsd-7-2-RELEASE:1.29
	pgoyette-compat-0728:1.30
	netbsd-8-0-RELEASE:1.30
	phil-wifi:1.30.0.14
	phil-wifi-base:1.30
	pgoyette-compat-0625:1.30
	netbsd-8-0-RC2:1.30
	pgoyette-compat-0521:1.30
	pgoyette-compat-0502:1.30
	pgoyette-compat-0422:1.30
	netbsd-8-0-RC1:1.30
	pgoyette-compat-0415:1.30
	pgoyette-compat-0407:1.30
	pgoyette-compat-0330:1.30
	pgoyette-compat-0322:1.30
	pgoyette-compat-0315:1.30
	netbsd-7-1-2-RELEASE:1.29
	pgoyette-compat:1.30.0.12
	pgoyette-compat-base:1.30
	netbsd-7-1-1-RELEASE:1.29
	tls-maxphys-base-20171202:1.30
	matt-nb8-mediatek:1.30.0.10
	matt-nb8-mediatek-base:1.30
	nick-nhusb-base-20170825:1.30
	perseant-stdc-iso10646:1.30.0.8
	perseant-stdc-iso10646-base:1.30
	netbsd-8:1.30.0.6
	netbsd-8-base:1.30
	prg-localcount2-base3:1.30
	prg-localcount2-base2:1.30
	prg-localcount2-base1:1.30
	prg-localcount2:1.30.0.4
	prg-localcount2-base:1.30
	pgoyette-localcount-20170426:1.30
	bouyer-socketcan-base1:1.30
	jdolecek-ncq:1.30.0.2
	jdolecek-ncq-base:1.30
	pgoyette-localcount-20170320:1.29
	netbsd-7-1:1.29.0.16
	netbsd-7-1-RELEASE:1.29
	netbsd-7-1-RC2:1.29
	nick-nhusb-base-20170204:1.29
	netbsd-7-nhusb-base-20170116:1.29
	bouyer-socketcan:1.29.0.14
	bouyer-socketcan-base:1.29
	pgoyette-localcount-20170107:1.29
	netbsd-7-1-RC1:1.29
	nick-nhusb-base-20161204:1.29
	pgoyette-localcount-20161104:1.29
	netbsd-7-0-2-RELEASE:1.29
	nick-nhusb-base-20161004:1.29
	localcount-20160914:1.29
	netbsd-7-nhusb:1.29.0.12
	netbsd-7-nhusb-base:1.29
	pgoyette-localcount-20160806:1.29
	pgoyette-localcount-20160726:1.29
	pgoyette-localcount:1.29.0.10
	pgoyette-localcount-base:1.29
	nick-nhusb-base-20160907:1.29
	nick-nhusb-base-20160529:1.29
	netbsd-7-0-1-RELEASE:1.29
	nick-nhusb-base-20160422:1.29
	nick-nhusb-base-20160319:1.29
	nick-nhusb-base-20151226:1.29
	netbsd-7-0:1.29.0.8
	netbsd-7-0-RELEASE:1.29
	nick-nhusb-base-20150921:1.29
	netbsd-7-0-RC3:1.29
	netbsd-7-0-RC2:1.29
	netbsd-7-0-RC1:1.29
	nick-nhusb-base-20150606:1.29
	nick-nhusb-base-20150406:1.29
	nick-nhusb:1.29.0.6
	nick-nhusb-base:1.29
	netbsd-5-2-3-RELEASE:1.23.4.1
	netbsd-5-1-5-RELEASE:1.23
	netbsd-6-0-6-RELEASE:1.26
	netbsd-6-1-5-RELEASE:1.26
	netbsd-7:1.29.0.4
	netbsd-7-base:1.29
	yamt-pagecache-base9:1.29
	yamt-pagecache-tag8:1.26
	netbsd-6-1-4-RELEASE:1.26
	netbsd-6-0-5-RELEASE:1.26
	tls-earlyentropy:1.29.0.2
	tls-earlyentropy-base:1.29
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.29
	riastradh-drm2-base3:1.29
	netbsd-6-1-3-RELEASE:1.26
	netbsd-6-0-4-RELEASE:1.26
	netbsd-5-2-2-RELEASE:1.23.4.1
	netbsd-5-1-4-RELEASE:1.23
	netbsd-6-1-2-RELEASE:1.26
	netbsd-6-0-3-RELEASE:1.26
	netbsd-5-2-1-RELEASE:1.23.4.1
	netbsd-5-1-3-RELEASE:1.23
	rmind-smpnet-nbase:1.29
	netbsd-6-1-1-RELEASE:1.26
	riastradh-drm2-base2:1.28
	riastradh-drm2-base1:1.28
	riastradh-drm2:1.28.0.4
	riastradh-drm2-base:1.28
	rmind-smpnet:1.28.0.2
	rmind-smpnet-base:1.29
	netbsd-6-1:1.26.0.22
	netbsd-6-0-2-RELEASE:1.26
	netbsd-6-1-RELEASE:1.26
	khorben-n900:1.26.0.20
	netbsd-6-1-RC4:1.26
	netbsd-6-1-RC3:1.26
	agc-symver:1.26.0.18
	agc-symver-base:1.26
	netbsd-6-1-RC2:1.26
	netbsd-6-1-RC1:1.26
	yamt-pagecache-base8:1.26
	netbsd-5-2:1.23.4.1.0.2
	netbsd-6-0-1-RELEASE:1.26
	yamt-pagecache-base7:1.26
	netbsd-5-2-RELEASE:1.23.4.1
	netbsd-5-2-RC1:1.23.4.1
	matt-nb6-plus-nbase:1.26
	yamt-pagecache-base6:1.26
	netbsd-6-0:1.26.0.14
	netbsd-6-0-RELEASE:1.26
	netbsd-6-0-RC2:1.26
	tls-maxphys:1.26.0.12
	tls-maxphys-base:1.29
	matt-nb6-plus:1.26.0.10
	matt-nb6-plus-base:1.26
	netbsd-6-0-RC1:1.26
	jmcneill-usbmp-base10:1.26
	yamt-pagecache-base5:1.26
	jmcneill-usbmp-base9:1.26
	yamt-pagecache-base4:1.26
	jmcneill-usbmp-base8:1.26
	jmcneill-usbmp-base7:1.26
	jmcneill-usbmp-base6:1.26
	jmcneill-usbmp-base5:1.26
	jmcneill-usbmp-base4:1.26
	jmcneill-usbmp-base3:1.26
	jmcneill-usbmp-pre-base2:1.26
	jmcneill-usbmp-base2:1.26
	netbsd-6:1.26.0.8
	netbsd-6-base:1.26
	netbsd-5-1-2-RELEASE:1.23
	netbsd-5-1-1-RELEASE:1.23
	jmcneill-usbmp:1.26.0.6
	jmcneill-usbmp-base:1.26
	jmcneill-audiomp3:1.26.0.4
	jmcneill-audiomp3-base:1.26
	yamt-pagecache-base3:1.26
	yamt-pagecache-base2:1.26
	yamt-pagecache:1.26.0.2
	yamt-pagecache-base:1.26
	rmind-uvmplock-nbase:1.25
	cherry-xenmp:1.25.0.2
	cherry-xenmp-base:1.25
	uebayasi-xip-base7:1.25
	bouyer-quota2-nbase:1.25
	bouyer-quota2:1.24.0.4
	bouyer-quota2-base:1.25
	jruoho-x86intr:1.24.0.2
	jruoho-x86intr-base:1.24
	matt-mips64-premerge-20101231:1.24
	matt-nb5-mips64-premerge-20101231:1.23
	matt-nb5-pq3:1.23.0.20
	matt-nb5-pq3-base:1.23
	netbsd-5-1:1.23.0.18
	uebayasi-xip-base6:1.24
	uebayasi-xip-base5:1.24
	netbsd-5-1-RELEASE:1.23
	uebayasi-xip-base4:1.24
	uebayasi-xip-base3:1.24
	yamt-nfs-mp-base11:1.24
	netbsd-5-1-RC4:1.23
	matt-nb5-mips64-k15:1.23
	uebayasi-xip-base2:1.24
	yamt-nfs-mp-base10:1.24
	netbsd-5-1-RC3:1.23
	netbsd-5-1-RC2:1.23
	uebayasi-xip-base1:1.23
	netbsd-5-1-RC1:1.23
	rmind-uvmplock:1.23.0.16
	rmind-uvmplock-base:1.25
	yamt-nfs-mp-base9:1.23
	uebayasi-xip:1.23.0.14
	uebayasi-xip-base:1.23
	netbsd-5-0-2-RELEASE:1.23
	matt-nb5-mips64-premerge-20091211:1.23
	matt-premerge-20091211:1.23
	yamt-nfs-mp-base8:1.23
	matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.23
	matt-nb4-mips64-k7-u2a-k9b:1.23
	matt-nb5-mips64-u1-k1-k5:1.23
	yamt-nfs-mp-base7:1.23
	matt-nb5-mips64:1.23.0.12
	netbsd-5-0-1-RELEASE:1.23
	jymxensuspend-base:1.23
	yamt-nfs-mp-base6:1.23
	yamt-nfs-mp-base5:1.23
	yamt-nfs-mp-base4:1.23
	jym-xensuspend-nbase:1.25
	yamt-nfs-mp-base3:1.23
	nick-hppapmap-base4:1.23
	nick-hppapmap-base3:1.23
	netbsd-5-0:1.23.0.10
	netbsd-5-0-RELEASE:1.23
	netbsd-5-0-RC4:1.23
	netbsd-5-0-RC3:1.23
	nick-hppapmap-base2:1.23
	netbsd-5-0-RC2:1.23
	jym-xensuspend:1.23.0.8
	jym-xensuspend-base:1.25
	netbsd-5-0-RC1:1.23
	haad-dm-base2:1.23
	haad-nbase2:1.23
	ad-audiomp2:1.23.0.6
	ad-audiomp2-base:1.23
	netbsd-5:1.23.0.4
	netbsd-5-base:1.23
	nick-hppapmap:1.23.0.2
	nick-hppapmap-base:1.23
	matt-mips64-base2:1.22
	haad-dm-base1:1.21
	wrstuden-revivesa-base-4:1.21
	netbsd-4-0-1-RELEASE:1.20
	wrstuden-revivesa-base-3:1.21
	wrstuden-revivesa-base-2:1.21
	wrstuden-fixsa-newbase:1.20
	nick-csl-alignment-base5:1.21
	haad-dm:1.21.0.50
	haad-dm-base:1.23
	wrstuden-revivesa-base-1:1.21
	simonb-wapbl-nbase:1.21
	yamt-pf42-base4:1.21
	simonb-wapbl:1.21.0.48
	simonb-wapbl-base:1.21
	yamt-pf42-base3:1.21
	hpcarm-cleanup-nbase:1.21
	yamt-pf42-baseX:1.21
	yamt-pf42-base2:1.21
	yamt-nfs-mp-base2:1.21
	wrstuden-revivesa:1.21.0.46
	wrstuden-revivesa-base:1.21
	yamt-nfs-mp:1.21.0.44
	yamt-nfs-mp-base:1.21
	yamt-pf42:1.21.0.42
	yamt-pf42-base:1.21
	ad-socklock-base1:1.21
	yamt-lazymbuf-base15:1.21
	yamt-lazymbuf-base14:1.21
	keiichi-mipv6-nbase:1.21
	mjf-devfs2:1.21.0.40
	mjf-devfs2-base:1.23
	nick-net80211-sync:1.21.0.38
	nick-net80211-sync-base:1.21
	keiichi-mipv6:1.21.0.36
	keiichi-mipv6-base:1.21
	bouyer-xeni386-merge1:1.21
	matt-armv6-prevmlocking:1.21
	wrstuden-fixsa-base-1:1.20
	vmlocking2-base3:1.21
	netbsd-4-0:1.20.0.18
	netbsd-4-0-RELEASE:1.20
	bouyer-xeni386-nbase:1.21
	yamt-kmem-base3:1.21
	cube-autoconf:1.21.0.34
	cube-autoconf-base:1.21
	yamt-kmem-base2:1.21
	bouyer-xeni386:1.21.0.32
	bouyer-xeni386-base:1.21
	yamt-kmem:1.21.0.30
	yamt-kmem-base:1.21
	vmlocking2-base2:1.21
	reinoud-bufcleanup-nbase:1.21
	vmlocking2:1.21.0.28
	vmlocking2-base1:1.21
	netbsd-4-0-RC5:1.20
	matt-nb4-arm:1.20.0.16
	matt-nb4-arm-base:1.20
	matt-armv6-nbase:1.21
	jmcneill-base:1.21
	netbsd-4-0-RC4:1.20
	mjf-devfs:1.21.0.26
	mjf-devfs-base:1.21
	bouyer-xenamd64-base2:1.21
	vmlocking-nbase:1.21
	yamt-x86pmap-base4:1.21
	bouyer-xenamd64:1.21.0.24
	bouyer-xenamd64-base:1.21
	netbsd-4-0-RC3:1.20
	yamt-x86pmap-base3:1.21
	yamt-x86pmap-base2:1.21
	netbsd-4-0-RC2:1.20
	yamt-x86pmap:1.21.0.22
	yamt-x86pmap-base:1.21
	netbsd-4-0-RC1:1.20
	matt-armv6:1.21.0.20
	matt-armv6-base:1.21
	jmcneill-pm:1.21.0.18
	jmcneill-pm-base:1.21
	hpcarm-cleanup:1.21.0.16
	hpcarm-cleanup-base:1.21
	nick-csl-alignment:1.21.0.14
	nick-csl-alignment-base:1.21
	matt-mips64:1.21.0.12
	matt-mips64-base:1.21
	netbsd-3-1-1-RELEASE:1.16
	netbsd-3-0-3-RELEASE:1.16
	yamt-idlelwp-base8:1.21
	wrstuden-fixsa:1.20.0.14
	wrstuden-fixsa-base:1.20
	ppcoea-renovation:1.21.0.10
	ppcoea-renovation-base:1.21
	thorpej-atomic:1.21.0.8
	thorpej-atomic-base:1.21
	reinoud-bufcleanup:1.21.0.6
	reinoud-bufcleanup-base:1.21
	mjf-ufs-trans:1.21.0.4
	mjf-ufs-trans-base:1.21
	vmlocking:1.21.0.2
	vmlocking-base:1.21
	ad-audiomp:1.20.0.12
	ad-audiomp-base:1.20
	yamt-idlelwp:1.20.0.10
	post-newlock2-merge:1.20
	newlock2-nbase:1.20
	yamt-splraiseipl-base5:1.20
	yamt-splraiseipl-base4:1.20
	yamt-splraiseipl-base3:1.20
	abandoned-netbsd-4-base:1.20
	abandoned-netbsd-4:1.20.0.2
	netbsd-3-1:1.16.0.28
	netbsd-3-1-RELEASE:1.16
	netbsd-3-0-2-RELEASE:1.16
	yamt-splraiseipl-base2:1.20
	netbsd-3-1-RC4:1.16
	yamt-splraiseipl:1.20.0.6
	yamt-splraiseipl-base:1.20
	netbsd-3-1-RC3:1.16
	yamt-pdpolicy-base9:1.20
	newlock2:1.20.0.4
	newlock2-base:1.20
	yamt-pdpolicy-base8:1.20
	netbsd-3-1-RC2:1.16
	netbsd-3-1-RC1:1.16
	yamt-pdpolicy-base7:1.20
	netbsd-4:1.20.0.8
	netbsd-4-base:1.20
	yamt-pdpolicy-base6:1.18
	chap-midi-nbase:1.18
	netbsd-3-0-1-RELEASE:1.16
	gdamore-uart:1.18.0.16
	gdamore-uart-base:1.18
	simonb-timcounters-final:1.18
	yamt-pdpolicy-base5:1.18
	chap-midi:1.18.0.14
	chap-midi-base:1.18
	yamt-pdpolicy-base4:1.18
	yamt-pdpolicy-base3:1.18
	peter-altq-base:1.18
	peter-altq:1.18.0.12
	yamt-pdpolicy-base2:1.18
	elad-kernelauth-base:1.18
	elad-kernelauth:1.18.0.10
	yamt-pdpolicy:1.18.0.8
	yamt-pdpolicy-base:1.18
	yamt-uio_vmspace-base5:1.18
	simonb-timecounters:1.18.0.6
	simonb-timecounters-base:1.18
	rpaulo-netinet-merge-pcb:1.18.0.4
	rpaulo-netinet-merge-pcb-base:1.20
	yamt-uio_vmspace:1.18.0.2
	netbsd-3-0:1.16.0.26
	netbsd-3-0-RELEASE:1.16
	netbsd-3-0-RC6:1.16
	yamt-readahead-base3:1.16
	netbsd-3-0-RC5:1.16
	netbsd-3-0-RC4:1.16
	netbsd-3-0-RC3:1.16
	yamt-readahead-base2:1.16
	netbsd-3-0-RC2:1.16
	yamt-readahead-pervnode:1.16
	yamt-readahead-perfile:1.16
	yamt-readahead:1.16.0.24
	yamt-readahead-base:1.16
	netbsd-3-0-RC1:1.16
	yamt-vop-base3:1.16
	netbsd-2-0-3-RELEASE:1.16
	netbsd-2-1:1.16.0.22
	yamt-vop-base2:1.16
	thorpej-vnode-attr:1.16.0.20
	thorpej-vnode-attr-base:1.16
	netbsd-2-1-RELEASE:1.16
	yamt-vop:1.16.0.18
	yamt-vop-base:1.16
	netbsd-2-1-RC6:1.16
	netbsd-2-1-RC5:1.16
	netbsd-2-1-RC4:1.16
	netbsd-2-1-RC3:1.16
	netbsd-2-1-RC2:1.16
	netbsd-2-1-RC1:1.16
	yamt-lazymbuf:1.16.0.16
	yamt-km-base4:1.16
	netbsd-2-0-2-RELEASE:1.16
	yamt-km-base3:1.16
	netbsd-3:1.16.0.14
	netbsd-3-base:1.16
	yamt-km-base2:1.16
	yamt-km:1.16.0.10
	yamt-km-base:1.16
	kent-audio2:1.16.0.8
	kent-audio2-base:1.16
	netbsd-2-0-1-RELEASE:1.16
	kent-audio1-beforemerge:1.16
	netbsd-2:1.16.0.6
	netbsd-2-base:1.16
	kent-audio1:1.16.0.4
	kent-audio1-base:1.16
	netbsd-2-0-RELEASE:1.16
	netbsd-2-0-RC5:1.16
	netbsd-2-0-RC4:1.16
	netbsd-2-0-RC3:1.16
	netbsd-2-0-RC2:1.16
	netbsd-2-0-RC1:1.16
	netbsd-2-0:1.16.0.2
	netbsd-2-0-base:1.16
	netbsd-1-6-PATCH002-RELEASE:1.11
	netbsd-1-6-PATCH002:1.11
	netbsd-1-6-PATCH002-RC4:1.11
	netbsd-1-6-PATCH002-RC3:1.11
	netbsd-1-6-PATCH002-RC2:1.11
	netbsd-1-6-PATCH002-RC1:1.11
	ktrace-lwp:1.13.0.2
	ktrace-lwp-base:1.16
	netbsd-1-6-PATCH001:1.11
	netbsd-1-6-PATCH001-RELEASE:1.11
	netbsd-1-6-PATCH001-RC3:1.11
	netbsd-1-6-PATCH001-RC2:1.11
	netbsd-1-6-PATCH001-RC1:1.11
	nathanw_sa_end:1.6.4.3
	nathanw_sa_before_merge:1.11
	fvdl_fs64_base:1.11
	gmcgarry_ctxsw:1.11.0.10
	gmcgarry_ctxsw_base:1.11
	gmcgarry_ucred:1.11.0.8
	gmcgarry_ucred_base:1.11
	nathanw_sa_base:1.11
	kqueue-aftermerge:1.11
	kqueue-beforemerge:1.11
	netbsd-1-6-RELEASE:1.11
	netbsd-1-6-RC3:1.11
	netbsd-1-6-RC2:1.11
	netbsd-1-6-RC1:1.11
	netbsd-1-6:1.11.0.6
	netbsd-1-6-base:1.11
	gehenna-devsw:1.11.0.4
	gehenna-devsw-base:1.11
	eeh-devprop:1.11.0.2
	eeh-devprop-base:1.11
	newlock:1.10.0.6
	newlock-base:1.10
	ifpoll-base:1.10
	kqueue-base:1.11
	kqueue:1.10.0.2
	nathanw_sa:1.6.0.4
	thorpej-mips-cache:1.6.0.2
	thorpej-mips-cache-base:1.6
	thorpej-devvp-base3:1.5
	thorpej-devvp-base2:1.4;
locks; strict;
comment	@# @;


1.39
date	2023.01.11.09.35.06;	author isaki;	state Exp;
branches;
next	1.38;
commitid	N2YpTJWF9YhFC69E;

1.38
date	2021.12.15.13.22.34;	author christos;	state Exp;
branches
	1.38.4.1;
next	1.37;
commitid	tlFPSprdC152uKkD;

1.37
date	2021.12.15.12.52.36;	author christos;	state Exp;
branches;
next	1.36;
commitid	69VeErw9Wt6KjKkD;

1.36
date	2020.01.18.07.25.11;	author isaki;	state Exp;
branches;
next	1.35;
commitid	PPqwBdvc4CpqU8TB;

1.35
date	2020.01.18.06.44.23;	author isaki;	state Exp;
branches;
next	1.34;
commitid	E0Lbsv0VGE4pG8TB;

1.34
date	2020.01.18.06.34.29;	author isaki;	state Exp;
branches;
next	1.33;
commitid	1KDxQaSnPyAVC8TB;

1.33
date	2020.01.18.05.46.26;	author isaki;	state Exp;
branches;
next	1.32;
commitid	wruNcpj2d5Hzm8TB;

1.32
date	2020.01.18.05.41.48;	author isaki;	state Exp;
branches;
next	1.31;
commitid	1JB4qeziIBLPk8TB;

1.31
date	2020.01.16.13.15.47;	author isaki;	state Exp;
branches;
next	1.30;
commitid	VpgZ8bOwSQICUUSB;

1.30
date	2017.04.08.19.53.23;	author christos;	state Exp;
branches
	1.30.14.1
	1.30.20.1;
next	1.29;

1.29
date	2013.08.12.16.34.05;	author joerg;	state Exp;
branches
	1.29.6.1
	1.29.10.1
	1.29.14.1;
next	1.28;

1.28
date	2013.06.15.01.39.56;	author christos;	state Exp;
branches
	1.28.2.1;
next	1.27;

1.27
date	2013.06.15.01.37.10;	author christos;	state Exp;
branches;
next	1.26;

1.26
date	2011.10.11.13.07.06;	author tsutsui;	state Exp;
branches
	1.26.2.1
	1.26.12.1;
next	1.25;

1.25
date	2011.01.22.19.19.24;	author joerg;	state Exp;
branches;
next	1.24;

1.24
date	2010.07.06.06.00.02;	author mrg;	state Exp;
branches
	1.24.2.1
	1.24.4.1;
next	1.23;

1.23
date	2008.10.25.22.27.38;	author apb;	state Exp;
branches
	1.23.4.1
	1.23.14.1
	1.23.16.1;
next	1.22;

1.22
date	2008.10.19.22.05.22;	author apb;	state Exp;
branches;
next	1.21;

1.21
date	2007.03.03.07.10.30;	author isaki;	state Exp;
branches
	1.21.40.1
	1.21.44.1
	1.21.50.1;
next	1.20;

1.20
date	2006.06.29.03.46.43;	author lukem;	state Exp;
branches
	1.20.10.1;
next	1.19;

1.19
date	2006.06.29.03.38.24;	author lukem;	state Exp;
branches;
next	1.18;

1.18
date	2005.12.27.23.20.50;	author he;	state Exp;
branches
	1.18.4.1
	1.18.8.1
	1.18.16.1;
next	1.17;

1.17
date	2005.12.11.12.19.44;	author christos;	state Exp;
branches;
next	1.16;

1.16
date	2004.03.21.16.25.56;	author itohy;	state Exp;
branches
	1.16.16.1;
next	1.15;

1.15
date	2003.10.30.22.23.51;	author he;	state Exp;
branches;
next	1.14;

1.14
date	2003.10.26.07.25.37;	author lukem;	state Exp;
branches;
next	1.13;

1.13
date	2003.04.09.12.57.13;	author itohy;	state Exp;
branches
	1.13.2.1;
next	1.12;

1.12
date	2003.02.02.07.10.54;	author isaki;	state Exp;
branches;
next	1.11;

1.11
date	2002.03.17.16.14.30;	author minoura;	state Exp;
branches;
next	1.10;

1.10
date	2001.12.12.12.24.26;	author lukem;	state Exp;
branches
	1.10.2.1;
next	1.9;

1.9
date	2001.12.12.01.49.58;	author tv;	state Exp;
branches;
next	1.8;

1.8
date	2001.12.05.02.07.09;	author minoura;	state Exp;
branches;
next	1.7;

1.7
date	2001.11.24.16.18.44;	author minoura;	state Exp;
branches;
next	1.6;

1.6
date	2001.10.15.16.23.01;	author minoura;	state Exp;
branches
	1.6.4.1;
next	1.5;

1.5
date	2001.10.01.17.03.38;	author minoura;	state Exp;
branches;
next	1.4;

1.4
date	2001.09.28.01.49.54;	author minoura;	state Exp;
branches;
next	1.3;

1.3
date	2001.09.27.14.08.27;	author minoura;	state Exp;
branches;
next	1.2;

1.2
date	2001.09.27.13.27.54;	author minoura;	state Exp;
branches;
next	1.1;

1.1
date	2001.09.27.10.14.49;	author minoura;	state Exp;
branches;
next	;

1.38.4.1
date	2023.05.15.10.31.10;	author martin;	state Exp;
branches;
next	;
commitid	nQEVrd54ATfVW2pE;

1.30.14.1
date	2020.04.08.14.07.57;	author martin;	state Exp;
branches;
next	;
commitid	Qli2aW9E74UFuA3C;

1.30.20.1
date	2020.01.17.21.47.28;	author ad;	state Exp;
branches;
next	1.30.20.2;
commitid	T9pwLWote7xbI5TB;

1.30.20.2
date	2020.01.25.22.38.44;	author ad;	state Exp;
branches;
next	;
commitid	ethRERRmx7bMJ7UB;

1.29.6.1
date	2017.08.28.17.51.55;	author skrll;	state Exp;
branches;
next	;
commitid	UQQpnjvcNkUZn05A;

1.29.10.1
date	2017.04.26.02.53.08;	author pgoyette;	state Exp;
branches;
next	;

1.29.14.1
date	2017.04.21.16.53.38;	author bouyer;	state Exp;
branches;
next	;

1.28.2.1
date	2013.08.28.23.59.23;	author rmind;	state Exp;
branches;
next	;

1.26.2.1
date	2014.05.22.11.40.12;	author yamt;	state Exp;
branches;
next	;

1.26.12.1
date	2014.08.20.00.03.28;	author tls;	state Exp;
branches;
next	1.26.12.2;

1.26.12.2
date	2017.12.03.11.36.49;	author jdolecek;	state Exp;
branches;
next	;
commitid	XcIYRZTAh1LmerhA;

1.24.2.1
date	2011.06.06.09.07.02;	author jruoho;	state Exp;
branches;
next	;

1.24.4.1
date	2011.02.08.16.19.44;	author bouyer;	state Exp;
branches;
next	;

1.23.4.1
date	2012.03.17.18.38.56;	author bouyer;	state Exp;
branches;
next	;

1.23.14.1
date	2010.08.17.06.45.28;	author uebayasi;	state Exp;
branches;
next	;

1.23.16.1
date	2011.03.05.20.52.24;	author rmind;	state Exp;
branches;
next	;

1.21.40.1
date	2009.01.17.13.28.37;	author mjf;	state Exp;
branches;
next	;

1.21.44.1
date	2009.05.04.08.12.07;	author yamt;	state Exp;
branches;
next	1.21.44.2;

1.21.44.2
date	2010.08.11.22.52.54;	author yamt;	state Exp;
branches;
next	;

1.21.50.1
date	2008.12.13.01.13.38;	author haad;	state Exp;
branches;
next	;

1.20.10.1
date	2007.03.12.05.51.42;	author rmind;	state Exp;
branches;
next	;

1.18.4.1
date	2006.09.09.02.44.35;	author rpaulo;	state Exp;
branches;
next	;

1.18.8.1
date	2006.08.11.15.43.12;	author yamt;	state Exp;
branches;
next	;

1.18.16.1
date	2006.07.13.17.49.05;	author gdamore;	state Exp;
branches;
next	;

1.16.16.1
date	2006.06.21.14.57.55;	author yamt;	state Exp;
branches;
next	1.16.16.2;

1.16.16.2
date	2006.12.30.20.47.21;	author yamt;	state Exp;
branches;
next	1.16.16.3;

1.16.16.3
date	2007.09.03.14.31.14;	author yamt;	state Exp;
branches;
next	;

1.13.2.1
date	2004.08.03.10.42.56;	author skrll;	state Exp;
branches;
next	1.13.2.2;

1.13.2.2
date	2004.09.18.14.42.36;	author skrll;	state Exp;
branches;
next	1.13.2.3;

1.13.2.3
date	2004.09.21.13.24.20;	author skrll;	state Exp;
branches;
next	;

1.10.2.1
date	2001.12.12.12.24.26;	author thorpej;	state dead;
branches;
next	1.10.2.2;

1.10.2.2
date	2002.01.10.19.50.27;	author thorpej;	state Exp;
branches;
next	1.10.2.3;

1.10.2.3
date	2002.06.23.17.43.19;	author jdolecek;	state Exp;
branches;
next	;

1.6.4.1
date	2001.10.15.16.23.01;	author nathanw;	state dead;
branches;
next	1.6.4.2;

1.6.4.2
date	2002.01.08.00.28.45;	author nathanw;	state Exp;
branches;
next	1.6.4.3;

1.6.4.3
date	2002.04.01.07.43.43;	author nathanw;	state Exp;
branches;
next	;


desc
@@


1.39
log
@Add udivdi3/umoddi3 (and ashldi3) that were required by recent UFS change.
This increases xxboot_ufs from about 4.5KB to 5.5KB (The upper limit is 8KB).
Thanks tsutsui@@ for advices.
@
text
@#	$NetBSD: Makefile,v 1.38 2021/12/15 13:22:34 christos Exp $

NOMAN=		# defined

.include <bsd.own.mk>

BOOT=	boot_ufs
VERSIONFILE=	${.CURDIR}/version
VERSION!=	${TOOL_AWK} -F: '$$1 ~ /^[0-9.]*$$/ { it = $$1; } \
			END { print it }' ${VERSIONFILE}
NEWVERSWHAT=	"${BOOT}"

# text and bss addresses
TEXT=		0x003000	# Primary (me)
BOOT_TEXT=	0x006000	# Secondary (/boot)

PROG=		xx$(BOOT)
LINKS=		${BINDIR}/xx$(BOOT) ${BINDIR}/sd$(BOOT)
LINKS+=		${BINDIR}/xx$(BOOT) ${BINDIR}/fd$(BOOT)
BINDIR=		/usr/mdec
STRIPFLAG=
BINMODE=	444

S=		${.CURDIR}/../../../..
M=		$S/arch/${MACHINE}
LIBKERN=	$S/lib/libkern/arch/${MACHINE_ARCH}
COMMONDIR=	$M/stand/common
LIBIOCS=	$M/stand/libiocs
.PATH:		${LIBKERN} ${COMMONDIR}
SRCS=	boot.S bootmain.c readufs.c readufs_ffs.c readufs_lfs.c
SRCS+=	exec_image.S memset.S strcmp.S

.PATH:	${S}/../common/lib/libc/quad
SRCS+=	udivdi3.c umoddi3.c qdivrem.c

.PATH:	${.CURDIR}/../xxboot
SRCS+=	ashldi3.S

.include "${S}/conf/newvers_stand.mk"

CFLAGS=	-Os -fomit-frame-pointer -fno-unwind-tables
CFLAGS+= -m68020-60
CFLAGS+= -Wextra -Wall -Wstrict-prototypes -Wmissing-prototypes
CPPFLAGS+= -DTEXTADDR="$(TEXT)" -DBOOT_TEXTADDR="$(BOOT_TEXT)"
CPPFLAGS+= -DBOOT=\"$(BOOT)\" -DBOOT_VERS=\"$(VERSION)\"
CPPFLAGS+= -DSCSI_ADHOC_BOOTPART
#CPPFLAGS+= -DBOOT_DEBUG
CPPFLAGS+= -DUSE_FFS -DUSE_LFS -DUSE_UFS1 -DUSE_UFS2
CPPFLAGS+= -I${COMMONDIR} -I${LIBIOCS} -I${S} -I. -D_STANDALONE
AFLAGS=	   ${CFLAGS:M-[ID]*}
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript
LINKFLAGS+=  --defsym=TEXTADDR=$(TEXT)
LINKFLAGS+=  --defsym=BOOT_TEXTADDR=$(BOOT_TEXT)

.include "${.CURDIR}/../Makefile.booters"
.include "${S}/../common/lib/libc/Makefile.inc"


$(PROG): $(OBJS)
	${_MKTARGET_LINK}
	$(LD) $(LINKFLAGS) -o $(PROG) $(OBJS) $(LDADD)

.include <bsd.prog.mk>
@


1.38
log
@-W === -Wextra
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.37 2021/12/15 12:52:36 christos Exp $
d33 6
@


1.38.4.1
log
@Pull up following revision(s) (requested by chs in ticket #166):

	sys/arch/x68k/stand/boot_ufs/Makefile: revision 1.39

Add udivdi3/umoddi3 (and ashldi3) that were required by recent UFS change.

This increases xxboot_ufs from about 4.5KB to 5.5KB (The upper limit is 8KB).

Thanks tsutsui@@ for advices.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.38 2021/12/15 13:22:34 christos Exp $
a32 6
.PATH:	${S}/../common/lib/libc/quad
SRCS+=	udivdi3.c umoddi3.c qdivrem.c

.PATH:	${.CURDIR}/../xxboot
SRCS+=	ashldi3.S

@


1.37
log
@remove naked -W
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.36 2020/01/18 07:25:11 isaki Exp $
d37 1
a37 1
CFLAGS+= -Wall -Wstrict-prototypes -Wmissing-prototypes
@


1.36
log
@Check whether the text+data+bss doesn't reach 0x6000 where secondary
bootloader should be.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.35 2020/01/18 06:44:23 isaki Exp $
d37 1
a37 1
CFLAGS+= -W -Wall -Wstrict-prototypes -Wmissing-prototypes
@


1.35
log
@Use ASSERT() in ldscript to check first_kbyte (etc) restrictions,
rather than complicated shell expressions in Makefile.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.34 2020/01/18 06:34:29 isaki Exp $
d47 1
@


1.34
log
@Change primary bootloader's load address from 0x0f0000 to 0x003000.
- Moving addresses closer eliminates bunch of this linker errors:
    in function `entry0':
    relocation truncated to fit: R_68K_16 against `edata'+ffffffffffff8000
    :
- By this change, harmful -noinhibit-exec option can also be removed.
  Finally, we can break the builds when assemble error occurs!
- Load address of secondary is 0x6000, so that this change limits
  text+data+bss 12KB or less.  Current actual size is 5~7KB.
  I think it should be fine.
- cd9660 can have up to 30KB text+data in its bootarea.  Even in this
  case, this change limits text+data+bss 12KB or less (currently, it's
  about 6KB).  However, I take breaking the builds on errors rather than
  future size limitation.
There is no user visible changes or interface changes.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.33 2020/01/18 05:46:26 isaki Exp $
d45 1
a45 1
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
a50 2
CLEANFILES+=	$(PROG).x $(PROG).map

d54 1
a54 13
	:
	: Note:	"relocation truncated to fit: R_68K_16" messages are expected.
	:	Other errors are fatal.
	:
	$(LD) $(LINKFLAGS) -o $(PROG).x $(OBJS) $(LDADD) >$(PROG).map
	@@grep first_kbyte $(PROG).map
	@@if [ `${TOOL_AWK}						   \
	    '/first_kbyte/ {print "eval(eval("$$1")-eval('$(TEXT)'))"}'	   \
	    $(PROG).map | ${TOOL_M4} -` -gt 1024 ];			   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    exit 1;							   \
	fi
	mv -f $(PROG).x $(PROG)
@


1.33
log
@Add 0x prefix when defining variables, not when using it.
This was necessary for bc(1) but it's no longer necessary.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.32 2020/01/18 05:41:48 isaki Exp $
d14 1
a14 1
TEXT=		0x0f0000	# Primary (me)
a46 1
LINKFLAGS+=  -noinhibit-exec	# XXX
@


1.32
log
@Pass address constants from Makefile to ldscript.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.31 2020/01/16 13:15:47 isaki Exp $
d13 3
a15 3
# text and bss addresses in hex
TEXT=		0f0000		# Primary (me)
BOOT_TEXT=	006000		# Secondary (/boot)
d38 1
a38 1
CPPFLAGS+= -DTEXTADDR="0x$(TEXT)" -DBOOT_TEXTADDR="0x$(BOOT_TEXT)"
d46 1
a46 1
LINKFLAGS+=  --defsym=TEXTADDR=0x$(TEXT)
d64 1
a64 1
	    '/first_kbyte/ {print "eval(eval("$$1")-eval(0x'$(TEXT)'))"}'  \
@


1.31
log
@Rewrite limit check using cross-build tools.
This eliminates use of hosts tr(1) and bc(1).
(But I'm going to remove this again soon due to other reason)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.30 2017/04/08 19:53:23 christos Exp $
d46 1
@


1.30
log
@centralize vers.c building for standalone programs.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.29 2013/08/12 16:34:05 joerg Exp $
d62 5
a66 7
	@@if [ `(echo ibase=16;						\
		${TOOL_SED} -n	-e '/[ 	]first_kbyte/{'			\
			-e 's/.*0x\([0-9a-fA-F]*\).*/\1-$(TEXT)-400/p'	\
			-e '}' $(PROG).map |				\
		tr a-f A-F) | bc` -gt 0 ];				\
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	\
		exit 1;							\
@


1.30.14.1
log
@Merge changes from current as of 20200406
@
text
@d1 1
a1 1
#	$NetBSD$
d13 3
a15 3
# text and bss addresses
TEXT=		0x003000	# Primary (me)
BOOT_TEXT=	0x006000	# Secondary (/boot)
d38 1
a38 1
CPPFLAGS+= -DTEXTADDR="$(TEXT)" -DBOOT_TEXTADDR="$(BOOT_TEXT)"
d45 2
a46 3
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript
LINKFLAGS+=  --defsym=TEXTADDR=$(TEXT)
LINKFLAGS+=  --defsym=BOOT_TEXTADDR=$(BOOT_TEXT)
d51 2
d56 15
a70 1
	$(LD) $(LINKFLAGS) -o $(PROG) $(OBJS) $(LDADD)
@


1.30.20.1
log
@Sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.31 2020/01/16 13:15:47 isaki Exp $
d62 7
a68 5
	@@if [ `${TOOL_AWK}						   \
	    '/first_kbyte/ {print "eval(eval("$$1")-eval(0x'$(TEXT)'))"}'  \
	    $(PROG).map | ${TOOL_M4} -` -gt 1024 ];			   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    exit 1;							   \
@


1.30.20.2
log
@Sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.30.20.1 2020/01/17 21:47:28 ad Exp $
d13 3
a15 3
# text and bss addresses
TEXT=		0x003000	# Primary (me)
BOOT_TEXT=	0x006000	# Secondary (/boot)
d38 1
a38 1
CPPFLAGS+= -DTEXTADDR="$(TEXT)" -DBOOT_TEXTADDR="$(BOOT_TEXT)"
d45 2
a46 3
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript
LINKFLAGS+=  --defsym=TEXTADDR=$(TEXT)
LINKFLAGS+=  --defsym=BOOT_TEXTADDR=$(BOOT_TEXT)
d51 2
d56 13
a68 1
	$(LD) $(LINKFLAGS) -o $(PROG) $(OBJS) $(LDADD)
@


1.29
log
@Build boot loaders without unwind tables.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.28 2013/06/15 01:39:56 christos Exp $
d33 1
a33 6
SRCS+=		vers.c
CLEANFILES+=	vers.c
vers.c:	${VERSIONFILE}
	${_MKTARGET_CREATE}
	${HOST_SH} ${S}/conf/newvers_stand.sh \
	    ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}
@


1.29.6.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.30 2017/04/08 19:53:23 christos Exp $
d33 6
a38 1
.include "${S}/conf/newvers_stand.mk"
@


1.29.10.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.30 2017/04/08 19:53:23 christos Exp $
d33 6
a38 1
.include "${S}/conf/newvers_stand.mk"
@


1.29.14.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.30 2017/04/08 19:53:23 christos Exp $
d33 6
a38 1
.include "${S}/conf/newvers_stand.mk"
@


1.28
log
@revert previous
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.27 2013/06/15 01:37:10 christos Exp $
d40 1
a40 1
CFLAGS=	-Os -fomit-frame-pointer
@


1.28.2.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD$
d40 1
a40 1
CFLAGS=	-Os -fomit-frame-pointer -fno-unwind-tables
@


1.27
log
@adjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs splitadjust to the lfs split
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.26 2011/10/11 13:07:06 tsutsui Exp $
d41 1
a41 1
#CFLAGS+= -m68020-60
@


1.26
log
@Fix "Error occurs, please reset" boot problem on
X68030 + 060turbo in 060 mode, found on NetBSD booth
at OSC 2011 Hiroshima:

- use -D__daddr_t=int32_t for all bootloader files
  to avoid 64 bit ops in FFS
- explicitly specify -m68020-60 to avoid 64 bit mulsl/mulul
  instructions which need to be handled by 060SP emulation
  but not available in 060turbo IPL ROM
  (LFS still has uint64_t members even with 32bit daddr_t)

The problem was investigated (at least 1.6.2 bootloaders worked)
by Yasushi Oshima at OSC booth, and fixes have been confirmed
by Y.Sugahara on his 060turbo.  Thanks everyone!

Should also be pulled up to netbsd-5.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.25 2011/01/22 19:19:24 joerg Exp $
d41 1
a41 1
CFLAGS+= -m68020-60
@


1.26.12.1
log
@Rebase to HEAD as of a few days ago.
@
text
@d1 1
a1 1
#	$NetBSD$
d40 1
a40 1
CFLAGS=	-Os -fomit-frame-pointer -fno-unwind-tables
@


1.26.12.2
log
@update from HEAD
@
text
@d33 6
a38 1
.include "${S}/conf/newvers_stand.mk"
@


1.26.2.1
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.26 2011/10/11 13:07:06 tsutsui Exp $
d40 1
a40 1
CFLAGS=	-Os -fomit-frame-pointer -fno-unwind-tables
@


1.25
log
@Drop bootprog_maker (formerly enabled by -M) and bootprog_date (formerly
disabled by -D) from the output of newvers_stand.sh.  Change -D to the
inverted logic, so that it adds the date to bootprog_rev in ().

Change all platforms accordingly. -D is added if MKREPRO is not yes and
wasn't present before. Platforms that didn't use -D don't depend on
MKREPRO now either.
@
text
@d1 1
a1 1
#	$NetBSD: src/sys/arch/x68k/stand/boot_ufs/Makefile,v 1.24 2010-07-06 06:00:02 mrg Exp $
d41 1
d47 1
a47 1
CPPFLAGS+= -DUSE_FFS -DUSE_LFS -DUSE_UFS1 -DUSE_UFS2 -D__daddr_t=int32_t
@


1.24
log
@remove almost all the ability to build netbsd with an a.out target.
we're ELF now, and there are many missing checks against OBJECT_FMT.
if we ever consider switching, the we can figure out what new ones
we need but for now it's just clutter.

this doesn't remove any of the support for exec_aout or any actually
required-for-boot a.out support, only the ability to build a netbsd
release in a.out format.  ie, most of this code has been dead for
over a decade.

i've tested builds on vax, amd64, i386, mac68k, macppc, sparc, atari,
amiga, shark, cats, dreamcast, landisk, mmeye and x68k.  this covers
the 5 MACHINE_ARCH's affected, and all the other arch code touched.
it also includes some actual run-time testing of sparc, i386 and
shark, and i performed binary comparison upon amiga and x68k as well.


some minor details relevant:
- move shlib.[ch] from ld.aout_so into ldconfig proper, and cut them
  down to only the parts ldconfig needs
- remove various unused source files
- switch amiga bootblocks to using elf2bb.h instead of aout2bb.h
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.23 2008/10/25 22:27:38 apb Exp $
d37 2
a38 1
	${HOST_SH} ${S}/conf/newvers_stand.sh -DM ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}
@


1.24.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.25 2011/01/22 19:19:24 joerg Exp $
d37 1
a37 2
	${HOST_SH} ${S}/conf/newvers_stand.sh \
	    ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}
@


1.24.4.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.25 2011/01/22 19:19:24 joerg Exp $
d37 1
a37 2
	${HOST_SH} ${S}/conf/newvers_stand.sh \
	    ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}
@


1.23
log
@Use ${TOOL_SED} instead if plain sed in Makefiles.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.22 2008/10/19 22:05:22 apb Exp $
a47 1
.if ${OBJECT_FMT} == "ELF"
a49 4
.else
LINKFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
OBJCOPY?=  objcopy
.endif
a58 1
.if ${OBJECT_FMT} == "ELF"
a62 1
.endif
a72 1
.if ${OBJECT_FMT} == "ELF"
a73 3
.else
	$(OBJCOPY) -O binary $(PROG).x $(PROG)
.endif
@


1.23.4.1
log
@Pull up following revision(s) (requested by tsutsui in ticket #1731):
	sys/arch/x68k/stand/boot_ufs/Makefile: revision 1.26 via patch
	sys/arch/x68k/stand/boot/version: revision 1.4 via patch
	sys/arch/x68k/stand/libsa/Makefile: revision 1.27 via patch
	sys/arch/x68k/stand/Makefile.booters: revision 1.7 via patch
	sys/arch/x68k/stand/boot_ustar/Makefile: revision 1.19 via patch
Fix "Error occurs, please reset" boot problem on
X68030 + 060turbo in 060 mode, found on NetBSD booth
at OSC 2011 Hiroshima:
- use -D__daddr_t=int32_t for all bootloader files
  to avoid 64 bit ops in FFS
- explicitly specify -m68020-60 to avoid 64 bit mulsl/mulul
  instructions which need to be handled by 060SP emulation
  but not available in 060turbo IPL ROM
  (LFS still has uint64_t members even with 32bit daddr_t)
The problem was investigated (at least 1.6.2 bootloaders worked)
by Yasushi Oshima at OSC booth, and fixes have been confirmed
by Y.Sugahara on his 060turbo.  Thanks everyone!
Should also be pulled up to netbsd-5.
Bump version to denote 060turbo boot fix.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.23 2008/10/25 22:27:38 apb Exp $
a39 1
CFLAGS+= -m68020-60
d45 1
a45 1
CPPFLAGS+= -DUSE_FFS -DUSE_LFS -DUSE_UFS1 -DUSE_UFS2
@


1.23.16.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD$
d37 1
a37 2
	${HOST_SH} ${S}/conf/newvers_stand.sh \
	    ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}
d48 1
d51 4
d64 1
d69 1
d80 1
d82 3
@


1.23.14.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD$
d48 1
d51 4
d64 1
d69 1
d80 1
d82 3
@


1.22
log
@Use ${TOOL_AWK} instead of ${AWK} or plain "awk" in make commands.
Pass AWK=${TOOL_AWK:Q} to shell scripts that use awk.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.21 2007/03/03 07:10:30 isaki Exp $
d73 1
a73 1
		sed -n	-e '/[ 	]first_kbyte/{'				\
@


1.21
log
@-Wconversion is too strict.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.20 2006/06/29 03:46:43 lukem Exp $
d9 2
a10 1
VERSION!=	awk -F: '$$1 ~ /^[0-9.]*$$/ { it = $$1; } END { print it }' ${VERSIONFILE}
@


1.21.44.1
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.21 2007/03/03 07:10:30 isaki Exp $
d9 1
a9 2
VERSION!=	${TOOL_AWK} -F: '$$1 ~ /^[0-9.]*$$/ { it = $$1; } \
			END { print it }' ${VERSIONFILE}
d72 1
a72 1
		${TOOL_SED} -n	-e '/[ 	]first_kbyte/{'			\
@


1.21.44.2
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.21.44.1 2009/05/04 08:12:07 yamt Exp $
d48 1
d51 4
d64 1
d69 1
d80 1
d82 3
@


1.21.40.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD$
d9 1
a9 2
VERSION!=	${TOOL_AWK} -F: '$$1 ~ /^[0-9.]*$$/ { it = $$1; } \
			END { print it }' ${VERSIONFILE}
d72 1
a72 1
		${TOOL_SED} -n	-e '/[ 	]first_kbyte/{'			\
@


1.21.50.1
log
@Update haad-dm branch to haad-dm-base2.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.23 2008/10/25 22:27:38 apb Exp $
d9 1
a9 2
VERSION!=	${TOOL_AWK} -F: '$$1 ~ /^[0-9.]*$$/ { it = $$1; } \
			END { print it }' ${VERSIONFILE}
d72 1
a72 1
		${TOOL_SED} -n	-e '/[ 	]first_kbyte/{'			\
@


1.20
log
@Support MAKEVERBOSE
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.19 2006/06/29 03:38:24 lukem Exp $
d39 1
a39 1
CFLAGS+= -W -Wall -Wconversion -Wstrict-prototypes -Wmissing-prototypes
@


1.20.10.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.20 2006/06/29 03:46:43 lukem Exp $
d39 1
a39 1
CFLAGS+= -W -Wall -Wstrict-prototypes -Wmissing-prototypes
@


1.19
log
@Rename LDFLAGS to LINKFLAGS, as the former is for CC not LD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.18 2005/12/27 23:20:50 he Exp $
d35 1
d62 1
@


1.18
log
@Make this build again by using ${S}/../common/lib/libc/Makefile.inc,
after the libc/libkern consolidation.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.17 2005/12/11 12:19:44 christos Exp $
d47 2
a48 2
LDFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
LDFLAGS+=  -noinhibit-exec	# XXX
d50 1
a50 1
LDFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
d67 1
a67 1
	$(LD) $(LDFLAGS) -o $(PROG).x $(OBJS) $(LDADD) >$(PROG).map
@


1.18.4.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.20 2006/06/29 03:46:43 lukem Exp $
a34 1
	${_MKTARGET_CREATE}
d47 2
a48 2
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
LINKFLAGS+=  -noinhibit-exec	# XXX
d50 1
a50 1
LINKFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
a60 1
	${_MKTARGET_LINK}
d67 1
a67 1
	$(LD) $(LINKFLAGS) -o $(PROG).x $(OBJS) $(LDADD) >$(PROG).map
@


1.18.8.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.18 2005/12/27 23:20:50 he Exp $
a34 1
	${_MKTARGET_CREATE}
d47 2
a48 2
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
LINKFLAGS+=  -noinhibit-exec	# XXX
d50 1
a50 1
LINKFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
a60 1
	${_MKTARGET_LINK}
d67 1
a67 1
	$(LD) $(LINKFLAGS) -o $(PROG).x $(OBJS) $(LDADD) >$(PROG).map
@


1.18.16.1
log
@Merge from HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.20 2006/06/29 03:46:43 lukem Exp $
a34 1
	${_MKTARGET_CREATE}
d47 2
a48 2
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
LINKFLAGS+=  -noinhibit-exec	# XXX
d50 1
a50 1
LINKFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
a60 1
	${_MKTARGET_LINK}
d67 1
a67 1
	$(LD) $(LINKFLAGS) -o $(PROG).x $(OBJS) $(LDADD) >$(PROG).map
@


1.17
log
@merge ktrace-lwp.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.13.2.3 2004/09/21 13:24:20 skrll Exp $
d55 1
@


1.16
log
@Add notice on "relocation truncated to fit: R_68K_16" errors of ld.
Cleanup consistency check.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.15 2003/10/30 22:23:51 he Exp $
@


1.16.16.1
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.16 2004/03/21 16:25:56 itohy Exp $
a54 1
.include "${S}/../common/lib/libc/Makefile.inc"
@


1.16.16.2
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.16.16.1 2006/06/21 14:57:55 yamt Exp $
a34 1
	${_MKTARGET_CREATE}
d47 2
a48 2
LINKFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
LINKFLAGS+=  -noinhibit-exec	# XXX
d50 1
a50 1
LINKFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
a60 1
	${_MKTARGET_LINK}
d67 1
a67 1
	$(LD) $(LINKFLAGS) -o $(PROG).x $(OBJS) $(LDADD) >$(PROG).map
@


1.16.16.3
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.16.16.2 2006/12/30 20:47:21 yamt Exp $
d39 1
a39 1
CFLAGS+= -W -Wall -Wstrict-prototypes -Wmissing-prototypes
@


1.15
log
@Add -I${S} for <lib/libsa/stand.h> inclusion, and add
include of ../Makefile.booters for -ffreestanding.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.14 2003/10/26 07:25:37 lukem Exp $
d44 1
a44 1
CPPFLAGS+= -I${COMMONDIR} -I${LIBIOCS} -I${S}
d60 7
a66 1
	$(LD) $(LDFLAGS) -o $(PROG) $(OBJS) $(LDADD) > $(PROG).map
d68 8
d77 1
a77 7
	@@if [ `(echo ibase=16; 						   \
	    sed -n 's/^.*0x\([0-9a-f]*\).* first_kbyte$$/\1-$(TEXT)-400/p' \
		$(PROG).map | 						   \
	    tr a-f A-F) | bc` -gt 0 ]; 					   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    rm $(PROG) ; exit 1; 					   \
	fi
d79 1
a79 10
	mv $(PROG) $(PROG).x
	$(OBJCOPY) -I a.out-m68k-netbsd -O binary $(PROG).x $(PROG)
	@@rm -f $(PROG).x
	@@if [ `(echo ibase=16; 						   \
	    sed -n 's/  first_kbyte:.*0x\(.*\),.*$$/\1-$(TEXT)-400/p'	   \
		$(PROG).map | 						   \
	    tr a-f A-F) | bc` -gt 0 ]; 					   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    rm $(PROG) ; exit 1; 					   \
	fi
@


1.14
log
@Use ${HOST_SH} instead of `sh'.

If necessary, pull in <bsd.sys.mk> to get the definition of HOST_SH;
Makefiles that pull in one of (most of) <bsd.*.mk> will get this anyway.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.13 2003/04/09 12:57:13 itohy Exp $
d44 1
a44 1
CPPFLAGS+= -I${COMMONDIR} -I${LIBIOCS}
d53 2
@


1.13
log
@Support UFS2 format for FFS.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.12 2003/02/02 07:10:54 isaki Exp $
d35 1
a35 1
	sh ${S}/conf/newvers_stand.sh -DM ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}
@


1.13.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.16 2004/03/21 16:25:56 itohy Exp $
d35 1
a35 1
	${HOST_SH} ${S}/conf/newvers_stand.sh -DM ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}
d44 1
a44 1
CPPFLAGS+= -I${COMMONDIR} -I${LIBIOCS} -I${S} -I. -D_STANDALONE
a53 2
.include "${.CURDIR}/../Makefile.booters"

d58 2
d61 6
a66 14
	:
	: Note:	"relocation truncated to fit: R_68K_16" messages are expected.
	:	Other errors are fatal.
	:
.endif
	$(LD) $(LDFLAGS) -o $(PROG).x $(OBJS) $(LDADD) >$(PROG).map
	@@grep first_kbyte $(PROG).map
	@@if [ `(echo ibase=16;						\
		sed -n	-e '/[ 	]first_kbyte/{'				\
			-e 's/.*0x\([0-9a-fA-F]*\).*/\1-$(TEXT)-400/p'	\
			-e '}' $(PROG).map |				\
		tr a-f A-F) | bc` -gt 0 ];				\
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	\
		exit 1;							\
a67 2
.if ${OBJECT_FMT} == "ELF"
	mv -f $(PROG).x $(PROG)
d69 10
a78 1
	$(OBJCOPY) -O binary $(PROG).x $(PROG)
@


1.13.2.2
log
@Sync with HEAD.
@
text
@@


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


1.12
log
@Use 32bit daddr_t.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.11 2002/03/17 16:14:30 minoura Exp $
d43 1
a43 1
CPPFLAGS+= -DUSE_FFS -DUSE_LFS -D__daddr_t=int32_t
@


1.11
log
@LFSv2 support.
Note that secondary boot does not support LFSv2.
Code written by itohy.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.10 2001/12/12 12:24:26 lukem Exp $
d43 1
a43 1
CPPFLAGS+= -DUSE_FFS -DUSE_LFS
@


1.10
log
@Set  NOxxx=  before  <bsd.own.mk>  is pulled in (even indirectly).
Otherwise the appropriate MKxxx=no won't be defined .
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.9 2001/12/12 01:49:58 tv Exp $
d29 1
a29 1
SRCS=	boot.S bootmain.c readufs.c readufs_ffs.c #readufs_lfs.c
d43 1
a43 1
CPPFLAGS+= -DUSE_FFS #-DUSE_LFS
@


1.10.2.1
log
@file Makefile was added on branch kqueue on 2002-01-10 19:50:27 +0000
@
text
@d1 81
@


1.10.2.2
log
@Sync kqueue branch with -current.
@
text
@a0 81
#	$NetBSD: Makefile,v 1.10.2.1 2002/01/10 19:50:27 thorpej Exp $

NOMAN=		# defined

.include <bsd.own.mk>

BOOT=	boot_ufs
VERSIONFILE=	${.CURDIR}/version
VERSION!=	awk -F: '$$1 ~ /^[0-9.]*$$/ { it = $$1; } END { print it }' ${VERSIONFILE}
NEWVERSWHAT=	"${BOOT}"

# text and bss addresses in hex
TEXT=		0f0000		# Primary (me)
BOOT_TEXT=	006000		# Secondary (/boot)

PROG=		xx$(BOOT)
LINKS=		${BINDIR}/xx$(BOOT) ${BINDIR}/sd$(BOOT)
LINKS+=		${BINDIR}/xx$(BOOT) ${BINDIR}/fd$(BOOT)
BINDIR=		/usr/mdec
STRIPFLAG=
BINMODE=	444

S=		${.CURDIR}/../../../..
M=		$S/arch/${MACHINE}
LIBKERN=	$S/lib/libkern/arch/${MACHINE_ARCH}
COMMONDIR=	$M/stand/common
LIBIOCS=	$M/stand/libiocs
.PATH:		${LIBKERN} ${COMMONDIR}
SRCS=	boot.S bootmain.c readufs.c readufs_ffs.c #readufs_lfs.c
SRCS+=	exec_image.S memset.S strcmp.S

SRCS+=		vers.c
CLEANFILES+=	vers.c
vers.c:	${VERSIONFILE}
	sh ${S}/conf/newvers_stand.sh -DM ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}

CFLAGS=	-Os -fomit-frame-pointer
CFLAGS+= -W -Wall -Wconversion -Wstrict-prototypes -Wmissing-prototypes
CPPFLAGS+= -DTEXTADDR="0x$(TEXT)" -DBOOT_TEXTADDR="0x$(BOOT_TEXT)"
CPPFLAGS+= -DBOOT=\"$(BOOT)\" -DBOOT_VERS=\"$(VERSION)\"
CPPFLAGS+= -DSCSI_ADHOC_BOOTPART
#CPPFLAGS+= -DBOOT_DEBUG
CPPFLAGS+= -DUSE_FFS #-DUSE_LFS
CPPFLAGS+= -I${COMMONDIR} -I${LIBIOCS}
AFLAGS=	   ${CFLAGS:M-[ID]*}
.if ${OBJECT_FMT} == "ELF"
LDFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
LDFLAGS+=  -noinhibit-exec	# XXX
.else
LDFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
OBJCOPY?=  objcopy
.endif

CLEANFILES+=	$(PROG).x $(PROG).map


$(PROG): $(OBJS)
	$(LD) $(LDFLAGS) -o $(PROG) $(OBJS) $(LDADD) > $(PROG).map
	@@grep first_kbyte $(PROG).map
.if ${OBJECT_FMT} == "ELF"
	@@if [ `(echo ibase=16; 						   \
	    sed -n 's/^.*0x\([0-9a-f]*\).* first_kbyte$$/\1-$(TEXT)-400/p' \
		$(PROG).map | 						   \
	    tr a-f A-F) | bc` -gt 0 ]; 					   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    rm $(PROG) ; exit 1; 					   \
	fi
.else
	mv $(PROG) $(PROG).x
	$(OBJCOPY) -I a.out-m68k-netbsd -O binary $(PROG).x $(PROG)
	@@rm -f $(PROG).x
	@@if [ `(echo ibase=16; 						   \
	    sed -n 's/  first_kbyte:.*0x\(.*\),.*$$/\1-$(TEXT)-400/p'	   \
		$(PROG).map | 						   \
	    tr a-f A-F) | bc` -gt 0 ]; 					   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    rm $(PROG) ; exit 1; 					   \
	fi
.endif

.include <bsd.prog.mk>
@


1.10.2.3
log
@catch up with -current on kqueue branch
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.10.2.2 2002/06/23 17:43:19 jdolecek Exp $
d29 1
a29 1
SRCS=	boot.S bootmain.c readufs.c readufs_ffs.c readufs_lfs.c
d43 1
a43 1
CPPFLAGS+= -DUSE_FFS -DUSE_LFS
@


1.9
log
@MKfoo=no -> NOfoo
@
text
@d1 3
a3 1
#	$NetBSD: Makefile,v 1.8 2001/12/05 02:07:09 minoura Exp $
a21 1
NOMAN=		# defined
@


1.8
log
@Correct LINKS to install sdboot_ufs properly.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.7 2001/11/24 16:18:44 minoura Exp $
d20 1
a20 1
MKMAN=		no
@


1.7
log
@Emit the binaries directly from the loader.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.6 2001/10/15 16:23:01 minoura Exp $
d16 1
a16 1
LINKS=		${BINDIR}/xx$(BOOT) ${BINDIR}/fd$(BOOT)
@


1.6
log
@Use newvers_stand.sh to record the version.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.5 2001/10/01 17:03:38 minoura Exp $
a21 2
OBJCOPY?=	objcopy

d46 1
a46 1
LDFLAGS=   -N -Bstatic -T ${.CURDIR}/${BOOT}.ldscript
d49 2
a50 1
LDFLAGS=   -n -Bstatic -Ttext ${TEXT}
d53 1
a53 1
CLEANFILES=	$(PROG).x s.x x.s x.o
d57 22
a78 14
	$(LD) $(LDFLAGS) -o $(PROG).x $(OBJS) $(LDADD)
	@@$(NM) --target=a.out-m68k-netbsd $(PROG).x | sed -n '/T first_kbyte/p'
	@@if [ `(echo ibase=16; \
		$(NM) --target=a.out-m68k-netbsd $(PROG).x | sed -n 's/T first_kbyte/-$(TEXT)-400/p' | \
				tr a-f A-F) | bc` -gt 0 ];\
	then echo '$(PROG): first_kbyte exceeds the first killobyte'; exit 1; fi
	@@$(SIZE) --target=a.out-m68k-netbsd $(PROG).x
	@@if [ `(echo ibase=16; \
		$(NM) --target=a.out-m68k-netbsd $(PROG).x | sed -n 's/D _edata/-$(TEXT)-2000/p' | tr a-f A-F) |\
			bc` -gt 0 ];\
	then	echo '$(PROG): text+data is too large'; exit 1; fi
	@@cp $(PROG).x s.x
	@@$(OBJCOPY) -I a.out-m68k-netbsd -O binary s.x $(PROG)
	@@rm s.x
@


1.6.4.1
log
@file Makefile was added on branch nathanw_sa on 2002-01-08 00:28:45 +0000
@
text
@d1 73
@


1.6.4.2
log
@Catch up to -current.
@
text
@a0 81
#	$NetBSD: Makefile,v 1.6.4.1 2002/01/08 00:28:45 nathanw Exp $

NOMAN=		# defined

.include <bsd.own.mk>

BOOT=	boot_ufs
VERSIONFILE=	${.CURDIR}/version
VERSION!=	awk -F: '$$1 ~ /^[0-9.]*$$/ { it = $$1; } END { print it }' ${VERSIONFILE}
NEWVERSWHAT=	"${BOOT}"

# text and bss addresses in hex
TEXT=		0f0000		# Primary (me)
BOOT_TEXT=	006000		# Secondary (/boot)

PROG=		xx$(BOOT)
LINKS=		${BINDIR}/xx$(BOOT) ${BINDIR}/sd$(BOOT)
LINKS+=		${BINDIR}/xx$(BOOT) ${BINDIR}/fd$(BOOT)
BINDIR=		/usr/mdec
STRIPFLAG=
BINMODE=	444

S=		${.CURDIR}/../../../..
M=		$S/arch/${MACHINE}
LIBKERN=	$S/lib/libkern/arch/${MACHINE_ARCH}
COMMONDIR=	$M/stand/common
LIBIOCS=	$M/stand/libiocs
.PATH:		${LIBKERN} ${COMMONDIR}
SRCS=	boot.S bootmain.c readufs.c readufs_ffs.c #readufs_lfs.c
SRCS+=	exec_image.S memset.S strcmp.S

SRCS+=		vers.c
CLEANFILES+=	vers.c
vers.c:	${VERSIONFILE}
	sh ${S}/conf/newvers_stand.sh -DM ${.ALLSRC} ${MACHINE} ${NEWVERSWHAT}

CFLAGS=	-Os -fomit-frame-pointer
CFLAGS+= -W -Wall -Wconversion -Wstrict-prototypes -Wmissing-prototypes
CPPFLAGS+= -DTEXTADDR="0x$(TEXT)" -DBOOT_TEXTADDR="0x$(BOOT_TEXT)"
CPPFLAGS+= -DBOOT=\"$(BOOT)\" -DBOOT_VERS=\"$(VERSION)\"
CPPFLAGS+= -DSCSI_ADHOC_BOOTPART
#CPPFLAGS+= -DBOOT_DEBUG
CPPFLAGS+= -DUSE_FFS #-DUSE_LFS
CPPFLAGS+= -I${COMMONDIR} -I${LIBIOCS}
AFLAGS=	   ${CFLAGS:M-[ID]*}
.if ${OBJECT_FMT} == "ELF"
LDFLAGS=   -n -Bstatic -T ${.CURDIR}/${BOOT}.ldscript -M
LDFLAGS+=  -noinhibit-exec	# XXX
.else
LDFLAGS=   -n -Bstatic -Ttext ${TEXT} -M
OBJCOPY?=  objcopy
.endif

CLEANFILES+=	$(PROG).x $(PROG).map


$(PROG): $(OBJS)
	$(LD) $(LDFLAGS) -o $(PROG) $(OBJS) $(LDADD) > $(PROG).map
	@@grep first_kbyte $(PROG).map
.if ${OBJECT_FMT} == "ELF"
	@@if [ `(echo ibase=16; 						   \
	    sed -n 's/^.*0x\([0-9a-f]*\).* first_kbyte$$/\1-$(TEXT)-400/p' \
		$(PROG).map | 						   \
	    tr a-f A-F) | bc` -gt 0 ]; 					   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    rm $(PROG) ; exit 1; 					   \
	fi
.else
	mv $(PROG) $(PROG).x
	$(OBJCOPY) -I a.out-m68k-netbsd -O binary $(PROG).x $(PROG)
	@@rm -f $(PROG).x
	@@if [ `(echo ibase=16; 						   \
	    sed -n 's/  first_kbyte:.*0x\(.*\),.*$$/\1-$(TEXT)-400/p'	   \
		$(PROG).map | 						   \
	    tr a-f A-F) | bc` -gt 0 ]; 					   \
	then echo '$(BOOT): first_kbyte exceeds the first killobyte';	   \
	    rm $(PROG) ; exit 1; 					   \
	fi
.endif

.include <bsd.prog.mk>
@


1.6.4.3
log
@Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.6.4.2 2002/04/01 07:43:43 nathanw Exp $
d29 1
a29 1
SRCS=	boot.S bootmain.c readufs.c readufs_ffs.c readufs_lfs.c
d43 1
a43 1
CPPFLAGS+= -DUSE_FFS -DUSE_LFS
@


1.5
log
@Install as xxboot_*, and create links as fdboot_* and sdboot_*.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.4 2001/09/28 01:49:54 minoura Exp $
d6 3
a8 1
VERSION=1.0
d24 5
a28 3
LIBKERN=	${.CURDIR}/../../../../lib/libkern/arch/${MACHINE_ARCH}
COMMONDIR=	${.CURDIR}/../common
LIBIOCS=	${.CURDIR}/../libiocs
d32 5
@


1.4
log
@Install as `boot_ufs'.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.3 2001/09/27 14:08:27 minoura Exp $
d12 3
a14 1
PROG=		$(BOOT)
d45 1
a45 1
CLEANFILES=	$(BOOT).x s.x x.s x.o
d48 3
a50 3
$(BOOT): $(OBJS)
	$(LD) $(LDFLAGS) -o $(BOOT).x $(OBJS) $(LDADD)
	@@$(NM) --target=a.out-m68k-netbsd $(BOOT).x | sed -n '/T first_kbyte/p'
d52 1
a52 1
		$(NM) --target=a.out-m68k-netbsd $(BOOT).x | sed -n 's/T first_kbyte/-$(TEXT)-400/p' | \
d54 2
a55 2
	then echo '$(BOOT): first_kbyte exceeds the first killobyte'; exit 1; fi
	@@$(SIZE) --target=a.out-m68k-netbsd $(BOOT).x
d57 1
a57 1
		$(NM) --target=a.out-m68k-netbsd $(BOOT).x | sed -n 's/D _edata/-$(TEXT)-2000/p' | tr a-f A-F) |\
d59 3
a61 3
	then	echo '$(BOOT): text+data is too large'; exit 1; fi
	@@cp $(BOOT).x s.x
	@@$(OBJCOPY) -I a.out-m68k-netbsd -O binary s.x $(BOOT)
@


1.3
log
@Make these compile with the old (a.out) toolchain.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile,v 1.2 2001/09/27 13:27:54 minoura Exp $
a13 1
PROGNAME=	sdboot
@


1.2
log
@Add some missing definitions.
@
text
@d1 3
a3 1
#	$NetBSD: Makefile,v 1.1 2001/09/27 10:14:49 minoura Exp $
d37 1
d40 3
@


1.1
log
@Initial commit of the new bootloader to support ELF kernel.
It consists of two programs named boot_ufs and boot; the former reads
the latter (an OMAGIC a.out).
Boot now utilizes the libsa library to read the actual kernel.

 - LFS code exists, but probobly does not work.
 - Currently the ELF toolchain is required.
 - Many features are missing.
@
text
@d1 1
a1 1
#	$NetBSD$
d21 1
d33 1
a33 1
CPPFLAGS+= -I${COMMONDIR}
@
