aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2019-01-29 13:38:51 -0500
committerGitHub <noreply@github.com>2019-01-29 13:38:51 -0500
commitc6b4153748f8e53363cda87edfea43a432f4a255 (patch)
treef3d655ef0f0a18959f2f567d579f10089f7adf4d
parentfeb1b9b1cbcf675a4bb449ce30c50522cb8b09f5 (diff)
parent75371d2c8845c09e77b97dc91bbd536ccc0eb3ab (diff)
Merge pull request #1510 from emersion/libdrm-version
Require libdrm >= 2.4.95
-rw-r--r--backend/drm/renderer.c4
-rw-r--r--include/wlr/render/dmabuf.h9
-rw-r--r--meson.build2
-rw-r--r--render/gles2/texture.c7
-rw-r--r--types/meson.build8
-rw-r--r--types/wlr_linux_dmabuf_v1.c1
6 files changed, 11 insertions, 20 deletions
diff --git a/backend/drm/renderer.c b/backend/drm/renderer.c
index fa235af9..b77a7ce0 100644
--- a/backend/drm/renderer.c
+++ b/backend/drm/renderer.c
@@ -14,10 +14,6 @@
#include "backend/drm/drm.h"
#include "glapi.h"
-#ifndef DRM_FORMAT_MOD_LINEAR
-#define DRM_FORMAT_MOD_LINEAR 0
-#endif
-
bool init_drm_renderer(struct wlr_drm_backend *drm,
struct wlr_drm_renderer *renderer, wlr_renderer_create_func_t create_renderer_func) {
renderer->gbm = gbm_create_device(drm->fd);
diff --git a/include/wlr/render/dmabuf.h b/include/wlr/render/dmabuf.h
index 32cfe874..1d61da4e 100644
--- a/include/wlr/render/dmabuf.h
+++ b/include/wlr/render/dmabuf.h
@@ -11,15 +11,6 @@
#include <stdint.h>
-// So we don't have to pull in linux specific drm headers
-#ifndef DRM_FORMAT_MOD_INVALID
-#define DRM_FORMAT_MOD_INVALID ((1ULL<<56) - 1)
-#endif
-
-#ifndef DRM_FORMAT_MOD_LINEAR
-#define DRM_FORMAT_MOD_LINEAR 0
-#endif
-
#define WLR_DMABUF_MAX_PLANES 4
enum wlr_dmabuf_attributes_flags {
diff --git a/meson.build b/meson.build
index c917f6cc..a53f46eb 100644
--- a/meson.build
+++ b/meson.build
@@ -56,7 +56,7 @@ wayland_egl = dependency('wayland-egl')
wayland_protos = dependency('wayland-protocols', version: '>=1.16')
egl = dependency('egl')
glesv2 = dependency('glesv2')
-drm = dependency('libdrm')
+drm = dependency('libdrm', version: '>=2.4.95')
gbm = dependency('gbm', version: '>=17.1.0')
libinput = dependency('libinput', version: '>=1.7.0')
xkbcommon = dependency('xkbcommon')
diff --git a/render/gles2/texture.c b/render/gles2/texture.c
index d035841e..5f982e2c 100644
--- a/render/gles2/texture.c
+++ b/render/gles2/texture.c
@@ -1,13 +1,14 @@
#include <assert.h>
+#include <drm_fourcc.h>
#include <GLES2/gl2.h>
#include <GLES2/gl2ext.h>
#include <stdint.h>
#include <stdlib.h>
#include <wayland-server-protocol.h>
#include <wayland-util.h>
-#include <wlr/render/wlr_texture.h>
#include <wlr/render/egl.h>
#include <wlr/render/interface.h>
+#include <wlr/render/wlr_texture.h>
#include <wlr/types/wlr_matrix.h>
#include <wlr/util/log.h>
#include "glapi.h"
@@ -239,10 +240,6 @@ struct wlr_texture *wlr_gles2_texture_from_wl_drm(struct wlr_egl *egl,
return &texture->wlr_texture;
}
-#ifndef DRM_FORMAT_BIG_ENDIAN
-#define DRM_FORMAT_BIG_ENDIAN 0x80000000
-#endif
-
struct wlr_texture *wlr_gles2_texture_from_dmabuf(struct wlr_egl *egl,
struct wlr_dmabuf_attributes *attribs) {
if (!wlr_egl_is_current(egl)) {
diff --git a/types/meson.build b/types/meson.build
index d459c1e4..f2e41b58 100644
--- a/types/meson.build
+++ b/types/meson.build
@@ -70,5 +70,11 @@ lib_wlr_types = static_library(
'wlr_xdg_output_v1.c',
),
include_directories: wlr_inc,
- dependencies: [pixman, xkbcommon, wayland_server, wlr_protos, libinput],
+ dependencies: [
+ drm.partial_dependency(compile_args: true), # <drm_fourcc.h>
+ pixman,
+ wayland_server,
+ wlr_protos,
+ xkbcommon,
+ ],
)
diff --git a/types/wlr_linux_dmabuf_v1.c b/types/wlr_linux_dmabuf_v1.c
index eb7b2f9e..179602e1 100644
--- a/types/wlr_linux_dmabuf_v1.c
+++ b/types/wlr_linux_dmabuf_v1.c
@@ -1,5 +1,6 @@
#define _POSIX_C_SOURCE 200809L
#include <assert.h>
+#include <drm_fourcc.h>
#include <stdlib.h>
#include <unistd.h>
#include <wayland-server.h>