Date: Sat, 26 Jun 2021 04:18:31 -0500 From: Matthew Grooms <mgrooms@shrew.net> To: stable@freebsd.org Subject: Re: arm64 stable/13 buildworld stops in bc Message-ID: <230194b7-8836-8672-a793-a7a8c6dcb146@shrew.net> In-Reply-To: <a47bd978-e262-8d14-153e-20921e395c06@freebsd.org> References: <a6b652c9-43ef-c7cf-0483-15aea964b33a@shrew.net> <a47bd978-e262-8d14-153e-20921e395c06@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 6/26/2021 12:20 AM, Stefan Esser wrote: > Am 26.06.21 um 04:30 schrieb Matthew Grooms: >> Hi All, >> >> I've been trying to build stable/13 kernel & world periodically for arm64 and >> either I'm not having very much luck or it's broken more times than it >> compiles. Is there an automated process that's checking builds for that platform? > Hi Matthew, > > there automated CI tests for all supported platforms, and if bc had failed > to build there, I'd have been informed. > >> Most recently, world stops building with bc ( see below ). However, that looks >> like that was last touched on June 1st. Has the build really been broken since >> then? :/ > Not for me ... > >> --- all_subdir_usr.bin --- >> /usr/src/contrib/bc/src/program.c:515:28: error: too few arguments to function >> call, expected 3, have 2 >> bc_file_puts(&vm.fout, str); >> ~~~~~~~~~~~~ ^ >> /usr/src/contrib/bc/include/file.h:81:6: note: 'bc_file_puts' declared here >> void bc_file_puts(BcFile *restrict f, BcFlushType type, const char *str); >> ^ > This looks to me like the result of an incomplete update of the sources. > > History editing has been added a few releases back and the function signature > of bc_files_puts has been changed to take 3 instead of 2 arguments. > > It looks like you got a mismatch between this header and the callers of this > function. Specifically, line 515 mentioned in the error message above is line > 517 in up-to.date sources and reads: > > bc_file_puts(&vm.fout, bc_flush_save, str); > > Definitely 3 parameters there ... > > See https://cgit.freebsd.org/src/tree/contrib/bc/src/program.c?h=stable/13#n512 > line 517 - that's what your program.c should look like ... > >> /usr/src/contrib/bc/src/program.c:529:21: error: too few arguments to function >> call, expected 2, have 1 >> bc_vm_putchar('\0'); >> ~~~~~~~~~~~~~ ^ >> /usr/src/contrib/bc/include/vm.h:437:6: note: 'bc_vm_putchar' declared here >> void bc_vm_putchar(int c, BcFlushType type); >> ^ >> /usr/src/contrib/bc/src/program.c:552:23: error: too few arguments to function >> call, expected 2, have 1 >> bc_vm_putchar('\\'); >> ~~~~~~~~~~~~~ ^ >> /usr/src/contrib/bc/include/vm.h:437:6: note: 'bc_vm_putchar' declared here >> void bc_vm_putchar(int c, BcFlushType type); >> ^ >> /usr/src/contrib/bc/src/program.c:556:18: error: too few arguments to function >> call, expected 2, have 1 >> bc_vm_putchar(c); >> ~~~~~~~~~~~~~ ^ >> /usr/src/contrib/bc/include/vm.h:437:6: note: 'bc_vm_putchar' declared here >> void bc_vm_putchar(int c, BcFlushType type); >> ^ >> /usr/src/contrib/bc/src/program.c:601:25: error: too few arguments to function >> call, expected 2, have 1 >> bc_file_flush(&vm.fout); >> ~~~~~~~~~~~~~ ^ >> /usr/src/contrib/bc/include/file.h:76:6: note: 'bc_file_flush' declared here >> void bc_file_flush(BcFile *restrict f, BcFlushType type); >> ^ >> /usr/src/contrib/bc/src/program.c:607:49: error: too few arguments to function >> call, expected 2, have 1 >> if (inst == BC_INST_PRINT) bc_vm_putchar('\n'); >> ~~~~~~~~~~~~~ ^ >> /usr/src/contrib/bc/include/vm.h:437:6: note: 'bc_vm_putchar' declared here >> void bc_vm_putchar(int c, BcFlushType type); > All the other error messages do point at a mix of source files from before > and after introduction of the history feature, too ... > > The line numbers in your version of program.c seem to be off, compared to > the current sources, e.g. check out lines 609 and 610 on the above given URL > for the correct sources that correspond to that last error message. > > Update your sources to a consistent state and your issue should be resolved. > > Let me know if there are any further problems with this program. Hi Stefan & Mark, I appreciate the quick response. That is strange. This build host didn't exist a few days ago and I started with a fresh git clone of stable/13.I could try to re-clone that but I'm not sure how it could have a mix of old and new sources. I also do a git pull before every build attempt ... root@build:/usr/src # git pull Already up to date. root@build:/usr/src # git status On branch stable/13 Your branch is up to date with 'origin/stable/13'. However, I am cross compiling aarch64 from an amd64 host which is running the release branch .... root@build:/usr/src # freebsd-version -u 13.0-RELEASE-p2 Do I need to update my amd64 build host to stable before cross compiling aarch64? I wouldn't think that compiling sources from /usr/src would be affected by release files installed on the build host. Thanks, -Matthew
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?230194b7-8836-8672-a793-a7a8c6dcb146>