svn commit: r300688 - in projects/zfsd/head: . bin/ed bin/sh cddl/contrib/opensolaris/lib/libdtrace/common cddl/contrib/opensolaris/lib/libdtrace/riscv cddl/lib cddl/lib/libdtrace cddl/usr.sbin con...

Alan Somers asomers at FreeBSD.org
Wed May 25 16:04:54 UTC 2016


Author: asomers
Date: Wed May 25 16:04:50 2016
New Revision: 300688
URL: https://svnweb.freebsd.org/changeset/base/300688

Log:
  IFC @300628

Added:
  projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/riscv/
     - copied from r300628, head/cddl/contrib/opensolaris/lib/libdtrace/riscv/
  projects/zfsd/head/contrib/elftoolchain/libelftc/elftc_reloc_type_str.3
     - copied unchanged from r300628, head/contrib/elftoolchain/libelftc/elftc_reloc_type_str.3
  projects/zfsd/head/contrib/elftoolchain/libelftc/elftc_reloc_type_str.c
     - copied unchanged from r300628, head/contrib/elftoolchain/libelftc/elftc_reloc_type_str.c
  projects/zfsd/head/contrib/top/commands.h
     - copied unchanged from r300628, head/contrib/top/commands.h
  projects/zfsd/head/contrib/top/username.h
     - copied unchanged from r300628, head/contrib/top/username.h
  projects/zfsd/head/share/man/man9/bus_map_resource.9
     - copied unchanged from r300628, head/share/man/man9/bus_map_resource.9
  projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/riscv/
     - copied from r300628, head/sys/cddl/contrib/opensolaris/uts/riscv/
  projects/zfsd/head/sys/cddl/dev/dtrace/riscv/
     - copied from r300628, head/sys/cddl/dev/dtrace/riscv/
  projects/zfsd/head/sys/cddl/dev/fbt/riscv/
     - copied from r300628, head/sys/cddl/dev/fbt/riscv/
  projects/zfsd/head/sys/dev/bhnd/bcma/bcma_nexus.c
     - copied unchanged from r300628, head/sys/dev/bhnd/bcma/bcma_nexus.c
  projects/zfsd/head/sys/dev/bhnd/bhnd_match.h
     - copied unchanged from r300628, head/sys/dev/bhnd/bhnd_match.h
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhnd_bhndb.c
     - copied unchanged from r300628, head/sys/dev/bhnd/bhndb/bhnd_bhndb.c
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/bhnd_sprom_chipc.c
     - copied unchanged from r300628, head/sys/dev/bhnd/cores/chipc/bhnd_sprom_chipc.c
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/chipc_private.h
     - copied unchanged from r300628, head/sys/dev/bhnd/cores/chipc/chipc_private.h
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/chipc_subr.c
     - copied unchanged from r300628, head/sys/dev/bhnd/cores/chipc/chipc_subr.c
  projects/zfsd/head/sys/dev/bhnd/nvram/bhnd_sprom_subr.c
     - copied unchanged from r300628, head/sys/dev/bhnd/nvram/bhnd_sprom_subr.c
  projects/zfsd/head/sys/dev/bhnd/soc/
     - copied from r300628, head/sys/dev/bhnd/soc/
  projects/zfsd/head/sys/dev/hyperv/include/hyperv_busdma.h
     - copied unchanged from r300628, head/sys/dev/hyperv/include/hyperv_busdma.h
  projects/zfsd/head/sys/dev/hyperv/vmbus/hyperv_busdma.c
     - copied unchanged from r300628, head/sys/dev/hyperv/vmbus/hyperv_busdma.c
  projects/zfsd/head/sys/dev/hyperv/vmbus/hyperv_reg.h
     - copied unchanged from r300628, head/sys/dev/hyperv/vmbus/hyperv_reg.h
  projects/zfsd/head/sys/dev/iicbus/ofw_iicbus.c
     - copied unchanged from r300628, head/sys/dev/iicbus/ofw_iicbus.c
  projects/zfsd/head/sys/modules/vnic/
     - copied from r300628, head/sys/modules/vnic/
  projects/zfsd/head/tools/build/options/WITHOUT_SYSTEM_COMPILER
     - copied unchanged from r300628, head/tools/build/options/WITHOUT_SYSTEM_COMPILER
  projects/zfsd/head/tools/build/options/WITH_LIBSOFT
     - copied unchanged from r300628, head/tools/build/options/WITH_LIBSOFT
  projects/zfsd/head/tools/build/options/WITH_SYSTEM_COMPILER
     - copied unchanged from r300628, head/tools/build/options/WITH_SYSTEM_COMPILER
Deleted:
  projects/zfsd/head/lib/libc/aarch64/sys/brk.S
  projects/zfsd/head/lib/libc/aarch64/sys/sbrk.S
  projects/zfsd/head/sys/dev/ofw/ofw_iicbus.c
