svn commit: r324103 - head/lib/libc/locale

2017-09-29 Thread Bryan Drewery
Author: bdrewery
Date: Fri Sep 29 16:30:50 2017
New Revision: 324103
URL: https://svnweb.freebsd.org/changeset/base/324103

Log:
  __setrunelocale: Fix asprintf(3) failure not returning an error.
  
  Also fix the style of the asprintf(3) call in __collate_load_tables_l().
  Both of these lines were modified away from snprintf(3) during the
  import from DragonFly/Illumos.
  
  Reviewed by:  jilles (briefly over shoulder)
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/lib/libc/locale/collate.c
  head/lib/libc/locale/setrunelocale.c

Modified: head/lib/libc/locale/collate.c
==
--- head/lib/libc/locale/collate.c  Fri Sep 29 15:53:26 2017
(r324102)
+++ head/lib/libc/locale/collate.c  Fri Sep 29 16:30:50 2017
(r324103)
@@ -125,8 +125,7 @@ __collate_load_tables_l(const char *encoding, struct x
return (_LDP_CACHE);
}
 
-   asprintf(, "%s/%s/LC_COLLATE", _PathLocale, encoding);
-   if (buf == NULL)
+   if (asprintf(, "%s/%s/LC_COLLATE", _PathLocale, encoding) == -1)
return (_LDP_ERROR);
 
if ((fd = _open(buf, O_RDONLY)) < 0) {

Modified: head/lib/libc/locale/setrunelocale.c
==
--- head/lib/libc/locale/setrunelocale.cFri Sep 29 15:53:26 2017
(r324102)
+++ head/lib/libc/locale/setrunelocale.cFri Sep 29 16:30:50 2017
(r324103)
@@ -110,9 +110,8 @@ __setrunelocale(struct xlocale_ctype *l, const char *e
}
 
/* Range checking not needed, encoding length already checked before */
-   asprintf(, "%s/%s/LC_CTYPE", _PathLocale, encoding);
-   if (path == NULL)
-   return (0);
+   if (asprintf(, "%s/%s/LC_CTYPE", _PathLocale, encoding) == -1)
+   return (errno);
 
if ((rl = _Read_RuneMagi(path)) == NULL) {
free(path);
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r323620 - head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise

2017-09-15 Thread Bryan Drewery
Author: bdrewery
Date: Fri Sep 15 19:48:48 2017
New Revision: 323620
URL: https://svnweb.freebsd.org/changeset/base/323620

Log:
  Fix the raise tests.
  
  - The exit probe was not appropriately filtered to only the known pid so it
was firing on any random process that would exit rather the only the one
we cared about.
  - The dtest script executes the tst.raise*.exe in the background from
POSIX sh without jobs control.  POSIX mandates that SIGINT be set to
SIG_IGN in this case.  The test executable never actually tested that
SIGINT could be caught despite trying to block and delay the signal.
So the SIGINT sent from raise() is never actually received since it
is ignored.  This could be fixed by calling 'trap - INT' from dtest
before running the executable but I've opted to just use SIGUSR1
instead in these specific tests rather than adding more logic to
test that SIGINT is not ignored at startup.
  
  These 2 issues meant that the tests would randomly work but only if a process
  coincidentally exited during the test.
  
  Reviewed by:  markj
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.c
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.c
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.c
  head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.d

Modified: 
head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.c
==
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.c 
Fri Sep 15 19:47:44 2017(r323619)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.c 
Fri Sep 15 19:48:48 2017(r323620)
@@ -35,13 +35,13 @@ main(int argc, char **argv)
sigset_t ss;
 
(void) sigemptyset();
-   (void) sigaddset(, SIGINT);
+   (void) sigaddset(, SIGUSR1);
(void) sigprocmask(SIG_BLOCK, , NULL);
 
do {
(void) getpid();
(void) sigpending();
-   } while (!sigismember(, SIGINT));
+   } while (!sigismember(, SIGUSR1));
 
return (0);
 }

Modified: 
head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d
==
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d 
Fri Sep 15 19:47:44 2017(r323619)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise1.d 
Fri Sep 15 19:48:48 2017(r323620)
@@ -47,7 +47,7 @@ syscall::getpid:entry
 /pid == $1/
 {
trace("raised");
-   raise(SIGINT);
+   raise(SIGUSR1);
/*
 * Wait no more than half a second for the process to die.
 */
@@ -55,6 +55,7 @@ syscall::getpid:entry
 }
 
 syscall::exit:entry
+/pid == $1/
 {
exit(0);
 }

Modified: 
head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.c
==
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.c 
Fri Sep 15 19:47:44 2017(r323619)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.c 
Fri Sep 15 19:48:48 2017(r323620)
@@ -45,7 +45,7 @@ main(int argc, char **argv)
sigemptyset(_mask);
sa.sa_flags = 0;
 
-   (void) sigaction(SIGINT, , NULL);
+   (void) sigaction(SIGUSR1, , NULL);
 
