summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJinkun Jang <jinkun.jang@samsung.com>2013-03-13 01:54:42 +0900
committerJinkun Jang <jinkun.jang@samsung.com>2013-03-13 01:54:42 +0900
commit31cf8cd63754b8444ebcda962e58cda42b479184 (patch)
treea53ab6cda3ec0f953d5d6636eca4537dd7613e31
parent1aeb348f6395fa8190494187dd779b20b2cbfbc9 (diff)
downloadx11proto-gesture-31cf8cd63754b8444ebcda962e58cda42b479184.tar.gz
x11proto-gesture-31cf8cd63754b8444ebcda962e58cda42b479184.tar.bz2
x11proto-gesture-31cf8cd63754b8444ebcda962e58cda42b479184.zip
-rw-r--r--LICENSE.MIT20
-rw-r--r--Makefile.am40
-rw-r--r--NOTICE3
-rwxr-xr-xautogen.sh12
-rw-r--r--configure.ac34
-rwxr-xr-xgestureconst.h79
-rwxr-xr-xgestureproto.h295
-rw-r--r--gestureproto.pc.in9
-rw-r--r--packaging/xorg-x11-proto-gesture.spec54
9 files changed, 546 insertions, 0 deletions
diff --git a/LICENSE.MIT b/LICENSE.MIT
new file mode 100644
index 0000000..1c81bdc
--- /dev/null
+++ b/LICENSE.MIT
@@ -0,0 +1,20 @@
+Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
+
+Permission to use, copy, modify, distribute, and sell this software
+and its documentation for any purpose is hereby granted without
+fee, provided that the above copyright notice appear in all copies
+and that both that copyright notice and this permission notice
+appear in supporting documentation, and that the name of Red Hat
+not be used in advertising or publicity pertaining to distribution
+of the software without specific, written prior permission. Red
+Hat makes no representations about the suitability of this software
+for any purpose. It is provided "as is" without express or implied
+warranty.
+
+THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
+NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
+OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..dda053f
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,40 @@
+# Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of Red Hat not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. Red Hat makes no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+#
+
+gesturedir = $(includedir)/X11/extensions
+gesture_HEADERS = \
+ gestureconst.h \
+ gestureproto.h
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = gestureproto.pc
+
+
+MAINTAINERCLEANFILES = ChangeLog INSTALL
+
+.PHONY: ChangeLog INSTALL
+
+ChangeLog:
+ $(CHANGELOG_CMD)
+INSTALL:
+ $(INSTALL_CMD)
+
+dist-hook: ChangeLog INSTALL
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000..c10a9c5
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,3 @@
+Copyright (c) 2011 Samsung Electronics Co., Ltd. All rights reserved.
+Except as noted, this software is licensed under MIT License.
+Please, see the LICENSE.MIT file for MIT License terms and conditions.
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 0000000..904cd67
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,12 @@
+#! /bin/sh
+
+srcdir=`dirname $0`
+test -z "$srcdir" && srcdir=.
+
+ORIGDIR=`pwd`
+cd $srcdir
+
+autoreconf -v --install || exit 1
+cd $ORIGDIR || exit $?
+
+$srcdir/configure --enable-maintainer-mode "$@"
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..1138d55
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,34 @@
+# Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
+#
+# Permission to use, copy, modify, distribute, and sell this software and its
+# documentation for any purpose is hereby granted without fee, provided that
+# the above copyright notice appear in all copies and that both that
+# copyright notice and this permission notice appear in supporting
+# documentation, and that the name of Red Hat not be used in
+# advertising or publicity pertaining to distribution of the software without
+# specific, written prior permission. Red Hat makes no
+# representations about the suitability of this software for any purpose. It
+# is provided "as is" without express or implied warranty.
+#
+# RED HAT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+# EVENT SHALL RED HAT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+# DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+# TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+# PERFORMANCE OF THIS SOFTWARE.
+#
+
+AC_PREREQ([2.60])
+AC_INIT([x11proto-gesture], [0.1.0], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AM_INIT_AUTOMAKE([foreign dist-bzip2])
+AM_MAINTAINER_MODE
+
+# Require xorg-macros: XORG_DEFAULT_OPTIONS
+m4_ifndef([XORG_MACROS_VERSION],
+ [m4_fatal([must install xorg-macros 1.3 or later before running autoconf/autogen])])
+XORG_MACROS_VERSION(1.3)
+XORG_DEFAULT_OPTIONS
+
+AC_OUTPUT([Makefile
+ gestureproto.pc])
diff --git a/gestureconst.h b/gestureconst.h
new file mode 100755
index 0000000..e8f63db
--- /dev/null
+++ b/gestureconst.h
@@ -0,0 +1,79 @@
+/*
+ * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Permission to use, copy, modify, distribute, and sell this software
+ * and its documentation for any purpose is hereby granted without
+ * fee, provided that the above copyright notice appear in all copies
+ * and that both that copyright notice and this permission notice
+ * appear in supporting documentation, and that the name of Red Hat
+ * not be used in advertising or publicity pertaining to distribution
+ * of the software without specific, written prior permission. Red
+ * Hat makes no representations about the suitability of this software
+ * for any purpose. It is provided "as is" without express or implied
+ * warranty.
+ *
+ * THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
+ * NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
+ * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+ * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ */
+
+
+#ifndef _GESTUREPROTO_CONST_H_
+#define _GESTUREPROTO_CONST_H_
+
+/* Reply status */
+#define GestureSuccess 0
+
+#define GestureUngrabSuccess 0
+#define GestureUngrabNotGrabbed 1
+#define GestureUngrabAbnormal 2
+
+#define GestureGrabSuccess 0
+#define GestureGrabAbnormal 1
+#define GestureGrabbedAlready 2
+#define GestureGrabInvalidTime 3
+#define GestureInvalidReply 4
+
+/* Events */
+#define GestureNotifyFlick 0
+#define GestureNotifyPan 1
+#define GestureNotifyPinchRotation 2
+#define GestureNotifyTap 3
+#define GestureNotifyTapNHold 4
+#define GestureNotifyHold 5
+#define GestureNotifyGroup 6
+#define GestureNumberEvents (GestureNotifyGroup + 1)
+
+#define GestureMaskNone 0L
+#define GestureFlickMask (1L << 0)
+#define GesturePanMask (1L << 1)
+#define GesturePinchRotationMask (1L << 2)
+#define GestureTapMask (1L << 3)
+#define GestureTapNHoldMask (1L << 4)
+#define GestureHoldMask (1L << 5)
+#define GestureGroupMask (1L << 6)
+
+/* "Kinds" of events for GestureNotifyGroup */
+#define GestureGroupRemoved 0
+#define GestureGroupAdded 1
+#define GestureGroupCurrent 2
+
+/* "Kinds" of events for GestureNotifyFlick ~ GestureNotifyHold */
+#define GestureEnd 0
+#define GestureBegin 1
+#define GestureUpdate 2
+#define GestureDone 3
+
+/* Errors */
+#define GestureClientNotLocal 0
+#define GestureInValidMask 1
+#define GestureOperationNotSupported 2
+#define GestureNumberErrors (GestureOperationNotSupported + 1)
+
+#endif//_GESTUREPROTO_CONST_H_
+
diff --git a/gestureproto.h b/gestureproto.h
new file mode 100755
index 0000000..16d6f95
--- /dev/null
+++ b/gestureproto.h
@@ -0,0 +1,295 @@
+/*
+ * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
+ *
+ * Permission to use, copy, modify, distribute, and sell this software
+ * and its documentation for any purpose is hereby granted without
+ * fee, provided that the above copyright notice appear in all copies
+ * and that both that copyright notice and this permission notice
+ * appear in supporting documentation, and that the name of Red Hat
+ * not be used in advertising or publicity pertaining to distribution
+ * of the software without specific, written prior permission. Red
+ * Hat makes no representations about the suitability of this software
+ * for any purpose. It is provided "as is" without express or implied
+ * warranty.
+ *
+ * THE AUTHORS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
+ * NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
+ * OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+ * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ *
+ */
+
+#ifndef _GESTUREPROTO_H_
+#define _GESTUREPROTO_H_
+
+#include <X11/extensions/gestureconst.h>
+#include <X11/X.h>
+#include <X11/Xmd.h>
+
+#define Fixed INT32
+
+#define GESTURE_EXT_NAME "X Gesture Extension"
+
+#define GESTURE_MAJOR 0 /* current version numbers */
+#define GESTURE_MINOR 1
+#define GESTURE_PATCH 0
+
+// Requests
+#define X_GestureQueryVersion 0
+#define X_GestureSelectEvents 1
+#define X_GestureGetSelectedEvents 2
+#define X_GestureGrabEvent 3
+#define X_GestureUngrabEvent 4
+
+//requests
+typedef struct _GestureSelectEvents {
+ CARD8 reqType; /* always GestureReqCode */
+ CARD8 gestureReqType; /* always X_GestureSelectEvents */
+ CARD16 length B16;
+ CARD32 window B32;
+ CARD32 mask B32;
+} xGestureSelectEventsReq;
+#define sz_xGestureSelectEventsReq 12
+
+typedef struct _GestureGetSelectedEvents {
+ CARD8 reqType; /* always GestureReqCode */
+ CARD8 gestureReqType; /* always X_GestureGetSelectedEvents */
+ CARD16 length B16;
+ CARD32 window B32;
+} xGestureGetSelectedEventsReq;
+#define sz_xGestureGetSelectedEventsReq 8
+
+typedef struct _GestureGrabEvent {
+ CARD8 reqType; /* always GestureReqCode */
+ CARD8 gestureReqType; /* always X_GestureGrabEvent */
+ CARD16 length B16;
+ CARD32 window B32;
+ CARD32 eventType B32; /* gesture event type such as "GestureNotifyFlick" */
+ CARD8 num_finger; /* number of fingers in a gesture event */
+ CARD8 pad1;
+ CARD16 pad2 B16;
+ Time time B32; /* client request timestamp */
+} xGestureGrabEventReq;
+#define sz_xGestureGrabEventReq 20
+
+typedef struct _GestureUngrabEvent {
+ CARD8 reqType; /* always GestureReqCode */
+ CARD8 gestureReqType; /* always X_GestureUngrabEvent */
+ CARD16 length B16;
+ CARD32 window B32;
+ CARD32 eventType B32; /* gesture event type such as "GestureNotifyFlick" */
+ CARD8 num_finger; /* number of fingers in a gesture event */
+ CARD8 pad1;
+ CARD16 pad2 B16;
+ Time time B32; /* client request timestamp */
+} xGestureUngrabEventReq;
+#define sz_xGestureUngrabEventReq 20
+
+typedef struct _GestureQueryVersion {
+ CARD8 reqType; /* always GestureReqCode */
+ CARD8 gestureReqType; /* always X_GestureQueryVersion */
+ CARD16 length B16;
+} xGestureQueryVersionReq;
+#define sz_xGestureQueryVersionReq 4
+
+//replys for synchronous reqs
+typedef struct {
+ BYTE type; /* X_Reply */
+ BOOL pad1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 mask;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGestureGetSelectedEventsReply;
+#define sz_xGestureGetSelectedEventsReply 32
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE status;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGestureGrabEventReply;
+#define sz_xGestureGrabEventReply 32
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BYTE status;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGestureUngrabEventReply;
+#define sz_xGestureUngrabEventReply 32
+
+typedef struct {
+ BYTE type; /* X_Reply */
+ BOOL pad1;
+ CARD16 sequenceNumber B16;
+ CARD32 length B32;
+ CARD16 majorVersion B16; /* major version of Gesture extension protocol */
+ CARD16 minorVersion B16; /* minor version of Gesture extension protocol */
+ CARD32 patchVersion B32; /* patch version of Gesture extension protocol */
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+ CARD32 pad6 B32;
+} xGestureQueryVersionReply;
+#define sz_xGestureQueryVersionReply 32
+
+//events
+typedef struct _GestureNotifyGroup {
+ BYTE type; /* always GestureEventBase + event type */
+ BYTE kind; /* subevent type : GestureNotifyGroup */
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32; /* server timestamp when event happened */
+ CARD8 groupid;
+ CARD8 num_group;
+ CARD16 pad1 B16;
+ CARD32 pad2 B32;
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+ CARD32 pad5 B32;
+} xGestureNotifyGroupEvent;
+#define sz_xGestureNotifyGroupEvent 32
+
+typedef struct _GestureNotifyFlick {
+ BYTE type; /* always GestureEventBase + event type */
+ BYTE kind; /* subevent type : GestureNotifyFlick */
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32; /* server timestamp when event happened */
+ CARD8 num_finger;
+ CARD8 direction; /* 8 way direction (0 ~ 7) */
+ CARD16 distance B16; /* distance between first point and last point (pixel) */
+ Time duration B32; /* time difference between press and release (ms) */
+ Fixed angle B32; /* angel difference between horizontal line and flick line (radian) */
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+} xGestureNotifyFlickEvent;
+#define sz_xGestureNotifyFlickEvent 32
+
+typedef struct _GestureNotifyPan {
+ BYTE type; /* always GestureEventBase + event type */
+ BYTE kind; /* subevent type : GestureNotifyPan */
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32; /* server timestamp when event happened */
+ CARD8 num_finger;
+ CARD8 direction; /* 8 way direction (0 ~ 7) */
+ CARD16 distance B16; /* distance between first point and last point (pixel)*/
+ Time duration B32; /* time difference between press and release (ms) */
+ CARD16 dx B16; /* x coordinate delta */
+ CARD16 dy B16; /* y coordinate delta */
+ CARD32 pad1 B32;
+ CARD32 pad2 B32;
+} xGestureNotifyPanEvent;
+#define sz_xGestureNotifyPanEvent 32
+
+typedef struct _GestureNotifyPinchRotation {
+ BYTE type; /* always GestureEventBase + event type */
+ BYTE kind; /* subevent type : GestureNotifyPinchRotation */
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32; /* server timestamp when event happened */
+ CARD8 num_finger;
+ CARD8 pad1;
+ CARD16 distance B16; /* distance from center (pixel) */
+ CARD16 cx B16; /* center x coordinate */
+ CARD16 cy B16; /* center y coordinate */
+ Fixed zoom B32; /* zoom factor (base : 1.0) */
+ Fixed angle B32; /* angel difference between first line and current line (radian) */
+ CARD32 pad2 B32;
+} xGestureNotifyPinchRotationEvent;
+#define sz_xGestureNotifyPinchRotationEvent 32
+
+typedef struct _GestureNotifyTap {
+ BYTE type; /* always GestureEventBase + event type */
+ BYTE kind; /* subevent type : GestureNotifyTap */
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32; /* server timestamp when event happened */
+ CARD8 num_finger;
+ CARD8 pad1;
+ CARD16 cx B16; /* center x coordinate */
+ CARD16 cy B16; /* center y coordinate */
+ CARD8 tap_repeat; /* tap repeats such as SINGLE_TAP, DBL_TAP and so on */
+ CARD8 pad2;
+ CARD32 interval; /* time difference between tap and previous tap (ms) */
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+} xGestureNotifyTapEvent;
+#define sz_xGestureNotifyTapEvent 32
+
+typedef struct _GestureNotifyTapNHold {
+ BYTE type; /* always GestureEventBase + event type */
+ BYTE kind; /* subevent type : GestureNotifyTapNHold */
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32; /* server timestamp when event happened */
+ CARD8 num_finger;
+ CARD8 pad1;
+ CARD16 cx B16; /* center x coordinate */
+ CARD16 cy B16; /* center y coordinate */
+ CARD16 pad2 B16;
+ Time interval B32; /* time difference between tap and hold (ms) */
+ Time holdtime B32; /* hold time (ms) */
+ CARD32 pad3 B32;
+} xGestureNotifyTapNHoldEvent;
+#define sz_xGestureNotifyTapNHoldEvent 32
+
+typedef struct _GestureNotifyHold {
+ BYTE type; /* always GestureEventBase + event type */
+ BYTE kind; /* subevent type : GestureNotifyHold */
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32; /* server timestamp when event happened */
+ CARD8 num_finger;
+ CARD8 pad1;
+ CARD16 cx B16; /* center x coordinate */
+ CARD16 cy B16; /* center y coordinate */
+ CARD16 pad2 B16;
+ Time holdtime B32; /* hold time (ms) */
+ CARD32 pad3 B32;
+ CARD32 pad4 B32;
+} xGestureNotifyHoldEvent;
+#define sz_xGestureNotifyHoldEvent 32
+
+union _xGestureCommonEvent {
+ struct {
+ BYTE type;
+ BYTE kind;
+ CARD16 sequenceNumber B16;
+ Window window B32;
+ Time time B32;
+ } any;
+ xGestureNotifyGroupEvent gev;
+ xGestureNotifyFlickEvent fev;
+ xGestureNotifyPanEvent pev;
+ xGestureNotifyPinchRotationEvent pcrev;
+ xGestureNotifyTapEvent tev;
+ xGestureNotifyTapNHoldEvent thev;
+ xGestureNotifyHoldEvent hev;
+};
+
+typedef union _xGestureCommonEvent xGestureCommonEvent;
+
+#endif//_GESTUREPROTO_H_
+
diff --git a/gestureproto.pc.in b/gestureproto.pc.in
new file mode 100644
index 0000000..6ec1c48
--- /dev/null
+++ b/gestureproto.pc.in
@@ -0,0 +1,9 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: AppleWMProto
+Description: AppleWM extension headers
+Version: @PACKAGE_VERSION@
+Cflags: -I${includedir}
diff --git a/packaging/xorg-x11-proto-gesture.spec b/packaging/xorg-x11-proto-gesture.spec
new file mode 100644
index 0000000..af8f279
--- /dev/null
+++ b/packaging/xorg-x11-proto-gesture.spec
@@ -0,0 +1,54 @@
+Name: xorg-x11-proto-gesture
+Summary: X.Org X11 Protocol gestureproto
+Version: 0.1.0
+Release: 3
+Group: Development/System
+License: MIT
+URL: http://www.x.org
+Source0: %{name}-%{version}.tar.gz
+Provides: gestureproto
+
+BuildRoot: %{_tmppath}/%{name}-%{version}-build
+
+BuildRequires: pkgconfig
+BuildRequires: pkgconfig(xorg-macros)
+
+%description
+Description: %{summary}
+This package provides development headers describing the wire protocol
+for the Gesture extension, used to control all manner of options related
+to gesture event handling.
+
+More information about X.Org can be found at:
+<URL:http://www.X.org>
+<URL:http://xorg.freedesktop.org>
+<URL:http://lists.freedesktop.org/mailman/listinfo/xorg>
+
+This package is built from the X.org gestureproto proto module.
+
+%prep
+%setup -q
+
+%build
+
+./autogen.sh
+%reconfigure --disable-static \
+ --libdir=%{_datadir} \
+ --without-xmlto
+
+# Call make instruction with smp support
+make %{?jobs:-j%jobs}
+
+%install
+rm -rf %{buildroot}
+%make_install
+
+%remove_docs
+
+%clean
+rm -rf %{buildroot}
+
+%files
+%defattr(-,root,root,-)
+%{_includedir}/X11/extensions/*.h
+%{_datadir}/pkgconfig/*.pc