Date: Thu, 23 May 2013 00:52:48 +0000 (UTC) From: Attilio Rao <attilio@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r250923 - in user/attilio/vmobj-readlock: . cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/cg cddl/contrib/opensolaris/lib/libdtrace/common contrib/bmake contrib/bmake/mk contrib/f... Message-ID: <201305230052.r4N0qmDW046573@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: attilio Date: Thu May 23 00:52:48 2013 New Revision: 250923 URL: http://svnweb.freebsd.org/changeset/base/250923 Log: Merge from vmcontention. Added: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/cg/ - copied from r250886, user/attilio/vmcontention/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/cg/ user/attilio/vmobj-readlock/contrib/bmake/mk/stage-install.sh - copied unchanged from r250886, user/attilio/vmcontention/contrib/bmake/mk/stage-install.sh user/attilio/vmobj-readlock/contrib/flex/ - copied from r250886, user/attilio/vmcontention/contrib/flex/ user/attilio/vmobj-readlock/include/uchar.h - copied unchanged from r250886, user/attilio/vmcontention/include/uchar.h user/attilio/vmobj-readlock/include/xlocale/_uchar.h - copied unchanged from r250886, user/attilio/vmcontention/include/xlocale/_uchar.h user/attilio/vmobj-readlock/lib/csu/Makefile - copied unchanged from r250886, user/attilio/vmcontention/lib/csu/Makefile user/attilio/vmobj-readlock/lib/libc/locale/c16rtomb.c - copied unchanged from r250886, user/attilio/vmcontention/lib/libc/locale/c16rtomb.c user/attilio/vmobj-readlock/lib/libc/locale/c32rtomb.c - copied unchanged from r250886, user/attilio/vmcontention/lib/libc/locale/c32rtomb.c user/attilio/vmobj-readlock/lib/libc/locale/mbrtoc16.c - copied unchanged from r250886, user/attilio/vmcontention/lib/libc/locale/mbrtoc16.c user/attilio/vmobj-readlock/lib/libc/locale/mbrtoc32.c - copied unchanged from r250886, user/attilio/vmcontention/lib/libc/locale/mbrtoc32.c user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/share/xml/dev-auto-ja.ent - copied unchanged from r250886, user/attilio/vmcontention/release/doc/ja_JP.eucJP/share/xml/dev-auto-ja.ent user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/share/xml/dev-auto-ru.ent - copied unchanged from r250886, user/attilio/vmcontention/release/doc/ru_RU.KOI8-R/share/xml/dev-auto-ru.ent user/attilio/vmobj-readlock/tools/build/options/WITHOUT_BMAKE - copied unchanged from r250886, user/attilio/vmcontention/tools/build/options/WITHOUT_BMAKE user/attilio/vmobj-readlock/tools/regression/lib/libc/gen/test-popen.c - copied unchanged from r250886, user/attilio/vmcontention/tools/regression/lib/libc/gen/test-popen.c user/attilio/vmobj-readlock/tools/regression/lib/libc/locale/test-c16rtomb.c - copied unchanged from r250886, user/attilio/vmcontention/tools/regression/lib/libc/locale/test-c16rtomb.c user/attilio/vmobj-readlock/tools/regression/lib/libc/locale/test-mbrtoc16.c - copied unchanged from r250886, user/attilio/vmcontention/tools/regression/lib/libc/locale/test-mbrtoc16.c user/attilio/vmobj-readlock/usr.bin/lex/initparse.c - copied unchanged from r250886, user/attilio/vmcontention/usr.bin/lex/initparse.c user/attilio/vmobj-readlock/usr.bin/lex/initparse.h - copied unchanged from r250886, user/attilio/vmcontention/usr.bin/lex/initparse.h user/attilio/vmobj-readlock/usr.bin/lex/initskel.c - copied unchanged from r250886, user/attilio/vmcontention/usr.bin/lex/initskel.c user/attilio/vmobj-readlock/usr.bin/lex/version.awk - copied unchanged from r250886, user/attilio/vmcontention/usr.bin/lex/version.awk Deleted: user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/share/xml/dev-auto-ja.xml user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/share/xml/dev-auto-ru.xml user/attilio/vmobj-readlock/tools/build/options/WITH_BMAKE user/attilio/vmobj-readlock/usr.bin/lex/COPYING user/attilio/vmobj-readlock/usr.bin/lex/FlexLexer.h user/attilio/vmobj-readlock/usr.bin/lex/NEWS user/attilio/vmobj-readlock/usr.bin/lex/README user/attilio/vmobj-readlock/usr.bin/lex/ccl.c user/attilio/vmobj-readlock/usr.bin/lex/dfa.c user/attilio/vmobj-readlock/usr.bin/lex/ecs.c user/attilio/vmobj-readlock/usr.bin/lex/flex.skl user/attilio/vmobj-readlock/usr.bin/lex/flexdef.h user/attilio/vmobj-readlock/usr.bin/lex/gen.c user/attilio/vmobj-readlock/usr.bin/lex/lib/libmain.c user/attilio/vmobj-readlock/usr.bin/lex/lib/libyywrap.c user/attilio/vmobj-readlock/usr.bin/lex/main.c user/attilio/vmobj-readlock/usr.bin/lex/misc.c user/attilio/vmobj-readlock/usr.bin/lex/mkskel.sh user/attilio/vmobj-readlock/usr.bin/lex/nfa.c user/attilio/vmobj-readlock/usr.bin/lex/parse.y user/attilio/vmobj-readlock/usr.bin/lex/scan.l user/attilio/vmobj-readlock/usr.bin/lex/sym.c user/attilio/vmobj-readlock/usr.bin/lex/tblcmp.c user/attilio/vmobj-readlock/usr.bin/lex/version.h user/attilio/vmobj-readlock/usr.bin/lex/yylex.c Modified: user/attilio/vmobj-readlock/MAINTAINERS (contents, props changed) user/attilio/vmobj-readlock/Makefile.inc1 user/attilio/vmobj-readlock/ObsoleteFiles.inc user/attilio/vmobj-readlock/UPDATING user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cg.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_dis.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_error.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_errtags.h user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.c user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.h user/attilio/vmobj-readlock/contrib/bmake/ChangeLog user/attilio/vmobj-readlock/contrib/bmake/FILES user/attilio/vmobj-readlock/contrib/bmake/Makefile user/attilio/vmobj-readlock/contrib/bmake/meta.c user/attilio/vmobj-readlock/contrib/bmake/mk/ChangeLog user/attilio/vmobj-readlock/contrib/bmake/mk/FILES user/attilio/vmobj-readlock/contrib/bmake/mk/gendirdeps.mk user/attilio/vmobj-readlock/contrib/bmake/mk/install-mk user/attilio/vmobj-readlock/contrib/bmake/mk/meta.stage.mk user/attilio/vmobj-readlock/contrib/bmake/mk/meta2deps.py user/attilio/vmobj-readlock/contrib/bmake/mk/meta2deps.sh user/attilio/vmobj-readlock/contrib/bmake/mk/options.mk user/attilio/vmobj-readlock/contrib/bmake/mk/progs.mk user/attilio/vmobj-readlock/contrib/bmake/suff.c user/attilio/vmobj-readlock/contrib/bmake/var.c user/attilio/vmobj-readlock/crypto/heimdal/lib/kadm5/ipropd_master.c user/attilio/vmobj-readlock/etc/rc user/attilio/vmobj-readlock/etc/rc.d/ipfw user/attilio/vmobj-readlock/etc/rc.d/netif user/attilio/vmobj-readlock/etc/rc.d/routing user/attilio/vmobj-readlock/etc/rc.shutdown user/attilio/vmobj-readlock/gnu/usr.bin/diff/Makefile user/attilio/vmobj-readlock/gnu/usr.bin/grep/Makefile user/attilio/vmobj-readlock/gnu/usr.bin/grep/dfa.c user/attilio/vmobj-readlock/gnu/usr.bin/grep/grep.c user/attilio/vmobj-readlock/gnu/usr.bin/grep/search.c user/attilio/vmobj-readlock/include/Makefile user/attilio/vmobj-readlock/include/arpa/tftp.h user/attilio/vmobj-readlock/include/fts.h user/attilio/vmobj-readlock/include/ifaddrs.h user/attilio/vmobj-readlock/include/protocols/rwhod.h user/attilio/vmobj-readlock/include/stdatomic.h user/attilio/vmobj-readlock/include/xlocale/Makefile user/attilio/vmobj-readlock/lib/libc/gen/fts.3 user/attilio/vmobj-readlock/lib/libc/gen/popen.3 user/attilio/vmobj-readlock/lib/libc/gen/popen.c user/attilio/vmobj-readlock/lib/libc/locale/Makefile.inc user/attilio/vmobj-readlock/lib/libc/locale/Symbol.map user/attilio/vmobj-readlock/lib/libc/locale/mbrtowc.3 user/attilio/vmobj-readlock/lib/libc/locale/wcrtomb.3 user/attilio/vmobj-readlock/lib/libc/locale/xlocale_private.h user/attilio/vmobj-readlock/lib/libc/net/getifaddrs.3 user/attilio/vmobj-readlock/lib/libc/net/getifmaddrs.3 user/attilio/vmobj-readlock/lib/libc/sys/setfib.2 user/attilio/vmobj-readlock/release/doc/en_US.ISO8859-1/hardware/Makefile user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/hardware/alpha/Makefile user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/hardware/amd64/Makefile user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/hardware/i386/Makefile user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/hardware/ia64/Makefile user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/hardware/pc98/Makefile user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/hardware/sparc64/Makefile user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/share/xml/catalog user/attilio/vmobj-readlock/release/doc/ja_JP.eucJP/share/xml/catalog.xml user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/hardware/alpha/Makefile user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/hardware/amd64/Makefile user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/hardware/i386/Makefile user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/hardware/ia64/Makefile user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/hardware/pc98/Makefile user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/hardware/sparc64/Makefile user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/share/xml/catalog user/attilio/vmobj-readlock/release/doc/ru_RU.KOI8-R/share/xml/catalog.xml user/attilio/vmobj-readlock/release/doc/zh_CN.GB2312/hardware/Makefile user/attilio/vmobj-readlock/sbin/hastd/hast.h user/attilio/vmobj-readlock/sbin/hastd/parse.y user/attilio/vmobj-readlock/sbin/hastd/token.l user/attilio/vmobj-readlock/share/i18n/csmapper/Makefile user/attilio/vmobj-readlock/share/i18n/esdb/Makefile user/attilio/vmobj-readlock/share/man/man5/src.conf.5 user/attilio/vmobj-readlock/share/man/man9/locking.9 user/attilio/vmobj-readlock/share/misc/bsd-family-tree user/attilio/vmobj-readlock/sys/dev/mps/mps_user.c user/attilio/vmobj-readlock/sys/dev/xen/netfront/netfront.c user/attilio/vmobj-readlock/sys/kern/kern_poll.c user/attilio/vmobj-readlock/sys/kern/uipc_usrreq.c user/attilio/vmobj-readlock/sys/net/ppp_defs.h user/attilio/vmobj-readlock/sys/sys/timex.h user/attilio/vmobj-readlock/sys/ufs/ffs/ffs_softdep.c user/attilio/vmobj-readlock/sys/xen/xenbus/xenbusb.c user/attilio/vmobj-readlock/tools/regression/lib/libc/gen/Makefile user/attilio/vmobj-readlock/tools/regression/lib/libc/locale/Makefile user/attilio/vmobj-readlock/tools/tools/ath/athalq/main.c user/attilio/vmobj-readlock/tools/tools/makeroot/makeroot.8 user/attilio/vmobj-readlock/usr.bin/bmake/Makefile user/attilio/vmobj-readlock/usr.bin/lex/Makefile user/attilio/vmobj-readlock/usr.bin/lex/config.h user/attilio/vmobj-readlock/usr.bin/lex/initscan.c user/attilio/vmobj-readlock/usr.bin/lex/lex.1 user/attilio/vmobj-readlock/usr.bin/lex/lib/Makefile user/attilio/vmobj-readlock/usr.bin/split/split.c user/attilio/vmobj-readlock/usr.sbin/acpi/acpidb/Makefile user/attilio/vmobj-readlock/usr.sbin/acpi/iasl/Makefile user/attilio/vmobj-readlock/usr.sbin/mergemaster/mergemaster.sh user/attilio/vmobj-readlock/usr.sbin/pkg_install/version/pkg_version.1 Directory Properties: user/attilio/vmobj-readlock/ (props changed) user/attilio/vmobj-readlock/cddl/ (props changed) user/attilio/vmobj-readlock/cddl/contrib/opensolaris/ (props changed) user/attilio/vmobj-readlock/contrib/bmake/ (props changed) user/attilio/vmobj-readlock/crypto/heimdal/ (props changed) user/attilio/vmobj-readlock/lib/libc/ (props changed) user/attilio/vmobj-readlock/sbin/ (props changed) user/attilio/vmobj-readlock/sys/ (props changed) Modified: user/attilio/vmobj-readlock/MAINTAINERS ============================================================================== --- user/attilio/vmobj-readlock/MAINTAINERS Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/MAINTAINERS Thu May 23 00:52:48 2013 (r250923) @@ -28,6 +28,7 @@ MAC Framework rwatson Pre-commit review MAC Modules rwatson Pre-commit review requested. contrib/openbsm rwatson Pre-commit review requested. sys/security/audit rwatson Pre-commit review requested. +ath(4) adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org ahc(4) gibbs Pre-commit review requested. ahd(4) gibbs Pre-commit review requested. PC Card imp Pre-commit review requested. @@ -63,6 +64,7 @@ procfs des Pre-commit review requested. linprocfs des Pre-commit review requested. lpr gad Pre-commit review requested, particularly for lpd/recvjob.c and lpd/printjob.c. +net80211 adrian Pre-commit review requested, send to freebsd-wireless@freebsd.org nvi peter Try not to break it. libz peter Try not to break it. groff ru Recommends pre-commit review. Modified: user/attilio/vmobj-readlock/Makefile.inc1 ============================================================================== --- user/attilio/vmobj-readlock/Makefile.inc1 Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/Makefile.inc1 Thu May 23 00:52:48 2013 (r250923) @@ -366,10 +366,12 @@ LIB32WMAKEFLAGS= \ LIB32FLAGS= -m32 ${LIB32CPUFLAGS} -DCOMPAT_32BIT \ - --sysroot=${WORLDTMP} \ -isystem ${LIB32TMP}/usr/include/ \ -L${LIB32TMP}/usr/lib32 \ -B${LIB32TMP}/usr/lib32 +.if ${XCC:M/*} +LIB32FLAGS+= --sysroot=${WORLDTMP} +.endif # Yes, the flags are redundant. LIB32WMAKEENV+= MAKEOBJDIRPREFIX=${OBJTREE}/lib32 \ @@ -1032,8 +1034,10 @@ distributekernel distributekernel.debug: ${IMAKE_MTREE} PATH=${TMPPATH} ${MAKE} KERNEL=${INSTKERNNAME} \ DESTDIR=${INSTALL_DDIR:S://:/:g:C:/$::}/kernel \ ${.TARGET:S/distributekernel/install/} +.if defined(NO_ROOT) sed -e 's|^./kernel|.|' ${DESTDIR}/${DISTDIR}/kernel.premeta > \ ${DESTDIR}/${DISTDIR}/kernel.meta +.endif .for _kernel in ${BUILDKERNELS:S/${INSTALLKERNEL}//} .if defined(NO_ROOT) echo "#${MTREE_MAGIC}" > ${DESTDIR}/${DISTDIR}/kernel.${_kernel}.premeta @@ -1202,6 +1206,10 @@ _sed= usr.bin/sed _lex= usr.bin/lex .endif +.if ${BOOTSTRAPPING} < 1000002 +_m4= usr.bin/m4 +.endif + .if ${BOOTSTRAPPING} < 1000013 _yacc= lib/liby \ usr.bin/yacc @@ -1279,6 +1287,7 @@ bootstrap-tools: usr.bin/rpcgen \ ${_sed} \ ${_yacc} \ + ${_m4} \ ${_lex} \ lib/libmd \ usr.bin/xinstall \ Modified: user/attilio/vmobj-readlock/ObsoleteFiles.inc ============================================================================== --- user/attilio/vmobj-readlock/ObsoleteFiles.inc Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/ObsoleteFiles.inc Thu May 23 00:52:48 2013 (r250923) @@ -38,6 +38,8 @@ # xargs -n1 | sort | uniq -d; # done +# 20130417: nfs fha moved from nfsserver to nfs +OLD_FILES+=usr/include/nfsserver/nfs_fha.h # 20130411: new clang import which bumps version from 3.2 to 3.3. OLD_FILES+=usr/include/clang/3.2/__wmmintrin_aes.h OLD_FILES+=usr/include/clang/3.2/__wmmintrin_pclmul.h Modified: user/attilio/vmobj-readlock/UPDATING ============================================================================== --- user/attilio/vmobj-readlock/UPDATING Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/UPDATING Thu May 23 00:52:48 2013 (r250923) @@ -31,6 +31,18 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130516: + Use bmake by default. + Whereas before one could choose to build with bmake via + -DWITH_BMAKE one must now use -DWITHOUT_BMAKE to use the old + make. The goal is to remove these knobs for 10-RELEASE. + + It is worth noting that bmake (like gmake) treats the command + line as the unit of failure, rather than statements within the + command line. Thus '(cd some/where && dosomething)' is safer + than 'cd some/where; dosomething'. The '()' allows consistent + behavior in parallel build. + 20130429: Fix a bug that allows NFS clients to issue READDIR on files. Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cg.c ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cg.c Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_cg.c Thu May 23 00:52:48 2013 (r250923) @@ -19,12 +19,15 @@ * * CDDL HEADER END */ + /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ #include <sys/types.h> #include <sys/sysmacros.h> @@ -193,9 +196,6 @@ dt_cg_ptrsize(dt_node_t *dnp, dt_irlist_ ssize_t size; int sreg; - if ((sreg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - type = ctf_type_resolve(ctfp, dnp->dn_type); kind = ctf_type_kind(ctfp, type); assert(kind == CTF_K_POINTER || kind == CTF_K_ARRAY); @@ -212,6 +212,7 @@ dt_cg_ptrsize(dt_node_t *dnp, dt_irlist_ if ((size = ctf_type_size(ctfp, type)) == 1) return; /* multiply or divide by one can be omitted */ + sreg = dt_regset_alloc(drp); dt_cg_setx(dlp, sreg, size); instr = DIF_INSTR_FMT(op, dreg, sreg, dreg); dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); @@ -251,9 +252,7 @@ dt_cg_field_get(dt_node_t *dnp, dt_irlis assert(dnp->dn_op == DT_TOK_PTR || dnp->dn_op == DT_TOK_DOT); r1 = dnp->dn_left->dn_reg; - - if ((r2 = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + r2 = dt_regset_alloc(drp); /* * On little-endian architectures, ctm_offset counts from the right so @@ -356,10 +355,9 @@ dt_cg_field_set(dt_node_t *src, dt_irlis "bits %u\n", m.ctm_offset, m.ctm_type, e.cte_bits); } - if ((r1 = dt_regset_alloc(drp)) == -1 || - (r2 = dt_regset_alloc(drp)) == -1 || - (r3 = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + r1 = dt_regset_alloc(drp); + r2 = dt_regset_alloc(drp); + r3 = dt_regset_alloc(drp); /* * Compute shifts and masks. We need to compute "shift" as the amount @@ -423,8 +421,7 @@ dt_cg_store(dt_node_t *src, dt_irlist_t size = dt_node_type_size(src); if (src->dn_flags & DT_NF_REF) { - if ((reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + reg = dt_regset_alloc(drp); dt_cg_setx(dlp, reg, size); instr = DIF_INSTR_COPYS(src->dn_reg, reg, dst->dn_reg); dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); @@ -474,30 +471,58 @@ dt_cg_typecast(const dt_node_t *src, con size_t dstsize = dt_node_type_size(dst); dif_instr_t instr; - int reg, n; + int rg; - if (dt_node_is_scalar(dst) && (dstsize < srcsize || - (src->dn_flags & DT_NF_SIGNED) ^ (dst->dn_flags & DT_NF_SIGNED))) { - if ((reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + if (!dt_node_is_scalar(dst)) + return; /* not a scalar */ + if (dstsize == srcsize && + ((src->dn_flags ^ dst->dn_flags) & DT_NF_SIGNED) != 0) + return; /* not narrowing or changing signed-ness */ + if (dstsize > srcsize && (src->dn_flags & DT_NF_SIGNED) == 0) + return; /* nothing to do in this case */ - if (dstsize < srcsize) - n = sizeof (uint64_t) * NBBY - dstsize * NBBY; - else - n = sizeof (uint64_t) * NBBY - srcsize * NBBY; + rg = dt_regset_alloc(drp); + + if (dstsize > srcsize) { + int n = sizeof (uint64_t) * NBBY - srcsize * NBBY; + int s = (dstsize - srcsize) * NBBY; - dt_cg_setx(dlp, reg, n); + dt_cg_setx(dlp, rg, n); - instr = DIF_INSTR_FMT(DIF_OP_SLL, - src->dn_reg, reg, dst->dn_reg); + instr = DIF_INSTR_FMT(DIF_OP_SLL, src->dn_reg, rg, dst->dn_reg); dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); - instr = DIF_INSTR_FMT((dst->dn_flags & DT_NF_SIGNED) ? - DIF_OP_SRA : DIF_OP_SRL, dst->dn_reg, reg, dst->dn_reg); + if ((dst->dn_flags & DT_NF_SIGNED) || n == s) { + instr = DIF_INSTR_FMT(DIF_OP_SRA, + dst->dn_reg, rg, dst->dn_reg); + dt_irlist_append(dlp, + dt_cg_node_alloc(DT_LBL_NONE, instr)); + } else { + dt_cg_setx(dlp, rg, s); + instr = DIF_INSTR_FMT(DIF_OP_SRA, + dst->dn_reg, rg, dst->dn_reg); + dt_irlist_append(dlp, + dt_cg_node_alloc(DT_LBL_NONE, instr)); + dt_cg_setx(dlp, rg, n - s); + instr = DIF_INSTR_FMT(DIF_OP_SRL, + dst->dn_reg, rg, dst->dn_reg); + dt_irlist_append(dlp, + dt_cg_node_alloc(DT_LBL_NONE, instr)); + } + } else if (dstsize != sizeof (uint64_t)) { + int n = sizeof (uint64_t) * NBBY - dstsize * NBBY; + + dt_cg_setx(dlp, rg, n); + instr = DIF_INSTR_FMT(DIF_OP_SLL, src->dn_reg, rg, dst->dn_reg); + dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); + + instr = DIF_INSTR_FMT((dst->dn_flags & DT_NF_SIGNED) ? + DIF_OP_SRA : DIF_OP_SRL, dst->dn_reg, rg, dst->dn_reg); dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); - dt_regset_free(drp, reg); } + + dt_regset_free(drp, rg); } /* @@ -523,8 +548,7 @@ dt_cg_arglist(dt_ident_t *idp, dt_node_t for (dnp = args; dnp != NULL; dnp = dnp->dn_list) dt_cg_node(dnp, dlp, drp); - dt_irlist_append(dlp, - dt_cg_node_alloc(DT_LBL_NONE, DIF_INSTR_FLUSHTS)); + dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, DIF_INSTR_FLUSHTS)); for (dnp = args; dnp != NULL; dnp = dnp->dn_list, i++) { dtrace_diftype_t t; @@ -538,17 +562,18 @@ dt_cg_arglist(dt_ident_t *idp, dt_node_t dt_cg_typecast(dnp, &isp->dis_args[i], dlp, drp); isp->dis_args[i].dn_reg = -1; - if (t.dtdt_flags & DIF_TF_BYREF) + if (t.dtdt_flags & DIF_TF_BYREF) { op = DIF_OP_PUSHTR; - else + if (t.dtdt_size != 0) { + reg = dt_regset_alloc(drp); + dt_cg_setx(dlp, reg, t.dtdt_size); + } else { + reg = DIF_REG_R0; + } + } else { op = DIF_OP_PUSHTV; - - if (t.dtdt_size != 0) { - if ((reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - dt_cg_setx(dlp, reg, t.dtdt_size); - } else reg = DIF_REG_R0; + } instr = DIF_INSTR_PUSHTS(op, t.dtdt_kind, reg, dnp->dn_reg); dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); @@ -629,9 +654,7 @@ dt_cg_prearith_op(dt_node_t *dnp, dt_irl dt_cg_node(dnp->dn_child, dlp, drp); dnp->dn_reg = dnp->dn_child->dn_reg; - if ((reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - + reg = dt_regset_alloc(drp); dt_cg_setx(dlp, reg, size); instr = DIF_INSTR_FMT(op, dnp->dn_reg, reg, dnp->dn_reg); @@ -688,9 +711,7 @@ dt_cg_postarith_op(dt_node_t *dnp, dt_ir dt_cg_node(dnp->dn_child, dlp, drp); dnp->dn_reg = dnp->dn_child->dn_reg; - if ((nreg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - + nreg = dt_regset_alloc(drp); dt_cg_setx(dlp, nreg, size); instr = DIF_INSTR_FMT(op, dnp->dn_reg, nreg, nreg); dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); @@ -1008,9 +1029,7 @@ dt_cg_asgn_op(dt_node_t *dnp, dt_irlist_ * set it to the size of our data structure, and then replace * it with the result of an allocs of the specified size. */ - if ((r1 = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - + r1 = dt_regset_alloc(drp); dt_cg_setx(dlp, r1, ctf_type_size(dxp->dx_dst_ctfp, dxp->dx_dst_base)); @@ -1054,8 +1073,7 @@ dt_cg_asgn_op(dt_node_t *dnp, dt_irlist_ * and add r1 to it before storing the result. */ if (ctm.ctm_offset != 0) { - if ((r2 = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + r2 = dt_regset_alloc(drp); /* * Add the member offset rounded down to the @@ -1142,8 +1160,7 @@ dt_cg_assoc_op(dt_node_t *dnp, dt_irlist dt_cg_arglist(dnp->dn_ident, dnp->dn_args, dlp, drp); - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + dnp->dn_reg = dt_regset_alloc(drp); if (dnp->dn_ident->di_flags & DT_IDFLG_TLS) op = DIF_OP_LDTAA; @@ -1273,9 +1290,7 @@ dt_cg_array_op(dt_node_t *dnp, dt_irlist if ((size = dt_node_type_size(dnp)) == sizeof (uint64_t)) return; - if ((reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - + reg = dt_regset_alloc(drp); assert(size < sizeof (uint64_t)); n = sizeof (uint64_t) * NBBY - size * NBBY; @@ -1384,7 +1399,6 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * dt_ident_t *idp; ssize_t stroff; uint_t op; - int reg; switch (dnp->dn_op) { case DT_TOK_COMMA: @@ -1622,10 +1636,7 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * case DT_TOK_SIZEOF: { size_t size = dt_node_sizeof(dnp->dn_child); - - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - + dnp->dn_reg = dt_regset_alloc(drp); assert(size != 0); dt_cg_setx(dlp, dnp->dn_reg, size); break; @@ -1650,8 +1661,7 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * assert(dxp->dx_ident->di_flags & DT_IDFLG_CGREG); assert(dxp->dx_ident->di_id != 0); - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + dnp->dn_reg = dt_regset_alloc(drp); if (dxp->dx_arg == -1) { instr = DIF_INSTR_MOV( @@ -1735,8 +1745,9 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * } if (m.ctm_offset != 0) { - if ((reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + int reg; + + reg = dt_regset_alloc(drp); /* * If the offset is not aligned on a byte boundary, it @@ -1782,8 +1793,7 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * break; case DT_TOK_STRING: - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + dnp->dn_reg = dt_regset_alloc(drp); assert(dnp->dn_kind == DT_NODE_STRING); stroff = dt_strtab_insert(yypcb->pcb_strtab, dnp->dn_string); @@ -1806,8 +1816,7 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * */ if (dnp->dn_kind == DT_NODE_VAR && (dnp->dn_ident->di_flags & DT_IDFLG_CGREG)) { - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + dnp->dn_reg = dt_regset_alloc(drp); instr = DIF_INSTR_MOV(dnp->dn_ident->di_id, dnp->dn_reg); dt_irlist_append(dlp, @@ -1848,11 +1857,9 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * dt_cg_arglist(dnp->dn_ident, dnp->dn_args, dlp, drp); - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - - instr = DIF_INSTR_CALL( - dnp->dn_ident->di_id, dnp->dn_reg); + dnp->dn_reg = dt_regset_alloc(drp); + instr = DIF_INSTR_CALL(dnp->dn_ident->di_id, + dnp->dn_reg); dt_irlist_append(dlp, dt_cg_node_alloc(DT_LBL_NONE, instr)); @@ -1880,8 +1887,7 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * break; } - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); + dnp->dn_reg = dt_regset_alloc(drp); if (dnp->dn_ident->di_flags & DT_IDFLG_LOCAL) op = DIF_OP_LDLS; @@ -1911,9 +1917,7 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * dtrace_errmsg(dtp, dtrace_errno(dtp))); } - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - + dnp->dn_reg = dt_regset_alloc(drp); dt_cg_xsetx(dlp, dnp->dn_ident, DT_LBL_NONE, dnp->dn_reg, sym.st_value); @@ -1933,9 +1937,7 @@ dt_cg_node(dt_node_t *dnp, dt_irlist_t * break; case DT_TOK_INT: - if ((dnp->dn_reg = dt_regset_alloc(drp)) == -1) - longjmp(yypcb->pcb_jmpbuf, EDT_NOREG); - + dnp->dn_reg = dt_regset_alloc(drp); dt_cg_setx(dlp, dnp->dn_reg, dnp->dn_value); break; @@ -1950,6 +1952,7 @@ dt_cg(dt_pcb_t *pcb, dt_node_t *dnp) { dif_instr_t instr; dt_xlator_t *dxp; + dt_ident_t *idp; if (pcb->pcb_regs == NULL && (pcb->pcb_regs = dt_regset_create(pcb->pcb_hdl->dt_conf.dtc_difintregs)) == NULL) @@ -1976,9 +1979,9 @@ dt_cg(dt_pcb_t *pcb, dt_node_t *dnp) assert(pcb->pcb_dret == NULL); pcb->pcb_dret = dnp; - if (dt_node_is_dynamic(dnp)) { + if (dt_node_resolve(dnp, DT_IDENT_XLPTR) != NULL) { dnerror(dnp, D_CG_DYN, "expression cannot evaluate to result " - "of dynamic type\n"); + "of a translated pointer\n"); } /* @@ -1994,6 +1997,7 @@ dt_cg(dt_pcb_t *pcb, dt_node_t *dnp) } dt_cg_node(dnp, &pcb->pcb_ir, pcb->pcb_regs); + instr = DIF_INSTR_RET(dnp->dn_reg); dt_regset_free(pcb->pcb_regs, dnp->dn_reg); dt_irlist_append(&pcb->pcb_ir, dt_cg_node_alloc(DT_LBL_NONE, instr)); @@ -2003,4 +2007,7 @@ dt_cg(dt_pcb_t *pcb, dt_node_t *dnp) dxp->dx_ident->di_id = 0; dxp->dx_ident->di_flags &= ~DT_IDFLG_CGREG; } + + dt_regset_free(pcb->pcb_regs, 0); + dt_regset_assert_free(pcb->pcb_regs); } Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_dis.c ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_dis.c Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_dis.c Thu May 23 00:52:48 2013 (r250923) @@ -19,12 +19,15 @@ * * CDDL HEADER END */ + /* * Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ #include <strings.h> #include <stdio.h> @@ -212,12 +215,22 @@ dt_dis_pushts(const dtrace_difo_t *dp, { static const char *const tnames[] = { "D type", "string" }; uint_t type = DIF_INSTR_TYPE(in); + const char *pad; - (void) fprintf(fp, "%-4s DT_TYPE(%u), %%r%u, %%r%u", - name, type, DIF_INSTR_R2(in), DIF_INSTR_RS(in)); + if (DIF_INSTR_OP(in) == DIF_OP_PUSHTV) { + (void) fprintf(fp, "%-4s DT_TYPE(%u), %%r%u", + name, type, DIF_INSTR_RS(in)); + pad = "\t\t"; + } else { + (void) fprintf(fp, "%-4s DT_TYPE(%u), %%r%u, %%r%u", + name, type, DIF_INSTR_R2(in), DIF_INSTR_RS(in)); + pad = "\t"; + } - if (type < sizeof (tnames) / sizeof (tnames[0])) - (void) fprintf(fp, "\t! DT_TYPE(%u) = %s", type, tnames[type]); + if (type < sizeof (tnames) / sizeof (tnames[0])) { + (void) fprintf(fp, "%s! DT_TYPE(%u) = %s", pad, + type, tnames[type]); + } } static void Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_error.c ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_error.c Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_error.c Thu May 23 00:52:48 2013 (r250923) @@ -23,6 +23,10 @@ * Use is subject to license terms. */ +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + #include <string.h> #include <strings.h> #include <dt_impl.h> @@ -37,7 +41,6 @@ static const struct { { EDT_VERSREDUCED, "Requested version conflicts with earlier setting" }, { EDT_CTF, "Unexpected libctf error" }, { EDT_COMPILER, "Error in D program compilation" }, - { EDT_NOREG, "Insufficient registers to generate code" }, { EDT_NOTUPREG, "Insufficient tuple registers to generate code" }, { EDT_NOMEM, "Memory allocation failure" }, { EDT_INT2BIG, "Integer constant table limit exceeded" }, Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_errtags.h ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_errtags.h Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_errtags.h Thu May 23 00:52:48 2013 (r250923) @@ -26,7 +26,7 @@ /* * Copyright (c) 2011, Joyent, Inc. All rights reserved. - * Copyright (c) 2011 by Delphix. All rights reserved. + * Copyright (c) 2012 by Delphix. All rights reserved. */ #ifndef _DT_ERRTAGS_H @@ -260,6 +260,7 @@ typedef enum { D_LLQUANT_FACTOREVEN, /* llquantize() bad # steps/factor */ D_LLQUANT_FACTORSMALL, /* llquantize() magnitude too small */ D_LLQUANT_MAGTOOBIG, /* llquantize() high mag too large */ + D_NOREG, /* no available internal registers */ D_PRINTM_ADDR, /* printm() memref bad type */ D_PRINTM_SIZE, /* printm() size bad type */ D_PRINTT_ADDR, /* printt() typeref bad type */ Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.c ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.c Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.c Thu May 23 00:52:48 2013 (r250923) @@ -19,12 +19,15 @@ * * CDDL HEADER END */ + /* * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ #include <sys/types.h> #include <sys/bitmap.h> @@ -33,18 +36,19 @@ #include <stdlib.h> #include <dt_regset.h> +#include <dt_impl.h> dt_regset_t * -dt_regset_create(ulong_t size) +dt_regset_create(ulong_t nregs) { - ulong_t n = BT_BITOUL(size + 1); /* + 1 for %r0 */ + ulong_t n = BT_BITOUL(nregs); dt_regset_t *drp = malloc(sizeof (dt_regset_t)); if (drp == NULL) return (NULL); drp->dr_bitmap = malloc(sizeof (ulong_t) * n); - drp->dr_size = size + 1; + drp->dr_size = nregs; if (drp->dr_bitmap == NULL) { dt_regset_destroy(drp); @@ -68,6 +72,25 @@ dt_regset_reset(dt_regset_t *drp) bzero(drp->dr_bitmap, sizeof (ulong_t) * BT_BITOUL(drp->dr_size)); } +void +dt_regset_assert_free(dt_regset_t *drp) +{ + int reg; + boolean_t fail = B_FALSE; + for (reg = 0; reg < drp->dr_size; reg++) { + if (BT_TEST(drp->dr_bitmap, reg) != 0) { + dt_dprintf("%%r%d was left allocated\n", reg); + fail = B_TRUE; + } + } + + /* + * We set this during dtest runs to check for register leaks. + */ + if (fail && getenv("DTRACE_DEBUG_REGSET") != NULL) + abort(); +} + int dt_regset_alloc(dt_regset_t *drp) { @@ -95,13 +118,15 @@ dt_regset_alloc(dt_regset_t *drp) } } - return (-1); /* no available registers */ + xyerror(D_NOREG, "Insufficient registers to generate code"); + /*NOTREACHED*/ + return (-1); } void dt_regset_free(dt_regset_t *drp, int reg) { - assert(reg > 0 && reg < drp->dr_size); + assert(reg >= 0 && reg < drp->dr_size); assert(BT_TEST(drp->dr_bitmap, reg) != 0); BT_CLEAR(drp->dr_bitmap, reg); } Modified: user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.h ============================================================================== --- user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.h Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/cddl/contrib/opensolaris/lib/libdtrace/common/dt_regset.h Thu May 23 00:52:48 2013 (r250923) @@ -19,16 +19,19 @@ * * CDDL HEADER END */ + /* * Copyright 2003 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ +/* + * Copyright (c) 2012 by Delphix. All rights reserved. + */ + #ifndef _DT_REGSET_H #define _DT_REGSET_H -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/types.h> #ifdef __cplusplus @@ -45,6 +48,7 @@ extern void dt_regset_destroy(dt_regset_ extern void dt_regset_reset(dt_regset_t *); extern int dt_regset_alloc(dt_regset_t *); extern void dt_regset_free(dt_regset_t *, int); +extern void dt_regset_assert_free(dt_regset_t *); #ifdef __cplusplus } Modified: user/attilio/vmobj-readlock/contrib/bmake/ChangeLog ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/ChangeLog Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/ChangeLog Thu May 23 00:52:48 2013 (r250923) @@ -1,3 +1,17 @@ +2013-05-20 Simon J. Gerraty <sjg@bad.crufty.net> + + * Makefile (MAKE_VERSION): 20130520 + generate manifest from component FILES rather than have to + update FILES when mk/FILES changes. + +2013-05-18 Simon J. Gerraty <sjg@bad.crufty.net> + + * Makefile (MAKE_VERSION): 20130518 + Merge with NetBSD make, pick up + o suff.c: don't skip all processsing for .PHONY targets + else wildcard srcs do not get expanded. + o var.c: expand name of variable to delete if necessary. + 2013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> * Makefile (MAKE_VERSION): 20130330 Modified: user/attilio/vmobj-readlock/contrib/bmake/FILES ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/FILES Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/FILES Thu May 23 00:52:48 2013 (r250923) @@ -1,29 +1,26 @@ -FILES ChangeLog -bmake.cat1 -boot-strap -bsd.after-import.mk -os.sh -makefile.in +FILES Makefile Makefile.config.in PSD.doc/Makefile PSD.doc/tutorial.ms README +aclocal.m4 arch.c +bmake.1 +bmake.cat1 +boot-strap +bsd.after-import.mk buf.c buf.h compat.c cond.c -make-conf.h -make_malloc.c -make_malloc.h config.h.in configure -aclocal.m4 configure.in dir.c dir.h +dirname.c find_lib.sh for.c getopt.c @@ -32,16 +29,6 @@ hash.h install-sh job.c job.h -meta.c -meta.h -dirname.c -realpath.c -strlcpy.c -strlist.c -strlist.h -stresep.c -trace.c -trace.h lst.h lst.lib/Makefile lst.lib/lstAppend.c @@ -74,26 +61,36 @@ lst.lib/lstReplace.c lst.lib/lstSucc.c machine.sh main.c +make-bootstrap.sh.in +make-conf.h make.1 -bmake.1 make.c make.h -make-bootstrap.sh.in +make_malloc.c +make_malloc.h +makefile.in +meta.c +meta.h missing/sys/cdefs.h mkdeps.sh nonints.h +os.sh parse.c pathnames.h ranlib.h +realpath.c setenv.c sigcompat.c sprite.h str.c +stresep.c +strlcpy.c +strlist.c +strlist.h suff.c targ.c -util.c -var.c -wait.h +trace.c +trace.h unit-tests/Makefile.in unit-tests/comment unit-tests/cond1 @@ -123,63 +120,6 @@ unit-tests/test.exp unit-tests/unexport unit-tests/unexport-env unit-tests/varcmd -mk/ChangeLog -mk/FILES -mk/README -mk/auto.obj.mk -mk/autoconf.mk -mk/autodep.mk -mk/auto.dep.mk -mk/dep.mk -mk/doc.mk -mk/dpadd.mk -mk/final.mk -mk/host-target.mk -mk/host.libnames.mk -mk/inc.mk -mk/init.mk -mk/install-mk -mk/java.mk -mk/lib.mk -mk/libnames.mk -mk/libs.mk -mk/links.mk -mk/man.mk -mk/mk-files.txt -mk/nls.mk -mk/obj.mk -mk/options.mk -mk/own.mk -mk/prlist.mk -mk/prog.mk -mk/progs.mk -mk/rst2htm.mk -mk/scripts.mk -mk/srctop.mk -mk/subdir.mk -mk/sys.mk -mk/sys.clean-env.mk -mk/sys.dependfile.mk -mk/sys/AIX.mk -mk/sys/Darwin.mk -mk/sys/Generic.mk -mk/sys/HP-UX.mk -mk/sys/IRIX.mk -mk/sys/Linux.mk -mk/sys/NetBSD.mk -mk/sys/OSF1.mk -mk/sys/OpenBSD.mk -mk/sys/SunOS.mk -mk/sys/UnixWare.mk -mk/target-flags.mk -mk/warnings.mk -mk/yacc.mk -mk/dirdeps.mk -mk/gendirdeps.mk -mk/install-new.mk -mk/meta2deps.py -mk/meta2deps.sh -mk/meta.sys.mk -mk/meta.autodep.mk -mk/meta.stage.mk -mk/meta.subdir.mk +util.c +var.c +wait.h Modified: user/attilio/vmobj-readlock/contrib/bmake/Makefile ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/Makefile Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/Makefile Thu May 23 00:52:48 2013 (r250923) @@ -1,7 +1,7 @@ -# $Id: Makefile,v 1.10 2013/03/31 05:57:19 sjg Exp $ +# $Id: Makefile,v 1.12 2013/05/20 16:05:10 sjg Exp $ # Base version on src date -MAKE_VERSION= 20130330 +MAKE_VERSION= 20130520 PROG= bmake Modified: user/attilio/vmobj-readlock/contrib/bmake/meta.c ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/meta.c Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/meta.c Thu May 23 00:52:48 2013 (r250923) @@ -1,4 +1,4 @@ -/* $NetBSD: meta.c,v 1.29 2013/03/31 05:49:51 sjg Exp $ */ +/* $NetBSD: meta.c,v 1.30 2013/05/16 21:56:56 sjg Exp $ */ /* * Implement 'meta' mode. @@ -543,7 +543,7 @@ boolValue(char *s) * Initialization we need before reading makefiles. */ void -meta_init() +meta_init(void) { #ifdef USE_FILEMON /* this allows makefiles to test if we have filemon support */ Modified: user/attilio/vmobj-readlock/contrib/bmake/mk/ChangeLog ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/mk/ChangeLog Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/mk/ChangeLog Thu May 23 00:52:48 2013 (r250923) @@ -1,3 +1,23 @@ +2013-05-10 Simon J. Gerraty <sjg@bad.crufty.net> + + * install-mk (MK_VERSION): 20130505 + * gendirdeps.mk, meta2deps.py, meta2deps.sh: handle $TARGET_SPEC + for when $MACHINE isn't enough for objdir distinction. + Bring meta2deps.sh closer to par with meta2deps.py. + +2013-04-18 Simon J. Gerraty <sjg@bad.crufty.net> + + * meta.stage.mk: set INSTALL to STAGE_INSTALL when making 'all' + also if the target 'beforeinstall' exists, make it depend on + .dirdep (incase it uses STAGE_INSTALL). + +2013-04-17 Simon J. Gerraty <sjg@bad.crufty.net> + + * install-mk (MK_VERSION): 20130401 ;-) + * meta.stage.mk (STAGE_INSTALL_SH): add stage-install.sh as + wrapper around install(1). + * options.mk (OPTION_PREFIX): Allow a prefix other than MK_ + 2013-03-30 Simon J. Gerraty <sjg@bad.crufty.net> * meta2deps.py (MetaFile.__init__): ensure self.cwd is initialized. Modified: user/attilio/vmobj-readlock/contrib/bmake/mk/FILES ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/mk/FILES Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/mk/FILES Thu May 23 00:52:48 2013 (r250923) @@ -31,6 +31,7 @@ progs.mk rst2htm.mk scripts.mk srctop.mk +stage-install.sh subdir.mk sys.mk sys.clean-env.mk Modified: user/attilio/vmobj-readlock/contrib/bmake/mk/gendirdeps.mk ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/mk/gendirdeps.mk Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/mk/gendirdeps.mk Thu May 23 00:52:48 2013 (r250923) @@ -1,4 +1,4 @@ -# $Id: gendirdeps.mk,v 1.21 2013/03/28 20:01:05 sjg Exp $ +# $Id: gendirdeps.mk,v 1.22 2013/05/11 05:16:26 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -111,13 +111,24 @@ _py_d = .if ${META2DEPS:E} == "py" # we can afford to do this all the time. DPDEPS ?= no -META2DEPS_CMD = ${_time} ${PYTHON} ${META2DEPS} ${_py_d} \ - -R ${RELDIR} -H ${HOST_TARGET} \ - ${M2D_OBJROOTS:O:u:@o@-O $o@} - +META2DEPS_CMD = ${_time} ${PYTHON} ${META2DEPS} ${_py_d} .if ${DPDEPS:tl} != "no" META2DEPS_CMD += -D ${DPDEPS} .endif +META2DEPS_FILTER = sed 's,^src:,${SRCTOP}/,;s,^\([^/]\),${OBJTOP}/\1,' | +.elif ${META2DEPS:E} == "sh" +META2DEPS_CMD = ${_time} ${_sh_x} ${META2DEPS} OBJTOP=${_OBJTOP} +.else +META2DEPS_CMD ?= ${META2DEPS} +.endif + +.if ${TARGET_OBJ_SPEC:U${MACHINE}} != ${MACHINE} +META2DEPS_CMD += -T ${TARGET_OBJ_SPEC} +.endif +META2DEPS_CMD += \ + -R ${RELDIR} -H ${HOST_TARGET} \ + ${M2D_OBJROOTS:O:u:@o@-O $o@} + M2D_OBJROOTS += ${OBJTOP} ${_OBJROOT} ${_objroot} .if defined(SB_OBJROOT) @@ -133,13 +144,6 @@ META2DEPS_ARGS += MACHINE=none META2DEPS_CMD += -S ${SB_BACKING_SB}/src M2D_OBJROOTS += ${SB_BACKING_SB}/${SB_OBJPREFIX} .endif -META2DEPS_FILTER = sed 's,^src:,${SRCTOP}/,;s,^\([^/]\),${OBJTOP}/\1,' | -.elif ${META2DEPS:E} == "sh" -META2DEPS_CMD = ${_time} ${_sh_x} ${META2DEPS} \ - OBJTOP=${_objtop} SB_OBJROOT=${_objroot} -.else -META2DEPS_CMD ?= ${META2DEPS} -.endif # we are only interested in the dirs # sepecifically those we read something from. Modified: user/attilio/vmobj-readlock/contrib/bmake/mk/install-mk ============================================================================== --- user/attilio/vmobj-readlock/contrib/bmake/mk/install-mk Thu May 23 00:49:52 2013 (r250922) +++ user/attilio/vmobj-readlock/contrib/bmake/mk/install-mk Thu May 23 00:52:48 2013 (r250923) @@ -55,7 +55,7 @@ # Simon J. Gerraty <sjg@crufty.net> # RCSid: -# $Id: install-mk,v 1.88 2013/03/31 22:31:59 sjg Exp $ *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201305230052.r4N0qmDW046573>