From fdaf8917322de2127382afb897ceaa35a0a9bc3a Mon Sep 17 00:00:00 2001 From: Aaron Bieber Date: Thu, 23 Jan 2020 13:54:26 -0700 Subject: [PATCH] app: Enable building on OpenBSD Currently the golang.org/x/sys package is missing the Pipe2 call for OpenBSD. The call exists on OpenBSD, it just isn't exposed. This diff was tested buy adding the Pipe2 call and setting: go mod edit -replace=golang.org/x/sys=/pat/to/modified/sys Signed-off-by: Aaron Bieber --- app/headless/headless_egl.go | 2 +- app/internal/egl/egl.go | 2 +- app/internal/egl/egl_unix.go | 4 +++- app/internal/gl/functions.go | 7 +++++-- app/internal/window/egl_x11.go | 2 +- app/internal/window/os_unix.go | 2 +- app/internal/window/os_x11.go | 4 +++- app/internal/xkb/xkb_unix.go | 6 +++--- 8 files changed, 18 insertions(+), 11 deletions(-) diff --git a/app/headless/headless_egl.go b/app/headless/headless_egl.go index 03b36d10..8ccb70a6 100644 --- a/app/headless/headless_egl.go +++ b/app/headless/headless_egl.go @@ -1,6 +1,6 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build linux freebsd windows +// +build linux freebsd windows openbsd package headless diff --git a/app/internal/egl/egl.go b/app/internal/egl/egl.go index ed22fab1..9689448f 100644 --- a/app/internal/egl/egl.go +++ b/app/internal/egl/egl.go @@ -1,6 +1,6 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build linux windows freebsd +// +build linux windows freebsd openbsd package egl diff --git a/app/internal/egl/egl_unix.go b/app/internal/egl/egl_unix.go index 9f07a6a5..1eba3d49 100644 --- a/app/internal/egl/egl_unix.go +++ b/app/internal/egl/egl_unix.go @@ -1,6 +1,6 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build linux freebsd +// +build linux freebsd openbsd package egl @@ -8,6 +8,8 @@ package egl #cgo LDFLAGS: -lEGL #cgo freebsd CFLAGS: -I/usr/local/include #cgo freebsd LDFLAGS: -L/usr/local/lib +#cgo openbsd CFLAGS: -I/usr/X11R6/include +#cgo openbsd LDFLAGS: -L/usr/X11R6/lib #include #include diff --git a/app/internal/gl/functions.go b/app/internal/gl/functions.go index dfd1417c..d7594286 100644 --- a/app/internal/gl/functions.go +++ b/app/internal/gl/functions.go @@ -1,6 +1,6 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build darwin linux freebsd +// +build darwin linux freebsd openbsd package gl @@ -12,9 +12,12 @@ import ( /* #cgo CFLAGS: -Werror -#cgo linux freebsd LDFLAGS: -lGLESv2 -ldl +#cgo linux freebsd openbsd LDFLAGS: -lGLESv2 +#cgo linux freebsd LDFLAGS: -ldl #cgo freebsd CFLAGS: -I/usr/local/include #cgo freebsd LDFLAGS: -L/usr/local/lib +#cgo openbsd CFLAGS: -I/usr/X11R6/include +#cgo openbsd LDFLAGS: -L/usr/X11R6/lib #cgo darwin,!ios CFLAGS: -DGL_SILENCE_DEPRECATION #cgo darwin,!ios LDFLAGS: -framework OpenGL #cgo darwin,ios CFLAGS: -DGLES_SILENCE_DEPRECATION diff --git a/app/internal/window/egl_x11.go b/app/internal/window/egl_x11.go index c022fa96..ffe69c67 100644 --- a/app/internal/window/egl_x11.go +++ b/app/internal/window/egl_x11.go @@ -1,6 +1,6 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build linux,!android,!nox11 freebsd +// +build linux,!android,!nox11 freebsd openbsd package window diff --git a/app/internal/window/os_unix.go b/app/internal/window/os_unix.go index f6ebfe8f..d32a03fb 100644 --- a/app/internal/window/os_unix.go +++ b/app/internal/window/os_unix.go @@ -1,6 +1,6 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build linux,!android freebsd +// +build linux,!android freebsd openbsd package window diff --git a/app/internal/window/os_x11.go b/app/internal/window/os_x11.go index b70b100a..5d8406ac 100644 --- a/app/internal/window/os_x11.go +++ b/app/internal/window/os_x11.go @@ -1,10 +1,12 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build linux,!android,!nox11 freebsd +// +build linux,!android,!nox11 freebsd openbsd package window /* +#cgo openbsd CFLAGS: -I/usr/X11R6/include -I/usr/local/include +#cgo openbsd LDFLAGS: -L/usr/X11R6/lib -L/usr/local/lib #cgo LDFLAGS: -lX11 -lxkbcommon -lxkbcommon-x11 -lX11-xcb #include #include diff --git a/app/internal/xkb/xkb_unix.go b/app/internal/xkb/xkb_unix.go index 23bd87c6..026b2e69 100644 --- a/app/internal/xkb/xkb_unix.go +++ b/app/internal/xkb/xkb_unix.go @@ -1,6 +1,6 @@ // SPDX-License-Identifier: Unlicense OR MIT -// +build linux,!android freebsd +// +build linux,!android freebsd openbsd // Package xkb implements a Go interface for the X Keyboard Extension library. package xkb @@ -20,8 +20,8 @@ import ( /* #cgo LDFLAGS: -lxkbcommon -#cgo freebsd CFLAGS: -I/usr/local/include -#cgo freebsd LDFLAGS: -L/usr/local/lib +#cgo freebsd openbsd CFLAGS: -I/usr/local/include +#cgo freebsd openbsd LDFLAGS: -L/usr/local/lib #include #include