head	1.50;
access;
symbols
	netbsd-11-0-RC4:1.50
	netbsd-11-0-RC3:1.50
	netbsd-11-0-RC2:1.50
	netbsd-11-0-RC1:1.50
	perseant-exfatfs-base-20250801:1.50
	netbsd-11:1.50.0.28
	netbsd-11-base:1.50
	netbsd-10-1-RELEASE:1.50
	perseant-exfatfs-base-20240630:1.50
	perseant-exfatfs:1.50.0.26
	perseant-exfatfs-base:1.50
	netbsd-8-3-RELEASE:1.41.6.1
	netbsd-9-4-RELEASE:1.48
	netbsd-10-0-RELEASE:1.50
	netbsd-10-0-RC6:1.50
	netbsd-10-0-RC5:1.50
	netbsd-10-0-RC4:1.50
	netbsd-10-0-RC3:1.50
	netbsd-10-0-RC2:1.50
	thorpej-ifq:1.50.0.24
	thorpej-ifq-base:1.50
	thorpej-altq-separation:1.50.0.22
	thorpej-altq-separation-base:1.50
	netbsd-10-0-RC1:1.50
	netbsd-10:1.50.0.20
	netbsd-10-base:1.50
	bouyer-sunxi-drm:1.50.0.18
	bouyer-sunxi-drm-base:1.50
	netbsd-9-3-RELEASE:1.48
	thorpej-i2c-spi-conf2:1.50.0.16
	thorpej-i2c-spi-conf2-base:1.50
	thorpej-futex2:1.50.0.14
	thorpej-futex2-base:1.50
	thorpej-cfargs2:1.50.0.12
	thorpej-cfargs2-base:1.50
	cjep_sun2x-base1:1.50
	cjep_sun2x:1.50.0.10
	cjep_sun2x-base:1.50
	cjep_staticlib_x-base1:1.50
	netbsd-9-2-RELEASE:1.48
	cjep_staticlib_x:1.50.0.8
	cjep_staticlib_x-base:1.50
	thorpej-i2c-spi-conf:1.50.0.6
	thorpej-i2c-spi-conf-base:1.50
	thorpej-cfargs:1.50.0.4
	thorpej-cfargs-base:1.50
	thorpej-futex:1.50.0.2
	thorpej-futex-base:1.50
	netbsd-9-1-RELEASE:1.48
	bouyer-xenpvh-base2:1.48
	phil-wifi-20200421:1.48
	bouyer-xenpvh-base1:1.48
	phil-wifi-20200411:1.48
	bouyer-xenpvh:1.48.0.10
	bouyer-xenpvh-base:1.48
	is-mlppp:1.48.0.8
	is-mlppp-base:1.48
	phil-wifi-20200406:1.48
	netbsd-8-2-RELEASE:1.41.6.1
	ad-namecache-base3:1.48
	netbsd-9-0-RELEASE:1.48
	netbsd-9-0-RC2:1.48
	ad-namecache-base2:1.48
	ad-namecache-base1:1.48
	ad-namecache:1.48.0.6
	ad-namecache-base:1.48
	netbsd-9-0-RC1:1.48
	phil-wifi-20191119:1.48
	netbsd-9:1.48.0.4
	netbsd-9-base:1.48
	phil-wifi-20190609:1.48
	netbsd-8-1-RELEASE:1.41.6.1
	netbsd-8-1-RC1:1.41.6.1
	isaki-audio2:1.48.0.2
	isaki-audio2-base:1.48
	pgoyette-compat-merge-20190127:1.45.2.2
	pgoyette-compat-20190127:1.47
	pgoyette-compat-20190118:1.47
	pgoyette-compat-1226:1.47
	pgoyette-compat-1126:1.47
	pgoyette-compat-1020:1.47
	pgoyette-compat-0930:1.47
	pgoyette-compat-0906:1.46
	netbsd-7-2-RELEASE:1.37
	pgoyette-compat-0728:1.46
	netbsd-8-0-RELEASE:1.41.6.1
	phil-wifi:1.46.0.2
	phil-wifi-base:1.46
	pgoyette-compat-0625:1.46
	netbsd-8-0-RC2:1.41.6.1
	pgoyette-compat-0521:1.45
	pgoyette-compat-0502:1.45
	pgoyette-compat-0422:1.45
	netbsd-8-0-RC1:1.41.6.1
	pgoyette-compat-0415:1.45
	pgoyette-compat-0407:1.45
	pgoyette-compat-0330:1.45
	pgoyette-compat-0322:1.45
	pgoyette-compat-0315:1.45
	netbsd-7-1-2-RELEASE:1.37
	pgoyette-compat:1.45.0.2
	pgoyette-compat-base:1.45
	netbsd-7-1-1-RELEASE:1.37
	tls-maxphys-base-20171202:1.42
	matt-nb8-mediatek:1.41.0.10
	matt-nb8-mediatek-base:1.41
	nick-nhusb-base-20170825:1.42
	perseant-stdc-iso10646:1.41.0.8
	perseant-stdc-iso10646-base:1.41
	netbsd-8:1.41.0.6
	netbsd-8-base:1.41
	prg-localcount2-base3:1.41
	prg-localcount2-base2:1.41
	prg-localcount2-base1:1.41
	prg-localcount2:1.41.0.4
	prg-localcount2-base:1.41
	pgoyette-localcount-20170426:1.41
	bouyer-socketcan-base1:1.41
	jdolecek-ncq:1.41.0.2
	jdolecek-ncq-base:1.41
	pgoyette-localcount-20170320:1.41
	netbsd-7-1:1.37.0.8
	netbsd-7-1-RELEASE:1.37
	netbsd-7-1-RC2:1.37
	nick-nhusb-base-20170204:1.41
	netbsd-7-nhusb-base-20170116:1.37
	bouyer-socketcan:1.40.0.4
	bouyer-socketcan-base:1.40
	pgoyette-localcount-20170107:1.40
	netbsd-7-1-RC1:1.37
	nick-nhusb-base-20161204:1.40
	pgoyette-localcount-20161104:1.40
	netbsd-7-0-2-RELEASE:1.37
	nick-nhusb-base-20161004:1.40
	localcount-20160914:1.40
	netbsd-7-nhusb:1.37.0.6
	netbsd-7-nhusb-base:1.37
	pgoyette-localcount-20160806:1.40
	pgoyette-localcount-20160726:1.40
	pgoyette-localcount:1.40.0.2
	pgoyette-localcount-base:1.40
	nick-nhusb-base-20160907:1.40
	nick-nhusb-base-20160529:1.40
	netbsd-7-0-1-RELEASE:1.37
	nick-nhusb-base-20160422:1.40
	nick-nhusb-base-20160319:1.40
	nick-nhusb-base-20151226:1.40
	netbsd-7-0:1.37.0.4
	netbsd-7-0-RELEASE:1.37
	nick-nhusb-base-20150921:1.40
	netbsd-7-0-RC3:1.37
	netbsd-7-0-RC2:1.37
	netbsd-7-0-RC1:1.37
	nick-nhusb-base-20150606:1.38
	nick-nhusb-base-20150406:1.38
	nick-nhusb:1.38.0.2
	nick-nhusb-base:1.38
	netbsd-5-2-3-RELEASE:1.27.2.1
	netbsd-5-1-5-RELEASE:1.27.2.1
	netbsd-6-0-6-RELEASE:1.35
	netbsd-6-1-5-RELEASE:1.35
	netbsd-7:1.37.0.2
	netbsd-7-base:1.37
	yamt-pagecache-base9:1.35
	yamt-pagecache-tag8:1.34.2.1
	netbsd-6-1-4-RELEASE:1.35
	netbsd-6-0-5-RELEASE:1.35
	tls-earlyentropy:1.35.0.20
	tls-earlyentropy-base:1.37
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.35
	riastradh-drm2-base3:1.35
	netbsd-6-1-3-RELEASE:1.35
	netbsd-6-0-4-RELEASE:1.35
	netbsd-5-2-2-RELEASE:1.27.2.1
	netbsd-5-1-4-RELEASE:1.27.2.1
	netbsd-6-1-2-RELEASE:1.35
	netbsd-6-0-3-RELEASE:1.35
	netbsd-5-2-1-RELEASE:1.27.2.1
	netbsd-5-1-3-RELEASE:1.27.2.1
	rmind-smpnet-nbase:1.35
	netbsd-6-1-1-RELEASE:1.35
	riastradh-drm2-base2:1.35
	riastradh-drm2-base1:1.35
	riastradh-drm2:1.35.0.18
	riastradh-drm2-base:1.35
	rmind-smpnet:1.35.0.10
	rmind-smpnet-base:1.35
	netbsd-6-1:1.35.0.16
	netbsd-6-0-2-RELEASE:1.35
	netbsd-6-1-RELEASE:1.35
	khorben-n900:1.35.0.14
	netbsd-6-1-RC4:1.35
	netbsd-6-1-RC3:1.35
	agc-symver:1.35.0.12
	agc-symver-base:1.35
	netbsd-6-1-RC2:1.35
	netbsd-6-1-RC1:1.35
	yamt-pagecache-base8:1.35
	netbsd-5-2:1.27.2.1.0.6
	netbsd-6-0-1-RELEASE:1.35
	yamt-pagecache-base7:1.35
	netbsd-5-2-RELEASE:1.27.2.1
	netbsd-5-2-RC1:1.27.2.1
	matt-nb6-plus-nbase:1.35
	yamt-pagecache-base6:1.35
	netbsd-6-0:1.35.0.8
	netbsd-6-0-RELEASE:1.35
	netbsd-6-0-RC2:1.35
	tls-maxphys:1.35.0.6
	tls-maxphys-base:1.37
	matt-nb6-plus:1.35.0.4
	matt-nb6-plus-base:1.35
	netbsd-6-0-RC1:1.35
	jmcneill-usbmp-base10:1.35
	yamt-pagecache-base5:1.35
	jmcneill-usbmp-base9:1.35
	yamt-pagecache-base4:1.35
	jmcneill-usbmp-base8:1.35
	jmcneill-usbmp-base7:1.35
	jmcneill-usbmp-base6:1.35
	jmcneill-usbmp-base5:1.35
	jmcneill-usbmp-base4:1.35
	jmcneill-usbmp-base3:1.35
	jmcneill-usbmp-pre-base2:1.34
	jmcneill-usbmp-base2:1.35
	netbsd-6:1.35.0.2
	netbsd-6-base:1.35
	netbsd-5-1-2-RELEASE:1.27.2.1
	netbsd-5-1-1-RELEASE:1.27.2.1
	jmcneill-usbmp:1.34.0.6
	jmcneill-usbmp-base:1.34
	jmcneill-audiomp3:1.34.0.4
	jmcneill-audiomp3-base:1.34
	yamt-pagecache-base3:1.34
	yamt-pagecache-base2:1.34
	yamt-pagecache:1.34.0.2
	yamt-pagecache-base:1.34
	rmind-uvmplock-nbase:1.33
	cherry-xenmp:1.33.0.2
	cherry-xenmp-base:1.33
	uebayasi-xip-base7:1.31
	bouyer-quota2-nbase:1.31
	bouyer-quota2:1.31.0.4
	bouyer-quota2-base:1.31
	jruoho-x86intr:1.31.0.2
	jruoho-x86intr-base:1.31
	matt-mips64-premerge-20101231:1.30
	matt-nb5-mips64-premerge-20101231:1.27.8.1
	matt-nb5-pq3:1.27.2.1.0.4
	matt-nb5-pq3-base:1.27.2.1
	netbsd-5-1:1.27.2.1.0.2
	uebayasi-xip-base6:1.30
	uebayasi-xip-base5:1.30
	netbsd-5-1-RELEASE:1.27.2.1
	uebayasi-xip-base4:1.30
	uebayasi-xip-base3:1.30
	yamt-nfs-mp-base11:1.30
	netbsd-5-1-RC4:1.27.2.1
	matt-nb5-mips64-k15:1.27.8.1
	uebayasi-xip-base2:1.30
	yamt-nfs-mp-base10:1.30
	netbsd-5-1-RC3:1.27.2.1
	netbsd-5-1-RC2:1.27.2.1
	uebayasi-xip-base1:1.29
	netbsd-5-1-RC1:1.27.2.1
	rmind-uvmplock:1.29.0.4
	rmind-uvmplock-base:1.33
	yamt-nfs-mp-base9:1.29
	uebayasi-xip:1.29.0.2
	uebayasi-xip-base:1.29
	netbsd-5-0-2-RELEASE:1.27
	matt-nb5-mips64-premerge-20091211:1.27
	matt-premerge-20091211:1.29
	yamt-nfs-mp-base8:1.28
	matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.27
	matt-nb4-mips64-k7-u2a-k9b:1.27
	matt-nb5-mips64-u1-k1-k5:1.27
	yamt-nfs-mp-base7:1.28
	matt-nb5-mips64:1.27.0.8
	netbsd-5-0-1-RELEASE:1.27
	jymxensuspend-base:1.28
	yamt-nfs-mp-base6:1.28
	yamt-nfs-mp-base5:1.28
	yamt-nfs-mp-base4:1.28
	jym-xensuspend-nbase:1.34
	yamt-nfs-mp-base3:1.28
	nick-hppapmap-base4:1.28
	nick-hppapmap-base3:1.28
	netbsd-5-0:1.27.0.6
	netbsd-5-0-RELEASE:1.27
	netbsd-5-0-RC4:1.27
	netbsd-5-0-RC3:1.27
	nick-hppapmap-base2:1.28
	netbsd-5-0-RC2:1.27
	jym-xensuspend:1.28.0.2
	jym-xensuspend-base:1.34
	netbsd-5-0-RC1:1.27
	haad-dm-base2:1.28
	haad-nbase2:1.28
	ad-audiomp2:1.27.0.4
	ad-audiomp2-base:1.27
	netbsd-5:1.27.0.2
	netbsd-5-base:1.27
	nick-hppapmap:1.26.0.18
	nick-hppapmap-base:1.28
	matt-mips64-base2:1.26
	haad-dm-base1:1.26
	wrstuden-revivesa-base-4:1.26
	netbsd-4-0-1-RELEASE:1.18
	wrstuden-revivesa-base-3:1.26
	wrstuden-revivesa-base-2:1.26
	wrstuden-fixsa-newbase:1.18
	nick-csl-alignment-base5:1.19
	haad-dm:1.26.0.16
	haad-dm-base:1.28
	wrstuden-revivesa-base-1:1.26
	simonb-wapbl-nbase:1.26
	yamt-pf42-base4:1.26
	simonb-wapbl:1.26.0.14
	simonb-wapbl-base:1.26
	yamt-pf42-base3:1.26
	hpcarm-cleanup-nbase:1.26
	yamt-pf42-baseX:1.26
	yamt-pf42-base2:1.26
	yamt-nfs-mp-base2:1.26
	wrstuden-revivesa:1.26.0.12
	wrstuden-revivesa-base:1.26
	yamt-nfs-mp:1.26.0.10
	yamt-nfs-mp-base:1.26
	yamt-pf42:1.26.0.8
	yamt-pf42-base:1.26
	ad-socklock-base1:1.26
	yamt-lazymbuf-base15:1.26
	yamt-lazymbuf-base14:1.26
	keiichi-mipv6-nbase:1.26
	mjf-devfs2:1.26.0.6
	mjf-devfs2-base:1.28
	nick-net80211-sync:1.26.0.4
	nick-net80211-sync-base:1.26
	keiichi-mipv6:1.26.0.2
	keiichi-mipv6-base:1.26
	bouyer-xeni386-merge1:1.20.6.6
	matt-armv6-prevmlocking:1.19
	wrstuden-fixsa-base-1:1.18
	vmlocking2-base3:1.20
	netbsd-4-0:1.18.0.16
	netbsd-4-0-RELEASE:1.18
	bouyer-xeni386-nbase:1.25
	yamt-kmem-base3:1.20
	cube-autoconf:1.20.0.8
	cube-autoconf-base:1.20
	yamt-kmem-base2:1.20
	bouyer-xeni386:1.20.0.6
	bouyer-xeni386-base:1.25
	yamt-kmem:1.20.0.4
	yamt-kmem-base:1.20
	vmlocking2-base2:1.20
	reinoud-bufcleanup-nbase:1.20
	vmlocking2:1.20.0.2
	vmlocking2-base1:1.20
	netbsd-4-0-RC5:1.18
	matt-nb4-arm:1.18.0.14
	matt-nb4-arm-base:1.18
	matt-armv6-nbase:1.26
	jmcneill-base:1.19
	netbsd-4-0-RC4:1.18
	mjf-devfs:1.19.0.30
	mjf-devfs-base:1.26
	bouyer-xenamd64-base2:1.19
	vmlocking-nbase:1.20
	yamt-x86pmap-base4:1.19
	bouyer-xenamd64:1.19.0.28
	bouyer-xenamd64-base:1.19
	netbsd-4-0-RC3:1.18
	yamt-x86pmap-base3:1.19
	yamt-x86pmap-base2:1.19
	netbsd-4-0-RC2:1.18
	yamt-x86pmap:1.19.0.26
	yamt-x86pmap-base:1.19
	netbsd-4-0-RC1:1.18
	matt-armv6:1.19.0.24
	matt-armv6-base:1.23
	jmcneill-pm:1.19.0.22
	jmcneill-pm-base:1.20
	hpcarm-cleanup:1.19.0.20
	hpcarm-cleanup-base:1.26
	nick-csl-alignment:1.19.0.18
	nick-csl-alignment-base:1.19
	matt-mips64:1.19.0.16
	matt-mips64-base:1.19
	netbsd-3-1-1-RELEASE:1.5.14.1
	netbsd-3-0-3-RELEASE:1.5
	yamt-idlelwp-base8:1.19
	wrstuden-fixsa:1.18.0.12
	wrstuden-fixsa-base:1.18
	ppcoea-renovation:1.19.0.14
	ppcoea-renovation-base:1.19
	thorpej-atomic:1.19.0.12
	thorpej-atomic-base:1.19
	reinoud-bufcleanup:1.19.0.10
	reinoud-bufcleanup-base:1.20
	mjf-ufs-trans:1.19.0.8
	mjf-ufs-trans-base:1.19
	vmlocking:1.19.0.6
	vmlocking-base:1.19
	ad-audiomp:1.19.0.4
	ad-audiomp-base:1.19
	yamt-idlelwp:1.19.0.2
	post-newlock2-merge:1.19
	newlock2-nbase:1.18
	yamt-splraiseipl-base5:1.18
	yamt-splraiseipl-base4:1.18
	yamt-splraiseipl-base3:1.18
	abandoned-netbsd-4-base:1.18
	abandoned-netbsd-4:1.18.0.4
	netbsd-3-1:1.5.14.1.0.2
	netbsd-3-1-RELEASE:1.5.14.1
	netbsd-3-0-2-RELEASE:1.5
	yamt-splraiseipl-base2:1.18
	netbsd-3-1-RC4:1.5.14.1
	yamt-splraiseipl:1.18.0.8
	yamt-splraiseipl-base:1.18
	netbsd-3-1-RC3:1.5.14.1
	yamt-pdpolicy-base9:1.18
	newlock2:1.18.0.6
	newlock2-base:1.18
	yamt-pdpolicy-base8:1.18
	netbsd-3-1-RC2:1.5.14.1
	netbsd-3-1-RC1:1.5.14.1
	yamt-pdpolicy-base7:1.18
	netbsd-4:1.18.0.10
	netbsd-4-base:1.18
	yamt-pdpolicy-base6:1.18
	chap-midi-nbase:1.18
	netbsd-3-0-1-RELEASE:1.5
	gdamore-uart:1.18.0.2
	gdamore-uart-base:1.18
	simonb-timcounters-final:1.12.6.2
	yamt-pdpolicy-base5:1.17
	chap-midi:1.17.0.2
	chap-midi-base:1.18
	yamt-pdpolicy-base4:1.16
	yamt-pdpolicy-base3:1.14
	peter-altq-base:1.14
	peter-altq:1.14.0.2
	yamt-pdpolicy-base2:1.14
	elad-kernelauth-base:1.16
	elad-kernelauth:1.13.0.4
	yamt-pdpolicy:1.13.0.2
	yamt-pdpolicy-base:1.13
	yamt-uio_vmspace-base5:1.12
	simonb-timecounters:1.12.0.6
	simonb-timecounters-base:1.18
	rpaulo-netinet-merge-pcb:1.12.0.4
	rpaulo-netinet-merge-pcb-base:1.18
	yamt-uio_vmspace:1.12.0.2
	netbsd-3-0:1.5.0.16
	netbsd-3-0-RELEASE:1.5
	netbsd-3-0-RC6:1.5
	yamt-readahead-base3:1.11
	netbsd-3-0-RC5:1.5
	netbsd-3-0-RC4:1.5
	netbsd-3-0-RC3:1.5
	yamt-readahead-base2:1.11
	netbsd-3-0-RC2:1.5
	yamt-readahead-pervnode:1.11
	yamt-readahead-perfile:1.11
	yamt-readahead:1.11.0.2
	yamt-readahead-base:1.11
	netbsd-3-0-RC1:1.5
	yamt-vop-base3:1.9
	netbsd-2-0-3-RELEASE:1.1.2.2
	netbsd-2-1:1.1.2.2.2.1.0.2
	yamt-vop-base2:1.9
	thorpej-vnode-attr:1.9.0.6
	thorpej-vnode-attr-base:1.9
	netbsd-2-1-RELEASE:1.1.2.2.2.1
	yamt-vop:1.9.0.4
	yamt-vop-base:1.9
	netbsd-2-1-RC6:1.1.2.2.2.1
	netbsd-2-1-RC5:1.1.2.2.2.1
	netbsd-2-1-RC4:1.1.2.2.2.1
	netbsd-2-1-RC3:1.1.2.2.2.1
	netbsd-2-1-RC2:1.1.2.2.2.1
	netbsd-2-1-RC1:1.1.2.2.2.1
	yamt-lazymbuf:1.9.0.2
	yamt-km-base4:1.5
	netbsd-2-0-2-RELEASE:1.1.2.2
	yamt-km-base3:1.5
	netbsd-3:1.5.0.14
	netbsd-3-base:1.5
	yamt-km-base2:1.5
	yamt-km:1.5.0.10
	yamt-km-base:1.5
	kent-audio2:1.5.0.8
	kent-audio2-base:1.5
	netbsd-2-0-1-RELEASE:1.1.2.2
	kent-audio1-beforemerge:1.5
	netbsd-2:1.1.2.2.0.2
	netbsd-2-base:1.1.2.2
	bouyer-xen2:1.5.0.6
	bouyer-xen2-base:1.5
	kent-audio1:1.5.0.4
	kent-audio1-base:1.5
	netbsd-2-0-RELEASE:1.1.2.2
	netbsd-2-0-RC5:1.1.2.2
	netbsd-2-0-RC4:1.1.2.2
	netbsd-2-0-RC3:1.1.2.2
	netbsd-2-0-RC2:1.1.2.2
	netbsd-2-0-RC1:1.1.2.2
	ktrace-lwp-base:1.11
	ktrace-lwp:1.5.0.2
	netbsd-2-0:1.1.0.2
	netbsd-2-0-base:1.1;
