+ case "${usergroup_phase}" in
+ local run_cmd
+ run_cmd=run_su
+ shift
+ run_su /opt/local/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/watchman-4.7.0nb2/work.log
+ su pbulk -c '"$@"' make /opt/local/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/watchman-4.7.0nb2/work.log
===> Building for watchman-4.7.0nb2
/opt/local/bin/gmake  all-am
gmake[1]: Entering directory '/home/pbulk/build/sysutils/watchman/work/watchman-4.7.0'
  CC       watchman-envp.o
  CC       watchman-spawn.o
  CC       watchman-argv.o
  CC       watchman-opt.o
  CC       watchman-cfg.o
  CC       watchman-clockspec.o
  CC       watchman-checksock.o
  CC       watchman-fstype.o
  CC       watchman-log.o
  CC       watchman-ignore.o
  CC       watchman-json.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
  CC       watchman-bser.o
  CC       watchman-expflags.o
  CC       watchman-hash.o
  CC       watchman-ht.o
hash.c: In function 'w_hash_bytes':
hash.c:228:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  228 |       case 12: c+=((uint32_t)k[11])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:229:7: note: here
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |       ^~~~
hash.c:229:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:230:7: note: here
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |       ^~~~
hash.c:230:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:231:7: note: here
  231 |       case 9 : c+=k[8];
      |       ^~~~
hash.c:231:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  231 |       case 9 : c+=k[8];
      |                ~^~~~~~
hash.c:232:7: note: here
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |       ^~~~
hash.c:232:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:233:7: note: here
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |       ^~~~
hash.c:233:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:234:7: note: here
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |       ^~~~
hash.c:234:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:235:7: note: here
  235 |       case 5 : b+=k[4];
      |       ^~~~
hash.c:235:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  235 |       case 5 : b+=k[4];
      |                ~^~~~~~
hash.c:236:7: note: here
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |       ^~~~
hash.c:236:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:237:7: note: here
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |       ^~~~
hash.c:237:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:238:7: note: here
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |       ^~~~
hash.c:238:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:239:7: note: here
  239 |       case 1 : a+=k[0];
      |       ^~~~
  CC       watchman-ioprio.o
  CC       watchman-opendir.o
