wayland: Add wayland 1.9.90
authorMark Davies <mark@ecs.vuw.ac.nz>
Mon, 9 May 2016 11:52:10 +0000 (23:52 +1200)
committerMark Davies <mark@ecs.vuw.ac.nz>
Mon, 9 May 2016 11:52:10 +0000 (23:52 +1200)
Computer display server protocol
From FreeBSD patched version.

wayland/DESCR [new file with mode: 0644]
wayland/Makefile [new file with mode: 0644]
wayland/PLIST [new file with mode: 0644]
wayland/buildlink3.mk [new file with mode: 0644]
wayland/distinfo [new file with mode: 0644]
wayland/patches/patch-src_wayland-server.c [new file with mode: 0644]
wayland/patches/patch-tests_test-compositor.c [new file with mode: 0644]
wayland/patches/patch-tests_test-runner.c [new file with mode: 0644]

diff --git a/wayland/DESCR b/wayland/DESCR
new file mode 100644 (file)
index 0000000..4cb85b2
--- /dev/null
@@ -0,0 +1,16 @@
+Wayland is a project to define a protocol for a compositor to talk to
+its clients as well as a library implementation of the protocol.  The
+compositor can be a standalone display server running on Linux kernel
+modesetting and evdev input devices, an X application, or a wayland
+client itself.  The clients can be traditional applications, X servers
+(rootless or fullscreen) or other display servers.
+
+The wayland protocol is essentially only about input handling and
+buffer management.  The compositor receives input events and forwards
+them to the relevant client.  The clients creates buffers and renders
+into them and notifies the compositor when it needs to redraw.  The
+protocol also handles drag and drop, selections, window management and
+other interactions that must go through the compositor.  However, the
+protocol does not handle rendering, which is one of the features that
+makes wayland so simple.  All clients are expected to handle rendering
+themselves, typically through cairo or OpenGL.
diff --git a/wayland/Makefile b/wayland/Makefile
new file mode 100644 (file)
index 0000000..8181af0
--- /dev/null
@@ -0,0 +1,28 @@
+# $NetBSD$
+#
+
+DISTNAME=      wayland-1.9.90
+CATEGORIES=    graphics
+MASTER_SITES=  http://rainbow-runner.nl/freebsd/
+EXTRACT_SUFX=  .tar.xz
+
+MAINTAINER=    pkgsrc-users@NetBSD.org
+HOMEPAGE=      http://wayland.freedesktop.org
+COMMENT=       Computer display server protocol
+LICENSE=       mit
+
+USE_TOOLS+=    gmake pkg-config
+USE_LANGUAGES+=        c c++
+GNU_CONFIGURE= YES
+USE_LIBTOOL=   YES
+CONFIGURE_ARGS+=       --disable-documentation
+
+PKGCONFIG_OVERRIDE+=   src/wayland-client.pc.in
+PKGCONFIG_OVERRIDE+=   src/wayland-cursor.pc.in
+PKGCONFIG_OVERRIDE+=   src/wayland-scanner.pc.in
+PKGCONFIG_OVERRIDE+=   src/wayland-server.pc.in
+
+.include "../../devel/libffi/buildlink3.mk"
+.include "../../textproc/expat/buildlink3.mk"
+.include "../../textproc/libxslt/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/wayland/PLIST b/wayland/PLIST
new file mode 100644 (file)
index 0000000..f1f8bd1
--- /dev/null
@@ -0,0 +1,24 @@
+@comment $NetBSD$
+bin/wayland-scanner
+include/wayland-client-core.h
+include/wayland-client-protocol.h
+include/wayland-client.h
+include/wayland-cursor.h
+include/wayland-egl-core.h
+include/wayland-egl.h
+include/wayland-server-core.h
+include/wayland-server-protocol.h
+include/wayland-server.h
+include/wayland-util.h
+include/wayland-version.h
+lib/libwayland-client.la
+lib/libwayland-cursor.la
+lib/libwayland-server.la
+lib/pkgconfig/wayland-client.pc
+lib/pkgconfig/wayland-cursor.pc
+lib/pkgconfig/wayland-scanner.pc
+lib/pkgconfig/wayland-server.pc
+share/aclocal/wayland-scanner.m4
+share/wayland/wayland-scanner.mk
+share/wayland/wayland.dtd
+share/wayland/wayland.xml
diff --git a/wayland/buildlink3.mk b/wayland/buildlink3.mk
new file mode 100644 (file)
index 0000000..80b1819
--- /dev/null
@@ -0,0 +1,14 @@
+# $NetBSD$
+
+BUILDLINK_TREE+=       wayland
+
+.if !defined(WAYLAND_BUILDLINK3_MK)
+WAYLAND_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.wayland+=        wayland>=1.9.90
+BUILDLINK_PKGSRCDIR.wayland?=  ../../wip/wayland
+
+.include "../../devel/libffi/buildlink3.mk"
+.endif # WAYLAND_BUILDLINK3_MK
+
+BUILDLINK_TREE+=       -wayland
diff --git a/wayland/distinfo b/wayland/distinfo
new file mode 100644 (file)
index 0000000..586d1fe
--- /dev/null
@@ -0,0 +1,9 @@
+$NetBSD$
+
+SHA1 (wayland-1.9.90.tar.xz) = ffed32a005fa91c1eba4e1eaf4de3506f1615950
+RMD160 (wayland-1.9.90.tar.xz) = 38d1cedf203971888e53c3fbce26678d28093356
+SHA512 (wayland-1.9.90.tar.xz) = 3fd70d6d2365086938ddcb0b4cb477f8f35386511938e014e770bdf43449322b3768f940d78d94a19090338f0103ba432c9f0f810a9306cca5e53b8de5df0501
+Size (wayland-1.9.90.tar.xz) = 377944 bytes
+SHA1 (patch-src_wayland-server.c) = 5684c0691dc30f2b8cc9796dc803b5cb98a68a9d
+SHA1 (patch-tests_test-compositor.c) = d92b90063fa2efd0f3d01ca254bb1ca2e789cbaf
+SHA1 (patch-tests_test-runner.c) = 6f1c5f7a1810e89d3e2682c82573e8a6f1e4d804
diff --git a/wayland/patches/patch-src_wayland-server.c b/wayland/patches/patch-src_wayland-server.c
new file mode 100644 (file)
index 0000000..76defaa
--- /dev/null
@@ -0,0 +1,14 @@
+$NetBSD$
+
+--- src/wayland-server.c.orig  2015-11-25 09:48:11.000000000 +0000
++++ src/wayland-server.c
+@@ -88,6 +88,9 @@ struct wl_client {
+       struct wl_map objects;
+       struct wl_signal destroy_signal;
+ #ifdef HAVE_SYS_UCRED_H
++#ifdef __NetBSD__
++# define xucred uucred
++#endif
+       /* FreeBSD */
+       struct xucred xucred;
+ #else
diff --git a/wayland/patches/patch-tests_test-compositor.c b/wayland/patches/patch-tests_test-compositor.c
new file mode 100644 (file)
index 0000000..1cabb88
--- /dev/null
@@ -0,0 +1,15 @@
+$NetBSD$
+
+--- tests/test-compositor.c.orig       2015-11-25 09:48:11.000000000 +0000
++++ tests/test-compositor.c
+@@ -104,7 +104,10 @@ client_destroyed(struct wl_listener *lis
+       ci = wl_container_of(listener, ci, destroy_listener);
+       d = ci->display;
++#ifndef __NetBSD__
+       assert(waitid(P_PID, ci->pid, &status, WEXITED) != -1);
++#else
++#endif
+       switch (status.si_code) {
+       case CLD_KILLED:
diff --git a/wayland/patches/patch-tests_test-runner.c b/wayland/patches/patch-tests_test-runner.c
new file mode 100644 (file)
index 0000000..81cd300
--- /dev/null
@@ -0,0 +1,39 @@
+$NetBSD$
+
+--- tests/test-runner.c.orig   2015-11-25 10:00:50.000000000 +0000
++++ tests/test-runner.c
+@@ -59,14 +59,14 @@ extern const struct test __start_test_se
+ /* This is all disabled for FreeBSD because it gives "can't allocate initial
+  * thread" aborts otherwise. */
+-#ifndef __FreeBSD__
++#if !defined(__FreeBSD__) && !defined(__NetBSD__)
+ static void* (*sys_malloc)(size_t);
+ static void (*sys_free)(void*);
+ static void* (*sys_realloc)(void*, size_t);
+ static void* (*sys_calloc)(size_t, size_t);
+ #endif
+-#ifdef __FreeBSD__
++#if defined(__FreeBSD__) || defined(__NetBSD__)
+ /* XXX review ptrace() usage */
+ #define PTRACE_ATTACH PT_ATTACH
+ #define PTRACE_CONT PT_CONTINUE
+@@ -88,7 +88,7 @@ static int is_atty = 0;
+ extern const struct test __start_test_section, __stop_test_section;
+-#ifndef __FreeBSD__
++#if !defined(__FreeBSD__) && !defined(__NetBSD__)
+ __attribute__ ((visibility("default"))) void *
+ malloc(size_t size)
+ {
+@@ -378,7 +378,7 @@ int main(int argc, char *argv[])
+       int status;
+ #endif
+-#ifndef __FreeBSD__
++#if !defined(__FreeBSD__) && !defined(__NetBSD__)
+       /* Load system malloc, free, and realloc */
+       sys_calloc = dlsym(RTLD_NEXT, "calloc");
+       sys_realloc = dlsym(RTLD_NEXT, "realloc");