This change would require a revision bump for all Perl XS ports Otherwise loading the .so module fails.
$ perl -MNet::SSLeay SSLeay.c: loadable library and perl binaries are mismatched (got handshake key 0xec00000, needed 0xf000000) On Fri, Jan 21, 2022 at 02:12:25PM +0100, Alexander Bluhm wrote: > Hi, > > Since clang 13 each Perl or Perl XS module compile spits out a lot > of -Wcompound-token-split-by-macro warnings. E.g. p5-Net-SSLeay > produces 3882 warnings generated. You cannot spot anything useful. > The problem is burried deeply in the Perl macros and copied to > everywhere. > > If we compile Perl with -Wno-compound-token-split-by-macro it gets > stored in Config.pm and is used for most modules. > > $ perl -MConfig -e 'print $Config{ccflags},"\n"' > -Wno-compound-token-split-by-macro -fno-strict-aliasing > -fno-delete-null-pointer-checks -pipe -fstack-protector-strong > -I/usr/local/include > > ok? > > bluhm > > Index: gnu/usr.bin/perl/Makefile.bsd-wrapper > =================================================================== > RCS file: /data/mirror/openbsd/cvs/src/gnu/usr.bin/perl/Makefile.bsd-wrapper,v > retrieving revision 1.111 > diff -u -p -r1.111 Makefile.bsd-wrapper > --- gnu/usr.bin/perl/Makefile.bsd-wrapper 1 Jul 2020 00:08:06 -0000 > 1.111 > +++ gnu/usr.bin/perl/Makefile.bsd-wrapper 21 Jan 2022 12:39:15 -0000 > @@ -3,10 +3,16 @@ > # Build wrapper for Perl > # > > +.include <bsd.own.mk> > + > CONFIGURE_ARGS= -dse -Dopenbsd_distribution=defined > > .if !exists(${.OBJDIR}/config.over) > CONFIGURE_ARGS+= -Dmksymlinks > +.endif > + > +.if ${COMPILER_VERSION:L} == "clang" > +CONFIGURE_ARGS+= -Dccflags=-Wno-compound-token-split-by-macro > .endif > > .MAIN: all