+ case "${usergroup_phase}" in
+ local run_cmd
+ run_cmd=run_su
+ shift
+ run_su /opt/pkg/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/ve-1.0/work.log
+ su pbulk -c '"$@"' make /opt/pkg/bin/bmake all BATCH=1 DEPENDS_TARGET=/nonexistent WRKLOG=/tmp/bulklog/ve-1.0/work.log
=> Bootstrap dependency digest>=20211023: found digest-20220214
WARNING: [license.mk] Every package should define a LICENSE.
===> Building for ve-1.0
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -I/opt/pkg/include/ncurses -c edit.c
edit.c: In function 'indigestion':
edit.c:59:1: warning: type of 'i' defaults to 'int' [-Wimplicit-int]
   59 | indigestion(i)
      | ^~~~~~~~~~~
edit.c: In function 'n2ansi':
edit.c:97:12: warning: type defaults to 'int' in declaration of 'ansix' [-Wimplicit-int]
   97 |   register ansix = 0;
      |            ^~~~~
edit.c: In function 'edit_msg':
edit.c:134:3: warning: implicit declaration of function 'move'; did you mean 'remove'? [-Wimplicit-function-declaration]
  134 |   move(b_lines, 0);
      |   ^~~~
      |   remove
edit.c:135:3: warning: implicit declaration of function 'clrtoeol' [-Wimplicit-function-declaration]
  135 |   clrtoeol();
      |   ^~~~~~~~
