Add OpenBSD support

This commit is contained in:
Brian Callahan
2025-03-30 10:53:32 -04:00
parent 1de18e93f6
commit 19510c958e
4 changed files with 37 additions and 3 deletions

View File

@@ -56,7 +56,8 @@ alt="Current Packaging status" /></a>.</p>
<ul>
<li><p>Install uxplay on Debian-based Linux systems with
<code>sudo apt install uxplay</code>”; on FreeBSD with
<code>sudo pkg install uxplay</code>. Also available on Arch-based
<code>sudo pkg install uxplay</code>; on OpenBSD with
<code>doas pkg_add uxplay</code>”. Also available on Arch-based
systems through AUR. Since v. 1.66, uxplay is now also packaged in RPM
format by Fedora 38 (“<code>sudo dnf install uxplay</code>”).</p></li>
<li><p>For other RPM-based distributions which have not yet packaged
@@ -373,6 +374,10 @@ gst-plugins-base.</p></li>
Either avahi-libdns or mDNSResponder must also be installed to provide
the dns_sd library. OpenSSL is already installed as a System
Library.</p></li>
<li><p><strong>OpenBSD:</strong> (doas pkg_add) libplist
gstreamer1-plugins-base. avahi-libs must also be installed to provide
the dns_sd library. OpenSSL is already installed as a System
Library.</p></li>
</ul>
<h4 id="building-an-installable-rpm-package">Building an installable RPM
package</h4>
@@ -461,6 +466,9 @@ graphics).</p></li>
gstreamer1-plugins, gstreamer1-plugins-* (* = core, good, bad, x, gtk,
gl, vulkan, pulse, v4l2, …), (+ gstreamer1-vaapi for Intel/AMD
graphics).</p></li>
<li><p><strong>OpenBSD:</strong> Install gstreamer1-libav,
gstreamer1-plugins-* (* = core, bad, base, good). avahi-main must also
be installed for the avahi_daemon rc startup script.</p></li>
</ul>
<h3 id="starting-and-running-uxplay">Starting and running UxPlay</h3>
<p>Since UxPlay-1.64, UxPlay can be started with options read from a

View File

@@ -48,7 +48,8 @@ status](https://repology.org/badge/vertical-allrepos/uxplay.svg)](https://repolo
- Install uxplay on Debian-based Linux systems with
"`sudo apt install uxplay`"; on FreeBSD with
"`sudo pkg install uxplay`". Also available on Arch-based systems
"`sudo pkg install uxplay`"; on OpenBSD with
"`doas pkg_add uxplay`". Also available on Arch-based systems
through AUR. Since v. 1.66, uxplay is now also packaged in RPM
format by Fedora 38 ("`sudo dnf install uxplay`").
@@ -373,6 +374,10 @@ package](#building-an-installable-rpm-package).
avahi-libdns or mDNSResponder must also be installed to provide the
dns_sd library. OpenSSL is already installed as a System Library.
- **OpenBSD:** (doas pkg_add) libplist gstreamer1-plugins-base.
avahi-libs must also be installed to provide the dns_sd library.
OpenSSL is already installed as a System Library.
#### Building an installable RPM package
First-time RPM builders should first install the rpm-build and
@@ -454,6 +459,10 @@ repositories for those distributions.
gstreamer1-plugins-\* (\* = core, good, bad, x, gtk, gl, vulkan,
pulse, v4l2, ...), (+ gstreamer1-vaapi for Intel/AMD graphics).
- **OpenBSD:** Install gstreamer1-libav, gstreamer-plugins-\*
(\* = core, bad, base, good). avahi-main must also be installed for
the avahi_daemon rc startup script.
### Starting and running UxPlay
Since UxPlay-1.64, UxPlay can be started with options read from a

View File

@@ -48,7 +48,8 @@ status](https://repology.org/badge/vertical-allrepos/uxplay.svg)](https://repolo
- Install uxplay on Debian-based Linux systems with
"`sudo apt install uxplay`"; on FreeBSD with
"`sudo pkg install uxplay`". Also available on Arch-based systems
"`sudo pkg install uxplay`"; on OpenBSD with
"`doas pkg_add uxplay`". Also available on Arch-based systems
through AUR. Since v. 1.66, uxplay is now also packaged in RPM
format by Fedora 38 ("`sudo dnf install uxplay`").
@@ -373,6 +374,10 @@ package](#building-an-installable-rpm-package).
avahi-libdns or mDNSResponder must also be installed to provide the
dns_sd library. OpenSSL is already installed as a System Library.
- **OpenBSD:** (doas pkg_add) libplist gstreamer1-plugins-base.
avahi-libs must also be installed to provide the dns_sd library.
OpenSSL is already installed as a System Library.
#### Building an installable RPM package
First-time RPM builders should first install the rpm-build and
@@ -454,6 +459,10 @@ repositories for those distributions.
gstreamer1-plugins-\* (\* = core, good, bad, x, gtk, gl, vulkan,
pulse, v4l2, ...), (+ gstreamer1-vaapi for Intel/AMD graphics).
- **OpenBSD:** Install gstreamer1-libav, gstreamer-plugins-\*
(\* = core, bad, base, good). avahi-main must also be installed for
the avahi_daemon rc startup script.
### Starting and running UxPlay
Since UxPlay-1.64, UxPlay can be started with options read from a

View File

@@ -62,6 +62,11 @@
#define TCP_KEEPIDLE TCP_KEEPALIVE
#endif
/* for OpenBSD, where TCP_KEEPIDLE and TCP_KEEPALIVE are not defined */
#if !defined(TCP_KEEPIDLE) && !defined(TCP_KEEPALIVE)
#define TCP_KEEPIDLE SO_KEEPALIVE
#endif
//struct h264codec_s {
// unsigned char compatibility;
// short pps_size;
@@ -279,6 +284,8 @@ raop_rtp_mirror_thread(void *arg)
logger_log(raop_rtp_mirror->logger, LOGGER_WARNING,
"raop_rtp_mirror could not set stream socket keepalive time %d %s", sock_err, SOCKET_ERROR_STRING(sock_err));
}
/* OpenBSD does not have these options. */
#ifndef __OpenBSD__
option = 10;
if (setsockopt(stream_fd, SOL_TCP, TCP_KEEPINTVL, CAST &option, sizeof(option)) < 0) {
int sock_err = SOCKET_GET_ERROR();
@@ -291,6 +298,7 @@ raop_rtp_mirror_thread(void *arg)
logger_log(raop_rtp_mirror->logger, LOGGER_WARNING,
"raop_rtp_mirror could not set stream socket keepalive probes %d %s", sock_err, SOCKET_ERROR_STRING(sock_err));
}
#endif /* !__OpenBSD__ */
readstart = 0;
}