locks; strict;
comment	@# @;


1.50
date	2020.05.02.16.44.36;	author bouyer;	state Exp;
branches;
next	1.49;
commitid	EY6QXNrfrYptzG6C;

1.49
date	2020.04.25.15.26.17;	author bouyer;	state Exp;
branches;
next	1.48;
commitid	OlHyMKBWmojOpM5C;

1.48
date	2019.02.02.12.32.54;	author cherry;	state Exp;
branches
	1.48.10.1;
next	1.47;
commitid	I4nx5RPiRzvkQbaB;

1.47
date	2018.09.22.12.24.04;	author rin;	state Exp;
branches;
next	1.46;
commitid	oPiNEJ7VnAF626TA;

1.46
date	2018.06.02.18.11.26;	author christos;	state Exp;
branches
	1.46.2.1;
next	1.45;
commitid	nVFl9ig3Km8uBJEA;

1.45
date	2018.01.21.08.33.46;	author maxv;	state Exp;
branches
	1.45.2.1;
next	1.44;
commitid	8ruTukP6h1UMEInA;

1.44
date	2017.12.12.08.27.32;	author pgoyette;	state Exp;
branches;
next	1.43;
commitid	Cfo0vQdW8Q17UziA;

1.43
date	2017.12.10.14.29.47;	author christos;	state Exp;
branches;
next	1.42;
commitid	d9aiTEWUrGjBYliA;

1.42
date	2017.08.09.19.11.13;	author maxv;	state Exp;
branches;
next	1.41;
commitid	0h9zdT3UTLQkuz2A;

1.41
date	2017.02.02.19.09.08;	author maxv;	state Exp;
branches
	1.41.6.1;
next	1.40;
commitid	tDOvedigrYBEvpEz;

1.40
date	2015.08.24.14.04.25;	author uebayasi;	state Exp;
branches
	1.40.2.1
	1.40.4.1;
next	1.39;
commitid	JQO3eAMUebR2Owyy;

1.39
date	2015.08.18.10.18.21;	author uebayasi;	state Exp;
branches;
next	1.38;
commitid	lgi8x6Y3Ha5sKJxy;

1.38
date	2014.11.15.12.42.56;	author uebayasi;	state Exp;
branches
	1.38.2.1;
next	1.37;
commitid	Yyy7P05niq06qhYx;

1.37
date	2014.07.20.16.51.29;	author joerg;	state Exp;
branches;
next	1.36;
commitid	L4vVxnDRZDroA8Jx;

1.36
date	2014.07.17.10.49.45;	author bouyer;	state Exp;
branches;
next	1.35;
commitid	BgwVbKjalSrcGIIx;

1.35
date	2011.12.19.14.06.17;	author joerg;	state Exp;
branches
	1.35.6.1
	1.35.20.1;
next	1.34;

1.34
date	2011.08.17.21.42.16;	author joerg;	state Exp;
branches
	1.34.2.1
	1.34.6.1;
next	1.33;

1.33
date	2011.05.30.15.06.32;	author joerg;	state Exp;
branches;
next	1.32;