Modified:
  projects/zfsd/head/Makefile.inc1
  projects/zfsd/head/ObsoleteFiles.inc
  projects/zfsd/head/UPDATING
  projects/zfsd/head/bin/ed/cbc.c
  projects/zfsd/head/bin/sh/parser.c
  projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c
  projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_printf.c
  projects/zfsd/head/cddl/lib/Makefile
  projects/zfsd/head/cddl/lib/libdtrace/Makefile
  projects/zfsd/head/cddl/usr.sbin/Makefile
  projects/zfsd/head/contrib/binutils/gas/config/tc-arm.c
  projects/zfsd/head/contrib/bmake/ChangeLog
  projects/zfsd/head/contrib/bmake/Makefile
  projects/zfsd/head/contrib/bmake/arch.c
  projects/zfsd/head/contrib/bmake/bmake.1
  projects/zfsd/head/contrib/bmake/bmake.cat1
  projects/zfsd/head/contrib/bmake/compat.c
  projects/zfsd/head/contrib/bmake/job.c
  projects/zfsd/head/contrib/bmake/main.c
  projects/zfsd/head/contrib/bmake/make.1
  projects/zfsd/head/contrib/bmake/meta.c
  projects/zfsd/head/contrib/bmake/meta.h
  projects/zfsd/head/contrib/bmake/mk/ChangeLog
  projects/zfsd/head/contrib/bmake/mk/auto.dep.mk
  projects/zfsd/head/contrib/bmake/mk/autodep.mk
  projects/zfsd/head/contrib/bmake/mk/dirdeps.mk
  projects/zfsd/head/contrib/bmake/mk/dpadd.mk
  projects/zfsd/head/contrib/bmake/mk/final.mk
  projects/zfsd/head/contrib/bmake/mk/gendirdeps.mk
  projects/zfsd/head/contrib/bmake/mk/init.mk
  projects/zfsd/head/contrib/bmake/mk/install-mk
  projects/zfsd/head/contrib/bmake/mk/lib.mk
  projects/zfsd/head/contrib/bmake/mk/libnames.mk
  projects/zfsd/head/contrib/bmake/mk/meta.autodep.mk
  projects/zfsd/head/contrib/bmake/mk/meta.sys.mk
  projects/zfsd/head/contrib/bmake/mk/meta2deps.py
  projects/zfsd/head/contrib/bmake/mk/nls.mk
  projects/zfsd/head/contrib/bmake/mk/own.mk
  projects/zfsd/head/contrib/bmake/mk/prog.mk
  projects/zfsd/head/contrib/bmake/mk/subdir.mk
  projects/zfsd/head/contrib/bmake/mk/sys.mk
  projects/zfsd/head/contrib/bmake/mk/sys/AIX.mk
  projects/zfsd/head/contrib/bmake/mk/sys/Darwin.mk
  projects/zfsd/head/contrib/bmake/mk/sys/Generic.mk
  projects/zfsd/head/contrib/bmake/mk/sys/HP-UX.mk
  projects/zfsd/head/contrib/bmake/mk/sys/IRIX.mk
  projects/zfsd/head/contrib/bmake/mk/sys/Linux.mk
  projects/zfsd/head/contrib/bmake/mk/sys/NetBSD.mk
  projects/zfsd/head/contrib/bmake/mk/sys/OSF1.mk
  projects/zfsd/head/contrib/bmake/mk/sys/OpenBSD.mk
  projects/zfsd/head/contrib/bmake/mk/sys/SunOS.mk
  projects/zfsd/head/contrib/bmake/mk/sys/UnixWare.mk
  projects/zfsd/head/contrib/bmake/mk/warnings.mk
  projects/zfsd/head/contrib/bmake/parse.c
  projects/zfsd/head/contrib/bmake/str.c
  projects/zfsd/head/contrib/elftoolchain/addr2line/addr2line.c
  projects/zfsd/head/contrib/elftoolchain/brandelf/brandelf.c
  projects/zfsd/head/contrib/elftoolchain/common/_elftc.h
  projects/zfsd/head/contrib/elftoolchain/common/elfdefinitions.h
  projects/zfsd/head/contrib/elftoolchain/cxxfilt/cxxfilt.c
  projects/zfsd/head/contrib/elftoolchain/elfcopy/ascii.c
  projects/zfsd/head/contrib/elftoolchain/elfcopy/binary.c
  projects/zfsd/head/contrib/elftoolchain/elfcopy/elfcopy.1
  projects/zfsd/head/contrib/elftoolchain/elfcopy/elfcopy.h
  projects/zfsd/head/contrib/elftoolchain/elfcopy/main.c
  projects/zfsd/head/contrib/elftoolchain/elfcopy/sections.c
  projects/zfsd/head/contrib/elftoolchain/elfcopy/segments.c
  projects/zfsd/head/contrib/elftoolchain/elfcopy/symbols.c
  projects/zfsd/head/contrib/elftoolchain/elfdump/elfdump.c
  projects/zfsd/head/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c
  projects/zfsd/head/contrib/elftoolchain/libdwarf/libdwarf_elf_init.c
  projects/zfsd/head/contrib/elftoolchain/libdwarf/libdwarf_reloc.c
  projects/zfsd/head/contrib/elftoolchain/libelf/_libelf_config.h
  projects/zfsd/head/contrib/elftoolchain/libelf/elf_data.c
  projects/zfsd/head/contrib/elftoolchain/libelf/libelf_ar.c
  projects/zfsd/head/contrib/elftoolchain/libelf/libelf_convert.m4
  projects/zfsd/head/contrib/elftoolchain/libelftc/Makefile
  projects/zfsd/head/contrib/elftoolchain/libelftc/libelftc.h
  projects/zfsd/head/contrib/elftoolchain/libelftc/libelftc_dem_arm.c
  projects/zfsd/head/contrib/elftoolchain/libelftc/libelftc_dem_gnu2.c
  projects/zfsd/head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c
  projects/zfsd/head/contrib/elftoolchain/libelftc/make-toolchain-version
  projects/zfsd/head/contrib/elftoolchain/libpe/libpe_section.c
  projects/zfsd/head/contrib/elftoolchain/libpe/pe.h
  projects/zfsd/head/contrib/elftoolchain/nm/nm.c
  projects/zfsd/head/contrib/elftoolchain/readelf/readelf.c
  projects/zfsd/head/contrib/elftoolchain/size/size.c
  projects/zfsd/head/contrib/elftoolchain/strings/strings.c
  projects/zfsd/head/contrib/gcc/c-typeck.c
  projects/zfsd/head/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
  projects/zfsd/head/contrib/netbsd-tests/lib/libc/gen/t_dir.c
  projects/zfsd/head/contrib/netbsd-tests/lib/libc/sys/t_mlock.c
  projects/zfsd/head/contrib/top/commands.c
  projects/zfsd/head/contrib/top/display.c
  projects/zfsd/head/contrib/top/display.h
  projects/zfsd/head/contrib/top/machine.h
  projects/zfsd/head/contrib/top/screen.c
  projects/zfsd/head/contrib/top/screen.h
  projects/zfsd/head/contrib/top/top.c
  projects/zfsd/head/contrib/top/top.h
  projects/zfsd/head/contrib/top/username.c
  projects/zfsd/head/contrib/top/utils.h
  projects/zfsd/head/contrib/top/version.c
  projects/zfsd/head/etc/defaults/periodic.conf
  projects/zfsd/head/etc/mtree/BSD.usr.dist
  projects/zfsd/head/gnu/usr.bin/cc/cc_tools/Makefile
  projects/zfsd/head/gnu/usr.bin/grep/config.h
  projects/zfsd/head/include/Makefile
  projects/zfsd/head/lib/clang/include/clang/Basic/Version.inc
  projects/zfsd/head/lib/csu/aarch64/crt1.c
  projects/zfsd/head/lib/libc/aarch64/Symbol.map
  projects/zfsd/head/lib/libc/aarch64/sys/Makefile.inc
  projects/zfsd/head/lib/libc/gen/fts-compat.c
  projects/zfsd/head/lib/libc/gen/fts.c
  projects/zfsd/head/lib/libc/regex/engine.c
  projects/zfsd/head/lib/libc/rpc/clnt_bcast.c
  projects/zfsd/head/lib/libc/rpc/getnetconfig.c
  projects/zfsd/head/lib/libc/rpc/getrpcent.c
  projects/zfsd/head/lib/libc/rpc/netnamer.c
  projects/zfsd/head/lib/libc/rpc/rpcb_clnt.c
  projects/zfsd/head/lib/libc/rpc/svc_generic.c
  projects/zfsd/head/lib/libc/stdlib/random.c
  projects/zfsd/head/lib/libc/sys/vfork.2
  projects/zfsd/head/lib/libcam/camlib.c
  projects/zfsd/head/lib/libelftc/Makefile
  projects/zfsd/head/lib/libelftc/elftc_version.c
  projects/zfsd/head/lib/libmt/mtlib.c
  projects/zfsd/head/lib/libradius/radlib.h
  projects/zfsd/head/lib/libstand/uuid_from_string.c
  projects/zfsd/head/release/doc/en_US.ISO8859-1/relnotes/article.xml
  projects/zfsd/head/sbin/camcontrol/attrib.c
  projects/zfsd/head/sbin/camcontrol/camcontrol.c
  projects/zfsd/head/sbin/camcontrol/fwdownload.c
  projects/zfsd/head/sbin/camcontrol/persist.c
  projects/zfsd/head/sbin/iscontrol/fsm.c
  projects/zfsd/head/share/man/man3/bitstring.3
  projects/zfsd/head/share/man/man4/sfxge.4
  projects/zfsd/head/share/man/man4/tcp.4
  projects/zfsd/head/share/man/man5/src.conf.5
  projects/zfsd/head/share/man/man9/Makefile
  projects/zfsd/head/share/man/man9/bus_activate_resource.9
  projects/zfsd/head/share/man/man9/bus_alloc_resource.9
  projects/zfsd/head/share/man/man9/namei.9
  projects/zfsd/head/share/man/man9/rman.9
  projects/zfsd/head/share/man/man9/sglist.9
  projects/zfsd/head/share/misc/pci_vendors
  projects/zfsd/head/share/mk/bsd.compiler.mk
  projects/zfsd/head/share/mk/bsd.dep.mk
  projects/zfsd/head/share/mk/local.meta.sys.mk
  projects/zfsd/head/share/mk/src.opts.mk
  projects/zfsd/head/share/mk/src.sys.env.mk
  projects/zfsd/head/share/mk/sys.mk
  projects/zfsd/head/sys/amd64/amd64/pmap.c
  projects/zfsd/head/sys/amd64/amd64/sys_machdep.c
  projects/zfsd/head/sys/amd64/amd64/vm_machdep.c
  projects/zfsd/head/sys/amd64/linux/linux_proto.h
  projects/zfsd/head/sys/amd64/linux/linux_syscall.h
  projects/zfsd/head/sys/amd64/linux/linux_syscalls.c
  projects/zfsd/head/sys/amd64/linux/linux_sysent.c
  projects/zfsd/head/sys/amd64/linux/linux_systrace_args.c
  projects/zfsd/head/sys/amd64/linux/syscalls.master
  projects/zfsd/head/sys/amd64/linux32/linux32_proto.h
  projects/zfsd/head/sys/amd64/linux32/linux32_syscall.h
  projects/zfsd/head/sys/amd64/linux32/linux32_syscalls.c
  projects/zfsd/head/sys/amd64/linux32/linux32_sysent.c
  projects/zfsd/head/sys/amd64/linux32/linux32_systrace_args.c
  projects/zfsd/head/sys/amd64/linux32/syscalls.master
  projects/zfsd/head/sys/arm/allwinner/axp209.c
  projects/zfsd/head/sys/arm/arm/cpufunc.c
  projects/zfsd/head/sys/arm/arm/cpufunc_asm.S
  projects/zfsd/head/sys/arm/arm/cpufunc_asm_xscale.S
  projects/zfsd/head/sys/arm/arm/elf_trampoline.c
  projects/zfsd/head/sys/arm/arm/locore-v4.S
  projects/zfsd/head/sys/arm/arm/machdep.c
  projects/zfsd/head/sys/arm/at91/at91_machdep.c
  projects/zfsd/head/sys/arm/broadcom/bcm2835/bcm2835_cpufreq.c
  projects/zfsd/head/sys/arm/cavium/cns11xx/econa_machdep.c
  projects/zfsd/head/sys/arm/freescale/imx/imx6_anatop.c
  projects/zfsd/head/sys/arm/freescale/imx/imx_gpio.c
  projects/zfsd/head/sys/arm/include/_align.h
  projects/zfsd/head/sys/arm/include/cpu-v4.h
  projects/zfsd/head/sys/arm/include/param.h
  projects/zfsd/head/sys/arm/mv/mpic.c
  projects/zfsd/head/sys/arm/mv/mv_machdep.c
  projects/zfsd/head/sys/arm/mv/mv_ts.c
  projects/zfsd/head/sys/arm64/arm64/busdma_bounce.c
  projects/zfsd/head/sys/arm64/arm64/gic_v3_reg.h
  projects/zfsd/head/sys/arm64/cavium/thunder_pcie_pem.c
  projects/zfsd/head/sys/arm64/conf/DEFAULTS
  projects/zfsd/head/sys/boot/efi/loader/main.c
  projects/zfsd/head/sys/boot/i386/libi386/biosdisk.c
  projects/zfsd/head/sys/boot/i386/zfsboot/zfsboot.c
  projects/zfsd/head/sys/cam/ata/ata_da.c
  projects/zfsd/head/sys/cam/cam_ccb.h
  projects/zfsd/head/sys/cam/ctl/ctl_frontend_iscsi.c
  projects/zfsd/head/sys/cam/ctl/scsi_ctl.c
  projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
  projects/zfsd/head/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h
  projects/zfsd/head/sys/cddl/dev/dtrace/aarch64/dtrace_subr.c
  projects/zfsd/head/sys/cddl/dev/profile/profile.c
  projects/zfsd/head/sys/compat/linux/linux_file.c
  projects/zfsd/head/sys/compat/linux/linux_futex.c
  projects/zfsd/head/sys/compat/linux/linux_ioctl.c
  projects/zfsd/head/sys/compat/linux/linux_socket.c
  projects/zfsd/head/sys/compat/linuxkpi/common/include/asm/atomic-long.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/asm/uaccess.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/bitops.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/cdev.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/compat.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/completion.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/gfp.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/io.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/kernel.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/kref.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/ktime.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/list.h
  projects/zfsd/head/sys/compat/linuxkpi/common/include/linux/time.h
  projects/zfsd/head/sys/compat/linuxkpi/common/src/linux_compat.c
  projects/zfsd/head/sys/compat/linuxkpi/common/src/linux_pci.c
  projects/zfsd/head/sys/compat/ndis/subr_ntoskrnl.c
  projects/zfsd/head/sys/conf/Makefile.riscv
  projects/zfsd/head/sys/conf/files
  projects/zfsd/head/sys/conf/files.amd64
  projects/zfsd/head/sys/conf/files.arm64
  projects/zfsd/head/sys/conf/files.i386
  projects/zfsd/head/sys/conf/files.powerpc
  projects/zfsd/head/sys/conf/files.riscv
  projects/zfsd/head/sys/conf/kern.post.mk
  projects/zfsd/head/sys/contrib/ipfilter/netinet/ip_frag.c
  projects/zfsd/head/sys/contrib/ipfilter/netinet/ip_frag.h
  projects/zfsd/head/sys/dev/acpi_support/acpi_asus_wmi.c
  projects/zfsd/head/sys/dev/acpi_support/acpi_ibm.c
  projects/zfsd/head/sys/dev/acpi_support/atk0110.c
  projects/zfsd/head/sys/dev/acpica/acpi_pcib_pci.c
  projects/zfsd/head/sys/dev/acpica/acpi_thermal.c
  projects/zfsd/head/sys/dev/amdtemp/amdtemp.c
  projects/zfsd/head/sys/dev/an/if_an.c
  projects/zfsd/head/sys/dev/ath/ath_hal/ah_regdomain.c
  projects/zfsd/head/sys/dev/ath/ath_hal/ah_regdomain.h
  projects/zfsd/head/sys/dev/bhnd/bcma/bcma_bhndb.c
  projects/zfsd/head/sys/dev/bhnd/bhnd.c
  projects/zfsd/head/sys/dev/bhnd/bhnd.h
  projects/zfsd/head/sys/dev/bhnd/bhnd_bus_if.m
  projects/zfsd/head/sys/dev/bhnd/bhnd_subr.c
  projects/zfsd/head/sys/dev/bhnd/bhnd_types.h
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhndb.c
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhndb.h
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhndb_hwdata.c
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhndb_pci_hwdata.c
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhndb_pci_sprom.c
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhndb_private.h
  projects/zfsd/head/sys/dev/bhnd/bhndb/bhndb_subr.c
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/bhnd_chipc_if.m
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/chipc.c
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/chipc.h
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/chipcreg.h
  projects/zfsd/head/sys/dev/bhnd/cores/chipc/chipcvar.h
  projects/zfsd/head/sys/dev/bhnd/cores/pci/bhnd_pci.c
  projects/zfsd/head/sys/dev/bhnd/cores/pci/bhnd_pci_hostb.c
  projects/zfsd/head/sys/dev/bhnd/cores/pcie2/bhnd_pcie2.c
  projects/zfsd/head/sys/dev/bhnd/cores/pcie2/bhnd_pcie2_hostb.c
  projects/zfsd/head/sys/dev/bhnd/nvram/bhnd_nvram.h
  projects/zfsd/head/sys/dev/bhnd/nvram/bhnd_sprom.c
  projects/zfsd/head/sys/dev/bhnd/nvram/bhnd_spromvar.h
  projects/zfsd/head/sys/dev/bhnd/siba/siba.c
  projects/zfsd/head/sys/dev/bhnd/siba/siba_bhndb.c
  projects/zfsd/head/sys/dev/bhnd/siba/siba_subr.c
  projects/zfsd/head/sys/dev/bhnd/siba/sibavar.h
  projects/zfsd/head/sys/dev/bhnd/tools/bus_macro.sh
  projects/zfsd/head/sys/dev/bwn/if_bwn.c
  projects/zfsd/head/sys/dev/bwn/if_bwn_pci.c
  projects/zfsd/head/sys/dev/bwn/if_bwn_phy_common.c
  projects/zfsd/head/sys/dev/ciss/ciss.c
  projects/zfsd/head/sys/dev/coretemp/coretemp.c
  projects/zfsd/head/sys/dev/cpuctl/cpuctl.c
  projects/zfsd/head/sys/dev/cxgbe/cxgbei/icl_cxgbei.c
  projects/zfsd/head/sys/dev/cxgbe/tom/t4_ddp.c
  projects/zfsd/head/sys/dev/gpio/gpioiic.c
  projects/zfsd/head/sys/dev/gpio/gpioled.c
  projects/zfsd/head/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c
  projects/zfsd/head/sys/dev/hyperv/vmbus/hv_connection.c
  projects/zfsd/head/sys/dev/hyperv/vmbus/hv_hv.c
  projects/zfsd/head/sys/dev/hyperv/vmbus/hv_vmbus_drv_freebsd.c
  projects/zfsd/head/sys/dev/hyperv/vmbus/hv_vmbus_priv.h
  projects/zfsd/head/sys/dev/hyperv/vmbus/vmbus_var.h
  projects/zfsd/head/sys/dev/iicbus/ds3231reg.h
  projects/zfsd/head/sys/dev/iicbus/iic.c
  projects/zfsd/head/sys/dev/iicbus/iic.h
  projects/zfsd/head/sys/dev/iicbus/iicbb_if.m
  projects/zfsd/head/sys/dev/iicbus/iiconf.c
  projects/zfsd/head/sys/dev/iicbus/lm75.c
  projects/zfsd/head/sys/dev/iscsi/icl.c
  projects/zfsd/head/sys/dev/iscsi/icl.h
  projects/zfsd/head/sys/dev/iscsi/icl_soft.c
  projects/zfsd/head/sys/dev/iscsi/iscsi.c
  projects/zfsd/head/sys/dev/isp/isp_freebsd.c
  projects/zfsd/head/sys/dev/iwm/if_iwm.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_binding.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_mac_ctxt.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_pcie_trans.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_phy_ctxt.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_phy_db.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_power.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_scan.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_time_event.c
  projects/zfsd/head/sys/dev/iwm/if_iwm_util.c
  projects/zfsd/head/sys/dev/ixl/if_ixl.c
  projects/zfsd/head/sys/dev/mlx5/mlx5_en/en.h
  projects/zfsd/head/sys/dev/mlx5/mlx5_en/mlx5_en_ethtool.c
  projects/zfsd/head/sys/dev/mlx5/mlx5_en/mlx5_en_main.c
  projects/zfsd/head/sys/dev/mlx5/mlx5_en/mlx5_en_tx.c
  projects/zfsd/head/sys/dev/mwl/if_mwl.c
  projects/zfsd/head/sys/dev/ntb/if_ntb/if_ntb.c
  projects/zfsd/head/sys/dev/ntb/ntb_hw/ntb_hw.c
  projects/zfsd/head/sys/dev/nvram2env/nvram2env.c
  projects/zfsd/head/sys/dev/pccbb/pccbb_pci.c
  projects/zfsd/head/sys/dev/pci/pci_host_generic.c
  projects/zfsd/head/sys/dev/pci/pci_pci.c
  projects/zfsd/head/sys/dev/pci/pcib_private.h
  projects/zfsd/head/sys/dev/sfxge/common/ef10_ev.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_filter.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_impl.h
  projects/zfsd/head/sys/dev/sfxge/common/ef10_intr.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_mac.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_mcdi.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_nic.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_nvram.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_phy.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_rx.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_tx.c
  projects/zfsd/head/sys/dev/sfxge/common/ef10_vpd.c
  projects/zfsd/head/sys/dev/sfxge/common/efsys.h
  projects/zfsd/head/sys/dev/sfxge/common/efx.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_bootcfg.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_check.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_crc32.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_ev.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_filter.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_hash.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_impl.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_intr.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_lic.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_mac.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_mcdi.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_mcdi.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_mon.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_nic.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_nvram.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_phy.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_phy_ids.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_port.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_regs.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_regs_ef10.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_regs_pci.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_rx.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_sram.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_tx.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_types.h
  projects/zfsd/head/sys/dev/sfxge/common/efx_vpd.c
  projects/zfsd/head/sys/dev/sfxge/common/efx_wol.c
  projects/zfsd/head/sys/dev/sfxge/common/hunt_impl.h
  projects/zfsd/head/sys/dev/sfxge/common/hunt_nic.c
  projects/zfsd/head/sys/dev/sfxge/common/hunt_phy.c
  projects/zfsd/head/sys/dev/sfxge/common/mcdi_mon.c
  projects/zfsd/head/sys/dev/sfxge/common/mcdi_mon.h
  projects/zfsd/head/sys/dev/sfxge/common/medford_impl.h
  projects/zfsd/head/sys/dev/sfxge/common/medford_nic.c
  projects/zfsd/head/sys/dev/sfxge/common/siena_flash.h
  projects/zfsd/head/sys/dev/sfxge/common/siena_impl.h
  projects/zfsd/head/sys/dev/sfxge/common/siena_mac.c
  projects/zfsd/head/sys/dev/sfxge/common/siena_mcdi.c
  projects/zfsd/head/sys/dev/sfxge/common/siena_nic.c
  projects/zfsd/head/sys/dev/sfxge/common/siena_nvram.c
  projects/zfsd/head/sys/dev/sfxge/common/siena_phy.c
  projects/zfsd/head/sys/dev/sfxge/common/siena_sram.c
  projects/zfsd/head/sys/dev/sfxge/common/siena_vpd.c
  projects/zfsd/head/sys/dev/sfxge/sfxge.c
  projects/zfsd/head/sys/dev/sfxge/sfxge.h
  projects/zfsd/head/sys/dev/sfxge/sfxge_dma.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_ev.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_intr.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_ioc.h
  projects/zfsd/head/sys/dev/sfxge/sfxge_mcdi.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_nvram.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_port.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_rx.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_rx.h
  projects/zfsd/head/sys/dev/sfxge/sfxge_tx.c
  projects/zfsd/head/sys/dev/sfxge/sfxge_tx.h
  projects/zfsd/head/sys/dev/sfxge/sfxge_version.h
  projects/zfsd/head/sys/dev/siba/siba_bwn.c
  projects/zfsd/head/sys/dev/urtwn/if_urtwn.c
  projects/zfsd/head/sys/dev/urtwn/if_urtwnreg.h
  projects/zfsd/head/sys/dev/vnic/mrml_bridge.c
  projects/zfsd/head/sys/dev/vnic/nic_main.c
  projects/zfsd/head/sys/dev/vnic/nicvf_main.c
  projects/zfsd/head/sys/dev/vnic/thunder_bgx.c
  projects/zfsd/head/sys/dev/vnic/thunder_mdio.c
  projects/zfsd/head/sys/dev/wi/if_wi.c
  projects/zfsd/head/sys/fs/cd9660/cd9660_vfsops.c
  projects/zfsd/head/sys/fs/devfs/devfs_devs.c
  projects/zfsd/head/sys/fs/ext2fs/ext2_alloc.c
  projects/zfsd/head/sys/fs/ext2fs/ext2_vfsops.c
  projects/zfsd/head/sys/fs/msdosfs/msdosfs_vfsops.c
  projects/zfsd/head/sys/fs/udf/udf_vfsops.c
  projects/zfsd/head/sys/geom/eli/g_eli.c
  projects/zfsd/head/sys/geom/geom.h
  projects/zfsd/head/sys/geom/geom_event.c
  projects/zfsd/head/sys/geom/geom_kern.c
  projects/zfsd/head/sys/geom/geom_mbr.c
  projects/zfsd/head/sys/geom/geom_pc98.c
  projects/zfsd/head/sys/geom/geom_subr.c
  projects/zfsd/head/sys/geom/journal/g_journal.c
  projects/zfsd/head/sys/geom/mirror/g_mirror.c
  projects/zfsd/head/sys/geom/mountver/g_mountver.c
  projects/zfsd/head/sys/geom/raid/g_raid.c
  projects/zfsd/head/sys/geom/raid3/g_raid3.c
  projects/zfsd/head/sys/gnu/dev/bwn/phy_n/if_bwn_phy_n_core.c
  projects/zfsd/head/sys/i386/i386/sys_machdep.c
  projects/zfsd/head/sys/i386/i386/vm_machdep.c
  projects/zfsd/head/sys/i386/linux/linux_proto.h
  projects/zfsd/head/sys/i386/linux/linux_syscall.h
  projects/zfsd/head/sys/i386/linux/linux_syscalls.c
  projects/zfsd/head/sys/i386/linux/linux_sysent.c
  projects/zfsd/head/sys/i386/linux/linux_systrace_args.c
  projects/zfsd/head/sys/i386/linux/syscalls.master
  projects/zfsd/head/sys/kern/bus_if.m
  projects/zfsd/head/sys/kern/kern_event.c
  projects/zfsd/head/sys/kern/kern_malloc.c
  projects/zfsd/head/sys/kern/kern_synch.c
  projects/zfsd/head/sys/kern/subr_bus.c
  projects/zfsd/head/sys/kern/subr_intr.c
  projects/zfsd/head/sys/kern/subr_rman.c
  projects/zfsd/head/sys/kern/subr_sglist.c
  projects/zfsd/head/sys/kern/subr_taskqueue.c
  projects/zfsd/head/sys/kern/subr_unit.c
  projects/zfsd/head/sys/kern/sys_socket.c
  projects/zfsd/head/sys/kern/uipc_socket.c
  projects/zfsd/head/sys/kern/vfs_aio.c
  projects/zfsd/head/sys/mips/include/clock.h
  projects/zfsd/head/sys/modules/bhnd/Makefile
  projects/zfsd/head/sys/modules/bhnd/bhndb/Makefile
  projects/zfsd/head/sys/modules/bhnd/cores/bhnd_chipc/Makefile
  projects/zfsd/head/sys/modules/hyperv/vmbus/Makefile
  projects/zfsd/head/sys/net/if_tun.h
  projects/zfsd/head/sys/net80211/ieee80211_scan_sw.c
  projects/zfsd/head/sys/netinet6/ip6_output.c
  projects/zfsd/head/sys/netinet6/nd6.c
  projects/zfsd/head/sys/netinet6/nd6.h
  projects/zfsd/head/sys/netpfil/ipfw/ip_fw_dynamic.c
  projects/zfsd/head/sys/netpfil/pf/pf.c
  projects/zfsd/head/sys/netpfil/pf/pf_norm.c
  projects/zfsd/head/sys/powerpc/powermac/powermac_thermal.h
  projects/zfsd/head/sys/powerpc/powermac/smu.c
  projects/zfsd/head/sys/powerpc/powermac/smusat.c
  projects/zfsd/head/sys/powerpc/powerpc/exec_machdep.c
  projects/zfsd/head/sys/riscv/include/frame.h
  projects/zfsd/head/sys/riscv/include/riscvreg.h
  projects/zfsd/head/sys/riscv/riscv/exception.S
  projects/zfsd/head/sys/riscv/riscv/trap.c
  projects/zfsd/head/sys/rpc/svc.c
  projects/zfsd/head/sys/sparc64/include/vm.h
  projects/zfsd/head/sys/sparc64/sparc64/vm_machdep.c
  projects/zfsd/head/sys/sys/_task.h
  projects/zfsd/head/sys/sys/bitstring.h
  projects/zfsd/head/sys/sys/bus.h
  projects/zfsd/head/sys/sys/kobj.h
  projects/zfsd/head/sys/sys/malloc.h
  projects/zfsd/head/sys/sys/param.h
  projects/zfsd/head/sys/sys/rman.h
  projects/zfsd/head/sys/sys/sglist.h
  projects/zfsd/head/sys/sys/sysent.h
  projects/zfsd/head/sys/sys/taskqueue.h
  projects/zfsd/head/sys/sys/vmmeter.h
  projects/zfsd/head/sys/ufs/ffs/ffs_alloc.c
  projects/zfsd/head/sys/ufs/ffs/ffs_vfsops.c
  projects/zfsd/head/sys/vm/swap_pager.c
  projects/zfsd/head/sys/vm/vm.h
  projects/zfsd/head/sys/vm/vm_fault.c
  projects/zfsd/head/sys/vm/vm_glue.c
  projects/zfsd/head/sys/vm/vm_page.c
  projects/zfsd/head/sys/x86/x86/nexus.c
  projects/zfsd/head/tests/sys/aio/aio_test.c
  projects/zfsd/head/tests/sys/kern/Makefile
  projects/zfsd/head/tests/sys/sys/bitstring_test.c
  projects/zfsd/head/usr.bin/bmake/Makefile
  projects/zfsd/head/usr.bin/kdump/kdump.c
  projects/zfsd/head/usr.bin/mt/mt.1
  projects/zfsd/head/usr.sbin/apmd/apmd.c
  projects/zfsd/head/usr.sbin/apmd/apmdlex.l
  projects/zfsd/head/usr.sbin/apmd/apmdparse.y
  projects/zfsd/head/usr.sbin/bsdinstall/scripts/zfsboot
  projects/zfsd/head/usr.sbin/camdd/camdd.c
  projects/zfsd/head/usr.sbin/iscsid/Makefile
  projects/zfsd/head/usr.sbin/mptutil/mpt_cam.c
  projects/zfsd/head/usr.sbin/periodic/periodic.8
  projects/zfsd/head/usr.sbin/periodic/periodic.sh
  projects/zfsd/head/usr.sbin/pw/pw_log.c
  projects/zfsd/head/usr.sbin/rpc.yppasswdd/yppasswdd_server.c
