* Package: net-ftp/linksys-tftp-1.2.1-r3 * Repository: gentoo * Maintainer: embedded@gentoo.org * USE: abi_x86_64 amd64 elibc_glibc kernel_linux userland_GNU * FEATURES: network-sandbox preserve-libs sandbox userpriv usersandbox >>> Unpacking source... >>> Unpacking linksys-tftp-1.2.1.tar.bz2 to /var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/work >>> Source unpacked in /var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/work >>> Preparing source in /var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/work/linksys-tftp-1.2.1 ... * Applying linksys-tftp-1.2.1-r1-header.patch ... [ ok ] * Applying linksys-tftp-1.2.1-r1-Makefile.patch ... [ ok ] >>> Source prepared. >>> Configuring source in /var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/work/linksys-tftp-1.2.1 ... >>> Source configured. >>> Compiling source in /var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/work/linksys-tftp-1.2.1 ... make -j1 CC=x86_64-pc-linux-gnu-gcc x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -falign-functions=32:25:16 -fno-common -I. -Dsin=sin_x -c -o main.o main.c main.c: In function ‘main’: main.c:117:5: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] 117 | int main(argc, argv) | ^~~~ main.c:149:3: warning: implicit declaration of function ‘command’ [-Wimplicit-function-declaration] 149 | command(top); | ^~~~~~~ main.c: At top level: main.c:154:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 154 | setpeer(argc, argv) | ^~~~~~~ main.c: In function ‘setpeer’: main.c:162:3: warning: ‘return’ with no value, in function returning non-void 162 | return; | ^~~~~~ main.c:154:1: note: declared here 154 | setpeer(argc, argv) | ^~~~~~~ main.c:171:25: warning: implicit declaration of function ‘inet_addr’ [-Wimplicit-function-declaration] 171 | sin.sin_addr.s_addr = inet_addr(argv[1]); | ^~~~~~~~~ main.c:175:4: warning: ‘return’ with no value, in function returning non-void 175 | return; | ^~~~~~ main.c:154:1: note: declared here 154 | setpeer(argc, argv) | ^~~~~~~ main.c:185:4: warning: ‘return’ with no value, in function returning non-void 185 | return; | ^~~~~~ main.c:154:1: note: declared here 154 | setpeer(argc, argv) | ^~~~~~~ main.c: At top level: main.c:204:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 204 | modecmd(argc, argv) | ^~~~~~~ main.c: In function ‘modecmd’: main.c:204:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c:212:3: warning: ‘return’ with no value, in function returning non-void 212 | return; | ^~~~~~ main.c:204:1: note: declared here 204 | modecmd(argc, argv) | ^~~~~~~ main.c:219:4: warning: implicit declaration of function ‘setmode’ [-Wimplicit-function-declaration] 219 | setmode(p->m_mode); | ^~~~~~~ main.c:220:4: warning: ‘return’ with no value, in function returning non-void 220 | return; | ^~~~~~ main.c:204:1: note: declared here 204 | modecmd(argc, argv) | ^~~~~~~ main.c:234:2: warning: ‘return’ with no value, in function returning non-void 234 | return; | ^~~~~~ main.c:204:1: note: declared here 204 | modecmd(argc, argv) | ^~~~~~~ main.c: At top level: main.c:237:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 237 | setbinary(argc, argv) | ^~~~~~~~~ main.c: In function ‘setbinary’: main.c:237:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c: At top level: main.c:242:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 242 | setascii(argc, argv) | ^~~~~~~~ main.c: In function ‘setascii’: main.c:242:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c: At top level: main.c:247:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 247 | setmode(newmode) | ^~~~~~~ main.c:259:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 259 | put(argc, argv) | ^~~ main.c: In function ‘put’: main.c:259:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c:267:3: warning: implicit declaration of function ‘putusage’ [-Wimplicit-function-declaration] 267 | putusage(argv[0]); | ^~~~~~~~ main.c:268:3: warning: ‘return’ with no value, in function returning non-void 268 | return; | ^~~~~~ main.c:259:1: note: declared here 259 | put(argc, argv) | ^~~ main.c:273:3: warning: ‘return’ with no value, in function returning non-void 273 | return; | ^~~~~~ main.c:259:1: note: declared here 259 | put(argc, argv) | ^~~ main.c:279:4: warning: ‘return’ with no value, in function returning non-void 279 | return; | ^~~~~~ main.c:259:1: note: declared here 259 | put(argc, argv) | ^~~ main.c:285:16: warning: passing argument 2 of ‘sendfile’ makes integer from pointer without a cast [-Wint-conversion] 285 | sendfile(fd, cp, mode, linkpass); | ^~ | | | char * In file included from main.c:46: /usr/include/sys/sendfile.h:33:44: note: expected ‘int’ but argument is of type ‘char *’ 33 | extern ssize_t sendfile (int __out_fd, int __in_fd, off_t *__offset, | ~~~~^~~~~~~ main.c:285:20: warning: passing argument 3 of ‘sendfile’ from incompatible pointer type [-Wincompatible-pointer-types] 285 | sendfile(fd, cp, mode, linkpass); | ^~~~ | | | char * In file included from main.c:46: /usr/include/sys/sendfile.h:33:60: note: expected ‘off_t *’ {aka ‘long int *’} but argument is of type ‘char *’ 33 | extern ssize_t sendfile (int __out_fd, int __in_fd, off_t *__offset, | ~~~~~~~^~~~~~~~ main.c:285:26: warning: passing argument 4 of ‘sendfile’ makes integer from pointer without a cast [-Wint-conversion] 285 | sendfile(fd, cp, mode, linkpass); | ^~~~~~~~ | | | char * In file included from main.c:46: /usr/include/sys/sendfile.h:34:12: note: expected ‘size_t’ {aka ‘long unsigned int’} but argument is of type ‘char *’ 34 | size_t __count) __THROW; | ~~~~~~~^~~~~~~ main.c:286:3: warning: ‘return’ with no value, in function returning non-void 286 | return; | ^~~~~~ main.c:259:1: note: declared here 259 | put(argc, argv) | ^~~ main.c: At top level: main.c:289:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 289 | putusage(s) | ^~~~~~~~ main.c:298:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 298 | get(argc, argv) | ^~~ main.c: In function ‘get’: main.c:298:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c:306:3: warning: implicit declaration of function ‘getusage’; did you mean ‘putusage’? [-Wimplicit-function-declaration] 306 | getusage(argv[0]); | ^~~~~~~~ | putusage main.c:307:3: warning: ‘return’ with no value, in function returning non-void 307 | return; | ^~~~~~ main.c:298:1: note: declared here 298 | get(argc, argv) | ^~~ main.c:312:3: warning: ‘return’ with no value, in function returning non-void 312 | return; | ^~~~~~ main.c:298:1: note: declared here 298 | get(argc, argv) | ^~~ main.c:318:4: warning: ‘return’ with no value, in function returning non-void 318 | return; | ^~~~~~ main.c:298:1: note: declared here 298 | get(argc, argv) | ^~~ main.c:324:3: warning: implicit declaration of function ‘recvfile’ [-Wimplicit-function-declaration] 324 | recvfile(fd, cp, mode, linkpass); | ^~~~~~~~ main.c:326:3: warning: ‘return’ with no value, in function returning non-void 326 | return; | ^~~~~~ main.c:298:1: note: declared here 298 | get(argc, argv) | ^~~ main.c: At top level: main.c:329:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 329 | getusage(s) | ^~~~~~~~ main.c:337:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 337 | setrexmt(argc, argv) | ^~~~~~~~ main.c: In function ‘setrexmt’: main.c:337:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c:346:3: warning: implicit declaration of function ‘makeargv’ [-Wimplicit-function-declaration] 346 | makeargv(); | ^~~~~~~~ main.c:352:3: warning: ‘return’ with no value, in function returning non-void 352 | return; | ^~~~~~ main.c:337:1: note: declared here 337 | setrexmt(argc, argv) | ^~~~~~~~ main.c: At top level: main.c:363:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 363 | settimeout(argc, argv) | ^~~~~~~~~~ main.c: In function ‘settimeout’: main.c:363:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c:378:3: warning: ‘return’ with no value, in function returning non-void 378 | return; | ^~~~~~ main.c:363:1: note: declared here 363 | settimeout(argc, argv) | ^~~~~~~~~~ main.c: At top level: main.c:387:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 387 | status(argc, argv) | ^~~~~~ main.c: In function ‘status’: main.c:387:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c: At top level: main.c:410:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 410 | command(top) | ^~~~~~~ main.c: In function ‘getcmd’: main.c:453:12: warning: ‘return’ with no value, in function returning non-void 453 | if(!name) return; | ^~~~~~ main.c:443:1: note: declared here 443 | getcmd(name) | ^~~~~~ main.c: At top level: main.c:475:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 475 | makeargv() | ^~~~~~~~ main.c:498:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 498 | quit() | ^~~~ main.c:506:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 506 | help(argc, argv) | ^~~~ main.c: In function ‘help’: main.c:515:14: warning: field width specifier ‘*’ expects argument of type ‘int’, but argument 2 has type ‘long unsigned int’ [-Wformat=] 515 | printf("%-*s\t%s\n", HELPINDENT, c->name, c->help); | ~~^~ | | | int main.c:516:3: warning: ‘return’ with no value, in function returning non-void 516 | return; | ^~~~~~ main.c:506:1: note: declared here 506 | help(argc, argv) | ^~~~ main.c: At top level: main.c:532:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 532 | settrace() | ^~~~~~~~ main.c:539:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 539 | setverbose() | ^~~~~~~~~~ main.c:545:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 545 | setblocksize(argc, argv) | ^~~~~~~~~~~~ main.c: In function ‘setblocksize’: main.c:545:1: warning: type of ‘argc’ defaults to ‘int’ [-Wimplicit-int] main.c:560:3: warning: ‘return’ with no value, in function returning non-void 560 | return; | ^~~~~~ main.c:545:1: note: declared here 545 | setblocksize(argc, argv) | ^~~~~~~~~~~~ main.c: At top level: main.c:568:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 568 | banner() { | ^~~~~~ main.c: In function ‘banner’: main.c:573:2: warning: ‘return’ with no value, in function returning non-void 573 | return; | ^~~~~~ main.c:568:1: note: declared here 568 | banner() { | ^~~~~~ main.c: In function ‘setrexmt’: main.c:345:3: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result] 345 | fgets(&line[strlen(line)], sizeof(line) - strlen(line) - 1, stdin); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ main.c: In function ‘settimeout’: main.c:371:3: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result] 371 | fgets(&line[strlen(line)], sizeof(line) - strlen(line) - 1, stdin); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ main.c: In function ‘setblocksize’: main.c:553:3: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result] 553 | fgets(&line[strlen(line)], sizeof(line) - strlen(line) - 1, stdin); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -falign-functions=32:25:16 -fno-common -I. -Dsin=sin_x -c -o tftp.o tftp.c tftp.c:75:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 75 | parseoack(cp, sz) | ^~~~~~~~~ tftp.c:109:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 109 | sendfile(fd, name, mode, linkpass) | ^~~~~~~~ tftp.c: In function ‘sendfile’: tftp.c:125:2: warning: implicit declaration of function ‘startclock’; did you mean ‘strtok’? [-Wimplicit-function-declaration] 125 | startclock(); /* start stat's clock */ | ^~~~~~~~~~ | strtok tftp.c:134:11: warning: implicit declaration of function ‘makerequest’ [-Wimplicit-function-declaration] 134 | size = makerequest(WRQ, name, dp, mode, linkpass) - 4; | ^~~~~~~~~~~ tftp.c:137:11: warning: implicit declaration of function ‘readit’; did you mean ‘read’? [-Wimplicit-function-declaration] 137 | size = readit(file, &dp, convert); | ^~~~~~ | read tftp.c:139:5: warning: implicit declaration of function ‘nak’ [-Wimplicit-function-declaration] 139 | nak(errno + 100); | ^~~ tftp.c:149:4: warning: implicit declaration of function ‘tpacket’ [-Wimplicit-function-declaration] 149 | tpacket("sent", dp, size + 4); | ^~~~~~~ tftp.c:158:4: warning: implicit declaration of function ‘read_ahead’ [-Wimplicit-function-declaration] 158 | read_ahead(file, convert); | ^~~~~~~~~~ tftp.c:200:9: warning: implicit declaration of function ‘synchnet’ [-Wimplicit-function-declaration] 200 | j = synchnet(f); | ^~~~~~~~ tftp.c:226:2: warning: implicit declaration of function ‘stopclock’ [-Wimplicit-function-declaration] 226 | stopclock(); | ^~~~~~~~~ tftp.c:228:3: warning: implicit declaration of function ‘printstats’ [-Wimplicit-function-declaration] 228 | printstats("Sent", amount); | ^~~~~~~~~~ tftp.c: At top level: tftp.c:234:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 234 | recvfile(fd, name, mode, linkpass) | ^~~~~~~~ tftp.c: In function ‘recvfile’: tftp.c:284:4: warning: implicit declaration of function ‘write_behind’ [-Wimplicit-function-declaration] 284 | write_behind(file, convert); | ^~~~~~~~~~~~ tftp.c:347:10: warning: implicit declaration of function ‘writeit’; did you mean ‘write’? [-Wimplicit-function-declaration] 347 | size = writeit(file, &dp, n - 4, convert); | ^~~~~~~ | write tftp.c: At top level: tftp.c:365:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 365 | makerequest(request, name, tp, mode, linkpass) | ^~~~~~~~~~~ tftp.c:407:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 407 | nak(error) | ^~~ tftp.c:434:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 434 | topts(cp, sz) | ^~~~~ tftp.c:457:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 457 | tpacket(s, tp, n) | ^~~~~~~ tftp.c:508:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 508 | startclock() { | ^~~~~~~~~~ tftp.c:512:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 512 | stopclock() { | ^~~~~~~~~ tftp.c:516:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 516 | printstats(direction, amount) | ^~~~~~~~~~ In file included from /usr/include/string.h:495, from tftp.c:39: In function ‘strcpy’, inlined from ‘nak’ at tftp.c:425:2: /usr/include/bits/string_fortified.h:90:10: warning: ‘__builtin___strcpy_chk’ writing 1 or more bytes into a region of size 0 overflows the destination [-Wstringop-overflow=] 90 | return __builtin___strcpy_chk (__dest, __src, __bos (__dest)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ x86_64-pc-linux-gnu-gcc -O2 -pipe -march=native -falign-functions=32:25:16 -fno-common -I. -Dsin=sin_x -c -o tftpsubs.o tftpsubs.c tftpsubs.c:85:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 85 | readit(file, dpp, convert) | ^~~~~~ tftpsubs.c: In function ‘readit’: tftpsubs.c:97:3: warning: implicit declaration of function ‘read_ahead’ [-Wimplicit-function-declaration] 97 | read_ahead(file, convert); /* fill it */ | ^~~~~~~~~~ tftpsubs.c: At top level: tftpsubs.c:107:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 107 | read_ahead(file, convert) | ^~~~~~~~~~ tftpsubs.c: In function ‘read_ahead’: tftpsubs.c:119:3: warning: ‘return’ with no value, in function returning non-void 119 | return; | ^~~~~~ tftpsubs.c:107:1: note: declared here 107 | read_ahead(file, convert) | ^~~~~~~~~~ tftpsubs.c:128:8: warning: implicit declaration of function ‘read’; did you mean ‘fread’? [-Wimplicit-function-declaration] 128 | i = read(fileno(file), dp->th_data + b->counter, | ^~~~ | fread tftpsubs.c:134:3: warning: ‘return’ with no value, in function returning non-void 134 | return; | ^~~~~~ tftpsubs.c:107:1: note: declared here 107 | read_ahead(file, convert) | ^~~~~~~~~~ tftpsubs.c: At top level: tftpsubs.c:163:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 163 | writeit(file, dpp, ct, convert) | ^~~~~~~ tftpsubs.c: In function ‘writeit’: tftpsubs.c:163:1: warning: type of ‘ct’ defaults to ‘int’ [-Wimplicit-int] tftpsubs.c:171:3: warning: implicit declaration of function ‘write_behind’ [-Wimplicit-function-declaration] 171 | write_behind(file, convert); /* flush it */ | ^~~~~~~~~~~~ tftpsubs.c: At top level: tftpsubs.c:183:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 183 | write_behind(file, convert) | ^~~~~~~~~~~~ tftpsubs.c: In function ‘write_behind’: tftpsubs.c:208:10: warning: implicit declaration of function ‘write’; did you mean ‘fwrite’? [-Wimplicit-function-declaration] 208 | return write(fileno(file), buf, count); | ^~~~~ | fwrite x86_64-pc-linux-gnu-gcc -o linksys-tftp -O2 -pipe -march=native -falign-functions=32:25:16 -fno-common -I. -Dsin=sin_x main.o tftp.o tftpsubs.o -Wl,-O1 -Wl,--as-needed -Wl,--defsym=__gentoo_check_ldflags__=0 /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: error: tftp.o: multiple definition of 'toplevel' /usr/lib/gcc/x86_64-pc-linux-gnu/9.3.0/../../../../x86_64-pc-linux-gnu/bin/ld: main.o: previous definition here collect2: error: ld returned 1 exit status make: *** [Makefile:33: linksys-tftp] Error 1 * ERROR: net-ftp/linksys-tftp-1.2.1-r3::gentoo failed (compile phase): * emake failed * * If you need support, post the output of `emerge --info '=net-ftp/linksys-tftp-1.2.1-r3::gentoo'`, * the complete build log and the output of `emerge -pqv '=net-ftp/linksys-tftp-1.2.1-r3::gentoo'`. * The complete build log is located at '/var/log/portage/net-ftp:linksys-tftp-1.2.1-r3:20200506-095844.log'. * For convenience, a symlink to the build log is located at '/var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/temp/environment'. * Working directory: '/var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/work/linksys-tftp-1.2.1' * S: '/var/tmp/portage/net-ftp/linksys-tftp-1.2.1-r3/work/linksys-tftp-1.2.1'