The build took 00h 00m 59s and was NOT successful.
The program in this build is written in the following languages, according to sloccount:
| SLOC | Language | 
|---|---|
4,203 | 
          ansic | 
22 | 
          makefile | 
4,225 | 
          total | 
The process tree of the build process is here.
Several sub-process invocations were improper; see the process tree for details. Summary:
    To avoid scrolling, you may jump to the last line of the
    invocation of makepkg that was used to build this
    package.
    
Removed vanilla repositories from pacman.conf and added:
        Copied permanent toolchain into container-local sysroot
        /toolchain_root/arm-linux-androideabi  -->  /sysroot/arm-linux-androideabi/toolchain_root/COPYING3.LIB  -->  /sysroot/COPYING3.LIB/toolchain_root/sysroot  -->  /sysroot/sysroot/toolchain_root/COPYING.RUNTIME  -->  /sysroot/COPYING.RUNTIME/toolchain_root/lib  -->  /sysroot/lib/toolchain_root/SOURCES  -->  /sysroot/SOURCES/toolchain_root/lib64  -->  /sysroot/lib64/toolchain_root/share  -->  /sysroot/share/toolchain_root/bin  -->  /sysroot/bin/toolchain_root/COPYING  -->  /sysroot/COPYING/toolchain_root/COPYING3  -->  /sysroot/COPYING3/toolchain_root/COPYING.LIB  -->  /sysroot/COPYING.LIB/toolchain_root/include  -->  /sysroot/include/toolchain_root/libexec  -->  /sysroot/libexecCMD: sudo -u tuscan PATH=/sysroot/bin:/sysroot/libexec/gcc/arm-linux-androideabi/4.8:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin CC=arm-linux-androideabi-gcc CXX=arm-linux-androideabi-g++ red makepkg --noextract --syncdeps --skipinteg --skippgpcheck --skipchecksums --noconfirm --nocolor --log --noprogressbar --nocheck
        ==> Making package: tetrinet 0.11-7 (Tue Apr  4 20:56:00 UTC 2017)==> Checking runtime dependencies...==> Checking buildtime dependencies...==> WARNING: Using existing $srcdir/ tree==> Starting build()...cc -O2 -I/usr/include/ncurses -DHAVE_IPV6 -g -Wall -c sockets.ccc -O2 -I/usr/include/ncurses -DHAVE_IPV6 -g -Wall -c tetrinet.ccc -O2 -I/usr/include/ncurses -DHAVE_IPV6 -g -Wall -c tetris.ccc -O2 -I/usr/include/ncurses -DHAVE_IPV6 -g -Wall -c tty.ccc1: error: no include path in which to search for stdc-predef.htetrinet.c:9:19: error: no include path in which to search for stdio.h #include                    ^tetrinet.c:10:20: error: no include path in which to search for stdlib.h #include                     ^tetrinet.c:11:20: error: no include path in which to search for string.h #include                     ^tetrinet.c:12:18: error: no include path in which to search for time.h #include                   ^tetrinet.c:13:19: error: no include path in which to search for errno.h #include                    ^In file included from tetrinet.c:14:0:tetrinet.h:77:12: warning: built-in function 'log' declared as non-function [enabled by default] extern int log;            ^tetrinet.c: In function 'parse':tetrinet.c:59:5: warning: implicit declaration of function 'strtok' [-Wimplicit-function-declaration]     cmd = strtok(buf, " ");     ^tetrinet.c:59:9: warning: assignment makes pointer from integer without a cast [enabled by default]     cmd = strtok(buf, " ");         ^tetrinet.c:64:5: warning: implicit declaration of function 'strcmp' [-Wimplicit-function-declaration]     } else if (strcmp(cmd, "noconnecting") == 0) {     ^tetrinet.c:65:13: error: 'NULL' undeclared (first use in this function)  s = strtok(NULL, "");             ^tetrinet.c:65:13: note: each undeclared identifier is reported only once for each function it appears intetrinet.c:69:2: warning: implicit declaration of function 'fprintf' [-Wimplicit-function-declaration]  fprintf(stderr, "Server error: %s\n", s);  ^tetrinet.c:69:2: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]tetrinet.c:69:10: error: 'stderr' undeclared (first use in this function)  fprintf(stderr, "Server error: %s\n", s);          ^cc1: error: no include path in which to search for stdc-predef.htetrinet.c:70:2: warning: implicit declaration of function 'exit' [-Wimplicit-function-declaration]  exit(1);  ^tetrinet.c:70:2: warning: incompatible implicit declaration of built-in function 'exit' [enabled by default]tetrinet.c:76:6: warning: implicit declaration of function 'strchr' [-Wimplicit-function-declaration]      t = strchr(s, ';');      ^tetrinet.c:76:10: warning: incompatible implicit declaration of built-in function 'strchr' [enabled by default]      t = strchr(s, ';');          ^sockets.c:7:20: error: no include path in which to search for stdarg.h #include                     ^sockets.c:8:19: error: no include path in which to search for stdio.h #include                    ^sockets.c:9:20: error: no include path in which to search for stdlib.h #include                     ^sockets.c:10:19: error: no include path in which to search for errno.h #include                    ^sockets.c:11:23: error: no include path in which to search for sys/types.h #include                        ^sockets.c:12:19: error: no include path in which to search for netdb.h #include                    ^tetrinet.c:85:6: warning: implicit declaration of function 'strncpy' [-Wimplicit-function-declaration]      strncpy(winlist[i].name, s, sizeof(winlist[i].name)-1);      ^sockets.c:13:24: error: no include path in which to search for netinet/in.h #include                         ^tetrinet.c:85:6: warning: incompatible implicit declaration of built-in function 'strncpy' [enabled by default]sockets.c:14:24: error: no include path in which to search for sys/socket.h #include                         ^sockets.c:15:22: error: no include path in which to search for sys/time.h #include                       ^sockets.c:16:20: error: no include path in which to search for unistd.h #include                     ^sockets.c:17:20: error: no include path in which to search for string.h #include                     ^tetrinet.c:87:6: warning: implicit declaration of function 'atoi' [-Wimplicit-function-declaration]      winlist[i].points = atoi(t);      ^tetrinet.c:102:2: warning: implicit declaration of function 'strdup' [-Wimplicit-function-declaration]  players[my_playernum-1] = strdup(my_nick);  ^tetrinet.c:102:28: warning: incompatible implicit declaration of built-in function 'strdup' [enabled by default]  players[my_playernum-1] = strdup(my_nick);                            ^tetrinet.c:115:20: warning: incompatible implicit declaration of built-in function 'strdup' [enabled by default]  players[player] = strdup(t);                    ^tetrinet.c:117:6: warning: implicit declaration of function 'free' [-Wimplicit-function-declaration]      free(teams[player]);      ^tetrinet.c:117:6: warning: incompatible implicit declaration of built-in function 'free' [enabled by default]tetrinet.c:120:2: warning: implicit declaration of function 'snprintf' [-Wimplicit-function-declaration]  snprintf(buf, sizeof(buf), "*** %s is Now Playing", t);  ^tetrinet.c:120:2: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]In file included from sockets.c:19:0:tetrinet.h:77:12: warning: built-in function 'log' declared as non-function [enabled by default] extern int log;            ^tetrinet.c:135:2: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]  snprintf(buf, sizeof(buf), "*** %s has Left", players[player]);  ^tetrinet.c:137:2: warning: incompatible implicit declaration of built-in function 'free' [enabled by default]  free(players[player]);  ^sockets.c:21:1: error: unknown type name 'FILE' static FILE *logfile; ^sockets.c:25:23: error: 'EOF' undeclared here (not in a function) static int lastchar = EOF;                       ^sockets.c: In function 'sgetc':tetrinet.c:154:6: warning: incompatible implicit declaration of built-in function 'free' [enabled by default]      free(teams[player]);      ^sockets.c:37:5: warning: implicit declaration of function 'read' [-Wimplicit-function-declaration]     if (read(s, &ch, 1) != 1)     ^tetrinet.c:156:22: warning: incompatible implicit declaration of built-in function 'strdup' [enabled by default]      teams[player] = strdup(t);                      ^tetrinet.c:160:6: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]      snprintf(buf, sizeof(buf), "*** %s is Now on Team %s", players[player], t);      ^sockets.c: In function 'sgets':sockets.c:60:9: error: 'NULL' undeclared (first use in this function)  return NULL;         ^sockets.c:60:9: note: each undeclared identifier is reported only once for each function it appears incc1: error: no include path in which to search for stdc-predef.htetrinet.c:183:2: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]  snprintf(buf, sizeof(buf), "<%s> %s", name, t);  ^sockets.c:71:6: warning: implicit declaration of function 'fopen' [-Wimplicit-function-declaration]      logfile = fopen(logname, "a");      ^tetris.c:7:19: error: no include path in which to search for stdio.h #include                    ^sockets.c:71:14: warning: assignment makes pointer from integer without a cast [enabled by default]      logfile = fopen(logname, "a");              ^tetris.c:8:20: error: no include path in which to search for stdlib.h #include                     ^sockets.c:73:21: error: storage size of 'tv' isn't known      struct timeval tv;                     ^tetris.c:9:20: error: no include path in which to search for string.h #include                     ^tetrinet.c:204:2: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]  snprintf(buf, sizeof(buf), "* %s %s", name, t);  ^tetris.c:10:22: error: no include path in which to search for sys/time.h #include                       ^sockets.c:74:6: warning: implicit declaration of function 'gettimeofday' [-Wimplicit-function-declaration]      gettimeofday(&tv, NULL);      ^sockets.c:75:6: warning: implicit declaration of function 'fprintf' [-Wimplicit-function-declaration]      fprintf(logfile, "[%d.%03d] <<< %s\n",      ^sockets.c:75:6: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]sockets.c:77:6: warning: implicit declaration of function 'fflush' [-Wimplicit-function-declaration]      fflush(logfile);      ^sockets.c:73:21: warning: unused variable 'tv' [-Wunused-variable]      struct timeval tv;                     ^tetrinet.c:228:6: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]      memset(piecefreq, 0, sizeof(piecefreq));      ^sockets.c: In function 'sputs':tetrinet.c:228:6: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]sockets.c:94:14: warning: assignment makes pointer from integer without a cast [enabled by default]      logfile = fopen(logname, "a");              ^sockets.c:96:21: error: storage size of 'tv' isn't known      struct timeval tv;                     ^sockets.c:97:24: error: 'NULL' undeclared (first use in this function)      gettimeofday(&tv, NULL);                        ^sockets.c:98:6: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]      fprintf(logfile, "[%d.%03d] >>> %s\n",      ^tetrinet.c:237:6: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]      memset(specialfreq, 0, sizeof(specialfreq));      ^sockets.c:96:21: warning: unused variable 'tv' [-Wunused-variable]      struct timeval tv;                     ^sockets.c:103:2: warning: implicit declaration of function 'write' [-Wimplicit-function-declaration]  n = write(s, str, strlen(str));  ^sockets.c:103:2: warning: implicit declaration of function 'strlen' [-Wimplicit-function-declaration]In file included from tetris.c:11:0:tetrinet.h:77:12: warning: built-in function 'log' declared as non-function [enabled by default] extern int log;            ^sockets.c:103:20: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  n = write(s, str, strlen(str));                    ^tetrinet.c:252:2: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]  memset(&fields[my_playernum-1], 0, sizeof(Field));  ^sockets.c: In function 'sockprintf':sockets.c:118:5: error: unknown type name 'va_list'     va_list args;     ^sockets.c:121:5: warning: implicit declaration of function 'va_start' [-Wimplicit-function-declaration]     va_start(args, fmt);     ^sockets.c:122:5: warning: implicit declaration of function 'vsnprintf' [-Wimplicit-function-declaration]     vsnprintf(buf, sizeof(buf), fmt, args);     ^tetrinet.c:266:2: warning: implicit declaration of function 'sprintf' [-Wimplicit-function-declaration]  s = buf + sprintf(buf, "f %d ", my_playernum);  ^tetrinet.c:266:12: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]  s = buf + sprintf(buf, "f %d ", my_playernum);            ^sockets.c: In function 'conn':sockets.c:132:15: error: 'NI_MAXHOST' undeclared (first use in this function)     char hbuf[NI_MAXHOST];               ^sockets.c:133:21: error: storage size of 'hints' isn't known     struct addrinfo hints, *res, *res0;                     ^tetrinet.c:269:3: warning: implicit declaration of function 'rand' [-Wimplicit-function-declaration]   fields[my_playernum-1][y][x] = rand()%5 + 1;   ^sockets.c:142:5: warning: implicit declaration of function 'snprintf' [-Wimplicit-function-declaration]     snprintf(service, sizeof(service), "%d", port);     ^sockets.c:142:5: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]sockets.c:143:5: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]     memset(&hints, 0, sizeof(hints));     ^sockets.c:143:5: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]sockets.c:144:23: error: 'AF_UNSPEC' undeclared (first use in this function)     hints.ai_family = AF_UNSPEC;                       ^sockets.c:145:25: error: 'SOCK_STREAM' undeclared (first use in this function)     hints.ai_socktype = SOCK_STREAM;                         ^sockets.c:146:5: warning: implicit declaration of function 'getaddrinfo' [-Wimplicit-function-declaration]     if (getaddrinfo(host, service, &hints, &res0))     ^tetrinet.c:292:2: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]  memset(fields, 0, sizeof(fields));  ^sockets.c:148:36: error: dereferencing pointer to incomplete type     for (res = res0; res; res = res->ai_next) {                                    ^sockets.c:150:2: warning: implicit declaration of function 'socket' [-Wimplicit-function-declaration]  sock = socket(res->ai_family, res->ai_socktype, res->ai_protocol);  ^sockets.c:150:19: error: dereferencing pointer to incomplete type  sock = socket(res->ai_family, res->ai_socktype, res->ai_protocol);                   ^sockets.c:150:35: error: dereferencing pointer to incomplete type  sock = socket(res->ai_family, res->ai_socktype, res->ai_protocol);                                   ^sockets.c:150:53: error: dereferencing pointer to incomplete type  sock = socket(res->ai_family, res->ai_socktype, res->ai_protocol);                                                     ^sockets.c:153:2: warning: implicit declaration of function 'getnameinfo' [-Wimplicit-function-declaration]  getnameinfo(res->ai_addr, res->ai_addrlen, hbuf, sizeof(hbuf),  ^sockets.c:153:17: error: dereferencing pointer to incomplete type  getnameinfo(res->ai_addr, res->ai_addrlen, hbuf, sizeof(hbuf),                 ^sockets.c:153:31: error: dereferencing pointer to incomplete type  getnameinfo(res->ai_addr, res->ai_addrlen, hbuf, sizeof(hbuf),                               ^sockets.c:154:7: error: 'NULL' undeclared (first use in this function)       NULL, 0, 0);       ^sockets.c:155:2: warning: implicit declaration of function 'connect' [-Wimplicit-function-declaration]  if (connect(sock, res->ai_addr, res->ai_addrlen) == 0) {  ^sockets.c:155:23: error: dereferencing pointer to incomplete type  if (connect(sock, res->ai_addr, res->ai_addrlen) == 0) {                       ^sockets.c:155:37: error: dereferencing pointer to incomplete type  if (connect(sock, res->ai_addr, res->ai_addrlen) == 0) {                                     ^sockets.c:157:10: error: dereferencing pointer to incomplete type   if (res->ai_family == AF_INET6) {          ^sockets.c:157:25: error: 'AF_INET6' undeclared (first use in this function)   if (res->ai_family == AF_INET6) {                         ^sockets.c:159:31: error: dereferencing pointer to incomplete type    (struct sockaddr_in6 *)(res->ai_addr);                               ^sockets.c:160:7: warning: implicit declaration of function 'memcpy' [-Wimplicit-function-declaration]       memcpy(ipbuf, (char *)(&sin6->sin6_addr) + 12, 4);       ^sockets.c:160:7: warning: incompatible implicit declaration of built-in function 'memcpy' [enabled by default]sockets.c:160:35: error: dereferencing pointer to incomplete type       memcpy(ipbuf, (char *)(&sin6->sin6_addr) + 12, 4);                                   ^tetrinet.c: In function 'partyline_input':sockets.c:163:30: error: dereferencing pointer to incomplete type    (struct sockaddr_in *)(res->ai_addr);                              ^sockets.c:164:7: warning: incompatible implicit declaration of built-in function 'memcpy' [enabled by default]       memcpy(ipbuf, &sin->sin_addr, 4);       ^tetrinet.c:409:2: warning: implicit declaration of function 'memmove' [-Wimplicit-function-declaration]  memmove(curpos+1, curpos, strlen(curpos)+1);  ^tetrinet.c:409:2: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]sockets.c:164:25: error: dereferencing pointer to incomplete type       memcpy(ipbuf, &sin->sin_addr, 4);                         ^tetrinet.c:409:2: warning: implicit declaration of function 'strlen' [-Wimplicit-function-declaration]sockets.c:169:15: error: 'errno' undeclared (first use in this function)  errno_save = errno;               ^tetrinet.c:409:28: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  memmove(curpos+1, curpos, strlen(curpos)+1);                            ^sockets.c:170:2: warning: implicit declaration of function 'close' [-Wimplicit-function-declaration]  close(sock);  ^tetrinet.c: In function 'partyline_delete':sockets.c:174:5: warning: implicit declaration of function 'freeaddrinfo' [-Wimplicit-function-declaration]     freeaddrinfo(res0);     ^tetris.c: In function 'init_shapes':tetrinet.c:422:2: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]  memmove(curpos, curpos+1, strlen(curpos)-1+1);  ^tetris.c:155:4: warning: implicit declaration of function 'fprintf' [-Wimplicit-function-declaration]    fprintf(stderr, "Piece %d rotation %d: "    ^sockets.c:133:21: warning: unused variable 'hints' [-Wunused-variable]     struct addrinfo hints, *res, *res0;                     ^tetrinet.c:422:28: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  memmove(curpos, curpos+1, strlen(curpos)-1+1);                            ^tetris.c:155:4: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]sockets.c:132:10: warning: unused variable 'hbuf' [-Wunused-variable]     char hbuf[NI_MAXHOST];          ^tetris.c:155:12: error: 'stderr' undeclared (first use in this function)    fprintf(stderr, "Piece %d rotation %d: "            ^tetris.c:155:12: note: each undeclared identifier is reported only once for each function it appears insockets.c: In function 'disconn':sockets.c:201:5: warning: implicit declaration of function 'shutdown' [-Wimplicit-function-declaration]     shutdown(s, 2);     ^tetris.c:158:4: warning: implicit declaration of function 'exit' [-Wimplicit-function-declaration]    exit(1);    ^tetris.c:158:4: warning: incompatible implicit declaration of built-in function 'exit' [enabled by default]tetrinet.c: In function 'partyline_move':tetrinet.c:468:18: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  partyline_pos = strlen(partyline_buffer);                  ^tetris.c:163:3: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]   fprintf(stderr, "Piece %d rotation %d missing hot spot!\n",   ^tetrinet.c: In function 'partyline_enter':tetris.c:165:3: warning: incompatible implicit declaration of built-in function 'exit' [enabled by default]   exit(1);   ^tetrinet.c:482:2: warning: implicit declaration of function 'strncasecmp' [-Wimplicit-function-declaration]  if (strncasecmp(partyline_buffer, "/me ", 4) == 0) {  ^tetrinet.c:484:6: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]      snprintf(buf, sizeof(buf), "* %s %s", players[my_playernum-1], partyline_buffer+4);      ^tetrinet.c:486:2: warning: implicit declaration of function 'strcasecmp' [-Wimplicit-function-declaration]  } else if (strcasecmp(partyline_buffer, "/start") == 0) {  ^tetrinet.c:495:10: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]      if (strlen(partyline_buffer) == 5)          ^tetrinet.c:496:3: warning: implicit declaration of function 'strcpy' [-Wimplicit-function-declaration]   strcpy(partyline_buffer+5, " ");  /* make it "/team " */   ^tetrinet.c:496:3: warning: incompatible implicit declaration of built-in function 'strcpy' [enabled by default]tetrinet.c:500:7: warning: incompatible implicit declaration of built-in function 'free' [enabled by default]       free(teams[my_playernum-1]);       ^tetrinet.c:501:27: warning: incompatible implicit declaration of built-in function 'strdup' [enabled by default]   teams[my_playernum-1] = strdup(partyline_buffer+6);                           ^tetrinet.c:502:3: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]   snprintf(buf, sizeof(buf), "*** %s is Now on Team %s", players[my_playernum-1], partyline_buffer+6);   ^tetrinet.c:506:7: warning: incompatible implicit declaration of built-in function 'free' [enabled by default]       free(teams[my_playernum-1]);       ^tetrinet.c:507:27: error: 'NULL' undeclared (first use in this function)   teams[my_playernum-1] = NULL;                           ^tetrinet.c:508:3: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]   snprintf(buf, sizeof(buf), "*** %s is Now Alone", players[my_playernum-1]);   ^tetris.c: In function 'clear_lines':tetris.c:294:5: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]     memset(new_specials, 0, sizeof(new_specials));     ^tetrinet.c:516:3: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]   snprintf(buf, sizeof(buf), "<%s> %s", players[my_playernum-1], partyline_buffer);   ^tetris.c:294:5: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]tetrinet.c: In function 'help':tetrinet.c:533:5: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]     fprintf(stderr,     ^tetrinet.c:533:13: error: 'stderr' undeclared (first use in this function)     fprintf(stderr,             ^tetrinet.c: In function 'init':tetris.c:309:3: warning: implicit declaration of function 'memmove' [-Wimplicit-function-declaration]   memmove((*f)[1], (*f)[0], FIELD_WIDTH*y);   ^tetrinet.c:560:18: error: 'NULL' undeclared (first use in this function)     char *nick = NULL, *server = NULL;                  ^tetris.c:309:3: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]tetrinet.c:574:5: warning: implicit declaration of function 'getenv' [-Wimplicit-function-declaration]     if (getenv("DISPLAY"))     ^tetrinet.c:580:5: warning: implicit declaration of function 'srand' [-Wimplicit-function-declaration]     srand(time(NULL));     ^tetrinet.c:580:5: warning: implicit declaration of function 'time' [-Wimplicit-function-declaration]tetris.c:321:7: warning: implicit declaration of function 'rand' [-Wimplicit-function-declaration]       if (windows_mode && rand()%2) {       ^tetrinet.c:596:7: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]       fprintf(stderr, "Option -log requires an argument\n");       ^tetrinet.c:596:15: error: 'stderr' undeclared (first use in this function)       fprintf(stderr, "Option -log requires an argument\n");               ^tetris.c:322:4: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]    memmove(specials+1, specials, pos);    ^tetrinet.c:615:3: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]   fprintf(stderr, "Unknown option %s\n", av[i]);   ^make: *** [Makefile:33: sockets.o] Error 1make: *** Waiting for unfinished jobs....tetrinet.c:638:9: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]     if (strlen(nick) > 63)  /* put a reasonable limit on nick length */         ^tetrinet.c:641:5: warning: pointer targets in passing argument 3 of 'conn' differ in signedness [-Wpointer-sign]     if ((server_sock = conn(server, 31457, ip)) < 0) {     ^In file included from tetrinet.c:17:0:sockets.h:15:12: note: expected 'char *' but argument is of type 'unsigned char *' extern int conn(const char *host, int port, char ipbuf[4]);            ^tetrinet.c:642:2: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]  fprintf(stderr, "Couldn't connect to server %s: %s\n",  ^tetris.c: In function 'send_field':tetrinet.c:643:3: warning: implicit declaration of function 'strerror' [-Wimplicit-function-declaration]   server, strerror(errno));   ^tetris.c:405:2: warning: implicit declaration of function 'sprintf' [-Wimplicit-function-declaration]  s = buf + sprintf(buf, "f %d ", my_playernum);  ^tetrinet.c:643:20: error: 'errno' undeclared (first use in this function)   server, strerror(errno));                    ^tetris.c:405:12: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]  s = buf + sprintf(buf, "f %d ", my_playernum);            ^tetrinet.c:646:5: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]     sprintf(nickmsg, "tetri%s %s 1.13", tetrifast ? "faster" : "sstart", nick);     ^tetris.c:424:5: warning: implicit declaration of function 'strlen' [-Wimplicit-function-declaration]     || strlen(buf)-4 > FIELD_WIDTH*FIELD_HEIGHT) {     ^tetrinet.c:659:6: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]      fprintf(stderr, "Server %s closed connection\n", server);      ^tetris.c:424:8: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]     || strlen(buf)-4 > FIELD_WIDTH*FIELD_HEIGHT) {        ^tetrinet.c:667:31: warning: incompatible implicit declaration of built-in function 'strdup' [enabled by default]     players[my_playernum-1] = strdup(nick);                               ^tetris.c:426:12: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]  s = buf + sprintf(buf, "f %d ", my_playernum);            ^tetris.c: In function 'new_piece':tetris.c:472:14: error: 'NULL' undeclared (first use in this function)   send_field(NULL);              ^tetris.c:482:5: warning: implicit declaration of function 'gettimeofday' [-Wimplicit-function-declaration]     gettimeofday(&timeout, NULL);     ^tetris.c:483:5: error: invalid use of undefined type 'struct timeval'     timeout.tv_usec += level_delay() * 1000;     ^tetris.c:484:5: error: invalid use of undefined type 'struct timeval'     timeout.tv_sec += timeout.tv_usec / 1000000;     ^tetris.c:484:5: error: invalid use of undefined type 'struct timeval'tetris.c:485:5: error: invalid use of undefined type 'struct timeval'     timeout.tv_usec %= 1000000;     ^cc1: error: no include path in which to search for stdc-predef.htetris.c: In function 'step_down':tetris.c:509:25: error: 'NULL' undeclared (first use in this function)  gettimeofday(&timeout, NULL);                         ^tetris.c:510:2: error: invalid use of undefined type 'struct timeval'  timeout.tv_usec += level_delay() * 1000;  ^tty.c:9:19: error: no include path in which to search for stdio.h #include                    ^tty.c:10:20: error: no include path in which to search for stdlib.h #include                     ^tty.c:11:20: error: no include path in which to search for string.h #include                     ^tetris.c:511:2: error: invalid use of undefined type 'struct timeval'  timeout.tv_sec += timeout.tv_usec / 1000000;  ^tetris.c:511:2: error: invalid use of undefined type 'struct timeval'tty.c:12:20: error: no include path in which to search for unistd.h #include                     ^tty.c:13:19: error: no include path in which to search for ctype.h #include                    ^tty.c:14:20: error: no include path in which to search for curses.h #include                     ^tty.c:15:19: error: no include path in which to search for errno.h #include                    ^tetris.c:512:2: error: invalid use of undefined type 'struct timeval'  timeout.tv_usec %= 1000000;  ^tty.c:16:20: error: no include path in which to search for signal.h #include                     ^tty.c:17:22: error: no include path in which to search for sys/time.h #include                       ^tetris.c:518:2: warning: implicit declaration of function 'memcpy' [-Wimplicit-function-declaration]  memcpy(&oldfield, f, sizeof(oldfield));  ^tetris.c:518:2: warning: incompatible implicit declaration of built-in function 'memcpy' [enabled by default]tetris.c:528:6: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]      sprintf(buf, "cs%d", completed);      ^In file included from tty.c:18:0:tetrinet.h:77:12: warning: built-in function 'log' declared as non-function [enabled by default] extern int log;            ^tetris.c:547:2: error: invalid use of undefined type 'struct timeval'  timeout.tv_usec += tetrifast ? 0 : 600000;  ^tetris.c:548:2: error: invalid use of undefined type 'struct timeval'  timeout.tv_sec += timeout.tv_usec / 1000000;  ^tetris.c:548:2: error: invalid use of undefined type 'struct timeval'tetris.c:549:2: error: invalid use of undefined type 'struct timeval'  timeout.tv_usec %= 1000000;  ^tetris.c: In function 'do_special':tetris.c:573:5: warning: incompatible implicit declaration of built-in function 'memcpy' [enabled by default]     memcpy(&oldfield, f, sizeof(Field));     ^tty.c: In function 'wait_for_input':tty.c:44:5: error: unknown type name 'fd_set'     fd_set fds;     ^tetris.c:575:5: warning: implicit declaration of function 'strncmp' [-Wimplicit-function-declaration]     if (strncmp(type, "cs", 2) == 0) {     ^tty.c:45:20: error: storage size of 'tv' isn't known     struct timeval tv;                    ^tty.c:49:5: warning: implicit declaration of function 'FD_ZERO' [-Wimplicit-function-declaration]     FD_ZERO(&fds);     ^tetris.c:576:2: warning: implicit declaration of function 'atoi' [-Wimplicit-function-declaration]  int nlines = atoi(type+2);  ^tty.c:50:5: warning: implicit declaration of function 'FD_SET' [-Wimplicit-function-declaration]     FD_SET(0, &fds);     ^tty.c:54:5: warning: implicit declaration of function 'select' [-Wimplicit-function-declaration]     while (select(server_sock+1, &fds, NULL, NULL, msec<0 ? NULL : &tv) < 0) {     ^tetris.c:581:3: warning: implicit declaration of function 'strcmp' [-Wimplicit-function-declaration]   || strcmp(teams[my_playernum-1],teams[from-1]) != 0   ^tty.c:54:40: error: 'NULL' undeclared (first use in this function)     while (select(server_sock+1, &fds, NULL, NULL, msec<0 ? NULL : &tv) < 0) {                                        ^tty.c:54:40: note: each undeclared identifier is reported only once for each function it appears intty.c:55:6: error: 'errno' undeclared (first use in this function)  if (errno != EINTR)      ^tty.c:55:15: error: 'EINTR' undeclared (first use in this function)  if (errno != EINTR)               ^tty.c:56:6: warning: implicit declaration of function 'perror' [-Wimplicit-function-declaration]      perror("Warning: select() failed");      ^tetris.c:584:3: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]   memmove((*f)[0], (*f)[1], FIELD_WIDTH*(FIELD_HEIGHT-1));   ^tty.c:58:5: warning: implicit declaration of function 'FD_ISSET' [-Wimplicit-function-declaration]     if (FD_ISSET(0, &fds)) {     ^tty.c:59:2: warning: implicit declaration of function 'getch' [-Wimplicit-function-declaration]  c = getch();  ^tty.c:69:11: error: 'KEY_UP' undeclared (first use in this function)  if (c == KEY_UP)           ^tetris.c:592:2: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]  memmove((*f)[0], (*f)[1], FIELD_WIDTH*(FIELD_HEIGHT-1));  ^tty.c:71:16: error: 'KEY_DOWN' undeclared (first use in this function)  else if (c == KEY_DOWN)                ^tty.c:73:16: error: 'KEY_LEFT' undeclared (first use in this function)  else if (c == KEY_LEFT)                ^tty.c:75:16: error: 'KEY_RIGHT' undeclared (first use in this function)  else if (c == KEY_RIGHT)                ^tty.c:77:2: warning: implicit declaration of function 'KEY_F' [-Wimplicit-function-declaration]  else if (c == KEY_F(1) || c == ('1'|0x80) || (escape && c == '1'))  ^tetris.c:608:2: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]  memmove((*f)[1], (*f)[0], FIELD_WIDTH*(FIELD_HEIGHT-1));  ^tty.c:101:16: error: 'KEY_BACKSPACE' undeclared (first use in this function)  else if (c == KEY_BACKSPACE)                ^tetris.c:609:2: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]  memset((*f)[0], 0, FIELD_WIDTH);  ^tty.c:45:20: warning: unused variable 'tv' [-Wunused-variable]     struct timeval tv;                    ^tty.c: At top level:tty.c:133:5: error: unknown type name 'WINDOW'     WINDOW *win; /* NULL if not currently displayed */     ^tty.c:143:1: error: unknown type name 'WINDOW' static WINDOW *gmsg_inputwin; ^tty.c: In function 'screen_cleanup':tty.c:153:5: warning: implicit declaration of function 'wmove' [-Wimplicit-function-declaration]     wmove(stdscr, scrheight-1, 0);     ^tty.c:153:11: error: 'stdscr' undeclared (first use in this function)     wmove(stdscr, scrheight-1, 0);           ^tty.c:154:5: warning: implicit declaration of function 'wrefresh' [-Wimplicit-function-declaration]     wrefresh(stdscr);     ^tty.c:155:5: warning: implicit declaration of function 'endwin' [-Wimplicit-function-declaration]     endwin();     ^tty.c:156:5: warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration]     printf("\n");     ^tty.c:156:5: warning: incompatible implicit declaration of built-in function 'printf' [enabled by default]tetris.c:633:2: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]  memset(*f, 0, FIELD_WIDTH*FIELD_HEIGHT);  ^tty.c: In function 'sighandler':tty.c:169:16: error: 'SIGTSTP' undeclared (first use in this function)     if (sig != SIGTSTP) {                ^tty.c:171:13: error: 'SIGINT' undeclared (first use in this function)  if (sig != SIGINT)             ^tty.c:172:6: warning: implicit declaration of function 'fprintf' [-Wimplicit-function-declaration]      fprintf(stderr, "%s\n", strsignal(sig));      ^tty.c:172:6: warning: incompatible implicit declaration of built-in function 'fprintf' [enabled by default]tty.c:172:14: error: 'stderr' undeclared (first use in this function)      fprintf(stderr, "%s\n", strsignal(sig));              ^tty.c:172:6: warning: implicit declaration of function 'strsignal' [-Wimplicit-function-declaration]      fprintf(stderr, "%s\n", strsignal(sig));      ^tty.c:173:2: warning: implicit declaration of function 'exit' [-Wimplicit-function-declaration]  exit(1);  ^tty.c:173:2: warning: incompatible implicit declaration of built-in function 'exit' [enabled by default]tty.c:176:5: warning: implicit declaration of function 'signal' [-Wimplicit-function-declaration]     signal(SIGTSTP, old_tstp);     ^tetris.c:653:8: warning: implicit declaration of function 'random' [-Wimplicit-function-declaration]        xnew = random() % FIELD_WIDTH;        ^tty.c:177:5: warning: implicit declaration of function 'raise' [-Wimplicit-function-declaration]     raise(SIGTSTP);     ^tty.c:178:5: warning: implicit declaration of function 'doupdate' [-Wimplicit-function-declaration]     doupdate();     ^tty.c: In function 'getcolor':tty.c:196:2: warning: implicit declaration of function 'start_color' [-Wimplicit-function-declaration]  start_color();  ^tty.c:197:2: warning: implicit declaration of function 'memset' [-Wimplicit-function-declaration]  memset(colors, -1, sizeof(colors));  ^tty.c:197:2: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]tty.c:198:17: error: 'COLOR_WHITE' undeclared (first use in this function)  colors[0][0] = COLOR_WHITE;                 ^tetris.c:672:3: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]   memmove((*f)[y], (*f)[y]+1, FIELD_WIDTH-1);   ^tty.c:199:17: error: 'COLOR_BLACK' undeclared (first use in this function)  colors[0][1] = COLOR_BLACK;                 ^tty.c:202:2: warning: implicit declaration of function 'COLOR_PAIR' [-Wimplicit-function-declaration]  return COLOR_PAIR(0);  ^tty.c:209:6: warning: implicit declaration of function 'init_pair' [-Wimplicit-function-declaration]      if (init_pair(i, fg, bg) == ERR)      ^tty.c:209:34: error: 'ERR' undeclared (first use in this function)      if (init_pair(i, fg, bg) == ERR)                                  ^tetris.c:679:3: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]   memmove((*f)[y]+1, (*f)[y], FIELD_WIDTH-1);   ^make: *** [Makefile:33: tetrinet.o] Error 1tty.c: In function 'screen_setup':tty.c:227:12: error: 'SIGINT' undeclared (first use in this function)     signal(SIGINT, SIG_IGN);            ^tty.c:227:20: error: 'SIG_IGN' undeclared (first use in this function)     signal(SIGINT, SIG_IGN);                    ^tty.c:228:12: error: 'SIGQUIT' undeclared (first use in this function)     signal(SIGQUIT, SIG_IGN);            ^tty.c:229:12: error: 'SIGTSTP' undeclared (first use in this function)     signal(SIGTSTP, SIG_IGN);            ^tty.c:231:5: warning: implicit declaration of function 'initscr' [-Wimplicit-function-declaration]     initscr();     ^tty.c:232:5: warning: implicit declaration of function 'cbreak' [-Wimplicit-function-declaration]     cbreak();     ^tty.c:233:5: warning: implicit declaration of function 'noecho' [-Wimplicit-function-declaration]     noecho();     ^tty.c:234:5: warning: implicit declaration of function 'nodelay' [-Wimplicit-function-declaration]     nodelay(stdscr, TRUE);     ^tty.c:234:13: error: 'stdscr' undeclared (first use in this function)     nodelay(stdscr, TRUE);             ^tty.c:234:21: error: 'TRUE' undeclared (first use in this function)     nodelay(stdscr, TRUE);                     ^tty.c:235:5: warning: implicit declaration of function 'keypad' [-Wimplicit-function-declaration]     keypad(stdscr, TRUE);     ^tetris.c:706:6: warning: incompatible implicit declaration of built-in function 'memset' [enabled by default]      memset(fields[my_playernum-1], 0, 6*FIELD_WIDTH);      ^tty.c:236:5: warning: implicit declaration of function 'leaveok' [-Wimplicit-function-declaration]     leaveok(stdscr, TRUE);     ^tty.c:237:5: warning: implicit declaration of function 'has_colors' [-Wimplicit-function-declaration]     if ((has_color = has_colors()))     ^tty.c:239:5: warning: implicit declaration of function 'getmaxyx' [-Wimplicit-function-declaration]     getmaxyx(stdscr, scrheight, scrwidth);     ^tty.c:243:5: warning: implicit declaration of function 'atexit' [-Wimplicit-function-declaration]     atexit(screen_cleanup);     ^tty.c:248:12: error: 'SIGTERM' undeclared (first use in this function)     signal(SIGTERM, sighandler);            ^tetris.c: In function 'gmsg_input':tty.c:249:12: error: 'SIGHUP' undeclared (first use in this function)     signal(SIGHUP, sighandler);            ^tty.c:250:12: error: 'SIGSEGV' undeclared (first use in this function)     signal(SIGSEGV, sighandler);            ^tty.c:251:12: error: 'SIGABRT' undeclared (first use in this function)     signal(SIGABRT, sighandler);            ^tty.c:252:12: error: 'SIGIOT' undeclared (first use in this function)     signal(SIGIOT, sighandler);            ^tty.c:253:12: error: 'SIGTRAP' undeclared (first use in this function)     signal(SIGTRAP, sighandler);            ^tetris.c:739:2: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]  memmove(curpos+1, curpos, strlen(curpos)+1);  ^tty.c:254:12: error: 'SIGBUS' undeclared (first use in this function)     signal(SIGBUS, sighandler);            ^tty.c:255:12: error: 'SIGFPE' undeclared (first use in this function)     signal(SIGFPE, sighandler);            ^tty.c:256:12: error: 'SIGUSR1' undeclared (first use in this function)     signal(SIGUSR1, sighandler);            ^tty.c:257:12: error: 'SIGUSR2' undeclared (first use in this function)     signal(SIGUSR2, sighandler);            ^tty.c:258:12: error: 'SIGALRM' undeclared (first use in this function)     signal(SIGALRM, sighandler);            ^tty.c:263:12: error: 'SIGXCPU' undeclared (first use in this function)     signal(SIGXCPU, sighandler);            ^tetris.c:739:28: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  memmove(curpos+1, curpos, strlen(curpos)+1);                            ^tty.c:264:12: error: 'SIGXFSZ' undeclared (first use in this function)     signal(SIGXFSZ, sighandler);            ^tty.c:265:12: error: 'SIGVTALRM' undeclared (first use in this function)     signal(SIGVTALRM, sighandler);            ^tty.c:268:12: error: 'SIGPIPE' undeclared (first use in this function)     signal(SIGPIPE, SIG_IGN);            ^tty.c: In function 'screen_refresh':tty.c:278:2: warning: implicit declaration of function 'touchline' [-Wimplicit-function-declaration]  touchline(stdscr, gmsg_inputpos, gmsg_inputheight);  ^tetris.c: In function 'gmsg_delete':tty.c:278:12: error: 'stdscr' undeclared (first use in this function)  touchline(stdscr, gmsg_inputpos, gmsg_inputheight);            ^tty.c:285:5: warning: implicit declaration of function 'wnoutrefresh' [-Wimplicit-function-declaration]     wnoutrefresh(stdscr);     ^tty.c: In function 'screen_redraw':tetris.c:750:2: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]  memmove(curpos, curpos+1, strlen(curpos)-1+1);  ^tty.c:295:5: warning: implicit declaration of function 'clearok' [-Wimplicit-function-declaration]     clearok(stdscr, TRUE);     ^tty.c:295:13: error: 'stdscr' undeclared (first use in this function)     clearok(stdscr, TRUE);             ^tty.c:295:21: error: 'TRUE' undeclared (first use in this function)     clearok(stdscr, TRUE);                     ^tty.c: In function 'outline':tty.c:309:6: warning: implicit declaration of function 'scroll' [-Wimplicit-function-declaration]      scroll(buf->win);      ^tty.c:310:2: warning: implicit declaration of function 'memmove' [-Wimplicit-function-declaration]  memmove(buf->text, buf->text+1, (buf->height-1) * sizeof(char *));  ^tetris.c:750:28: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  memmove(curpos, curpos+1, strlen(curpos)-1+1);                            ^tty.c:310:2: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]tty.c:314:2: warning: implicit declaration of function 'mvwaddstr' [-Wimplicit-function-declaration]  mvwaddstr(buf->win, buf->line, 0, s);  ^tty.c:316:2: warning: implicit declaration of function 'strdup' [-Wimplicit-function-declaration]  buf->text[buf->line] = strdup(s);  ^tty.c:316:25: warning: incompatible implicit declaration of built-in function 'strdup' [enabled by default]  buf->text[buf->line] = strdup(s);                         ^tetris.c: In function 'gmsg_move':tty.c: In function 'draw_text':tty.c:337:2: warning: implicit declaration of function 'getyx' [-Wimplicit-function-declaration]  getyx(stdscr, y, x);  ^tty.c:337:8: error: 'stdscr' undeclared (first use in this function)  getyx(stdscr, y, x);        ^tty.c:338:2: warning: implicit declaration of function 'attrset' [-Wimplicit-function-declaration]  attrset(getcolor(COLOR_WHITE, COLOR_BLACK));  ^tty.c:338:19: error: 'COLOR_WHITE' undeclared (first use in this function)  attrset(getcolor(COLOR_WHITE, COLOR_BLACK));                   ^tetris.c:788:13: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  gmsg_pos = strlen(gmsg_buffer);             ^tty.c:338:32: error: 'COLOR_BLACK' undeclared (first use in this function)  attrset(getcolor(COLOR_WHITE, COLOR_BLACK));                                ^tty.c:340:5: warning: implicit declaration of function 'isspace' [-Wimplicit-function-declaration]     while (*s && isspace(*s))     ^tetris.c: In function 'gmsg_enter':tty.c:342:5: warning: implicit declaration of function 'strlen' [-Wimplicit-function-declaration]     while (strlen(s) > buf->width - indent) {     ^tty.c:342:12: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]     while (strlen(s) > buf->width - indent) {            ^tetris.c:798:2: warning: implicit declaration of function 'strncasecmp' [-Wimplicit-function-declaration]  if (strncasecmp(gmsg_buffer, "/me ", 4) == 0)  ^tty.c:352:6: warning: implicit declaration of function 'sprintf' [-Wimplicit-function-declaration]      sprintf(str, "%*s", indent, "");      ^tty.c:352:6: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]tty.c:353:2: warning: implicit declaration of function 'strncpy' [-Wimplicit-function-declaration]  strncpy(str+indent, s, t-s);  ^tty.c:353:2: warning: incompatible implicit declaration of built-in function 'strncpy' [enabled by default]tetris.c: In function 'new_game':tty.c:362:2: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]  sprintf(str, "%*s", indent, "");  ^tty.c:363:5: warning: implicit declaration of function 'strcpy' [-Wimplicit-function-declaration]     strcpy(str+indent, s);     ^tty.c:363:5: warning: incompatible implicit declaration of built-in function 'strcpy' [enabled by default]tetris.c:819:28: error: 'NULL' undeclared (first use in this function)     gettimeofday(&timeout, NULL);                            ^tty.c:366:2: warning: implicit declaration of function 'move' [-Wimplicit-function-declaration]  move(y, x);  ^tty.c: In function 'clear_text':tetris.c:820:5: error: invalid use of undefined type 'struct timeval'     timeout.tv_usec += 1200000;     ^tty.c:389:3: warning: implicit declaration of function 'free' [-Wimplicit-function-declaration]   free(buf->text[i]);   ^tty.c:389:3: warning: incompatible implicit declaration of built-in function 'free' [enabled by default]tty.c:390:18: error: 'NULL' undeclared (first use in this function)   buf->text[i] = NULL;                  ^tty.c:396:2: warning: implicit declaration of function 'werase' [-Wimplicit-function-declaration]  werase(buf->win);  ^tetris.c:821:5: error: invalid use of undefined type 'struct timeval'     timeout.tv_sec += timeout.tv_usec / 1000000;     ^tetris.c:821:5: error: invalid use of undefined type 'struct timeval'tty.c: In function 'open_textwin':tty.c:421:2: warning: implicit declaration of function 'snprintf' [-Wimplicit-function-declaration]  snprintf(str, sizeof(str), "ERROR: bad textwin size (%d,%d)",  ^tetris.c:822:5: error: invalid use of undefined type 'struct timeval'     timeout.tv_usec %= 1000000;     ^tty.c:421:2: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]tty.c:423:2: warning: implicit declaration of function 'addstr' [-Wimplicit-function-declaration]  addstr(str);  ^tetris.c: In function 'tetris_timeout':tty.c:424:2: warning: incompatible implicit declaration of built-in function 'exit' [enabled by default]  exit(1);  ^tetris.c:838:20: error: storage size of 'tv' isn't known     struct timeval tv;                    ^tty.c:427:2: warning: implicit declaration of function 'subwin' [-Wimplicit-function-declaration]  buf->win = subwin(stdscr, buf->height, buf->width, buf->y, buf->x);  ^tty.c:427:20: error: 'stdscr' undeclared (first use in this function)  buf->win = subwin(stdscr, buf->height, buf->width, buf->y, buf->x);                    ^tetris.c:841:23: error: 'NULL' undeclared (first use in this function)     gettimeofday(&tv, NULL);                       ^tty.c:428:2: warning: implicit declaration of function 'scrollok' [-Wimplicit-function-declaration]  scrollok(buf->win, TRUE);  ^tty.c:428:21: error: 'TRUE' undeclared (first use in this function)  scrollok(buf->win, TRUE);                     ^tetris.c:842:5: error: invalid use of undefined type 'struct timeval'     t = (timeout.tv_sec - tv.tv_sec) * 1000     ^tty.c:431:2: warning: implicit declaration of function 'calloc' [-Wimplicit-function-declaration]  buf->text = calloc(buf->height, sizeof(char *));  ^tty.c:431:14: warning: incompatible implicit declaration of built-in function 'calloc' [enabled by default]  buf->text = calloc(buf->height, sizeof(char *));              ^tetris.c:843:7: error: invalid use of undefined type 'struct timeval'       + (timeout.tv_usec-tv.tv_usec) / 1000;       ^tty.c: In function 'close_textwin':tty.c:443:2: warning: implicit declaration of function 'delwin' [-Wimplicit-function-declaration]  delwin(buf->win);  ^tty.c:444:13: error: 'NULL' undeclared (first use in this function)  buf->win = NULL;             ^tetris.c:838:20: warning: unused variable 'tv' [-Wunused-variable]     struct timeval tv;                    ^tty.c: In function 'setup_fields':tty.c:497:27: error: 'A_ATTRIBUTES' undeclared (first use in this function)     if (!(tile_chars[0] & A_ATTRIBUTES)) {                           ^tty.c:499:23: error: 'A_BOLD' undeclared (first use in this function)      tile_chars[i] |= A_BOLD;                       ^tty.c:500:28: error: 'COLOR_BLUE' undeclared (first use in this function)  tile_chars[1] |= getcolor(COLOR_BLUE, COLOR_BLACK);                            ^tty.c:500:40: error: 'COLOR_BLACK' undeclared (first use in this function)  tile_chars[1] |= getcolor(COLOR_BLUE, COLOR_BLACK);                                        ^tty.c:501:28: error: 'COLOR_YELLOW' undeclared (first use in this function)  tile_chars[2] |= getcolor(COLOR_YELLOW, COLOR_BLACK);                            ^tty.c:502:28: error: 'COLOR_GREEN' undeclared (first use in this function)  tile_chars[3] |= getcolor(COLOR_GREEN, COLOR_BLACK);                            ^tty.c:503:28: error: 'COLOR_MAGENTA' undeclared (first use in this function)  tile_chars[4] |= getcolor(COLOR_MAGENTA, COLOR_BLACK);                            ^tetris.c: In function 'tetris_input':tty.c:504:28: error: 'COLOR_RED' undeclared (first use in this function)  tile_chars[5] |= getcolor(COLOR_RED, COLOR_BLACK);                            ^tty.c:508:13: error: 'stdscr' undeclared (first use in this function)     leaveok(stdscr, TRUE);             ^tetris.c:1004:6: warning: incompatible implicit declaration of built-in function 'memmove' [enabled by default]      memmove(specials, specials+1, special_capacity-1);      ^tty.c:508:21: error: 'TRUE' undeclared (first use in this function)     leaveok(stdscr, TRUE);                     ^tty.c:510:5: warning: implicit declaration of function 'clear' [-Wimplicit-function-declaration]     clear();     ^tty.c:511:22: error: 'COLOR_WHITE' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                      ^tty.c:530:2: warning: implicit declaration of function 'hline' [-Wimplicit-function-declaration]  hline(MY_HLINE2, scrwidth);  ^tty.c:31:29: error: 'ACS_HLINE' undeclared (first use in this function) #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                             ^tty.c:530:8: note: in expansion of macro 'MY_HLINE2'  hline(MY_HLINE2, scrwidth);        ^tty.c:540:14: error: 'A_NORMAL' undeclared (first use in this function)      attrset(A_NORMAL);              ^tty.c:557:5: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]     sprintf(buf, "%d", my_playernum);     ^tty.c:558:5: warning: implicit declaration of function 'mvaddstr' [-Wimplicit-function-declaration]     mvaddstr(y, x-1, buf);     ^tty.c:560:2: warning: implicit declaration of function 'mvaddch' [-Wimplicit-function-declaration]  mvaddch(y+i, x-1, players[my_playernum-1][i-2]);  ^tty.c:567:5: warning: implicit declaration of function 'vline' [-Wimplicit-function-declaration]     vline(MY_VLINE, FIELD_HEIGHT*2);     ^tty.c:25:27: error: 'ACS_VLINE' undeclared (first use in this function) #define MY_VLINE (fancy ? ACS_VLINE : '|')                           ^tty.c:567:11: note: in expansion of macro 'MY_VLINE'     vline(MY_VLINE, FIELD_HEIGHT*2);           ^tty.c:571:5: warning: implicit declaration of function 'addch' [-Wimplicit-function-declaration]     addch(MY_LLCORNER);     ^tty.c:28:30: error: 'ACS_LLCORNER' undeclared (first use in this function) #define MY_LLCORNER (fancy ? ACS_LLCORNER : '+')                              ^tty.c:571:11: note: in expansion of macro 'MY_LLCORNER'     addch(MY_LLCORNER);           ^tty.c:29:30: error: 'ACS_LRCORNER' undeclared (first use in this function) #define MY_LRCORNER (fancy ? ACS_LRCORNER : '+')                              ^tty.c:574:11: note: in expansion of macro 'MY_LRCORNER'     addch(MY_LRCORNER);           ^tty.c:26:30: error: 'ACS_ULCORNER' undeclared (first use in this function) #define MY_ULCORNER (fancy ? ACS_ULCORNER : '+')                              ^tty.c:629:8: note: in expansion of macro 'MY_ULCORNER'  addch(MY_ULCORNER);        ^tty.c:27:30: error: 'ACS_URCORNER' undeclared (first use in this function) #define MY_URCORNER (fancy ? ACS_URCORNER : '+')                              ^tty.c:631:20: note: in expansion of macro 'MY_URCORNER'  mvaddch(y-1, x+8, MY_URCORNER);                    ^tty.c:658:18: error: 'NULL' undeclared (first use in this function)  gmsg_inputwin = NULL;                  ^tty.c: In function 'draw_own_field':tty.c:712:15: error: 'COLOR_BLACK' undeclared (first use in this function)    | getcolor(COLOR_BLACK, COLOR_BLACK) | A_BOLD;               ^tty.c:712:43: error: 'A_BOLD' undeclared (first use in this function)    | getcolor(COLOR_BLACK, COLOR_BLACK) | A_BOLD;                                           ^tty.c:724:18: error: 'NULL' undeclared (first use in this function)  gmsg_inputwin = NULL;                  ^tty.c: In function 'draw_other_field':tty.c:756:18: error: 'NULL' undeclared (first use in this function)  gmsg_inputwin = NULL;                  ^tty.c: In function 'draw_status':tty.c:774:5: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]     sprintf(buf, "%d", lines>99999 ? 99999 : lines);     ^tty.c: At top level:tty.c:857:7: error: 'NULL' undeclared here (not in a function)     { NULL }       ^tty.c: In function 'draw_attdef':tty.c:867:2: warning: implicit declaration of function 'strcmp' [-Wimplicit-function-declaration]  if (strcmp(type, msgs[i][0]) == 0)  ^tty.c:872:5: warning: incompatible implicit declaration of built-in function 'strcpy' [enabled by default]     strcpy(buf, msgs[i][1]);     ^tty.c:874:2: warning: incompatible implicit declaration of built-in function 'sprintf' [enabled by default]  sprintf(buf+strlen(buf), " on %s", players[to-1]);  ^tty.c:874:14: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  sprintf(buf+strlen(buf), " on %s", players[to-1]);              ^tty.c:862:12: warning: variable 'width' set but not used [-Wunused-but-set-variable]     int i, width;            ^tty.c: In function 'draw_gmsg_input':tty.c:901:22: error: 'COLOR_WHITE' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                      ^tty.c:901:34: error: 'COLOR_BLACK' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                                  ^tty.c:901:5: warning: passing argument 1 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:901:5: warning: passing argument 2 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:907:10: error: 'stdscr' undeclared (first use in this function)   subwin(stdscr, gmsg_inputheight, scrwidth, gmsg_inputpos, 0);          ^tty.c:906:16: warning: assignment makes pointer from integer without a cast [enabled by default]  gmsg_inputwin =                ^tty.c:909:25: error: 'FALSE' undeclared (first use in this function)  leaveok(gmsg_inputwin, FALSE);                         ^tty.c:914:9: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]     if (strlen(s) < scrwidth-7) {         ^tty.c:919:2: warning: implicit declaration of function 'wclrtoeol' [-Wimplicit-function-declaration]  wclrtoeol(gmsg_inputwin);  ^tty.c:932:2: warning: implicit declaration of function 'mvwaddnstr' [-Wimplicit-function-declaration]  mvwaddnstr(gmsg_inputwin, 1, 6, s+start, scrwidth-6);  ^tty.c: In function 'clear_gmsg_input':tty.c:947:16: warning: assignment from incompatible pointer type [enabled by default]  gmsg_inputwin = NULL;                ^tty.c:948:10: error: 'stdscr' undeclared (first use in this function)  leaveok(stdscr, TRUE);          ^tty.c:948:18: error: 'TRUE' undeclared (first use in this function)  leaveok(stdscr, TRUE);                  ^tty.c: In function 'setup_partyline':tty.c:965:22: error: 'COLOR_WHITE' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                      ^tty.c:965:34: error: 'COLOR_BLACK' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                                  ^tty.c:965:5: warning: passing argument 1 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:965:5: warning: passing argument 2 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:24:27: error: 'ACS_HLINE' undeclared (first use in this function) #define MY_HLINE (fancy ? ACS_HLINE : '-')                           ^tty.c:973:11: note: in expansion of macro 'MY_HLINE'     hline(MY_HLINE, scrwidth);           ^tty.c:24:37: warning: pointer/integer type mismatch in conditional expression [enabled by default] #define MY_HLINE (fancy ? ACS_HLINE : '-')                                     ^tty.c:973:11: note: in expansion of macro 'MY_HLINE'     hline(MY_HLINE, scrwidth);           ^tty.c:31:41: error: 'A_BOLD' undeclared (first use in this function) #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                                         ^tty.c:978:11: note: in expansion of macro 'MY_HLINE2'     hline(MY_HLINE2, scrwidth);           ^tty.c:31:39: error: invalid operands to binary | (have 'const char * (*)[2]' and 'const char * (*)[2]') #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                                       ^tty.c:978:11: note: in expansion of macro 'MY_HLINE2'     hline(MY_HLINE2, scrwidth);           ^tty.c:31:49: warning: pointer/integer type mismatch in conditional expression [enabled by default] #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                                                 ^tty.c:978:11: note: in expansion of macro 'MY_HLINE2'     hline(MY_HLINE2, scrwidth);           ^tty.c:984:13: error: 'A_NORMAL' undeclared (first use in this function)     attrset(A_NORMAL);             ^tty.c:987:13: error: 'stdscr' undeclared (first use in this function)     leaveok(stdscr, FALSE);             ^tty.c:987:21: error: 'FALSE' undeclared (first use in this function)     leaveok(stdscr, FALSE);                     ^tty.c: In function 'draw_partyline_input':tty.c:997:22: error: 'COLOR_WHITE' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                      ^tty.c:997:34: error: 'COLOR_BLACK' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                                  ^tty.c:997:5: warning: passing argument 1 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:997:5: warning: passing argument 2 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:998:9: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]     if (strlen(s) < scrwidth-3) {         ^tty.c:1002:2: warning: implicit declaration of function 'clrtoeol' [-Wimplicit-function-declaration]  clrtoeol();  ^tty.c:1014:2: warning: implicit declaration of function 'mvaddnstr' [-Wimplicit-function-declaration]  mvaddnstr(scrheight-3, 2, s+start, scrwidth-2);  ^tty.c: In function 'setup_winlist':tty.c:1029:13: error: 'stdscr' undeclared (first use in this function)     leaveok(stdscr, TRUE);             ^tty.c:1029:21: error: 'TRUE' undeclared (first use in this function)     leaveok(stdscr, TRUE);                     ^tty.c:1032:22: error: 'COLOR_WHITE' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                      ^tty.c:1032:34: error: 'COLOR_BLACK' undeclared (first use in this function)     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));                                  ^tty.c:1032:5: warning: passing argument 1 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:1032:5: warning: passing argument 2 of 'getcolor' makes integer from pointer without a cast [enabled by default]     attrset(getcolor(COLOR_WHITE,COLOR_BLACK));     ^tty.c:191:13: note: expected 'int' but argument is of type 'const char * (*)[2]' static long getcolor(int fg, int bg)             ^tty.c:1035:19: warning: incompatible implicit declaration of built-in function 'strlen' [enabled by default]  x = scrwidth/2 - strlen(winlist[i].name);                   ^tty.c:1044:2: warning: incompatible implicit declaration of built-in function 'snprintf' [enabled by default]  snprintf(buf, sizeof(buf), "%4d", winlist[i].points);  ^tty.c:31:29: error: 'ACS_HLINE' undeclared (first use in this function) #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                             ^tty.c:1057:11: note: in expansion of macro 'MY_HLINE2'     hline(MY_HLINE2, scrwidth);           ^tty.c:31:41: error: 'A_BOLD' undeclared (first use in this function) #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                                         ^tty.c:1057:11: note: in expansion of macro 'MY_HLINE2'     hline(MY_HLINE2, scrwidth);           ^tty.c:31:39: error: invalid operands to binary | (have 'const char * (*)[2]' and 'const char * (*)[2]') #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                                       ^tty.c:1057:11: note: in expansion of macro 'MY_HLINE2'     hline(MY_HLINE2, scrwidth);           ^tty.c:31:49: warning: pointer/integer type mismatch in conditional expression [enabled by default] #define MY_HLINE2 (fancy ? (ACS_HLINE | A_BOLD) : '=')                                                 ^tty.c:1057:11: note: in expansion of macro 'MY_HLINE2'     hline(MY_HLINE2, scrwidth);           ^make: *** [Makefile:33: tetris.o] Error 1tty.c:1063:13: error: 'A_NORMAL' undeclared (first use in this function)     attrset(A_NORMAL);             ^tty.c: In function 'wait_for_input':tty.c:114:1: warning: control reaches end of non-void function [-Wreturn-type] } ^make: *** [Makefile:33: tty.o] Error 1==> ERROR: A failure occurred in build().    Aborting...