aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2019-01-07 15:24:28 -0500
committerGitHub <noreply@github.com>2019-01-07 15:24:28 -0500
commitfe187fc887d5b62d47e81b25cfa1a67b0fa4cc16 (patch)
tree8478e3a6b450ef6c09287c2a91f19d2b1fca87d0
parente61ea7706b36435836f341bc371124902d5fb412 (diff)
parentbfd0254485f51c2c185a7321bbc9d56aada730ab (diff)
Merge pull request #1454 from jbeich/freebsd
Simplify FreeBSD build
-rw-r--r--.builds/freebsd.yml71
-rw-r--r--backend/session/direct-freebsd.c2
-rw-r--r--backend/session/direct-ipc.c2
-rw-r--r--backend/x11/input_device.c4
-rw-r--r--examples/idle-inhibit.c4
-rw-r--r--examples/layer-shell.c4
-rw-r--r--rootston/cursor.c4
7 files changed, 19 insertions, 72 deletions
diff --git a/.builds/freebsd.yml b/.builds/freebsd.yml
index 7199af85..f1c3d839 100644
--- a/.builds/freebsd.yml
+++ b/.builds/freebsd.yml
@@ -1,64 +1,26 @@
image: freebsd
packages:
-- devel/automake
+- devel/evdev-proto
+- devel/libepoll-shim
+- devel/libudev-devd
+- devel/meson # implies ninja
+- devel/pkgconf
+- graphics/libdrm
+- graphics/mesa-libs
+- graphics/png
+- graphics/wayland
+- graphics/wayland-protocols
- multimedia/ffmpeg
-- devel/gmake
-- devel/json-c
-- devel/libtool
+- x11/libX11
+- x11/libinput
+- x11/libxcb
- x11/libxkbcommon
-- textproc/libxslt
-- x11-toolkits/pango
-- devel/pkgconf
-- print/texinfo
-- x11/xcb-util-image
+- x11/pixman
+# - x11/xcb-util-errors # too recent, not in /quarterly
- x11/xcb-util-wm
-- python36
-- py36-setuptools
sources:
- https://github.com/swaywm/wlroots
tasks:
-- setup: |
- # Don't build unnecessary stuff
- echo "OPTIONS_UNSET+= NLS DOCS EXAMPLES LIBWACOM" | sudo tee -a /etc/make.conf
- # Note: this could probably be set in the FreeBSD base image
- echo "BATCH=yes" | sudo tee -a /etc/make.conf
-- ports_tree: |
- # This is ugly, but fetching and extracting the whole ports tree takes a
- # really-really long time...
- # First we need a clean tree, and renaming is faster than deleting.
- sudo mv /usr/ports /usr/ports.orig
- sudo mkdir /usr/ports
- # Fetch only needed ports
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/GIDs /usr/ports/GIDs
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Keywords /usr/ports/Keywords
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Makefile /usr/ports/Makefile
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Mk /usr/ports/Mk
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Templates /usr/ports/Templates
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/Tools /usr/ports/Tools
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/UIDs /usr/ports/UIDs
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/libevdev /usr/ports/devel/libevdev
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/libmtdev /usr/ports/devel/libmtdev
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/libudev-devd /usr/ports/devel/libudev-devd
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/meson /usr/ports/devel/meson
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/ninja /usr/ports/devel/ninja
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/py-evdev /usr/ports/devel/py-evdev
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/devel/py-six /usr/ports/devel/py-six
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/graphics/wayland-protocols /usr/ports/graphics/wayland-protocols
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/graphics/wayland /usr/ports/graphics/wayland
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/lang/python27 /usr/ports/lang/python27
- sudo svnlite export --force https://svn.FreeBSD.org/ports/head/lang/python36 /usr/ports/lang/python36
-- fixup_libinput: |
- sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/devel/libepoll-shim /usr/ports/devel/libepoll-shim
- sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/x11/libinput /usr/ports/x11/libinput
- sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/devel/evdev-proto /usr/ports/devel/evdev-proto
- sudo svnlite export https://github.com/FreeBSDDesktop/freebsd-ports/branches/feature/input/devel/py-pyudev /usr/ports/devel/py-pyudev
-- ports_build: |
- # v4l_compat is a dependency of libinput, but the version in the ports tree
- # conflicts with the new evdev-proto. It can be safely removed though.
- sudo pkg remove -fy v4l_compat
- cd /usr/ports/devel/evdev-proto && sudo make install clean
- cd /usr/ports/graphics/wayland-protocols/ && sudo make install
- cd /usr/ports/x11/libinput/ && sudo make install clean
- fixup_epoll: |
cat << 'EOF' | sudo tee /usr/local/libdata/pkgconfig/epoll-shim.pc
prefix=/usr/local
@@ -70,7 +32,8 @@ tasks:
Description: epoll shim implemented using kevent
Version: 0
Requires:
- Libs: -L${libdir} -L${sharedlibdir} -lepoll-shim -lthr
+ Libs: -L${libdir} -L${sharedlibdir} -lepoll-shim
+ Libs.private: -pthread -lrt
Cflags: -I${includedir}
EOF
- wlroots: |
diff --git a/backend/session/direct-freebsd.c b/backend/session/direct-freebsd.c
index 342d0d4e..391cc3fd 100644
--- a/backend/session/direct-freebsd.c
+++ b/backend/session/direct-freebsd.c
@@ -1,5 +1,5 @@
#include <assert.h>
-#include <dev/evdev/input.h>
+#include <linux/input.h>
#include <errno.h>
#include <fcntl.h>
#include <signal.h>
diff --git a/backend/session/direct-ipc.c b/backend/session/direct-ipc.c
index 2b9634da..42ca00e1 100644
--- a/backend/session/direct-ipc.c
+++ b/backend/session/direct-ipc.c
@@ -1,7 +1,7 @@
#define _POSIX_C_SOURCE 200809L
#ifdef __FreeBSD__
#define __BSD_VISIBLE 1
-#include <dev/evdev/input.h>
+#include <linux/input.h>
#endif
#include <errno.h>
#include <fcntl.h>
diff --git a/backend/x11/input_device.c b/backend/x11/input_device.c
index a50f478a..915d9958 100644
--- a/backend/x11/input_device.c
+++ b/backend/x11/input_device.c
@@ -2,11 +2,7 @@
#include <wlr/config.h>
-#ifdef __linux__
#include <linux/input-event-codes.h>
-#elif __FreeBSD__
-#include <dev/evdev/input-event-codes.h>
-#endif
#include <xcb/xcb.h>
#include <xcb/xfixes.h>
diff --git a/examples/idle-inhibit.c b/examples/idle-inhibit.c
index 48c812e8..348892ab 100644
--- a/examples/idle-inhibit.c
+++ b/examples/idle-inhibit.c
@@ -8,11 +8,7 @@
#include "idle-inhibit-unstable-v1-client-protocol.h"
#include "xdg-shell-client-protocol.h"
-#ifdef __linux__
#include <linux/input-event-codes.h>
-#elif __FreeBSD__
-#include <dev/evdev/input-event-codes.h>
-#endif
/**
* Usage: idle-inhibit
diff --git a/examples/layer-shell.c b/examples/layer-shell.c
index 77b2f6c3..59e2512d 100644
--- a/examples/layer-shell.c
+++ b/examples/layer-shell.c
@@ -1,9 +1,5 @@
#define _POSIX_C_SOURCE 200112L
-#ifdef __linux__
#include <linux/input-event-codes.h>
-#elif __FreeBSD__
-#include <dev/evdev/input-event-codes.h>
-#endif
#include <assert.h>
#include <GLES2/gl2.h>
#include <limits.h>
diff --git a/rootston/cursor.c b/rootston/cursor.c
index d2d3b510..b7ecc813 100644
--- a/rootston/cursor.c
+++ b/rootston/cursor.c
@@ -7,11 +7,7 @@
#include <wlr/util/edges.h>
#include <wlr/util/log.h>
#include <wlr/util/region.h>
-#ifdef __linux__
#include <linux/input-event-codes.h>
-#elif __FreeBSD__
-#include <dev/evdev/input-event-codes.h>
-#endif
#include "rootston/cursor.h"
#include "rootston/desktop.h"
#include "rootston/view.h"