From owner-svn-src-projects@freebsd.org Sat Mar 16 04:02:27 2019 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8F898154044F for ; Sat, 16 Mar 2019 04:02:27 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3AC466CCCB; Sat, 16 Mar 2019 04:02:27 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 2F5191C93B; Sat, 16 Mar 2019 04:02:27 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x2G42RXf097214; Sat, 16 Mar 2019 04:02:27 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x2G42JNr097180; Sat, 16 Mar 2019 04:02:19 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201903160402.x2G42JNr097180@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Enji Cooper Date: Sat, 16 Mar 2019 04:02:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r345219 - in projects/capsicum-test: . bin/date contrib/googletest contrib/llvm/lib/Target/X86 contrib/llvm/projects contrib/llvm/tools/clang/lib/AST lib/clang/include/clang/Basic lib/c... X-SVN-Group: projects X-SVN-Commit-Author: ngie X-SVN-Commit-Paths: in projects/capsicum-test: . bin/date contrib/googletest contrib/llvm/lib/Target/X86 contrib/llvm/projects contrib/llvm/tools/clang/lib/AST lib/clang/include/clang/Basic lib/clang/include/lld/Common l... X-SVN-Commit-Revision: 345219 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3AC466CCCB X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.998,0]; NEURAL_HAM_SHORT(-0.95)[-0.954,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 16 Mar 2019 04:02:28 -0000 Author: ngie Date: Sat Mar 16 04:02:19 2019 New Revision: 345219 URL: https://svnweb.freebsd.org/changeset/base/345219 Log: MFhead@r345218 Added: - copied from r345218, head/contrib/libunwind/ projects/capsicum-test/sys/dev/cxgbe/firmware/t4fw-1.23.0.0.bin.uu - copied unchanged from r345218, head/sys/dev/cxgbe/firmware/t4fw-1.23.0.0.bin.uu projects/capsicum-test/sys/dev/cxgbe/firmware/t5fw-1.23.0.0.bin.uu - copied unchanged from r345218, head/sys/dev/cxgbe/firmware/t5fw-1.23.0.0.bin.uu projects/capsicum-test/sys/dev/cxgbe/firmware/t6fw-1.23.0.0.bin.uu - copied unchanged from r345218, head/sys/dev/cxgbe/firmware/t6fw-1.23.0.0.bin.uu Directory Properties: projects/capsicum-test/contrib/libunwind/ (props changed) Replaced: projects/capsicum-test/contrib/googletest/ - copied from r345218, head/contrib/googletest/ projects/capsicum-test/lib/googletest/ - copied from r345218, head/lib/googletest/ projects/capsicum-test/share/examples/tests/tests/googletest/ - copied from r345218, head/share/examples/tests/tests/googletest/ projects/capsicum-test/share/mk/googletest.test.inc.mk - copied unchanged from r345218, head/share/mk/googletest.test.inc.mk projects/capsicum-test/share/mk/googletest.test.mk - copied unchanged from r345218, head/share/mk/googletest.test.mk projects/capsicum-test/tools/build/options/WITHOUT_GOOGLETEST - copied unchanged from r345218, head/tools/build/options/WITHOUT_GOOGLETEST Deleted: projects/capsicum-test/contrib/llvm/projects/ projects/capsicum-test/sys/contrib/dev/drm2/ projects/capsicum-test/sys/contrib/dev/npe/ projects/capsicum-test/sys/dev/cxgbe/firmware/t4fw-1.22.0.3.bin.uu projects/capsicum-test/sys/dev/cxgbe/firmware/t5fw-1.22.0.3.bin.uu projects/capsicum-test/sys/dev/cxgbe/firmware/t6fw-1.22.0.3.bin.uu Modified: projects/capsicum-test/Makefile.inc1 projects/capsicum-test/UPDATING projects/capsicum-test/bin/date/date.1 projects/capsicum-test/bin/date/date.c projects/capsicum-test/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp projects/capsicum-test/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp projects/capsicum-test/lib/clang/include/clang/Basic/Version.inc projects/capsicum-test/lib/clang/include/lld/Common/Version.inc projects/capsicum-test/lib/clang/include/llvm/Support/VCSRevision.h projects/capsicum-test/lib/libc/sys/stat.2 projects/capsicum-test/lib/libgcc_eh/Makefile.inc projects/capsicum-test/libexec/rc/network.subr projects/capsicum-test/libexec/rc/rc.conf projects/capsicum-test/libexec/rc/rc.d/Makefile projects/capsicum-test/libexec/tftpd/tests/functional.c projects/capsicum-test/sbin/camcontrol/camcontrol.8 projects/capsicum-test/sbin/camcontrol/camcontrol.c projects/capsicum-test/share/man/man4/ccr.4 projects/capsicum-test/share/man/man4/mfi.4 projects/capsicum-test/share/man/man4/mrsas.4 projects/capsicum-test/share/man/man5/pf.conf.5 projects/capsicum-test/share/man/man5/src.conf.5 projects/capsicum-test/share/man/man7/ports.7 projects/capsicum-test/share/man/man9/VOP_INACTIVE.9 projects/capsicum-test/share/man/man9/firmware.9 projects/capsicum-test/share/misc/committers-doc.dot projects/capsicum-test/stand/common/bcache.c projects/capsicum-test/stand/common/disk.c projects/capsicum-test/stand/common/interp_forth.c projects/capsicum-test/stand/common/part.c projects/capsicum-test/stand/userboot/userboot/elf64_freebsd.c projects/capsicum-test/sys/amd64/amd64/initcpu.c projects/capsicum-test/sys/amd64/linux32/linux32_machdep.c projects/capsicum-test/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c projects/capsicum-test/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zthr.h projects/capsicum-test/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zthr.c projects/capsicum-test/sys/compat/freebsd32/freebsd32_misc.c projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/bitops.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/device.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/dma-attrs.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/dma-mapping.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/idr.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/list.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/mm.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/pci.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/printk.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/rcupdate.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/scatterlist.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/sched.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/slab.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/srcu.h projects/capsicum-test/sys/compat/linuxkpi/common/include/linux/sysfs.h projects/capsicum-test/sys/compat/linuxkpi/common/src/linux_current.c projects/capsicum-test/sys/compat/linuxkpi/common/src/linux_page.c projects/capsicum-test/sys/conf/files projects/capsicum-test/sys/dev/cxgbe/firmware/t4fw_interface.h projects/capsicum-test/sys/dev/cxgbe/firmware/t5fw_cfg_uwire.txt projects/capsicum-test/sys/dev/cxgbe/firmware/t6fw_cfg_uwire.txt projects/capsicum-test/sys/dev/hwpmc/hwpmc_core.c projects/capsicum-test/sys/dev/isci/isci.c projects/capsicum-test/sys/dev/isci/isci.h projects/capsicum-test/sys/dev/isci/isci_controller.c projects/capsicum-test/sys/dev/mrsas/mrsas.c projects/capsicum-test/sys/dev/mrsas/mrsas.h projects/capsicum-test/sys/dev/mrsas/mrsas_cam.c projects/capsicum-test/sys/fs/ext2fs/ext2_alloc.c projects/capsicum-test/sys/fs/nfs/nfs_commonacl.c projects/capsicum-test/sys/fs/nfs/nfs_commonsubs.c projects/capsicum-test/sys/fs/nfs/nfs_var.h projects/capsicum-test/sys/fs/nfsclient/nfs_clrpcops.c projects/capsicum-test/sys/fs/nfsserver/nfs_nfsdport.c projects/capsicum-test/sys/geom/geom_io.c projects/capsicum-test/sys/i386/i386/initcpu.c projects/capsicum-test/sys/kern/kern_time.c projects/capsicum-test/sys/kern/subr_clock.c projects/capsicum-test/sys/kern/subr_disk.c projects/capsicum-test/sys/kern/subr_stack.c projects/capsicum-test/sys/kern/vfs_bio.c projects/capsicum-test/sys/kern/vfs_subr.c projects/capsicum-test/sys/mips/mips/vm_machdep.c projects/capsicum-test/sys/modules/cxgbe/t4_firmware/Makefile projects/capsicum-test/sys/modules/cxgbe/t5_firmware/Makefile projects/capsicum-test/sys/modules/cxgbe/t6_firmware/Makefile projects/capsicum-test/sys/net/bridgestp.c projects/capsicum-test/sys/net/ethernet.h projects/capsicum-test/sys/net/if_bridge.c projects/capsicum-test/sys/net/if_ethersubr.c projects/capsicum-test/sys/net/if_vxlan.c projects/capsicum-test/sys/net/pfvar.h projects/capsicum-test/sys/netgraph/ng_ipfw.c projects/capsicum-test/sys/netinet/ip_divert.c projects/capsicum-test/sys/netinet/ip_var.h projects/capsicum-test/sys/netinet/raw_ip.c projects/capsicum-test/sys/netpfil/ipfw/ip_dn_io.c projects/capsicum-test/sys/netpfil/ipfw/ip_dn_private.h projects/capsicum-test/sys/netpfil/ipfw/ip_fw2.c projects/capsicum-test/sys/netpfil/ipfw/ip_fw_bpf.c projects/capsicum-test/sys/netpfil/ipfw/ip_fw_dynamic.c projects/capsicum-test/sys/netpfil/ipfw/ip_fw_log.c projects/capsicum-test/sys/netpfil/ipfw/ip_fw_nat.c projects/capsicum-test/sys/netpfil/ipfw/ip_fw_pfil.c projects/capsicum-test/sys/netpfil/ipfw/ip_fw_private.h projects/capsicum-test/sys/netpfil/pf/pf.c projects/capsicum-test/sys/netpfil/pf/pf_table.c projects/capsicum-test/sys/sys/_stack.h projects/capsicum-test/sys/sys/clock.h projects/capsicum-test/sys/sys/param.h projects/capsicum-test/sys/sys/proc.h projects/capsicum-test/sys/sys/stack.h projects/capsicum-test/sys/ufs/ffs/ffs_inode.c projects/capsicum-test/sys/ufs/ffs/ffs_softdep.c projects/capsicum-test/sys/ufs/ufs/inode.h projects/capsicum-test/sys/ufs/ufs/ufs_vnops.c projects/capsicum-test/sys/x86/include/specialreg.h projects/capsicum-test/sys/x86/x86/identcpu.c projects/capsicum-test/tests/sys/cddl/zfs/tests/delegate/Makefile projects/capsicum-test/tests/sys/geom/class/eli/misc_test.sh projects/capsicum-test/tests/sys/geom/class/nop/nop_test.sh projects/capsicum-test/tests/sys/geom/class/part/misc.sh projects/capsicum-test/tests/sys/kern/unix_socketpair_test.c projects/capsicum-test/tools/build/mk/OptionalObsoleteFiles.inc projects/capsicum-test/usr.bin/cmp/tests/cmp_test2.sh projects/capsicum-test/usr.bin/dc/tests/bcode.sh projects/capsicum-test/usr.bin/dc/tests/inout.sh projects/capsicum-test/usr.bin/pr/tests/basic2_test.sh projects/capsicum-test/usr.bin/proccontrol/proccontrol.1 projects/capsicum-test/usr.bin/tail/tests/tail_test.sh projects/capsicum-test/usr.sbin/bhyve/pci_emul.c projects/capsicum-test/usr.sbin/bhyve/pci_nvme.c projects/capsicum-test/usr.sbin/bhyve/uart_emul.c projects/capsicum-test/usr.sbin/chroot/chroot.8 projects/capsicum-test/usr.sbin/freebsd-update/freebsd-update.sh projects/capsicum-test/usr.sbin/fstyp/tests/fstyp_test.sh projects/capsicum-test/usr.sbin/trim/trim.c Directory Properties: projects/capsicum-test/ (props changed) projects/capsicum-test/contrib/compiler-rt/ (props changed) projects/capsicum-test/contrib/libc++/ (props changed) projects/capsicum-test/contrib/llvm/ (props changed) projects/capsicum-test/contrib/llvm/tools/clang/ (props changed) projects/capsicum-test/contrib/llvm/tools/lld/ (props changed) projects/capsicum-test/contrib/llvm/tools/lldb/ (props changed) projects/capsicum-test/sys/cddl/contrib/opensolaris/ (props changed) Modified: projects/capsicum-test/Makefile.inc1 ============================================================================== --- projects/capsicum-test/Makefile.inc1 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/Makefile.inc1 Sat Mar 16 04:02:19 2019 (r345219) @@ -1143,6 +1143,12 @@ WMAKE_TGTS+= everything WMAKE_TGTS+= build${libcompat} .endif +# record buildworld time in seconds +.if make(buildworld) +_BUILDWORLD_START!= date '+%s' +.export _BUILDWORLD_START +.endif + buildworld: buildworld_prologue ${WMAKE_TGTS} buildworld_epilogue .PHONY .ORDER: buildworld_prologue ${WMAKE_TGTS} buildworld_epilogue @@ -1155,6 +1161,9 @@ buildworld_epilogue: .PHONY @echo @echo "--------------------------------------------------------------" @echo ">>> World build completed on `LC_ALL=C date`" + @seconds=$$(($$(date '+%s') - ${_BUILDWORLD_START})); \ + echo -n ">>> World build in $$seconds seconds, "; \ + echo "ncpu: $$(sysctl -n hw.ncpu)${.MAKE.JOBS:S/^/, make -j/}" @echo "--------------------------------------------------------------" # @@ -1855,11 +1864,11 @@ create-world-package-${pkgname}: .PHONY @if [ "${pkgname}" == "runtime" ]; then \ sed -i '' -e "s/%VCS_REVISION%/${VCS_REVISION}/" ${WSTAGEDIR}/${pkgname}.ucl ; \ fi - ${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/bin/sh -o ALLOW_BASE_SHLIBS=yes \ + ${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/usr/bin/uname -o ALLOW_BASE_SHLIBS=yes \ create -M ${WSTAGEDIR}/${pkgname}.ucl \ -p ${WSTAGEDIR}/${pkgname}.plist \ -r ${WSTAGEDIR} \ - -o ${REPODIR}/$$(${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/bin/sh config ABI)/${PKG_VERSION} + -o ${REPODIR}/$$(${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/usr/bin/uname config ABI)/${PKG_VERSION} .endfor _default_flavor= -default Modified: projects/capsicum-test/UPDATING ============================================================================== --- projects/capsicum-test/UPDATING Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/UPDATING Sat Mar 16 04:02:19 2019 (r345219) @@ -1931,13 +1931,14 @@ COMMON ITEMS: can be deleted by "make delete-old-libs", but you have to make sure that no program is using those libraries anymore. - [8] The new kernel must be able to run existing binaries used by - an installworld. When upgrading across major versions, the new - kernel's configuration must include the correct COMPAT_FREEBSD - option for existing binaries (e.g. COMPAT_FREEBSD11 to run 11.x - binaries). Failure to do so may leave you with a system that is - hard to boot to recover. A GENERIC kernel will include suitable - compatibility options to run binaries from supported older branches. + [8] The new kernel must be able to run existing binaries used by an + installworld. When upgrading across major versions, the new kernel's + configuration must include the correct COMPAT_FREEBSD option for + existing binaries (e.g. COMPAT_FREEBSD11 to run 11.x binaries). Failure + to do so may leave you with a system that is hard to boot to recover. A + GENERIC kernel will include suitable compatibility options to run + binaries from older branches. Note that the ability to run binaries + from unsupported branches is not guaranteed. Make sure that you merge any new devices from GENERIC since the last time you updated your kernel config file. Options also Modified: projects/capsicum-test/bin/date/date.1 ============================================================================== --- projects/capsicum-test/bin/date/date.1 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/bin/date/date.1 Sat Mar 16 04:02:19 2019 (r345219) @@ -32,7 +32,7 @@ .\" @(#)date.1 8.3 (Berkeley) 4/28/95 .\" $FreeBSD$ .\" -.Dd August 4, 2018 +.Dd March 12, 2019 .Dt DATE 1 .Os .Sh NAME @@ -62,9 +62,6 @@ .Fl f Ar input_fmt new_date .Op Cm + Ns Ar output_fmt .Nm -.Op Fl d Ar dst -.Op Fl t Ar minutes_west -.Nm .Op Fl jnu .Op Fl I Ns Op Ar FMT .Op Fl f Ar input_fmt @@ -93,15 +90,6 @@ the time may not be changed by more than 1 second. .Pp The options are as follows: .Bl -tag -width Ds -.It Fl d Ar dst -Set the kernel's value for daylight saving time. -If -.Ar dst -is non-zero, future calls -to -.Xr gettimeofday 2 -will return a non-zero for -.Fa tz_dsttime . .It Fl f Use .Ar input_fmt @@ -188,14 +176,6 @@ and can be specified in decimal, octal, or hex. .It Fl r Ar filename Print the date and time of the last modification of .Ar filename . -.It Fl t Ar minutes_west -Set the system's value for minutes west of -.Tn GMT . -.Ar minutes_west -specifies the number of minutes returned in -.Fa tz_minuteswest -by future calls to -.Xr gettimeofday 2 . .It Fl u Display or set the date in .Tn UTC Modified: projects/capsicum-test/bin/date/date.c ============================================================================== --- projects/capsicum-test/bin/date/date.c Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/bin/date/date.c Sat Mar 16 04:02:19 2019 (r345219) @@ -91,14 +91,12 @@ static const char *rfc2822_format = "%a, %d %b %Y %T % int main(int argc, char *argv[]) { - struct timezone tz; int ch, rflag; bool Iflag, jflag, nflag, Rflag; const char *format; char buf[1024]; - char *endptr, *fmt; + char *fmt; char *tmp; - int set_timezone; struct vary *v; const struct vary *badv; struct tm *lt; @@ -108,18 +106,10 @@ main(int argc, char *argv[]) v = NULL; fmt = NULL; (void) setlocale(LC_TIME, ""); - tz.tz_dsttime = tz.tz_minuteswest = 0; rflag = 0; Iflag = jflag = nflag = Rflag = 0; - set_timezone = 0; - while ((ch = getopt(argc, argv, "d:f:I::jnRr:t:uv:")) != -1) + while ((ch = getopt(argc, argv, "f:I::jnRr:uv:")) != -1) switch((char)ch) { - case 'd': /* daylight savings time */ - tz.tz_dsttime = strtol(optarg, &endptr, 10) ? 1 : 0; - if (endptr == optarg || *endptr != '\0') - usage(); - set_timezone = 1; - break; case 'f': fmt = optarg; break; @@ -160,13 +150,6 @@ main(int argc, char *argv[]) usage(); } break; - case 't': /* minutes west of UTC */ - /* error check; don't allow "PST" */ - tz.tz_minuteswest = strtol(optarg, &endptr, 10); - if (endptr == optarg || *endptr != '\0') - usage(); - set_timezone = 1; - break; case 'u': /* do everything in UTC */ (void)setenv("TZ", "UTC0", 1); break; @@ -179,13 +162,6 @@ main(int argc, char *argv[]) argc -= optind; argv += optind; - /* - * If -d or -t, set the timezone or daylight savings time; this - * doesn't belong here; the kernel should not know about either. - */ - if (set_timezone && settimeofday(NULL, &tz) != 0) - err(1, "settimeofday (timezone)"); - if (!rflag && time(&tval) == -1) err(1, "time"); @@ -411,8 +387,7 @@ static void usage(void) { (void)fprintf(stderr, "%s\n%s\n%s\n", - "usage: date [-jnRu] [-d dst] [-r seconds|file] [-t west] " - "[-v[+|-]val[ymwdHMS]]", + "usage: date [-jnRu] [-r seconds|file] [-v[+|-]val[ymwdHMS]]", " " "[-I[date | hours | minutes | seconds]]", " " Modified: projects/capsicum-test/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp ============================================================================== --- projects/capsicum-test/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/contrib/llvm/lib/Target/X86/X86CallFrameOptimization.cpp Sat Mar 16 04:02:19 2019 (r345219) @@ -139,11 +139,6 @@ bool X86CallFrameOptimization::isLegal(MachineFunction if (NoX86CFOpt.getValue()) return false; - // Work around LLVM PR30879 (bad interaction between CFO and libunwind) - if (STI->isTargetFreeBSD() && STI->is32Bit() && - STI->getTargetTriple().getOSMajorVersion() >= 12) - return false; - // We can't encode multiple DW_CFA_GNU_args_size or DW_CFA_def_cfa_offset // in the compact unwind encoding that Darwin uses. So, bail if there // is a danger of that being generated. Modified: projects/capsicum-test/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp ============================================================================== --- projects/capsicum-test/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp Sat Mar 16 04:02:19 2019 (r345219) @@ -10985,6 +10985,7 @@ bool Expr::EvaluateAsConstantExpr(EvalResult &Result, const ASTContext &Ctx) const { EvalInfo::EvaluationMode EM = EvalInfo::EM_ConstantExpression; EvalInfo Info(Ctx, Result, EM); + Info.InConstantContext = true; if (!::Evaluate(Result.Val, Info, this)) return false; @@ -11625,6 +11626,7 @@ bool Expr::EvaluateWithSubstitution(APValue &Value, AS const Expr *This) const { Expr::EvalStatus Status; EvalInfo Info(Ctx, Status, EvalInfo::EM_ConstantExpressionUnevaluated); + Info.InConstantContext = true; LValue ThisVal; const LValue *ThisPtr = nullptr; @@ -11708,6 +11710,7 @@ bool Expr::isPotentialConstantExprUnevaluated(Expr *E, EvalInfo Info(FD->getASTContext(), Status, EvalInfo::EM_PotentialConstantExpressionUnevaluated); + Info.InConstantContext = true; // Fabricate a call stack frame to give the arguments a plausible cover story. ArrayRef Args; Modified: projects/capsicum-test/lib/clang/include/clang/Basic/Version.inc ============================================================================== --- projects/capsicum-test/lib/clang/include/clang/Basic/Version.inc Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/lib/clang/include/clang/Basic/Version.inc Sat Mar 16 04:02:19 2019 (r345219) @@ -8,4 +8,4 @@ #define CLANG_VENDOR "FreeBSD " -#define SVN_REVISION "355677" +#define SVN_REVISION "356034" Modified: projects/capsicum-test/lib/clang/include/lld/Common/Version.inc ============================================================================== --- projects/capsicum-test/lib/clang/include/lld/Common/Version.inc Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/lib/clang/include/lld/Common/Version.inc Sat Mar 16 04:02:19 2019 (r345219) @@ -7,4 +7,4 @@ #define LLD_REPOSITORY_STRING "FreeBSD" // - -#define LLD_REVISION_STRING "355677-1300002" +#define LLD_REVISION_STRING "356034-1300002" Modified: projects/capsicum-test/lib/clang/include/llvm/Support/VCSRevision.h ============================================================================== --- projects/capsicum-test/lib/clang/include/llvm/Support/VCSRevision.h Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/lib/clang/include/llvm/Support/VCSRevision.h Sat Mar 16 04:02:19 2019 (r345219) @@ -1,2 +1,2 @@ /* $FreeBSD$ */ -#define LLVM_REVISION "svn-r355677" +#define LLVM_REVISION "svn-r356034" Modified: projects/capsicum-test/lib/libc/sys/stat.2 ============================================================================== --- projects/capsicum-test/lib/libc/sys/stat.2 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/lib/libc/sys/stat.2 Sat Mar 16 04:02:19 2019 (r345219) @@ -48,7 +48,7 @@ .Ft int .Fn fstat "int fd" "struct stat *sb" .Ft int -.Fn fstatat "int fd" "const char *path" "struct stat *buf" "int flag" +.Fn fstatat "int fd" "const char *path" "struct stat *sb" "int flag" .Sh DESCRIPTION The .Fn stat Modified: projects/capsicum-test/lib/libgcc_eh/Makefile.inc ============================================================================== --- projects/capsicum-test/lib/libgcc_eh/Makefile.inc Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/lib/libgcc_eh/Makefile.inc Sat Mar 16 04:02:19 2019 (r345219) @@ -1,8 +1,8 @@ # $FreeBSD$ COMPILERRTDIR= ${SRCTOP}/contrib/compiler-rt -UNWINDINCDIR= ${SRCTOP}/contrib/llvm/projects/libunwind/include -UNWINDSRCDIR= ${SRCTOP}/contrib/llvm/projects/libunwind/src +UNWINDINCDIR= ${SRCTOP}/contrib/libunwind/include +UNWINDSRCDIR= ${SRCTOP}/contrib/libunwind/src STATIC_CFLAGS+=${PICFLAG} -fvisibility=hidden -DVISIBILITY_HIDDEN Modified: projects/capsicum-test/libexec/rc/network.subr ============================================================================== --- projects/capsicum-test/libexec/rc/network.subr Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/libexec/rc/network.subr Sat Mar 16 04:02:19 2019 (r345219) @@ -229,6 +229,11 @@ ifconfig_up() ${IFCONFIG_CMD} $1 up fi + if ! noafif $1 && afexists inet6; then + ipv6_accept_rtadv_up $1 + _cfg=0 + fi + if dhcpif $1; then if [ $_cfg -ne 0 ] ; then ${IFCONFIG_CMD} $1 up @@ -686,7 +691,6 @@ ipv6_up() ifalias ${_if} inet6 alias && _ret=0 ipv6_prefix_hostid_addr_common ${_if} alias && _ret=0 - ipv6_accept_rtadv_up ${_if} && _ret=0 return $_ret } @@ -1198,8 +1202,8 @@ ipv6_accept_rtadv_up() { if ipv6_autoconfif $1; then ${IFCONFIG_CMD} $1 inet6 accept_rtadv up - if ! checkyesno rtsold_enable; then - rtsol ${rtsol_flags} $1 + if [ -x /sbin/rtsol ]; then + /sbin/rtsol ${rtsol_flags} $1 fi fi } Modified: projects/capsicum-test/libexec/rc/rc.conf ============================================================================== --- projects/capsicum-test/libexec/rc/rc.conf Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/libexec/rc/rc.conf Sat Mar 16 04:02:19 2019 (r345219) @@ -208,7 +208,8 @@ ipfs_enable="NO" # Set to YES to enable saving and re ipfs_program="/sbin/ipfs" # where the ipfs program lives ipfs_flags="" # additional flags for ipfs pf_enable="NO" # Set to YES to enable packet filter (pf) -pf_rules="/etc/pf.conf" # rules definition file for pf +pf_rules="/etc/pf.conf" # rules definition file for pf (nonexistent + # by default) pf_program="/sbin/pfctl" # where the pfctl program lives pf_flags="" # additional flags for pfctl pflog_enable="NO" # Set to YES to enable packet filter logging Modified: projects/capsicum-test/libexec/rc/rc.d/Makefile ============================================================================== --- projects/capsicum-test/libexec/rc/rc.d/Makefile Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/libexec/rc/rc.d/Makefile Sat Mar 16 04:02:19 2019 (r345219) @@ -46,10 +46,6 @@ CONFS= DAEMON \ hostname \ iovctl \ ip6addrctl \ - ipfilter \ - ipfs \ - ipmon \ - ipnat \ ipsec \ ${_kadmind} \ ${_kdc} \ @@ -213,6 +209,13 @@ HASTPACKAGE= hast .if ${MK_INETD} != "no" CONFS+= inetd +.endif + +.if ${MK_IPFILTER} != "no" +CONFS+= ipfilter \ + ipfs \ + ipmon \ + ipnat .endif .if ${MK_IPFW} != "no" Modified: projects/capsicum-test/libexec/tftpd/tests/functional.c ============================================================================== --- projects/capsicum-test/libexec/tftpd/tests/functional.c Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/libexec/tftpd/tests/functional.c Sat Mar 16 04:02:19 2019 (r345219) @@ -1,7 +1,8 @@ /*- * SPDX-License-Identifier: BSD-2-Clause-FreeBSD * - * Copyright (c) 2018 Alan Somers. All rights reserved. + * Copyright (c) 2018 Alan Somers. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: Modified: projects/capsicum-test/sbin/camcontrol/camcontrol.8 ============================================================================== --- projects/capsicum-test/sbin/camcontrol/camcontrol.8 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/sbin/camcontrol/camcontrol.8 Sat Mar 16 04:02:19 2019 (r345219) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 3, 2017 +.Dd March 12, 2019 .Dt CAMCONTROL 8 .Os .Sh NAME @@ -78,6 +78,7 @@ .Op Fl b .Op Fl h .Op Fl H +.Op Fl l .Op Fl N .Op Fl q .Op Fl s @@ -544,6 +545,11 @@ or .Fl b . .It Fl H Print out the device size in human readable (base 10, 1K == 1000) format. +.It Fl l +Skip sending the SCSI READ CAPACITY (10) command. +Send only the SCSI READ CAPACITY (16) service action and report +its results. +When the two do not match, a quirk is needed to resolve the ambiguity. .It Fl N Print out the number of blocks in the device instead of the last logical block. Modified: projects/capsicum-test/sbin/camcontrol/camcontrol.c ============================================================================== --- projects/capsicum-test/sbin/camcontrol/camcontrol.c Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/sbin/camcontrol/camcontrol.c Sat Mar 16 04:02:19 2019 (r345219) @@ -203,7 +203,7 @@ static struct camcontrol_opts option_table[] = { {"load", CAM_CMD_STARTSTOP, CAM_ARG_START_UNIT | CAM_ARG_EJECT, NULL}, {"eject", CAM_CMD_STARTSTOP, CAM_ARG_EJECT, NULL}, {"reportluns", CAM_CMD_REPORTLUNS, CAM_ARG_NONE, "clr:"}, - {"readcapacity", CAM_CMD_READCAP, CAM_ARG_NONE, "bhHNqs"}, + {"readcapacity", CAM_CMD_READCAP, CAM_ARG_NONE, "bhHlNqs"}, {"reprobe", CAM_CMD_REPROBE, CAM_ARG_NONE, NULL}, #endif /* MINIMALISTIC */ {"rescan", CAM_CMD_RESCAN, CAM_ARG_NONE, NULL}, @@ -7162,7 +7162,7 @@ scsireadcapacity(struct cam_device *device, int argc, char *combinedopt, int task_attr, int retry_count, int timeout) { union ccb *ccb; - int blocksizeonly, humanize, numblocks, quiet, sizeonly, baseten; + int blocksizeonly, humanize, numblocks, quiet, sizeonly, baseten, longonly; struct scsi_read_capacity_data rcap; struct scsi_read_capacity_data_long rcaplong; uint64_t maxsector; @@ -7172,6 +7172,7 @@ scsireadcapacity(struct cam_device *device, int argc, blocksizeonly = 0; humanize = 0; + longonly = 0; numblocks = 0; quiet = 0; sizeonly = 0; @@ -7200,6 +7201,9 @@ scsireadcapacity(struct cam_device *device, int argc, humanize++; baseten++; break; + case 'l': + longonly++; + break; case 'N': numblocks++; break; @@ -7242,6 +7246,9 @@ scsireadcapacity(struct cam_device *device, int argc, goto bailout; } + if (longonly != 0) + goto long_only; + scsi_read_capacity(&ccb->csio, /*retries*/ retry_count, /*cbfcnp*/ NULL, @@ -7284,6 +7291,7 @@ scsireadcapacity(struct cam_device *device, int argc, if (maxsector != 0xffffffff) goto do_print; +long_only: scsi_read_capacity_16(&ccb->csio, /*retries*/ retry_count, /*cbfcnp*/ NULL, @@ -9515,7 +9523,7 @@ usage(int printlong) " camcontrol identify [dev_id][generic args] [-v]\n" " camcontrol reportluns [dev_id][generic args] [-c] [-l] [-r report]\n" " camcontrol readcap [dev_id][generic args] [-b] [-h] [-H] [-N]\n" -" [-q] [-s]\n" +" [-q] [-s] [-l]\n" " camcontrol start [dev_id][generic args]\n" " camcontrol stop [dev_id][generic args]\n" " camcontrol load [dev_id][generic args]\n" Modified: projects/capsicum-test/share/man/man4/ccr.4 ============================================================================== --- projects/capsicum-test/share/man/man4/ccr.4 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man4/ccr.4 Sat Mar 16 04:02:19 2019 (r345219) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 16, 2017 +.Dd March 11, 2019 .Dt CCR 4 .Os .Sh NAME @@ -49,13 +49,14 @@ The .Nm driver provides support for the crypto accelerator engine included on PCI Express Ethernet adapters based on the Chelsio Terminator 6 ASIC (T6). -The driver accelerates AES-CBC, AES-CTR, AES-GCM, AES-XTS, SHA1-HMAC, +The driver accelerates AES-CBC, AES-CTR, AES-GCM, AES-XTS, SHA1, SHA2-224, +SHA2-256, SHA2-384, SHA2-512, SHA1-HMAC, SHA2-224-HMAC, SHA2-256-HMAC, SHA2-384-HMAC, and SHA2-512-HMAC operations for .Xr crypto 4 and .Xr ipsec 4 . The driver also supports chaining one of AES-CBC, AES-CTR, or AES-XTS with -SHA1-HMAC, SHA2-256-HMAC, SHA2-384-HMAC, or SHA2-512-HMAC for +SHA1-HMAC, SHA2-224-HMAC, SHA2-256-HMAC, SHA2-384-HMAC, or SHA2-512-HMAC for encrypt-then-authenticate operations. For further hardware information and questions related to hardware requirements, see Modified: projects/capsicum-test/share/man/man4/mfi.4 ============================================================================== --- projects/capsicum-test/share/man/man4/mfi.4 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man4/mfi.4 Sat Mar 16 04:02:19 2019 (r345219) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 15, 2013 +.Dd March 13, 2019 .Dt MFI 4 .Os .Sh NAME @@ -84,6 +84,12 @@ then the driver will reduce its probe priority to allo .Cd mrsas to attach to the card instead of .Nm . +.Pp +.Nm +does not provide ATA TRIM support. +Refer to +.Cd mrsas +if TRIM support is required. .Sh HARDWARE The .Nm Modified: projects/capsicum-test/share/man/man4/mrsas.4 ============================================================================== --- projects/capsicum-test/share/man/man4/mrsas.4 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man4/mrsas.4 Sat Mar 16 04:02:19 2019 (r345219) @@ -34,7 +34,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 8, 2014 +.Dd Mar 13, 2019 .Dt MRSAS 4 .Os .Sh NAME @@ -117,6 +117,12 @@ at probe call for device id's 0x005B, 0x005D, and 0x005F so that .Nm does not take control of these devices without user intervention. +.Pp +Solid-state drives (SSD) get ATA TRIM support with +.Nm +if underlying adapter allows it. +This may require configuring SSD as Non-RAID drive +rather then JBOD virtual mode. .Sh HARDWARE The .Nm Modified: projects/capsicum-test/share/man/man5/pf.conf.5 ============================================================================== --- projects/capsicum-test/share/man/man5/pf.conf.5 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man5/pf.conf.5 Sat Mar 16 04:02:19 2019 (r345219) @@ -28,7 +28,7 @@ .\" ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.Dd January 5, 2019 +.Dd March 10, 2019 .Dt PF.CONF 5 .Os .Sh NAME @@ -3053,6 +3053,8 @@ include = "include" filename Host name database. .It Pa /etc/pf.conf Default location of the ruleset file. +The file has to be created manually as it is not installed with a +standard installation. .It Pa /etc/pf.os Default location of OS fingerprints. .It Pa /etc/protocols Modified: projects/capsicum-test/share/man/man5/src.conf.5 ============================================================================== --- projects/capsicum-test/share/man/man5/src.conf.5 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man5/src.conf.5 Sat Mar 16 04:02:19 2019 (r345219) @@ -1,6 +1,6 @@ .\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman. .\" $FreeBSD$ -.Dd March 6, 2019 +.Dd March 15, 2019 .Dt SRC.CONF 5 .Os .Sh NAME @@ -828,6 +828,11 @@ Set to not build GNU Set this option to include GNU extensions in .Xr bsdgrep 1 by linking against libgnuregex. +.It Va WITHOUT_GOOGLETEST +Set to neither build nor install +.Lb libgmock , +.Lb libgtest , +and dependent tests. .It Va WITHOUT_GPIO Set to not build .Xr gpioctl 8 @@ -1826,6 +1831,10 @@ When set, it enforces these options: When set, these options are also in effect: .Pp .Bl -inset -compact +.It Va WITHOUT_GOOGLETEST +(unless +.Va WITH_GOOGLETEST +is set explicitly) .It Va WITHOUT_TESTS_SUPPORT (unless .Va WITH_TESTS_SUPPORT @@ -1833,6 +1842,12 @@ is set explicitly) .El .It Va WITHOUT_TESTS_SUPPORT Set to disables the build of all test-related dependencies, including ATF. +When set, it enforces these options: +.Pp +.Bl -item -compact +.It +.Va WITHOUT_GOOGLETEST +.El .It Va WITHOUT_TEXTPROC Set to not build programs used for text processing. Modified: projects/capsicum-test/share/man/man7/ports.7 ============================================================================== --- projects/capsicum-test/share/man/man7/ports.7 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man7/ports.7 Sat Mar 16 04:02:19 2019 (r345219) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 12, 2019 +.Dd March 12, 2019 .Dt PORTS 7 .Os .Sh NAME @@ -587,7 +587,7 @@ The following command builds and installs Emacs. .Ed .It Sy Example 2\&: No Installing Dependencies with Xr pkg 8 .Pp -The following examples shows how to build and install a port without having to +The following example shows how to build and install a port without having to build its dependencies. Instead, the dependencies are downloaded via .Xr pkg 8 . @@ -603,6 +603,16 @@ The drawback is that .Xr pkg 8 offers only packages built with the default set of .Va OPTIONS . +.It Sy Example 3\&: No Building a Non-Default Flavor of a Port +.Pp +The following command builds a non-default flavor of a port. +(In this case +.Pa devel/py-pip +is going to be built with Python 3.7 support.) +.Bd -literal -offset 2n +.Li # Ic cd /usr/ports/devel/py-pip +.Li # Ic env FLAVOR=py37 make build +.Ed .El .Sh SEE ALSO .Xr make 1 , Modified: projects/capsicum-test/share/man/man9/VOP_INACTIVE.9 ============================================================================== --- projects/capsicum-test/share/man/man9/VOP_INACTIVE.9 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man9/VOP_INACTIVE.9 Sat Mar 16 04:02:19 2019 (r345219) @@ -28,7 +28,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 27, 2014 +.Dd March 15, 2019 .Dt VOP_INACTIVE 9 .Os .Sh NAME @@ -50,13 +50,16 @@ The vnode being reclaimed. .El .Pp .Fn VOP_INACTIVE -is called when the kernel is no longer using the vnode. +is usually called when the kernel is no longer using the vnode. +However, there is no guarantee that it will be called at all, for example if +the last reference was dropped while the vnode lock could not be upgraded +to exclusive without sleeping. This may be because the reference count reaches zero or it may be that the file system is being forcibly unmounted while there are open files. -It can be used to reclaim space for +It can be used to reclaim space on the last close of an .Sq open but deleted -files. +file. .Pp .Fn VOP_RECLAIM is called when a vnode is being reused for a different file system. Modified: projects/capsicum-test/share/man/man9/firmware.9 ============================================================================== --- projects/capsicum-test/share/man/man9/firmware.9 Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/man/man9/firmware.9 Sat Mar 16 04:02:19 2019 (r345219) @@ -23,7 +23,7 @@ .\" .\" $FreeBSD$ .\" -.Dd August 2, 2008 +.Dd March 14, 2019 .Dt FIRMWARE 9 .Os .Sh NAME @@ -248,12 +248,11 @@ IxNpeMicrocode.fwo optional npe_fw \\ -r -d -o ${.TARGET} IxNpeMicrocode.dat" \\ no-implicit-rule \\ clean "IxNpeMicrocode.fwo" -IxNpeMicrocode.dat optional npe_fw \\ - dependency ".PHONY" \\ - compile-with "uudecode < $S/contrib/dev/npe/IxNpeMicrocode.dat.uu" \\ - no-obj no-implicit-rule \\ - clean "IxNpeMicrocode.dat" .Ed +.Pp +Firmware was previously committed to the source tree as uuencoded files, +but this is no longer required; the binary firmware file should be committed +to the tree as provided by the vendor. .Pp Note that generating the firmware modules in this way requires the availability of the following tools: Modified: projects/capsicum-test/share/misc/committers-doc.dot ============================================================================== --- projects/capsicum-test/share/misc/committers-doc.dot Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/share/misc/committers-doc.dot Sat Mar 16 04:02:19 2019 (r345219) @@ -92,6 +92,7 @@ skreuzer [label="Steven Kreuzer\nskreuzer@FreeBSD.org\ taras [label="Taras Korenko\ntaras@FreeBSD.org\n2010/06/25"] trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2002/03/25"] wblock [label="Warren Block\nwblock@FreeBSD.org\n2011/09/12"] +ygy [label="Guangyuan Yang\nygy@FreeBSD.org\n2017/09/18"] zeising [label="Niclas Zeising\nzeising@FreeBSD.org\n2012/07/03"] # Here are the mentor/mentee relationships. Copied: projects/capsicum-test/share/mk/googletest.test.inc.mk (from r345218, head/share/mk/googletest.test.inc.mk) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/capsicum-test/share/mk/googletest.test.inc.mk Sat Mar 16 04:02:19 2019 (r345219, copy of r345218, head/share/mk/googletest.test.inc.mk) @@ -0,0 +1,15 @@ +# $FreeBSD$ + +# XXX: this should be defined in bsd.sys.mk +CXXSTD?= c++11 + +GTESTS_CXXFLAGS+= -DGTEST_HAS_POSIX_RE=1 +GTESTS_CXXFLAGS+= -DGTEST_HAS_PTHREAD=1 +GTESTS_CXXFLAGS+= -DGTEST_HAS_STREAM_REDIRECTION=1 +GTESTS_CXXFLAGS+= -frtti +GTESTS_CXXFLAGS+= -std=${CXXSTD} + +# XXX: src.libnames.mk should handle adding this directory. +GTESTS_CXXFLAGS+= -I${DESTDIR}${INCLUDEDIR}/private + +NO_WTHREAD_SAFETY= Copied: projects/capsicum-test/share/mk/googletest.test.mk (from r345218, head/share/mk/googletest.test.mk) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/capsicum-test/share/mk/googletest.test.mk Sat Mar 16 04:02:19 2019 (r345219, copy of r345218, head/share/mk/googletest.test.mk) @@ -0,0 +1,41 @@ +# $FreeBSD$ +# +# You must include bsd.test.mk instead of this file from your Makefile. +# +# Logic to build and install GoogleTest based test programs. +# +# GoogleTest is a C++ test framework, thus, it does not describe/articulate how +# to write tests in other languages, e.g., C or shell, unlike the ATF, plain, +# and TAP raw test interfaces. +# +# For now this is a thin wrapper around the `plain` test interface, but in the +# future this will rely on a newer version of kyua which will integrate in +# GoogleTest support. + +.if !target(____) +.error googletest.test.mk cannot be included directly. +.endif + +# List of GoogleTest test programs to build. +# +# Programs listed here are built according to the semantics of bsd.progs.mk for +# PROGS_CXX. +# +# Test programs registered in this manner are set to be installed into TESTSDIR +# (which should be overridden by the Makefile) and are not required to provide a +# manpage. +GTESTS?= + +.if !empty(GTESTS) +.include + +PROGS_CXX+= ${GTESTS} +_TESTS+= ${GTESTS} +.for _T in ${GTESTS} +BINDIR.${_T}= ${TESTSDIR} +CXXFLAGS.${_T}+= ${GTESTS_CXXFLAGS} +MAN.${_T}?= # empty +SRCS.${_T}?= ${_T}.cc +TEST_INTERFACE.${_T}= plain +.endfor +.endif Modified: projects/capsicum-test/stand/common/bcache.c ============================================================================== --- projects/capsicum-test/stand/common/bcache.c Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/stand/common/bcache.c Sat Mar 16 04:02:19 2019 (r345219) @@ -44,9 +44,9 @@ __FBSDID("$FreeBSD$"); /* #define BCACHE_DEBUG */ #ifdef BCACHE_DEBUG -# define DEBUG(fmt, args...) printf("%s: " fmt "\n" , __func__ , ## args) +# define DPRINTF(fmt, args...) printf("%s: " fmt "\n" , __func__ , ## args) #else -# define DEBUG(fmt, args...) +# define DPRINTF(fmt, args...) #endif struct bcachectl @@ -369,7 +369,7 @@ bcache_strategy(void *devdata, int rw, daddr_t blk, si /* bypass large requests, or when the cache is inactive */ if (bc == NULL || ((size * 2 / bcache_blksize) > bcache_nblks)) { - DEBUG("bypass %zu from %qu", size / bcache_blksize, blk); + DPRINTF("bypass %zu from %qu", size / bcache_blksize, blk); bcache_bypasses++; rw &= F_MASK; return (dd->dv_strategy(dd->dv_devdata, rw, blk, size, buf, rsize)); @@ -444,7 +444,7 @@ bcache_insert(struct bcache *bc, daddr_t blkno) cand = BHASH(bc, blkno); - DEBUG("insert blk %llu -> %u # %d", blkno, cand, bcache_bcount); + DPRINTF("insert blk %llu -> %u # %d", blkno, cand, bcache_bcount); bc->bcache_ctl[cand].bc_blkno = blkno; bc->bcache_ctl[cand].bc_count = bcache_bcount++; } @@ -461,7 +461,7 @@ bcache_invalidate(struct bcache *bc, daddr_t blkno) if (bc->bcache_ctl[i].bc_blkno == blkno) { bc->bcache_ctl[i].bc_count = -1; bc->bcache_ctl[i].bc_blkno = -1; - DEBUG("invalidate blk %llu", blkno); + DPRINTF("invalidate blk %llu", blkno); } } Modified: projects/capsicum-test/stand/common/disk.c ============================================================================== --- projects/capsicum-test/stand/common/disk.c Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/stand/common/disk.c Sat Mar 16 04:02:19 2019 (r345219) @@ -38,9 +38,9 @@ __FBSDID("$FreeBSD$"); #include "disk.h" #ifdef DISK_DEBUG -# define DEBUG(fmt, args...) printf("%s: " fmt "\n" , __func__ , ## args) +# define DPRINTF(fmt, args...) printf("%s: " fmt "\n" , __func__ , ## args) #else -# define DEBUG(fmt, args...) +# define DPRINTF(fmt, args...) #endif struct open_disk { @@ -231,7 +231,7 @@ disk_open(struct disk_devdesc *dev, uint64_t mediasize rc = 0; od = (struct open_disk *)malloc(sizeof(struct open_disk)); if (od == NULL) { - DEBUG("no memory"); + DPRINTF("no memory"); return (ENOMEM); } dev->dd.d_opendata = od; @@ -252,14 +252,14 @@ disk_open(struct disk_devdesc *dev, uint64_t mediasize slice = dev->d_slice; partition = dev->d_partition; - DEBUG("%s unit %d, slice %d, partition %d => %p", + DPRINTF("%s unit %d, slice %d, partition %d => %p", disk_fmtdev(dev), dev->dd.d_unit, dev->d_slice, dev->d_partition, od); /* Determine disk layout. */ od->table = ptable_open(&partdev, mediasize / sectorsize, sectorsize, ptblread); if (od->table == NULL) { - DEBUG("Can't read partition table"); + DPRINTF("Can't read partition table"); rc = ENXIO; goto out; } @@ -315,7 +315,7 @@ disk_open(struct disk_devdesc *dev, uint64_t mediasize table = ptable_open(dev, part.end - part.start + 1, od->sectorsize, ptblread); if (table == NULL) { - DEBUG("Can't read BSD label"); + DPRINTF("Can't read BSD label"); rc = ENXIO; goto out; } @@ -343,12 +343,12 @@ out: if (od->table != NULL) ptable_close(od->table); free(od); - DEBUG("%s could not open", disk_fmtdev(dev)); + DPRINTF("%s could not open", disk_fmtdev(dev)); } else { /* Save the slice and partition number to the dev */ dev->d_slice = slice; dev->d_partition = partition; - DEBUG("%s offset %lld => %p", disk_fmtdev(dev), + DPRINTF("%s offset %lld => %p", disk_fmtdev(dev), (long long)dev->d_offset, od); } return (rc); @@ -360,7 +360,7 @@ disk_close(struct disk_devdesc *dev) struct open_disk *od; od = (struct open_disk *)dev->dd.d_opendata; - DEBUG("%s closed => %p", disk_fmtdev(dev), od); + DPRINTF("%s closed => %p", disk_fmtdev(dev), od); ptable_close(od->table); free(od); return (0); Modified: projects/capsicum-test/stand/common/interp_forth.c ============================================================================== --- projects/capsicum-test/stand/common/interp_forth.c Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/stand/common/interp_forth.c Sat Mar 16 04:02:19 2019 (r345219) @@ -39,9 +39,9 @@ INTERP_DEFINE("4th"); /* #define BFORTH_DEBUG */ #ifdef BFORTH_DEBUG -#define DEBUG(fmt, args...) printf("%s: " fmt "\n" , __func__ , ## args) +#define DPRINTF(fmt, args...) printf("%s: " fmt "\n" , __func__ , ## args) #else -#define DEBUG(fmt, args...) +#define DPRINTF(fmt, args...) #endif /* @@ -128,7 +128,7 @@ bf_command(FICL_VM *vm) vmUpdateTib(vm, tail + len); } } - DEBUG("cmd '%s'", line); + DPRINTF("cmd '%s'", line); command_errmsg = command_errbuf; command_errbuf[0] = 0; @@ -305,7 +305,7 @@ bf_run(const char *line) */ result = ficlExec(bf_vm, __DECONST(char *, line)); - DEBUG("ficlExec '%s' = %d", line, result); + DPRINTF("ficlExec '%s' = %d", line, result); switch (result) { case VM_OUTOFTEXT: case VM_ABORTQ: Modified: projects/capsicum-test/stand/common/part.c ============================================================================== --- projects/capsicum-test/stand/common/part.c Sat Mar 16 03:58:23 2019 (r345218) +++ projects/capsicum-test/stand/common/part.c Sat Mar 16 04:02:19 2019 (r345219) @@ -44,9 +44,9 @@ __FBSDID("$FreeBSD$"); #include #ifdef PART_DEBUG -#define DEBUG(fmt, args...) printf("%s: " fmt "\n", __func__, ## args) +#define DPRINTF(fmt, args...) printf("%s: " fmt "\n", __func__, ## args) #else -#define DEBUG(fmt, args...) +#define DPRINTF(fmt, args...) #endif #ifdef LOADER_GPT_SUPPORT @@ -155,34 +155,34 @@ gpt_checkhdr(struct gpt_hdr *hdr, uint64_t lba_self, u uint32_t sz, crc; if (memcmp(hdr->hdr_sig, GPT_HDR_SIG, sizeof(hdr->hdr_sig)) != 0) { - DEBUG("no GPT signature"); + DPRINTF("no GPT signature"); return (NULL); } sz = le32toh(hdr->hdr_size); if (sz < 92 || sz > sectorsize) { - DEBUG("invalid GPT header size: %d", sz); + DPRINTF("invalid GPT header size: %d", sz); return (NULL); } crc = le32toh(hdr->hdr_crc_self); hdr->hdr_crc_self = 0; if (crc32(hdr, sz) != crc) { - DEBUG("GPT header's CRC doesn't match"); + DPRINTF("GPT header's CRC doesn't match"); return (NULL); } hdr->hdr_crc_self = crc; hdr->hdr_revision = le32toh(hdr->hdr_revision); if (hdr->hdr_revision < GPT_HDR_REVISION) { - DEBUG("unsupported GPT revision %d", hdr->hdr_revision); + DPRINTF("unsupported GPT revision %d", hdr->hdr_revision); return (NULL); } hdr->hdr_lba_self = le64toh(hdr->hdr_lba_self); if (hdr->hdr_lba_self != lba_self) { - DEBUG("self LBA doesn't match"); + DPRINTF("self LBA doesn't match"); return (NULL); } hdr->hdr_lba_alt = le64toh(hdr->hdr_lba_alt); if (hdr->hdr_lba_alt == hdr->hdr_lba_self) { - DEBUG("invalid alternate LBA"); + DPRINTF("invalid alternate LBA"); return (NULL); } hdr->hdr_entries = le32toh(hdr->hdr_entries); @@ -190,7 +190,7 @@ gpt_checkhdr(struct gpt_hdr *hdr, uint64_t lba_self, u if (hdr->hdr_entries == 0 || hdr->hdr_entsz < sizeof(struct gpt_ent) || sectorsize % hdr->hdr_entsz != 0) { - DEBUG("invalid entry size or number of entries"); + DPRINTF("invalid entry size or number of entries"); return (NULL); } hdr->hdr_lba_start = le64toh(hdr->hdr_lba_start); @@ -214,7 +214,7 @@ gpt_checktbl(const struct gpt_hdr *hdr, uint8_t *tbl, /* Check CRC only when buffer size is enough for table. */ if (hdr->hdr_crc_table != crc32(tbl, hdr->hdr_entries * hdr->hdr_entsz)) { - DEBUG("GPT table's CRC doesn't match"); + DPRINTF("GPT table's CRC doesn't match"); return (-1); } } @@ -310,7 +310,7 @@ ptable_gptread(struct ptable *table, void *dev, diskre table->type = PTABLE_NONE; goto out; } - DEBUG("GPT detected"); + DPRINTF("GPT detected"); size = MIN(hdr.hdr_entries * hdr.hdr_entsz, MAXTBLSZ * table->sectorsize); @@ -346,7 +346,7 @@ ptable_gptread(struct ptable *table, void *dev, diskre entry->flags = le64toh(ent->ent_attr); memcpy(&entry->type.gpt, &ent->ent_type, sizeof(uuid_t)); STAILQ_INSERT_TAIL(&table->entries, entry, entry); - DEBUG("new GPT partition added"); *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***