1.32
date	2011.05.20.13.12.59;	author joerg;	state Exp;
branches;
next	1.31;

1.31
date	2011.01.12.23.12.12;	author joerg;	state Exp;
branches
	1.31.2.1;
next	1.30;

1.30
date	2010.07.06.06.00.02;	author mrg;	state Exp;
branches;
next	1.29;

1.29
date	2009.11.25.17.08.09;	author tron;	state Exp;
branches
	1.29.2.1
	1.29.4.1;
next	1.28;

1.28
date	2008.12.11.05.27.42;	author alc;	state Exp;
branches
	1.28.2.1;
next	1.27;

1.27
date	2008.10.30.20.07.20;	author joerg;	state Exp;
branches
	1.27.2.1
	1.27.8.1;
next	1.26;

1.26
date	2008.01.25.21.12.13;	author joerg;	state Exp;
branches
	1.26.6.1
	1.26.10.1
	1.26.16.1
	1.26.18.1;
next	1.25;

1.25
date	2008.01.17.01.56.02;	author lukem;	state Exp;
branches;
next	1.24;

1.24
date	2008.01.11.20.00.18;	author bouyer;	state Exp;
branches;
next	1.23;

1.23
date	2008.01.03.21.17.44;	author joerg;	state Exp;
branches;
next	1.22;

1.22
date	2008.01.02.12.46.23;	author joerg;	state Exp;
branches;
next	1.21;

1.21
date	2008.01.01.11.35.33;	author yamt;	state Exp;
branches;
next	1.20;

1.20
date	2007.11.22.16.16.47;	author bouyer;	state Exp;
branches
	1.20.6.1;
next	1.19;

1.19
date	2007.02.09.21.55.14;	author ad;	state Exp;
branches
	1.19.6.1
	1.19.22.1
	1.19.24.1
	1.19.28.1
	1.19.30.1;
next	1.18;

1.18
date	2006.05.28.14.00.13;	author pavel;	state Exp;
branches
	1.18.6.1;
next	1.17;

1.17
date	2006.05.14.21.57.13;	author elad;	state Exp;
branches
	1.17.2.1;
next	1.16;

1.16
date	2006.04.04.03.13.12;	author gdamore;	state Exp;
branches;
next	1.15;

1.15
date	2006.04.02.05.52.14;	author gdamore;	state Exp;
branches;
next	1.14;

1.14
date	2006.03.08.17.06.53;	author dyoung;	state Exp;
branches
	1.14.2.1;
next	1.13;

1.13
date	2006.03.03.14.55.14;	author he;	state Exp;
branches
	1.13.2.1
	1.13.4.1;
next	1.12;

1.12
date	2005.12.11.12.19.47;	author christos;	state Exp;
branches
	1.12.4.1
	1.12.6.1;
next	1.11;

1.11
date	2005.11.08.01.02.39;	author yamt;	state Exp;
branches;
next	1.10;

1.10
date	2005.11.07.11.42.34;	author yamt;	state Exp;
branches;
next	1.9;

1.9
date	2005.06.22.06.14.51;	author dyoung;	state Exp;
branches
	1.9.2.1;
next	1.8;

1.8
date	2005.06.19.20.28.14;	author chs;	state Exp;
branches;
next	1.7;

1.7
date	2005.06.07.18.11.34;	author sjg;	state Exp;
branches;
next	1.6;

1.6
date	2005.05.31.04.03.11;	author christos;	state Exp;
branches;
next	1.5;

1.5
date	2004.06.21.18.20.09;	author jmc;	state Exp;
branches
	1.5.2.1
	1.5.14.1;
next	1.4;

1.4
date	2004.06.04.04.45.51;	author thorpej;	state Exp;
branches;
next	1.3;

1.3
date	2004.05.14.14.07.46;	author cl;	state Exp;
branches;
next	1.2;

1.2
date	2004.05.12.16.56.43;	author cl;	state Exp;
branches;
next	1.1;

1.1
date	2004.03.11.21.44.08;	author cl;	state Exp;
branches
	1.1.2.1;
next	;

1.48.10.1
date	2020.04.16.08.46.35;	author bouyer;	state Exp;
branches;
next	;
commitid	EHiLAyAEgTwmsA4C;

1.46.2.1
date	2019.06.10.22.06.54;	author christos;	state Exp;
branches;
next	;
commitid	jtc8rnCzWiEEHGqB;

1.45.2.1
date	2018.06.25.07.25.47;	author pgoyette;	state Exp;
branches;
next	1.45.2.2;
commitid	8PtAu9af7VvhiDHA;

1.45.2.2
date	2018.09.30.01.45.48;	author pgoyette;	state Exp;
branches;
next	;
commitid	SQ44grEPCeKPh4UA;

1.41.6.1
date	2018.03.07.14.50.57;	author martin;	state Exp;
branches;
next	;
commitid	Xtz26PHv9lpZhxtA;

1.40.2.1
date	2017.03.20.06.57.22;	author pgoyette;	state Exp;
branches;
next	;
commitid	jjw7cAwgyKq7RfKz;

1.40.4.1
date	2017.04.21.16.53.39;	author bouyer;	state Exp;
branches;
next	;
commitid	dUG7nkTKALCadqOz;

1.38.2.1
date	2015.09.22.12.05.54;	author skrll;	state Exp;
branches;
next	1.38.2.2;
commitid	CpNWKp3ozVNTafCy;

1.38.2.2
date	2017.02.05.13.40.23;	author skrll;	state Exp;
branches;
next	1.38.2.3;
commitid	8hwpk1aHl2UuyLEz;

1.38.2.3
date	2017.08.28.17.51.57;	author skrll;	state Exp;
branches;
next	;
commitid	UQQpnjvcNkUZn05A;

1.35.6.1
date	2014.08.20.00.03.29;	author tls;	state Exp;
branches;
next	1.35.6.2;
commitid	jTnpym9Qu0o4R1Nx;

1.35.6.2
date	2017.12.03.11.36.51;	author jdolecek;	state Exp;
branches;
next	;
commitid	XcIYRZTAh1LmerhA;

1.35.20.1
date	2014.08.10.06.54.11;	author tls;	state Exp;
branches;
next	;
commitid	7fY3uHKSIbCABMLx;

1.34.2.1
date	2012.04.17.00.07.07;	author yamt;	state Exp;
branches;
next	;

1.34.6.1
date	2012.02.18.07.33.38;	author mrg;	state Exp;
branches;
next	;

1.31.2.1
date	2011.06.06.09.07.10;	author jruoho;	state Exp;
branches;
next	;

1.29.2.1
date	2010.08.17.06.45.34;	author uebayasi;	state Exp;
branches;
next	;

1.29.4.1
date	2011.03.05.20.52.32;	author rmind;	state Exp;
branches;
next	1.29.4.2;

1.29.4.2
date	2011.05.31.03.04.24;	author rmind;	state Exp;
branches;
next	;

1.28.2.1
date	2010.10.24.22.48.20;	author jym;	state Exp;
branches;
next	1.28.2.2;

1.28.2.2
date	2011.03.28.23.04.55;	author jym;	state Exp;
branches;
next	1.28.2.3;

1.28.2.3
date	2011.08.27.15.37.31;	author jym;	state Exp;
branches;
next	;

1.27.2.1
date	2009.08.07.18.33.48;	author snj;	state Exp;
branches;
next	;

1.27.8.1
date	2010.04.21.00.33.44;	author matt;	state Exp;
branches;
next	;

1.26.6.1
date	2009.01.17.13.28.39;	author mjf;	state Exp;
branches;
next	;

1.26.10.1
date	2009.05.04.08.12.11;	author yamt;	state Exp;
branches;
next	1.26.10.2;

1.26.10.2
date	2010.03.11.15.03.09;	author yamt;	state Exp;
branches;
next	1.26.10.3;

1.26.10.3
date	2010.08.11.22.52.58;	author yamt;	state Exp;
branches;
next	;

1.26.16.1
date	2008.12.13.01.13.39;	author haad;	state Exp;
branches;
next	;

1.26.18.1
date	2009.01.19.13.17.11;	author skrll;	state Exp;
branches;
next	;

1.20.6.1
date	2008.01.02.21.51.29;	author bouyer;	state Exp;
branches;
next	1.20.6.2;

1.20.6.2
date	2008.01.06.18.29.44;	author bouyer;	state Exp;
branches;
next	1.20.6.3;

1.20.6.3
date	2008.01.08.22.10.41;	author bouyer;	state Exp;
branches;
next	1.20.6.4;

1.20.6.4
date	2008.01.09.21.30.12;	author bouyer;	state Exp;
branches;
next	1.20.6.5;

1.20.6.5
date	2008.01.09.23.54.17;	author bouyer;	state Exp;
branches;
next	1.20.6.6;

1.20.6.6
date	2008.01.10.13.05.53;	author bouyer;	state Exp;
branches;
next	1.20.6.7;

1.20.6.7
date	2008.01.19.12.14.50;	author bouyer;	state Exp;
branches;
next	;

1.19.6.1
date	2007.12.03.18.40.25;	author ad;	state Exp;
branches;
next	;

1.19.22.1
date	2007.11.27.19.35.58;	author joerg;	state Exp;
branches;
next	;

1.19.24.1
date	2008.01.09.01.50.01;	author matt;	state Exp;
branches;
next	1.19.24.2;

1.19.24.2
date	2008.03.23.02.04.28;	author matt;	state Exp;
branches;
next	;

1.19.28.1
date	2007.11.19.19.17.18;	author bouyer;	state Exp;
branches;
next	1.19.28.2;

1.19.28.2
date	2007.11.19.19.35.51;	author bouyer;	state Exp;
branches;
next	;

1.19.30.1
date	2007.12.08.18.18.16;	author mjf;	state Exp;
branches;
next	1.19.30.2;

1.19.30.2
date	2008.02.18.21.05.19;	author mjf;	state Exp;
branches;
next	;

1.18.6.1
date	2007.01.28.12.12.50;	author ad;	state Exp;
branches;
next	;

1.17.2.1
date	2006.06.19.03.45.15;	author chap;	state Exp;
branches;
next	;

1.14.2.1
date	2006.05.24.15.48.25;	author tron;	state Exp;
branches;
next	;

1.13.2.1
date	2006.03.13.09.07.03;	author yamt;	state Exp;
branches;
next	1.13.2.2;

1.13.2.2
date	2006.04.11.11.53.47;	author yamt;	state Exp;
branches;
next	1.13.2.3;

1.13.2.3
date	2006.06.26.12.45.40;	author yamt;	state Exp;
branches;
next	;

1.13.4.1
date	2006.04.19.02.34.03;	author elad;	state Exp;
branches;
next	;

1.12.4.1
date	2006.09.09.02.44.49;	author rpaulo;	state Exp;
branches;
next	;

1.12.6.1
date	2006.04.22.11.38.09;	author simonb;	state Exp;
branches;
next	1.12.6.2;

1.12.6.2
date	2006.06.01.22.35.31;	author kardel;	state Exp;
branches;
next	;

1.9.2.1
date	2006.06.21.14.58.06;	author yamt;	state Exp;
branches;
next	1.9.2.2;

1.9.2.2
date	2007.02.26.09.08.52;	author yamt;	state Exp;
branches;
next	1.9.2.3;

1.9.2.3
date	2007.12.07.17.27.03;	author yamt;	state Exp;
branches;
next	1.9.2.4;

1.9.2.4
date	2008.01.21.09.40.19;	author yamt;	state Exp;
branches;
next	1.9.2.5;

1.9.2.5
date	2008.02.04.09.22.54;	author yamt;	state Exp;
branches;
next	;

1.5.2.1
date	2004.06.21.18.20.09;	author skrll;	state dead;
branches;
next	1.5.2.2;

1.5.2.2
date	2004.08.03.10.43.10;	author skrll;	state Exp;
branches;
next	1.5.2.3;

1.5.2.3
date	2004.09.18.14.42.43;	author skrll;	state Exp;
branches;
next	1.5.2.4;

1.5.2.4
date	2004.09.21.13.24.36;	author skrll;	state Exp;
branches;
next	1.5.2.5;

1.5.2.5
date	2005.11.10.14.00.20;	author skrll;	state Exp;
branches;
next	;

1.5.14.1
date	2006.03.29.21.18.29;	author tron;	state Exp;
branches;
next	;

1.1.2.1
date	2004.05.22.15.59.58;	author he;	state Exp;
branches;
next	1.1.2.2;

1.1.2.2
date	2004.06.22.07.53.35;	author tron;	state Exp;
branches
	1.1.2.2.2.1;
next	;

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


desc
@@


1.50
log
@Introduce Xen PVH support in GENERIC.
This is compiled in with
options XENPVHVM
x86 changes:
- add Xen section and xen pvh entry points to locore.S. Set vm_guest
  to VM_GUEST_XENPVH in this entry point.
  Most of the boot procedure (especially page table setup and switch to
  paged mode) is shared with native.
- change some x86_delay() to delay_func(), which points to x86_delay() for
  native/HVM, and xen_delay() for PVH

Xen changes:
- remove Xen bits from init_x86_64_ksyms() and init386_ksyms()
  and move to xen_init_ksyms(), used for both PV and PVH
