svn commit: r348011 - in head/x11/rxvt-unicode: . files

Thierry Thomas thierry at FreeBSD.org
Thu Mar 13 12:42:26 UTC 2014


Hello,

Le mer 12 mar 14 à 23:32:16 +0100, Thomas Hoffmann <trh411 at gmail.com>
 écrivait :

> Glad to see the requirement for gcc go away, but this does not build for me
> on -CURRENT r263062 amd64. I get:
> 
>  --- rxvtperl.o ---
> c++ -I.. -I. -I. -I./../libev -I./../libptytty/src -DHAVE_CONFIG_H
> -I/usr/local/include -D_THREAD_SAFE -I/usr/local/include   -D_THREAD_SAFE
> -I/usr/local/include  -I/usr/local/include/freetype2   -I/usr/local/include
>  -I/usr/local/include/freetype2 -O2 -pipe -fno-strict-aliasing -w
> -I/usr/local/include -I/usr/local/include/gdk-pixbuf-2.0 -pthread
> -I/usr/local/include/glib-2.0 -I/usr/local/include
> -I/usr/local/include/libpng15
> -DAPPLLIB_EXP="/usr/local/lib/perl5/5.16/BSDPAN" -DHAS_FPSETMASK
> -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector
> -I/usr/local/include  -I/usr/local/lib/perl5/5.16/mach/CORE
> -DLIBDIR="\"/usr/local/lib/urxvt\"" -c rxvtperl.C
> --- rxvtc ---
> c++  -o rxvtc rxvtc.o rxvtdaemon.o fdpass_wrapper.o -lstdc++ -lutil -lm
> --- rxvtperl.o ---
> ./rxvtperl.c:5493:5: error: declaration of 'Perl___notused' has a different
> language linkage
>     dVAR; dXSARGS;
>     ^
> /usr/local/lib/perl5/5.16/mach/CORE/perl.h:174:17: note: expanded from
> macro 'dVAR'
> #  define dVAR          dNOOP

Thanks for the report!

Actually the problem is not directly related to rxvt-unicode on
-CURRENT, but it seems that there is a problem with Perl detected by
clang34:

the file rxvtperl.C is generated by xsubpp from rxvtperl.xs, and the
culprit stuff is inserted from ParseXS.pm.

Could you please try the hereunder patch?

--- ParseXS.pm.diff begins here ---
--- /usr/local/lib/perl5/5.16/ExtUtils/ParseXS.pm.orig	2014-02-20 15:35:19.000000000 +0100
+++ /usr/local/lib/perl5/5.16/ExtUtils/ParseXS.pm	2014-03-13 13:27:16.000000000 +0100
@@ -508,7 +508,7 @@
 #XS_EUPXS(XS_${Full_func_name}); /* prototype to pass -Wmissing-prototypes */
 #XS_EUPXS(XS_${Full_func_name})
 #[[
-#    dVAR; dXSARGS;
+#    dXSARGS;
 EOF
     print Q(<<"EOF") if $ALIAS;
 #    dXSI32;
--- ParseXS.pm.diff ends here ---

Of course, this is just a work-around: the right solution would be to
modifify the Perl port, but I don't know the possible impacts, and I
prefer let the Perl team check it (perl@ Cc'ed).

Best regards,
-- 
Th. Thomas.


More information about the svn-ports-head mailing list