[Spice-devel] xf86-video-qxl + libspice-server: no image on FreeBSD

Oleg Ginzburg olevole at olevole.ru
Wed Jan 17 09:15:03 UTC 2018


On Thu, Jan 11, 2018 at 1:45 PM, Frediano Ziglio <fziglio at redhat.com> wrote:

> > On Tue, Jan 9, 2018 at 10:09 PM, Frediano Ziglio < fziglio at redhat.com >
> > wrote:
>
> > > > Hello!
> >
>
> > > > I would really like to see XSpice and xf86-video-qxl on FreeBSD.
> >
>
> > > > The correction for the FreeBSD build libspice-server.so is quite
> trivial
> > > > and
> >
> > > > mechanical (first and dirty version in attach. I'd like to do the
> FreeBSD
> >
> > > > port later)
> >
>
> > > About the patch:
> >
>
> > > --- server/net-utils.c.orig 2017-09-12 15:00:11.000000000 +0300
> >
> > > +++ server/net-utils.c 2017-12-27 17:40:47.728516000 +0300
> >
> > > @@ -23,6 +23,9 @@
> >
> > > #include <fcntl.h>
> >
> > > #include <stdbool.h>
> >
> > > #include <string.h>
> >
> > > +#include <sys/types.h>
> >
> > > +#include <arpa/inet.h>
> >
> > > +#include <netinet/in.h>
> >
> > > #include <netinet/ip.h>
> >
> > > #include <netinet/tcp.h>
> >
> > > #include <sys/socket.h>
> >
> > > @@ -42,7 +45,7 @@
> >
> > > {
> >
> > > int keepalive = !!enable;
> >
>
> > > - if (setsockopt(fd, SOL_SOCKET, SO_KEEPALIVE, &keepalive,
> > > sizeof(keepalive))
> > > == -1) {
> >
> > > + if (setsockopt(fd, IPPROTO_TCP, SO_KEEPALIVE, &keepalive,
> > > sizeof(keepalive)) == -1) {
> >
> > > if (errno != ENOTSUP) {
> >
> > > spice_printerr("setsockopt for keepalive failed, %s", strerror(errno));
> >
> > > return false;
> >
>
> > > no, this should be SOL_SOCKET as documented also in FreeBSD
> documentation.
> >
>
> > > //skipped//
> >
>
> > Oops! It's my fault. It seems that this was the cause of the problem .
> Now
> > spice/qxl works on FreeBSD as expected:
> > https://snag.gy/4LSavc.jpg
>
> Great! Can you confirm if https://lists.freedesktop.org/
> archives/spice-devel/2018-January/041373.html
> is working?
>
>
> Frediano
>

Confirm - these changes work successfully, tested on: FreeBSD 11.1-RELEASE
and FreeBSD 12-CURRENT (aka HEAD).

Will these changes be included in the next release?

There is another small issue of build libspice-server on FreeBSD
platform: OpenSSL
is included in the FreeBSD base.
However, the pkcconf does not find it without these changes:

https://reviews.freebsd.org/D13896  ( see head/devel/libspice-server/files/
patch-configure.ac )

Another way to fix it - install openssl from ports or packages ( while base
OpenSSL placed on /usr/lib and /usr/include, 3-rd packages and openssl from
ports/packages placed in /usr/local prefix and pkgconf finds it).
Nevertheless, at the moment there is no strong reason to add dependency for
OpenSSL from ports/packages.

Can you review this patch for configure.ac ? I believe this patch can also
be useful for other platforms, including MacOSX.  Perhaps it can also be
included in the upstream. Otherwise, it will remain in FreeBSD ports tree.

PS: libspice-server and xf86-video-qxl driver committed and available in
FreeBSD ports tree/packages now. Thanks for the help!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20180117/034adead/attachment.html>


More information about the Spice-devel mailing list