Directory Properties:
  projects/zfsd/head/   (props changed)
  projects/zfsd/head/cddl/   (props changed)
  projects/zfsd/head/cddl/contrib/opensolaris/   (props changed)
  projects/zfsd/head/contrib/binutils/   (props changed)
  projects/zfsd/head/contrib/bmake/   (props changed)
  projects/zfsd/head/contrib/elftoolchain/   (props changed)
  projects/zfsd/head/contrib/elftoolchain/brandelf/   (props changed)
  projects/zfsd/head/contrib/elftoolchain/elfdump/   (props changed)
  projects/zfsd/head/contrib/gcc/   (props changed)
  projects/zfsd/head/contrib/llvm/   (props changed)
  projects/zfsd/head/contrib/llvm/tools/clang/   (props changed)
  projects/zfsd/head/contrib/top/   (props changed)
  projects/zfsd/head/gnu/usr.bin/cc/cc_tools/   (props changed)
  projects/zfsd/head/sys/cddl/contrib/opensolaris/   (props changed)
  projects/zfsd/head/sys/contrib/ipfilter/   (props changed)

Modified: projects/zfsd/head/Makefile.inc1
==============================================================================
--- projects/zfsd/head/Makefile.inc1	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/Makefile.inc1	Wed May 25 16:04:50 2016	(r300688)
@@ -48,6 +48,7 @@
 .error "Both TARGET and TARGET_ARCH must be defined."
 .endif
 