- set ISA no-legacy-devices property for PVH
- factor out code from Xen's cpu_bootconf() to xen_bootconf()
  in xen_machdep.c
- set up a specific pvh_consinit() which starts with printk()
  (which uses a simple hypercall that is available early) and switch to
  xencons when we can use pmap_kenter_pa().
@
text
@#	$NetBSD: Makefile.xen,v 1.49 2020/04/25 15:26:17 bouyer Exp $
#	NetBSD: Makefile.i386,v 1.132 2003/07/05 16:56:10 simonb 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/xen/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/xen/conf/Makefile.xen
# 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_*"

.include "$S/arch/xen/conf/Makefile.arch.inc"
USETOOLS?=	no
NEED_OWN_INSTALL_TARGET?=no
NORELRO=
NOSANITIZER=
.include <bsd.init.mk>

USE_SSP?=	yes

##
## (1) port identification
##
XEN=		$S/arch/xen
I386=		$S/arch/i386
AMD64=          $S/arch/amd64
GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf

ARCH_INC=	$S/arch/xen/include/${XEN_BUILD}

##
## (2) compile settings
##
CPPFLAGS+=	-D${XEN_BUILD}
AFLAGS+=	-x assembler-with-cpp ${DBG}
EXTRA_INCLUDES=	-I${.CURDIR}/xen-ma -I$S/external/mit/xen-include-public/dist/

.if ${XEN_BUILD} == "amd64"
DEFCOPTS=	-O2 -fno-omit-frame-pointer
CPPFLAGS+=	-Dx86_64
CFLAGS+=	-mcmodel=kernel
CFLAGS+=	-mno-red-zone -mno-mmx -mno-sse -mno-avx
CFLAGS+=	-msoft-float
CFLAGS+=	${${ACTIVE_CC} == "gcc":?  -mno-fp-ret-in-387 :}
.endif

.if ${XEN_BUILD} == "i386"
DEFCOPTS=	-O2 -fno-omit-frame-pointer
CFLAGS+=	-msoft-float
CFLAGS+=	-mno-mmx -mno-sse -mno-avx
.endif

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

##
## (4) local objects, compile rules, and dependencies
##

MD_OBJS=
.if ${XEN_BUILD} == i386
MD_OBJS+=	locore.o spl.o copy.o vector.o lock_stubs.o
.endif
MD_CFILES=

MD_SFILES=
.if ${XEN_BUILD} == i386
MD_SFILES+=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/lock_stubs.S

.endif

.if ${XEN_BUILD} == i386
copy.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S assym.h
	${NORMAL_S}

locore.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S assym.h
	${NORMAL_S}

spl.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S assym.h
	${NORMAL_S}

vector.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S assym.h
	${NORMAL_S}

lock_stubs.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/lock_stubs.S assym.h
	${NORMAL_S}
.endif

.ifndef noBEGIN
.if !make(obj) && !make(clean) && !make(cleandir)
.BEGIN::
.for A in ${XEN_MACHINE_ARCHS}
	-@@rm -f ${A} && \
	    ln -s $S/arch/${A}/include ${A}
.endfor
	-@@rm -rf xen-ma && \
	    mkdir xen-ma && ln -s ../${XEN_BUILD} xen-ma/machine
	-@@rm -f machine && \
	    ln -s ${ARCH_INC} machine
.endif
.endif

##
## (5) link settings
##
.if ${XEN_BUILD} == i386
TEXTADDR?=	0xc0100000
.elif ${XEN_BUILD} == amd64
TEXTADDR?=	0xffffffff80200000
.endif
LINKFLAGS_NORMAL=	-X
KERNLDSCRIPT?=	$S/arch/${XEN_BUILD}/conf/kern.ldscript.Xen

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

.if ${XEN_BUILD} == i386
linux_sigcode.o: assym.h
pnpbioscall.o bioscall.o: assym.h
mptramp.o: assym.h
.elif  ${XEN_BUILD} == amd64
locore.o machdep.o: Makefile
linux32_sigcode.o netbsd32_sigcode.o: assym.h
.endif
busfunc.o cpu_in_cksum.o cpufunc.o lock_stubs.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.49
log
@Merge the bouyer-xenpvh branch, bringing in Xen PV drivers support under HVM
guests in GENERIC.
Xen support can be disabled at runtime with
boot -c
disable hypervisor
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.48.10.1 2020/04/16 08:46:35 bouyer Exp $
d44 1
a44 1
AFLAGS+=	-x assembler-with-cpp ${DBG} -D__XEN__
@


1.48
log
@Switch NetBSD/xen to use XEN api tag RELEASE-4.11.1

The headers for this api are in sys/external/mit/xen-include-public/dist/
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.47 2018/09/22 12:24:04 rin Exp $
d70 4
a73 3
MD_OBJS=	locore.o spl.o copy.o vector.o
.if ${XEN_BUILD} == amd64
MD_OBJS+=	amd64_trap.o
d77 3
a79 1
MD_SFILES=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
d82 2
a83 1
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S
a84 2
.if ${XEN_BUILD} == amd64
MD_SFILES+=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/amd64_trap.S
d87 1
d100 1
a100 2
.if ${XEN_BUILD} == amd64
amd64_trap.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/amd64_trap.S assym.h
@


1.48.10.1
log
@Reorganise sources to make it possible to include Xen PVHVM support in
native kernels. Among others:
- move xen/include/amd64/hypercall.h to amd64/include/xen and
  xen/include/i386/hypercall.h to i386/include/xen
- exclude some native files from the build for xenpv
- add xen to "machine" config statement for amd64 and i386
- split arch/xen/conf/files.xen to arch/xen/conf/files.xen (for pv drivers)
  and arch/xen/conf/files.xen.pv (for full pv support)
- add GENERIC_XENHVM kernel config which includes GENERIC and add Xen PV
  drivers.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.48 2019/02/02 12:32:54 cherry Exp $
d70 3
a72 4

MD_OBJS=
.if ${XEN_BUILD} == i386
MD_OBJS+=	locore.o spl.o copy.o vector.o lock_stubs.o
d76 1
a76 3
MD_SFILES=
.if ${XEN_BUILD} == i386
MD_SFILES+=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
d79 1
a79 2
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/lock_stubs.S
d81 2
a84 1
.if ${XEN_BUILD} == i386
d97 2
a98 1
lock_stubs.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/lock_stubs.S assym.h
@


1.47
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.xen,v 1.46 2018/06/02 18:11:26 christos Exp $
d45 1
a45 1
EXTRA_INCLUDES=	-I${.CURDIR}/xen-ma
@


1.46
log
@disable sanitizers and relro
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.45 2018/01/21 08:33:46 maxv Exp $
d65 1
a65 1
KERN_AS=	obj
@


1.46.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.48 2019/02/02 12:32:54 cherry Exp $
d45 1
a45 1
EXTRA_INCLUDES=	-I${.CURDIR}/xen-ma -I$S/external/mit/xen-include-public/dist/
d65 1
a65 1
OPT_MODULAR=	%MODULAR%
@


1.45
log
@Fix the build, on Xen too amd64_trap.S needs to be compiled independently.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.44 2017/12/12 08:27:32 pgoyette Exp $
d24 3
a26 1
.include <bsd.own.mk>
@


1.45.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.46 2018/06/02 18:11:26 christos Exp $
d24 1
a24 3
NORELRO=
NOSANITIZER=
.include <bsd.init.mk>
@


1.45.2.2
log
@Ssync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.47 2018/09/22 12:24:04 rin Exp $
d65 1
a65 1
OPT_MODULAR=	%MODULAR%
@


1.44
log
@Remove trailing '&&' from shell script to fix the build.

From a-rin on https://gist.github.com/a-rin/940abb80d45eb7ac75b8110b8466f149
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.43 2017/12/10 14:29:47 christos Exp $
d69 3
d79 4
d94 6
@


1.43
log
@- Allow multiple .BEGIN targets
- Make their protection consistent
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.42 2017/08/09 19:11:13 maxv Exp $
d95 1
a95 1
	    mkdir xen-ma && ln -s ../${XEN_BUILD} xen-ma/machine &&
@


1.42
log
@Remove several dead entries from the x86 makefiles. Looks like people (me
included) regularly forget to take care of this.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.41 2017/02/02 19:09:08 maxv Exp $
d89 1
a89 1
.BEGIN:
d91 2
a92 2
	rm -f ${A}
	ln -s $S/arch/${A}/include ${A}
d94 4
a97 5
	-rm -rf xen-ma
	mkdir xen-ma
	ln -s ../${XEN_BUILD} xen-ma/machine
	rm -f machine
	ln -s ${ARCH_INC} machine
@