for (;;) {
(void) getpid();

Modified: 
head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d
==
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d 
Fri Sep 15 19:47:44 2017(r323619)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise2.d 
Fri Sep 15 19:48:48 2017(r323620)
@@ -47,7 +47,7 @@ syscall::getpid:return
 /pid == $1/
 {
trace("raised");
-   raise(SIGINT);
+   raise(SIGUSR1);
/*
 * Wait no more than half a second for the process to die.
 */
@@ -55,6 +55,7 @@ syscall::getpid:return
 }
 
 syscall::exit:entry
+/pid == $1/
 {
exit(0);
 }

Modified: 
head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.c
==
--- head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.c 
Fri Sep 15 19:47:44 2017(r323619)
+++ head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/raise/tst.raise3.c 
Fri Sep 15 19:48:48 2017(r323620)

svn commit: r323323 - head/share/mk

2017-09-08 Thread Bryan Drewery
Author: bdrewery
Date: Fri Sep  8 19:20:42 2017
New Revision: 323323
URL: https://svnweb.freebsd.org/changeset/base/323323

Log:
  Tweak comment for install -S usage since it does not impact the build.
  
  The -S flag is currently ignored for builds since we filter through
  tools/install.sh that is intended for both non-root and cross-builds.
  
  Sponsored by: Dell EMC Isilon
  X-MFC-With:   r322565

Modified:
  head/share/mk/bsd.lib.mk

Modified: head/share/mk/bsd.lib.mk
==
--- head/share/mk/bsd.lib.mkFri Sep  8 18:32:13 2017(r323322)
+++ head/share/mk/bsd.lib.mkFri Sep  8 19:20:42 2017(r323323)
@@ -327,9 +327,9 @@ _EXTRADEPEND:
 SHLINSTALLFLAGS+= -fschg
 .endif
 .endif
-# Install libraries with -S to avoid linker races with WORLDTMP and risk
-# of modifying in-use libraries when installing to a running system.
-# It is safe to avoid this for NO_ROOT builds that are only creating an image.
+# Install libraries with -S to avoid risk of modifying in-use libraries when
+# installing to a running system.  It is safe to avoid this for NO_ROOT builds
+# that are only creating an image.
 .if !defined(NO_SAFE_LIBINSTALL) && !defined(NO_ROOT)
 SHLINSTALLFLAGS+= -S
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r322978 - head/sys/kern

2017-08-28 Thread Bryan Drewery
Author: bdrewery
Date: Mon Aug 28 19:29:51 2017
New Revision: 322978
URL: https://svnweb.freebsd.org/changeset/base/322978

Log:
  Allow vdrop() of a vnode not yet on the per-mount list after r306512.
  
  The old code allowed calling vdrop() before insmntque() to place the vnode 
back
  onto the freelist for later recycling.  Some downstream consumers may rely on
  this support.  Normally insmntque() failing is fine since is uses vgone() and
  immediately frees the vnode rather than attempting to add it to the freelist 
if
  vdrop() were used instead.
  
  Also assert that vhold() cannot be used on such a vnode.
  
  Reviewed by:  kib, cem, markj
  Sponsored by: Dell EMC Isilon
  Differential Revision:https://reviews.freebsd.org/D12126

Modified:
  head/sys/kern/vfs_subr.c

Modified: head/sys/kern/vfs_subr.c
==
--- head/sys/kern/vfs_subr.cMon Aug 28 19:27:33 2017(r322977)
+++ head/sys/kern/vfs_subr.cMon Aug 28 19:29:51 2017(r322978)
@@ -2861,6 +2861,8 @@ _vhold(struct vnode *vp, bool locked)
 * Remove a vnode from the free list, mark it as in use,
 * and put it on the active list.
 */
+   VNASSERT(vp->v_mount != NULL, vp,
+   ("_vhold: vnode not on per mount vnode list"));
mp = vp->v_mount;
mtx_lock(>mnt_listmtx);
if ((vp->v_mflag & VMP_TMPMNTFREELIST) != 0) {
@@ -2935,21 +2937,35 @@ _vdrop(struct vnode *vp, bool locked)
if ((vp->v_iflag & VI_OWEINACT) == 0) {
vp->v_iflag &= ~VI_ACTIVE;
mp = vp->v_mount;
-   mtx_lock(>mnt_listmtx);
-   if (active) {
-   TAILQ_REMOVE(>mnt_activevnodelist, vp,
+   if (mp != NULL) {
+   mtx_lock(>mnt_listmtx);
+   if (active) {
+   TAILQ_REMOVE(>mnt_activevnodelist,
+   vp, v_actfreelist);
+   mp->mnt_activevnodelistsize--;
+   }
+   TAILQ_INSERT_TAIL(>mnt_tmpfreevnodelist,
+   vp, v_actfreelist);
+   mp->mnt_tmpfreevnodelistsize++;
+   vp->v_iflag |= VI_FREE;
+   vp->v_mflag |= VMP_TMPMNTFREELIST;
+   VI_UNLOCK(vp);
+   if (mp->mnt_tmpfreevnodelistsize >=
+   mnt_free_list_batch)
+   vnlru_return_batch_locked(mp);
+   mtx_unlock(>mnt_listmtx);
+   } else {
+   VNASSERT(active == 0, vp,
+   ("vdropl: active vnode not on per mount "
+   "vnode list"));
+   mtx_lock(_free_list_mtx);
+   TAILQ_INSERT_TAIL(_free_list, vp,
v_actfreelist);
-   mp->mnt_activevnodelistsize--;
+   freevnodes++;
+   vp->v_iflag |= VI_FREE;
+   VI_UNLOCK(vp);
+   mtx_unlock(_free_list_mtx);
}
-   TAILQ_INSERT_TAIL(>mnt_tmpfreevnodelist, vp,
-   v_actfreelist);
-   mp->mnt_tmpfreevnodelistsize++;
-   vp->v_iflag |= VI_FREE;
-   vp->v_mflag |= VMP_TMPMNTFREELIST;
-   VI_UNLOCK(vp);
-   if (mp->mnt_tmpfreevnodelistsize >= mnt_free_list_batch)
-   vnlru_return_batch_locked(mp);
-   mtx_unlock(>mnt_listmtx);
} else {
VI_UNLOCK(vp);
counter_u64_add(free_owe_inact, 1);
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r306512 - in head/sys: kern sys

2017-08-25 Thread Bryan Drewery
On 8/25/2017 3:37 PM, Konstantin Belousov wrote:
> On Fri, Aug 25, 2017 at 02:29:28PM -0700, Bryan Drewery wrote:
>> https://people.freebsd.org/~bdrewery/patches/vdrop-global-list.diff
> I do not object against his handling.
> 
> There is really very small amount of code shared between mp != NULL
> and mp == NULL cases, you may consider making them use separate paths
> instead of adding more than one check for mp != NULL.
> 

Sure, and I incorrectly was adding VMP_TMPMNTFREELIST flag for mp==NULL
case.  I'll open a review.

> VNASSERT() statement has wrong indent on the continuation line.
> 


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r306512 - in head/sys: kern sys

2017-08-25 Thread Bryan Drewery
On 8/25/2017 3:35 AM, Konstantin Belousov wrote:
> On Thu, Aug 24, 2017 at 08:18:03PM -0700, Bryan Drewery wrote:
>> On 9/30/2016 10:27 AM, Mateusz Guzik wrote:
>>> Author: mjg
>>> Date: Fri Sep 30 17:27:17 2016
>>> New Revision: 306512
>>> URL: https://svnweb.freebsd.org/changeset/base/306512
>>>
>>> Log:
>>>   vfs: batch free vnodes in per-mnt lists
>>>   
>>>   Previously free vnodes would always by directly returned to the global
>>>   LRU list. With this change up to mnt_free_list_batch vnodes are collected
>>>   first.
>>>   
>>>   syncer runs always return the batch regardless of its size.
>>>   
>>>   While vnodes on per-mnt lists are not counted as free, they can be
>>>   returned in case of vnode shortage.
>>>   
>>>   Reviewed by:  kib
>>>   Tested by:pho
>>>
>>> Modified:
>>>   head/sys/kern/vfs_mount.c
>>>   head/sys/kern/vfs_subr.c
>>>   head/sys/sys/mount.h
>>>   head/sys/sys/vnode.h
>>>
>> ...
>>> @@ -2753,17 +2824,25 @@ _vhold(struct vnode *vp, bool locked)
>>>  * Remove a vnode from the free list, mark it as in use,
>>>  * and put it on the active list.
>>>  */
>>> -   mtx_lock(_free_list_mtx);
>>> -   TAILQ_REMOVE(_free_list, vp, v_actfreelist);
>>> -   freevnodes--;
>>> -   vp->v_iflag &= ~VI_FREE;
>>> +   mp = vp->v_mount;
>>> +   mtx_lock(>mnt_listmtx);
>>   ^^
>>
>>> +   if ((vp->v_mflag & VMP_TMPMNTFREELIST) != 0) {
>>> +   TAILQ_REMOVE(>mnt_tmpfreevnodelist, vp, v_actfreelist);
>>> +   mp->mnt_tmpfreevnodelistsize--;
>>> +   vp->v_mflag &= ~VMP_TMPMNTFREELIST;
>>> +   } else {
>>> +   mtx_lock(_free_list_mtx);
>>> +   TAILQ_REMOVE(_free_list, vp, v_actfreelist);
>>> +   freevnodes--;
>>> +   mtx_unlock(_free_list_mtx);
>>> +   }
>>> KASSERT((vp->v_iflag & VI_ACTIVE) == 0,
>>> ("Activating already active vnode"));
>>> +   vp->v_iflag &= ~VI_FREE;
>>> vp->v_iflag |= VI_ACTIVE;
>>> -   mp = vp->v_mount;
>>> TAILQ_INSERT_HEAD(>mnt_activevnodelist, vp, v_actfreelist);
>>> mp->mnt_activevnodelistsize++;
>>> -   mtx_unlock(_free_list_mtx);
>>> +   mtx_unlock(>mnt_listmtx);
>>> refcount_acquire(>v_holdcnt);
>>> if (!locked)
>>> VI_UNLOCK(vp);
>>> @@ -2819,21 +2898,25 @@ _vdrop(struct vnode *vp, bool locked)
>>> if ((vp->v_iflag & VI_OWEINACT) == 0) {
>>> vp->v_iflag &= ~VI_ACTIVE;
>>> mp = vp->v_mount;
>>> -   mtx_lock(_free_list_mtx);
>>> +   mtx_lock(>mnt_listmtx);
>>   ^^
>>
>> If code runs getnewvnode() and then immediately runs vhold() or vrele(),
>> without first running insmntque(vp, mp), then vp->v_mount is NULL here
>> and the lock/freelist dereferencing just panic.
> getnewvnode() returns vref-ed vnode, i.e. both hold and use counts are
> set to 1.  What is the use case there which requires vhold-ing vnode
> without finishing its construction ?

None that I can think of.  For vhold I was just observing that a NULL
dereference is possible.

> 
>> Locking the vnode and then using vgone() and vput() on it avoids the
>> issue since it marks the vnode VI_DOOMED and instead frees it in
>> _vdrop() rather than try to re-add it to its NULL per-mount free list.
> This is the common pattern where insmntque() fails.
> 
>>
>> I'm not sure what the right thing here is.  Is it a requirement to
>> insmntque() a new vnode immediately, or to vgone() it before releasing
>> it if was just returned from getnewvnode()?
> These are the only uses of a newly allocated vnode which make sense.
> Do you need this for something that does not happen in the svn tree ?

Outside of the tree in OneFS, we have some code that does getnewvnode(),
then adds the unlocked vnode to a kqueue event list (it's actually very
complicated compared to the basic description), and then does insmntque.
 The event list registration is failing in a stress run and it only does
a vrele in this case.  I need to change it to lock/vgone/vrele (or swap
the event registration and insmntque calls of which I'm unsure on the
impact).  Previously the vrele was enough, and not vgone too, since the
vnode 

Re: svn commit: r306512 - in head/sys: kern sys

2017-08-24 Thread Bryan Drewery
On 9/30/2016 10:27 AM, Mateusz Guzik wrote:
> Author: mjg
> Date: Fri Sep 30 17:27:17 2016
> New Revision: 306512
> URL: https://svnweb.freebsd.org/changeset/base/306512
> 
> Log:
>   vfs: batch free vnodes in per-mnt lists
>   
>   Previously free vnodes would always by directly returned to the global
>   LRU list. With this change up to mnt_free_list_batch vnodes are collected
>   first.
>   
>   syncer runs always return the batch regardless of its size.
>   
>   While vnodes on per-mnt lists are not counted as free, they can be
>   returned in case of vnode shortage.
>   
>   Reviewed by:kib
>   Tested by:  pho
> 
> Modified:
>   head/sys/kern/vfs_mount.c
>   head/sys/kern/vfs_subr.c
>   head/sys/sys/mount.h
>   head/sys/sys/vnode.h
> 
...
> @@ -2753,17 +2824,25 @@ _vhold(struct vnode *vp, bool locked)
>* Remove a vnode from the free list, mark it as in use,
>* and put it on the active list.
>*/
> - mtx_lock(_free_list_mtx);
> - TAILQ_REMOVE(_free_list, vp, v_actfreelist);
> - freevnodes--;
> - vp->v_iflag &= ~VI_FREE;
> + mp = vp->v_mount;
> + mtx_lock(>mnt_listmtx);
  ^^

> + if ((vp->v_mflag & VMP_TMPMNTFREELIST) != 0) {
> + TAILQ_REMOVE(>mnt_tmpfreevnodelist, vp, v_actfreelist);
> + mp->mnt_tmpfreevnodelistsize--;
> + vp->v_mflag &= ~VMP_TMPMNTFREELIST;
> + } else {
> + mtx_lock(_free_list_mtx);
> + TAILQ_REMOVE(_free_list, vp, v_actfreelist);
> + freevnodes--;
> + mtx_unlock(_free_list_mtx);
> + }
>   KASSERT((vp->v_iflag & VI_ACTIVE) == 0,
>   ("Activating already active vnode"));
> + vp->v_iflag &= ~VI_FREE;
>   vp->v_iflag |= VI_ACTIVE;
> - mp = vp->v_mount;
>   TAILQ_INSERT_HEAD(>mnt_activevnodelist, vp, v_actfreelist);
>   mp->mnt_activevnodelistsize++;
> - mtx_unlock(_free_list_mtx);
> + mtx_unlock(>mnt_listmtx);
>   refcount_acquire(>v_holdcnt);
>   if (!locked)
>   VI_UNLOCK(vp);
> @@ -2819,21 +2898,25 @@ _vdrop(struct vnode *vp, bool locked)
>   if ((vp->v_iflag & VI_OWEINACT) == 0) {
>   vp->v_iflag &= ~VI_ACTIVE;
>   mp = vp->v_mount;
> - mtx_lock(_free_list_mtx);
> + mtx_lock(>mnt_listmtx);
  ^^

If code runs getnewvnode() and then immediately runs vhold() or vrele(),
without first running insmntque(vp, mp), then vp->v_mount is NULL here
and the lock/freelist dereferencing just panic.
Locking the vnode and then using vgone() and vput() on it avoids the
issue since it marks the vnode VI_DOOMED and instead frees it in
_vdrop() rather than try to re-add it to its NULL per-mount free list.

I'm not sure what the right thing here is.  Is it a requirement to
insmntque() a new vnode immediately, or to vgone() it before releasing
it if was just returned from getnewvnode()?

Perhaps these cases should assert that v_mount is not NULL or handle the
odd case and just free the vnode instead, or can it still just add to
the global vnode_free_list if mp is NULL?

The old code handled the case fine since the freelist was global and not
per-mount.  'mp' was only dereferenced below if the vnode had been
active, which was not the case for my example.


>   if (active) {
>   TAILQ_REMOVE(>mnt_activevnodelist, vp,
>   v_actfreelist);
>   mp->mnt_activevnodelistsize--;
>   }
> - TAILQ_INSERT_TAIL(_free_list, vp,
> + TAILQ_INSERT_TAIL(>mnt_tmpfreevnodelist, vp,
>   v_actfreelist);
> - freevnodes++;
> + mp->mnt_tmpfreevnodelistsize++;
>   vp->v_iflag |= VI_FREE;
> - mtx_unlock(_free_list_mtx);
> + vp->v_mflag |= VMP_TMPMNTFREELIST;
> + VI_UNLOCK(vp);
> + if (mp->mnt_tmpfreevnodelistsize >= mnt_free_list_batch)
> + vnlru_return_batch_locked(mp);
> + mtx_unlock(>mnt_listmtx);
>   } else {
> + VI_UNLOCK(vp);
>   atomic_add_long(_owe_inact, 1);
>   }
> - VI_UNLOCK(vp);
>   return;
>   }
>   /*


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r322585 - in head: . share/mk sys/conf

2017-08-16 Thread Bryan Drewery
Author: bdrewery
Date: Wed Aug 16 17:54:24 2017
New Revision: 322585
URL: https://svnweb.freebsd.org/changeset/base/322585

Log:
  Quote ${MAKE} when passing in env in case it contains spaces.
  
  Downstream we are wrapping MAKE with a limits(1) call which
  interferes with these non-quoted cases.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile
  head/share/mk/bsd.crunchgen.mk
  head/sys/conf/kern.post.mk

Modified: head/Makefile
==
--- head/Makefile   Wed Aug 16 17:46:45 2017(r322584)
+++ head/Makefile   Wed Aug 16 17:54:24 2017(r322585)
@@ -221,7 +221,7 @@ SUB_MAKE= `test -x ${MYMAKE} && echo ${MYMAKE} || echo
 SUB_MAKE= ${MAKE} -m ${.CURDIR}/share/mk
 .endif
 
-_MAKE= PATH=${PATH} MAKE_CMD=${MAKE} ${SUB_MAKE} -f Makefile.inc1 \
+_MAKE= PATH=${PATH} MAKE_CMD="${MAKE}" ${SUB_MAKE} -f Makefile.inc1 \
TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH}
 
 # Only allow meta mode for the whitelisted targets.  See META_TGT_WHITELIST

Modified: head/share/mk/bsd.crunchgen.mk
==
--- head/share/mk/bsd.crunchgen.mk  Wed Aug 16 17:46:45 2017
(r322584)
+++ head/share/mk/bsd.crunchgen.mk  Wed Aug 16 17:54:24 2017
(r322585)
@@ -114,7 +114,7 @@ CRUNCHENV+= MK_TESTS=no \
 ${OUTPUTS:[1]}: .META
 ${OUTPUTS:[2..-1]}: .NOMETA
 ${OUTPUTS}: ${CONF}
-   MAKE=${MAKE} ${CRUNCHENV:NMK_AUTO_OBJ=*} MAKEOBJDIRPREFIX=${CRUNCHOBJS} 
\
+   MAKE="${MAKE}" ${CRUNCHENV:NMK_AUTO_OBJ=*} 
MAKEOBJDIRPREFIX=${CRUNCHOBJS} \
MK_AUTO_OBJ=${MK_AUTO_OBJ} \
${CRUNCHGEN} -fq -m ${OUTMK} -c ${OUTC} ${CONF}
# Avoid redundantly calling 'make objs' which we've done by our

Modified: head/sys/conf/kern.post.mk
==
--- head/sys/conf/kern.post.mk  Wed Aug 16 17:46:45 2017(r322584)
+++ head/sys/conf/kern.post.mk  Wed Aug 16 17:54:24 2017(r322585)
@@ -372,7 +372,7 @@ config.ln env.ln hints.ln vers.ln vnode_if.ln:
 REPRO_FLAG="-r"
 .endif
 vers.c: $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP}
-   MAKE=${MAKE} sh $S/conf/newvers.sh ${REPRO_FLAG} ${KERN_IDENT}
+   MAKE="${MAKE}" sh $S/conf/newvers.sh ${REPRO_FLAG} ${KERN_IDENT}
 
 vnode_if.c: $S/tools/vnode_if.awk $S/kern/vnode_if.src
${AWK} -f $S/tools/vnode_if.awk $S/kern/vnode_if.src -c
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r322565 - head/share/mk

2017-08-15 Thread Bryan Drewery
Author: bdrewery
Date: Wed Aug 16 05:02:31 2017
New Revision: 322565
URL: https://svnweb.freebsd.org/changeset/base/322565

Log:
  Use -S for library installations except for -DNO_ROOT builds.
  
  Also disable this if NO_SAFE_LIBINSTALL is defined.
  
  There is little harm in always using -S and it fixes several issues:
  - A race during 'make libraries' where, for example, libgcc_s is being
installed while another library is trying to link against it.  This is
possible because libgcc_s is connected in both _prereq_libs and
_startup_libs.  The first build (_prereq_libs) sets MK_PROFILE=no
while the 2nd pass (_startup_libs) enables MK_PROFILE.  Thus the
libgcc_s library *is* present in WORLDTMP for other libraries to
link to, so serializing further items in _startup_libs is not
required.  Just ensuring that libgcc_s is installed atomically (via
rename(2)) is enough. [1]
  - Installation to a running system where some library that cannot be
detected, copied and used from the temporary INSTALLTMP with LD_LIBRARY_PATH
that the build itself uses for installation.  Such an example is having the
install an NSS module for user lookups that install(1) uses while
concurrently installing the module in another process.  This is not
a problem for the FreeBSD base build but can be for downstream
vendors.  While this is a very specific case, installation to a
running system with non-atomic library installation is prone to many
problems.  A further step still is to install in proper dependency
ordering.
  
  Reported by:  dhw many times [1]
  Sponsored by: Dell EMC Isilon
  MFC after:2 weeks

Modified:
  head/share/mk/bsd.lib.mk

Modified: head/share/mk/bsd.lib.mk
==
--- head/share/mk/bsd.lib.mkWed Aug 16 01:45:53 2017(r322564)
+++ head/share/mk/bsd.lib.mkWed Aug 16 05:02:31 2017(r322565)
@@ -326,6 +326,11 @@ _EXTRADEPEND:
 .if !defined(NO_FSCHG)
 SHLINSTALLFLAGS+= -fschg
 .endif
+.endif
+# Install libraries with -S to avoid linker races with WORLDTMP and risk
+# of modifying in-use libraries when installing to a running system.
+# It is safe to avoid this for NO_ROOT builds that are only creating an image.
+.if !defined(NO_SAFE_LIBINSTALL) && !defined(NO_ROOT)
 SHLINSTALLFLAGS+= -S
 .endif
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321887 - in head: . share/mk

2017-08-01 Thread Bryan Drewery
Author: bdrewery
Date: Tue Aug  1 18:26:20 2017
New Revision: 321887
URL: https://svnweb.freebsd.org/changeset/base/321887

Log:
  CCACHE_BUILD: Follow-up r321880: Fix some PATH issues with buildworld.
  
  - bsd.compiler.mk: Must ensure that the CCACHE_WRAPPER_PATH comes first
in PATH.
  - Makefile.inc1: Must prepend the CCACHE_WRAPPER_PATH into BPATH as it
overrides the PATH set in bsd.compiler.mk in sub-makes.  The PATH
set in bsd.compiler.mk is not exported and doing so would cause it to
then override the BPATH set from environment.  The only sane solution
is to prepend into BPATH as needed.
  CCACHE_PATH could possibly be used for some of this as well.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1
  head/share/mk/bsd.compiler.mk

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Tue Aug  1 18:25:04 2017(r321886)
+++ head/Makefile.inc1  Tue Aug  1 18:26:20 2017(r321887)
@@ -444,7 +444,7 @@ BUILD_ARCH!=uname -p
 .endif
 .endif
 WORLDTMP=  ${OBJTREE}${.CURDIR}/tmp
-BPATH= 
${WORLDTMP}/legacy/usr/sbin:${WORLDTMP}/legacy/usr/bin:${WORLDTMP}/legacy/bin
+BPATH= 
${CCACHE_WRAPPER_PATH_PFX}${WORLDTMP}/legacy/usr/sbin:${WORLDTMP}/legacy/usr/bin:${WORLDTMP}/legacy/bin
 XPATH= ${WORLDTMP}/usr/sbin:${WORLDTMP}/usr/bin
 STRICTTMPPATH= ${BPATH}:${XPATH}
 TMPPATH=   ${STRICTTMPPATH}:${PATH}

Modified: head/share/mk/bsd.compiler.mk
==
--- head/share/mk/bsd.compiler.mk   Tue Aug  1 18:25:04 2017
(r321886)
+++ head/share/mk/bsd.compiler.mk   Tue Aug  1 18:26:20 2017
(r321887)
@@ -82,8 +82,11 @@ PATH:=   ${PATH:C,:?${CCACHE_WRAPPER_PATH}(/world)?(:$)?
 ${var}:=   ${CCACHE_BIN} ${${var}}
 .endif
 .endfor
-.elif empty(PATH:M*${CCACHE_WRAPPER_PATH}*)
+.else
+# Need to ensure CCACHE_WRAPPER_PATH is the first in ${PATH}
+PATH:= ${PATH:C,:?${CCACHE_WRAPPER_PATH}(/world)?(:$)?,,g}
 PATH:= ${CCACHE_WRAPPER_PATH}:${PATH}
+CCACHE_WRAPPER_PATH_PFX=   ${CCACHE_WRAPPER_PATH}:
 .endif # ${CCACHE_BUILD_TYPE} == "command"
 # GCC does not need the CCACHE_CPP2 hack enabled by default in devel/ccache.
 # The port enables it due to ccache passing preprocessed C to clang
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321882 - head

2017-08-01 Thread Bryan Drewery
Author: bdrewery
Date: Tue Aug  1 16:41:17 2017
New Revision: 321882
URL: https://svnweb.freebsd.org/changeset/base/321882

Log:
  NO_CLEAN: No need to run delete-old if the directories don't exist.
  
  X-MFC-With:   r321443
  MFC after:1 month
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Tue Aug  1 16:20:33 2017(r321881)
+++ head/Makefile.inc1  Tue Aug  1 16:41:17 2017(r321882)
@@ -760,10 +760,12 @@ _worldtmp: .PHONY
rm -rf ${LIBCOMPATTMP}
 .endif
 .else
+.if exists(${WORLDTMP})
@echo ">>> Deleting stale files in build tree..."
${_+_}cd ${.CURDIR}; ${WMAKE} -DBATCH_DELETE_OLD_FILES \
delete-old delete-old-libs >/dev/null
-.if defined(LIBCOMPAT)
+.endif
+.if defined(LIBCOMPAT) && exists(${LIBCOMPATTMP})
${_+_}cd ${.CURDIR}; ${WMAKE} -DBATCH_DELETE_OLD_FILES \
DESTDIR=${LIBCOMPATTMP} \
delete-old delete-old-libs >/dev/null
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321880 - head/share/mk

2017-08-01 Thread Bryan Drewery
Author: bdrewery
Date: Tue Aug  1 16:15:08 2017
New Revision: 321880
URL: https://svnweb.freebsd.org/changeset/base/321880

Log:
  CCACHE_BUILD: Allow setting CCACHE_BUILD_TYPE=wrapper.
  
  This uses the /usr/local/libexec/ccache/ wrappers rather than
  modifying CC to be '/usr/local/bin/ccache cc'.  Some forms of compilation
  do not support the 'command' type.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.compiler.mk

Modified: head/share/mk/bsd.compiler.mk
==
--- head/share/mk/bsd.compiler.mk   Tue Aug  1 16:05:23 2017
(r321879)
+++ head/share/mk/bsd.compiler.mk   Tue Aug  1 16:15:08 2017
(r321880)
@@ -31,6 +31,9 @@ :
 
 .include 
 
+# command = /usr/local/bin/ccache cc ...
+# wrapper = /usr/local/libexec/ccache/cc ...
+CCACHE_BUILD_TYPE?=command
 # Handle ccache after CC is determined, but not if CC/CXX are already
 # overridden with a manual setup.
 .if ${MK_CCACHE_BUILD:Uno} == "yes" && \
@@ -65,19 +68,23 @@ CCACHE_COMPILERCHECK?=  content
 CCACHE_COMPILERCHECK?= mtime
 .endif
 .export CCACHE_COMPILERCHECK
-# Remove ccache from the PATH to prevent double calls and wasted CPP/LD time.
-PATH:= ${PATH:C,:?${CCACHE_WRAPPER_PATH}(/world)?(:$)?,,g}
 # Ensure no bogus CCACHE_PATH leaks in which might avoid the in-tree compiler.
 .if !empty(CCACHE_PATH)
 CCACHE_PATH=
 .export CCACHE_PATH
 .endif
+.if ${CCACHE_BUILD_TYPE} == "command"
+# Remove ccache from the PATH to prevent double calls and wasted CPP/LD time.
+PATH:= ${PATH:C,:?${CCACHE_WRAPPER_PATH}(/world)?(:$)?,,g}
 # Override various toolchain vars.
 .for var in CC CXX HOST_CC HOST_CXX
 .if defined(${var}) && ${${var}:M${CCACHE_BIN}} == ""
 ${var}:=   ${CCACHE_BIN} ${${var}}
 .endif
 .endfor
+.elif empty(PATH:M*${CCACHE_WRAPPER_PATH}*)
+PATH:= ${CCACHE_WRAPPER_PATH}:${PATH}
+.endif # ${CCACHE_BUILD_TYPE} == "command"
 # GCC does not need the CCACHE_CPP2 hack enabled by default in devel/ccache.
 # The port enables it due to ccache passing preprocessed C to clang
 # which fails with -Wparentheses-equality, -Wtautological-compare, and
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321824 - head/tests/sys/file

2017-07-31 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 31 22:00:27 2017
New Revision: 321824
URL: https://svnweb.freebsd.org/changeset/base/321824

Log:
  Allow changing the test PORT at compile-time.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/tests/sys/file/newfileops_on_fork_test.c

Modified: head/tests/sys/file/newfileops_on_fork_test.c
==
--- head/tests/sys/file/newfileops_on_fork_test.c   Mon Jul 31 22:00:00 
2017(r321823)
+++ head/tests/sys/file/newfileops_on_fork_test.c   Mon Jul 31 22:00:27 
2017(r321824)
@@ -50,7 +50,9 @@
 #include 
 #include 
 
+#ifndef PORT
 #definePORT9000
+#endif
 
 static int listen_fd;
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321493 - head

2017-07-25 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jul 25 20:51:06 2017
New Revision: 321493
URL: https://svnweb.freebsd.org/changeset/base/321493

Log:
  NO_CLEAN: Hide delete-old output.
  
  It is full of distracting noise about UPDATING and may confuse
  the user about what is actually being deleted.  It is also
  possible to have directories removed on every run with
  use of WITHOUT_ knobs that the mtree files do not
  account for and for which the directories are incorrectly
  in OLD_DIRS currently.
  
  X-MFC-With:   r321443
  MFC after:1 month
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Tue Jul 25 20:43:37 2017(r321492)
+++ head/Makefile.inc1  Tue Jul 25 20:51:06 2017(r321493)
@@ -761,12 +761,13 @@ _worldtmp: .PHONY
rm -rf ${LIBCOMPATTMP}
 .endif
 .else
+   @echo ">>> Deleting stale files in build tree..."
${_+_}cd ${.CURDIR}; ${WMAKE} -DBATCH_DELETE_OLD_FILES \
-   delete-old delete-old-libs
+   delete-old delete-old-libs >/dev/null
 .if defined(LIBCOMPAT)
${_+_}cd ${.CURDIR}; ${WMAKE} -DBATCH_DELETE_OLD_FILES \
DESTDIR=${LIBCOMPATTMP} \
-   delete-old delete-old-libs
+   delete-old delete-old-libs >/dev/null
 .endif
rm -rf ${WORLDTMP}/legacy/usr/include
 .if ${USING_SYSTEM_COMPILER} == "yes"
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321492 - head

2017-07-25 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jul 25 20:43:37 2017
New Revision: 321492
URL: https://svnweb.freebsd.org/changeset/base/321492

Log:
  Only build libzfs_core in 'make libraries' if needed.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Tue Jul 25 20:43:26 2017(r321491)
+++ head/Makefile.inc1  Tue Jul 25 20:43:37 2017(r321492)
@@ -2336,10 +2336,12 @@ _cddl_lib_libumem= cddl/lib/libumem
 _cddl_lib_libnvpair= cddl/lib/libnvpair
 _cddl_lib_libavl= cddl/lib/libavl
 _cddl_lib_libuutil= cddl/lib/libuutil
+.if ${MK_ZFS} != "no"
 _cddl_lib_libzfs_core= cddl/lib/libzfs_core
+cddl/lib/libzfs_core__L: cddl/lib/libnvpair__L
+.endif
 _cddl_lib_libctf= cddl/lib/libctf
 _cddl_lib= cddl/lib
-cddl/lib/libzfs_core__L: cddl/lib/libnvpair__L
 cddl/lib/libctf__L: lib/libz__L
 .endif
 # cddl/lib/libdtrace requires lib/libproc and lib/librtld_db; it's only built
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321491 - head

2017-07-25 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jul 25 20:43:26 2017
New Revision: 321491
URL: https://svnweb.freebsd.org/changeset/base/321491

Log:
  Remove unneeded dependency for libzfs.
  
  This dependency does nothing since cddl/lib/libzfs is never
  added into the 'make libraries' dependency chain
  directly.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Tue Jul 25 20:36:44 2017(r321490)
+++ head/Makefile.inc1  Tue Jul 25 20:43:26 2017(r321491)
@@ -2340,7 +2340,6 @@ _cddl_lib_libzfs_core= cddl/lib/libzfs_core
 _cddl_lib_libctf= cddl/lib/libctf
 _cddl_lib= cddl/lib
 cddl/lib/libzfs_core__L: cddl/lib/libnvpair__L
-cddl/lib/libzfs__L: lib/libgeom__L
 cddl/lib/libctf__L: lib/libz__L
 .endif
 # cddl/lib/libdtrace requires lib/libproc and lib/librtld_db; it's only built
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321485 - in head: share/mk sys/conf

2017-07-25 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jul 25 16:46:12 2017
New Revision: 321485
URL: https://svnweb.freebsd.org/changeset/base/321485

Log:
  Allow -DNO_SKIP_DEPEND to override the _SKIP_DEPEND logic.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.dep.mk
  head/sys/conf/kern.post.mk

Modified: head/share/mk/bsd.dep.mk
==
--- head/share/mk/bsd.dep.mkTue Jul 25 16:21:22 2017(r321484)
+++ head/share/mk/bsd.dep.mkTue Jul 25 16:46:12 2017(r321485)
@@ -88,7 +88,7 @@ _meta_filemon=1
 # Also skip generating or including .depend.* files if in meta+filemon mode
 # since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used
 # for _meta_filemon but not for _SKIP_DEPEND.
-.if defined(_SKIP_BUILD)
+.if !defined(NO_SKIP_DEPEND) && defined(_SKIP_BUILD)
 _SKIP_DEPEND=  1
 .endif
 .if ${MK_DIRDEPS_BUILD} == "no"

Modified: head/sys/conf/kern.post.mk
==
--- head/sys/conf/kern.post.mk  Tue Jul 25 16:21:22 2017(r321484)
+++ head/sys/conf/kern.post.mk  Tue Jul 25 16:46:12 2017(r321485)
@@ -201,9 +201,9 @@ _meta_filemon=  1
 # Also skip generating or including .depend.* files if in meta+filemon mode
 # since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used
 # for _meta_filemon but not for _SKIP_DEPEND.
-.if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(*obj) || \
+.if !defined(NO_SKIP_DEPEND) && (make(*obj) || \
 ${.TARGETS:M*clean*} == ${.TARGETS} || \
-${.TARGETS:M*install*} == ${.TARGETS}
+${.TARGETS:M*install*} == ${.TARGETS})
 _SKIP_DEPEND=  1
 .endif
 .if defined(_SKIP_DEPEND) || defined(_meta_filemon)
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r321444 - head/etc

2017-07-24 Thread Bryan Drewery
On 7/24/2017 4:57 PM, Ngie Cooper wrote:
> Author: ngie
> Date: Mon Jul 24 23:57:43 2017
> New Revision: 321444
> URL: https://svnweb.freebsd.org/changeset/base/321444
> 
> Log:
>   Remove ${MTREE} and leverage etc/mtree/Makefile instead with
>   "make distribution".
>   
>   This also fixes the fact that BSD.debug.dist was being installed if/when
>   ${MK_DEBUG_FILES} != "no" before this commit.

This was intentional, see r279248.

>   
>   MFC after:  2 months
> 
> Modified:
>   head/etc/Makefile
> 
> Modified: head/etc/Makefile
> ==
> --- head/etc/Makefile Mon Jul 24 23:32:46 2017(r321443)
> +++ head/etc/Makefile Mon Jul 24 23:57:43 2017(r321444)
> @@ -152,20 +152,6 @@ BIN1+= regdomain.xml
>  # -rwxr-xr-x root:wheel, for the new cron root:wheel
>  BIN2=netstart pccard_ether rc.suspend rc.resume
>  
> -MTREE=   BSD.debug.dist BSD.include.dist BSD.root.dist BSD.usr.dist 
> BSD.var.dist
> -.if ${MK_LIB32} != "no"
> -MTREE+=  BSD.lib32.dist
> -.endif
> -.if ${MK_LIBSOFT} != "no"
> -MTREE+=  BSD.libsoft.dist
> -.endif
> -.if ${MK_TESTS} != "no"
> -MTREE+=  BSD.tests.dist
> -.endif
> -.if ${MK_SENDMAIL} != "no"
> -MTREE+=  BSD.sendmail.dist
> -.endif
> -
>  PPPCNF=  ppp.conf
>  
>  .if ${MK_SENDMAIL} == "no"
> @@ -254,6 +240,7 @@ distribution:
>   ${_+_}cd ${.CURDIR}/defaults; ${MAKE} install
>   ${_+_}cd ${.CURDIR}/devd; ${MAKE} install
>   ${_+_}cd ${.CURDIR}/gss; ${MAKE} install
> + ${_+_}cd ${.CURDIR}/mtree; ${MAKE} install
>   ${_+_}cd ${.CURDIR}/newsyslog.conf.d; ${MAKE} install
>  .if ${MK_NTP} != "no"
>   ${_+_}cd ${.CURDIR}/ntp; ${MAKE} install
> @@ -308,8 +295,6 @@ distribution:
>   rm -f ${DESTDIR}/.cshrc; \
>   ln ${DESTDIR}/root/.cshrc ${DESTDIR}/.cshrc
>  .endif
> - cd ${.CURDIR}/mtree; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \
> - ${MTREE} ${DESTDIR}/etc/mtree
>  .if ${MK_MAIL} != "no"
>   cd ${.CURDIR}/mail; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \
>   ${ETCMAIL} ${DESTDIR}/etc/mail
> 


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r321445 - head/share/mk

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jul 25 00:12:48 2017
New Revision: 321445
URL: https://svnweb.freebsd.org/changeset/base/321445

Log:
  cleandir: Fix ESTALE errors from parallel removals.
  
  This fixes 'make cleandir' to use the same ordering as 'make cleanobj'.
  Meaning that SUBDIR will be recursed before the current directory is
  handled.  This avoids an 'rm -rf /usr/obj/usr/src/lib/libc' while
  a child 'rm -rf /usr/obj/usr/src/lib/libc/tests' is being ran next,
  or even removing the current directory and then recursing into a child
  and using the 'missing OBJDIR' logic to remove files rather than the
  directory.
  
  The most ideal ordering here would be for 'cleanobj' and 'cleandir' to
  simply remove the .OBJDIR and then not recurse at all.  This is only
  safe if it is guaranteed that all children directories have no orphaned
  files in their source checkout and are only using obj directories.  This
  is usually safe from the top-level build targets and when using
  WITH_AUTO_OBJ.  Improving the build for those cases is coming.
  
  Reported by:  cperciva, scottl
  X-MFC-With:   r321427
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.obj.mk

Modified: head/share/mk/bsd.obj.mk
==
--- head/share/mk/bsd.obj.mkMon Jul 24 23:57:43 2017(r321444)
+++ head/share/mk/bsd.obj.mkTue Jul 25 00:12:48 2017(r321445)
@@ -183,9 +183,9 @@ clean:
 .endif
 .ORDER: clean all
 
-cleandir: cleanobj
-
 .include 
+
+cleandir: .WAIT cleanobj
 
 .if make(destroy*) && defined(OBJROOT)
 # this (rm -rf objdir) is much faster and more reliable than cleaning.
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321440 - in head: share/mk sys/conf

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 23:32:36 2017
New Revision: 321440
URL: https://svnweb.freebsd.org/changeset/base/321440

Log:
  Slightly simplify logic for which depend file is expected.
  
  This is a NOP.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.dep.mk
  head/sys/conf/kern.post.mk

Modified: head/share/mk/bsd.dep.mk
==
--- head/share/mk/bsd.dep.mkMon Jul 24 23:32:24 2017(r321439)
+++ head/share/mk/bsd.dep.mkMon Jul 24 23:32:36 2017(r321440)
@@ -240,8 +240,12 @@ _meta_obj= ${.OBJDIR:C,/,_,g}_${__obj:C,/,_,g}.meta
 _meta_obj= ${__obj}.meta
 .endif
 _dep_obj=  ${DEPENDFILE}.${__obj:${DEPEND_FILTER}}
-.if (defined(_meta_filemon) && !exists(${.OBJDIR}/${_meta_obj})) || \
-(!defined(_meta_filemon) && !exists(${.OBJDIR}/${_dep_obj}))
+.if defined(_meta_filemon)
+_depfile=  ${.OBJDIR}/${_meta_obj}
+.else
+_depfile=  ${.OBJDIR}/${_dep_obj}
+.endif
+.if !exists(${_depfile})
 ${__obj}: ${OBJS_DEPEND_GUESS}
 ${__obj}: ${OBJS_DEPEND_GUESS.${__obj}}
 .elif defined(_meta_filemon)
@@ -252,7 +256,7 @@ ${__obj}: ${OBJS_DEPEND_GUESS.${__obj}}
 # guesses do include headers though since they may not be in SRCS.
 ${__obj}: ${OBJS_DEPEND_GUESS:N*.h}
 ${__obj}: ${OBJS_DEPEND_GUESS.${__obj}}
-.endif
+.endif # !exists(${_depfile})
 .endfor
 
 # Always run 'make depend' to generate dependencies early and to avoid the

Modified: head/sys/conf/kern.post.mk
==
--- head/sys/conf/kern.post.mk  Mon Jul 24 23:32:24 2017(r321439)
+++ head/sys/conf/kern.post.mk  Mon Jul 24 23:32:36 2017(r321440)
@@ -259,8 +259,12 @@ beforebuild: kernel-depend
 # For meta+filemon the .meta file is checked for since it is the dependency
 # file used.
 .for __obj in ${DEPENDOBJS:O:u}
-.if (defined(_meta_filemon) && !exists(${.OBJDIR}/${__obj}.meta)) || \
-(!defined(_meta_filemon) && !exists(${.OBJDIR}/.depend.${__obj}))
+.if defined(_meta_filemon)
+_depfile=  ${.OBJDIR}/${__obj}.meta
+.else
+_depfile=  ${.OBJDIR}/.depend.${__obj}
+.endif
+.if !exists(${_depfile})
 .if ${SYSTEM_OBJS:M${__obj}}
 ${__obj}: ${OBJS_DEPEND_GUESS}
 .endif
@@ -275,7 +279,7 @@ ${__obj}: ${OBJS_DEPEND_GUESS.${__obj}}
 ${__obj}: ${OBJS_DEPEND_GUESS:N*.h}
 .endif
 ${__obj}: ${OBJS_DEPEND_GUESS.${__obj}}
-.endif
+.endif # !exists(${_depfile})
 .endfor
 
 .NOPATH: .depend ${DEPENDFILES_OBJS}
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321439 - in head: . lib/clang/libllvm

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 23:32:24 2017
New Revision: 321439
URL: https://svnweb.freebsd.org/changeset/base/321439

Log:
  Move llvm Options.inc hack from r321433 for NO_CLEAN to lib/clang/libllvm.
  
  The files are only ever generated to .OBJDIR, not to WORLDTMP (as a
  sysroot) and are only ever included from a compilation.  So using
  a beforebuild target here removes the file before the compilation
  tries to include it.
  
  MFC after:2 months
  X-MFC-With:   r321369

Modified:
  head/Makefile.inc1
  head/lib/clang/libllvm/Makefile

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Mon Jul 24 22:26:48 2017(r321438)
+++ head/Makefile.inc1  Mon Jul 24 23:32:24 2017(r321439)
@@ -813,16 +813,6 @@ _worldtmp: .PHONY
${OBJTREE}${.CURDIR}/world32/${.CURDIR}/lib/libc/.depend.${f}.*
 .endif
 .endfor
-# 20170724 remove stale lib/clang/libllvm/Options.inc file, of which there are
-# two different versions after r308421, one for llvm-lib, one for llvm-dlltool
-.for d in ${OBJTREE} ${WORLDTMP}
-.for f in ${d}${.CURDIR}/lib/clang/libllvm/Options.inc
-.if exists(${f}) || exists(${f}.d)
-   @echo Removing stale generated ${f} files
-   @rm -f ${f} ${f}.d
-.endif
-.endfor
-.endfor
 .for _dir in \
 lib lib/casper usr legacy/bin legacy/usr
mkdir -p ${WORLDTMP}/${_dir}

Modified: head/lib/clang/libllvm/Makefile
==
--- head/lib/clang/libllvm/Makefile Mon Jul 24 22:26:48 2017
(r321438)
+++ head/lib/clang/libllvm/Makefile Mon Jul 24 23:32:24 2017
(r321439)
@@ -1302,6 +1302,16 @@ llvm-dlltool/Options.inc: ${LLVM_SRCS}/lib/ToolDrivers
 TGHDRS+=   llvm-dlltool/Options.inc
 CFLAGS.DlltoolDriver.cpp+= -I${.OBJDIR}/llvm-dlltool
 
+beforebuild:
+# 20170724 remove stale Options.inc file, of which there are two different
+# versions after r308421, one for llvm-lib, one for llvm-dlltool
+.for f in Options.inc
+.if exists(${f}) || exists(${f}.d)
+   @echo Removing stale generated ${f} files
+   @rm -f ${f} ${f}.d
+.endif
+.endfor
+
 # Note: some rules are superfluous, not every combination is valid.
 .for arch in \
AArch64/AArch64 ARM/ARM Mips/Mips PowerPC/PPC Sparc/Sparc X86/X86
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321443 - head

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 23:32:46 2017
New Revision: 321443
URL: https://svnweb.freebsd.org/changeset/base/321443

Log:
  NO_CLEAN: Utilize delete-old to remove old orphaned libraries/headers in 
WORLDTMP.
  
  This prevents situations with -DNO_CLEAN from finding stale headers or
  libraries in places that no longer exist or have moved.  It avoids
  the need to remove all of WORLDTMP by reusing what we already know
  is obsolete.
  
  MFC after:1 month
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Mon Jul 24 23:32:43 2017(r321442)
+++ head/Makefile.inc1  Mon Jul 24 23:32:46 2017(r321443)
@@ -761,6 +761,13 @@ _worldtmp: .PHONY
rm -rf ${LIBCOMPATTMP}
 .endif
 .else
+   ${_+_}cd ${.CURDIR}; ${WMAKE} -DBATCH_DELETE_OLD_FILES \
+   delete-old delete-old-libs
+.if defined(LIBCOMPAT)
+   ${_+_}cd ${.CURDIR}; ${WMAKE} -DBATCH_DELETE_OLD_FILES \
+   DESTDIR=${LIBCOMPATTMP} \
+   delete-old delete-old-libs
+.endif
rm -rf ${WORLDTMP}/legacy/usr/include
 .if ${USING_SYSTEM_COMPILER} == "yes"
 .for cc in cc c++
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321441 - in head: share/mk sys/conf

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 23:32:40 2017
New Revision: 321441
URL: https://svnweb.freebsd.org/changeset/base/321441

Log:
  Allow disabling dependency tracking if DEPEND_CFLAGS is empty.
  
  This falls back on using the guesssed dependencies if so.
  Also remove a pre-bmake check while here.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.dep.mk
  head/sys/conf/kern.post.mk

Modified: head/share/mk/bsd.dep.mk
==
--- head/share/mk/bsd.dep.mkMon Jul 24 23:32:36 2017(r321440)
+++ head/share/mk/bsd.dep.mkMon Jul 24 23:32:40 2017(r321441)
@@ -195,13 +195,11 @@ ${DEPENDFILE}:.NOMETA
 DEPEND_CFLAGS+=-MD ${DEPEND_MP} 
-MF${DEPENDFILE}.${.TARGET:${DEPEND_FILTER}}
 DEPEND_CFLAGS+=-MT${.TARGET}
 .if !defined(_meta_filemon)
-.if defined(.PARSEDIR)
+.if !empty(DEPEND_CFLAGS)
 # Only add in DEPEND_CFLAGS for CFLAGS on files we expect from DEPENDOBJS
 # as those are the only ones we will include.
 DEPEND_CFLAGS_CONDITION= 
"${DEPENDOBJS:${DEPEND_FILTER}:M${.TARGET:${DEPEND_FILTER}}}" != ""
 CFLAGS+=   ${${DEPEND_CFLAGS_CONDITION}:?${DEPEND_CFLAGS}:}
-.else
-CFLAGS+=   ${DEPEND_CFLAGS}
 .endif
 .for __depend_obj in ${DEPENDFILES_OBJS}
 .if ${MAKE_VERSION} < 20160220

Modified: head/sys/conf/kern.post.mk
==
--- head/sys/conf/kern.post.mk  Mon Jul 24 23:32:36 2017(r321440)
+++ head/sys/conf/kern.post.mk  Mon Jul 24 23:32:40 2017(r321441)
@@ -232,13 +232,11 @@ ${DEPENDOBJS}:.NOMETA
 DEPEND_CFLAGS+=-MD ${DEPEND_MP} -MF.depend.${.TARGET}
 DEPEND_CFLAGS+=-MT${.TARGET}
 .if !defined(_meta_filemon)
-.if defined(.PARSEDIR)
+.if !empty(DEPEND_CFLAGS)
 # Only add in DEPEND_CFLAGS for CFLAGS on files we expect from DEPENDOBJS
 # as those are the only ones we will include.
 DEPEND_CFLAGS_CONDITION= "${DEPENDOBJS:M${.TARGET}}" != ""
 CFLAGS+=   ${${DEPEND_CFLAGS_CONDITION}:?${DEPEND_CFLAGS}:}
-.else
-CFLAGS+=   ${DEPEND_CFLAGS}
 .endif
 .for __depend_obj in ${DEPENDFILES_OBJS}
 .if ${MAKE_VERSION} < 20160220
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321442 - head

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 23:32:43 2017
New Revision: 321442
URL: https://svnweb.freebsd.org/changeset/base/321442

Log:
  The .depend.obj cleanup hacks are only needed with -DNO_CLEAN.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Mon Jul 24 23:32:40 2017(r321441)
+++ head/Makefile.inc1  Mon Jul 24 23:32:43 2017(r321442)
@@ -770,7 +770,6 @@ _worldtmp: .PHONY
fi
 .endfor
 .endif # ${USING_SYSTEM_COMPILER} == "yes"
-.endif # !defined(NO_CLEAN)
 
 # Our current approach to dependency tracking cannot cope with certain source
 # tree changes, particularly with respect to removing source files and
@@ -813,6 +812,9 @@ _worldtmp: .PHONY
${OBJTREE}${.CURDIR}/world32/${.CURDIR}/lib/libc/.depend.${f}.*
 .endif
 .endfor
+
+.endif # !defined(NO_CLEAN)
+
 .for _dir in \
 lib lib/casper usr legacy/bin legacy/usr
mkdir -p ${WORLDTMP}/${_dir}
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r321433 - head

2017-07-24 Thread Bryan Drewery
On 7/24/2017 11:52 AM, Dimitry Andric wrote:
> Author: dim
> Date: Mon Jul 24 18:52:40 2017
> New Revision: 321433
> URL: https://svnweb.freebsd.org/changeset/base/321433
> 
> Log:
>   Cleanup stale Options.inc files from the previous libllvm build for
>   clang 4.0.0.  Otherwise, these can get included before the two newly
>   generated ones (which are different) for clang 5.0.0.
>   
>   Reported by:Mark Millard
>   MFC after:  2 months
>   X-MFC-With: r321369
> 
> Modified:
>   head/Makefile.inc1
> 
> Modified: head/Makefile.inc1
> ==
> --- head/Makefile.inc1Mon Jul 24 18:25:08 2017(r321432)
> +++ head/Makefile.inc1Mon Jul 24 18:52:40 2017(r321433)
> @@ -813,6 +813,16 @@ _worldtmp: .PHONY
>   ${OBJTREE}${.CURDIR}/world32/${.CURDIR}/lib/libc/.depend.${f}.*
>  .endif
>  .endfor
> +# 20170724 remove stale lib/clang/libllvm/Options.inc file, of which there 
> are
> +# two different versions after r308421, one for llvm-lib, one for 
> llvm-dlltool
> +.for d in ${OBJTREE} ${WORLDTMP}
> +.for f in ${d}${.CURDIR}/lib/clang/libllvm/Options.inc

The 2nd .for is not needed, there's only 1 item.  It could probably be
f=${d}${.CURDIR}/lib/clang/libllvm/Options.inc instead.

> +.if exists(${f}) || exists(${f}.d)
> + @echo Removing stale generated ${f} files
> + @rm -f ${f} ${f}.d
> +.endif
> +.endfor
> +.endfor
>  .for _dir in \
>  lib lib/casper usr legacy/bin legacy/usr
>   mkdir -p ${WORLDTMP}/${_dir}
> 


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r321434 - head

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 18:54:56 2017
New Revision: 321434
URL: https://svnweb.freebsd.org/changeset/base/321434

Log:
  Add some .ORDER for distrib-dirs, distribute, distribution and 
distributeworld.
  
  Reported by:  Mark Millard
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile

Modified: head/Makefile
==
--- head/Makefile   Mon Jul 24 18:52:40 2017(r321433)
+++ head/Makefile   Mon Jul 24 18:54:56 2017(r321434)
@@ -158,8 +158,18 @@ META_TGT_WHITELIST+= \
toolchains universe world worlds xdev xdev-build
 
 .ORDER: buildworld installworld
+.ORDER: buildworld distrib-dirs
+.ORDER: buildworld distribution
+.ORDER: buildworld distribute
 .ORDER: buildworld distributeworld
 .ORDER: buildworld buildkernel
+.ORDER: distrib-dirs distribute
+.ORDER: distrib-dirs distributeworld
+.ORDER: distrib-dirs installworld
+.ORDER: distribution distribute
+.ORDER: distributeworld distribute
+.ORDER: distributeworld distribution
+.ORDER: installworld distribute
 .ORDER: installworld distribution
 .ORDER: installworld installkernel
 .ORDER: buildkernel installkernel
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r321426 - head/share/mk

2017-07-24 Thread Bryan Drewery
On 7/24/2017 10:55 AM, Ngie Cooper (yaneurabeya) wrote:
> 
>> On Jul 24, 2017, at 10:53, Bryan Drewery <bdrew...@freebsd.org> wrote:
>>
>> Author: bdrewery
>> Date: Mon Jul 24 17:53:45 2017
>> New Revision: 321426
>> URL: https://svnweb.freebsd.org/changeset/base/321426
>>
>> Log:
>>  cleanobj: Unhide removal of directory.
>>
>>  MFC after:  2 weeks
>>  Sponsored by:   Dell EMC Isilon
>>
>> Modified:
>>  head/share/mk/bsd.obj.mk
> 
> Why? Dumping output of things like this is why “make -d l” is helpful.
> -Ngie
> 

There's no output for this one clean operation, while all other clean
operations have output.  The opposite, 'make obj', has output as well.
This was doing something with no affirmation that anything was actually
being done.

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r321427 - head/share/mk

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 17:54:03 2017
New Revision: 321427
URL: https://svnweb.freebsd.org/changeset/base/321427

Log:
  PROGS: Fix ESTALE errors on NFS while cleaning in directories with PROGS.
  
  - Only recurse on cleanobj/cleandir if there is no .OBJDIR being used.
If we don't recurse then bsd.obj.mk will just rm -rf the OBJDIR dir.
  - When recursing on cleanobj/cleandir don't remove dependfiles/dirs
redundantly from the child and main processes.  Meaning '.depend', and
'tags', and '.depend.*' will now only be removed from the main
process.
  - Stop recursing on 'cleandepend' since the main process can handle
removing all files via the default glob patterns in CLEANDEPENDFILES.
  - This reverts r288201, by readding recursion on 'cleanobj', due to
r291635 changing how bsd.subdir.mk handles recursion.
  
  This is primarily targeting ESTALE NFS errors from rm(1) during a
  buildworld but is also a performance optimization as both issues fixed
  were redundant anyway.
  
  Reported by:  cperciva, scottl
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.obj.mk
  head/share/mk/bsd.progs.mk

Modified: head/share/mk/bsd.obj.mk
==
--- head/share/mk/bsd.obj.mkMon Jul 24 17:53:45 2017(r321426)
+++ head/share/mk/bsd.obj.mkMon Jul 24 17:54:03 2017(r321427)
@@ -157,6 +157,7 @@ whereobj:
@echo ${.OBJDIR}
 .endif
 
+# Same check in bsd.progs.mk
 .if ${CANONICALOBJDIR} != ${.CURDIR} && exists(${CANONICALOBJDIR}/)
 cleanobj:
-rm -rf ${CANONICALOBJDIR}

Modified: head/share/mk/bsd.progs.mk
==
--- head/share/mk/bsd.progs.mk  Mon Jul 24 17:53:45 2017(r321426)
+++ head/share/mk/bsd.progs.mk  Mon Jul 24 17:54:03 2017(r321427)
@@ -116,7 +116,16 @@ ${_PROGS_COMMON_OBJS}: .NOMETA
 
 .if !empty(PROGS) && !defined(_RECURSING_PROGS) && !defined(PROG)
 # tell progs.mk we might want to install things
-PROGS_TARGETS+= checkdpadd clean cleandepend cleandir depend install
+PROGS_TARGETS+= checkdpadd clean depend install
+# Only handle removing depend files from the main process.
+_PROG_MK.cleandir= CLEANDEPENDFILES= CLEANDEPENDDIRS=
+_PROG_MK.cleanobj= CLEANDEPENDFILES= CLEANDEPENDDIRS=
+# Only recurse on these if there is no objdir, meaning a normal
+# 'clean' gets ran via the target defined in bsd.obj.mk.
+# Same check from cleanobj: in bsd.obj.mk
+.if ${CANONICALOBJDIR} == ${.CURDIR} || !exists(${CANONICALOBJDIR}/)
+PROGS_TARGETS+=cleandir cleanobj
+.endif
 
 # Ensure common objects are built before recursing.
 .if !empty(_PROGS_COMMON_OBJS)
@@ -142,7 +151,7 @@ $p.$t: .PHONY .MAKE
(cd ${.CURDIR} && \
DEPENDFILE=.depend.$p \
NO_SUBDIR=1 ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS=t \
-   PROG=$p ${x.$p} ${@:E})
+   ${_PROG_MK.${t}} PROG=$p ${x.$p} ${@:E})
 .endfor
 .endfor
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321426 - head/share/mk

2017-07-24 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 24 17:53:45 2017
New Revision: 321426
URL: https://svnweb.freebsd.org/changeset/base/321426

Log:
  cleanobj: Unhide removal of directory.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.obj.mk

Modified: head/share/mk/bsd.obj.mk
==
--- head/share/mk/bsd.obj.mkMon Jul 24 17:29:56 2017(r321425)
+++ head/share/mk/bsd.obj.mkMon Jul 24 17:53:45 2017(r321426)
@@ -159,7 +159,7 @@ whereobj:
 
 .if ${CANONICALOBJDIR} != ${.CURDIR} && exists(${CANONICALOBJDIR}/)
 cleanobj:
-   @-rm -rf ${CANONICALOBJDIR}
+   -rm -rf ${CANONICALOBJDIR}
 .else
 cleanobj: clean cleandepend
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321340 - stable/11

2017-07-21 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jul 21 17:57:59 2017
New Revision: 321340
URL: https://svnweb.freebsd.org/changeset/base/321340

Log:
  MFC r320273:
  
Allow ALWAYS_BOOTSTRAP_MAKE to force bmake bootstrapping.

Modified:
  stable/11/Makefile
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/Makefile
==
--- stable/11/Makefile  Fri Jul 21 17:57:10 2017(r321339)
+++ stable/11/Makefile  Fri Jul 21 17:57:59 2017(r321340)
@@ -195,7 +195,8 @@ HAVE_MAKE=  bmake
 .else
 HAVE_MAKE= fmake
 .endif
-.if ${HAVE_MAKE} != ${WANT_MAKE} || \
+.if defined(ALWAYS_BOOTSTRAP_MAKE) || \
+${HAVE_MAKE} != ${WANT_MAKE} || \
 (defined(WANT_MAKE_VERSION) && ${MAKE_VERSION} < ${WANT_MAKE_VERSION})
 NEED_MAKE_UPGRADE= t
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321341 - stable/10

2017-07-21 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jul 21 17:58:06 2017
New Revision: 321341
URL: https://svnweb.freebsd.org/changeset/base/321341

Log:
  MFC r320273:
  
Allow ALWAYS_BOOTSTRAP_MAKE to force bmake bootstrapping.

Modified:
  stable/10/Makefile
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/Makefile
==
--- stable/10/Makefile  Fri Jul 21 17:57:59 2017(r321340)
+++ stable/10/Makefile  Fri Jul 21 17:58:06 2017(r321341)
@@ -156,7 +156,8 @@ HAVE_MAKE=  bmake
 .else
 HAVE_MAKE= fmake
 .endif
-.if ${HAVE_MAKE} != ${WANT_MAKE} || \
+.if defined(ALWAYS_BOOTSTRAP_MAKE) || \
+${HAVE_MAKE} != ${WANT_MAKE} || \
 (defined(WANT_MAKE_VERSION) && ${MAKE_VERSION} < ${WANT_MAKE_VERSION})
 NEED_MAKE_UPGRADE= t
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321339 - stable/11

2017-07-21 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jul 21 17:57:10 2017
New Revision: 321339
URL: https://svnweb.freebsd.org/changeset/base/321339

Log:
  MFC r320292:
  
NO_ROOT: Remove excessive // when DESTDIR/DISTDIR are empty.

Modified:
  stable/11/Makefile.inc1
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/Makefile.inc1
==
--- stable/11/Makefile.inc1 Fri Jul 21 17:56:22 2017(r321338)
+++ stable/11/Makefile.inc1 Fri Jul 21 17:57:10 2017(r321339)
@@ -636,6 +636,7 @@ _INSTALL_DDIR=  ${DESTDIR}/${DISTDIR}
 INSTALL_DDIR=  ${_INSTALL_DDIR:S://:/:g:C:/$::}
 .if defined(NO_ROOT)
 METALOG?=  ${DESTDIR}/${DISTDIR}/METALOG
+METALOG:=  ${METALOG:C,//+,/,g}
 IMAKE+=-DNO_ROOT METALOG=${METALOG}
 INSTALLFLAGS+= -U -M ${METALOG} -D ${INSTALL_DDIR}
 MTREEFLAGS+=   -W
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321338 - stable/11/etc

2017-07-21 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jul 21 17:56:22 2017
New Revision: 321338
URL: https://svnweb.freebsd.org/changeset/base/321338

Log:
  MFC r320883:
  
Fix INSTALL_AS_USER after r319020.

Modified:
  stable/11/etc/Makefile
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/etc/Makefile
==
--- stable/11/etc/Makefile  Fri Jul 21 17:55:40 2017(r321337)
+++ stable/11/etc/Makefile  Fri Jul 21 17:56:22 2017(r321338)
@@ -340,19 +340,6 @@ distribution:
 
 MTREE_CMD?=mtree
 
-.if ${MK_INSTALL_AS_USER} == "yes" && ${_uid} != 0
-MTREE_FILTER= sed -e 's,\([gu]\)name=,\1id=,g' \
-   -e 's,\(uid=\)[^ ]* ,\1${_uid} ,' \
-   -e 's,\(gid=\)[^ ]* ,\1${_gid} ,' \
-   -e 's,\(uid=\)[^ ]*$$,\1${_uid},' \
-   -e 's,\(gid=\)[^ ]*$$,\1${_gid},' 
-.else
-MTREE_FILTER= cat
-.if !defined(NO_FSCHG)
-MTREE_FSCHG=   -i
-.endif
-.endif
-
 MTREES=mtree/BSD.root.dist /   \
mtree/BSD.var.dist  /var\
mtree/BSD.usr.dist  /usr\
@@ -468,3 +455,16 @@ etc-examples: etc-examples-install
DESTDIR=${DESTDIR}${SHAREDIR}/examples
 
 .include 
+
+.if ${MK_INSTALL_AS_USER} == "yes" && ${_uid} != 0
+MTREE_FILTER= sed -e 's,\([gu]\)name=,\1id=,g' \
+   -e 's,\(uid=\)[^ ]* ,\1${_uid} ,' \
+   -e 's,\(gid=\)[^ ]* ,\1${_gid} ,' \
+   -e 's,\(uid=\)[^ ]*$$,\1${_uid},' \
+   -e 's,\(gid=\)[^ ]*$$,\1${_gid},'
+.else
+MTREE_FILTER= cat
+.if !defined(NO_FSCHG)
+MTREE_FSCHG=   -i
+.endif
+.endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321337 - stable/11

2017-07-21 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jul 21 17:55:40 2017
New Revision: 321337
URL: https://svnweb.freebsd.org/changeset/base/321337

Log:
  MFC r320806:
  
SYSTEM_COMPILER: Ensure there is not a stale compiler in WORLDTMP.

Modified:
  stable/11/Makefile.inc1
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/Makefile.inc1
==
--- stable/11/Makefile.inc1 Fri Jul 21 17:42:54 2017(r321336)
+++ stable/11/Makefile.inc1 Fri Jul 21 17:55:40 2017(r321337)
@@ -678,7 +678,15 @@ _worldtmp: .PHONY
 .endif
 .else
rm -rf ${WORLDTMP}/legacy/usr/include
-.endif
+.if ${USING_SYSTEM_COMPILER} == "yes"
+.for cc in cc c++
+   if [ -x ${WORLDTMP}/usr/bin/${cc} ]; then \
+   inum=$$(stat -f %i ${WORLDTMP}/usr/bin/${cc}); \
+   find ${WORLDTMP}/usr/bin -inum $${inum} -delete; \
+   fi
+.endfor
+.endif # ${USING_SYSTEM_COMPILER} == "yes"
+.endif # !defined(NO_CLEAN)
 .for _dir in \
 lib lib/casper usr legacy/bin legacy/usr
mkdir -p ${WORLDTMP}/${_dir}
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321334 - head/share/mk

2017-07-21 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jul 21 16:14:35 2017
New Revision: 321334
URL: https://svnweb.freebsd.org/changeset/base/321334

Log:
  Respect INSTALL_AS_USER for FILES.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.files.mk

Modified: head/share/mk/bsd.files.mk
==
--- head/share/mk/bsd.files.mk  Fri Jul 21 16:14:06 2017(r321333)
+++ head/share/mk/bsd.files.mk  Fri Jul 21 16:14:35 2017(r321334)
@@ -26,6 +26,10 @@ installfiles: installfiles-${group}
 
 ${group}OWN?=  ${SHAREOWN}
 ${group}GRP?=  ${SHAREGRP}
+.if ${MK_INSTALL_AS_USER} == "yes"
+${group}OWN=   ${SHAREOWN}
+${group}GRP=   ${SHAREGRP}
+.endif
 ${group}MODE?= ${SHAREMODE}
 ${group}DIR?=  ${BINDIR}
 STAGE_SETS+=   ${group:C,[/*],_,g}
@@ -46,6 +50,10 @@ _${group}FILES=
 defined(${group}NAME_${file:T}) || defined(${group}NAME)
 ${group}OWN_${file:T}?=${${group}OWN}
 ${group}GRP_${file:T}?=${${group}GRP}
+.if ${MK_INSTALL_AS_USER} == "yes"
+${group}OWN_${file:T}= ${SHAREOWN}
+${group}GRP_${file:T}= ${SHAREGRP}
+.endif
 ${group}MODE_${file:T}?=   ${${group}MODE}
 ${group}DIR_${file:T}?=${${group}DIR}
 .if defined(${group}NAME)
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r321333 - head/lib/libc/tests/sys

2017-07-21 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jul 21 16:14:06 2017
New Revision: 321333
URL: https://svnweb.freebsd.org/changeset/base/321333

Log:
  Properly set userid for truncate_test.
  
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/lib/libc/tests/sys/Makefile

Modified: head/lib/libc/tests/sys/Makefile
==
--- head/lib/libc/tests/sys/MakefileFri Jul 21 15:09:24 2017
(r321332)
+++ head/lib/libc/tests/sys/MakefileFri Jul 21 16:14:06 2017
(r321333)
@@ -87,7 +87,7 @@ FILESGROUPS+= truncate_test_FILES
 truncate_test_FILES=   truncate_test.root_owned
 truncate_test_FILESDIR=${TESTSDIR}
 truncate_test_FILESMODE= 0600
-truncate_test_FILESOWNER= root
+truncate_test_FILESOWN= root
 truncate_test_FILESGRP= wheel
 truncate_test_FILESPACKAGE=${PACKAGE}
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320973 - in head/sys: conf modules/ixl

2017-07-13 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jul 13 22:45:23 2017
New Revision: 320973
URL: https://svnweb.freebsd.org/changeset/base/320973

Log:
  Fix kldload of if_ixl without PCI_IOV kernel option.
  
  This also avoids compiling in pci_iov support into the kernel if_ixoif
  the PCI_IOV option is disabled.
  
  Reviewed by:  rstone
  Sponsored by: Dell EMC Isilon
  Differential Revision:https://reviews.freebsd.org/D11573

Modified:
  head/sys/conf/files.amd64
  head/sys/modules/ixl/Makefile

Modified: head/sys/conf/files.amd64
==
--- head/sys/conf/files.amd64   Thu Jul 13 22:12:41 2017(r320972)
+++ head/sys/conf/files.amd64   Thu Jul 13 22:45:23 2017(r320973)
@@ -253,7 +253,7 @@ dev/ixl/ixl_pf_main.c   optionalixl pci 
\
compile-with "${NORMAL_C} -I$S/dev/ixl"
 dev/ixl/ixl_pf_qmgr.c  optionalixl pci \
compile-with "${NORMAL_C} -I$S/dev/ixl"
-dev/ixl/ixl_pf_iov.c   optionalixl pci \
+dev/ixl/ixl_pf_iov.c   optionalixl pci  pci_iov \
compile-with "${NORMAL_C} -I$S/dev/ixl"
 dev/ixl/ixl_pf_i2c.c   optionalixl pci \
compile-with "${NORMAL_C} -I$S/dev/ixl"

Modified: head/sys/modules/ixl/Makefile
==
--- head/sys/modules/ixl/Makefile   Thu Jul 13 22:12:41 2017
(r320972)
+++ head/sys/modules/ixl/Makefile   Thu Jul 13 22:45:23 2017
(r320973)
@@ -3,10 +3,11 @@
 .PATH:  ${SRCTOP}/sys/dev/ixl
 
 KMOD= if_ixl
-SRCS= device_if.h bus_if.h pci_if.h pci_iov_if.h
+SRCS= device_if.h bus_if.h pci_if.h
 SRCS+= opt_inet.h opt_inet6.h opt_rss.h opt_ixl.h
 SRCS+= if_ixl.c ixl_pf_main.c ixl_pf_qmgr.c ixl_txrx.c ixl_pf_i2c.c 
i40e_osdep.c
-SRCS   += ixl_pf_iov.c ixl_iw.c
+SRCS   += ixl_iw.c
+SRCS.PCI_IOV=  pci_iov_if.h ixl_pf_iov.c
 
 # Shared source
 SRCS+= i40e_common.c i40e_nvm.c i40e_adminq.c i40e_lan_hmc.c i40e_hmc.c
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320919 - head/sys/conf

2017-07-12 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jul 12 19:01:25 2017
New Revision: 320919
URL: https://svnweb.freebsd.org/changeset/base/320919

Log:
  META_MODE: Fix not writing .meta files in the kernel build.
  
  This was a regression in r320220 due to improper porting of the
  same logic from share/mk/bsd.dep.mk and having only tested with
  -DNO_FILEMON at the time.
  
  Pointyhat to: bdrewery
  Reported by:  Mark Millard, dhw, O. Hartmann
  Sponsored by: Dell EMC Isilon

Modified:
  head/sys/conf/kern.post.mk

Modified: head/sys/conf/kern.post.mk
==
--- head/sys/conf/kern.post.mk  Wed Jul 12 18:29:25 2017(r320918)
+++ head/sys/conf/kern.post.mk  Wed Jul 12 19:01:25 2017(r320919)
@@ -203,8 +203,7 @@ _meta_filemon=  1
 # for _meta_filemon but not for _SKIP_DEPEND.
 .if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(*obj) || \
 ${.TARGETS:M*clean*} == ${.TARGETS} || \
-${.TARGETS:M*install*} == ${.TARGETS} || \
-defined(_meta_filemon)
+${.TARGETS:M*install*} == ${.TARGETS}
 _SKIP_DEPEND=  1
 .endif
 .if defined(_SKIP_DEPEND) || defined(_meta_filemon)
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320884 - in head: lib/libc++experimental lib/libclang_rt/stats lib/libclang_rt/stats_client lib/libdl lib/libifconfig lib/librss lib/libsysdecode targets/pseudo/userland/lib

2017-07-10 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jul 11 00:32:48 2017
New Revision: 320884
URL: https://svnweb.freebsd.org/changeset/base/320884

Log:
  DIRDEPS_BUILD: Connect more libraries.
  
  Sponsored by: Dell EMC Isilon

Added:
  head/lib/libc++experimental/Makefile.depend   (contents, props changed)
  head/lib/libclang_rt/stats/Makefile.depend   (contents, props changed)
  head/lib/libclang_rt/stats_client/Makefile.depend   (contents, props changed)
  head/lib/libdl/Makefile.depend   (contents, props changed)
  head/lib/libifconfig/Makefile.depend   (contents, props changed)
  head/lib/librss/Makefile.depend   (contents, props changed)
Modified:
  head/lib/libsysdecode/Makefile.depend
  head/targets/pseudo/userland/lib/Makefile.depend

Added: head/lib/libc++experimental/Makefile.depend
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/lib/libc++experimental/Makefile.depend Tue Jul 11 00:32:48 2017
(r320884)
@@ -0,0 +1,14 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+   include \
+   include/xlocale \
+   lib/msun \
+
+
+.include 
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif

Added: head/lib/libclang_rt/stats/Makefile.depend
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/lib/libclang_rt/stats/Makefile.depend  Tue Jul 11 00:32:48 2017
(r320884)
@@ -0,0 +1,16 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+   include \
+   include/arpa \
+   include/xlocale \
+   lib/libc++ \
+   lib/ncurses/ncursesw \
+
+
+.include 
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif

Added: head/lib/libclang_rt/stats_client/Makefile.depend
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/lib/libclang_rt/stats_client/Makefile.depend   Tue Jul 11 00:32:48 
2017(r320884)
@@ -0,0 +1,13 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+   include \
+   lib/libc++ \
+
+
+.include 
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif

Added: head/lib/libdl/Makefile.depend
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/lib/libdl/Makefile.depend  Tue Jul 11 00:32:48 2017
(r320884)
@@ -0,0 +1,18 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+   gnu/lib/csu \
+   gnu/lib/libgcc \
+   include \
+   include/xlocale \
+   lib/${CSU_DIR} \
+   lib/libc \
+   lib/libcompiler_rt \
+
+
+.include 
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif

Added: head/lib/libifconfig/Makefile.depend
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/lib/libifconfig/Makefile.dependTue Jul 11 00:32:48 2017
(r320884)
@@ -0,0 +1,13 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+   include \
+   include/xlocale \
+
+
+.include 
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif

Added: head/lib/librss/Makefile.depend
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/lib/librss/Makefile.depend Tue Jul 11 00:32:48 2017
(r320884)
@@ -0,0 +1,18 @@
+# $FreeBSD$
+# Autogenerated - do NOT edit!
+
+DIRDEPS = \
+   gnu/lib/csu \
+   gnu/lib/libgcc \
+   include \
+   include/xlocale \
+   lib/${CSU_DIR} \
+   lib/libc \
+   lib/libcompiler_rt \
+
+
+.include 
+
+.if ${DEP_RELDIR} == ${_DEP_RELDIR}
+# local dependencies - needed for -jN in clean tree
+.endif

Modified: head/lib/libsysdecode/Makefile.depend
==
--- head/lib/libsysdecode/Makefile.depend   Mon Jul 10 23:52:07 2017
(r320883)
+++ head/lib/libsysdecode/Makefile.depend   Tue Jul 11 00:32:48 2017
(r320884)
@@ -74,6 +74,7 @@ DIRDEPS = \
lib/libfigpar \
lib/libgeom \
lib/libgpio \
+   lib/libifconfig \
lib/libjail \
lib/libkvm \
lib/liblzma \
@@ -92,6 +93,7 @@ DIRDEPS = \
lib/libproc \
lib/libprocstat \
lib/libradius \
+   lib/librss \
lib/librtld_db \
lib/libsdp \
lib/libsqlite3 \

Modified: head/targets/pseudo/userland/lib/Makefile.depend

svn commit: r320883 - head/etc

2017-07-10 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 10 23:52:07 2017
New Revision: 320883
URL: https://svnweb.freebsd.org/changeset/base/320883

Log:
  Fix INSTALL_AS_USER after r319020.
  
  Reviewed by:  vangyzen
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/etc/Makefile

Modified: head/etc/Makefile
==
--- head/etc/Makefile   Mon Jul 10 23:52:04 2017(r320882)
+++ head/etc/Makefile   Mon Jul 10 23:52:07 2017(r320883)
@@ -342,19 +342,6 @@ distribution:
 
 MTREE_CMD?=mtree
 
-.if ${MK_INSTALL_AS_USER} == "yes" && ${_uid} != 0
-MTREE_FILTER= sed -e 's,\([gu]\)name=,\1id=,g' \
-   -e 's,\(uid=\)[^ ]* ,\1${_uid} ,' \
-   -e 's,\(gid=\)[^ ]* ,\1${_gid} ,' \
-   -e 's,\(uid=\)[^ ]*$$,\1${_uid},' \
-   -e 's,\(gid=\)[^ ]*$$,\1${_gid},' 
-.else
-MTREE_FILTER= cat
-.if !defined(NO_FSCHG)
-MTREE_FSCHG=   -i
-.endif
-.endif
-
 MTREES=mtree/BSD.root.dist /   \
mtree/BSD.var.dist  /var\
mtree/BSD.usr.dist  /usr\
@@ -467,3 +454,16 @@ etc-examples: etc-examples-install
DESTDIR=${DESTDIR}${SHAREDIR}/examples
 
 .include 
+
+.if ${MK_INSTALL_AS_USER} == "yes" && ${_uid} != 0
+MTREE_FILTER= sed -e 's,\([gu]\)name=,\1id=,g' \
+   -e 's,\(uid=\)[^ ]* ,\1${_uid} ,' \
+   -e 's,\(gid=\)[^ ]* ,\1${_gid} ,' \
+   -e 's,\(uid=\)[^ ]*$$,\1${_uid},' \
+   -e 's,\(gid=\)[^ ]*$$,\1${_gid},'
+.else
+MTREE_FILTER= cat
+.if !defined(NO_FSCHG)
+MTREE_FSCHG=   -i
+.endif
+.endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320882 - in head/usr.sbin: bhyve rpc.statd sesutil

2017-07-10 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 10 23:52:04 2017
New Revision: 320882
URL: https://svnweb.freebsd.org/changeset/base/320882

Log:
  DIRDEPS_BUILD: Update dependencies.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/usr.sbin/bhyve/Makefile.depend
  head/usr.sbin/rpc.statd/Makefile.depend
  head/usr.sbin/sesutil/Makefile.depend

Modified: head/usr.sbin/bhyve/Makefile.depend
==
--- head/usr.sbin/bhyve/Makefile.depend Mon Jul 10 23:51:51 2017
(r320881)
+++ head/usr.sbin/bhyve/Makefile.depend Mon Jul 10 23:52:04 2017
(r320882)
@@ -16,6 +16,7 @@ DIRDEPS = \
lib/libutil \
lib/libvmmapi \
lib/libz \
+   secure/lib/libcrypto \
 
 
 .include 

Modified: head/usr.sbin/rpc.statd/Makefile.depend
==
--- head/usr.sbin/rpc.statd/Makefile.depend Mon Jul 10 23:51:51 2017
(r320881)
+++ head/usr.sbin/rpc.statd/Makefile.depend Mon Jul 10 23:52:04 2017
(r320882)
@@ -7,6 +7,7 @@ DIRDEPS = \
include \
include/arpa \
include/rpc \
+   include/rpcsvc \
include/xlocale \
lib/${CSU_DIR} \
lib/libc \

Modified: head/usr.sbin/sesutil/Makefile.depend
==
--- head/usr.sbin/sesutil/Makefile.depend   Mon Jul 10 23:51:51 2017
(r320881)
+++ head/usr.sbin/sesutil/Makefile.depend   Mon Jul 10 23:52:04 2017
(r320882)
@@ -8,7 +8,9 @@ DIRDEPS = \
include/xlocale \
lib/${CSU_DIR} \
lib/libc \
-   lib/libcompiler_rt
+   lib/libcompiler_rt \
+   lib/libutil \
+   lib/libxo \
 
 
 .include 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320881 - head/targets/pseudo/userland/share

2017-07-10 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jul 10 23:51:51 2017
New Revision: 320881
URL: https://svnweb.freebsd.org/changeset/base/320881

Log:
  Follow-up r318881: Disconnect groff documents.

Modified:
  head/targets/pseudo/userland/share/Makefile.depend

Modified: head/targets/pseudo/userland/share/Makefile.depend
==
--- head/targets/pseudo/userland/share/Makefile.depend  Mon Jul 10 22:11:30 
2017(r320880)
+++ head/targets/pseudo/userland/share/Makefile.depend  Mon Jul 10 23:51:51 
2017(r320881)
@@ -15,76 +15,7 @@ DIRDEPS = \
share/doc/legal/intel_wpi \
share/doc/legal/realtek \
share/doc/llvm/clang \
-   share/doc/papers/beyond4.3 \
-   share/doc/papers/bufbio \
-   share/doc/papers/contents \
-   share/doc/papers/devfs \
-   share/doc/papers/diskperf \
-   share/doc/papers/fsinterface \
-   share/doc/papers/hwpmc \
-   share/doc/papers/jail \
-   share/doc/papers/kernmalloc \
-   share/doc/papers/kerntune \
-   share/doc/papers/malloc \
-   share/doc/papers/newvm \
-   share/doc/papers/relengr \
-   share/doc/papers/sysperf \
-   share/doc/papers/timecounter \
share/doc/pjdfstest \
-   share/doc/psd/01.cacm \
-   share/doc/psd/02.implement \
-   share/doc/psd/03.iosys \
-   share/doc/psd/04.uprog \
-   share/doc/psd/05.sysman \
-   share/doc/psd/06.Clang \
-   share/doc/psd/12.make \
-   share/doc/psd/13.rcs/rcs \
-   share/doc/psd/13.rcs/rcs_func \
-   share/doc/psd/15.yacc \
-   share/doc/psd/16.lex \
-   share/doc/psd/17.m4 \
-   share/doc/psd/18.gprof \
-   share/doc/psd/20.ipctut \
-   share/doc/psd/21.ipc \
-   share/doc/psd/22.rpcgen \
-   share/doc/psd/23.rpc \
-   share/doc/psd/24.xdr \
-   share/doc/psd/25.xdrrfc \
-   share/doc/psd/26.rpcrfc \
-   share/doc/psd/27.nfsrpc \
-   share/doc/psd/contents \
-   share/doc/psd/title \
-   share/doc/smm/01.setup \
-   share/doc/smm/02.config \
-   share/doc/smm/03.fsck \
-   share/doc/smm/04.quotas \
-   share/doc/smm/05.fastfs \
-   share/doc/smm/06.nfs \
-   share/doc/smm/07.lpd \
-   share/doc/smm/08.sendmailop \
-   share/doc/smm/11.timedop \
-   share/doc/smm/12.timed \
-   share/doc/smm/18.net \
-   share/doc/smm/contents \
-   share/doc/smm/title \
-   share/doc/usd/04.csh \
-   share/doc/usd/05.dc \
-   share/doc/usd/06.bc \
-   share/doc/usd/07.mail \
-   share/doc/usd/10.exref/exref \
-   share/doc/usd/10.exref/summary \
-   share/doc/usd/11.vitut \
-   share/doc/usd/12.vi/summary \
-   share/doc/usd/12.vi/vi \
-   share/doc/usd/12.vi/viapwh \
-   share/doc/usd/13.viref \
-   share/doc/usd/18.msdiffs \
-   share/doc/usd/19.memacros \
-   share/doc/usd/20.meref \
-   share/doc/usd/21.troff \
-   share/doc/usd/22.trofftut \
-   share/doc/usd/contents \
-   share/doc/usd/title \
share/dtrace \
share/dtrace/toolkit \
share/examples \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320809 - head

2017-07-08 Thread Bryan Drewery
Author: bdrewery
Date: Sat Jul  8 17:53:00 2017
New Revision: 320809
URL: https://svnweb.freebsd.org/changeset/base/320809

Log:
  makeman: Don't show META_MODE ABI rebuild warnings.
  
  Reported by:  dim
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Sat Jul  8 17:30:33 2017(r320808)
+++ head/Makefile.inc1  Sat Jul  8 17:53:00 2017(r320809)
@@ -655,7 +655,8 @@ LIBCOMPAT= SOFT
 # when the ABI breaks though that we want to force rebuilding WORLDTMP
 # to get updated host tools.
 .if ${MK_META_MODE} == "yes" && defined(NO_CLEAN) && \
-!defined(NO_META_IGNORE_HOST) && !defined(NO_META_IGNORE_HOST_HEADERS)
+!defined(NO_META_IGNORE_HOST) && !defined(NO_META_IGNORE_HOST_HEADERS) && \
+!make(showconfig)
 # r318736 - ino64 major ABI breakage
 META_MODE_BAD_ABI_VERS+=   1200031
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320806 - head

2017-07-08 Thread Bryan Drewery
Author: bdrewery
Date: Sat Jul  8 16:39:55 2017
New Revision: 320806
URL: https://svnweb.freebsd.org/changeset/base/320806

Log:
  SYSTEM_COMPILER: Ensure there is not a stale compiler in WORLDTMP.
  
  In a scenario of cross-building it is possible that an OBJDIR's WORLDTMP
  contains an older compiler in WORLDTMP/usr/bin/cc that is not rebuilt
  if SYSTEM_COMPILER logic is triggered.  This compiler was still
  incorrectly used.  Address this by removing WORLDTMP/usr/bin/cc and all
  of the hardlinked files associated with it.  Also do this for c++ for
  GCC builds.
  
  Sponsored by: Dell EMC Isilon
  MFC after:1 week

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Sat Jul  8 15:01:55 2017(r320805)
+++ head/Makefile.inc1  Sat Jul  8 16:39:55 2017(r320806)
@@ -761,7 +761,15 @@ _worldtmp: .PHONY
 .endif
 .else
rm -rf ${WORLDTMP}/legacy/usr/include
-.endif
+.if ${USING_SYSTEM_COMPILER} == "yes"
+.for cc in cc c++
+   if [ -x ${WORLDTMP}/usr/bin/${cc} ]; then \
+   inum=$$(stat -f %i ${WORLDTMP}/usr/bin/${cc}); \
+   find ${WORLDTMP}/usr/bin -inum $${inum} -delete; \
+   fi
+.endfor
+.endif # ${USING_SYSTEM_COMPILER} == "yes"
+.endif # !defined(NO_CLEAN)
 
 # Our current approach to dependency tracking cannot cope with certain source
 # tree changes, particularly with respect to removing source files and
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320695 - head/sys/conf

2017-07-05 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jul  5 19:43:16 2017
New Revision: 320695
URL: https://svnweb.freebsd.org/changeset/base/320695

Log:
  Fix out-of-tree kernel builds after r320275 when bsd.linker.mk not yet 
installed.
  
  Submitted by: bde

Modified:
  head/sys/conf/kern.pre.mk
  head/sys/conf/kmod.mk

Modified: head/sys/conf/kern.pre.mk
==
--- head/sys/conf/kern.pre.mk   Wed Jul  5 19:25:09 2017(r320694)
+++ head/sys/conf/kern.pre.mk   Wed Jul  5 19:43:16 2017(r320695)
@@ -114,7 +114,7 @@ DEFINED_PROF=   ${PROF}
 # can override the others.
 CFLAGS+=   ${CONF_CFLAGS}
 
-.if ${LINKER_FEATURES:Mbuild-id}
+.if defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mbuild-id}
 LDFLAGS+=  -Wl,--build-id=sha1
 .endif
 

Modified: head/sys/conf/kmod.mk
==
--- head/sys/conf/kmod.mk   Wed Jul  5 19:25:09 2017(r320694)
+++ head/sys/conf/kmod.mk   Wed Jul  5 19:43:16 2017(r320695)
@@ -125,7 +125,7 @@ CFLAGS.gcc+= --param large-function-growth=1000
 CFLAGS+=   -fno-common
 LDFLAGS+=  -d -warn-common
 
-.if ${LINKER_FEATURES:Mbuild-id}
+.if defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mbuild-id}
 LDFLAGS+=  -Wl,--build-id=sha1
 .endif
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r320284 - head

2017-07-05 Thread Bryan Drewery
On 6/26/17 3:34 PM, Ngie Cooper wrote:
> On Mon, Jun 26, 2017 at 12:37 PM, Kyle Evans <kevan...@ksu.edu> wrote:
>> Hi,
>>
>> This broke my setup that builds my 7 different kernels due to duplicate
>> target errors. This seems to do what I want:
>> https://files.kyle-evans.net/freebsd/fix-packages.diff =)
> 
> :ShipIt:!
> 

Thanks, committed.

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r320692 - head

2017-07-05 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jul  5 19:24:38 2017
New Revision: 320692
URL: https://svnweb.freebsd.org/changeset/base/320692

Log:
  Fix create-kernel-packages with multiple BUILDKERNELS after r320284
  
  Submitted by: Kyle Evans 
  Reviewed by:  ngie

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Wed Jul  5 19:06:12 2017(r320691)
+++ head/Makefile.inc1  Wed Jul  5 19:24:38 2017(r320692)
@@ -1641,8 +1641,8 @@ create-kernel-packages-flavor${flavor:C,^""$,${_defaul
 .for _kernel in ${BUILDKERNELS:[2..-1]}
 .if exists(${KSTAGEDIR}/kernel.${_kernel}.meta)
 .for flavor in "" -debug
-create-kernel-packages: 
create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}
-create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}: 
_pkgbootstrap .PHONY
+create-kernel-packages: 
create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kernel}
+create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}-${_kernel}:
 _pkgbootstrap .PHONY
@cd ${KSTAGEDIR}/kernel.${_kernel} ; \
awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk \
-v kernel=yes -v _kernconf=${_kernel} \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320691 - stable/10

2017-07-05 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jul  5 19:06:12 2017
New Revision: 320691
URL: https://svnweb.freebsd.org/changeset/base/320691

Log:
  MFC r289861:
  
native-xtools: Replace common path with NXBDESTDIR.

Modified:
  stable/10/Makefile.inc1
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/Makefile.inc1
==
--- stable/10/Makefile.inc1 Wed Jul  5 17:39:17 2017(r320690)
+++ stable/10/Makefile.inc1 Wed Jul  5 19:06:12 2017(r320691)
@@ -1555,12 +1555,13 @@ cross-tools: .MAKE .PHONY
${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX} install
 .endfor
 
+NXBDESTDIR=${OBJTREE}/nxb-bin
 NXBENV=MAKEOBJDIRPREFIX=${OBJTREE}/nxb \
INSTALL="sh ${.CURDIR}/tools/install.sh" \
VERSION="${VERSION}"
 NXBMAKE=   ${NXBENV} ${MAKE} \
-   TBLGEN=${OBJTREE}/nxb-bin/usr/bin/tblgen \
-   CLANG_TBLGEN=${OBJTREE}/nxb-bin/usr/bin/clang-tblgen \
+   TBLGEN=${NXBDESTDIR}/usr/bin/tblgen \
+   CLANG_TBLGEN=${NXBDESTDIR}/usr/bin/clang-tblgen \
MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \
-DWITHOUT_GDB -DNO_TESTS \
SSP_CFLAGS= \
@@ -1570,13 +1571,11 @@ NXBMAKE=${NXBENV} ${MAKE} \
-DWITHOUT_CLANG_FULL -DWITHOUT_LLDB
 
 native-xtools: .PHONY
-   mkdir -p ${OBJTREE}/nxb-bin/bin
-   mkdir -p ${OBJTREE}/nxb-bin/sbin
-   mkdir -p ${OBJTREE}/nxb-bin/usr
+   mkdir -p ${NXBDESTDIR}/bin ${NXBDESTDIR}/sbin ${NXBDESTDIR}/usr
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \
-   -p ${OBJTREE}/nxb-bin/usr >/dev/null
+   -p ${NXBDESTDIR}/usr >/dev/null
mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \
-   -p ${OBJTREE}/nxb-bin/usr/include >/dev/null
+   -p ${NXBDESTDIR}/usr/include >/dev/null
 .for _tool in \
 bin/cat \
 bin/chmod \
@@ -1640,7 +1639,7 @@ native-xtools: .PHONY
${NXBMAKE} DIRPRFX=${_tool}/ obj; \
${NXBMAKE} DIRPRFX=${_tool}/ depend; \
${NXBMAKE} DIRPRFX=${_tool}/ all; \
-   ${NXBMAKE} DIRPRFX=${_tool}/ DESTDIR=${OBJTREE}/nxb-bin install
+   ${NXBMAKE} DIRPRFX=${_tool}/ DESTDIR=${NXBDESTDIR} install
 .endfor
 
 #
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320299 - stable/11/lib/libsysdecode

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 20:49:23 2017
New Revision: 320299
URL: https://svnweb.freebsd.org/changeset/base/320299

Log:
  MFC r320206,r320207:
  
r320206:
  Follow-up r308602: Don't add missing headers to .depend.tables.h.
r320207:
  Tweak r320206: Still create the TABLE but not the .depend entry for 
missing
  headers.
  
  Approved by:  re (gjb)

Modified:
  stable/11/lib/libsysdecode/mktables
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/lib/libsysdecode/mktables
==
--- stable/11/lib/libsysdecode/mktables Fri Jun 23 20:38:21 2017
(r320298)
+++ stable/11/lib/libsysdecode/mktables Fri Jun 23 20:49:23 2017
(r320299)
@@ -65,17 +65,19 @@ gen_table()
else
filter="egrep -v"
fi
-   all_headers="${all_headers:+${all_headers} }${file}"
cat <<_EOF_
 TABLE_START(${name})
 _EOF_
-   egrep "^#[[:space:]]*define[[:space:]]+"${grep}"[[:space:]]*" \
-   $include_dir/$file | ${filter} ${excl} | \
-   awk '{ for (i = 1; i <= NF; i++) \
-   if ($i ~ /define/) \
-   break; \
-   ++i; \
-   printf "TABLE_ENTRY(%s)\n", $i }'
+   if [ -e "${include_dir}/${file}" ]; then
+   all_headers="${all_headers:+${all_headers} }${file}"
+   egrep "^#[[:space:]]*define[[:space:]]+"${grep}"[[:space:]]*" \
+   $include_dir/$file | ${filter} ${excl} | \
+   awk '{ for (i = 1; i <= NF; i++) \
+   if ($i ~ /define/) \
+   break; \
+   ++i; \
+   printf "TABLE_ENTRY(%s)\n", $i }'
+   fi
 cat <<_EOF_
 TABLE_END
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320298 - in stable/11: share/mk sys/conf

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 20:38:21 2017
New Revision: 320298
URL: https://svnweb.freebsd.org/changeset/base/320298

Log:
  MFC r320174,r320204:
  
r320174:
  Fix 'make clean all' to work again.
r320204:
  Fix various 'make *clean *all *install' combinations.
  
  PR:   219819
  Approved by:  re (gjb)

Modified:
  stable/11/share/mk/bsd.dep.mk
  stable/11/share/mk/bsd.init.mk
  stable/11/sys/conf/kern.post.mk
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/share/mk/bsd.dep.mk
==
--- stable/11/share/mk/bsd.dep.mk   Fri Jun 23 20:25:58 2017
(r320297)
+++ stable/11/share/mk/bsd.dep.mk   Fri Jun 23 20:38:21 2017
(r320298)
@@ -90,7 +90,7 @@ _meta_filemon=1
 .if defined(_SKIP_BUILD) || defined(_meta_filemon)
 _SKIP_READ_DEPEND= 1
 .if ${MK_DIRDEPS_BUILD} == "no" || make(analyze) || make(print-dir) || \
-make(obj) || make(clean*) || make(destroy*)
+make(obj) || (!make(all) && (make(clean*) || make(destroy*)))
 .MAKE.DEPENDFILE=  /dev/null
 .endif
 .endif

Modified: stable/11/share/mk/bsd.init.mk
==
--- stable/11/share/mk/bsd.init.mk  Fri Jun 23 20:25:58 2017
(r320297)
+++ stable/11/share/mk/bsd.init.mk  Fri Jun 23 20:38:21 2017
(r320298)
@@ -50,8 +50,9 @@ $xGRP=${_gid}
 _SKIP_BUILD=   not building at level 0
 .elif !empty(.MAKEFLAGS:M-V${_V_DO_BUILD}) || \
 ${.TARGETS:M*install*} == ${.TARGETS} || \
-make(clean*) || make(obj) || make(analyze) || make(print-dir) || \
-make(destroy*)
+${.TARGETS:Mclean*} == ${.TARGETS} || \
+${.TARGETS:Mdestroy*} == ${.TARGETS} || \
+make(obj) || make(analyze) || make(print-dir)
 # Skip building, but don't show a warning.
 _SKIP_BUILD=
 .endif

Modified: stable/11/sys/conf/kern.post.mk
==
--- stable/11/sys/conf/kern.post.mk Fri Jun 23 20:25:58 2017
(r320297)
+++ stable/11/sys/conf/kern.post.mk Fri Jun 23 20:38:21 2017
(r320298)
@@ -200,10 +200,10 @@ _meta_filemon=1
 # lookups.  For install, only do this if no other targets are specified.
 # Also skip generating or including .depend.* files if in meta+filemon mode
 # since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used.
-.if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(obj) || make(clean*) || \
+.if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(*obj) || \
+${.TARGETS:M*clean*} == ${.TARGETS} || \
 ${.TARGETS:M*install*} == ${.TARGETS} || \
-make(kernel-obj) || make(kernel-clean*) || \
-make(kernel-install*) || defined(_meta_filemon)
+defined(_meta_filemon)
 _SKIP_READ_DEPEND= 1
 .MAKE.DEPENDFILE=  /dev/null
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320297 - stable/11/share/mk

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 20:25:58 2017
New Revision: 320297
URL: https://svnweb.freebsd.org/changeset/base/320297

Log:
  MFC r319861:
  
META_MODE: NO_FILEMON should imply nofilemon.
  
  Approved by:  re (gjb)

Modified:
  stable/11/share/mk/sys.mk
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/share/mk/sys.mk
==
--- stable/11/share/mk/sys.mk   Fri Jun 23 20:21:53 2017(r320296)
+++ stable/11/share/mk/sys.mk   Fri Jun 23 20:25:58 2017(r320297)
@@ -59,7 +59,7 @@ META_MODE+=   missing-meta=yes
 .if !defined(NO_SILENT)
 META_MODE+=silent=yes
 .endif
-.if !exists(/dev/filemon)
+.if !exists(/dev/filemon) || defined(NO_FILEMON)
 META_MODE+= nofilemon
 .endif
 # Require filemon data with bmake
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320294 - stable/11/share/mk

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 19:44:20 2017
New Revision: 320294
URL: https://svnweb.freebsd.org/changeset/base/320294

Log:
  MFC r320012,r320028,r320061,r320118:
  
r320012:
  Fix LIBAMU location to fix 'stale .depend' rebuilds in usr.sbin/amd.
r320028:
  Fix more incorrect library directories fix 'stale .depend' rebuilds.
r320061:
  Fix Makefiles which override LIBDIR to not add incorrect dependencies into
  .depend.
r320118:
  Follow-up r320061: Need to respect make.conf/env LIBDIR overrides.
  
  Approved by:  re (gjb)

Modified:
  stable/11/share/mk/bsd.libnames.mk
  stable/11/share/mk/bsd.own.mk
  stable/11/share/mk/local.sys.mk
  stable/11/share/mk/src.libnames.mk
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/share/mk/bsd.libnames.mk
==
--- stable/11/share/mk/bsd.libnames.mk  Fri Jun 23 19:04:40 2017
(r320293)
+++ stable/11/share/mk/bsd.libnames.mk  Fri Jun 23 19:44:20 2017
(r320294)
@@ -12,161 +12,161 @@
 
 # Src directory locations are also defined in src.libnames.mk.
 
-LIBCRT0?=  ${DESTDIR}${LIBDIR}/crt0.o
+LIBCRT0?=  ${DESTDIR}${LIBDIR_BASE}/crt0.o
 
-LIB80211?= ${DESTDIR}${LIBDIR}/lib80211.a
-LIBALIAS?= ${DESTDIR}${LIBDIR}/libalias.a
-LIBARCHIVE?=   ${DESTDIR}${LIBDIR}/libarchive.a
-LIBASN1?=  ${DESTDIR}${LIBDIR}/libasn1.a
-LIBATM?=   ${DESTDIR}${LIBDIR}/libatm.a
-LIBAUDITD?=${DESTDIR}${LIBDIR}/libauditd.a
-LIBAVL?=   ${DESTDIR}${LIBDIR}/libavl.a
-LIBBEGEMOT?=   ${DESTDIR}${LIBDIR}/libbegemot.a
-LIBBLACKLIST?= ${DESTDIR}${LIBDIR}/libblacklist.a
-LIBBLUETOOTH?= ${DESTDIR}${LIBDIR}/libbluetooth.a
-LIBBSDXML?=${DESTDIR}${LIBDIR}/libbsdxml.a
-LIBBSM?=   ${DESTDIR}${LIBDIR}/libbsm.a
-LIBBSNMP?= ${DESTDIR}${LIBDIR}/libbsnmp.a
-LIBBZ2?=   ${DESTDIR}${LIBDIR}/libbz2.a
-LIBC?= ${DESTDIR}${LIBDIR}/libc.a
-LIBCALENDAR?=  ${DESTDIR}${LIBDIR}/libcalendar.a
-LIBCAM?=   ${DESTDIR}${LIBDIR}/libcam.a
-LIBCAP_DNS?=   ${DESTDIR}${LIBDIR}/libcap_dns.a
-LIBCAP_GRP?=   ${DESTDIR}${LIBDIR}/libcap_grp.a
-LIBCAP_PWD?=   ${DESTDIR}${LIBDIR}/libcap_pwd.a
-LIBCAP_RANDOM?=${DESTDIR}${LIBDIR}/libcap_random.a
-LIBCAP_SYSCTL?=${DESTDIR}${LIBDIR}/libcap_sysctl.a
-LIBCASPER?=${DESTDIR}${LIBDIR}/libcasper.a
-LIBCOMPAT?=${DESTDIR}${LIBDIR}/libcompat.a
-LIBCOMPILER_RT?=${DESTDIR}${LIBDIR}/libcompiler_rt.a
-LIBCOM_ERR?=   ${DESTDIR}${LIBDIR}/libcom_err.a
-LIBCPLUSPLUS?= ${DESTDIR}${LIBDIR}/libc++.a
-LIBCRYPT?= ${DESTDIR}${LIBDIR}/libcrypt.a
-LIBCRYPTO?=${DESTDIR}${LIBDIR}/libcrypto.a
-LIBCTF?=   ${DESTDIR}${LIBDIR}/libctf.a
-LIBCURSES?=${DESTDIR}${LIBDIR}/libcurses.a
-LIBCUSE?=  ${DESTDIR}${LIBDIR}/libcuse.a
-LIBCXGB4?= ${DESTDIR}${LIBDIR}/libcxgb4.a
-LIBCXXRT?= ${DESTDIR}${LIBDIR}/libcxxrt.a
-LIBC_PIC?= ${DESTDIR}${LIBDIR}/libc_pic.a
-LIBDEVCTL?=${DESTDIR}${LIBDIR}/libdevctl.a
-LIBDEVDCTL?=   ${DESTDIR}${LIBDIR}/libdevdctl.a
-LIBDEVINFO?=   ${DESTDIR}${LIBDIR}/libdevinfo.a
-LIBDEVSTAT?=   ${DESTDIR}${LIBDIR}/libdevstat.a
-LIBDIALOG?=${DESTDIR}${LIBDIR}/libdialog.a
-LIBDNS?=   ${DESTDIR}${LIBDIR}/libdns.a
-LIBDPV?=   ${DESTDIR}${LIBDIR}/libdpv.a
-LIBDTRACE?=${DESTDIR}${LIBDIR}/libdtrace.a
-LIBDWARF?= ${DESTDIR}${LIBDIR}/libdwarf.a
-LIBEDIT?=  ${DESTDIR}${LIBDIR}/libedit.a
-LIBEFIVAR?=${DESTDIR}${LIBDIR}/libefivar.a
-LIBELF?=   ${DESTDIR}${LIBDIR}/libelf.a
-LIBEXECINFO?=  ${DESTDIR}${LIBDIR}/libexecinfo.a
-LIBFETCH?= ${DESTDIR}${LIBDIR}/libfetch.a
-LIBFIGPAR?=${DESTDIR}${LIBDIR}/libfigpar.a
+LIB80211?= ${DESTDIR}${LIBDIR_BASE}/lib80211.a
+LIBALIAS?= ${DESTDIR}${LIBDIR_BASE}/libalias.a
+LIBARCHIVE?=   ${DESTDIR}${LIBDIR_BASE}/libarchive.a
+LIBASN1?=  ${DESTDIR}${LIBDIR_BASE}/libasn1.a
+LIBATM?=   ${DESTDIR}${LIBDIR_BASE}/libatm.a
+LIBAUDITD?=${DESTDIR}${LIBDIR_BASE}/libauditd.a
+LIBAVL?=   ${DESTDIR}${LIBDIR_BASE}/libavl.a
+LIBBEGEMOT?=   ${DESTDIR}${LIBDIR_BASE}/libbegemot.a
+LIBBLACKLIST?= ${DESTDIR}${LIBDIR_BASE}/libblacklist.a
+LIBBLUETOOTH?= ${DESTDIR}${LIBDIR_BASE}/libbluetooth.a
+LIBBSDXML?=${DESTDIR}${LIBDIR_BASE}/libbsdxml.a
+LIBBSM?=   ${DESTDIR}${LIBDIR_BASE}/libbsm.a
+LIBBSNMP?= ${DESTDIR}${LIBDIR_BASE}/libbsnmp.a
+LIBBZ2?=   ${DESTDIR}${LIBDIR_BASE}/libbz2.a
+LIBC?= ${DESTDIR}${LIBDIR_BASE}/libc.a
+LIBCALENDAR?=  ${DESTDIR}${LIBDIR_BASE}/libcalendar.a
+LIBCAM?=   ${DESTDIR}${LIBDIR_BASE}/libcam.a
+LIBCAP_DNS?=   ${DESTDIR}${LIBDIR_BASE}/libcap_dns.a
+LIBCAP_GRP?=   ${DESTDIR}${LIBDIR_BASE}/libcap_grp.a
+LIBCAP_PWD?=   ${DESTDIR}${LIBDIR_BASE}/libcap_pwd.a
+LIBCAP_RANDOM?=${DESTDIR}${LIBDIR_BASE}/libcap_random.a
+LIBCAP_SYSCTL?=${DESTDIR}${LIBDIR_BASE}/libcap_sysctl.a
+LIBCASPER?=${DESTDIR}${LIBDIR_BASE}/libcasper.a
+LIBCOMPAT?=${DESTDIR}${LIBDIR_BASE}/libcompat.a
+LIBCOMPILER_RT?=${DESTDIR}${LIBDIR_BASE}/libcompiler_rt.a

svn commit: r320292 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 19:03:31 2017
New Revision: 320292
URL: https://svnweb.freebsd.org/changeset/base/320292

Log:
  NO_ROOT: Remove excessive // when DESTDIR/DISTDIR are empty.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:58:28 2017(r320291)
+++ head/Makefile.inc1  Fri Jun 23 19:03:31 2017(r320292)
@@ -718,6 +718,7 @@ _INSTALL_DDIR=  ${DESTDIR}/${DISTDIR}
 INSTALL_DDIR=  ${_INSTALL_DDIR:S://:/:g:C:/$::}
 .if defined(NO_ROOT)
 METALOG?=  ${DESTDIR}/${DISTDIR}/METALOG
+METALOG:=  ${METALOG:C,//+,/,g}
 IMAKE+=-DNO_ROOT METALOG=${METALOG}
 INSTALLFLAGS+= -U -M ${METALOG} -D ${INSTALL_DDIR}
 MTREEFLAGS+=   -W
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320285 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 18:27:00 2017
New Revision: 320285
URL: https://svnweb.freebsd.org/changeset/base/320285

Log:
  Expose only the create-packages-* targets since they set needed DEST/DIRDIR.
  
  The other targets just fail confusingly otherwise.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile
  head/Makefile.inc1

Modified: head/Makefile
==
--- head/Makefile   Fri Jun 23 18:26:57 2017(r320284)
+++ head/Makefile   Fri Jun 23 18:27:00 2017(r320285)
@@ -131,7 +131,7 @@ TGTS=   all all-man buildenv buildenvvars buildkernel bu
build32 distribute32 install32 buildsoft distributesoft installsoft \
builddtb xdev xdev-build xdev-install \
xdev-links native-xtools stageworld stagekernel stage-packages \
-   create-world-packages create-kernel-packages create-packages \
+   create-packages-world create-packages-kernel create-packages \
packages installconfig real-packages sign-packages package-pkg \
print-dir test-system-compiler
 

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:26:57 2017(r320284)
+++ head/Makefile.inc1  Fri Jun 23 18:27:00 2017(r320285)
@@ -1553,12 +1553,14 @@ _repodir: .PHONY
 
 create-packages-world: _pkgbootstrap _repodir .PHONY
${_+_}@cd ${.CURDIR}; \
-   ${MAKE} DESTDIR=${WSTAGEDIR} \
+   ${MAKE} -f Makefile.inc1 \
+   DESTDIR=${WSTAGEDIR} \
PKG_VERSION=${PKG_VERSION} create-world-packages
 
 create-packages-kernel:_pkgbootstrap _repodir .PHONY
${_+_}@cd ${.CURDIR}; \
-   ${MAKE} DESTDIR=${KSTAGEDIR} \
+   ${MAKE} -f Makefile.inc1 \
+   DESTDIR=${KSTAGEDIR} \
PKG_VERSION=${PKG_VERSION} DISTDIR=kernel \
create-kernel-packages
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320283 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 18:26:54 2017
New Revision: 320283
URL: https://svnweb.freebsd.org/changeset/base/320283

Log:
  packages: Allow actually building individual world packages in parallel.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:26:51 2017(r320282)
+++ head/Makefile.inc1  Fri Jun 23 18:26:54 2017(r320283)
@@ -1570,24 +1570,34 @@ create-world-packages:  _pkgbootstrap .PHONY
awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk \
${WSTAGEDIR}/METALOG
@for plist in ${WSTAGEDIR}/*.plist; do \
-   plist=$${plist##*/} ; \
-   pkgname=$${plist%.plist} ; \
-   sh ${SRCDIR}/release/packages/generate-ucl.sh -o $${pkgname} \
-   -s ${SRCDIR} -u ${WSTAGEDIR}/$${pkgname}.ucl ; \
-   done
-   @for plist in ${WSTAGEDIR}/*.plist; do \
-   plist=$${plist##*/} ; \
-   pkgname=$${plist%.plist} ; \
-   awk -F\" ' \
-   /^name/ { printf("===> Creating %s-", $$2); next } \
-   /^version/ { print $$2; next } \
-   ' ${WSTAGEDIR}/$${pkgname}.ucl ; \
-   ${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/bin/sh -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} ; \
-   done
+ plist=$${plist##*/} ; \
+ pkgname=$${plist%.plist} ; \
+ echo "_PKGS+= $${pkgname}" ; \
+   done > ${WSTAGEDIR}/packages.mk
+   ${_+_}@cd ${.CURDIR}; \
+   ${MAKE} -f Makefile.inc1 create-world-packages-jobs \
+   .MAKE.JOB.PREFIX=
+
+.if make(create-world-packages-jobs)
+.include "${WSTAGEDIR}/packages.mk"
+.endif
+
+create-world-packages-jobs: .PHONY
+.for pkgname in ${_PKGS}
+create-world-packages-jobs: create-world-package-${pkgname}
+create-world-package-${pkgname}: .PHONY
+   @sh ${SRCDIR}/release/packages/generate-ucl.sh -o ${pkgname} \
+   -s ${SRCDIR} -u ${WSTAGEDIR}/${pkgname}.ucl
+   @awk -F\" ' \
+   /^name/ { printf("===> Creating %s-", $$2); next } \
+   /^version/ { print $$2; next } \
+   ' ${WSTAGEDIR}/${pkgname}.ucl ; \
+   ${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/bin/sh -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}
+.endfor
 
 create-kernel-packages:_pkgbootstrap .PHONY
 .if exists(${KSTAGEDIR}/kernel.meta)
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320286 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 18:27:03 2017
New Revision: 320286
URL: https://svnweb.freebsd.org/changeset/base/320286

Log:
  compiler-metadata: Properly handle cross-build OBJDIR.
  
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:27:00 2017(r320285)
+++ head/Makefile.inc1  Fri Jun 23 18:27:03 2017(r320286)
@@ -882,7 +882,7 @@ _cross-tools:
@echo "--"
@echo ">>> stage 3: cross tools"
@echo "--"
-   @rm -f ${.OBJDIR}/compiler-metadata.mk
+   @rm -f ${OBJTREE}${.CURDIR}/compiler-metadata.mk
${_+_}cd ${.CURDIR}; ${XMAKE} cross-tools
${_+_}cd ${.CURDIR}; ${XMAKE} kernel-tools
 _build-metadata:
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320284 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 18:26:57 2017
New Revision: 320284
URL: https://svnweb.freebsd.org/changeset/base/320284

Log:
  packages: Parallelize individual kernel packaging.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:26:54 2017(r320283)
+++ head/Makefile.inc1  Fri Jun 23 18:26:57 2017(r320284)
@@ -1599,9 +1599,12 @@ create-world-package-${pkgname}: .PHONY
-o ${REPODIR}/$$(${PKG_CMD} -o ABI_FILE=${WSTAGEDIR}/bin/sh 
config ABI)/${PKG_VERSION}
 .endfor
 
-create-kernel-packages:_pkgbootstrap .PHONY
+create-kernel-packages:.PHONY
+_default_flavor=   -default
 .if exists(${KSTAGEDIR}/kernel.meta)
 .for flavor in "" -debug
+create-kernel-packages: 
create-kernel-packages-flavor${flavor:C,^""$,${_default_flavor},}
+create-kernel-packages-flavor${flavor:C,^""$,${_default_flavor},}: 
_pkgbootstrap .PHONY
@cd ${KSTAGEDIR}/${DISTDIR} ; \
awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk \
-v kernel=yes -v _kernconf=${INSTALLKERNEL} \
@@ -1631,6 +1634,8 @@ create-kernel-packages:   _pkgbootstrap .PHONY
 .for _kernel in ${BUILDKERNELS:[2..-1]}
 .if exists(${KSTAGEDIR}/kernel.${_kernel}.meta)
 .for flavor in "" -debug
+create-kernel-packages: 
create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}
+create-kernel-packages-extra-flavor${flavor:C,^""$,${_default_flavor},}: 
_pkgbootstrap .PHONY
@cd ${KSTAGEDIR}/kernel.${_kernel} ; \
awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk \
-v kernel=yes -v _kernconf=${_kernel} \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320280 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 18:26:33 2017
New Revision: 320280
URL: https://svnweb.freebsd.org/changeset/base/320280

Log:
  packages: Allow stageworld/stagekernel to run with make jobs.
  
  The -B was originally added in projects/release-pkg r289381 as a copy
  of what 'make world' did at the time.  The -B was removed from
  the 'installworld' call in 'world' in r303844 though.  The staging
  of files is safe to run in parallel.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:06:46 2017(r320279)
+++ head/Makefile.inc1  Fri Jun 23 18:26:33 2017(r320280)
@@ -1539,8 +1539,8 @@ real-packages:stage-packages create-packages sign-pac
 stage-packages: .PHONY
@mkdir -p ${REPODIR} ${WSTAGEDIR} ${KSTAGEDIR}
${_+_}@cd ${.CURDIR}; \
-   ${MAKE} DESTDIR=${WSTAGEDIR} -DNO_ROOT -B stageworld ; \
-   ${MAKE} DESTDIR=${KSTAGEDIR} -DNO_ROOT -B stagekernel
+   ${MAKE} DESTDIR=${WSTAGEDIR} -DNO_ROOT stageworld; \
+   ${MAKE} DESTDIR=${KSTAGEDIR} -DNO_ROOT stagekernel
 
 create-packages:   _pkgbootstrap .PHONY
@mkdir -p ${REPODIR}
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320282 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 18:26:51 2017
New Revision: 320282
URL: https://svnweb.freebsd.org/changeset/base/320282

Log:
  packages: Allow creating kernel/world packages in parallel.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:26:47 2017(r320281)
+++ head/Makefile.inc1  Fri Jun 23 18:26:51 2017(r320282)
@@ -1548,14 +1548,21 @@ stage-packages-kernel: .PHONY
 
 stage-packages: .PHONY stage-packages-world stage-packages-kernel
 
-create-packages:   _pkgbootstrap .PHONY
+_repodir: .PHONY
@mkdir -p ${REPODIR}
+
+create-packages-world: _pkgbootstrap _repodir .PHONY
${_+_}@cd ${.CURDIR}; \
${MAKE} DESTDIR=${WSTAGEDIR} \
-   PKG_VERSION=${PKG_VERSION} create-world-packages ; \
+   PKG_VERSION=${PKG_VERSION} create-world-packages
+
+create-packages-kernel:_pkgbootstrap _repodir .PHONY
+   ${_+_}@cd ${.CURDIR}; \
${MAKE} DESTDIR=${KSTAGEDIR} \
PKG_VERSION=${PKG_VERSION} DISTDIR=kernel \
create-kernel-packages
+
+create-packages: .PHONY create-packages-world create-packages-kernel
 
 create-world-packages: _pkgbootstrap .PHONY
@rm -f ${WSTAGEDIR}/*.plist 2>/dev/null || :
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320281 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 18:26:47 2017
New Revision: 320281
URL: https://svnweb.freebsd.org/changeset/base/320281

Log:
  packages: Allow staging world/kernel in parallel.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 18:26:33 2017(r320280)
+++ head/Makefile.inc1  Fri Jun 23 18:26:47 2017(r320281)
@@ -1536,11 +1536,17 @@ package-pkg: .PHONY
 
 real-packages: stage-packages create-packages sign-packages .PHONY
 
-stage-packages: .PHONY
-   @mkdir -p ${REPODIR} ${WSTAGEDIR} ${KSTAGEDIR}
+stage-packages-world: .PHONY
+   @mkdir -p ${WSTAGEDIR}
${_+_}@cd ${.CURDIR}; \
-   ${MAKE} DESTDIR=${WSTAGEDIR} -DNO_ROOT stageworld; \
+   ${MAKE} DESTDIR=${WSTAGEDIR} -DNO_ROOT stageworld
+
+stage-packages-kernel: .PHONY
+   @mkdir -p ${KSTAGEDIR}
+   ${_+_}@cd ${.CURDIR}; \
${MAKE} DESTDIR=${KSTAGEDIR} -DNO_ROOT stagekernel
+
+stage-packages: .PHONY stage-packages-world stage-packages-kernel
 
 create-packages:   _pkgbootstrap .PHONY
@mkdir -p ${REPODIR}
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r320272 - head/sys/conf

2017-06-23 Thread Bryan Drewery
On 6/23/2017 9:28 AM, Konstantin Belousov wrote:
> On Fri, Jun 23, 2017 at 03:57:58PM +, Ed Maste wrote:
>> Author: emaste
>> Date: Fri Jun 23 15:57:58 2017
>> New Revision: 320272
>> URL: https://svnweb.freebsd.org/changeset/base/320272
>>
>> Log:
>>   enable --build-id for the kernel link
>>   
>>   A Build-ID is an identifier generated at link time to uniquely identify
>>   ELF binaries.  It allows efficient confirmation that an executable or
>>   shared library and a corresponding standalone debuginfo file match.
>>   (Otherwise, a checksum of the debuginfo file must be calculated when
>>   opening it in a debugger.)
>>   
>>   The FreeBSD base system includes GNU bfd ld 2.17.50 as the linker for
>>   architectures other than arm64.  Build-ID support was added to bfd ld
>>   shortly after that version, so was not previously available to us.
>>   
>>   We can now start making use of Build-ID as we migrate to using lld or
>>   bfd ld from ports, conditionally enabled based on the LINKER_TYPE and
>>   LINKER_VERSION make variables added in r320244 and subsequent commits.
>>   
>>   Reviewed by:   dim
>>   MFC after: 3 weeks
>>   Sponsored by:  The FreeBSD Foundation
>>   Differential Revision: https://reviews.freebsd.org/D11314
>>
>> Modified:
>>   head/sys/conf/kern.pre.mk
>>   head/sys/conf/kmod.mk
>>
>> Modified: head/sys/conf/kern.pre.mk
>> ==
>> --- head/sys/conf/kern.pre.mkFri Jun 23 15:27:23 2017
>> (r320271)
>> +++ head/sys/conf/kern.pre.mkFri Jun 23 15:57:58 2017
>> (r320272)
>> @@ -114,6 +114,10 @@ DEFINED_PROF=   ${PROF}
>>  # can override the others.
>>  CFLAGS+=${CONF_CFLAGS}
>>  
>> +.if ${LINKER_TYPE} != "bfd" || ${LINKER_VERSION} > 21750
> I believe such tests is the road to misery.  I suggest that an ld feature
> presence must define some variable for make, and the places using the
> ld feature would test for the variable.
> 
> In other words, checking the features must be centralized.  There is too
> many linkers already: bfd, gold, lld.  Since two new linkers appeared in
> five years, I would be not surprised if more will.

Agreed.  We can have a LINKER_FEATURES like we do for the compiler.

In this case I suggest just moving the same condition you have added
into bsd.linker.mk with something like
https://people.freebsd.org/~bdrewery/patches/linker-features-build-id.diff

Then in these sys/conf places you just:
.if ${LINKER_FEATURES:Mbuild-id}
LDFLAGS+=

> 
> Having to deal with combinations at places of use is not scalable.  We do
> it close to right with C compilers and sys/cdefs.h.
> 
>> +LDFLAGS+=   -Wl,--build-id=sha1
>> +.endif
>> +
>>  # Optional linting. This can be overridden in /etc/make.conf.
>>  LINTFLAGS=  ${LINTOBJKERNFLAGS}
>>  
>>
>> Modified: head/sys/conf/kmod.mk
>> ==
>> --- head/sys/conf/kmod.mkFri Jun 23 15:27:23 2017(r320271)
>> +++ head/sys/conf/kmod.mkFri Jun 23 15:57:58 2017(r320272)
>> @@ -125,6 +125,10 @@ CFLAGS.gcc+= --param large-function-growth=1000
>>  CFLAGS+=-fno-common
>>  LDFLAGS+=   -d -warn-common
>>  
>> +.if ${LINKER_TYPE} != "bfd" || ${LINKER_VERSION} > 21750
>> +LDFLAGS+=   -Wl,--build-id=sha1
>> +.endif
>> +
>>  CFLAGS+=${DEBUG_FLAGS}
>>  .if ${MACHINE_CPUARCH} == amd64
>>  CFLAGS+=-fno-omit-frame-pointer -mno-omit-leaf-frame-pointer
> 


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r320274 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 16:38:46 2017
New Revision: 320274
URL: https://svnweb.freebsd.org/changeset/base/320274

Log:
  Set compiler metadata for stageworld/distributeworld.
  
  This fixes LD errors during 'make packages' but also for the unlikely case of
  'buildworld' on 1 system and 'packages' on another [1].
  
  PR:   212877 [1]
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Fri Jun 23 16:38:18 2017(r320273)
+++ head/Makefile.inc1  Fri Jun 23 16:38:46 2017(r320274)
@@ -87,7 +87,8 @@ OBJTREE=  ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH}
 
 # Pull in compiler metadata from buildworld/toolchain if possible to avoid
 # running CC from bsd.compiler.mk.
-.if make(installworld) || make(install)
+.if make(installworld) || make(install) || make(distributeworld) || \
+make(stageworld)
 .-include "${OBJTREE}${.CURDIR}/compiler-metadata.mk"
 .endif
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320273 - head

2017-06-23 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 23 16:38:18 2017
New Revision: 320273
URL: https://svnweb.freebsd.org/changeset/base/320273

Log:
  Allow ALWAYS_BOOTSTRAP_MAKE to force bmake bootstrapping.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile

Modified: head/Makefile
==
--- head/Makefile   Fri Jun 23 15:57:58 2017(r320272)
+++ head/Makefile   Fri Jun 23 16:38:18 2017(r320273)
@@ -195,7 +195,8 @@ HAVE_MAKE=  bmake
 .else
 HAVE_MAKE= fmake
 .endif
-.if ${HAVE_MAKE} != ${WANT_MAKE} || \
+.if defined(ALWAYS_BOOTSTRAP_MAKE) || \
+${HAVE_MAKE} != ${WANT_MAKE} || \
 (defined(WANT_MAKE_VERSION) && ${MAKE_VERSION} < ${WANT_MAKE_VERSION})
 NEED_MAKE_UPGRADE= t
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r320245 - head/share/mk

2017-06-23 Thread Bryan Drewery
On 6/23/2017 6:56 AM, Cy Schubert wrote:
> In message <201706231347.v5ndlt39037...@slippy.cwsent.com>, Cy Schubert 
> writes:
>> Let me try replying to this again. It's an exmh thing. Sorry.
>>
>> In message <201706222103.v5ml3oq3026...@repo.freebsd.org>, Bryan Drewery 
>> writes
>> :
>>> Author: bdrewery
>>> Date: Thu Jun 22 21:03:24 2017
>>> New Revision: 320245
>>> URL: https://svnweb.freebsd.org/changeset/base/320245
>>>
>>> Log:
>>>   Support XLD for setting X_LINKER_TYPE and X_LINKER_VERSION.
>>>   
>>>   This is similar to r300350 for bsd.compiler.mk.
>>>   
>>>   MFC after:2 weeks
>>>   Reviewed by:  emaste
>>>   Sponsored by: Dell EMC Isilon
>>>   Differential Revision:https://reviews.freebsd.org/D11309
>>>
>>> Modified:
>>>   head/share/mk/bsd.linker.mk
>>>
>>> Modified: head/share/mk/bsd.linker.mk
>>> ===
>> ==
>>> =
>>> --- head/share/mk/bsd.linker.mk Thu Jun 22 21:03:20 2017(r32024
>>> 4)
>>> +++ head/share/mk/bsd.linker.mk Thu Jun 22 21:03:24 2017(r32024
>>> 5)
>>> @@ -9,25 +9,39 @@
>>>  # major * 1 + minor * 100 + tiny
>>>  # It too can be overridden on the command line.
>>>  #
>>> +# These variables with an X_ prefix will also be provided if XLD is set.
>>> +#
>>>  # This file may be included multiple times, but only has effect the first 
>> ti
>>> me.
>>>  #
>>>  
>>>  .if !target()
>>>  :
>>>  
>>> -_ld_version!=  ${LD} --version 2>/dev/null | head -n 1 || echo none
>>> +.for ld X_ in LD $${_empty_var_} XLD X_
>>> +.if ${ld} == "LD" || !empty(XLD)
>>> +.if ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
>>> +
>>> +_ld_version!=  ${${ld}} --version 2>/dev/null | head -n 1 || echo none
>>
>> This line gave one of my machines a bit of gas with the error:
>>
>> sh: head: not found
>> make[2]: "/opt/src/svn-current/share/mk/bsd.linker.mk" line 42: Unable to 
>> determine linker type from LD=ld
>> *** Error code 1
>>
>> Specifying the full pathname for head resolves the isssue.
> 
> Or better yet, use include head in the build tools (or use sed or awk).
> 
> 

Good point, but r320249 should remove the head(1) call entirely during
installworld. Can you try again?


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r320250 - head/share/mk

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 22:53:10 2017
New Revision: 320250
URL: https://svnweb.freebsd.org/changeset/base/320250

Log:
  Provide proper values for X_LINKER_TYPE/VERSION when XLD == LD.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.linker.mk

Modified: head/share/mk/bsd.linker.mk
==
--- head/share/mk/bsd.linker.mk Thu Jun 22 22:53:07 2017(r320249)
+++ head/share/mk/bsd.linker.mk Thu Jun 22 22:53:10 2017(r320250)
@@ -60,6 +60,10 @@ ${X_}LINKER_VERSION!=echo "${_v:M[1-9].[0-9]*}" | \
 .undef _ld_version
 .undef _v
 .endif
+.else
+# Use LD's values
+X_LINKER_TYPE= ${LINKER_TYPE}
+X_LINKER_VERSION=  ${LINKER_VERSION}
 .endif # ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
 
 # Export the values so sub-makes don't have to look them up again, using the
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320249 - head/share/mk

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 22:53:07 2017
New Revision: 320249
URL: https://svnweb.freebsd.org/changeset/base/320249

Log:
  Don't overwrite already-set LINKER_VERSION/LINKER_TYPE.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.linker.mk

Modified: head/share/mk/bsd.linker.mk
==
--- head/share/mk/bsd.linker.mk Thu Jun 22 21:22:12 2017(r320248)
+++ head/share/mk/bsd.linker.mk Thu Jun 22 22:53:07 2017(r320249)
@@ -41,7 +41,7 @@ ${var}=   ${${var}.${${X_}_ld_hash}}
 .endif
 
 .if ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
-
+.if !defined(${X_}LINKER_TYPE) || !defined(${X_}LINKER_VERSION)
 _ld_version!=  ${${ld}} --version 2>/dev/null | head -n 1 || echo none
 .if ${_ld_version} == "none"
 .error Unable to determine linker type from ${ld}=${${ld}}
@@ -59,6 +59,7 @@ ${X_}LINKER_VERSION!= echo "${_v:M[1-9].[0-9]*}" | \
  awk -F. '{print $$1 * 1 + $$2 * 100 + $$3;}'
 .undef _ld_version
 .undef _v
+.endif
 .endif # ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
 
 # Export the values so sub-makes don't have to look them up again, using the
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r320248 - head/share/mk

2017-06-22 Thread Bryan Drewery
On 6/22/2017 2:44 PM, O. Hartmann wrote:
> Am Thu, 22 Jun 2017 21:22:12 + (UTC)
> Bryan Drewery <bdrew...@freebsd.org> schrieb:
> 
>> Author: bdrewery
>> Date: Thu Jun 22 21:22:12 2017
>> New Revision: 320248
>> URL: https://svnweb.freebsd.org/changeset/base/320248
>>
>> Log:
>>   LINKER_VERSION: Support external binutils.
>>   
>>   The ports binutils stores the version in the 5th word so just look for
>>   a version using a pattern instead.
>>   
>>   Reported by:   rpokala
>>   MFC after: 2 weeks
>>   Sponsored by:  Dell EMC Isilon
>>
>> Modified:
>>   head/share/mk/bsd.linker.mk
>>
>> Modified: head/share/mk/bsd.linker.mk
>> ==
>> --- head/share/mk/bsd.linker.mk  Thu Jun 22 21:03:30 2017
>> (r320247)
>> +++ head/share/mk/bsd.linker.mk  Thu Jun 22 21:22:12 2017
>> (r320248)
>> @@ -48,7 +48,7 @@ _ld_version!=  ${${ld}} --version 2>/dev/null | head -n
>>  .endif
>>  .if ${_ld_version:[1..2]} == "GNU ld"
>>  ${X_}LINKER_TYPE=   binutils
>> -_v= ${_ld_version:[3]}
>> +_v= ${_ld_version:M[1-9].[0-9]*:[1]}
>>  .elif ${_ld_version:[1]} == "LLD"
>>  ${X_}LINKER_TYPE=   lld
>>  _v= ${_ld_version:[2]}
>> ___
>> svn-src-h...@freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/svn-src-head
>> To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
> 
> make installworld:
> 
> 
> [...]
> --- installworld ---
> mkdir -p /tmp/install.miEfyZyL
> progs=$(for prog in [ awk cap_mkdb cat chflags chmod chown cmp cp  date echo 
> egrep find
> grep id install   ln make mkdir mtree mv pwd_mkdb  rm sed services_mkdb sh 
> strip sysctl
> test true uname wc zic tzsetup   makewhatis; do  if progpath=`which $prog`; 
> then  echo
> $progpath;  else  echo "Required tool $prog not found in PATH." >&2;  exit 1; 
>  fi;
> done);  libs=$(ldd -f "%o %p\n" -f "%o %p\n" $progs 2>/dev/null | sort -u |  
> while read
> line; do  $line;  if [ "$2 $3" != "not found" ]; then  echo $2;  else  echo 
> "Required
> library $1 not found." >&2;  exit 1;  fi;  done);  cp $libs $progs 
> /tmp/install.miEfyZyL
> cp -R ${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.miEfyZyL/locale cd 
> /usr/src;
> COMPILER_VERSION=4  COMPILER_FEATURES=c++11  COMPILER_TYPE=clang
> COMPILER_FREEBSD_VERSION=126 MAKEOBJDIRPREFIX=/usr/obj  MACHINE_ARCH=amd64
> MACHINE=amd64  CPUTYPE=native CC="cc -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin" CXX="c++  
> -target
> x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
> -B/usr/obj/usr/src/tmp/usr/bin"  CPP="cpp -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin"  AS="as" 
> AR="ar" LD="ld"
> LLVM_LINK=""  NM=nm OBJCOPY="objcopy"  RANLIB=ranlib STRINGS=  SIZE="size"
> PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/tmp/install.miEfyZyL
> LD_LIBRARY_PATH=/tmp/install.miEfyZyL  
> PATH_LOCALE=/tmp/install.miEfyZyL/locale make -f
> Makefile.inc1__MAKE_SHELL=/tmp/install.miEfyZyL/sh reinstall;
> COMPILER_VERSION=4  COMPILER_FEATURES=c++11  COMPILER_TYPE=clang
> COMPILER_FREEBSD_VERSION=126 MAKEOBJDIRPREFIX=/usr/obj  MACHINE_ARCH=amd64
> MACHINE=amd64  CPUTYPE=native CC="cc -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin" CXX="c++  
> -target
> x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
> -B/usr/obj/usr/src/tmp/usr/bin"  CPP="cpp -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin"  AS="as" 
> AR="ar" LD="ld"
> LLVM_LINK=""  NM=nm OBJCOPY="objcopy"  RANLIB=ranlib STRINGS=  SIZE="size"
> PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/tmp/install.miEfyZyL
> LD_LIBRARY_PATH=/tmp/install.miEfyZyL  
> PATH_LOCALE=/tmp/install.miEfyZyL/locale rm
> -rf /tmp/install.miEfyZyL sh: head: not found make[2]: 
> "/usr/src/share/mk/bsd.linker.mk"
> line 41: Unable to determine linker type from LD=ld *** [installworld] Error 
> code 1
> 
> 

r320249 fixes it. No need to do another buildworld.

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r320248 - head/share/mk

2017-06-22 Thread Bryan Drewery
On 6/22/2017 2:44 PM, O. Hartmann wrote:
> Am Thu, 22 Jun 2017 21:22:12 + (UTC)
> Bryan Drewery <bdrew...@freebsd.org> schrieb:
> 
>> Author: bdrewery
>> Date: Thu Jun 22 21:22:12 2017
>> New Revision: 320248
>> URL: https://svnweb.freebsd.org/changeset/base/320248
>>
>> Log:
>>   LINKER_VERSION: Support external binutils.
>>   
>>   The ports binutils stores the version in the 5th word so just look for
>>   a version using a pattern instead.
>>   
>>   Reported by:   rpokala
>>   MFC after: 2 weeks
>>   Sponsored by:  Dell EMC Isilon
>>
>> Modified:
>>   head/share/mk/bsd.linker.mk
>>
>> Modified: head/share/mk/bsd.linker.mk
>> ==
>> --- head/share/mk/bsd.linker.mk  Thu Jun 22 21:03:30 2017
>> (r320247)
>> +++ head/share/mk/bsd.linker.mk  Thu Jun 22 21:22:12 2017
>> (r320248)
>> @@ -48,7 +48,7 @@ _ld_version!=  ${${ld}} --version 2>/dev/null | head -n
>>  .endif
>>  .if ${_ld_version:[1..2]} == "GNU ld"
>>  ${X_}LINKER_TYPE=   binutils
>> -_v= ${_ld_version:[3]}
>> +_v= ${_ld_version:M[1-9].[0-9]*:[1]}
>>  .elif ${_ld_version:[1]} == "LLD"
>>  ${X_}LINKER_TYPE=   lld
>>  _v= ${_ld_version:[2]}
>> ___
>> svn-src-h...@freebsd.org mailing list
>> https://lists.freebsd.org/mailman/listinfo/svn-src-head
>> To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"
> 
> make installworld:
> 
> 
> [...]
> --- installworld ---
> mkdir -p /tmp/install.miEfyZyL
> progs=$(for prog in [ awk cap_mkdb cat chflags chmod chown cmp cp  date echo 
> egrep find
> grep id install   ln make mkdir mtree mv pwd_mkdb  rm sed services_mkdb sh 
> strip sysctl
> test true uname wc zic tzsetup   makewhatis; do  if progpath=`which $prog`; 
> then  echo
> $progpath;  else  echo "Required tool $prog not found in PATH." >&2;  exit 1; 
>  fi;
> done);  libs=$(ldd -f "%o %p\n" -f "%o %p\n" $progs 2>/dev/null | sort -u |  
> while read
> line; do  $line;  if [ "$2 $3" != "not found" ]; then  echo $2;  else  echo 
> "Required
> library $1 not found." >&2;  exit 1;  fi;  done);  cp $libs $progs 
> /tmp/install.miEfyZyL
> cp -R ${PATH_LOCALE:-"/usr/share/locale"} /tmp/install.miEfyZyL/locale cd 
> /usr/src;
> COMPILER_VERSION=4  COMPILER_FEATURES=c++11  COMPILER_TYPE=clang
> COMPILER_FREEBSD_VERSION=126 MAKEOBJDIRPREFIX=/usr/obj  MACHINE_ARCH=amd64
> MACHINE=amd64  CPUTYPE=native CC="cc -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin" CXX="c++  
> -target
> x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
> -B/usr/obj/usr/src/tmp/usr/bin"  CPP="cpp -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin"  AS="as" 
> AR="ar" LD="ld"
> LLVM_LINK=""  NM=nm OBJCOPY="objcopy"  RANLIB=ranlib STRINGS=  SIZE="size"
> PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/tmp/install.miEfyZyL
> LD_LIBRARY_PATH=/tmp/install.miEfyZyL  
> PATH_LOCALE=/tmp/install.miEfyZyL/locale make -f
> Makefile.inc1__MAKE_SHELL=/tmp/install.miEfyZyL/sh reinstall;
> COMPILER_VERSION=4  COMPILER_FEATURES=c++11  COMPILER_TYPE=clang
> COMPILER_FREEBSD_VERSION=126 MAKEOBJDIRPREFIX=/usr/obj  MACHINE_ARCH=amd64
> MACHINE=amd64  CPUTYPE=native CC="cc -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin" CXX="c++  
> -target
> x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/usr/src/tmp
> -B/usr/obj/usr/src/tmp/usr/bin"  CPP="cpp -target x86_64-unknown-freebsd12.0
> --sysroot=/usr/obj/usr/src/tmp -B/usr/obj/usr/src/tmp/usr/bin"  AS="as" 
> AR="ar" LD="ld"
> LLVM_LINK=""  NM=nm OBJCOPY="objcopy"  RANLIB=ranlib STRINGS=  SIZE="size"
> PATH=/usr/obj/usr/src/tmp/legacy/usr/sbin:/usr/obj/usr/src/tmp/legacy/usr/bin:/usr/obj/usr/src/tmp/legacy/bin:/usr/obj/usr/src/tmp/usr/sbin:/usr/obj/usr/src/tmp/usr/bin:/tmp/install.miEfyZyL
> LD_LIBRARY_PATH=/tmp/install.miEfyZyL  
> PATH_LOCALE=/tmp/install.miEfyZyL/locale rm
> -rf /tmp/install.miEfyZyL sh: head: not found make[2]: 
> "/usr/src/share/mk/bsd.linker.mk"
> line 41: Unable to determine linker type from LD=ld *** [installworld] Error 
> code 1
> 
> 

r320247 should have prevented this.  Did you do a full buildworld after
SVN up? Which revision are you actually on?

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r320248 - head/share/mk

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 21:22:12 2017
New Revision: 320248
URL: https://svnweb.freebsd.org/changeset/base/320248

Log:
  LINKER_VERSION: Support external binutils.
  
  The ports binutils stores the version in the 5th word so just look for
  a version using a pattern instead.
  
  Reported by:  rpokala
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.linker.mk

Modified: head/share/mk/bsd.linker.mk
==
--- head/share/mk/bsd.linker.mk Thu Jun 22 21:03:30 2017(r320247)
+++ head/share/mk/bsd.linker.mk Thu Jun 22 21:22:12 2017(r320248)
@@ -48,7 +48,7 @@ _ld_version!= ${${ld}} --version 2>/dev/null | head -n
 .endif
 .if ${_ld_version:[1..2]} == "GNU ld"
 ${X_}LINKER_TYPE=  binutils
-_v=${_ld_version:[3]}
+_v=${_ld_version:M[1-9].[0-9]*:[1]}
 .elif ${_ld_version:[1]} == "LLD"
 ${X_}LINKER_TYPE=  lld
 _v=${_ld_version:[2]}
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320245 - head/share/mk

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 21:03:24 2017
New Revision: 320245
URL: https://svnweb.freebsd.org/changeset/base/320245

Log:
  Support XLD for setting X_LINKER_TYPE and X_LINKER_VERSION.
  
  This is similar to r300350 for bsd.compiler.mk.
  
  MFC after:2 weeks
  Reviewed by:  emaste
  Sponsored by: Dell EMC Isilon
  Differential Revision:https://reviews.freebsd.org/D11309

Modified:
  head/share/mk/bsd.linker.mk

Modified: head/share/mk/bsd.linker.mk
==
--- head/share/mk/bsd.linker.mk Thu Jun 22 21:03:20 2017(r320244)
+++ head/share/mk/bsd.linker.mk Thu Jun 22 21:03:24 2017(r320245)
@@ -9,25 +9,39 @@
 # major * 1 + minor * 100 + tiny
 # It too can be overridden on the command line.
 #
+# These variables with an X_ prefix will also be provided if XLD is set.
+#
 # This file may be included multiple times, but only has effect the first time.
 #
 
 .if !target()
 :
 
-_ld_version!=  ${LD} --version 2>/dev/null | head -n 1 || echo none
+.for ld X_ in LD $${_empty_var_} XLD X_
+.if ${ld} == "LD" || !empty(XLD)
+.if ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
+
+_ld_version!=  ${${ld}} --version 2>/dev/null | head -n 1 || echo none
 .if ${_ld_version} == "none"
-.error Unable to determine linker type from LD=${LD}
+.error Unable to determine linker type from ${ld}=${${ld}}
 .endif
 .if ${_ld_version:[1..2]} == "GNU ld"
-LINKER_TYPE=   binutils
+${X_}LINKER_TYPE=  binutils
 _v=${_ld_version:[3]}
 .elif ${_ld_version:[1]} == "LLD"
-LINKER_TYPE=   lld
+${X_}LINKER_TYPE=  lld
 _v=${_ld_version:[2]}
 .else
-.error Unknown linker from LD=${LD}: ${_ld_version}
+.error Unknown linker from ${ld}=${${ld}}: ${_ld_version}
 .endif
-LINKER_VERSION!=echo "${_v:M[1-9].[0-9]*}" | awk -F. '{print $$1 * 1 + $$2 
* 100 + $$3;}'
+${X_}LINKER_VERSION!=  echo "${_v:M[1-9].[0-9]*}" | \
+ awk -F. '{print $$1 * 1 + $$2 * 100 + $$3;}'
+.undef _ld_version
+.undef _v
+.endif # ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
+
+.endif # ${ld} == "LD" || !empty(XLD)
+.endfor# .for ld in LD XLD
+
 
 .endif # !target()
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320244 - head/share/mk

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 21:03:20 2017
New Revision: 320244
URL: https://svnweb.freebsd.org/changeset/base/320244

Log:
  Add basic bsd.linker.mk auto included from bsd.compiler.mk.
  
  This will provide LINKER_TYPE and LINKER_VERSION.
  
  MFC after:2 weeks
  Reviewed by:  emaste
  Sponsored by: Dell EMC Isilon
  Differential Revision:https://reviews.freebsd.org/D11308

Added:
  head/share/mk/bsd.linker.mk   (contents, props changed)
Modified:
  head/share/mk/Makefile
  head/share/mk/bsd.compiler.mk

Modified: head/share/mk/Makefile
==
--- head/share/mk/Makefile  Thu Jun 22 20:32:23 2017(r320243)
+++ head/share/mk/Makefile  Thu Jun 22 21:03:20 2017(r320244)
@@ -33,6 +33,7 @@ FILES=\
bsd.kmod.mk \
bsd.lib.mk \
bsd.libnames.mk \
+   bsd.linker.mk \
bsd.links.mk \
bsd.man.mk \
bsd.mkopt.mk \

Modified: head/share/mk/bsd.compiler.mk
==
--- head/share/mk/bsd.compiler.mk   Thu Jun 22 20:32:23 2017
(r320243)
+++ head/share/mk/bsd.compiler.mk   Thu Jun 22 21:03:20 2017
(r320244)
@@ -194,4 +194,5 @@ ${var}.${${X_}_cc_hash}:=   ${${var}}
 .endif # ${cc} == "CC" || !empty(XCC)
 .endfor# .for cc in CC XCC
 
+.include 
 .endif # !target()

Added: head/share/mk/bsd.linker.mk
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/share/mk/bsd.linker.mk Thu Jun 22 21:03:20 2017(r320244)
@@ -0,0 +1,33 @@
+# $FreeBSD$
+
+# Setup variables for the linker.
+#
+# LINKER_TYPE is the major type of linker. Currently binutils and lld support
+# automatic detection.
+#
+# LINKER_VERSION is a numeric constant equal to:
+# major * 1 + minor * 100 + tiny
+# It too can be overridden on the command line.
+#
+# This file may be included multiple times, but only has effect the first time.
+#
+
+.if !target()
+:
+
+_ld_version!=  ${LD} --version 2>/dev/null | head -n 1 || echo none
+.if ${_ld_version} == "none"
+.error Unable to determine linker type from LD=${LD}
+.endif
+.if ${_ld_version:[1..2]} == "GNU ld"
+LINKER_TYPE=   binutils
+_v=${_ld_version:[3]}
+.elif ${_ld_version:[1]} == "LLD"
+LINKER_TYPE=   lld
+_v=${_ld_version:[2]}
+.else
+.error Unknown linker from LD=${LD}: ${_ld_version}
+.endif
+LINKER_VERSION!=echo "${_v:M[1-9].[0-9]*}" | awk -F. '{print $$1 * 1 + $$2 
* 100 + $$3;}'
+
+.endif # !target()
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320247 - head

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 21:03:30 2017
New Revision: 320247
URL: https://svnweb.freebsd.org/changeset/base/320247

Log:
  Pass along LINKER_* vars during installworld and show in test-system-compiler.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Thu Jun 22 21:03:27 2017(r320246)
+++ head/Makefile.inc1  Thu Jun 22 21:03:30 2017(r320247)
@@ -149,7 +149,8 @@ TEST_SYSTEM_COMPILER_VARS= \
WANT_COMPILER_TYPE WANT_COMPILER_VERSION WANT_COMPILER_VERSION_FILE \
WANT_COMPILER_FREEBSD_VERSION WANT_COMPILER_FREEBSD_VERSION_FILE \
CC COMPILER_TYPE COMPILER_FEATURES COMPILER_VERSION \
-   COMPILER_FREEBSD_VERSION
+   COMPILER_FREEBSD_VERSION \
+   LINKER_TYPE LINKER_VERSION
 test-system-compiler: .PHONY
 .for v in ${TEST_SYSTEM_COMPILER_VARS}
${_+_}@printf "%-35s= %s\n" "${v}" "${${v}}"
@@ -181,7 +182,9 @@ CROSSENV+=  COMPILER_VERSION=${X_COMPILER_VERSION} \
 _COMPILER_METADATA_VARS=   COMPILER_VERSION \
COMPILER_TYPE \
COMPILER_FEATURES \
-   COMPILER_FREEBSD_VERSION
+   COMPILER_FREEBSD_VERSION \
+   LINKER_VERSION \
+   LINKER_TYPE
 compiler-metadata.mk: .PHONY .META
@: > ${.TARGET}
@echo ".info Using cached compiler metadata from build at $$(hostname) 
on $$(date)" \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320246 - head/share/mk

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 21:03:27 2017
New Revision: 320246
URL: https://svnweb.freebsd.org/changeset/base/320246

Log:
  Support cached linker values in environment.
  
  This is similar to r289659 for bsd.compiler.mk.
  
  MFC after:2 weeks
  Reviewed by:  emaste
  Sponsored by: Dell EMC Isilon
  Differential Revision:https://reviews.freebsd.org/D11310

Modified:
  head/share/mk/bsd.linker.mk

Modified: head/share/mk/bsd.linker.mk
==
--- head/share/mk/bsd.linker.mk Thu Jun 22 21:03:24 2017(r320245)
+++ head/share/mk/bsd.linker.mk Thu Jun 22 21:03:27 2017(r320246)
@@ -19,6 +19,27 @@ :
 
 .for ld X_ in LD $${_empty_var_} XLD X_
 .if ${ld} == "LD" || !empty(XLD)
+# Try to import LINKER_TYPE and LINKER_VERSION from parent make.
+# The value is only used/exported for the same environment that impacts
+# LD and LINKER_* settings here.
+_exported_vars=${X_}LINKER_TYPE ${X_}LINKER_VERSION
+${X_}_ld_hash= ${${ld}}${MACHINE}${PATH}
+${X_}_ld_hash:=${${X_}_ld_hash:hash}
+# Only import if none of the vars are set somehow else.
+_can_export=   yes
+.for var in ${_exported_vars}
+.if defined(${var})
+_can_export=   no
+.endif
+.endfor
+.if ${_can_export} == yes
+.for var in ${_exported_vars}
+.if defined(${var}.${${X_}_ld_hash})
+${var}=${${var}.${${X_}_ld_hash}}
+.endif
+.endfor
+.endif
+
 .if ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
 
 _ld_version!=  ${${ld}} --version 2>/dev/null | head -n 1 || echo none
@@ -39,6 +60,14 @@ ${X_}LINKER_VERSION!=echo "${_v:M[1-9].[0-9]*}" | \
 .undef _ld_version
 .undef _v
 .endif # ${ld} == "LD" || (${ld} == "XLD" && ${XLD} != ${LD})
+
+# Export the values so sub-makes don't have to look them up again, using the
+# hash key computed above.
+.for var in ${_exported_vars}
+${var}.${${X_}_ld_hash}:=  ${${var}}
+.export-env ${var}.${${X_}_ld_hash}
+.undef ${var}.${${X_}_ld_hash}
+.endfor
 
 .endif # ${ld} == "LD" || !empty(XLD)
 .endfor# .for ld in LD XLD
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320243 - head/share/mk

2017-06-22 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 20:32:23 2017
New Revision: 320243
URL: https://svnweb.freebsd.org/changeset/base/320243

Log:
  Fix spelling error.
  
  Reported by:  arc
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.compiler.mk

Modified: head/share/mk/bsd.compiler.mk
==
--- head/share/mk/bsd.compiler.mk   Thu Jun 22 19:25:17 2017
(r320242)
+++ head/share/mk/bsd.compiler.mk   Thu Jun 22 20:32:23 2017
(r320243)
@@ -9,7 +9,7 @@
 #
 # COMPILER_VERSION is a numeric constant equal to:
 # major * 1 + minor * 100 + tiny
-# It too can be overriden on the command line. When testing it, be sure to
+# It too can be overridden on the command line. When testing it, be sure to
 # make sure that you are limiting the test to a specific compiler. Testing
 # against 30300 for gcc likely isn't  what you wanted (since versions of gcc
 # prior to 4.2 likely have no prayer of working).
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320220 - in head: share/mk sys/conf

2017-06-21 Thread Bryan Drewery
Author: bdrewery
Date: Thu Jun 22 05:34:41 2017
New Revision: 320220
URL: https://svnweb.freebsd.org/changeset/base/320220

Log:
  Rework logic for skipping .depend/.meta file read/stat/writes.
  
  - Rename _SKIP_READ_DEPEND to _SKIP_DEPEND since it also avoids writing.
  - This now uses .NOMETA to avoid reading any .meta files related to
DEPENDOBJS.  Objects not in OBJS/DEPENDOBJS may still have their .meta
files read in if they are in the dependency graph.
  - This also avoids statting .meta and .depend files in the META_MODE +
-DNO_FILEMON case.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.dep.mk
  head/sys/conf/kern.post.mk

Modified: head/share/mk/bsd.dep.mk
==
--- head/share/mk/bsd.dep.mkThu Jun 22 05:30:27 2017(r320219)
+++ head/share/mk/bsd.dep.mkThu Jun 22 05:34:41 2017(r320220)
@@ -86,10 +86,13 @@ _meta_filemon=  1
 # Skip reading .depend when not needed to speed up tree-walks and simple
 # lookups.  See _SKIP_BUILD logic in bsd.init.mk for more details.
 # Also skip generating or including .depend.* files if in meta+filemon mode
-# since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used.
-.if defined(_SKIP_BUILD) || defined(_meta_filemon)
-_SKIP_READ_DEPEND= 1
+# since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used
+# for _meta_filemon but not for _SKIP_DEPEND.
+.if defined(_SKIP_BUILD)
+_SKIP_DEPEND=  1
+.endif
 .if ${MK_DIRDEPS_BUILD} == "no"
+.if defined(_SKIP_DEPEND) || defined(_meta_filemon)
 .MAKE.DEPENDFILE=  /dev/null
 .endif
 .endif
@@ -180,6 +183,15 @@ DEPENDSRCS=${SRCS:M*.[cSC]} ${SRCS:M*.cxx} 
${SRCS:M*.
 DEPENDOBJS+=   ${DEPENDSRCS:R:S,$,.o,}
 .endif
 DEPENDFILES_OBJS=  ${DEPENDOBJS:O:u:${DEPEND_FILTER}:C/^/${DEPENDFILE}./}
+.if defined(_SKIP_DEPEND)
+# Don't bother statting any .meta files for .depend*
+${DEPENDOBJS}: .NOMETA
+${DEPENDFILE}: .NOMETA
+# Unset these to avoid looping/statting on them later.
+.undef DEPENDSRCS
+.undef DEPENDOBJS
+.undef DEPENDFILES_OBJS
+.endif # defined(_SKIP_DEPEND)
 DEPEND_CFLAGS+=-MD ${DEPEND_MP} 
-MF${DEPENDFILE}.${.TARGET:${DEPEND_FILTER}}
 DEPEND_CFLAGS+=-MT${.TARGET}
 .if !defined(_meta_filemon)
@@ -191,7 +203,6 @@ CFLAGS+=${${DEPEND_CFLAGS_CONDITION}:?${DEPEND_CFLAGS
 .else
 CFLAGS+=   ${DEPEND_CFLAGS}
 .endif
-.if !defined(_SKIP_READ_DEPEND)
 .for __depend_obj in ${DEPENDFILES_OBJS}
 .if ${MAKE_VERSION} < 20160220
 .sinclude "${.OBJDIR}/${__depend_obj}"
@@ -199,7 +210,6 @@ CFLAGS+=${DEPEND_CFLAGS}
 .dinclude "${.OBJDIR}/${__depend_obj}"
 .endif
 .endfor
-.endif # !defined(_SKIP_READ_DEPEND)
 .endif # !defined(_meta_filemon)
 .endif # defined(SRCS)
 
@@ -266,11 +276,13 @@ DPSRCS+= ${SRCS}
 # targets are kept as they be used for generating something.  The target is
 # kept to allow 'make depend' to generate files.
 ${DEPENDFILE}: ${DPSRCS}
+.if !defined(_SKIP_DEPEND)
 .if exists(${.OBJDIR}/${DEPENDFILE}) || \
 ((commands(beforedepend) || \
 (!defined(_meta_filemon) && commands(_EXTRADEPEND)) || \
 commands(afterdepend)) && !empty(.MAKE.MODE:Mmeta))
rm -f ${DEPENDFILE}
+.endif
 .endif
 .if !defined(_meta_filemon) && target(_EXTRADEPEND)
 _EXTRADEPEND: .USE

Modified: head/sys/conf/kern.post.mk
==
--- head/sys/conf/kern.post.mk  Thu Jun 22 05:30:27 2017(r320219)
+++ head/sys/conf/kern.post.mk  Thu Jun 22 05:34:41 2017(r320220)
@@ -199,12 +199,15 @@ _meta_filemon=1
 # Skip reading .depend when not needed to speed up tree-walks and simple
 # lookups.  For install, only do this if no other targets are specified.
 # Also skip generating or including .depend.* files if in meta+filemon mode
-# since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used.
+# since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used
+# for _meta_filemon but not for _SKIP_DEPEND.
 .if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(*obj) || \
 ${.TARGETS:M*clean*} == ${.TARGETS} || \
 ${.TARGETS:M*install*} == ${.TARGETS} || \
 defined(_meta_filemon)
-_SKIP_READ_DEPEND= 1
+_SKIP_DEPEND=  1
+.endif
+.if defined(_SKIP_DEPEND) || defined(_meta_filemon)
 .MAKE.DEPENDFILE=  /dev/null
 .endif
 
@@ -218,6 +221,15 @@ DEPENDFILES_OBJS=  ${DEPENDOBJS:O:u:C/^/.depend./}
 .if ${MAKE_VERSION} < 20160220
 DEPEND_MP?=-MP
 .endif
+.if defined(_SKIP_DEPEND)
+# Don't bother reading any .meta files
+${DEPENDOBJS}: .NOMETA
+.depend:   .NOMETA
+# Unset these to avoid looping/statting on them later.
+.undef DEPENDSRCS
+.undef DEPENDOBJS
+.undef DEPENDFILES_OBJS
+.endif # defined(_SKIP_DEPEND)
 DEPEND_CFLAGS+=-MD ${DEPEND_MP} -MF.depend.${.TARGET}
 DEPEND_CFLAGS+=-MT${.TARGET}
 .if !defined(_meta_filemon)
@@ -229,7 +241,6 @@ CFLAGS+=

svn commit: r320207 - head/lib/libsysdecode

2017-06-21 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jun 21 23:28:24 2017
New Revision: 320207
URL: https://svnweb.freebsd.org/changeset/base/320207

Log:
  Tweak r320206: Still create the TABLE but not the .depend entry for missing 
headers.
  
  X-MFC-With:   r320206
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/lib/libsysdecode/mktables

Modified: head/lib/libsysdecode/mktables
==
--- head/lib/libsysdecode/mktables  Wed Jun 21 23:01:18 2017
(r320206)
+++ head/lib/libsysdecode/mktables  Wed Jun 21 23:28:24 2017
(r320207)
@@ -65,18 +65,19 @@ gen_table()
else
filter="egrep -v"
fi
-   [ -e "${include_dir}/${file}" ] || return 0
-   all_headers="${all_headers:+${all_headers} }${file}"
cat <<_EOF_
 TABLE_START(${name})
 _EOF_
-   egrep "^#[[:space:]]*define[[:space:]]+"${grep}"[[:space:]]*" \
-   $include_dir/$file | ${filter} ${excl} | \
-   awk '{ for (i = 1; i <= NF; i++) \
-   if ($i ~ /define/) \
-   break; \
-   ++i; \
-   printf "TABLE_ENTRY(%s)\n", $i }'
+   if [ -e "${include_dir}/${file}" ]; then
+   all_headers="${all_headers:+${all_headers} }${file}"
+   egrep "^#[[:space:]]*define[[:space:]]+"${grep}"[[:space:]]*" \
+   $include_dir/$file | ${filter} ${excl} | \
+   awk '{ for (i = 1; i <= NF; i++) \
+   if ($i ~ /define/) \
+   break; \
+   ++i; \
+   printf "TABLE_ENTRY(%s)\n", $i }'
+   fi
 cat <<_EOF_
 TABLE_END
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320206 - head/lib/libsysdecode

2017-06-21 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jun 21 23:01:18 2017
New Revision: 320206
URL: https://svnweb.freebsd.org/changeset/base/320206

Log:
  Follow-up r308602: Don't add missing headers to .depend.tables.h.
  
  This also avoids an error from egrep when a header is missing.  This can 
happen
  with something like WITHOUT_BLUETOOTH set when searching for
  $include_dir/netgraph/bluetooth/include/ng_btsocket.h.  The warning was
  not an error (from set -e) due to being on the left side of a pipe.  Now the
  all_headers list is only filled with existing headers.
  
  Reviewed by:  ngie
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/lib/libsysdecode/mktables

Modified: head/lib/libsysdecode/mktables
==
--- head/lib/libsysdecode/mktables  Wed Jun 21 20:10:58 2017
(r320205)
+++ head/lib/libsysdecode/mktables  Wed Jun 21 23:01:18 2017
(r320206)
@@ -65,6 +65,7 @@ gen_table()
else
filter="egrep -v"
fi
+   [ -e "${include_dir}/${file}" ] || return 0
all_headers="${all_headers:+${all_headers} }${file}"
cat <<_EOF_
 TABLE_START(${name})
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320205 - head/share/mk

2017-06-21 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jun 21 20:10:58 2017
New Revision: 320205
URL: https://svnweb.freebsd.org/changeset/base/320205

Log:
  Remove logic for setting .MAKE.DEPENDFILE=/dev/null already covered by 
_SKIP_BUILD.
  
  _SKIP_BUILD is defined in bsd.init.mk.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.dep.mk

Modified: head/share/mk/bsd.dep.mk
==
--- head/share/mk/bsd.dep.mkWed Jun 21 19:55:26 2017(r320204)
+++ head/share/mk/bsd.dep.mkWed Jun 21 20:10:58 2017(r320205)
@@ -89,8 +89,7 @@ _meta_filemon=1
 # since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used.
 .if defined(_SKIP_BUILD) || defined(_meta_filemon)
 _SKIP_READ_DEPEND= 1
-.if ${MK_DIRDEPS_BUILD} == "no" || make(analyze) || make(print-dir) || \
-make(obj) || (!make(all) && (make(clean*) || make(destroy*)))
+.if ${MK_DIRDEPS_BUILD} == "no"
 .MAKE.DEPENDFILE=  /dev/null
 .endif
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320204 - head/sys/conf

2017-06-21 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jun 21 19:55:26 2017
New Revision: 320204
URL: https://svnweb.freebsd.org/changeset/base/320204

Log:
  Fix various 'make *clean *all *install' combinations.
  
  This follows commits like r320174 in share/mk/bsd.dep.mk.
  
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/sys/conf/kern.post.mk

Modified: head/sys/conf/kern.post.mk
==
--- head/sys/conf/kern.post.mk  Wed Jun 21 18:56:53 2017(r320203)
+++ head/sys/conf/kern.post.mk  Wed Jun 21 19:55:26 2017(r320204)
@@ -200,10 +200,10 @@ _meta_filemon=1
 # lookups.  For install, only do this if no other targets are specified.
 # Also skip generating or including .depend.* files if in meta+filemon mode
 # since it will track dependencies itself.  OBJS_DEPEND_GUESS is still used.
-.if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(obj) || make(clean*) || \
+.if !empty(.MAKEFLAGS:M-V${_V_READ_DEPEND}) || make(*obj) || \
+${.TARGETS:M*clean*} == ${.TARGETS} || \
 ${.TARGETS:M*install*} == ${.TARGETS} || \
-make(kernel-obj) || make(kernel-clean*) || \
-make(kernel-install*) || defined(_meta_filemon)
+defined(_meta_filemon)
 _SKIP_READ_DEPEND= 1
 .MAKE.DEPENDFILE=  /dev/null
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320203 - head/share/mk

2017-06-21 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jun 21 18:56:53 2017
New Revision: 320203
URL: https://svnweb.freebsd.org/changeset/base/320203

Log:
  Similar to r296013 for NO_ROOT, force SUBDIR_PARALLEL for buildworld WORLDTMP 
staging.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.subdir.mk

Modified: head/share/mk/bsd.subdir.mk
==
--- head/share/mk/bsd.subdir.mk Wed Jun 21 18:54:28 2017(r320202)
+++ head/share/mk/bsd.subdir.mk Wed Jun 21 18:56:53 2017(r320203)
@@ -53,7 +53,7 @@ STANDALONE_SUBDIR_TARGETS+= \
maninstall manlint obj objlink
 
 # It is safe to install in parallel when staging.
-.if defined(NO_ROOT)
+.if defined(NO_ROOT) || !empty(SYSROOT)
 STANDALONE_SUBDIR_TARGETS+= realinstall
 .endif
 
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r320172 - head/bin/ln

2017-06-21 Thread Bryan Drewery
On 6/20/2017 1:46 PM, Ngie Cooper wrote:
> Author: ngie
> Date: Tue Jun 20 20:46:08 2017
> New Revision: 320172
> URL: https://svnweb.freebsd.org/changeset/base/320172
> 
> Log:
>   ln(1): fix -F behavior
>   
>   When '-F' option is used, the target directory needs to be unlinked.
>   Currently, the modified target ("target/source") is being unlinked, and
>   since it doesn't yet exist, the original target isn't removed.
>   This is fixed by skipping the block where target is modified to
>   "target/source" when '-F' option is set.
>   Hence, a symbolic link (with the same name as of the original target) to
>   the source_file is produced.
>   
=>   Update the test for ln(1) to reflect fix for option '-F'

I don't see a test update here.

>   
>   MFC after:  1 month
>   PR: 219943
>   Differential Revision:  D11167
>   Submitted by:   shivansh
>   Sponsored by:   Google (GSoC 2017)
> 
> Modified:
>   head/bin/ln/ln.c
> 
> Modified: head/bin/ln/ln.c
> ==
> --- head/bin/ln/ln.c  Tue Jun 20 20:34:30 2017(r320171)
> +++ head/bin/ln/ln.c  Tue Jun 20 20:46:08 2017(r320172)
> @@ -245,11 +245,11 @@ linkit(const char *source, const char *target, int isd
>  
>   /*
>* If the target is a directory (and not a symlink if hflag),
> -  * append the source's name.
> +  * append the source's name, unless Fflag is set.
>*/
> - if (isdir ||
> + if (!Fflag && (isdir ||
>   (lstat(target, ) == 0 && S_ISDIR(sb.st_mode)) ||
> - (!hflag && stat(target, ) == 0 && S_ISDIR(sb.st_mode))) {
> + (!hflag && stat(target, ) == 0 && S_ISDIR(sb.st_mode {
>   if (strlcpy(bbuf, source, sizeof(bbuf)) >= sizeof(bbuf) ||
>   (p = basename(bbuf)) == NULL ||
>   snprintf(path, sizeof(path), "%s/%s", target, p) >=
> 


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r320191 - head/share/mk

2017-06-21 Thread Bryan Drewery
Author: bdrewery
Date: Wed Jun 21 17:11:49 2017
New Revision: 320191
URL: https://svnweb.freebsd.org/changeset/base/320191

Log:
  objwarn should be .PHONY.
  
  Otherwise in META_MODE it may create an objwarn.meta if only bsd.obj.mk
  is included;  bsd.sys.mk already had .PHONY: objwarn.
  
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.obj.mk

Modified: head/share/mk/bsd.obj.mk
==
--- head/share/mk/bsd.obj.mkWed Jun 21 14:39:31 2017(r320190)
+++ head/share/mk/bsd.obj.mkWed Jun 21 17:11:49 2017(r320191)
@@ -102,7 +102,7 @@ OBJTOP?= ${.OBJDIR:S,${.CURDIR},,}${SRCTOP}
 # case 2 (using MAKEOBJDIR), don't issue a warning.  Otherwise,
 # issue a warning differentiating between cases 6 and (3 or 4).
 #
-objwarn:
+objwarn: .PHONY
 .if !defined(NO_OBJ) && ${.OBJDIR} != ${CANONICALOBJDIR} && \
 !(defined(MAKEOBJDIRPREFIX) && exists(${CANONICALOBJDIR}/)) && \
 !(defined(MAKEOBJDIR) && exists(${MAKEOBJDIR}/))
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320177 - in head: . targets/pseudo/bootstrap-tools

2017-06-20 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jun 20 22:08:02 2017
New Revision: 320177
URL: https://svnweb.freebsd.org/changeset/base/320177

Log:
  buildworld: Pass which world phase the build is in down to submakes.
  
  This is useful for having directories behave differently depending
  on the phase - such as enabling SUBDIR_PARALLEL or disabling
  redundant building of library directories already done by
  earlier 'make _libraries'.
  
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1
  head/targets/pseudo/bootstrap-tools/Makefile

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Tue Jun 20 21:26:42 2017(r320176)
+++ head/Makefile.inc1  Tue Jun 20 22:08:02 2017(r320177)
@@ -518,6 +518,7 @@ BMAKEENV=   INSTALL="sh ${.CURDIR}/tools/install.sh" \
 # need to keep this in sync with targets/pseudo/bootstrap-tools/Makefile
 BSARGS=DESTDIR= \
BOOTSTRAPPING=${OSRELDATE} \
+   BWPHASE=${.TARGET:C,^_,,} \
SSP_CFLAGS= \
MK_HTML=no NO_LINT=yes MK_MAN=no \
-DNO_PIC MK_PROFILE=no -DNO_SHARED \
@@ -536,6 +537,7 @@ TMAKE=  MAKEOBJDIRPREFIX=${OBJTREE} \
TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
DESTDIR= \
BOOTSTRAPPING=${OSRELDATE} \
+   BWPHASE=${.TARGET:C,^_,,} \
SSP_CFLAGS= \
-DNO_LINT \
-DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \
@@ -689,7 +691,9 @@ NO_META_IGNORE_HOST_HEADERS=1
 host-osreldate.h: # DO NOT ADD /usr/include/osreldate.h here
@cp -f /usr/include/osreldate.h ${.TARGET}
 
-WMAKE= ${WMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 
DESTDIR=${WORLDTMP}
+WMAKE= ${WMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \
+   BWPHASE=${.TARGET:C,^_,,} \
+   DESTDIR=${WORLDTMP}
 
 IMAKEENV=  ${CROSSENV}
 IMAKE= ${IMAKEENV} ${MAKE} -f Makefile.inc1 \

Modified: head/targets/pseudo/bootstrap-tools/Makefile
==
--- head/targets/pseudo/bootstrap-tools/MakefileTue Jun 20 21:26:42 
2017(r320176)
+++ head/targets/pseudo/bootstrap-tools/MakefileTue Jun 20 22:08:02 
2017(r320177)
@@ -35,6 +35,7 @@ OSRELDATE?= 0
 # need to keep this in sync with src/Makefile.inc1 
 BSARGS=DESTDIR= \
BOOTSTRAPPING=${OSRELDATE} \
+   BWPHASE=${.TARGET} \
SSP_CFLAGS= \
MK_HTML=no NO_LINT=yes MK_MAN=no \
-DNO_PIC MK_PROFILE=no -DNO_SHARED \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320174 - head/share/mk

2017-06-20 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jun 20 20:52:06 2017
New Revision: 320174
URL: https://svnweb.freebsd.org/changeset/base/320174

Log:
  Fix 'make clean all' to work again.
  
  This likely broke completely with r308599.
  
  Apply the same fix for 'make destroy' which is a DIRDEPS_BUILD thing.
  
  PR:   219819
  Reported by:  trasz
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.dep.mk
  head/share/mk/bsd.init.mk

Modified: head/share/mk/bsd.dep.mk
==
--- head/share/mk/bsd.dep.mkTue Jun 20 20:50:54 2017(r320173)
+++ head/share/mk/bsd.dep.mkTue Jun 20 20:52:06 2017(r320174)
@@ -90,7 +90,7 @@ _meta_filemon=1
 .if defined(_SKIP_BUILD) || defined(_meta_filemon)
 _SKIP_READ_DEPEND= 1
 .if ${MK_DIRDEPS_BUILD} == "no" || make(analyze) || make(print-dir) || \
-make(obj) || make(clean*) || make(destroy*)
+make(obj) || (!make(all) && (make(clean*) || make(destroy*)))
 .MAKE.DEPENDFILE=  /dev/null
 .endif
 .endif

Modified: head/share/mk/bsd.init.mk
==
--- head/share/mk/bsd.init.mk   Tue Jun 20 20:50:54 2017(r320173)
+++ head/share/mk/bsd.init.mk   Tue Jun 20 20:52:06 2017(r320174)
@@ -50,8 +50,9 @@ $xGRP=${_gid}
 _SKIP_BUILD=   not building at level 0
 .elif !empty(.MAKEFLAGS:M-V${_V_DO_BUILD}) || \
 ${.TARGETS:M*install*} == ${.TARGETS} || \
-make(clean*) || make(obj) || make(analyze) || make(print-dir) || \
-make(destroy*)
+${.TARGETS:Mclean*} == ${.TARGETS} || \
+${.TARGETS:Mdestroy*} == ${.TARGETS} || \
+make(obj) || make(analyze) || make(print-dir)
 # Skip building, but don't show a warning.
 _SKIP_BUILD=
 .endif
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320171 - head/share/mk

2017-06-20 Thread Bryan Drewery
Author: bdrewery
Date: Tue Jun 20 20:34:30 2017
New Revision: 320171
URL: https://svnweb.freebsd.org/changeset/base/320171

Log:
  LIBADD: Try to support partial tree checkouts in some limited cases.
  
  LIBADD is only supported for in-tree builds because we do not install
  share/mk/src.libnames.mk (which provides LIBADD support) into /usr/share/mk.
  So if a partial checkout is done then the LIBADDs are ignored and no LDADD is
  ever added.
  
  Provide limited support for this case for when LIBADD is composed entirely of
  base libraries.  This is to avoid clashes with ports and other out-of-tree
  LIBADD uses that should not be mapped to LDADD and because we do not want to
  support LIBADD out-of-tree right now.
  
  Reported by:  mckusick, kib
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.libnames.mk

Modified: head/share/mk/bsd.libnames.mk
==
--- head/share/mk/bsd.libnames.mk   Tue Jun 20 20:22:34 2017
(r320170)
+++ head/share/mk/bsd.libnames.mk   Tue Jun 20 20:34:30 2017
(r320171)
@@ -194,4 +194,26 @@ LDADD:=${LDADD:N-lc} -lc
 .for lib in ${_LIBRARIES}
 LIB${lib:tu}SRCDIR?=   ${SRCTOP}/${LIB${lib:tu}DIR:S,^${OBJTOP}/,,}
 .endfor
+.else
+
+# Out of tree builds
+
+# There are LIBADD defined in an out-of-tree build.  Are they *all*
+# in-tree libraries?  If so convert them to LDADD to support
+# partial checkouts.
+.if !empty(LIBADD)
+_convert_libadd=   1
+.for l in ${LIBADD}
+.if empty(LIB${l:tu})
+_convert_libadd=   0
 .endif
+.endfor
+.if ${_convert_libadd} == 1
+.warning Converting out-of-tree build LIBADDs into LDADD.  This is not fully 
supported.
+.for l in ${LIBADD}
+LDADD+=-l${l}
+.endfor
+.endif
+.endif
+
+.endif # defined(SRCTOP)
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320122 - in head: cddl/usr.sbin/zfsd/tests gnu/usr.bin/grep include lib/librpcsvc lib/libsysdecode sbin/gvinum share/mk sys/boot/efi/loader usr.bin/grep usr.sbin/bootparamd/bootparamd ...

2017-06-19 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jun 19 20:47:24 2017
New Revision: 320122
URL: https://svnweb.freebsd.org/changeset/base/320122

Log:
  Utilize SYSROOT from r320119 in places where DESTDIR may be wanting WORLDTMP.
  
  Since buildenv exports SYSROOT all of these uses will now look in
  WORLDTMP by default.
  
  sys/boot/efi/loader/Makefile
  A LIBSTAND hack is no longer required for buildenv.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/cddl/usr.sbin/zfsd/tests/Makefile
  head/gnu/usr.bin/grep/Makefile
  head/include/Makefile
  head/lib/librpcsvc/Makefile
  head/lib/libsysdecode/Makefile
  head/sbin/gvinum/Makefile
  head/share/mk/bsd.libnames.mk
  head/share/mk/src.libnames.mk
  head/sys/boot/efi/loader/Makefile
  head/usr.bin/grep/Makefile
  head/usr.sbin/bootparamd/bootparamd/Makefile
  head/usr.sbin/bootparamd/callbootd/Makefile
  head/usr.sbin/keyserv/Makefile
  head/usr.sbin/ntp/ntpdc/Makefile
  head/usr.sbin/ntp/ntpq/Makefile
  head/usr.sbin/rpc.lockd/Makefile
  head/usr.sbin/rpc.statd/Makefile
  head/usr.sbin/rpc.ypupdated/Makefile
  head/usr.sbin/tcpdump/tcpdump/Makefile

Modified: head/cddl/usr.sbin/zfsd/tests/Makefile
==
--- head/cddl/usr.sbin/zfsd/tests/Makefile  Mon Jun 19 20:40:59 2017
(r320121)
+++ head/cddl/usr.sbin/zfsd/tests/Makefile  Mon Jun 19 20:47:24 2017
(r320122)
@@ -11,16 +11,10 @@ SRCS=
 # Use #include  in test programs.
 INCFLAGS+= -I${.CURDIR:H:H}
 
-.if defined(DESTDIR)
-INCFLAGS+= -I${DESTDIR}/usr/include
-LIBRARY_PATH=  ${DESTDIR}/lib:${DESTDIR}/usr/lib
-LDFLAGS.zfsd_unittest+=-L${DESTDIR}/lib -L${DESTDIR}/usr/lib
-.elif defined(WORLDTMP)
-INCFLAGS+= -I${WORLDTMP}/usr/include
-LIBRARY_PATH=  ${WORLDTMP}/lib:${WORLDTMP}/usr/lib
-LDFLAGS.zfsd_unittest+=-L${WORLDTMP}/lib -L${WORLDTMP}/usr/lib
-.else
-LIBRARY_PATH=
+.if defined(DESTDIR) || defined(SYSROOT)
+INCFLAGS+= -I${SYSROOT:U${DESTDIR}}/usr/include
+LDFLAGS.zfsd_unittest+=-L${SYSROOT:U${DESTDIR}}/lib \
+   -L${SYSROOT:U${DESTDIR}}/usr/lib
 .endif
 
 # Googletest options

Modified: head/gnu/usr.bin/grep/Makefile
==
--- head/gnu/usr.bin/grep/Makefile  Mon Jun 19 20:40:59 2017
(r320121)
+++ head/gnu/usr.bin/grep/Makefile  Mon Jun 19 20:47:24 2017
(r320122)
@@ -14,7 +14,7 @@ SRCS= closeout.c dfa.c error.c exclude.c grep.c grepma
xstrtoumax.c
 CLEANFILES+=   gnugrep.1
 
-CFLAGS+=-I${.CURDIR} -I${DESTDIR}/usr/include/gnu -DHAVE_CONFIG_H
+CFLAGS+=-I${.CURDIR} -I${SYSROOT:U${DESTDIR}}/usr/include/gnu -DHAVE_CONFIG_H
 
 .if ${MK_BSD_GREP} != "yes"
 LINKS+=${BINDIR}/grep ${BINDIR}/egrep \

Modified: head/include/Makefile
==
--- head/include/Makefile   Mon Jun 19 20:40:59 2017(r320121)
+++ head/include/Makefile   Mon Jun 19 20:47:24 2017(r320122)
@@ -133,23 +133,24 @@ _MARCHS+= x86
 
 META_TARGETS+= compat
 stage_includes: ${SHARED}
+SDESTDIR=  ${SYSROOT:U${DESTDIR}}
 
 # Take care of stale directory-level symlinks.
 compat:
 .for i in ${LDIRS} ${LSUBDIRS} machine ${_MARCHS} crypto
-   if [ -L ${DESTDIR}${INCLUDEDIR}/$i ]; then \
-   rm -f ${DESTDIR}${INCLUDEDIR}/$i; \
+   if [ -L ${SDESTDIR}${INCLUDEDIR}/$i ]; then \
+   rm -f ${SDESTDIR}${INCLUDEDIR}/$i; \
fi
 .endfor
mtree -deU ${MTREE_FOLLOWS_SYMLINKS} \
-f ${SRCTOP}/etc/mtree/BSD.include.dist \
-   -p ${DESTDIR}${INCLUDEDIR} > /dev/null
+   -p ${SDESTDIR}${INCLUDEDIR} > /dev/null
 
 copies: .PHONY .META
 .for i in ${LDIRS} ${LSUBDIRS} ${LSUBSUBDIRS} crypto machine machine/pc \
${_MARCHS}
-   if [ -d ${DESTDIR}${INCLUDEDIR}/$i ]; then \
-   cd ${DESTDIR}${INCLUDEDIR}/$i; \
+   if [ -d ${SDESTDIR}${INCLUDEDIR}/$i ]; then \
+   cd ${SDESTDIR}${INCLUDEDIR}/$i; \
for h in *.h; do \
if [ -L $$h ]; then rm -f $$h; fi; \
done; \
@@ -158,101 +159,101 @@ copies: .PHONY .META
 .for i in ${LDIRS} 
${LSUBDIRS:Ndev/agp:Ndev/acpica:Ndev/bktr:Ndev/evdev:Ndev/hyperv:Ndev/nand:Ndev/pci}
 ${LSUBSUBDIRS}
cd ${SRCTOP}/sys; \
${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 $i/*.h \
-   ${DESTDIR}${INCLUDEDIR}/$i
+   ${SDESTDIR}${INCLUDEDIR}/$i
 .endfor
cd ${SRCTOP}/sys/dev/acpica; \
${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 acpiio.h \
-   ${DESTDIR}${INCLUDEDIR}/dev/acpica; \
+   ${SDESTDIR}${INCLUDEDIR}/dev/acpica; \
${INSTALL} -C ${TAG_ARGS} -o ${BINOWN} -g ${BINGRP} -m 444 acpi_hpet.h \
-   ${DESTDIR}${INCLUDEDIR}/dev/acpica
+   ${SDESTDIR}${INCLUDEDIR}/dev/acpica
cd ${SRCTOP}/sys/dev/agp; \
 

svn commit: r320118 - head/share/mk

2017-06-19 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jun 19 18:08:02 2017
New Revision: 320118
URL: https://svnweb.freebsd.org/changeset/base/320118

Log:
  Follow-up r320061: Need to respect make.conf/env LIBDIR overrides.
  
  This fixes the lib32 build from creating all stale .depend files.
  
  X-MFC-With:   320061
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.own.mk
  head/share/mk/local.sys.mk

Modified: head/share/mk/bsd.own.mk
==
--- head/share/mk/bsd.own.mkMon Jun 19 15:56:03 2017(r320117)
+++ head/share/mk/bsd.own.mkMon Jun 19 18:08:02 2017(r320118)
@@ -152,6 +152,11 @@ DTBOWN?=   root
 DTBGRP?=   wheel
 DTBMODE?=  444
 
+# Use make.conf / environment LIBDIR as default if set...
+.if !empty(_PREMK_LIBDIR)
+LIBDIR_BASE?=  ${_PREMK_LIBDIR}
+.endif
+# otherwise use our expected default value.
 LIBDIR_BASE?=  /usr/lib
 LIBDIR?=   ${LIBDIR_BASE}
 LIBCOMPATDIR?= /usr/lib/compat

Modified: head/share/mk/local.sys.mk
==
--- head/share/mk/local.sys.mk  Mon Jun 19 15:56:03 2017(r320117)
+++ head/share/mk/local.sys.mk  Mon Jun 19 18:08:02 2017(r320118)
@@ -42,6 +42,10 @@ MAKE_PRINT_VAR_ON_ERROR += .MAKE.MAKEFILES .PATH
 OBJTOP?= ${.OBJDIR:S,${.CURDIR},,}${SRCTOP}
 .endif
 
+.if !empty(LIBDIR)
+_PREMK_LIBDIR:=${LIBDIR}
+.endif
+
 .include "src.sys.mk"
 
 .if ${.MAKE.MODE:Mmeta*} != ""
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320119 - head

2017-06-19 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jun 19 18:08:20 2017
New Revision: 320119
URL: https://svnweb.freebsd.org/changeset/base/320119

Log:
  buildworld: Define SYSROOT to WORLDTMP.
  
  This is to allow downstream Makefiles to know for sure they are building
  against a sysroot rather than only depending on ${DESTDIR} or other
  assumptions.
  
  This also exports it into buildenv.
  
  MFC after:2 weeks
  Sponsored by: Dell EMC Isilon

Modified:
  head/Makefile.inc1
  head/Makefile.libcompat

Modified: head/Makefile.inc1
==
--- head/Makefile.inc1  Mon Jun 19 18:08:02 2017(r320118)
+++ head/Makefile.inc1  Mon Jun 19 18:08:20 2017(r320119)
@@ -563,7 +563,8 @@ KTMAKE= TOOLS_PREFIX=${WORLDTMP} 
MAKEOBJDIRPREFIX=${W
 # world stage
 WMAKEENV=  ${CROSSENV} \
INSTALL="sh ${.CURDIR}/tools/install.sh" \
-   PATH=${TMPPATH}
+   PATH=${TMPPATH} \
+   SYSROOT=${WORLDTMP}
 
 # make hierarchy
 HMAKE= PATH=${TMPPATH} ${MAKE} LOCAL_MTREE=${LOCAL_MTREE:Q}
@@ -722,7 +723,7 @@ IMAKE_MTREE=MTREE_CMD="mtree ${MTREEFLAGS}"
 .endif
 
 # kernel stage
-KMAKEENV=  ${WMAKEENV}
+KMAKEENV=  ${WMAKEENV:NSYSROOT=*}
 KMAKE= ${KMAKEENV} ${MAKE} ${.MAKEFLAGS} ${KERNEL_FLAGS} 
KERNEL=${INSTKERNNAME}
 
 #

Modified: head/Makefile.libcompat
==
--- head/Makefile.libcompat Mon Jun 19 18:08:02 2017(r320118)
+++ head/Makefile.libcompat Mon Jun 19 18:08:20 2017(r320119)
@@ -111,6 +111,7 @@ LIBCOMPATCXXFLAGS+= -isystem ${LIBCOMPATTMP}/usr/inclu
 LIBCOMPATWMAKEENV+= MAKEOBJDIRPREFIX=${LIBCOMPAT_OBJTREE} \
INSTALL="sh ${.CURDIR}/tools/install.sh" \
PATH=${TMPPATH} \
+   SYSROOT=${LIBCOMPATTMP} \
LIBDIR=/usr/lib${libcompat} \
SHLIBDIR=/usr/lib${libcompat} \
DTRACE="${LIB$COMPATDTRACE:U${DTRACE}}"
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320061 - head/share/mk

2017-06-17 Thread Bryan Drewery
Author: bdrewery
Date: Sat Jun 17 20:33:11 2017
New Revision: 320061
URL: https://svnweb.freebsd.org/changeset/base/320061

Log:
  Fix Makefiles which override LIBDIR to not add incorrect dependencies into 
.depend.
  
  This fixes these cases which would rebuild every time:
  make[6]: /usr/obj/usr/src/libexec/rtld-elf/tests/libpythagoras/.depend, 
1: ignoring stale .depend for 
/usr/obj/usr/src/tmp/usr/tests/libexec/rtld-elf/libm.a
  make[6]: /usr/obj/usr/src/lib/libxo/tests/encoder/.depend, 1: ignoring 
stale .depend for /usr/obj/usr/src/tmp/usr/tests/lib/libxo/libxo.a
  make[7]: /usr/obj/usr/src/lib/libthr/tests/dlopen/dso/.depend, 1: 
ignoring stale .depend for 
/usr/obj/usr/src/tmp/usr/tests/lib/libthr/dlopen/libpthread.a
  
  The problem is that some Makefiles will override LIBDIR to where they want
  their library to install.  bsd.libnames.mk will then use ${LIBDIR} to define
  where *existing* libraries are.  This then leads to looking for the
  libraries in the *target* place rather than the *expected* place.
  
  We may want to expand this (and all of the other *DIR variables in bsd.own.mk)
  into something like what Ports has, a PREFIX and a LOCALBASE.  PREFIX being
  where things are being installed to and LOCALBASE being where they already 
are.
  
  For now store the default expected LIBDIR into LIBDIR_BASE and use that for
  library locations.
  
  Reported by:  sbruno
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/bsd.libnames.mk
  head/share/mk/bsd.own.mk
  head/share/mk/src.libnames.mk

Modified: head/share/mk/bsd.libnames.mk
==
--- head/share/mk/bsd.libnames.mk   Sat Jun 17 19:00:12 2017
(r320060)
+++ head/share/mk/bsd.libnames.mk   Sat Jun 17 20:33:11 2017
(r320061)
@@ -12,162 +12,162 @@
 
 # Src directory locations are also defined in src.libnames.mk.
 
-LIBCRT0?=  ${DESTDIR}${LIBDIR}/crt0.o
+LIBCRT0?=  ${DESTDIR}${LIBDIR_BASE}/crt0.o
 
-LIB80211?= ${DESTDIR}${LIBDIR}/lib80211.a
-LIBALIAS?= ${DESTDIR}${LIBDIR}/libalias.a
-LIBARCHIVE?=   ${DESTDIR}${LIBDIR}/libarchive.a
-LIBASN1?=  ${DESTDIR}${LIBDIR}/libasn1.a
-LIBATM?=   ${DESTDIR}${LIBDIR}/libatm.a
-LIBAUDITD?=${DESTDIR}${LIBDIR}/libauditd.a
-LIBAVL?=   ${DESTDIR}${LIBDIR}/libavl.a
-LIBBEGEMOT?=   ${DESTDIR}${LIBDIR}/libbegemot.a
-LIBBLACKLIST?= ${DESTDIR}${LIBDIR}/libblacklist.a
-LIBBLUETOOTH?= ${DESTDIR}${LIBDIR}/libbluetooth.a
-LIBBSDXML?=${DESTDIR}${LIBDIR}/libbsdxml.a
-LIBBSM?=   ${DESTDIR}${LIBDIR}/libbsm.a
-LIBBSNMP?= ${DESTDIR}${LIBDIR}/libbsnmp.a
-LIBBZ2?=   ${DESTDIR}${LIBDIR}/libbz2.a
-LIBC?= ${DESTDIR}${LIBDIR}/libc.a
-LIBCALENDAR?=  ${DESTDIR}${LIBDIR}/libcalendar.a
-LIBCAM?=   ${DESTDIR}${LIBDIR}/libcam.a
-LIBCAP_DNS?=   ${DESTDIR}${LIBDIR}/libcap_dns.a
-LIBCAP_GRP?=   ${DESTDIR}${LIBDIR}/libcap_grp.a
-LIBCAP_PWD?=   ${DESTDIR}${LIBDIR}/libcap_pwd.a
-LIBCAP_RANDOM?=${DESTDIR}${LIBDIR}/libcap_random.a
-LIBCAP_SYSCTL?=${DESTDIR}${LIBDIR}/libcap_sysctl.a
-LIBCASPER?=${DESTDIR}${LIBDIR}/libcasper.a
-LIBCOMPAT?=${DESTDIR}${LIBDIR}/libcompat.a
-LIBCOMPILER_RT?=${DESTDIR}${LIBDIR}/libcompiler_rt.a
-LIBCOM_ERR?=   ${DESTDIR}${LIBDIR}/libcom_err.a
-LIBCPLUSPLUS?= ${DESTDIR}${LIBDIR}/libc++.a
-LIBCRYPT?= ${DESTDIR}${LIBDIR}/libcrypt.a
-LIBCRYPTO?=${DESTDIR}${LIBDIR}/libcrypto.a
-LIBCTF?=   ${DESTDIR}${LIBDIR}/libctf.a
-LIBCURSES?=${DESTDIR}${LIBDIR}/libcurses.a
-LIBCUSE?=  ${DESTDIR}${LIBDIR}/libcuse.a
-LIBCXGB4?= ${DESTDIR}${LIBDIR}/libcxgb4.a
-LIBCXXRT?= ${DESTDIR}${LIBDIR}/libcxxrt.a
-LIBC_PIC?= ${DESTDIR}${LIBDIR}/libc_pic.a
-LIBDEVCTL?=${DESTDIR}${LIBDIR}/libdevctl.a
-LIBDEVDCTL?=   ${DESTDIR}${LIBDIR}/libdevdctl.a
-LIBDEVINFO?=   ${DESTDIR}${LIBDIR}/libdevinfo.a
-LIBDEVSTAT?=   ${DESTDIR}${LIBDIR}/libdevstat.a
-LIBDIALOG?=${DESTDIR}${LIBDIR}/libdialog.a
-LIBDNS?=   ${DESTDIR}${LIBDIR}/libdns.a
-LIBDPV?=   ${DESTDIR}${LIBDIR}/libdpv.a
-LIBDTRACE?=${DESTDIR}${LIBDIR}/libdtrace.a
-LIBDWARF?= ${DESTDIR}${LIBDIR}/libdwarf.a
-LIBEDIT?=  ${DESTDIR}${LIBDIR}/libedit.a
-LIBEFIVAR?=${DESTDIR}${LIBDIR}/libefivar.a
-LIBELF?=   ${DESTDIR}${LIBDIR}/libelf.a
-LIBEXECINFO?=  ${DESTDIR}${LIBDIR}/libexecinfo.a
-LIBFETCH?= ${DESTDIR}${LIBDIR}/libfetch.a
-LIBFIGPAR?=${DESTDIR}${LIBDIR}/libfigpar.a
+LIB80211?= ${DESTDIR}${LIBDIR_BASE}/lib80211.a
+LIBALIAS?= ${DESTDIR}${LIBDIR_BASE}/libalias.a
+LIBARCHIVE?=   ${DESTDIR}${LIBDIR_BASE}/libarchive.a
+LIBASN1?=  ${DESTDIR}${LIBDIR_BASE}/libasn1.a
+LIBATM?=   ${DESTDIR}${LIBDIR_BASE}/libatm.a
+LIBAUDITD?=${DESTDIR}${LIBDIR_BASE}/libauditd.a
+LIBAVL?=   ${DESTDIR}${LIBDIR_BASE}/libavl.a
+LIBBEGEMOT?=   ${DESTDIR}${LIBDIR_BASE}/libbegemot.a
+LIBBLACKLIST?= ${DESTDIR}${LIBDIR_BASE}/libblacklist.a
+LIBBLUETOOTH?= ${DESTDIR}${LIBDIR_BASE}/libbluetooth.a
+LIBBSDXML?=

svn commit: r320030 - head/share/mk

2017-06-16 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 16 21:48:42 2017
New Revision: 320030
URL: https://svnweb.freebsd.org/changeset/base/320030

Log:
  WITH_META_MODE: End each ERROR_CMD CMD line with ';'.
  
  This makes it easier to debug multi-line command failures.
  
  X-MFC-With:   r319862
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/local.sys.mk

Modified: head/share/mk/local.sys.mk
==
--- head/share/mk/local.sys.mk  Fri Jun 16 21:40:44 2017(r320029)
+++ head/share/mk/local.sys.mk  Fri Jun 16 21:48:42 2017(r320030)
@@ -13,7 +13,7 @@ MAKE_PRINT_VAR_ON_ERROR += \
.MAKE.MODE
 .endif
 
-_ERROR_CMD_EXEC=   ${sed -n '/^CMD/s,^CMD ,,p' ${.ERROR_META_FILE}:L:sh}
+_ERROR_CMD_EXEC=   ${sed -n '/^CMD/s,^CMD \(.*\),\1;,p' 
${.ERROR_META_FILE}:L:sh}
 _ERROR_CMD=${!empty(.ERROR_META_FILE):?${_ERROR_CMD_EXEC}:.PHONY}
 MAKE_PRINT_VAR_ON_ERROR+= \
_ERROR_CMD \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320028 - head/share/mk

2017-06-16 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 16 21:37:05 2017
New Revision: 320028
URL: https://svnweb.freebsd.org/changeset/base/320028

Log:
  Fix more incorrect library directories fix 'stale .depend' rebuilds.
  
  Reported by:  sbruno
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/src.libnames.mk

Modified: head/share/mk/src.libnames.mk
==
--- head/share/mk/src.libnames.mk   Fri Jun 16 21:36:21 2017
(r320027)
+++ head/share/mk/src.libnames.mk   Fri Jun 16 21:37:05 2017
(r320028)
@@ -420,7 +420,7 @@ LIBSMDBDIR= ${OBJTOP}/lib/libsmdb
 LIBSMDB?=  ${LIBSMDBDIR}/libsmdb.a
 
 LIBSMUTILDIR=  ${OBJTOP}/lib/libsmutil
-LIBSMUTIL?=${LIBSMDBDIR}/libsmutil.a
+LIBSMUTIL?=${LIBSMUTILDIR}/libsmutil.a
 
 LIBNETBSDDIR?= ${OBJTOP}/lib/libnetbsd
 LIBNETBSD?=${LIBNETBSDDIR}/libnetbsd.a
@@ -453,10 +453,10 @@ LIBPARSEDIR=  ${OBJTOP}/usr.sbin/ntp/libparse
 LIBPARSE?= ${LIBPARSEDIR}/libparse.a
 
 LIBLPRDIR= ${OBJTOP}/usr.sbin/lpr/common_source
-LIBLPR?=   ${LIBOPTSDIR}/liblpr.a
+LIBLPR?=   ${LIBLPRDIR}/liblpr.a
 
 LIBFIFOLOGDIR= ${OBJTOP}/usr.sbin/fifolog/lib
-LIBFIFOLOG?=   ${LIBOPTSDIR}/libfifolog.a
+LIBFIFOLOG?=   ${LIBFIFOLOGDIR}/libfifolog.a
 
 LIBBSNMPTOOLSDIR=  ${OBJTOP}/usr.sbin/bsnmpd/tools/libbsnmptools
 LIBBSNMPTOOLS?=${LIBBSNMPTOOLSDIR}/libbsnmptools.a
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r320012 - head/share/mk

2017-06-16 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 16 20:47:12 2017
New Revision: 320012
URL: https://svnweb.freebsd.org/changeset/base/320012

Log:
  Fix LIBAMU location to fix 'stale .depend' rebuilds in usr.sbin/amd.
  
  This originally came in r275052.
  
  Reported by:  sbruno
  MFC after:3 days
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/src.libnames.mk

Modified: head/share/mk/src.libnames.mk
==
--- head/share/mk/src.libnames.mk   Fri Jun 16 20:08:44 2017
(r320011)
+++ head/share/mk/src.libnames.mk   Fri Jun 16 20:47:12 2017
(r320012)
@@ -462,7 +462,7 @@ LIBBSNMPTOOLSDIR=   ${OBJTOP}/usr.sbin/bsnmpd/tools/libb
 LIBBSNMPTOOLS?=${LIBBSNMPTOOLSDIR}/libbsnmptools.a
 
 LIBAMUDIR= ${OBJTOP}/usr.sbin/amd/libamu
-LIBAMU?=   ${LIBAMUDIR}/libamu/libamu.a
+LIBAMU?=   ${LIBAMUDIR}/libamu.a
 
 # Define a directory for each library.  This is useful for adding -L in when
 # not using a --sysroot or for meta mode bootstrapping when there is no
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r319996 - head/share/mk

2017-06-15 Thread Bryan Drewery
Author: bdrewery
Date: Fri Jun 16 04:28:10 2017
New Revision: 319996
URL: https://svnweb.freebsd.org/changeset/base/319996

Log:
  WITH_META_MODE: Don't try showing command if .ERROR_META_FILE is empty.
  
  This was sed'ing on stdin for failing .PHONY targets.
  
  Reported by:  Mark Millard
  X-MFC-With:   r319862
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/local.sys.mk

Modified: head/share/mk/local.sys.mk
==
--- head/share/mk/local.sys.mk  Fri Jun 16 01:26:01 2017(r319995)
+++ head/share/mk/local.sys.mk  Fri Jun 16 04:28:10 2017(r319996)
@@ -13,7 +13,8 @@ MAKE_PRINT_VAR_ON_ERROR += \
.MAKE.MODE
 .endif
 
-_ERROR_CMD=${sed -n '/^CMD/s,^CMD ,,p' ${.ERROR_META_FILE}:L:sh}
+_ERROR_CMD_EXEC=   ${sed -n '/^CMD/s,^CMD ,,p' ${.ERROR_META_FILE}:L:sh}
+_ERROR_CMD=${!empty(.ERROR_META_FILE):?${_ERROR_CMD_EXEC}:.PHONY}
 MAKE_PRINT_VAR_ON_ERROR+= \
_ERROR_CMD \
.CURDIR \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r319897 - head/usr.bin/yes

2017-06-15 Thread Bryan Drewery
On 6/15/2017 7:17 AM, Ronald Klop wrote:
> On Wed, 14 Jun 2017 16:27:52 +0200, Bryan Drewery <bdrew...@freebsd.org>
> wrote:
> 
>> On 6/14/2017 7:26 AM, Justin Hibbits wrote:
>>> On Wed, Jun 14, 2017 at 9:19 AM, Bryan Drewery <bdrew...@freebsd.org>
>>> wrote:
>>>> On 6/13/2017 5:35 AM, Pietro Cerutti wrote:
>>>>> Author: gahr (ports committer)
>>>>> Date: Tue Jun 13 12:35:01 2017
>>>>> New Revision: 319897
>>>>> URL: https://svnweb.freebsd.org/changeset/base/319897
>>>>>
>>>>> Log:
>>>>>   Improve yes' throughput
>>>>>
>>>>>   On my system, this brings up the throughput from ~20 to ~600 MiB/s.
>>>>>
>>>>>   Inspired by:
>>>>> https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes_so_fast/
>>>>>
>>>>>   Reviewed by:cognet
>>>>>   Approved by:cognet
>>>>>
>>>>> Modified:
>>>>>   head/usr.bin/yes/yes.c
>>>>
>>>>
>>>> While here we should add libxo support.
>>>>
>>>> -- 
>>>> Regards,
>>>> Bryan Drewery
>>>>
>>>
>>> I think before we add libxo, we need to capsicumize it.  After all, it
>>> does accept arbitrary arguments.
>>
>> The code has become more complex.  I think capsicum does make sense now
>> in case there is an unseen overflow in the new optimized code.
>>
>>
> 
> It already has capsicum...
> https://svnweb.freebsd.org/base?view=revision=308432
> 
> :-)

Doh, perfect!

Now we need libxo support.  I need a constant stream of .

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r319897 - head/usr.bin/yes

2017-06-14 Thread Bryan Drewery
On 6/14/2017 7:26 AM, Justin Hibbits wrote:
> On Wed, Jun 14, 2017 at 9:19 AM, Bryan Drewery <bdrew...@freebsd.org> wrote:
>> On 6/13/2017 5:35 AM, Pietro Cerutti wrote:
>>> Author: gahr (ports committer)
>>> Date: Tue Jun 13 12:35:01 2017
>>> New Revision: 319897
>>> URL: https://svnweb.freebsd.org/changeset/base/319897
>>>
>>> Log:
>>>   Improve yes' throughput
>>>
>>>   On my system, this brings up the throughput from ~20 to ~600 MiB/s.
>>>
>>>   Inspired by: 
>>> https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes_so_fast/
>>>
>>>   Reviewed by:cognet
>>>   Approved by:cognet
>>>
>>> Modified:
>>>   head/usr.bin/yes/yes.c
>>
>>
>> While here we should add libxo support.
>>
>> --
>> Regards,
>> Bryan Drewery
>>
> 
> I think before we add libxo, we need to capsicumize it.  After all, it
> does accept arbitrary arguments.

The code has become more complex.  I think capsicum does make sense now
in case there is an unseen overflow in the new optimized code.


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r319897 - head/usr.bin/yes

2017-06-14 Thread Bryan Drewery
On 6/13/2017 5:35 AM, Pietro Cerutti wrote:
> Author: gahr (ports committer)
> Date: Tue Jun 13 12:35:01 2017
> New Revision: 319897
> URL: https://svnweb.freebsd.org/changeset/base/319897
> 
> Log:
>   Improve yes' throughput
>   
>   On my system, this brings up the throughput from ~20 to ~600 MiB/s.
>   
>   Inspired by: 
> https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes_so_fast/
>   
>   Reviewed by:cognet
>   Approved by:cognet
> 
> Modified:
>   head/usr.bin/yes/yes.c


While here we should add libxo support.

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


Re: svn commit: r319897 - head/usr.bin/yes

2017-06-13 Thread Bryan Drewery
On 6/13/2017 5:35 AM, Pietro Cerutti wrote:
> Author: gahr (ports committer)
> Date: Tue Jun 13 12:35:01 2017
> New Revision: 319897
> URL: https://svnweb.freebsd.org/changeset/base/319897
> 
> Log:
>   Improve yes' throughput
>   
>   On my system, this brings up the throughput from ~20 to ~600 MiB/s.
>   
>   Inspired by: 
> https://www.reddit.com/r/unix/comments/6gxduc/how_is_gnu_yes_so_fast/
>   
>   Reviewed by:cognet
>   Approved by:cognet
> 
> Modified:
>   head/usr.bin/yes/yes.c
> 
> Modified: head/usr.bin/yes/yes.c
> ==
> --- head/usr.bin/yes/yes.cTue Jun 13 12:07:18 2017(r319896)
> +++ head/usr.bin/yes/yes.cTue Jun 13 12:35:01 2017(r319897)
> @@ -44,20 +44,42 @@ static const char rcsid[] = "$FreeBSD$";
>  #include 
>  #include 
>  #include 
> +#include 
> +#include 
>  
>  int
>  main(int argc, char **argv)
>  {
> + char buf[8192];

8192 feels arbitrary but it has a purpose.  Shouldn't it be based on
PAGE_SIZE or something?

> + char y[2] = { 'y', '\n' };
> + char * exp = y;
> + size_t buflen = 0;
> + size_t explen = sizeof(y);

More style bugs here

>  
>   if (caph_limit_stdio() < 0 || (cap_enter() < 0 && errno != ENOSYS))
>   err(1, "capsicum");
>  
>   if (argc > 1)
> - while (puts(argv[1]) != EOF)
> - ;
> - else
> - while (puts("y") != EOF)
> - ;
> + {
> + exp = argv[1];
> + explen = strlen(exp) + 1;
> + exp[explen - 1] = '\n';
> + }
> +
> + if (explen <= sizeof(buf))
> + {
> + while (buflen < sizeof(buf) - explen)
> + {
> + memcpy(buf + buflen, exp, explen);
> + buflen += explen;
> +     }
> + exp = buf;
> + explen = buflen;
> + }
> +
> + while (write(STDOUT_FILENO, exp, explen) > 0)
> + ;
> +
>   err(1, "stdout");
>   /*NOTREACHED*/
>  }
> 


-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


svn commit: r319862 - head/share/mk

2017-06-12 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jun 12 19:13:29 2017
New Revision: 319862
URL: https://svnweb.freebsd.org/changeset/base/319862

Log:
  META_MODE: Show .ERROR_CMD in error.
  
  This uses a hack to get the CMD from the meta file rather than
  .ERROR_CMD since bmake currently blanks the value for non-jobs
  mode.
  
  Reviewed by:  sjg (indirectly)
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/local.sys.mk

Modified: head/share/mk/local.sys.mk
==
--- head/share/mk/local.sys.mk  Mon Jun 12 18:44:14 2017(r319861)
+++ head/share/mk/local.sys.mk  Mon Jun 12 19:13:29 2017(r319862)
@@ -13,7 +13,9 @@ MAKE_PRINT_VAR_ON_ERROR += \
.MAKE.MODE
 .endif
 
+_ERROR_CMD=${sed -n '/^CMD/s,^CMD ,,p' ${.ERROR_META_FILE}:L:sh}
 MAKE_PRINT_VAR_ON_ERROR+= \
+   _ERROR_CMD \
.CURDIR \
.MAKE \
.OBJDIR \
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


svn commit: r319861 - head/share/mk

2017-06-12 Thread Bryan Drewery
Author: bdrewery
Date: Mon Jun 12 18:44:14 2017
New Revision: 319861
URL: https://svnweb.freebsd.org/changeset/base/319861

Log:
  META_MODE: NO_FILEMON should imply nofilemon.
  
  This fixes NO_FILEMON to properly still use .depend.OBJ files
  for dependency tracking.
  
  MFC after:1 week
  Sponsored by: Dell EMC Isilon

Modified:
  head/share/mk/sys.mk

Modified: head/share/mk/sys.mk
==
--- head/share/mk/sys.mkMon Jun 12 17:37:18 2017(r319860)
+++ head/share/mk/sys.mkMon Jun 12 18:44:14 2017(r319861)
@@ -59,7 +59,7 @@ META_MODE+=   missing-meta=yes
 .if !defined(NO_SILENT)
 META_MODE+=silent=yes
 .endif
-.if !exists(/dev/filemon)
+.if !exists(/dev/filemon) || defined(NO_FILEMON)
 META_MODE+= nofilemon
 .endif
 # Require filemon data with bmake
___
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"


Re: svn commit: r319702 - head/sys/vm

2017-06-08 Thread Bryan Drewery
On 6/8/17 12:18 PM, John Baldwin wrote:
> Author: jhb
> Date: Thu Jun  8 16:18:41 2017
> New Revision: 319702
> URL: https://svnweb.freebsd.org/changeset/base/319702
> 
> Log:
>   Fix an off-by-one error in the VM page array on some systems.
>   
>   r31386 changed how the size of the VM page array was calculated to be
>   less wasteful. 

r313186

-- 
Regards,
Bryan Drewery



signature.asc
Description: OpenPGP digital signature


<    1   2   3   4   5   6   7   8   9   10   >