+SRCDIR?=	${.CURDIR}
 LOCALBASE?=	/usr/local
 
 # Cross toolchain changes must be in effect before bsd.compiler.mk
@@ -56,8 +57,104 @@ LOCALBASE?=	/usr/local
 .include "${LOCALBASE}/share/toolchains/${CROSS_TOOLCHAIN}.mk"
 CROSSENV+=CROSS_TOOLCHAIN="${CROSS_TOOLCHAIN}"
 .endif
-.include <bsd.compiler.mk>		# don't depend on src.opts.mk doing it
-.include "share/mk/src.opts.mk"	
+.if defined(CROSS_TOOLCHAIN_PREFIX)
+CROSS_COMPILER_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
+.endif
+
+XCOMPILERS=	CC CXX CPP
+.for COMPILER in ${XCOMPILERS}
+.if defined(CROSS_COMPILER_PREFIX)
+X${COMPILER}?=	${CROSS_COMPILER_PREFIX}${${COMPILER}}
+.else
+X${COMPILER}?=	${${COMPILER}}
+.endif
+.endfor
+# If a full path to an external cross compiler is given, don't build
+# a cross compiler.
+.if ${XCC:N${CCACHE_BIN}:M/*}
+MK_CROSS_COMPILER=	no
+.endif
+
+# Pull in COMPILER_TYPE and COMPILER_FREEBSD_VERSION early.
+.include <bsd.compiler.mk>
+.include "share/mk/src.opts.mk"
+
+# Check if there is a local compiler that can satisfy as an external compiler.
+.if ${MK_SYSTEM_COMPILER} == "yes" && ${MK_CROSS_COMPILER} == "yes" && \
+    (${MK_CLANG_BOOTSTRAP} == "yes" || ${MK_GCC_BOOTSTRAP} == "yes") && \
+    !make(showconfig)
+# Which compiler is expected to be used?
+.if ${MK_CLANG_BOOTSTRAP} == "yes"
+_expected_compiler_type=	clang
+.elif ${MK_GCC_BOOTSTRAP} == "yes"
+_expected_compiler_type=	gcc
+.endif
+# If the expected vs CC is different then we can't skip.
+# GCC cannot be used for cross-arch yet.  For clang we pass -target later if
+# TARGET_ARCH!=MACHINE_ARCH.
+.if ${_expected_compiler_type} == ${COMPILER_TYPE} && \
+    (${COMPILER_TYPE} == "clang" || ${TARGET_ARCH} == ${MACHINE_ARCH})
+# It needs to be the same revision as we would build for the bootstrap.
+.if !defined(CROSS_COMPILER_FREEBSD_VERSION)
+.if ${_expected_compiler_type} == "clang"
+CROSS_COMPILER_FREEBSD_VERSION!= \
+	awk '$$2 == "FREEBSD_CC_VERSION" {printf("%d\n", $$3)}' \
+	${SRCDIR}/lib/clang/include/clang/Basic/Version.inc || echo unknown
+CROSS_COMPILER_VERSION!= \
+	awk '$$2 == "CLANG_VERSION" {split($$3, a, "."); print a[1] * 10000 + a[2] * 100 + a[3]}' \
+	${SRCDIR}/lib/clang/include/clang/Basic/Version.inc || echo unknown
+.elif ${_expected_compiler_type} == "gcc"
+CROSS_COMPILER_FREEBSD_VERSION!= \
+	awk '$$2 == "FBSD_CC_VER" {printf("%d\n", $$3)}' \
+	${SRCDIR}/gnu/usr.bin/cc/cc_tools/freebsd-native.h || echo unknown
+CROSS_COMPILER_VERSION!= \
+	awk -F. '{print $$1 * 10000 + $$2 * 100 + $$3}' \
+	${SRCDIR}/contrib/gcc/BASE-VER || echo unknown
+.endif
+.export CROSS_COMPILER_FREEBSD_VERSION CROSS_COMPILER_VERSION
+.endif	# !defined(CROSS_COMPILER_FREEBSD_VERSION)
+.if ${COMPILER_VERSION} == ${CROSS_COMPILER_VERSION} && \
+    ${COMPILER_FREEBSD_VERSION} == ${CROSS_COMPILER_FREEBSD_VERSION}
+# Everything matches, disable the bootstrap compiler.
+MK_CLANG_BOOTSTRAP=	no
+MK_GCC_BOOTSTRAP=	no
+CROSSENV+=	COMPILER_VERSION=${COMPILER_VERSION} \
+		COMPILER_TYPE=${COMPILER_TYPE} \
+		COMPILER_FREEBSD_VERSION=${COMPILER_FREEBSD_VERSION}
+.if make(buildworld)
+.info SYSTEM_COMPILER: Determined that CC=${CC} matches the source tree.  Not bootstrapping a cross-compiler.
+.endif
+.endif	# ${COMPILER_VERSION} == ${CROSS_COMPILER_VERSION}
+.endif	# ${_expected_compiler_type} == ${COMPILER_TYPE}
+.endif	# ${XCC:N${CCACHE_BIN}:M/*}
+
+# Handle external binutils.
+.if defined(CROSS_TOOLCHAIN_PREFIX)
+CROSS_BINUTILS_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
+.endif
+# If we do not have a bootstrap binutils (because the in-tree one does not
+# support the target architecture), provide a default cross-binutils prefix.
+# This allows aarch64 builds, for example, to automatically use the
+# aarch64-binutils port or package.
+.if !make(showconfig)
+.if !empty(BROKEN_OPTIONS:MBINUTILS_BOOTSTRAP) && \
+    !defined(CROSS_BINUTILS_PREFIX)
+CROSS_BINUTILS_PREFIX=/usr/local/${TARGET_ARCH}-freebsd/bin/
+.if !exists(${CROSS_BINUTILS_PREFIX})
+.error In-tree binutils does not support the ${TARGET_ARCH} architecture. Install the ${TARGET_ARCH}-binutils port or package or set CROSS_BINUTILS_PREFIX.
+.endif
+.endif
+.endif
+XBINUTILS=	AS AR LD NM OBJCOPY OBJDUMP RANLIB SIZE STRINGS
+.for BINUTIL in ${XBINUTILS}
+.if defined(CROSS_BINUTILS_PREFIX) && \
+    exists(${CROSS_BINUTILS_PREFIX}${${BINUTIL}})
+X${BINUTIL}?=	${CROSS_BINUTILS_PREFIX}${${BINUTIL}}
+.else
+X${BINUTIL}?=	${${BINUTIL}}
+.endif
+.endfor
+
 
 # We must do lib/ and libexec/ before bin/ in case of a mid-install error to
 # keep the users system reasonably usable.  For static->dynamic root upgrades,
@@ -67,7 +164,6 @@ CROSSENV+=CROSS_TOOLCHAIN="${CROSS_TOOLC
 # This ordering is not a guarantee though.  The only guarantee of a working
 # system here would require fine-grained ordering of all components based
 # on their dependencies.
-SRCDIR?=	${.CURDIR}
 .if !empty(SUBDIR_OVERRIDE)
 SUBDIR=	${SUBDIR_OVERRIDE}
 .else
@@ -404,42 +500,6 @@ HMAKE=		PATH=${TMPPATH} ${MAKE} LOCAL_MT
 HMAKE+=		PATH=${TMPPATH} METALOG=${METALOG} -DNO_ROOT
 .endif
 
-.if defined(CROSS_TOOLCHAIN_PREFIX)
-CROSS_COMPILER_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
-CROSS_BINUTILS_PREFIX?=${CROSS_TOOLCHAIN_PREFIX}
-.endif
-
-# If we do not have a bootstrap binutils (because the in-tree one does not
-# support the target architecture), provide a default cross-binutils prefix.
-# This allows aarch64 builds, for example, to automatically use the
-# aarch64-binutils port or package.
-.if !make(showconfig)
-.if !empty(BROKEN_OPTIONS:MBINUTILS_BOOTSTRAP) && \
-    !defined(CROSS_BINUTILS_PREFIX)
-CROSS_BINUTILS_PREFIX=/usr/local/${TARGET_ARCH}-freebsd/bin/
-.if !exists(${CROSS_BINUTILS_PREFIX})
-.error In-tree binutils does not support the ${TARGET_ARCH} architecture. Install the ${TARGET_ARCH}-binutils port or package or set CROSS_BINUTILS_PREFIX.
-.endif
-.endif
-.endif
-
-XCOMPILERS=	CC CXX CPP
-.for COMPILER in ${XCOMPILERS}
-.if defined(CROSS_COMPILER_PREFIX)
-X${COMPILER}?=	${CROSS_COMPILER_PREFIX}${${COMPILER}}
-.else
-X${COMPILER}?=	${${COMPILER}}
-.endif
-.endfor
-XBINUTILS=	AS AR LD NM OBJCOPY OBJDUMP RANLIB SIZE STRINGS
-.for BINUTIL in ${XBINUTILS}
-.if defined(CROSS_BINUTILS_PREFIX) && \
-    exists(${CROSS_BINUTILS_PREFIX}${${BINUTIL}})
-X${BINUTIL}?=	${CROSS_BINUTILS_PREFIX}${${BINUTIL}}
-.else
-X${BINUTIL}?=	${${BINUTIL}}
-.endif
-.endfor
 CROSSENV+=	CC="${XCC} ${XCFLAGS}" CXX="${XCXX} ${XCFLAGS} ${XCXXFLAGS}" \
 		CPP="${XCPP} ${XCFLAGS}" \
 		AS="${XAS}" AR="${XAR}" LD="${XLD}" NM=${XNM} \
@@ -455,7 +515,8 @@ BFLAGS+=	-B${CROSS_BINUTILS_PREFIX}
 .endif
 
 # External compiler needs sysroot and target flags.
-.if ${XCC:N${CCACHE_BIN}:M/*} || ${MK_CROSS_COMPILER} == "no"
+.if ${MK_CROSS_COMPILER} == "no" || \
+    (${MK_CLANG_BOOTSTRAP} == "no" && ${MK_GCC_BOOTSTRAP} == "no")
 .if !defined(CROSS_BINUTILS_PREFIX) || !exists(${CROSS_BINUTILS_PREFIX})
 BFLAGS+=	-B${WORLDTMP}/usr/bin
 .endif
@@ -479,7 +540,7 @@ XCFLAGS+=	-target ${TARGET_TRIPLE}
 .endif
 XCFLAGS+=	--sysroot=${WORLDTMP}
 .else
-.endif # ${XCC:M/*} || ${MK_CROSS_COMPILER} == "no"
+.endif # ${MK_CROSS_COMPILER} == "no"
 
 .if !empty(BFLAGS)
 XCFLAGS+=	${BFLAGS}
@@ -533,7 +594,7 @@ KMAKE=		${KMAKEENV} ${MAKE} ${.MAKEFLAGS
 .if ${MK_META_MODE} == "yes"
 # meta mode normally is disallowed when building from curdir==objdir, but we
 # want to allow it for the kernel build.
-KMAKE+=	.MAKE.MODE="${.MAKE.MODE} curdirOk=yes"
+KMAKEENV+=	META_MODE="${.MAKE.MODE} curdirOk=yes"
 .endif
 
 #
@@ -1715,9 +1776,7 @@ _elftctools=	lib/libelftc \
 		usr.bin/elfcopy
 .endif
 
-# If an full path to an external cross compiler is given, don't build
-# a cross compiler.
-.if ${XCC:N${CCACHE_BIN}:M/*} == "" && ${MK_CROSS_COMPILER} != "no"
+.if ${MK_CROSS_COMPILER} != "no"
 .if ${MK_CLANG_BOOTSTRAP} != "no"
 _clang=		usr.bin/clang
 _clang_libs=	lib/clang

Modified: projects/zfsd/head/ObsoleteFiles.inc
==============================================================================
--- projects/zfsd/head/ObsoleteFiles.inc	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/ObsoleteFiles.inc	Wed May 25 16:04:50 2016	(r300688)
@@ -38,6 +38,15 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20160519: remove DTrace Toolkit from base
+OLD_FILES+=usr/share/dtrace/toolkit/execsnoop
+OLD_FILES+=usr/share/dtrace/toolkit/hotkernel
+OLD_FILES+=usr/share/dtrace/toolkit/hotuser
+OLD_FILES+=usr/share/dtrace/toolkit/opensnoop
+OLD_FILES+=usr/share/dtrace/toolkit/procsystime
+OLD_DIRS+=usr/share/dtrace/toolkit
+# 20160519: stale MLINK removed
+OLD_FILES+=usr/share/man/man9/rman_await_resource.9.gz
 # 20160517: ReiserFS removed
 OLD_FILES+=usr/share/man/man5/reiserfs.5.gz
 # 20160430: kvm_getfiles(3) removed from kvm(3)

Modified: projects/zfsd/head/UPDATING
==============================================================================
--- projects/zfsd/head/UPDATING	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/UPDATING	Wed May 25 16:04:50 2016	(r300688)
@@ -31,6 +31,18 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
 	disable the most expensive debugging functionality run
 	"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20160523:
+	The bitstring(3) API has been updated with new functionality and
+	improved performance.  But it is binary-incompatible with the old API.
+	Objects built with the new headers may not be linked against objects
+	built with the old headers.
+
+20160520:
+	The brk and sbrk functions have been removed from libc on arm64.
+	Binutils from ports has been updated to not link to these
+	functions and should be updated to the latest version before
+	installing a new libc.
+
 20160517:
 	The armv6 port now defaults to hard float ABI. Limited support
 	for running both hardfloat and soft float on the same system
@@ -39,6 +51,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11
 	and packages may fail or need manual intervention to run. New
 	packages will be needed.
 
+	To update an existing self-hosted armv6hf system, you must add
+	TARGET_ARCH=armv6 on the make command line for both the build 
+	and the install steps.
+
 20160510:
 	Kernel modules compiled outside of a kernel build now default to
 	installing to /boot/modules instead of /boot/kernel.  Many kernel

Modified: projects/zfsd/head/bin/ed/cbc.c
==============================================================================
--- projects/zfsd/head/bin/ed/cbc.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/bin/ed/cbc.c	Wed May 25 16:04:50 2016	(r300688)
@@ -90,16 +90,13 @@ void
 init_des_cipher(void)
 {
 #ifdef DES
-	int i;
-
 	des_ct = des_n = 0;
 
 	/* initialize the initialization vector */
 	MEMZERO(ivec, 8);
 
 	/* initialize the padding vector */
-	for (i = 0; i < 8; i++)
-		pvec[i] = (char) (arc4random() % 256);
+	arc4random_buf(pvec, sizeof(pvec));
 #endif
 }
 