opendir.c: In function 'realpath_fd':
opendir.c:190:28: warning: unused parameter 'fd' [-Wunused-parameter]
  190 | static int realpath_fd(int fd, char *canon, size_t canon_size) {
      |                        ~~~~^~
  CC       watchman-pending.o
  CC       watchman-perf.o
  CC       watchman-stream.o
  CC       watchman-stream_stdout.o
  CC       watchman-stream_unix.o
  CC       watchman-timedlock.o
stream_unix.c: In function 'unix_peer_is_owner':
stream_unix.c:71:23: warning: unused variable 'h' [-Wunused-variable]
   71 |   struct unix_handle *h = stm->handle;
      |                       ^
  CC       watchman-launchd.o
  CC       watchman-listener.o
  CC       watchman-listener-user.o
  CC       watchman-clientmode.o
  CC       watchman-main.o
main.c: In function 'lock_pidfile':
main.c:87:3: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   87 |   dprintf(fd, "%d", mypid);
      |   ^~~~~~~
      |   vprintf
  CC       watchman-state.o
  CC       watchman-string.o
  CC       watchman-time.o
  CC       tests_art_t-log.o
  CC       tests/argv_t-argv.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
  CC       tests/argv_t-log_stub.o
  CC       tests_argv_t-argv.o
  CC       tests_argv_t-string.o
  CC       tests_argv_t-hash.o
  CC       tests_argv_t-log.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
hash.c: In function 'w_hash_bytes':
hash.c:228:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  228 |       case 12: c+=((uint32_t)k[11])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:229:7: note: here
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |       ^~~~
hash.c:229:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:230:7: note: here
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |       ^~~~
hash.c:230:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:231:7: note: here
  231 |       case 9 : c+=k[8];
      |       ^~~~
hash.c:231:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  231 |       case 9 : c+=k[8];
      |                ~^~~~~~
hash.c:232:7: note: here
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |       ^~~~
hash.c:232:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:233:7: note: here
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |       ^~~~
hash.c:233:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:234:7: note: here
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |       ^~~~
hash.c:234:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:235:7: note: here
  235 |       case 5 : b+=k[4];
      |       ^~~~
hash.c:235:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  235 |       case 5 : b+=k[4];
      |                ~^~~~~~
hash.c:236:7: note: here
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |       ^~~~
hash.c:236:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:237:7: note: here
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |       ^~~~
hash.c:237:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:238:7: note: here
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |       ^~~~
hash.c:238:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:239:7: note: here
  239 |       case 1 : a+=k[0];
      |       ^~~~
  CC       tests/bser_t-bser.o
  CC       tests/bser_t-log_stub.o
  CC       tests_bser_t-bser.o
  CC       tests_bser_t-string.o
  CC       tests_bser_t-hash.o
hash.c: In function 'w_hash_bytes':
hash.c:228:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  228 |       case 12: c+=((uint32_t)k[11])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:229:7: note: here
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |       ^~~~
hash.c:229:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:230:7: note: here
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |       ^~~~
hash.c:230:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:231:7: note: here
  231 |       case 9 : c+=k[8];
      |       ^~~~
hash.c:231:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  231 |       case 9 : c+=k[8];
      |                ~^~~~~~
hash.c:232:7: note: here
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |       ^~~~
hash.c:232:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:233:7: note: here
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |       ^~~~
hash.c:233:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:234:7: note: here
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |       ^~~~
hash.c:234:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:235:7: note: here
  235 |       case 5 : b+=k[4];
      |       ^~~~
hash.c:235:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  235 |       case 5 : b+=k[4];
      |                ~^~~~~~
hash.c:236:7: note: here
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |       ^~~~
hash.c:236:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:237:7: note: here
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |       ^~~~
hash.c:237:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:238:7: note: here
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |       ^~~~
hash.c:238:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:239:7: note: here
  239 |       case 1 : a+=k[0];
      |       ^~~~
  CC       tests_bser_t-log.o
  CC       tests/ignore_t-ignore_test.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
  CC       tests/ignore_t-log_stub.o
  CC       tests_ignore_t-hash.o
  CC       tests_ignore_t-ht.o
  CC       tests_ignore_t-ignore.o
hash.c: In function 'w_hash_bytes':
hash.c:228:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  228 |       case 12: c+=((uint32_t)k[11])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:229:7: note: here
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |       ^~~~
hash.c:229:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:230:7: note: here
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |       ^~~~
hash.c:230:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:231:7: note: here
  231 |       case 9 : c+=k[8];
      |       ^~~~
hash.c:231:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  231 |       case 9 : c+=k[8];
      |                ~^~~~~~
hash.c:232:7: note: here
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |       ^~~~
hash.c:232:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:233:7: note: here
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |       ^~~~
hash.c:233:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:234:7: note: here
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |       ^~~~
hash.c:234:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:235:7: note: here
  235 |       case 5 : b+=k[4];
      |       ^~~~
hash.c:235:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  235 |       case 5 : b+=k[4];
      |                ~^~~~~~
hash.c:236:7: note: here
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |       ^~~~
hash.c:236:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:237:7: note: here
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |       ^~~~
hash.c:237:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:238:7: note: here
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |       ^~~~
hash.c:238:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:239:7: note: here
  239 |       case 1 : a+=k[0];
      |       ^~~~
  CC       tests_ignore_t-string.o
  CC       tests_ignore_t-log.o
  CC       tests/pending_t-pending_test.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
  CC       tests/pending_t-log_stub.o
  CC       tests_pending_t-hash.o
  CC       tests_pending_t-ht.o
hash.c: In function 'w_hash_bytes':
hash.c:228:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  228 |       case 12: c+=((uint32_t)k[11])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:229:7: note: here
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |       ^~~~
hash.c:229:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:230:7: note: here
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |       ^~~~
hash.c:230:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:231:7: note: here
  231 |       case 9 : c+=k[8];
      |       ^~~~
hash.c:231:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  231 |       case 9 : c+=k[8];
      |                ~^~~~~~
hash.c:232:7: note: here
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |       ^~~~
hash.c:232:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:233:7: note: here
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |       ^~~~
hash.c:233:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:234:7: note: here
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |       ^~~~
hash.c:234:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:235:7: note: here
  235 |       case 5 : b+=k[4];
      |       ^~~~
hash.c:235:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  235 |       case 5 : b+=k[4];
      |                ~^~~~~~
hash.c:236:7: note: here
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |       ^~~~
hash.c:236:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:237:7: note: here
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |       ^~~~
hash.c:237:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:238:7: note: here
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |       ^~~~
hash.c:238:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:239:7: note: here
  239 |       case 1 : a+=k[0];
      |       ^~~~
  CC       tests_pending_t-ignore.o
  CC       tests_pending_t-pending.o
  CC       tests_pending_t-expflags.o
  CC       tests_pending_t-opendir.o
opendir.c: In function 'realpath_fd':
opendir.c:190:28: warning: unused parameter 'fd' [-Wunused-parameter]
  190 | static int realpath_fd(int fd, char *canon, size_t canon_size) {
      |                        ~~~~^~
  CC       tests_pending_t-cfg.o
  CC       tests_pending_t-time.o
  CC       tests_pending_t-string.o
  CC       tests_pending_t-log.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
  CC       tests/log_t-log.o
  CC       tests_log_t-log.o
  CC       tests/wildmatch_t-wildmatch_test.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
  CC       tests/wildmatch_t-log_stub.o
  CC       tests_wildmatch_t-string.o
  CC       tests_wildmatch_t-hash.o
  CC       tests_wildmatch_t-log.o
hash.c: In function 'w_hash_bytes':
hash.c:228:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  228 |       case 12: c+=((uint32_t)k[11])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:229:7: note: here
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |       ^~~~
hash.c:229:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  229 |       case 11: c+=((uint32_t)k[10])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~~
hash.c:230:7: note: here
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |       ^~~~
hash.c:230:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  230 |       case 10: c+=((uint32_t)k[9])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:231:7: note: here
  231 |       case 9 : c+=k[8];
      |       ^~~~
hash.c:231:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  231 |       case 9 : c+=k[8];
      |                ~^~~~~~
hash.c:232:7: note: here
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |       ^~~~
hash.c:232:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  232 |       case 8 : b+=((uint32_t)k[7])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:233:7: note: here
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |       ^~~~
hash.c:233:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  233 |       case 7 : b+=((uint32_t)k[6])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:234:7: note: here
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |       ^~~~
hash.c:234:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  234 |       case 6 : b+=((uint32_t)k[5])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:235:7: note: here
  235 |       case 5 : b+=k[4];
      |       ^~~~
hash.c:235:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  235 |       case 5 : b+=k[4];
      |                ~^~~~~~
hash.c:236:7: note: here
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |       ^~~~
hash.c:236:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  236 |       case 4 : a+=((uint32_t)k[3])<<24;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:237:7: note: here
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |       ^~~~
hash.c:237:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  237 |       case 3 : a+=((uint32_t)k[2])<<16;
      |                ~^~~~~~~~~~~~~~~~~~~~~~
hash.c:238:7: note: here
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |       ^~~~
hash.c:238:17: warning: this statement may fall through [-Wimplicit-fallthrough=]
  238 |       case 2 : a+=((uint32_t)k[1])<<8;
      |                ~^~~~~~~~~~~~~~~~~~~~~
hash.c:239:7: note: here
  239 |       case 1 : a+=k[0];
      |       ^~~~
  CC       cmds/watchman-find.o
log.c: In function 'crash_handler':
log.c:78:5: warning: implicit declaration of function 'dprintf'; did you mean 'vprintf'? [-Wimplicit-function-declaration]
   78 |     dprintf(STDERR_FILENO,
      |     ^~~~~~~
      |     vprintf
  CC       cmds/watchman-info.o
  CC       cmds/watchman-log.o
  CC       cmds/watchman-query.o
  CC       cmds/watchman-since.o
  CC       cmds/watchman-reg.o
  CC       cmds/watchman-state.o
  CC       cmds/watchman-subscribe.o
  CC       cmds/watchman-trigger.o
  CC       cmds/watchman-watch.o
  CC       cmds/watchman-debug.o
  CC       query/watchman-base.o
  CC       query/watchman-dirname.o
  CC       query/watchman-parse.o
  CC       query/watchman-eval.o
  CC       query/watchman-glob.o
  CC       query/watchman-intcompare.o
  CC       query/watchman-type.o
  CC       query/watchman-suffix.o
  CC       query/watchman-match.o
  CC       query/watchman-pcre.o
  CC       query/watchman-name.o
  CC       query/watchman-fieldlist.o
  CC       query/watchman-since.o
  CC       query/watchman-empty.o
  CC       watcher/watchman-auto.o
  CC       watcher/watchman-fsevents.o
  CC       watcher/watchman-inotify.o
  CC       watcher/watchman-kqueue.o
  CC       watcher/watchman-portfs.o
watcher/inotify.c:22:4: error: 'IN_ACCESS' undeclared here (not in a function); did you mean 'AT_EACCESS'?
   22 |   {IN_ACCESS, "IN_ACCESS"},
      |    ^~~~~~~~~
      |    AT_EACCESS
watcher/inotify.c:23:4: error: 'IN_MODIFY' undeclared here (not in a function)
   23 |   {IN_MODIFY, "IN_MODIFY"},
      |    ^~~~~~~~~
watcher/inotify.c:24:4: error: 'IN_ATTRIB' undeclared here (not in a function); did you mean 'FILE_ATTRIB'?
   24 |   {IN_ATTRIB, "IN_ATTRIB"},
      |    ^~~~~~~~~
      |    FILE_ATTRIB
watcher/inotify.c:25:4: error: 'IN_CLOSE_WRITE' undeclared here (not in a function)
   25 |   {IN_CLOSE_WRITE, "IN_CLOSE_WRITE"},
      |    ^~~~~~~~~~~~~~
watcher/inotify.c:26:4: error: 'IN_CLOSE_NOWRITE' undeclared here (not in a function)
   26 |   {IN_CLOSE_NOWRITE, "IN_CLOSE_NOWRITE"},
      |    ^~~~~~~~~~~~~~~~
watcher/inotify.c:27:4: error: 'IN_OPEN' undeclared here (not in a function)
   27 |   {IN_OPEN, "IN_OPEN"},
      |    ^~~~~~~
watcher/inotify.c:28:4: error: 'IN_MOVED_FROM' undeclared here (not in a function)
   28 |   {IN_MOVED_FROM, "IN_MOVED_FROM"},
      |    ^~~~~~~~~~~~~
watcher/inotify.c:29:4: error: 'IN_MOVED_TO' undeclared here (not in a function)
   29 |   {IN_MOVED_TO, "IN_MOVED_TO"},
      |    ^~~~~~~~~~~
watcher/inotify.c:30:4: error: 'IN_CREATE' undeclared here (not in a function); did you mean 'O_CREAT'?
   30 |   {IN_CREATE, "IN_CREATE"},
      |    ^~~~~~~~~
      |    O_CREAT
watcher/inotify.c:31:4: error: 'IN_DELETE' undeclared here (not in a function); did you mean 'FILE_DELETE'?
   31 |   {IN_DELETE, "IN_DELETE"},
      |    ^~~~~~~~~
      |    FILE_DELETE
watcher/inotify.c:32:4: error: 'IN_DELETE_SELF' undeclared here (not in a function)
   32 |   {IN_DELETE_SELF, "IN_DELETE_SELF"},
      |    ^~~~~~~~~~~~~~
watcher/inotify.c:33:4: error: 'IN_MOVE_SELF' undeclared here (not in a function)
   33 |   {IN_MOVE_SELF, "IN_MOVE_SELF"},
      |    ^~~~~~~~~~~~
watcher/inotify.c:34:4: error: 'IN_UNMOUNT' undeclared here (not in a function); did you mean 'NMOUNT'?
   34 |   {IN_UNMOUNT, "IN_UNMOUNT"},
      |    ^~~~~~~~~~
      |    NMOUNT
watcher/inotify.c:35:4: error: 'IN_Q_OVERFLOW' undeclared here (not in a function); did you mean 'EOVERFLOW'?
   35 |   {IN_Q_OVERFLOW, "IN_Q_OVERFLOW"},
      |    ^~~~~~~~~~~~~
      |    EOVERFLOW
watcher/inotify.c:36:4: error: 'IN_IGNORED' undeclared here (not in a function)
   36 |   {IN_IGNORED, "IN_IGNORED"},
      |    ^~~~~~~~~~
watcher/inotify.c:37:4: error: 'IN_ISDIR' undeclared here (not in a function); did you mean 'S_ISDIR'?
   37 |   {IN_ISDIR, "IN_ISDIR"},
      |    ^~~~~~~~
      |    S_ISDIR
watcher/inotify.c:59:44: error: invalid application of 'sizeof' to incomplete type 'struct inotify_event'
   59 |   char ibuf[WATCHMAN_BATCH_LIMIT * (sizeof(struct inotify_event) + 256)];
      |                                            ^~~~~~
watcher/inotify.c: In function 'inot_root_init':
watcher/inotify.c:119:17: warning: implicit declaration of function 'inotify_init1' [-Wimplicit-function-declaration]
  119 |   state->infd = inotify_init1(IN_CLOEXEC);
      |                 ^~~~~~~~~~~~~
watcher/inotify.c:119:31: error: 'IN_CLOEXEC' undeclared (first use in this function); did you mean 'O_CLOEXEC'?
  119 |   state->infd = inotify_init1(IN_CLOEXEC);
      |                               ^~~~~~~~~~
      |                               O_CLOEXEC
watcher/inotify.c:119:31: note: each undeclared identifier is reported only once for each function it appears in
watcher/inotify.c: In function 'inot_root_start_watch_dir':
watcher/inotify.c:207:11: warning: implicit declaration of function 'inotify_add_watch' [-Wimplicit-function-declaration]
  207 |   newwd = inotify_add_watch(state->infd, path, WATCHMAN_INOTIFY_MASK);
      |           ^~~~~~~~~~~~~~~~~
watcher/inotify.c:19:17: error: 'IN_DONT_FOLLOW' undeclared (first use in this function)
   19 |   IN_MOVED_TO | IN_DONT_FOLLOW | IN_ONLYDIR | WATCHMAN_IN_EXCL_UNLINK
      |                 ^~~~~~~~~~~~~~
watcher/inotify.c:207:48: note: in expansion of macro 'WATCHMAN_INOTIFY_MASK'
  207 |   newwd = inotify_add_watch(state->infd, path, WATCHMAN_INOTIFY_MASK);
      |                                                ^~~~~~~~~~~~~~~~~~~~~
watcher/inotify.c:19:34: error: 'IN_ONLYDIR' undeclared (first use in this function)
   19 |   IN_MOVED_TO | IN_DONT_FOLLOW | IN_ONLYDIR | WATCHMAN_IN_EXCL_UNLINK
      |                                  ^~~~~~~~~~
watcher/inotify.c:207:48: note: in expansion of macro 'WATCHMAN_INOTIFY_MASK'
  207 |   newwd = inotify_add_watch(state->infd, path, WATCHMAN_INOTIFY_MASK);
      |                                                ^~~~~~~~~~~~~~~~~~~~~
watcher/inotify.c: In function 'process_inotify_event':
watcher/inotify.c:252:30: error: invalid use of undefined type 'struct inotify_event'
  252 |   w_expand_flags(inflags, ine->mask, flags_label, sizeof(flags_label));
      |                              ^~
watcher/inotify.c:253:58: error: invalid use of undefined type 'struct inotify_event'
  253 |   w_log(W_LOG_DBG, "notify: wd=%d mask=0x%x %s %s\n", ine->wd, ine->mask,
      |                                                          ^~
watcher/inotify.c:253:67: error: invalid use of undefined type 'struct inotify_event'
  253 |   w_log(W_LOG_DBG, "notify: wd=%d mask=0x%x %s %s\n", ine->wd, ine->mask,
      |                                                                   ^~
watcher/inotify.c:254:23: error: invalid use of undefined type 'struct inotify_event'
  254 |       flags_label, ine->len > 0 ? ine->name : "");
      |                       ^~
watcher/inotify.c:254:38: error: invalid use of undefined type 'struct inotify_event'
  254 |       flags_label, ine->len > 0 ? ine->name : "");
      |                                      ^~
watcher/inotify.c:256:10: error: invalid use of undefined type 'struct inotify_event'
  256 |   if (ine->wd == -1 && (ine->mask & IN_Q_OVERFLOW)) {
      |          ^~
watcher/inotify.c:256:28: error: invalid use of undefined type 'struct inotify_event'
  256 |   if (ine->wd == -1 && (ine->mask & IN_Q_OVERFLOW)) {
      |                            ^~
watcher/inotify.c:259:17: error: invalid use of undefined type 'struct inotify_event'
  259 |   } else if (ine->wd != -1) {
      |                 ^~
watcher/inotify.c:266:60: error: invalid use of undefined type 'struct inotify_event'
  266 |     dir_name = w_ht_val_ptr(w_ht_get(state->wd_to_name, ine->wd));
      |                                                            ^~
watcher/inotify.c:273:14: error: invalid use of undefined type 'struct inotify_event'
  273 |       if (ine->len > 0) {
      |              ^~
watcher/inotify.c:276:16: error: invalid use of undefined type 'struct inotify_event'
  276 |             ine->name);
      |                ^~
watcher/inotify.c:284:12: error: invalid use of undefined type 'struct inotify_event'
  284 |     if (ine->len > 0 && (ine->mask & (IN_MOVED_FROM|IN_ISDIR))
      |            ^~
watcher/inotify.c:284:29: error: invalid use of undefined type 'struct inotify_event'
  284 |     if (ine->len > 0 && (ine->mask & (IN_MOVED_FROM|IN_ISDIR))
      |                             ^~
watcher/inotify.c:294:45: error: invalid use of undefined type 'struct inotify_event'
  294 |       if (!w_ht_replace(state->move_map, ine->cookie, w_ht_ptr_val(&mv))) {
      |                                             ^~
watcher/inotify.c:297:16: error: invalid use of undefined type 'struct inotify_event'
  297 |             ine->cookie, name->buf);
      |                ^~
watcher/inotify.c:302:54: error: invalid use of undefined type 'struct inotify_event'
  302 |           "recording move_from %" PRIx32 " %s\n", ine->cookie,
      |                                                      ^~
watcher/inotify.c:306:12: error: invalid use of undefined type 'struct inotify_event'
  306 |     if (ine->len > 0 && (ine->mask & (IN_MOVED_TO|IN_ISDIR))
      |            ^~
watcher/inotify.c:306:29: error: invalid use of undefined type 'struct inotify_event'
  306 |     if (ine->len > 0 && (ine->mask & (IN_MOVED_TO|IN_ISDIR))
      |                             ^~
watcher/inotify.c:311:55: error: invalid use of undefined type 'struct inotify_event'
  311 |       old = w_ht_val_ptr(w_ht_get(state->move_map, ine->cookie));
      |                                                       ^~
watcher/inotify.c:19:17: error: 'IN_DONT_FOLLOW' undeclared (first use in this function)
   19 |   IN_MOVED_TO | IN_DONT_FOLLOW | IN_ONLYDIR | WATCHMAN_IN_EXCL_UNLINK
      |                 ^~~~~~~~~~~~~~
watcher/inotify.c:314:21: note: in expansion of macro 'WATCHMAN_INOTIFY_MASK'
  314 |                     WATCHMAN_INOTIFY_MASK);
      |                     ^~~~~~~~~~~~~~~~~~~~~
watcher/inotify.c:19:34: error: 'IN_ONLYDIR' undeclared (first use in this function)
   19 |   IN_MOVED_TO | IN_DONT_FOLLOW | IN_ONLYDIR | WATCHMAN_IN_EXCL_UNLINK
      |                                  ^~~~~~~~~~
watcher/inotify.c:314:21: note: in expansion of macro 'WATCHMAN_INOTIFY_MASK'
  314 |                     WATCHMAN_INOTIFY_MASK);
      |                     ^~~~~~~~~~~~~~~~~~~~~
watcher/inotify.c:330:16: error: invalid use of undefined type 'struct inotify_event'
  330 |             ine->cookie, name->buf);
      |                ^~
watcher/inotify.c:336:15: error: invalid use of undefined type 'struct inotify_event'
  336 |       if ((ine->mask & (IN_UNMOUNT|IN_IGNORED|IN_DELETE_SELF|IN_MOVE_SELF))) {
      |               ^~
watcher/inotify.c:352:16: error: invalid use of undefined type 'struct inotify_event'
  352 |             ine->mask, pname->len, pname->buf);
      |                ^~
watcher/inotify.c:358:14: error: invalid use of undefined type 'struct inotify_event'
  358 |       if (ine->mask & (IN_CREATE|IN_DELETE)) {
      |              ^~
watcher/inotify.c:363:14: error: invalid use of undefined type 'struct inotify_event'
  363 |           ine->mask, name->len, name->buf);
      |              ^~
watcher/inotify.c:370:15: error: invalid use of undefined type 'struct inotify_event'
  370 |       if ((ine->mask & IN_IGNORED) != 0) {
      |               ^~
watcher/inotify.c:371:64: error: invalid use of undefined type 'struct inotify_event'
  371 |         w_log(W_LOG_DBG, "mask=%x: remove watch %d %.*s\n", ine->mask,
      |                                                                ^~
watcher/inotify.c:372:16: error: invalid use of undefined type 'struct inotify_event'
  372 |             ine->wd, dir_name->len, dir_name->buf);
      |                ^~
watcher/inotify.c:374:40: error: invalid use of undefined type 'struct inotify_event'
  374 |         w_ht_del(state->wd_to_name, ine->wd);
      |                                        ^~
watcher/inotify.c:380:20: error: invalid use of undefined type 'struct inotify_event'
  380 |     } else if ((ine->mask & (IN_MOVE_SELF|IN_IGNORED)) == 0) {
      |                    ^~
watcher/inotify.c:385:14: error: invalid use of undefined type 'struct inotify_event'
  385 |           ine->wd, ine->mask, ine->len, ine->name);
      |              ^~
watcher/inotify.c:385:23: error: invalid use of undefined type 'struct inotify_event'
  385 |           ine->wd, ine->mask, ine->len, ine->name);
      |                       ^~
watcher/inotify.c:385:34: error: invalid use of undefined type 'struct inotify_event'
  385 |           ine->wd, ine->mask, ine->len, ine->name);
      |                                  ^~
watcher/inotify.c:385:44: error: invalid use of undefined type 'struct inotify_event'
  385 |           ine->wd, ine->mask, ine->len, ine->name);
      |                                            ^~
watcher/inotify.c: In function 'inot_root_consume_notify':
watcher/inotify.c:413:27: error: invalid application of 'sizeof' to incomplete type 'struct inotify_event'
  413 |       iptr = iptr + sizeof(*ine) + ine->len) {
      |                           ^
watcher/inotify.c:413:39: error: invalid use of undefined type 'struct inotify_event'
  413 |       iptr = iptr + sizeof(*ine) + ine->len) {
      |                                       ^~
watcher/portfs.c: In function 'portfs_root_start_watch_file':
watcher/portfs.c:174:40: error: 'struct watchman_dir' has no member named 'path'
  174 |   name = w_string_path_cat(file->parent->path, file->name);
      |                                        ^~
watcher/portfs.c:174:52: error: 'struct watchman_file' has no member named 'name'
  174 |   name = w_string_path_cat(file->parent->path, file->name);
      |                                                    ^~
watcher/portfs.c:178:42: error: 'struct watchman_file' has no member named 'st'; did you mean 'stat'?
  178 |   success = do_watch(state, name, &file->st);
      |                                          ^~
      |                                          stat
watcher/portfs.c: In function 'portfs_root_start_watch_dir':
watcher/portfs.c:205:19: warning: passing argument 1 of 'dirfd' from incompatible pointer type [-Wincompatible-pointer-types]
  205 |   if (fstat(dirfd(osdir), &st) == -1) {
      |                   ^~~~~
      |                   |
      |                   struct watchman_dir_handle *
In file included from ./watchman.h:39,
                 from watcher/portfs.c:4:
/usr/include/dirent.h:102:31: note: expected 'DIR *' but argument is of type 'struct watchman_dir_handle *'
  102 | extern int              dirfd(DIR *);
      |                               ^~~~~
gmake[1]: *** [Makefile:2955: watcher/watchman-inotify.o] Error 1
gmake[1]: *** Waiting for unfinished jobs....
watcher/portfs.c:209:29: error: 'root' undeclared (first use in this function); did you mean 'chroot'?
  209 |     w_root_schedule_recrawl(root, "fstat failed");
      |                             ^~~~
      |                             chroot
watcher/portfs.c:209:29: note: each undeclared identifier is reported only once for each function it appears in
gmake[1]: *** [Makefile:2983: watcher/watchman-portfs.o] Error 1
gmake[1]: Leaving directory '/home/pbulk/build/sysutils/watchman/work/watchman-4.7.0'
gmake: *** [Makefile:986: all] Error 2
*** Error code 2

Stop.
bmake[1]: stopped making "all" in /data/jenkins/workspace/pkgsrc-trunk-x86_64/sysutils/watchman
*** Error code 1

Stop.
bmake: stopped making "all" in /data/jenkins/workspace/pkgsrc-trunk-x86_64/sysutils/watchman