[zeromq-dev] Build fixes for Sun Studio and ICC

Martin Lucina mato at kotelna.sk
Thu Oct 14 19:26:47 CEST 2010


Hi Mikko,

mikko.koppanen at gmail.com said:
> attached are three patches that I needed to create in order to get
> ZeroMQ master branch to build with Sun One Studio on Linux and ICC on
> Linux.
> 
> Short explanation of each:
> 
> 0001-Fixes-build-on-Linux-using-Sun-Studio-compiler.patch
> 
> It seems that defining _GNU_SOURCE macro on Linux causes Sun Studio to
> barf on GNU related extensions. ICC seems to be recognized as a GNU
> compiler so this should be a safe patch.

Looks good to me.

> 0002-Fix-build-for-ICC.patch
> 
> Fixes the following build errors:
> 
> epoll.cpp(141): error #68: integer conversion resulted in a change of sign
>               timeout ? timeout : -1);
> 
> poll.cpp(130): error #68: integer conversion resulted in a change of sign
>           int rc = poll (&pollset [0], pollset.size (), timeout ? timeout : -1);

Rather than casting to (int) all over the place, can't we change timeout to
a signed type?

> 0003-ICC-related-qualifier-fix.patch (does this change functionality?)
> 
> Fixes the following build errors:
> 
> pipe.hpp(60): error #1098: the qualifier on this friend declaration is ignored
>           friend void zmq::create_pipe (object_t*, object_t*, uint64_t,
> 
> pipe.hpp(129): error #1098: the qualifier on this friend declaration is ignored
>           friend void zmq::create_pipe (object_t*, object_t*, uint64_t,

No idea about this one, I'll take your word for fit.

Thanks for the patches!

-mato



More information about the zeromq-dev mailing list