@@ -164,7 +161,7 @@ get_keyword(void)
 	/*
 	 * get the key
 	 */
-	if (*(p = getpass("Enter key: "))) {
+	if ((p = getpass("Enter key: ")) != NULL && *p != '\0') {
 
 		/*
 		 * copy it, nul-padded, into the key area

Modified: projects/zfsd/head/bin/sh/parser.c
==============================================================================
--- projects/zfsd/head/bin/sh/parser.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/bin/sh/parser.c	Wed May 25 16:04:50 2016	(r300688)
@@ -1998,7 +1998,7 @@ getprompt(void *unused __unused)
 	/*
 	 * Format prompt string.
 	 */
-	for (i = 0; (i < 127) && (*fmt != '\0'); i++, fmt++)
+	for (i = 0; (i < PROMPTLEN - 1) && (*fmt != '\0'); i++, fmt++)
 		if (*fmt == '\\')
 			switch (*++fmt) {
 
@@ -2011,7 +2011,8 @@ getprompt(void *unused __unused)
 			case 'h':
 			case 'H':
 				ps[i] = '\0';
-				gethostname(&ps[i], PROMPTLEN - i);
+				gethostname(&ps[i], PROMPTLEN - i - 1);
+				ps[PROMPTLEN - 1] = '\0';
 				/* Skip to end of hostname. */
 				trim = (*fmt == 'h') ? '.' : '\0';
 				while ((ps[i] != '\0') && (ps[i] != trim))
@@ -2061,8 +2062,9 @@ getprompt(void *unused __unused)
 				 * Emit unrecognized formats verbatim.
 				 */
 			default:
-				ps[i++] = '\\';
-				ps[i] = *fmt;
+				ps[i] = '\\';
+				if (i < PROMPTLEN - 1)
+					ps[++i] = *fmt;
 				break;
 			}
 		else

Modified: projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c
==============================================================================
--- projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c	Wed May 25 16:04:50 2016	(r300688)
@@ -250,6 +250,9 @@ printf("%s:%s(%d): DOODAD\n",__FUNCTION_
 			    dofr[j].dofr_offset + 4;
 			rel->r_info = ELF32_R_INFO(count + dep->de_global,
 			    R_PPC_REL32);
+#elif defined(__riscv__)
+/* XXX */
+printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__);
 #elif defined(__sparc)
 			/*
 			 * Add 4 bytes to hit the low half of this 64-bit
@@ -440,6 +443,8 @@ prepare_elf64(dtrace_hdl_t *dtp, const d
 			    dofr[j].dofr_offset;
 			rel->r_info = ELF64_R_INFO(count + dep->de_global,
 			    R_PPC64_REL64);
+#elif defined(__riscv__)
+/* XXX */
 #elif defined(__i386) || defined(__amd64)
 			rel->r_offset = s->dofs_offset +
 			    dofr[j].dofr_offset;
@@ -935,7 +940,15 @@ dt_modtext(dtrace_hdl_t *dtp, char *p, i
 
 	return (0);
 }
-
+#elif defined(__riscv__)
+/* XXX */
+static int
+dt_modtext(dtrace_hdl_t *dtp, char *p, int isenabled, GElf_Rela *rela,
+    uint32_t *off)
+{
+printf("%s:%s(%d): DOODAD\n",__FUNCTION__,__FILE__,__LINE__);
+	return (0);
+}
 #elif defined(__sparc)
 
 #define	DT_OP_RET		0x81c7e008

Modified: projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_printf.c
==============================================================================
--- projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_printf.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_printf.c	Wed May 25 16:04:50 2016	(r300688)
@@ -310,7 +310,8 @@ pfprint_fp(dtrace_hdl_t *dtp, FILE *fp, 
 	case sizeof (double):
 		return (dt_printf(dtp, fp, format,
 		    *((double *)addr) / n));
-#if !defined(__arm__) && !defined(__powerpc__) && !defined(__mips__)
+#if !defined(__arm__) && !defined(__powerpc__) && \
+    !defined(__mips__) && !defined(__riscv__)
 	case sizeof (long double):
 		return (dt_printf(dtp, fp, format,
 		    *((long double *)addr) / ldn));

Modified: projects/zfsd/head/cddl/lib/Makefile
==============================================================================
--- projects/zfsd/head/cddl/lib/Makefile	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/cddl/lib/Makefile	Wed May 25 16:04:50 2016	(r300688)
@@ -26,7 +26,7 @@ _libzpool=	libzpool
 .endif
 .endif
 
-.if ${MACHINE_CPUARCH} != "sparc64" && ${MACHINE_CPUARCH} != "riscv"
+.if ${MACHINE_CPUARCH} != "sparc64"
 _drti=		drti
 _libdtrace=	libdtrace
 .endif

Modified: projects/zfsd/head/cddl/lib/libdtrace/Makefile
==============================================================================
--- projects/zfsd/head/cddl/lib/libdtrace/Makefile	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/cddl/lib/libdtrace/Makefile	Wed May 25 16:04:50 2016	(r300688)
@@ -95,6 +95,10 @@ CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/ut
 CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/powerpc
 .PATH:		${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/powerpc
 .PATH:		${.CURDIR}/../../../sys/cddl/dev/dtrace/powerpc
+.elif ${MACHINE_CPUARCH} == "riscv"
+CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/riscv
+.PATH:		${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/riscv
+.PATH:		${.CURDIR}/../../../sys/cddl/dev/dtrace/riscv
 .elif ${MACHINE_CPUARCH} == "sparc64"
 CFLAGS+=	-I${OPENSOLARIS_SYS_DISTDIR}/uts/sparc
 .PATH:		${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libdtrace/sparc

Modified: projects/zfsd/head/cddl/usr.sbin/Makefile
==============================================================================
--- projects/zfsd/head/cddl/usr.sbin/Makefile	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/cddl/usr.sbin/Makefile	Wed May 25 16:04:50 2016	(r300688)
@@ -30,7 +30,8 @@ _lockstat=	lockstat
 _plockstat=	plockstat
 .endif
 
-.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm"
+.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm" || \
+    ${MACHINE_CPUARCH} == "riscv"
 _dtrace=	dtrace
 _lockstat=	lockstat
 .endif

Modified: projects/zfsd/head/contrib/binutils/gas/config/tc-arm.c
==============================================================================
--- projects/zfsd/head/contrib/binutils/gas/config/tc-arm.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/binutils/gas/config/tc-arm.c	Wed May 25 16:04:50 2016	(r300688)
@@ -2284,6 +2284,37 @@ s_unreq (int a ATTRIBUTE_UNUSED)
   demand_empty_rest_of_line ();
 }
 
+static void
+s_inst(int unused ATTRIBUTE_UNUSED)
+{
+	expressionS exp;
+
+	if (thumb_mode) {
+		as_bad(".inst not implemented for Thumb mode");
+		ignore_rest_of_line();
+		return;
+	}
+
+	if (is_it_end_of_statement()) {
+		demand_empty_rest_of_line();
+		return;
+	}
+
+	do {
+		expression(&exp);
+
+		if (exp.X_op != O_constant)
+			as_bad("constant expression required");
+		else
+			emit_expr(&exp, 4);
+
+	} while (*input_line_pointer++ == ',');
+
+	/* Put terminator back into stream. */
+	input_line_pointer--;
+	demand_empty_rest_of_line();
+}
+
 /* Directives: Instruction set selection.  */
 
 #ifdef OBJ_ELF
@@ -3837,10 +3868,10 @@ s_arm_eabi_attribute (int ignored ATTRIB
 #endif /* OBJ_ELF */
 
 static void s_arm_arch (int);
-static void s_arm_arch_extension (int);
 static void s_arm_object_arch (int);
 static void s_arm_cpu (int);
 static void s_arm_fpu (int);
+static void s_arm_arch_extension (int);
 
 #ifdef TE_PE
 
@@ -3892,9 +3923,10 @@ const pseudo_typeS md_pseudo_table[] =
   { "syntax",	   s_syntax,	  0 },
   { "cpu",	   s_arm_cpu,	  0 },
   { "arch",	   s_arm_arch,	  0 },
-  { "arch_extension",	   s_arm_arch_extension,	  0 },
   { "object_arch", s_arm_object_arch,	0 },
   { "fpu",	   s_arm_fpu,	  0 },
+  { "arch_extension",	   s_arm_arch_extension,	  0 },
+  { "inst",	   s_inst,	  0 },
 #ifdef OBJ_ELF
   { "word",	   s_arm_elf_cons, 4 },
   { "long",	   s_arm_elf_cons, 4 },

Modified: projects/zfsd/head/contrib/bmake/ChangeLog
==============================================================================
--- projects/zfsd/head/contrib/bmake/ChangeLog	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/ChangeLog	Wed May 25 16:04:50 2016	(r300688)
@@ -1,3 +1,26 @@
+2016-05-12  Simon J. Gerraty  <sjg at bad.crufty.net>
+
+	* Makefile (_MAKE_VERSION): 20160512
+	  Merge with NetBSD make, pick up
+	  o meta.c: ignore paths that match .MAKE.META.IGNORE_PATTERNS
+	    this is useful for gcov builds.
+	  o propagate errors from filemon(4).
+	
+2016-05-09  Simon J. Gerraty  <sjg at bad.crufty.net>
+
+	* Makefile (_MAKE_VERSION): 20160509
+	  Merge with NetBSD make, pick up
+	  o remove use of non-standard types u_int etc.
+	  o meta.c: apply realpath() before matching against metaIgnorePaths
+
+2016-04-04  Simon J. Gerraty  <sjg at bad.crufty.net>
+
+	* Makefile (_MAKE_VERSION): 20160404
+	  Merge with NetBSD make, pick up
+	  o allow makefile to set .MAKE.JOBS
+
+	* Makefile (PROG_NAME): use ${_MAKE_VERSION}
+
 2016-03-15  Simon J. Gerraty  <sjg at bad.crufty.net>
 
 	* Makefile (_MAKE_VERSION): 20160315

Modified: projects/zfsd/head/contrib/bmake/Makefile
==============================================================================
--- projects/zfsd/head/contrib/bmake/Makefile	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/Makefile	Wed May 25 16:04:50 2016	(r300688)
@@ -1,7 +1,7 @@
-#	$Id: Makefile,v 1.58 2016/03/15 23:39:12 sjg Exp $
+#	$Id: Makefile,v 1.63 2016/05/12 20:34:46 sjg Exp $
 
 # Base version on src date
-_MAKE_VERSION= 20160315
+_MAKE_VERSION= 20160512
 
 PROG=	bmake
 
@@ -131,9 +131,9 @@ OPTIONS_DEFAULT_NO+= \
 .include <own.mk>
 
 .if ${MK_PROG_VERSION} == "yes"
-PROG_NAME= ${PROG}-${MAKE_VERSION}
+PROG_NAME= ${PROG}-${_MAKE_VERSION}
 .if ${MK_PROG_LINK} == "yes"
-SYMLINKS+= ${PROG}-${MAKE_VERSION} ${BINDIR}/${PROG}
+SYMLINKS+= ${PROG_NAME} ${BINDIR}/${PROG}
 .endif
 .endif
 

Modified: projects/zfsd/head/contrib/bmake/arch.c
==============================================================================
--- projects/zfsd/head/contrib/bmake/arch.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/arch.c	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-/*	$NetBSD: arch.c,v 1.68 2016/02/18 18:29:14 christos Exp $	*/
+/*	$NetBSD: arch.c,v 1.69 2016/04/06 09:57:00 gson Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,14 +69,14 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: arch.c,v 1.68 2016/02/18 18:29:14 christos Exp $";
+static char rcsid[] = "$NetBSD: arch.c,v 1.69 2016/04/06 09:57:00 gson Exp $";
 #else
 #include <sys/cdefs.h>
 #ifndef lint
 #if 0
 static char sccsid[] = "@(#)arch.c	8.2 (Berkeley) 1/2/94";
 #else
-__RCSID("$NetBSD: arch.c,v 1.68 2016/02/18 18:29:14 christos Exp $");
+__RCSID("$NetBSD: arch.c,v 1.69 2016/04/06 09:57:00 gson Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -832,7 +832,7 @@ ArchSVR4Entry(Arch *ar, char *name, size
 	    }
 	if (DEBUG(ARCH)) {
 	    fprintf(debug_file, "Found svr4 archive name table with %lu entries\n",
-	            (u_long)entry);
+	            (unsigned long)entry);
 	}
 	return 0;
     }
@@ -850,7 +850,7 @@ ArchSVR4Entry(Arch *ar, char *name, size
     if (entry >= ar->fnamesize) {
 	if (DEBUG(ARCH)) {
 	    fprintf(debug_file, "SVR4 entry offset %s is greater than %lu\n",
-		   name, (u_long)ar->fnamesize);
+		   name, (unsigned long)ar->fnamesize);
 	}
 	return 2;
     }

Modified: projects/zfsd/head/contrib/bmake/bmake.1
==============================================================================
--- projects/zfsd/head/contrib/bmake/bmake.1	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/bmake.1	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-.\"	$NetBSD: make.1,v 1.255 2016/03/14 07:42:15 matthias Exp $
+.\"	$NetBSD: make.1,v 1.257 2016/05/10 23:45:45 sjg Exp $
 .\"
 .\" Copyright (c) 1990, 1993
 .\"	The Regents of the University of California.  All rights reserved.
@@ -29,7 +29,7 @@
 .\"
 .\"	from: @(#)make.1	8.4 (Berkeley) 3/19/94
 .\"
-.Dd February 19, 2016
+.Dd May 10, 2016
 .Dt MAKE 1
 .Os
 .Sh NAME
@@ -913,6 +913,9 @@ Provides a list of path prefixes that sh
 because the contents are expected to change over time.
 The default list includes:
 .Ql Pa /dev /etc /proc /tmp /var/run /var/tmp
+.It Va .MAKE.META.IGNORE_PATTERNS
+Provides a list of patterns to match against pathnames.
+Ignore any that match.
 .It Va .MAKE.META.PREFIX
 Defines the message printed for each meta file updated in "meta verbose" mode.
 The default value is:

Modified: projects/zfsd/head/contrib/bmake/bmake.cat1
==============================================================================
--- projects/zfsd/head/contrib/bmake/bmake.cat1	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/bmake.cat1	Wed May 25 16:04:50 2016	(r300688)
@@ -586,6 +586,10 @@ VVAARRIIAABBLLEE AASSSSIIGG
                      The default list includes: `_/_d_e_v _/_e_t_c _/_p_r_o_c _/_t_m_p _/_v_a_r_/_r_u_n
                      _/_v_a_r_/_t_m_p'
 
+     _._M_A_K_E_._M_E_T_A_._I_G_N_O_R_E___P_A_T_T_E_R_N_S
+                     Provides a list of patterns to match against pathnames.
+                     Ignore any that match.
+
      _._M_A_K_E_._M_E_T_A_._P_R_E_F_I_X
                      Defines the message printed for each meta file updated in
                      "meta verbose" mode.  The default value is:
@@ -1471,4 +1475,4 @@ BBUUGGSS
 
      There is no way of escaping a space character in a filename.
 
-NetBSD 5.1                     February 19, 2016                    NetBSD 5.1
+NetBSD 5.1                       May 10, 2016                       NetBSD 5.1

Modified: projects/zfsd/head/contrib/bmake/compat.c
==============================================================================
--- projects/zfsd/head/contrib/bmake/compat.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/compat.c	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-/*	$NetBSD: compat.c,v 1.104 2016/02/18 18:29:14 christos Exp $	*/
+/*	$NetBSD: compat.c,v 1.105 2016/05/12 20:28:34 sjg Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990 The Regents of the University of California.
@@ -70,14 +70,14 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: compat.c,v 1.104 2016/02/18 18:29:14 christos Exp $";
+static char rcsid[] = "$NetBSD: compat.c,v 1.105 2016/05/12 20:28:34 sjg Exp $";
 #else
 #include <sys/cdefs.h>
 #ifndef lint
 #if 0
 static char sccsid[] = "@(#)compat.c	8.2 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: compat.c,v 1.104 2016/02/18 18:29:14 christos Exp $");
+__RCSID("$NetBSD: compat.c,v 1.105 2016/05/12 20:28:34 sjg Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -586,7 +586,8 @@ Compat_Make(void *gnp, void *pgnp)
 	}
 #ifdef USE_META
 	if (useMeta && !NoExecute(gn)) {
-	    meta_job_finish(NULL);
+	    if (meta_job_finish(NULL) != 0)
+		gn->made = ERROR;
 	}
 #endif
 

Modified: projects/zfsd/head/contrib/bmake/job.c
==============================================================================
--- projects/zfsd/head/contrib/bmake/job.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/job.c	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-/*	$NetBSD: job.c,v 1.186 2016/02/18 18:29:14 christos Exp $	*/
+/*	$NetBSD: job.c,v 1.187 2016/05/12 20:28:34 sjg Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990 The Regents of the University of California.
@@ -70,14 +70,14 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: job.c,v 1.186 2016/02/18 18:29:14 christos Exp $";
+static char rcsid[] = "$NetBSD: job.c,v 1.187 2016/05/12 20:28:34 sjg Exp $";
 #else
 #include <sys/cdefs.h>
 #ifndef lint
 #if 0
 static char sccsid[] = "@(#)job.c	8.2 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: job.c,v 1.186 2016/02/18 18:29:14 christos Exp $");
+__RCSID("$NetBSD: job.c,v 1.187 2016/05/12 20:28:34 sjg Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -1072,7 +1072,11 @@ JobFinish (Job *job, WAIT_T status)
 
 #ifdef USE_META
     if (useMeta) {
-	meta_job_finish(job);
+	int x;
+
+	if ((x = meta_job_finish(job)) != 0 && status == 0) {
+	    status = x;
+	}
     }
 #endif
     

Modified: projects/zfsd/head/contrib/bmake/main.c
==============================================================================
--- projects/zfsd/head/contrib/bmake/main.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/main.c	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-/*	$NetBSD: main.c,v 1.242 2016/03/07 21:45:43 christos Exp $	*/
+/*	$NetBSD: main.c,v 1.244 2016/04/05 04:25:43 sjg Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -69,7 +69,7 @@
  */
 
 #ifndef MAKE_NATIVE
-static char rcsid[] = "$NetBSD: main.c,v 1.242 2016/03/07 21:45:43 christos Exp $";
+static char rcsid[] = "$NetBSD: main.c,v 1.244 2016/04/05 04:25:43 sjg Exp $";
 #else
 #include <sys/cdefs.h>
 #ifndef lint
@@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19
 #if 0
 static char sccsid[] = "@(#)main.c	8.3 (Berkeley) 3/19/94";
 #else
-__RCSID("$NetBSD: main.c,v 1.242 2016/03/07 21:45:43 christos Exp $");
+__RCSID("$NetBSD: main.c,v 1.244 2016/04/05 04:25:43 sjg Exp $");
 #endif
 #endif /* not lint */
 #endif
@@ -1152,14 +1152,6 @@ main(int argc, char **argv)
 	}
 
 	/*
-	 * Be compatible if user did not specify -j and did not explicitly
-	 * turned compatibility on
-	 */
-	if (!compatMake && !forceJobs) {
-		compatMake = TRUE;
-	}
-	
-	/*
 	 * Initialize archive, target and suffix modules in preparation for
 	 * parsing the makefile(s)
 	 */
@@ -1275,6 +1267,36 @@ main(int argc, char **argv)
 	Var_Append("MFLAGS", Var_Value(MAKEFLAGS, VAR_GLOBAL, &p1), VAR_GLOBAL);
 	free(p1);
 
+	if (!forceJobs && !compatMake &&
+	    Var_Exists(".MAKE.JOBS", VAR_GLOBAL)) {
+	    char *value;
+	    int n;
+
+	    value = Var_Subst(NULL, "${.MAKE.JOBS}", VAR_GLOBAL, VARF_WANTRES);
+	    n = strtol(value, NULL, 0);
+	    if (n < 1) {
+		(void)fprintf(stderr, "%s: illegal value for .MAKE.JOBS -- must be positive integer!\n",
+		    progname);
+		exit(1);
+	    }
+	    if (n != maxJobs) {
+		Var_Append(MAKEFLAGS, "-j", VAR_GLOBAL);
+		Var_Append(MAKEFLAGS, value, VAR_GLOBAL);
+	    }
+	    maxJobs = n;
+	    maxJobTokens = maxJobs;
+	    forceJobs = TRUE;
+	    free(value);
+	}
+
+	/*
+	 * Be compatible if user did not specify -j and did not explicitly
+	 * turned compatibility on
+	 */
+	if (!compatMake && !forceJobs) {
+	    compatMake = TRUE;
+	}
+
 	if (!compatMake)
 	    Job_ServerStart(maxJobTokens, jp_0, jp_1);
 	if (DEBUG(JOB))

Modified: projects/zfsd/head/contrib/bmake/make.1
==============================================================================
--- projects/zfsd/head/contrib/bmake/make.1	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/make.1	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-.\"	$NetBSD: make.1,v 1.255 2016/03/14 07:42:15 matthias Exp $
+.\"	$NetBSD: make.1,v 1.257 2016/05/10 23:45:45 sjg Exp $
 .\"
 .\" Copyright (c) 1990, 1993
 .\"	The Regents of the University of California.  All rights reserved.
@@ -29,7 +29,7 @@
 .\"
 .\"	from: @(#)make.1	8.4 (Berkeley) 3/19/94
 .\"
-.Dd February 19, 2016
+.Dd May 10, 2016
 .Dt MAKE 1
 .Os
 .Sh NAME
@@ -924,6 +924,9 @@ Provides a list of path prefixes that sh
 because the contents are expected to change over time.
 The default list includes:
 .Ql Pa /dev /etc /proc /tmp /var/run /var/tmp
+.It Va .MAKE.META.IGNORE_PATTERNS
+Provides a list of patterns to match against pathnames.
+Ignore any that match.
 .It Va .MAKE.META.PREFIX
 Defines the message printed for each meta file updated in "meta verbose" mode.
 The default value is:

Modified: projects/zfsd/head/contrib/bmake/meta.c
==============================================================================
--- projects/zfsd/head/contrib/bmake/meta.c	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/meta.c	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-/*      $NetBSD: meta.c,v 1.54 2016/03/11 07:01:21 sjg Exp $ */
+/*      $NetBSD: meta.c,v 1.57 2016/05/12 20:28:34 sjg Exp $ */
 
 /*
  * Implement 'meta' mode.
@@ -66,6 +66,9 @@ static char *metaIgnorePathsStr;	/* stri
 #ifndef MAKE_META_IGNORE_PATHS
 #define MAKE_META_IGNORE_PATHS ".MAKE.META.IGNORE_PATHS"
 #endif
+#ifndef MAKE_META_IGNORE_PATTERNS
+#define MAKE_META_IGNORE_PATTERNS ".MAKE.META.IGNORE_PATTERNS"
+#endif
 
 Boolean useMeta = FALSE;
 static Boolean useFilemon = FALSE;
@@ -73,6 +76,7 @@ static Boolean writeMeta = FALSE;
 static Boolean metaEnv = FALSE;		/* don't save env unless asked */
 static Boolean metaVerbose = FALSE;
 static Boolean metaIgnoreCMDs = FALSE;	/* ignore CMDs in .meta files */
+static Boolean metaIgnorePatterns = FALSE; /* do we need to do pattern matches */
 static Boolean metaCurdirOk = FALSE;	/* write .meta in .CURDIR Ok? */
 static Boolean metaSilent = FALSE;	/* if we have a .meta be SILENT */
 
@@ -157,28 +161,33 @@ filemon_open(BuildMon *pbm)
  * Read the build monitor output file and write records to the target's
  * metadata file.
  */
-static void
+static int
 filemon_read(FILE *mfp, int fd)
 {
     char buf[BUFSIZ];
     int n;
+    int error;
 
     /* Check if we're not writing to a meta data file.*/
     if (mfp == NULL) {
 	if (fd >= 0)
 	    close(fd);			/* not interested */
-	return;
+	return 0;
     }
     /* rewind */
     (void)lseek(fd, (off_t)0, SEEK_SET);
 
+    error = 0;
     fprintf(mfp, "\n-- filemon acquired metadata --\n");
 
     while ((n = read(fd, buf, sizeof(buf))) > 0) {
-	fwrite(buf, 1, n, mfp);
+	if ((int)fwrite(buf, 1, n, mfp) < n)
+	    error = EIO;
     }
     fflush(mfp);
-    close(fd);
+    if (close(fd) < 0)
+	error = errno;
+    return error;
 }
 #endif
 
@@ -620,6 +629,15 @@ meta_mode_init(const char *make_mode)
     if (metaIgnorePathsStr) {
 	str2Lst_Append(metaIgnorePaths, metaIgnorePathsStr, NULL);
     }
+
+    /*
+     * We ignore any paths that match ${.MAKE.META.IGNORE_PATTERNS}
+     */
+    cp = NULL;
+    if (Var_Value(MAKE_META_IGNORE_PATTERNS, VAR_GLOBAL, &cp)) {
+	metaIgnorePatterns = TRUE;
+	free(cp);
+    }
 }
 
 /*
@@ -744,27 +762,35 @@ meta_job_output(Job *job, char *cp, cons
     }
 }
 
-void
+int
 meta_cmd_finish(void *pbmp)
 {
+    int error = 0;
 #ifdef USE_FILEMON
     BuildMon *pbm = pbmp;
+    int x;
 
     if (!pbm)
 	pbm = &Mybm;
 
     if (pbm->filemon_fd >= 0) {
-	close(pbm->filemon_fd);
-	filemon_read(pbm->mfp, pbm->mon_fd);
+	if (close(pbm->filemon_fd) < 0)
+	    error = errno;
+	x = filemon_read(pbm->mfp, pbm->mon_fd);
+	if (error == 0 && x != 0)
+	    error = x;
 	pbm->filemon_fd = pbm->mon_fd = -1;
     }
 #endif
+    return error;
 }
 
-void
+int
 meta_job_finish(Job *job)
 {
     BuildMon *pbm;
+    int error = 0;
+    int x;
 
     if (job != NULL) {
 	pbm = &job->bm;
@@ -772,11 +798,14 @@ meta_job_finish(Job *job)
 	pbm = &Mybm;
     }
     if (pbm->mfp != NULL) {
-	meta_cmd_finish(pbm);
-	fclose(pbm->mfp);
+	error = meta_cmd_finish(pbm);
+	x = fclose(pbm->mfp);
+	if (error == 0 && x != 0)
+	    error = errno;
 	pbm->mfp = NULL;
 	pbm->meta_fname[0] = '\0';
     }
+    return error;
 }
 
 void
@@ -1209,14 +1238,35 @@ meta_oodate(GNode *gn, Boolean oodate)
 		     * be part of the dependencies because
 		     * they are _expected_ to change.
 		     */
-		    if (*p == '/' &&
-			Lst_ForEach(metaIgnorePaths, prefix_match, p)) {
+		    if (*p == '/') {
+			realpath(p, fname1); /* clean it up */
+			if (Lst_ForEach(metaIgnorePaths, prefix_match, fname1)) {
 #ifdef DEBUG_META_MODE
-			if (DEBUG(META))
-			    fprintf(debug_file, "meta_oodate: ignoring: %s\n",
-				    p);
+			    if (DEBUG(META))
+				fprintf(debug_file, "meta_oodate: ignoring path: %s\n",
+					p);
 #endif
-			break;
+			    break;
+			}
+		    }
+
+		    if (metaIgnorePatterns) {
+			char *pm;
+
+			snprintf(fname1, sizeof(fname1),
+				 "${%s:@m@${%s:L:M$m}@}",
+				 MAKE_META_IGNORE_PATTERNS, p);
+			pm = Var_Subst(NULL, fname1, gn, VARF_WANTRES);
+			if (*pm) {
+#ifdef DEBUG_META_MODE
+			    if (DEBUG(META))
+				fprintf(debug_file, "meta_oodate: ignoring pattern: %s\n",
+					p);
+#endif
+			    free(pm);
+			    break;
+			}
+			free(pm);
 		    }
 
 		    /*

Modified: projects/zfsd/head/contrib/bmake/meta.h
==============================================================================
--- projects/zfsd/head/contrib/bmake/meta.h	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/meta.h	Wed May 25 16:04:50 2016	(r300688)
@@ -1,4 +1,4 @@
-/*      $NetBSD: meta.h,v 1.4 2016/03/07 21:45:43 christos Exp $ */
+/*      $NetBSD: meta.h,v 1.5 2016/05/12 20:28:34 sjg Exp $ */
 
 /*
  * Things needed for 'meta' mode.
@@ -48,8 +48,8 @@ void meta_job_start(struct Job *, GNode 
 void meta_job_child(struct Job *);
 void meta_job_error(struct Job *, GNode *, int, int);
 void meta_job_output(struct Job *, char *, const char *);
-void meta_cmd_finish(void *);
-void meta_job_finish(struct Job *);
+int  meta_cmd_finish(void *);
+int  meta_job_finish(struct Job *);
 Boolean meta_oodate(GNode *, Boolean);
 void meta_compat_start(void);
 void meta_compat_child(void);

Modified: projects/zfsd/head/contrib/bmake/mk/ChangeLog
==============================================================================
--- projects/zfsd/head/contrib/bmake/mk/ChangeLog	Wed May 25 15:54:21 2016	(r300687)
+++ projects/zfsd/head/contrib/bmake/mk/ChangeLog	Wed May 25 16:04:50 2016	(r300688)
@@ -1,3 +1,57 @@
+2016-05-12  Simon J. Gerraty  <sjg at bad.crufty.net>
+
+	* install-mk (MK_VERSION): 20160512
+
+	* dpadd.mk: always include local.dpadd.mk if it exists
+	  remove some things that better belong in local.dpadd.mk
+	  skip INCLUDES_* for staged libs unless SRC_* defined.
+
+	* own.mk: add INCLUDEDIR
+	

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***


More information about the svn-src-projects mailing list