edit.c:136:3: warning: implicit declaration of function 'prints'; did you mean 'printf'? [-Wimplicit-function-declaration]
  136 |   prints("\033[%sm  編輯文章  \033[31;47m  (Ctrl-G)\033[30m 線上輔助說明  \033[31m(^X,^Q)\033[30m 檔案處理 ║%s│%c%c%c%c║ %3d:%3d  \033[m",
      |   ^~~~~~
      |   printf
edit.c: In function 'alloc_line':
edit.c:221:3: warning: implicit declaration of function 'abort_bbs' [-Wimplicit-function-declaration]
  221 |   abort_bbs();
      |   ^~~~~~~~~
edit.c: At top level:
edit.c:280:1: warning: return type defaults to 'int' [-Wimplicit-int]
  280 | undelete_line()
      | ^~~~~~~~~~~~~
edit.c: In function 'undelete_line':
edit.c:296:4: warning: implicit declaration of function 'insert_string' [-Wimplicit-function-declaration]
  296 |    insert_string(deleted_lines->data);
      |    ^~~~~~~~~~~~~
edit.c: At top level:
edit.c:468:1: warning: return type defaults to 'int' [-Wimplicit-int]
  468 | insert_string(str)
      | ^~~~~~~~~~~~~
edit.c: In function 'insert_string':
edit.c:477:9: warning: implicit declaration of function 'isprint2'; did you mean 'isprint'? [-Wimplicit-function-declaration]
  477 |     if (isprint2(ch) || ch == '')
      |         ^~~~~~~~
      |         isprint
edit.c: In function 'ask_tmpbuf':
edit.c:547:10: warning: implicit declaration of function 'getdata'; did you mean 'getdate'? [-Wimplicit-function-declaration]
  547 |     if (!getdata(3, 0, msg, fp_buf + 4, 4, DOECHO))
      |          ^~~~~~~
      |          getdate
edit.c: In function 'read_tmpbuf':
edit.c:572:3: warning: implicit declaration of function 'setuserfile'; did you mean 'setusershell'? [-Wimplicit-function-declaration]
  572 |   setuserfile(fp_tmpbuf, tmpf);
      |   ^~~~~~~~~~~
      |   setusershell
edit.c:577:27: warning: implicit declaration of function 'more' [-Wimplicit-function-declaration]
  577 |   if (n != 0 && n != 5 && more(fp_tmpbuf, NA) != -1)
      |                           ^~~~
edit.c: In function 'write_tmpbuf':
edit.c:602:7: warning: implicit declaration of function 'dashf' [-Wimplicit-function-declaration]
  602 |   if (dashf(fp_tmpbuf))
      |       ^~~~~
edit.c: In function 'restore_backup':
edit.c:677:5: warning: implicit declaration of function 'stand_title' [-Wimplicit-function-declaration]
  677 |     stand_title("編輯器自動復原");
      |     ^~~~~~~~~~~
edit.c: In function 'write_file':
edit.c:730:5: warning: implicit declaration of function 'outs'; did you mean 'puts'? [-Wimplicit-function-declaration]
  730 |     outs("文章 沒有 存入");
      |     ^~~~
      |     puts
edit.c:782:9: warning: implicit declaration of function 'trim' [-Wimplicit-function-declaration]
  782 |         trim(line);
      |         ^~~~
edit.c:796:6: warning: implicit declaration of function 'convert' [-Wimplicit-function-declaration]
  796 |      convert(FPath);
      |      ^~~~~~~
edit.c: At top level:
edit.c:805:1: warning: return type defaults to 'int' [-Wimplicit-int]
  805 | edit_outs(text)
      | ^~~~~~~~~
edit.c: In function 'edit_outs':
edit.c:813:5: warning: implicit declaration of function 'outch' [-Wimplicit-function-declaration]
  813 |     outch(ch == 27 ? '*' : ch);
      |     ^~~~~
edit.c: At top level:
edit.c:817:1: warning: return type defaults to 'int' [-Wimplicit-int]
  817 | block_outs(char* text, int column)
      | ^~~~~~~~~~
edit.c: In function 'show_help':
edit.c:937:3: warning: implicit declaration of function 'clear' [-Wimplicit-function-declaration]
  937 |   clear();
      |   ^~~~~
edit.c: At top level:
edit.c:959:1: warning: return type defaults to 'int' [-Wimplicit-int]
  959 | goto_line(int lino)
      | ^~~~~~~~~
edit.c:1022:1: warning: return type defaults to 'int' [-Wimplicit-int]
 1022 | search_str(int mode)
      | ^~~~~~~~~~
edit.c:1237:1: warning: return type defaults to 'int' [-Wimplicit-int]
 1237 | block_del(int hide)
      | ^~~~~~~~~
edit.c:1382:1: warning: return type defaults to 'int' [-Wimplicit-int]
 1382 | block_shift_left()
      | ^~~~~~~~~~~~~~~~
edit.c:1411:1: warning: return type defaults to 'int' [-Wimplicit-int]
 1411 | block_shift_right()
      | ^~~~~~~~~~~~~~~~~
edit.c:1445:1: warning: return type defaults to 'int' [-Wimplicit-int]
 1445 | transform_to_color(char* line)
      | ^~~~~~~~~~~~~~~~~~
edit.c:1458:1: warning: return type defaults to 'int' [-Wimplicit-int]
 1458 | block_color()
      | ^~~~~~~~~~~
edit.c: In function 'vedit':
edit.c:1535:10: warning: implicit declaration of function 'igetkey'; did you mean 'setkey'? [-Wimplicit-function-declaration]
 1535 |     ch = igetkey();
      |          ^~~~~~~
      |          setkey
edit.c:1625:14: warning: implicit declaration of function 'ask'; did you mean 'umask'? [-Wimplicit-function-declaration]
 1625 |         ch = ask("結束但不儲存 (Y/N)? [N]: ");
      |              ^~~
      |              umask
edit.c:1892:9: warning: implicit declaration of function 'refresh' [-Wimplicit-function-declaration]
 1892 |         refresh();
      |         ^~~~~~~
edit.c:1893:9: warning: implicit declaration of function 'reset_tty' [-Wimplicit-function-declaration]
 1893 |         reset_tty();
      |         ^~~~~~~~~
edit.c:1895:9: warning: implicit declaration of function 'restore_tty' [-Wimplicit-function-declaration]
 1895 |         restore_tty();
      |         ^~~~~~~~~~~
edit.c:2197:11: warning: implicit declaration of function 'rscroll' [-Wimplicit-function-declaration]
 2197 |           rscroll();
      |           ^~~~~~~
edit.c:2212:11: warning: implicit declaration of function 'scroll'; did you mean 'strcoll'? [-Wimplicit-function-declaration]
 2212 |           scroll();
      |           ^~~~~~
      |           strcoll
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -I/opt/pkg/include/ncurses -c term.c
term.c: In function 'get_tty':
term.c:52:7: warning: implicit declaration of function 'gtty' [-Wimplicit-function-declaration]
   52 |   if (gtty (1, &tty_state) < 0)
      |       ^~~~
term.c: In function 'init_tty':
term.c:86:3: warning: implicit declaration of function 'stty' [-Wimplicit-function-declaration]
   86 |   stty(1, &tty_new);
      |   ^~~~
term.c: In function 'term_init':
term.c:185:7: warning: implicit declaration of function 'tgetent'; did you mean 'getenv'? [-Wimplicit-function-declaration]
  185 |   if (tgetent(buf, term) != 1)
      |       ^~~~~~~
      |       getenv
term.c:193:13: warning: implicit declaration of function 'tgetnum' [-Wimplicit-function-declaration]
  193 |   t_lines = tgetnum("li");
      |             ^~~~~~~
term.c:195:17: warning: implicit declaration of function 'tgetflag' [-Wimplicit-function-declaration]
  195 |   automargins = tgetflag("am");
      |                 ^~~~~~~~
term.c:203:5: warning: implicit declaration of function 'tputs'; did you mean 'puts'? [-Wimplicit-function-declaration]
  203 |     tputs(s, t_lines, outcf);
      |     ^~~~~
      |     puts
term.c: In function 'do_move':
term.c:265:9: warning: implicit declaration of function 'tgoto' [-Wimplicit-function-declaration]
  265 |   tputs(tgoto(cm, destcol, destline), 0, ochar);
      |         ^~~~~
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -I/opt/pkg/include/ncurses -c screen.c
screen.c: In function 'initscr':
screen.c:49:18: warning: conflicting types for built-in function 'calloc'; expected 'void *(long unsigned int,  long unsigned int)' [-Wbuiltin-declaration-mismatch]
   49 |     extern char *calloc();
      |                  ^~~~~~
screen.c:11:1: note: 'calloc' is declared in header '<stdlib.h>'
   10 | #include "bbs.h"
  +++ |+#include <stdlib.h>
   11 | 
screen.c: In function 'move':
screen.c:61:1: warning: type of 'y' defaults to 'int' [-Wimplicit-int]
   61 | move(y, x)
      | ^~~~
screen.c:61:1: warning: type of 'x' defaults to 'int' [-Wimplicit-int]
screen.c: In function 'rel_move':
screen.c:78:1: warning: type of 'was_col' defaults to 'int' [-Wimplicit-int]
   78 | rel_move(was_col, was_ln, new_col, new_ln)
      | ^~~~~~~~
screen.c:78:1: warning: type of 'was_ln' defaults to 'int' [-Wimplicit-int]
screen.c:78:1: warning: type of 'new_col' defaults to 'int' [-Wimplicit-int]
screen.c:78:1: warning: type of 'new_ln' defaults to 'int' [-Wimplicit-int]
screen.c:112:9: warning: implicit declaration of function 'tputs'; did you mean 'puts'? [-Wimplicit-function-declaration]
  112 |         tputs(BC, 1, ochar);
      |         ^~~~~
      |         puts
screen.c:118:3: warning: implicit declaration of function 'do_move' [-Wimplicit-function-declaration]
  118 |   do_move(new_col, new_ln);
      |   ^~~~~~~
screen.c: In function 'redoscr':
screen.c:190:3: warning: implicit declaration of function 'oflush'; did you mean 'fflush'? [-Wimplicit-function-declaration]
  190 |   oflush();
      |   ^~~~~~
      |   fflush
screen.c: In function 'refresh':
screen.c:204:7: warning: implicit declaration of function 'num_in_buf' [-Wimplicit-function-declaration]
  204 |   if (num_in_buf())
      |       ^~~~~~~~~~
screen.c:207:19: warning: implicit declaration of function 'abs' [-Wimplicit-function-declaration]
  207 |   if ((docls) || (abs(scrollcnt) >= (scr_lns - 3)))
      |                   ^~~
screen.c:207:19: note: include '<stdlib.h>' or provide a declaration of 'abs'
screen.c: In function 'outch':
screen.c:406:24: warning: implicit declaration of function 'isprint2'; did you mean 'isprint'? [-Wimplicit-function-declaration]
  406 |     if ((c != '') && !isprint2(c))
      |                        ^~~~~~~~
      |                        isprint
screen.c: In function 'parsecolor':
screen.c:506:9: warning: implicit declaration of function 'atoi' [-Wimplicit-function-declaration]
  506 |     if (atoi(val) < 30)
      |         ^~~~
screen.c: In function 'outc':
screen.c:562:29: warning: implicit declaration of function 'not_alpha' [-Wimplicit-function-declaration]
  562 |       else if ((p < 24) && (not_alpha(ch)))
      |                             ^~~~~~~~~
screen.c: At top level:
screen.c:584:1: warning: return type defaults to 'int' [-Wimplicit-int]
  584 | outs(str)
      | ^~~~
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -I/opt/pkg/include/ncurses -c stuff.c
stuff.c: In function 'strstr_lower':
stuff.c:165:10: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
  165 |   return (int) strstr(buf, tag);
      |          ^
stuff.c: In function 'pressanykey':
stuff.c:363:3: warning: implicit declaration of function 'outmsg' [-Wimplicit-function-declaration]
  363 |   outmsg("                        ● 請按 (Space/Return) 繼續 ●                       ");
      |   ^~~~~~
stuff.c:366:10: warning: implicit declaration of function 'igetkey' [-Wimplicit-function-declaration]
  366 |     ch = igetkey();
      |          ^~~~~~~
stuff.c:368:3: warning: implicit declaration of function 'move'; did you mean 'remove'? [-Wimplicit-function-declaration]
  368 |   move(b_lines, 0);
      |   ^~~~
      |   remove
stuff.c:369:3: warning: implicit declaration of function 'clrtoeol' [-Wimplicit-function-declaration]
  369 |   clrtoeol();
      |   ^~~~~~~~
stuff.c:370:3: warning: implicit declaration of function 'refresh' [-Wimplicit-function-declaration]
  370 |   refresh();
      |   ^~~~~~~
stuff.c: In function 'search_num':
stuff.c:382:1: warning: type of 'ch' defaults to 'int' [-Wimplicit-int]
  382 | search_num(ch, max)
      | ^~~~~~~~~~
stuff.c:382:1: warning: type of 'max' defaults to 'int' [-Wimplicit-int]
stuff.c:389:3: warning: implicit declaration of function 'outc'; did you mean 'putc'? [-Wimplicit-function-declaration]
  389 |   outc(ch);
      |   ^~~~
      |   putc
stuff.c:391:3: warning: implicit declaration of function 'getyx' [-Wimplicit-function-declaration]
  391 |   getyx(&y, &x);
      |   ^~~~~
stuff.c:393:16: warning: implicit declaration of function 'igetch'; did you mean 'getc'? [-Wimplicit-function-declaration]
  393 |   while ((ch = igetch()) != '\r')
      |                ^~~~~~
      |                getc
stuff.c:403:9: warning: implicit declaration of function 'bell'; did you mean 'tell'? [-Wimplicit-function-declaration]
  403 |         bell();
      |         ^~~~
      |         tell
stuff.c:430:10: warning: implicit declaration of function 'atoi' [-Wimplicit-function-declaration]
  430 |   clen = atoi(genbuf);
      |          ^~~~
stuff.c: In function 'stand_title':
stuff.c:443:3: warning: implicit declaration of function 'clear' [-Wimplicit-function-declaration]
  443 |   clear();
      |   ^~~~~
stuff.c:444:3: warning: implicit declaration of function 'prints'; did you mean 'printf'? [-Wimplicit-function-declaration]
  444 |   prints("【 %s 】\n", title);
      |   ^~~~~~
      |   printf
stuff.c: In function 'cursor_show':
stuff.c:455:3: warning: implicit declaration of function 'outs'; did you mean 'puts'? [-Wimplicit-function-declaration]
  455 |   outs(STR_CURSOR);
      |   ^~~~
      |   puts
stuff.c: In function 'printdash':
stuff.c:495:5: warning: implicit declaration of function 'outch' [-Wimplicit-function-declaration]
  495 |     outch('-');
      |     ^~~~~
stuff.c: At top level:
stuff.c:509:1: warning: return type defaults to 'int' [-Wimplicit-int]
  509 | more(char* fpath, int i)
      | ^~~~
stuff.c:522:1: warning: return type defaults to 'int' [-Wimplicit-int]
  522 | setuserfile(char* fpath, char* fname)
      | ^~~~~~~~~~~
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -I/opt/pkg/include/ncurses -c io.c
io.c: In function 'output':
io.c:131:1: warning: type of 'len' defaults to 'int' [-Wimplicit-int]
  131 | output(s, len)
      | ^~~~~~
io.c: In function 'ochar':
io.c:147:1: warning: type of 'c' defaults to 'int' [-Wimplicit-int]
  147 | ochar(c)
      | ^~~~~
io.c: In function 'igetch':
io.c:225:11: warning: implicit declaration of function 'refresh' [-Wimplicit-function-declaration]
  225 |           refresh();
      |           ^~~~~~~
io.c:263:5: warning: implicit declaration of function 'redoscr' [-Wimplicit-function-declaration]
  263 |     redoscr();
      |     ^~~~~~~
io.c: In function 'getdata':
io.c:374:5: warning: implicit declaration of function 'move'; did you mean 'remove'? [-Wimplicit-function-declaration]
  374 |     move(line, col);
      |     ^~~~
      |     remove
io.c:375:5: warning: implicit declaration of function 'clrtoeol' [-Wimplicit-function-declaration]
  375 |     clrtoeol();
      |     ^~~~~~~~
io.c:376:5: warning: implicit declaration of function 'edit_outs' [-Wimplicit-function-declaration]
  376 |     edit_outs(prompt);
      |     ^~~~~~~~~
io.c:393:11: warning: implicit declaration of function 'bell'; did you mean 'tell'? [-Wimplicit-function-declaration]
  393 |           bell();
      |           ^~~~
      |           tell
io.c:407:12: warning: implicit declaration of function 'isprint2'; did you mean 'isprint'? [-Wimplicit-function-declaration]
  407 |       if (!isprint2(ch))
      |            ^~~~~~~~
      |            isprint
io.c:428:5: warning: implicit declaration of function 'outc'; did you mean 'putc'? [-Wimplicit-function-declaration]
  428 |     outc('\n');
      |     ^~~~
      |     putc
io.c:438:5: warning: implicit declaration of function 'getyx' [-Wimplicit-function-declaration]
  438 |     getyx(&y, &x);
      |     ^~~~~
io.c:439:5: warning: implicit declaration of function 'standout'; did you mean 'stdout'? [-Wimplicit-function-declaration]
  439 |     standout();
      |     ^~~~~~~~
      |     stdout
io.c:442:5: warning: implicit declaration of function 'standend' [-Wimplicit-function-declaration]
  442 |     standend();
      |     ^~~~~~~~
io.c:445:41: warning: implicit declaration of function 'igetkey' [-Wimplicit-function-declaration]
  445 |     while (move(y, x + currchar), (ch = igetkey()) != '\r')
      |                                         ^~~~~~~
io.c: In function 'ask':
io.c:725:3: warning: implicit declaration of function 'prints'; did you mean 'printf'? [-Wimplicit-function-declaration]
  725 |   prints ("%s", prompt);
      |   ^~~~~~
      |   printf
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -I/opt/pkg/include/ncurses -c editor.c
editor.c:35:1: warning: return type defaults to 'int' [-Wimplicit-int]
   35 | bell()
      | ^~~~
editor.c:40:1: warning: return type defaults to 'int' [-Wimplicit-int]
   40 | abort_bbs()
      | ^~~~~~~~~
editor.c: In function 'abort_bbs':
editor.c:43:5: warning: implicit declaration of function 'reset_tty' [-Wimplicit-function-declaration]
   43 |     reset_tty() ;
      |     ^~~~~~~~~
editor.c:44:5: warning: implicit declaration of function 'exit' [-Wimplicit-function-declaration]
   44 |     exit(-1) ;
      |     ^~~~
editor.c:25:1: note: include '<stdlib.h>' or provide a declaration of 'exit'
   24 | #include "bbs.h"
  +++ |+#include <stdlib.h>
   25 | 
editor.c:44:5: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
   44 |     exit(-1) ;
      |     ^~~~
editor.c:44:5: note: include '<stdlib.h>' or provide a declaration of 'exit'
editor.c: At top level:
editor.c:47:1: warning: return type defaults to 'int' [-Wimplicit-int]
   47 | main(argc,argv)
      | ^~~~
editor.c: In function 'main':
editor.c:56:9: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
   56 |         exit(-1) ;
      |         ^~~~
editor.c:56:9: note: include '<stdlib.h>' or provide a declaration of 'exit'
editor.c:58:5: warning: implicit declaration of function 'get_tty' [-Wimplicit-function-declaration]
   58 |     get_tty() ;               /* get tty port mode settings */
      |     ^~~~~~~
editor.c:59:5: warning: implicit declaration of function 'init_tty' [-Wimplicit-function-declaration]
   59 |     init_tty() ;              /* set up mode for NOECHO and RAW */
      |     ^~~~~~~~
editor.c:63:9: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
   63 |         exit(-1) ;
      |         ^~~~
editor.c:63:9: note: include '<stdlib.h>' or provide a declaration of 'exit'
editor.c:72:9: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
   72 |         exit(-1) ;
      |         ^~~~
editor.c:72:9: note: include '<stdlib.h>' or provide a declaration of 'exit'
editor.c:74:5: warning: implicit declaration of function 'term_init' [-Wimplicit-function-declaration]
   74 |     term_init(term) ; /* Load up strings used to control terminal type 'term'*/
      |     ^~~~~~~~~
editor.c:78:9: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
   78 |         exit(-1) ;
      |         ^~~~
editor.c:78:9: note: include '<stdlib.h>' or provide a declaration of 'exit'
editor.c:80:5: warning: implicit declaration of function 'initscr' [-Wimplicit-function-declaration]
   80 |     initscr();                  /* Initialize screen interface */
      |     ^~~~~~~
editor.c:81:5: warning: implicit declaration of function 'vedit' [-Wimplicit-function-declaration]
   81 |     vedit(argv[argc-1],NA);     /* Start editor on file, do not save header */
      |     ^~~~~
editor.c:82:5: warning: implicit declaration of function 'clear' [-Wimplicit-function-declaration]
   82 |     clear();                    /* clear screen */
      |     ^~~~~
editor.c:83:5: warning: implicit declaration of function 'redoscr' [-Wimplicit-function-declaration]
   83 |     redoscr();                  /* make clear() happen */
      |     ^~~~~~~
editor.c:85:5: warning: incompatible implicit declaration of built-in function 'exit' [-Wbuiltin-declaration-mismatch]
   85 |     exit(0);
      |     ^~~~
editor.c:85:5: note: include '<stdlib.h>' or provide a declaration of 'exit'
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -I/opt/pkg/include/ncurses -c entab.c
entab.c: In function 'convert':
entab.c:44:4: warning: implicit declaration of function 'strcpy' [-Wimplicit-function-declaration]
   44 |    strcpy(foutname, filename);
      |    ^~~~~~
entab.c:9:1: note: include '<string.h>' or provide a declaration of 'strcpy'
    8 | #include <stdlib.h>
  +++ |+#include <string.h>
    9 | 
entab.c:44:4: warning: incompatible implicit declaration of built-in function 'strcpy' [-Wbuiltin-declaration-mismatch]
   44 |    strcpy(foutname, filename);
      |    ^~~~~~
entab.c:44:4: note: include '<string.h>' or provide a declaration of 'strcpy'
entab.c:45:4: warning: implicit declaration of function 'strcat' [-Wimplicit-function-declaration]
   45 |    strcat(foutname, "_tmp");
      |    ^~~~~~
entab.c:45:4: note: include '<string.h>' or provide a declaration of 'strcat'
entab.c:45:4: warning: incompatible implicit declaration of built-in function 'strcat' [-Wbuiltin-declaration-mismatch]
entab.c:45:4: note: include '<string.h>' or provide a declaration of 'strcat'
gcc -pipe -O2 -msave-args -fno-aggressive-loop-optimizations -I/opt/pkg/include/ncurses -DVEDITOR -o ve edit.o term.o screen.o stuff.o io.o editor.o entab.o -ltermcap -lcompat
ld: fatal: library -lncurses: not found
ld: fatal: file processing errors. No output written to ve
collect2: error: ld returned 1 exit status
*** [ve] Error code 1

bmake: stopped in /home/pbulk/build/editors/ve/work/ve-1.0
1 error

bmake: stopped in /home/pbulk/build/editors/ve/work/ve-1.0
*** Error code 2

Stop.
bmake[1]: stopped in /data/jenkins/workspace/pkgsrc-upstream-trunk/editors/ve
*** Error code 1

Stop.
bmake: stopped in /data/jenkins/workspace/pkgsrc-upstream-trunk/editors/ve