1.41
log
@Increase KERNTEXTOFF from 1MB to 2MB on amd64. [1MB; 2MB[ is now handled
by UVM, so there is no physical loss.

On amd64 we always remap the kernel text with 2MB pages, and because of the
1MB start address we were forced to map [0MB; 2MB[ inside the first large
page. The problem is, the lower half is used by UVM to allocate physical
pages, and it is possible that some of these could be used by userland. We
could end up with userland-controllable data mapped into the kernel text on
a privileged page, which is far from being a good idea from a security pov.

I am not fixing i386 yet, because the large page size depends on PAE, and
we probably don't want to have a text located at 4MB on low-memory systems.

(note: I didn't introduce this issue, it was already there when I came in)
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.40 2015/08/24 14:04:25 uebayasi Exp $
d118 2
a119 3
freebsd_sigcode.o ibcs2_sigcode.o linux_sigcode.o: assym.h
svr4_sigcode.o mach_sigcode.o: assym.h
apmcall.o pnpbioscall.o bioscall.o: assym.h
d123 1
a123 1
linux_support.o linux32_sigcode.o netbsd32_sigcode.o: assym.h
@


1.41.6.1
log
@Pull up the following revisions (via patch), requested by maxv in ticket #610:

sys/arch/amd64/amd64/amd64_trap.S	1.8,1.10,1.12 (partial),1.13-1.15,
					1.19 (partial),1.20,1.21,1.22,1.24
					(via patch)
sys/arch/amd64/amd64/locore.S		1.129 (partial),1.132 (via patch)
sys/arch/amd64/amd64/trap.c		1.97 (partial),1.111 (via patch)
sys/arch/amd64/amd64/vector.S		1.54,1.55 (via patch)
sys/arch/amd64/include/frameasm.h	1.21,1.23 (via patch)
sys/arch/x86/x86/cpu.c			1.138 (via patch)
sys/arch/xen/conf/Makefile.xen		1.45 (via patch)

Rename and reorder several things in amd64_trap.S.
Compile amd64_trap.S as a file.
Introduce nmitrap and doubletrap.
Have the CPU clear PSL_D automatically in the syscall entry point.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.41 2017/02/02 19:09:08 maxv Exp $
a68 3
.if ${XEN_BUILD} == amd64
MD_OBJS+=	amd64_trap.o
.endif
a75 4
.if ${XEN_BUILD} == amd64
MD_SFILES+=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/amd64_trap.S
.endif

a86 6

.if ${XEN_BUILD} == amd64
amd64_trap.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/amd64_trap.S assym.h
	${NORMAL_S}
.endif

@


1.40
log
@Define ${LINKSCRIPT} in one place.
@
text
@d1 1
a1 1
#	$NetBSD$
d108 1
a108 1
TEXTADDR?=	0xffffffff80100000
@


1.40.4.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.41 2017/02/02 19:09:08 maxv Exp $
d108 1
a108 1
TEXTADDR?=	0xffffffff80200000
@


1.40.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.41 2017/02/02 19:09:08 maxv Exp $
d108 1
a108 1
TEXTADDR?=	0xffffffff80200000
@


1.39
log
@${KERN_LDSCRIPT} -> ${KERNLDSCRIPT}
@
text
@a111 1
LINKSCRIPT=	-T ${KERNLDSCRIPT}
@


1.38
log
@Use LINKSCRIPT.
@
text
@d111 2
a112 2
KERN_LDSCRIPT?=	kern.ldscript.Xen
LINKSCRIPT=	-T $S/arch/${XEN_BUILD}/conf/${KERN_LDSCRIPT}
@


1.38.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.40 2015/08/24 14:04:25 uebayasi Exp $
d111 2
a112 1
KERNLDSCRIPT?=	$S/arch/${XEN_BUILD}/conf/kern.ldscript.Xen
@


1.38.2.2
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.38.2.1 2015/09/22 12:05:54 skrll Exp $
d108 1
a108 1
TEXTADDR?=	0xffffffff80200000
@


1.38.2.3
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.38.2.2 2017/02/05 13:40:23 skrll Exp $
d118 3
a120 2
linux_sigcode.o: assym.h
pnpbioscall.o bioscall.o: assym.h
d124 1
a124 1
linux32_sigcode.o netbsd32_sigcode.o: assym.h
@


1.37
log
@Restrict -mno-fp-ret-in-387 to GCC.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.36 2014/07/17 10:49:45 bouyer Exp $
d112 1
a112 1
LINKFORMAT=	-T $S/arch/${XEN_BUILD}/conf/${KERN_LDSCRIPT}
@


1.36
log
@Sync DEFCOPTS and CFLAGS with i386 and amd64 counterparts.
Especially -fno-omit-frame-pointer
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.35 2011/12/19 14:06:17 joerg Exp $
d51 1
a51 1
CFLAGS+=	-mno-fp-ret-in-387
@


1.35
log
@Move Clang-warning flags for ah_regdomain.c into sys/conf, they are
platform independent. Use the selective -Wno-* flags instead of
-Wno-error.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.34 2011/08/17 21:42:16 joerg Exp $
a40 1
DEFCOPTS=	-O2
d46 1
d49 3
a51 1
CFLAGS+=	-mno-red-zone
d54 5
@


1.35.6.1
log
@Rebase to HEAD as of a few days ago.
@
text
@d1 1
a1 1
#	$NetBSD$
d41 1
a46 1
DEFCOPTS=	-O2 -fno-omit-frame-pointer
d49 1
a49 3
CFLAGS+=	-mno-red-zone -mno-mmx -mno-sse -mno-avx
CFLAGS+=	-msoft-float
CFLAGS+=	${${ACTIVE_CC} == "gcc":?  -mno-fp-ret-in-387 :}
a51 5
.if ${XEN_BUILD} == "i386"
DEFCOPTS=	-O2 -fno-omit-frame-pointer
CFLAGS+=	-msoft-float
CFLAGS+=	-mno-mmx -mno-sse -mno-avx
.endif
@


1.35.6.2
log
@update from HEAD
@
text
@d108 1
a108 1
TEXTADDR?=	0xffffffff80200000
d111 2
a112 1
KERNLDSCRIPT?=	$S/arch/${XEN_BUILD}/conf/kern.ldscript.Xen
d119 3
a121 2
linux_sigcode.o: assym.h
pnpbioscall.o bioscall.o: assym.h
d125 1
a125 1
linux32_sigcode.o netbsd32_sigcode.o: assym.h
@


1.35.20.1
log
@Rebase.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.37 2014/07/20 16:51:29 joerg Exp $
d41 1
a46 1
DEFCOPTS=	-O2 -fno-omit-frame-pointer
d49 1
a49 3
CFLAGS+=	-mno-red-zone -mno-mmx -mno-sse -mno-avx
CFLAGS+=	-msoft-float
CFLAGS+=	${${ACTIVE_CC} == "gcc":?  -mno-fp-ret-in-387 :}
a51 5
.if ${XEN_BUILD} == "i386"
DEFCOPTS=	-O2 -fno-omit-frame-pointer
CFLAGS+=	-msoft-float
CFLAGS+=	-mno-mmx -mno-sse -mno-avx
.endif
@


1.34
log
@Works with clang's integrated assembler now.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.33 2011/05/30 15:06:32 joerg Exp $
a57 2
CWARNFLAGS.ah_regdomain.c= ${${ACTIVE_CC} == "clang":?-Wno-error:}

@


1.34.2.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.34 2011/08/17 21:42:16 joerg Exp $
d58 2
@


1.34.6.1
log
@merge to -current.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.35 2011/12/19 14:06:17 joerg Exp $
d58 2
@


1.33
log
@Disable -Werror for ah_regdomain.c if building with clang as workaround
for http://llvm.org/bugs/show_bug.cgi?id=10030.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.32 2011/05/20 13:12:59 joerg Exp $
a57 2
AFLAGS.linux32_sigcode.S+=	${${ACTIVE_CC} == "clang":?-no-integrated-as:}
AFLAGS.netbsd32_sigcode.S+=	${${ACTIVE_CC} == "clang":?-no-integrated-as:}
@


1.32
log
@LLVM's assembler parser doesn't support .code32 yet, so disable it as
needed.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.31 2011/01/12 23:12:12 joerg Exp $
d60 1
@


1.31
log
@Allow use of traditional CPP to be set on a per platform base in sys.mk.
Honour this for dependency processing in bsd.dep.mk.  Switch i386 and
amd64 assembly to use ISO C90 preprocessor concat and drop the
-traditional-cpp on this platform.
@
text
@d1 1
a1 1
#	$NetBSD: src/sys/arch/xen/conf/Makefile.xen,v 1.30 2010-07-06 06:00:02 mrg Exp $
d58 3
@


1.31.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.33 2011/05/30 15:06:32 joerg Exp $
a57 4
AFLAGS.linux32_sigcode.S+=	${${ACTIVE_CC} == "clang":?-no-integrated-as:}
AFLAGS.netbsd32_sigcode.S+=	${${ACTIVE_CC} == "clang":?-no-integrated-as:}
CWARNFLAGS.ah_regdomain.c= ${${ACTIVE_CC} == "clang":?-Wno-error:}

@


1.30
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.xen,v 1.29 2009/11/25 17:08:09 tron Exp $
d43 1
a43 1
AFLAGS+=	-x assembler-with-cpp -traditional-cpp ${DBG} -D__XEN__
@


1.29
log
@Enable SSP (Stack Smash Protection) in x86 kernels by default (except
in i386 *TINY kernels). The NetBSD/i386 "ALL" kernel is unconditionally
compiled with SSP enabled.

Change approved by the core team.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.28 2008/12/11 05:27:42 alc Exp $
a103 1
.if (${OBJECT_FMT} == "ELF")
a105 3
.else
LINKFORMAT=	-z
.endif
@


1.29.4.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD$
d43 1
a43 1
AFLAGS+=	-x assembler-with-cpp ${DBG} -D__XEN__
d104 1
d107 3
@


1.29.4.2
log
@sync with head
@
text
@a57 4
AFLAGS.linux32_sigcode.S+=	${${ACTIVE_CC} == "clang":?-no-integrated-as:}
AFLAGS.netbsd32_sigcode.S+=	${${ACTIVE_CC} == "clang":?-no-integrated-as:}
CWARNFLAGS.ah_regdomain.c= ${${ACTIVE_CC} == "clang":?-Wno-error:}

@


1.29.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD$
d104 1
d107 3
@


1.28
log
@Clean-up makefile stub used to include in the build the binary HAL object
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.27 2008/10/30 20:07:20 joerg Exp $
d26 2
@


1.28.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.30 2010/07/06 06:00:02 mrg Exp $
a25 2
USE_SSP?=	yes

d102 1
d105 3
@


1.28.2.2
log
@Sync with HEAD. TODO before merge:
- shortcut for suspend code in sysmon, when powerd(8) is not running.
Borrow ``xs_watch'' thread context?
- bug hunting in xbd + xennet resume. Rings are currently thrashed upon
resume, so current implementation force flush them on suspend. It's not
really needed.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.31 2011/01/12 23:12:12 joerg Exp $
d43 1
a43 1
AFLAGS+=	-x assembler-with-cpp ${DBG} -D__XEN__
@


1.28.2.3
log
@Sync with HEAD. Most notably: uvm/pmap work done by rmind@@, and MP Xen
work of cherry@@.

No regression observed on suspend/restore.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.34 2011/08/17 21:42:16 joerg Exp $
a57 2
CWARNFLAGS.ah_regdomain.c= ${${ACTIVE_CC} == "clang":?-Wno-error:}

@


1.27
log
@New assym.h dependency.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.26 2008/01/25 21:12:13 joerg Exp $
a142 3
## Include rules for Atheros WLAN
.include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"

@


1.27.8.1
log
@sync to netbsd-5
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.27.2.1 2009/08/07 18:33:48 snj Exp $
d143 3
@


1.27.2.1
log
@Pull up following revision(s) (requested by sborrill in ticket #905):
	sys/arch/alpha/conf/Makefile.alpha: revision 1.81
	sys/arch/amd64/conf/Makefile.amd64: revision 1.26
	sys/arch/i386/conf/Makefile.i386: revision 1.162
	sys/arch/macppc/conf/Makefile.macppc: revision 1.31
	sys/arch/mips/conf/Makefile.mips: revision 1.52
	sys/arch/sparc64/conf/Makefile.sparc64: revision 1.68
	sys/arch/xen/conf/Makefile.xen: revision 1.28
Clean-up makefile stub used to include in the build the binary HAL object
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.27 2008/10/30 20:07:20 joerg Exp $
d143 3
@


1.26
log
@Refactor in_cksum/in4_cksum/in6_cksum implementations:
- All three functions are included in the kernel by default.
  They call a backend function cpu_in_cksum after possibly
  computing the checksum of the pseudo header.
- cpu_in_cksum is the core to implement the one-complement sum.
  The default implementation is moderate fast on most platforms
  and provides a 32bit accumulator with 16bit addends for L32 platforms
  and a 64bit accumulator with 32bit addends for L64 platforms.
  It handles edge cases like very large mbuf chains (could happen with
  native IPv6 in the future) and provides a good base for new native
  implementations.
- Modify i386 and amd64 assembly to use the new interface.

This disables the MD implementations on !x86 until the conversion is
done. For Alpha, the portable version is faster.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.25 2008/01/17 01:56:02 lukem Exp $
d120 1
a120 1
linux32_sigcode.o netbsd32_sigcode.o: assym.h
@


1.26.10.1
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.26 2008/01/25 21:12:13 joerg Exp $
d120 1
a120 1
linux_support.o linux32_sigcode.o netbsd32_sigcode.o: assym.h
d143 3
@


1.26.10.2
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.26.10.1 2009/05/04 08:12:11 yamt Exp $
a25 2
USE_SSP?=	yes

@


1.26.10.3
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.26.10.2 2010/03/11 15:03:09 yamt Exp $
d104 1
d107 3
@


1.26.18.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.28 2008/12/11 05:27:42 alc Exp $
d120 1
a120 1
linux_support.o linux32_sigcode.o netbsd32_sigcode.o: assym.h
d143 3
@


1.26.6.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD$
d120 1
a120 1
linux_support.o linux32_sigcode.o netbsd32_sigcode.o: assym.h
d143 3
@


1.26.16.1
log
@Update haad-dm branch to haad-dm-base2.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.28 2008/12/11 05:27:42 alc Exp $
d120 1
a120 1
linux_support.o linux32_sigcode.o netbsd32_sigcode.o: assym.h
d143 3
@


1.25
log
@Remove unnecessary references to config_time.h.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.24 2008/01/11 20:00:18 bouyer Exp $
d115 2
a116 2
lock_stubs.o svr4_sigcode.o mach_sigcode.o: assym.h
apmcall.o in_cksum.o pnpbioscall.o bioscall.o: assym.h
d120 1
a120 1
cpufunc.o linux32_sigcode.o lock_stubs.o netbsd32_sigcode.o: assym.h
d122 1
a122 1
busfunc.o cpufunc.o: assym.h
@


1.24
log
@Merge the bouyer-xeni386 branch to head, at tag bouyer-xeni386-merge1 (the
branch is still active and will see i386PAE support developement).
Sumary of changes:
- switch xeni386 to the x86/x86/pmap.c, and the xen/x86/x86_xpmap.c
  pmap bootstrap.
- merge back most of xen/i386/ to i386/i386
- change the build to reduce diffs between i386 and amd64 in file locations
- remove include files that were identical to the i386/amd64 counterparts,
  the build will find them via the xen-ma/machine link.
@
text
@d1 1
a1 1
#	$NetBSD$
a122 1
clock.o: config_time.h
@


1.23
log
@Add assym.h dependency.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.22 2008/01/02 12:46:23 joerg Exp $
a31 3
.if ${XEN_BUILD} == "i386"
GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
.else
a32 1
.endif
d34 1
a34 5
.if ${XEN_BUILD} == "amd64"
ARCH_INC=	$S/arch/xen/include/amd64
.elif ${XEN_BUILD} == "i386"
ARCH_INC=	$S/arch/xen/include
.endif
d62 4
a65 22
.if ${XEN_BUILD} == i386
MD_SFILES=	${XEN}/${XEN_BUILD}/locore.S \
		${XEN}/${XEN_BUILD}/spl.S \
		${XEN}/${XEN_BUILD}/vector.S \
		${I386}/i386/copy.S

copy.o: ${I386}/i386/copy.S assym.h
	${NORMAL_S}

locore.o: ${XEN}/${XEN_BUILD}/locore.S assym.h
	${NORMAL_S}

spl.o: ${XEN}/${XEN_BUILD}/spl.S assym.h
	${NORMAL_S}

vector.o: ${XEN}/${XEN_BUILD}/vector.S assym.h
	${NORMAL_S}
.elif ${XEN_BUILD} == amd64
MD_SFILES=	${AMD64}/amd64/locore.S \
		${AMD64}/amd64/spl.S \
		${AMD64}/amd64/copy.S \
		${AMD64}/amd64/vector.S
d67 1
a67 1
locore.o: ${AMD64}/amd64/locore.S assym.h
d70 1
a70 1
spl.o: ${AMD64}/amd64/spl.S assym.h
d73 1
a73 1
copy.o: ${AMD64}/amd64/copy.S assym.h
d76 1
a76 1
vector.o: ${AMD64}/amd64/vector.S assym.h
a77 2
.endif

@


1.22
log
@Add some missing dependencies on assym.h.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.21 2008/01/01 11:35:33 yamt Exp $
d143 1
a143 1
svr4_sigcode.o mach_sigcode.o: assym.h
@


1.21
log
@add some dependencies on assym.h.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.20 2007/11/22 16:16:47 bouyer Exp $
d148 1
a148 1
netbsd32_sigcode.o: assym.h
@


1.20
log
@Pull up the bouyer-xenamd64 branch to HEAD. This brings in amd64 support
to NetBSD/Xen, both Dom0 and DomU.
@
text
@d1 1
a1 1
#	$NetBSD$
d148 1
a148 1
busfunc.o cpufunc.o netbsd32_sigcode.o: assym.h
d150 1
@


1.20.6.1
log
@Sync with HEAD
@
text
@d148 1
a148 1
cpufunc.o linux32_sigcode.o lock_stubs.o netbsd32_sigcode.o: assym.h
a149 1
busfunc.o cpufunc.o: assym.h
@


1.20.6.2
log
@Merge needed changes to genassym.cf and locore.S for xeni386 back to
arch/i386. Switch xeni386 to use the arch/i386 cpu.h.
@
text
@d32 3
d36 1
d71 1
a71 1
MD_SFILES=	${I386}/i386/locore.S \
d79 1
a79 1
locore.o: ${I386}/i386/locore.S assym.h
@


1.20.6.3
log
@Sync with HEAD
@
text
@d139 1
a139 1
lock_stubs.o svr4_sigcode.o mach_sigcode.o: assym.h
@


1.20.6.4
log
@Merge Xen support back to i386/i386/vector.S
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.20.6.3 2008/01/08 22:10:41 bouyer Exp $
d69 1
a69 1
		${I386}/i386/vector.S \
d81 1
a81 1
vector.o: ${I386}/i386/vector.S assym.h
@


1.20.6.5
log
@Merge Xen suport in i386/i386/spl.S.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.20.6.4 2008/01/09 21:30:12 bouyer Exp $
d68 1
a68 1
		${I386}/i386/spl.S \
d78 1
a78 1
spl.o: ${I386}/i386/spl.S assym.h
@


1.20.6.6
log
@Change xeni386 build to match xenamd64:
- machine/ points to xen/include/i386
- remove includes that were identical to the i386/include/ ones; the build
  will find them though the xen-ma/machine link.
- include xen files using xen/ not machine/
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.20.6.5 2008/01/09 23:54:17 bouyer Exp $
d34 5
a38 1
ARCH_INC=	$S/arch/xen/include/${XEN_BUILD}
d66 14
a79 4
MD_SFILES=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S
d81 1
a81 1
copy.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S assym.h
d83 5
d89 1
a89 1
locore.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S assym.h
d92 1
a92 1
spl.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S assym.h
d95 1
a95 1
vector.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S assym.h
d97 5
@


1.20.6.7
log
@Sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD$
d123 1
@


1.19
log
@Merge newlock2 to head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.18 2006/05/28 14:00:13 pavel Exp $
a21 1
MACHINE_ARCH?=	i386
d31 12
a42 1
GENASSYM_CONF=	${XEN}/${XEN_BUILD}/genassym.cf
d47 1
d52 7
d67 1
a67 1
MD_OBJS=	locore.o spl.o vector.o
d69 2
d73 2
a74 5
		${XEN}/${XEN_BUILD}/vector.S

.if ${MACHINE_ARCH} == i386
MD_OBJS+=	copy.o
MD_SFILES+=	${I386}/i386/copy.S
a77 1
.endif
d87 18
d116 2
d124 5
a128 1
TEXTADDR?=	c0100000
d141 1
d146 4
@


1.19.24.1
log
@sync with HEAD
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.19 2007/02/09 21:55:14 ad Exp $
d22 1
d32 1
a32 12
AMD64=          $S/arch/amd64
.if ${XEN_BUILD} == "i386"
GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
.else
GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
.endif

.if ${XEN_BUILD} == "amd64"
ARCH_INC=	$S/arch/xen/include/amd64
.elif ${XEN_BUILD} == "i386"
ARCH_INC=	$S/arch/xen/include
.endif
a36 1
DEFCOPTS=	-O2
a40 7
.if ${XEN_BUILD} == "amd64"
CPPFLAGS+=	-Dx86_64
CFLAGS+=	-mcmodel=kernel
CFLAGS+=	-mno-red-zone
.endif


d49 1
a49 1
MD_OBJS=	locore.o spl.o copy.o vector.o
a50 2

.if ${XEN_BUILD} == i386
d53 5
a57 2
		${XEN}/${XEN_BUILD}/vector.S \
		${I386}/i386/copy.S
d61 1
a70 18
.elif ${XEN_BUILD} == amd64
MD_SFILES=	${AMD64}/amd64/locore.S \
		${AMD64}/amd64/spl.S \
		${AMD64}/amd64/copy.S \
		${AMD64}/amd64/vector.S

locore.o: ${AMD64}/amd64/locore.S assym.h
	${NORMAL_S}

spl.o: ${AMD64}/amd64/spl.S assym.h
	${NORMAL_S}

copy.o: ${AMD64}/amd64/copy.S assym.h
	${NORMAL_S}

vector.o: ${AMD64}/amd64/vector.S assym.h
	${NORMAL_S}
.endif
a81 2
	rm -f machine
	ln -s ${ARCH_INC} machine
d88 1
a88 5
.if ${XEN_BUILD} == i386
TEXTADDR?=	0xc0100000
.elif ${XEN_BUILD} == amd64
TEXTADDR?=	0xffffffff80100000
.endif
a100 1
.if ${XEN_BUILD} == i386
d102 1
a102 1
lock_stubs.o svr4_sigcode.o mach_sigcode.o: assym.h
a104 5
.elif  ${XEN_BUILD} == amd64
locore.o machdep.o: Makefile
cpufunc.o linux32_sigcode.o lock_stubs.o netbsd32_sigcode.o: assym.h
.endif
busfunc.o cpufunc.o: assym.h
@


1.19.24.2
log
@sync with HEAD
@
text
@d1 1
a1 1
#	Makefile.xen,v 1.19.24.1 2008/01/09 01:50:01 matt Exp
d32 3
d36 1
d38 5
a42 1
ARCH_INC=	$S/arch/xen/include/${XEN_BUILD}
d70 22
a91 4
MD_SFILES=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S
d93 1
a93 1
copy.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S assym.h
d96 1
a96 1
locore.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S assym.h
d99 1
a99 1
spl.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S assym.h
d102 1
a102 1
vector.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S assym.h
d104 2
d143 2
a144 2
svr4_sigcode.o mach_sigcode.o: assym.h
apmcall.o pnpbioscall.o bioscall.o: assym.h
d148 1
a148 1
linux32_sigcode.o netbsd32_sigcode.o: assym.h
d150 2
a151 1
busfunc.o cpu_in_cksum.o cpufunc.o lock_stubs.o: assym.h
@


1.19.30.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.20 2007/11/22 16:16:47 bouyer Exp $
d22 1
d32 1
a32 12
AMD64=          $S/arch/amd64
.if ${XEN_BUILD} == "i386"
GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
.else
GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
.endif

.if ${XEN_BUILD} == "amd64"
ARCH_INC=	$S/arch/xen/include/amd64
.elif ${XEN_BUILD} == "i386"
ARCH_INC=	$S/arch/xen/include
.endif
a36 1
DEFCOPTS=	-O2
a40 7
.if ${XEN_BUILD} == "amd64"
CPPFLAGS+=	-Dx86_64
CFLAGS+=	-mcmodel=kernel
CFLAGS+=	-mno-red-zone
.endif


d49 1
a49 1
MD_OBJS=	locore.o spl.o copy.o vector.o
a50 2

.if ${XEN_BUILD} == i386
d53 5
a57 2
		${XEN}/${XEN_BUILD}/vector.S \
		${I386}/i386/copy.S
d61 1
a70 18
.elif ${XEN_BUILD} == amd64
MD_SFILES=	${AMD64}/amd64/locore.S \
		${AMD64}/amd64/spl.S \
		${AMD64}/amd64/copy.S \
		${AMD64}/amd64/vector.S

locore.o: ${AMD64}/amd64/locore.S assym.h
	${NORMAL_S}

spl.o: ${AMD64}/amd64/spl.S assym.h
	${NORMAL_S}

copy.o: ${AMD64}/amd64/copy.S assym.h
	${NORMAL_S}

vector.o: ${AMD64}/amd64/vector.S assym.h
	${NORMAL_S}
.endif
a81 2
	rm -f machine
	ln -s ${ARCH_INC} machine
d88 1
a88 5
.if ${XEN_BUILD} == i386
TEXTADDR?=	0xc0100000
.elif ${XEN_BUILD} == amd64
TEXTADDR?=	0xffffffff80100000
.endif
a100 1
.if ${XEN_BUILD} == i386
a104 4
.elif  ${XEN_BUILD} == amd64
locore.o machdep.o: Makefile
busfunc.o cpufunc.o netbsd32_sigcode.o: assym.h
.endif
@


1.19.30.2
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.26 2008/01/25 21:12:13 joerg Exp $
d32 3
d36 1
d38 5
a42 1
ARCH_INC=	$S/arch/xen/include/${XEN_BUILD}
d70 22
a91 4
MD_SFILES=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S
d93 1
a93 1
copy.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S assym.h
d96 1
a96 1
locore.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S assym.h
d99 1
a99 1
spl.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S assym.h
d102 1
a102 1
vector.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S assym.h
d104 2
d144 1
a144 1
apmcall.o pnpbioscall.o bioscall.o: assym.h
d148 1
a148 1
linux32_sigcode.o netbsd32_sigcode.o: assym.h
d150 1
a150 1
busfunc.o cpu_in_cksum.o cpufunc.o lock_stubs.o: assym.h
@


1.19.6.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.19 2007/02/09 21:55:14 ad Exp $
d22 1
d32 1
a32 12
AMD64=          $S/arch/amd64
.if ${XEN_BUILD} == "i386"
GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
.else
GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
.endif

.if ${XEN_BUILD} == "amd64"
ARCH_INC=	$S/arch/xen/include/amd64
.elif ${XEN_BUILD} == "i386"
ARCH_INC=	$S/arch/xen/include
.endif
a36 1
DEFCOPTS=	-O2
a40 7
.if ${XEN_BUILD} == "amd64"
CPPFLAGS+=	-Dx86_64
CFLAGS+=	-mcmodel=kernel
CFLAGS+=	-mno-red-zone
.endif


d49 1
a49 1
MD_OBJS=	locore.o spl.o copy.o vector.o
a50 2

.if ${XEN_BUILD} == i386
d53 5
a57 2
		${XEN}/${XEN_BUILD}/vector.S \
		${I386}/i386/copy.S
d61 1
a70 18
.elif ${XEN_BUILD} == amd64
MD_SFILES=	${AMD64}/amd64/locore.S \
		${AMD64}/amd64/spl.S \
		${AMD64}/amd64/copy.S \
		${AMD64}/amd64/vector.S

locore.o: ${AMD64}/amd64/locore.S assym.h
	${NORMAL_S}

spl.o: ${AMD64}/amd64/spl.S assym.h
	${NORMAL_S}

copy.o: ${AMD64}/amd64/copy.S assym.h
	${NORMAL_S}

vector.o: ${AMD64}/amd64/vector.S assym.h
	${NORMAL_S}
.endif
a81 2
	rm -f machine
	ln -s ${ARCH_INC} machine
d88 1
a88 5
.if ${XEN_BUILD} == i386
TEXTADDR?=	0xc0100000
.elif ${XEN_BUILD} == amd64
TEXTADDR?=	0xffffffff80100000
.endif
a100 1
.if ${XEN_BUILD} == i386
a104 4
.elif  ${XEN_BUILD} == amd64
locore.o machdep.o: Makefile
busfunc.o cpufunc.o netbsd32_sigcode.o: assym.h
.endif
@


1.19.22.1
log
@Sync with HEAD. amd64 Xen support needs testing.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.20 2007/11/22 16:16:47 bouyer Exp $
d22 1
d32 1
a32 12
AMD64=          $S/arch/amd64
.if ${XEN_BUILD} == "i386"
GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
.else
GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
.endif

.if ${XEN_BUILD} == "amd64"
ARCH_INC=	$S/arch/xen/include/amd64
.elif ${XEN_BUILD} == "i386"
ARCH_INC=	$S/arch/xen/include
.endif
a36 1
DEFCOPTS=	-O2
a40 7
.if ${XEN_BUILD} == "amd64"
CPPFLAGS+=	-Dx86_64
CFLAGS+=	-mcmodel=kernel
CFLAGS+=	-mno-red-zone
.endif


d49 1
a49 1
MD_OBJS=	locore.o spl.o copy.o vector.o
a50 2

.if ${XEN_BUILD} == i386
d53 5
a57 2
		${XEN}/${XEN_BUILD}/vector.S \
		${I386}/i386/copy.S
d61 1
a70 18
.elif ${XEN_BUILD} == amd64
MD_SFILES=	${AMD64}/amd64/locore.S \
		${AMD64}/amd64/spl.S \
		${AMD64}/amd64/copy.S \
		${AMD64}/amd64/vector.S

locore.o: ${AMD64}/amd64/locore.S assym.h
	${NORMAL_S}

spl.o: ${AMD64}/amd64/spl.S assym.h
	${NORMAL_S}

copy.o: ${AMD64}/amd64/copy.S assym.h
	${NORMAL_S}

vector.o: ${AMD64}/amd64/vector.S assym.h
	${NORMAL_S}
.endif
a81 2
	rm -f machine
	ln -s ${ARCH_INC} machine
d88 1
a88 5
.if ${XEN_BUILD} == i386
TEXTADDR?=	0xc0100000
.elif ${XEN_BUILD} == amd64
TEXTADDR?=	0xffffffff80100000
.endif
a100 1
.if ${XEN_BUILD} == i386
a104 4
.elif  ${XEN_BUILD} == amd64
locore.o machdep.o: Makefile
busfunc.o cpufunc.o netbsd32_sigcode.o: assym.h
.endif
@


1.19.28.1
log
@Get rid of arch/xenamd64, step 1: empty xenamd64/conf
- move xenamd64/conf/std.xen to amd64/conf/
- define arch to amd64 amd64/conf/std.xen, and i386 in xen/conf/std.xen
  (machine is xen)
- enclose content of amd64/conf/files.amd64 and i386/conf/files.i386 in
  ifndef xen/endif, so it can be transparently inclued for xen kernels
- support MACHINE_ARCH=x86_64 in xen/conf/Makefile*
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.19 2007/02/09 21:55:14 ad Exp $
d22 1
d32 1
a32 12
AMD64=          $S/arch/amd64
.if ${XEN_BUILD} == "i386"
GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
.else
GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
.endif

.if ${XEN_BUILD} == "amd64"
ARCH_INC=	xenamd64
.elif ${XEN_BUILD} == "i386"
ARCH_INC=	xen
.endif
a36 1
DEFCOPTS=	-O2
a40 7
.if ${XEN_BUILD} == "amd64"
CPPFLAGS+=	-Dx86_64
CFLAGS+=	-mcmodel=kernel
CFLAGS+=	-mno-red-zone
.endif


d49 1
a49 1
MD_OBJS=	locore.o spl.o copy.o vector.o
a50 2

.if ${XEN_BUILD} == i386
d53 5
a57 2
		${XEN}/${XEN_BUILD}/vector.S \
		${I386}/i386/copy.S
d61 1
a70 18
.elif ${XEN_BUILD} == amd64
MD_SFILES=	${AMD64}/amd64/locore.S \
		${AMD64}/amd64/spl.S \
		${AMD64}/amd64/copy.S \
		${AMD64}/amd64/vector.S

locore.o: ${AMD64}/amd64/locore.S assym.h
	${NORMAL_S}

spl.o: ${AMD64}/amd64/spl.S assym.h
	${NORMAL_S}

copy.o: ${AMD64}/amd64/copy.S assym.h
	${NORMAL_S}

vector.o: ${AMD64}/amd64/vector.S assym.h
	${NORMAL_S}
.endif
a81 2
	rm -f machine
	ln -s $S/arch/${ARCH_INC}/include machine
d88 1
a88 5
.if ${XEN_BUILD} == i386
TEXTADDR?=	0xc0100000
.elif ${XEN_BUILD} == amd64
TEXTADDR?=	0xffffffff80100000
.endif
a100 1
.if ${XEN_BUILD} == i386
a104 4
.elif  ${XEN_BUILD} == amd64
locore.o machdep.o: Makefile
busfunc.o cpufunc.o netbsd32_sigcode.o: assym.h
.endif
@


1.19.28.2
log
@Get rid of arch/xenamd64, step 2: move xenamd64/include to xen/include/amd64
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.19.28.1 2007/11/19 19:17:18 bouyer Exp $
d39 1
a39 1
ARCH_INC=	$S/arch/xen/include/amd64
d41 1
a41 1
ARCH_INC=	$S/arch/xen/include
d117 1
a117 1
	ln -s ${ARCH_INC} machine
@


1.18
log
@Give Xen its own linker script, which does not set the physical load address
specially. In Xen, the system is already in virtual mode when the kernel is
started, so the old behavior of setting physical address to virtual address
was actually correct, and the previous change made NetBSD/Xen kernels
unbootable.

Pointed out, explained and tested by <bouyer>.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.17 2006/05/14 21:57:13 elad Exp $
d38 1
a38 1
AFLAGS+=	-x assembler-with-cpp -traditional-cpp ${DBG}
@


1.18.6.1
log
@xen MD changes.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.18 2006/05/28 14:00:13 pavel Exp $
d38 1
a38 1
AFLAGS+=	-x assembler-with-cpp -traditional-cpp ${DBG} -D__XEN__
@


1.17
log
@integrate kauth.
@
text
@d1 1
a1 1
#	$NetBSD$
d91 1
a91 1
KERN_LDSCRIPT?=	kern.ldscript
@


1.17.2.1
log
@Sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.18 2006/05/28 14:00:13 pavel Exp $
d91 1
a91 1
KERN_LDSCRIPT?=	kern.ldscript.Xen
@


1.16
log
@Convert existing ath users to new Makefile, except for amd64, which needs
the rules due to needing to conditionally postprocess the HAL object file.

Macppc needs a a non-ELF HAL (EABI) object, so take care of that by default
in the atheros include file.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.15 2006/04/02 05:52:14 gdamore Exp $
@


1.15
log
@Reorganize ath layout as requested by sam@@ and suggested by dyoung@@ in
http://mail-index.netbsd.org/tech-net/2006/03/15/0000.html.

The new layout almost precisely matches FreeBSD, and should make
future imports much easier.

At the same time, import the current 0.9.16.16 HAL from FreeBSD.  According
to sam@@, this is the proper version we should be using.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.14 2006/03/08 17:06:53 dyoung Exp $
d126 2
a127 15
# XXX - Ugly, but make doesn't easily handle .o.uu (assumes it's a suffix)
# XXX - Also, config has no simple was to just add foo.o to the Makefile. 
#       It needs a pathname of some sort for "object"        
.if !empty(OBJS:M\/athhal-i386-elf.hal.o)
OBJS:=${OBJS:C/\/athhal-i386-elf.hal.o/athhal-i386-elf.hal.o/}
 
.PATH: $S/contrib/dev/ath/public
ATH_UUDEC?=	@@${_MKSHMSG} "uudecode ${.CURDIR:T}/${.TARGET}"; \
		${_MKSHECHO}\
		${UUDECODE} -p $> \> ${.TARGET}; \
		rm -f ${.TARGET}; \
		${UUDECODE} -p $> > ${.TARGET}
athhal-i386-elf.hal.o: i386-elf.hal.o.uu
	${ATH_UUDEC}
.endif
@


1.14
log
@config(8) creates opt_ah.h, no need to do so here.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.13 2006/03/03 14:55:14 he Exp $
d126 1
a126 1
# XXX - Ugly, but make doesn't easily handle .o.uue (assumes it's a suffix)
d132 1
a132 1
.PATH: $S/contrib/arch/i386/dev
d138 1
a138 1
athhal-i386-elf.hal.o: athhal-i386-elf.hal.o.uue
@


1.14.2.1
log
@Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
@
text
@d1 1
a1 1
#	$NetBSD$
d126 15
a140 2
## Include rules for Atheros WLAN
.include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
@


1.13
log
@Before symlinking opt_ah.h, make sure the target doesn't already exist.
This fixes a build problem with UPDATE set.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.12 2005/12/11 12:19:47 christos Exp $
a139 4
all depend:	opt_ah.h
opt_ah.h:	athhal-i386-elf.opt_ah.h
	rm -f ${.TARGET}
	ln -s ${.ALLSRC} ${.TARGET}
@


1.13.4.1
log
@sync with head - hopefully this will work
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.16 2006/04/04 03:13:12 gdamore Exp $
d126 19
a144 2
## Include rules for Atheros WLAN
.include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
@


1.13.2.1
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.13 2006/03/03 14:55:14 he Exp $
d140 4
@


1.13.2.2
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.13.2.1 2006/03/13 09:07:03 yamt Exp $
d126 15
a140 2
## Include rules for Atheros WLAN
.include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
@


1.13.2.3
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.13.2.2 2006/04/11 11:53:47 yamt Exp $
d91 1
a91 1
KERN_LDSCRIPT?=	kern.ldscript.Xen
@


1.12
log
@merge ktrace-lwp.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.5.2.4 2005/11/10 14:00:20 skrll Exp $
d142 1
@


1.12.4.1
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.18 2006/05/28 14:00:13 pavel Exp $
d91 1
a91 1
KERN_LDSCRIPT?=	kern.ldscript.Xen
d126 18
a143 2
## Include rules for Atheros WLAN
.include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
@


1.12.6.1
log
@Sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.16 2006/04/04 03:13:12 gdamore Exp $
d126 18
a143 2
## Include rules for Atheros WLAN
.include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
@


1.12.6.2
log
@Sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.12.6.1 2006/04/22 11:38:09 simonb Exp $
d91 1
a91 1
KERN_LDSCRIPT?=	kern.ldscript.Xen
@


1.11
log
@copy.S should belong to MD_SFILES, not MD_CFILES.
@
text
@d1 1
a1 1
#	$NetBSD$
@


1.10
log
@some assym cleanup.
- move copyin and friends from locore.S to their own file, copy.S.
  share it between i386 and xen.
- defparam KERNBASE and kill KERNBASE_LOCORE hack.
- add more symbols to assym.h and use it where appropriate.
@
text
@d57 1
a57 1
MD_CFILES+=	${I386}/i386/copy.S
@


1.9
log
@Resolve conflicts in importation of 18-May-2005 ath(4) / net80211(9)
from FreeBSD.  Introduce compatibility shims (sys/dev/ic/ath_netbsd.[ch],
sys/net80211/ieee80211_netbsd.[ch]).  Update drivers (an, atu, atw,
awi, ipw, iwi, rtw, wi) for the new net80211(9) API.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.8 2005/06/19 20:28:14 chs Exp $
d31 1
d51 2
a52 1
MD_SFILES=	${XEN}/${XEN_BUILD}/locore.S ${XEN}/${XEN_BUILD}/spl.S \
d55 8
@


1.9.2.1
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.9 2005/06/22 06:14:51 dyoung Exp $
a30 1
I386=		$S/arch/i386
d50 1
a50 2
MD_SFILES=	${XEN}/${XEN_BUILD}/locore.S \
		${XEN}/${XEN_BUILD}/spl.S \
a52 8
.if ${MACHINE_ARCH} == i386
MD_OBJS+=	copy.o
MD_SFILES+=	${I386}/i386/copy.S

copy.o: ${I386}/i386/copy.S assym.h
	${NORMAL_S}
.endif

d81 1
a81 1
KERN_LDSCRIPT?=	kern.ldscript.Xen
d116 18
a133 2
## Include rules for Atheros WLAN
.include "$S/contrib/dev/ath/netbsd/Makefile.ath.inc"
@


1.9.2.2
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.9.2.1 2006/06/21 14:58:06 yamt Exp $
d38 1
a38 1
AFLAGS+=	-x assembler-with-cpp -traditional-cpp ${DBG} -D__XEN__
@


1.9.2.3
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.9.2.2 2007/02/26 09:08:52 yamt Exp $
d22 1
d32 1
a32 12
AMD64=          $S/arch/amd64
.if ${XEN_BUILD} == "i386"
GENASSYM_CONF=	$S/arch/xen/i386/genassym.cf
.else
GENASSYM_CONF=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/genassym.cf
.endif

.if ${XEN_BUILD} == "amd64"
ARCH_INC=	$S/arch/xen/include/amd64
.elif ${XEN_BUILD} == "i386"
ARCH_INC=	$S/arch/xen/include
.endif
a36 1
DEFCOPTS=	-O2
a40 7
.if ${XEN_BUILD} == "amd64"
CPPFLAGS+=	-Dx86_64
CFLAGS+=	-mcmodel=kernel
CFLAGS+=	-mno-red-zone
.endif


d49 1
a49 1
MD_OBJS=	locore.o spl.o copy.o vector.o
a50 2

.if ${XEN_BUILD} == i386
d53 5
a57 2
		${XEN}/${XEN_BUILD}/vector.S \
		${I386}/i386/copy.S
d61 1
a70 18
.elif ${XEN_BUILD} == amd64
MD_SFILES=	${AMD64}/amd64/locore.S \
		${AMD64}/amd64/spl.S \
		${AMD64}/amd64/copy.S \
		${AMD64}/amd64/vector.S

locore.o: ${AMD64}/amd64/locore.S assym.h
	${NORMAL_S}

spl.o: ${AMD64}/amd64/spl.S assym.h
	${NORMAL_S}

copy.o: ${AMD64}/amd64/copy.S assym.h
	${NORMAL_S}

vector.o: ${AMD64}/amd64/vector.S assym.h
	${NORMAL_S}
.endif
a81 2
	rm -f machine
	ln -s ${ARCH_INC} machine
d88 1
a88 5
.if ${XEN_BUILD} == i386
TEXTADDR?=	0xc0100000
.elif ${XEN_BUILD} == amd64
TEXTADDR?=	0xffffffff80100000
.endif
a100 1
.if ${XEN_BUILD} == i386
a104 4
.elif  ${XEN_BUILD} == amd64
locore.o machdep.o: Makefile
busfunc.o cpufunc.o netbsd32_sigcode.o: assym.h
.endif
@


1.9.2.4
log
@sync with head
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.9.2.3 2007/12/07 17:27:03 yamt Exp $
d32 3
d36 1
d38 5
a42 1
ARCH_INC=	$S/arch/xen/include/${XEN_BUILD}
d70 22
a91 4
MD_SFILES=	$S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S \
		$S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S
d93 1
a93 1
copy.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/copy.S assym.h
d96 1
a96 1
locore.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/locore.S assym.h
d99 1
a99 1
spl.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/spl.S assym.h
d102 1
a102 1
vector.o: $S/arch/${XEN_BUILD}/${XEN_BUILD}/vector.S assym.h
d104 2
d143 1
a143 1
lock_stubs.o svr4_sigcode.o mach_sigcode.o: assym.h
d148 1
a148 1
cpufunc.o linux32_sigcode.o lock_stubs.o netbsd32_sigcode.o: assym.h
d150 1
a150 1
busfunc.o cpufunc.o: assym.h
@


1.9.2.5
log
@sync with head.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.9.2.4 2008/01/21 09:40:19 yamt Exp $
d115 2
a116 2
svr4_sigcode.o mach_sigcode.o: assym.h
apmcall.o pnpbioscall.o bioscall.o: assym.h
d120 1
a120 1
linux32_sigcode.o netbsd32_sigcode.o: assym.h
d122 1
a122 1
busfunc.o cpu_in_cksum.o cpufunc.o lock_stubs.o: assym.h
@


1.8
log
@copy the athhal glue from Makefile.i386.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.7 2005/06/07 18:11:34 sjg Exp $
d119 2
a120 2
.if !empty(OBJS:M\/athhal-elf.o)
OBJS:=${OBJS:C/\/athhal-elf.o/athhal-elf.o/}
d122 1
a122 1
.PATH: $S/../contrib/sys/arch/${MACHINE_ARCH}/dev
d128 1
a128 1
athhal-elf.o: athhal-elf-o.uue
d130 3
@


1.7
log
@Sometimes .BEGIN target is not wanted - eg in sub-make's.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.6 2005/05/31 04:03:11 christos Exp $
d116 16
@


1.6
log
@s/GENASSYM/GENASSYM_CONF/ so we can use "GENASSYM" as the program name.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.5 2004/06/21 18:20:09 jmc Exp $
d62 1
d73 1
@


1.5
log
@Ignore errors on some rm -rf's for platforms that aren't quite
POSIX compliant
and return errors on r/o source (FreeBSD) for -rf. Fixes PR#25022
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.4 2004/06/04 04:45:51 thorpej Exp $
d31 1
a31 1
GENASSYM=	${XEN}/${XEN_BUILD}/genassym.cf
@


1.5.2.1
log
@file Makefile.xen was added on branch ktrace-lwp on 2004-08-03 10:43:10 +0000
@
text
@d1 122
@


1.5.2.2
log
@Sync with HEAD
@
text
@a0 122
#	$NetBSD: Makefile.xen,v 1.5.2.1 2004/08/03 10:43:10 skrll Exp $
#	NetBSD: Makefile.i386,v 1.132 2003/07/05 16:56:10 simonb 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/xen/conf/``machineid''
# after which you should do
#	config machineid
# Machine generic makefile changes should be made in
#	/sys/arch/xen/conf/Makefile.xen
# 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_*"

.include "$S/arch/xen/conf/Makefile.arch.inc"
MACHINE_ARCH?=	i386
USETOOLS?=	no
NEED_OWN_INSTALL_TARGET?=no
.include <bsd.own.mk>

##
## (1) port identification
##
XEN=		$S/arch/xen
GENASSYM=	${XEN}/${XEN_BUILD}/genassym.cf

##
## (2) compile settings
##
CPPFLAGS+=	-D${XEN_BUILD}
AFLAGS+=	-x assembler-with-cpp -traditional-cpp ${DBG}
EXTRA_INCLUDES=	-I${.CURDIR}/xen-ma

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

##
## (4) local objects, compile rules, and dependencies
##
MD_OBJS=	locore.o spl.o vector.o
MD_CFILES=
MD_SFILES=	${XEN}/${XEN_BUILD}/locore.S ${XEN}/${XEN_BUILD}/spl.S \
		${XEN}/${XEN_BUILD}/vector.S

locore.o: ${XEN}/${XEN_BUILD}/locore.S assym.h
	${NORMAL_S}

spl.o: ${XEN}/${XEN_BUILD}/spl.S assym.h
	${NORMAL_S}

vector.o: ${XEN}/${XEN_BUILD}/vector.S assym.h
	${NORMAL_S}

.if !make(obj) && !make(clean) && !make(cleandir)
.BEGIN:
.for A in ${XEN_MACHINE_ARCHS}
	rm -f ${A}
	ln -s $S/arch/${A}/include ${A}
.endfor
	-rm -rf xen-ma
	mkdir xen-ma
	ln -s ../${XEN_BUILD} xen-ma/machine
.endif

##
## (5) link settings
##
TEXTADDR?=	c0100000
LINKFLAGS_NORMAL=	-X
.if (${OBJECT_FMT} == "ELF")
KERN_LDSCRIPT?=	kern.ldscript
LINKFORMAT=	-T $S/arch/${XEN_BUILD}/conf/${KERN_LDSCRIPT}
.else
LINKFORMAT=	-z
.endif

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

freebsd_sigcode.o ibcs2_sigcode.o linux_sigcode.o: assym.h
svr4_sigcode.o mach_sigcode.o: assym.h
apmcall.o in_cksum.o pnpbioscall.o bioscall.o: assym.h
mptramp.o: assym.h
clock.o: config_time.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.5.2.3
log
@Sync with HEAD.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.5.2.2 2004/09/18 14:42:43 skrll Exp $
@


1.5.2.4
log
@Fix the sync with head I botched.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.5.2.3 2004/09/21 13:24:36 skrll Exp $
@


1.5.2.5
log
@Sync with HEAD. Here we go again...
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.5.2.4 2005/11/10 14:00:20 skrll Exp $
d31 1
a31 2
I386=		$S/arch/i386
GENASSYM_CONF=	${XEN}/${XEN_BUILD}/genassym.cf
d50 1
a50 2
MD_SFILES=	${XEN}/${XEN_BUILD}/locore.S \
		${XEN}/${XEN_BUILD}/spl.S \
a52 8
.if ${MACHINE_ARCH} == i386
MD_OBJS+=	copy.o
MD_SFILES+=	${I386}/i386/copy.S

copy.o: ${I386}/i386/copy.S assym.h
	${NORMAL_S}
.endif

a61 1
.ifndef noBEGIN
a71 1
.endif
a113 19
# XXX - Ugly, but make doesn't easily handle .o.uue (assumes it's a suffix)
# XXX - Also, config has no simple was to just add foo.o to the Makefile. 
#       It needs a pathname of some sort for "object"        
.if !empty(OBJS:M\/athhal-i386-elf.hal.o)
OBJS:=${OBJS:C/\/athhal-i386-elf.hal.o/athhal-i386-elf.hal.o/}
 
.PATH: $S/contrib/arch/i386/dev
ATH_UUDEC?=	@@${_MKSHMSG} "uudecode ${.CURDIR:T}/${.TARGET}"; \
		${_MKSHECHO}\
		${UUDECODE} -p $> \> ${.TARGET}; \
		rm -f ${.TARGET}; \
		${UUDECODE} -p $> > ${.TARGET}
athhal-i386-elf.hal.o: athhal-i386-elf.hal.o.uue
	${ATH_UUDEC}
all depend:	opt_ah.h
opt_ah.h:	athhal-i386-elf.opt_ah.h
	ln -s ${.ALLSRC} ${.TARGET}
.endif

@


1.5.14.1
log
@Apply patch (requested by bouyer in ticket #1231):
Add support for ath at pci for XEN domain0.
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.5 2004/06/21 18:20:09 jmc Exp $
a113 16
# XXX - Ugly, but make doesn't easily handle .o.uue (assumes it's a suffix)
# XXX - Also, config has no simple was to just add foo.o to the Makefile. 
#       It needs a pathname of some sort for "object"        
.if !empty(OBJS:M\/athhal-elf.o)
OBJS:=${OBJS:C/\/athhal-elf.o/athhal-elf.o/}
 
.PATH: $S/../contrib/sys/arch/i386/dev
ATH_UUDEC?=	@@${_MKSHMSG} "uudecode ${.CURDIR:T}/${.TARGET}"; \
		${_MKSHECHO}\
		${UUDECODE} -p $> \> ${.TARGET}; \
		rm -f ${.TARGET}; \
		${UUDECODE} -p $> > ${.TARGET}
athhal-elf.o: athhal-elf-o.uue
	${ATH_UUDEC}
.endif

@


1.4
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.xen,v 1.3 2004/05/14 14:07:46 cl Exp $
d68 1
a68 1
	rm -rf xen-ma
@


1.3
log
@use relative links:  using $S fails if $S is relative to another dir
than the one where it's used
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.2 2004/05/12 16:56:43 cl Exp $
d118 5
@


1.2
log
@``build.sh -m xen-i386 release'' now builds a release for NetBSD/xen
for i386.  The resulting release consists of:
- NetBSD/xen for i386 kernel, loader and docuemntation
- NetBSD/i386 userland sets
@
text
@d1 1
a1 1
#	$NetBSD: Makefile.xen,v 1.1 2004/03/11 21:44:08 cl Exp $
d70 1
a70 1
	ln -s $S/arch/${XEN_BUILD}/include xen-ma/machine
@


1.1
log
@Add port to the Xen virtual machine monitor.
(see http://www.cl.cam.ac.uk/Research/SRG/netos/xen/)
@
text
@d1 1
a1 1
#	$NetBSD:	$
d21 1
a22 1
MACHINE_ARCH2?=	x86
d31 1
a31 3
XEN_MA=		$S/arch/${MACHINE_ARCH}
XEN_MA2=	$S/arch/${MACHINE_ARCH2}
GENASSYM=	${XEN}/${MACHINE_ARCH}/genassym.cf
d36 1
a36 1
CPPFLAGS+=	-D${MACHINE_ARCH}
d50 2
a51 2
MD_SFILES=	${XEN}/${MACHINE_ARCH}/locore.S ${XEN}/${MACHINE_ARCH}/spl.S \
		${XEN}/${MACHINE_ARCH}/vector.S
d53 1
a53 1
locore.o: ${XEN}/${MACHINE_ARCH}/locore.S assym.h
d56 1
a56 1
spl.o: ${XEN}/${MACHINE_ARCH}/spl.S assym.h
d59 1
a59 1
vector.o: ${XEN}/${MACHINE_ARCH}/vector.S assym.h
d64 4
a67 3
	rm -f ${MACHINE_ARCH} ${MACHINE_ARCH2}
	ln -s ${XEN_MA}/include ${MACHINE_ARCH}
	ln -s ${XEN_MA2}/include ${MACHINE_ARCH2}
d70 1
a70 1
	ln -s ../${MACHINE_ARCH} xen-ma/machine
d80 1
a80 1
LINKFORMAT=	-T ${XEN_MA}/conf/${KERN_LDSCRIPT}
@


1.1.2.1
log
@Pull up revisions 1.2-1.3 (requested by cl in ticket #337):
	Upgrade xen support:
	 - add block device driver
	 - network device driver bug fixes
	 - support for vga/keyboard/mouse
	 - support for domain0 operations
	 - fix /dev/mem and i386_iopl, reboot, event dispatch
	 - fix clock support, cpu speed report, lazy fpu switching
	 - add xen12load loader
	 - sys/arch/xen parts of build.sh release support
	[cl, ticket #337]
@
text
@d1 1
a1 1
#	$NetBSD$
a20 1
.include "$S/arch/xen/conf/Makefile.arch.inc"
d22 1
d31 3
a33 1
GENASSYM=	${XEN}/${XEN_BUILD}/genassym.cf
d38 1
a38 1
CPPFLAGS+=	-D${XEN_BUILD}
d52 2
a53 2
MD_SFILES=	${XEN}/${XEN_BUILD}/locore.S ${XEN}/${XEN_BUILD}/spl.S \
		${XEN}/${XEN_BUILD}/vector.S
d55 1
a55 1
locore.o: ${XEN}/${XEN_BUILD}/locore.S assym.h
d58 1
a58 1
spl.o: ${XEN}/${XEN_BUILD}/spl.S assym.h
d61 1
a61 1
vector.o: ${XEN}/${XEN_BUILD}/vector.S assym.h
d66 3
a68 4
.for A in ${XEN_MACHINE_ARCHS}
	rm -f ${A}
	ln -s $S/arch/${A}/include ${A}
.endfor
d71 1
a71 1
	ln -s ../${XEN_BUILD} xen-ma/machine
d81 1
a81 1
LINKFORMAT=	-T $S/arch/${XEN_BUILD}/conf/${KERN_LDSCRIPT}
@


1.1.2.2
log
@Pull up revision 1.5 (requested by jmc in ticket #531):
Ignore errors on some rm -rf's for platforms that aren't quite
POSIX compliant
and return errors on r/o source (FreeBSD) for -rf. Fixes PR#25022
@
text
@d68 1
a68 1
	-rm -rf xen-ma
@


1.1.2.2.2.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.xen,v 1.1.2.2 2004/06/22 07:53:35 tron Exp $
a117 5

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