On Tue, 28 Apr 2020 13:37:08 +0200 Charlene Wendling wrote: > On Mon, 27 Apr 2020 20:59:20 +0200 > Charlene Wendling wrote: > > > > > Parrot fails to build in the current macppc bulk, same as: > > > > > http://build-failures.rhaalovely.net/mips64/2020-04-11/lang/parrot.log > > > > I already had to provide a workaround `-Werror', but this time i'm > > proposing to remove all warnings. > > > > Note that 'Configure.pl' provides a `--ccwarn' flag, but these flags > > are placed before the warnings, so it doesn't work. Putting `-w' at > > the end of the flags generated by `Configure.pl' does not work as > > well. > > > > REVISION bump is needed, because `-maccumulate-outgoing-args' and > > `-falign-functions' are zapped. I've read the docs about these > > flags, and i don't get why they are here to start with. > > > > I've run the tests on amd64 and macppc [0], and there is no > > difference between the two archs, and between tests i did with my > > previous fix; 1 failure out of 47763 tests. > > > > Comments/feedback are welcome, > > > > Charlène. > > > > > > [0] https://bin.charlenew.xyz/parrot.log > > Janne Johansson did some mips64 build testing, and the build is > broken due to a SIGBUS, see the log after the diff. > > As such i've reworded my diff and marked parrot BROKEN-mips64, > unless someone want to/can fix it. > > --
Index: Makefile =================================================================== RCS file: /cvs/ports/lang/parrot/Makefile,v retrieving revision 1.48 diff -u -p -u -p -r1.48 Makefile --- Makefile 17 Oct 2019 14:03:55 -0000 1.48 +++ Makefile 28 Apr 2020 11:20:36 -0000 @@ -1,10 +1,12 @@ # $OpenBSD: Makefile,v 1.48 2019/10/17 14:03:55 cwen Exp $ +BROKEN-mips64= SIGBUS while running pbc_to_exe + COMMENT= virtual machine designed for interpreted languages V= 7.10.0 DISTNAME= parrot-$V -REVISION= 8 +REVISION= 9 CATEGORIES= lang perl6 SHARED_LIBS= parrot 11.0 @@ -55,11 +57,6 @@ INSTALL_TARGET = install install-doc TEST_TARGET= fulltest SUBST_VARS += V - -# fix for error: "_CALL_ELF" is not defined, evaluates to 0 -.if ${MACHINE_ARCH:Mpowerpc} -CFLAGS += -D_CALL_ELF=1 -.endif pre-configure: ${SUBST_CMD} ${WRKSRC}/config/init/hints/openbsd.pm Index: patches/patch-config_auto_warnings_pm =================================================================== RCS file: patches/patch-config_auto_warnings_pm diff -N patches/patch-config_auto_warnings_pm --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-config_auto_warnings_pm 28 Apr 2020 11:20:36 -0000 @@ -0,0 +1,19 @@ +$OpenBSD$ + +Drop all -Werror, fix the build on powerpc. +The build breaks due to some libffi defines being undefined, +issue that doesn't cause runtime errors. + +Index: config/auto/warnings.pm +--- config/auto/warnings.pm.orig ++++ config/auto/warnings.pm +@@ -169,9 +169,6 @@ sub _init { + -Werror=strict-prototypes + ); + +- $gcc->{'basic'} = [ @gcc_or_gpp_basic, @gcc_basic ]; +- $gpp->{'basic'} = [ @gcc_or_gpp_basic ]; +- + my @gcc_or_gpp_cage = qw( + -std=c89 + -Wfloat-equal > > > mips64 log > > mkdir -p runtime/parrot/languages/winxed > > ./parrot -o runtime/parrot/languages/winxed/winxed.pbc > ext/winxed/compiler.pir > > ./parrot -o winxed.pbc ext/winxed/driver.pir > > ./parrot winxed.pbc -c --noan tools/dev/pbc_to_exe.winxed > > ./parrot -o pbc_to_exe.pbc tools/dev/pbc_to_exe.pir > > ./parrot pbc_to_exe.pbc pbc_to_exe.pbc > > /usr/ports/pobj/parrot-7.10.0/parrot-7.10.0/blib/lib/libparrot.so. > 11.0: warning: vsprintf() is often misused, please use vsnprintf() > > /usr/ports/pobj/parrot-7.10.0/parrot-7.10.0/blib/lib/libparrot.so. > 11.0: warning: sprintf() is often misused, please use snprintf() > > /usr/ports/pobj/parrot-7.10.0/parrot-7.10.0/blib/lib/libparrot.so. > 11.0: warning: strcat() is almost always misused, please use strlcat() > > /usr/ports/pobj/parrot-7.10.0/parrot-7.10.0/blib/lib/libparrot.so. > 11.0: warning: strcpy() is almost always misused, please use strlcpy() > > cp runtime/parrot/library/nqp-rx.pbc parrot-nqp.pbc > > ./pbc_to_exe parrot-nqp.pbc > > *** Signal SIGBUS in /usr/ports/pobj/parrot-7.10.0/parrot-7.10.0 > (ext/nqp-rx/Rules.mak:32 './parrot-nqp') > > *** Error 2 in . (/usr/ports/infrastructure/mk/bsd.port.mk:2907 > '/usr/ports/pobj/parrot-7.10.0/.build_done') > > *** Error 2 in /usr/ports/lang/parrot (/usr/ports/infrastructure/mk/ > bsd.port.mk:2573 'all') > > >