View | Details | Raw Unified | Return to bug 218383
Collapse All | Expand All

(-)devel/evemu/Makefile (+54 lines)
Line 0 Link Here
1
# Created by: Vladimir Kondratyev <vladimir@kondratyev.su>
2
# $FreeBSD$
3
4
PORTNAME=	evemu
5
PORTVERSION=	2.6.0
6
CATEGORIES=     devel
7
MASTER_SITES=	http://www.freedesktop.org/software/${PORTNAME}/
8
9
MAINTAINER=	vladimir@kondratyev.su
10
COMMENT=	Records and replays EVDEV descriptions and events
11
12
LICENSE=	GPLv3
13
14
BUILD_DEPENDS=	v4l_compat>=0:multimedia/v4l_compat
15
LIB_DEPENDS=	libevdev.so:devel/libevdev
16
17
USES=		tar:xz python:2,build pathfix libtool pkgconfig localbase
18
19
OPTIONS_DEFINE=	MANPAGES PYTHON
20
OPTIONS_DEFAULT=MANPAGES
21
OPTIONS_SUB=	yes
22
23
MANPAGES_BUILD_DEPENDS=		xmlto:textproc/xmlto \
24
				asciidoc:textproc/asciidoc
25
MANPAGES_CONFIGURE_ENV_OFF=	ac_cv_path_XMLTO="" \
26
				ac_cv_path_ASCIIDOC=""
27
PYTHON_RUN_DEPENDS=		${PYTHON_CMD}:${PYTHON_PORTSDIR}
28
PYTHON_CONFIGURE_ENABLE=	python-bindings
29
30
GNU_CONFIGURE=  yes
31
CFLAGS+=	-D_WITH_DPRINTF -include stdlib.h
32
USE_LDCONFIG=   yes
33
INSTALL_TARGET=	install-strip
34
REINPLACE_ARGS=	-i ''
35
36
TEST_TARGET=	check
37
TEST_WRKSRC=	${WRKSRC}/test
38
39
post-patch:
40
	${REINPLACE_CMD} -e 's|program_invocation_short_name|getprogname()|' \
41
		${WRKSRC}/tools/evemu-event.c ${WRKSRC}/tools/evemu-play.c \
42
		${WRKSRC}/tools/evemu-record.c
43
	${REINPLACE_CMD} -e 's/versionsort/alphasort/' \
44
		${WRKSRC}/tools/find_event_devices.c
45
46
# Fix evemu-event.1, evemu-play.1 and evemu-record.1 manpages which are broken
47
# due to docbook-xsl bug: https://sourceforge.net/p/docbook/bugs/1058/
48
post-install-MANPAGES-on:
49
.for manpage in evemu-event.1 evemu-play.1 evemu-record.1
50
	@${REINPLACE_CMD} -e 's|^\.so evemu|.so man1/evemu|' \
51
		${STAGEDIR}${MANPREFIX}/man/man1/${manpage}
52
.endfor
53
54
.include <bsd.port.mk>
(-)devel/evemu/distinfo (+3 lines)
Line 0 Link Here
1
TIMESTAMP = 1491102615
2
SHA256 (evemu-2.6.0.tar.xz) = ed81dd4552ffeb92c346b47e56b249c67f1cb37d5b31fc073ea0ad4858ae3dcc
3
SIZE (evemu-2.6.0.tar.xz) = 507032
(-)devel/evemu/files/patch-src_evemu.c (+21 lines)
Line 0 Link Here
1
--- src/evemu.c.orig	2016-11-08 09:43:24 UTC
2
+++ src/evemu.c
3
@@ -456,16 +456,13 @@ int evemu_write(const struct evemu_devic
4
 static int parse_name(struct evemu_device *dev, const char *line)
5
 {
6
 	int matched;
7
-	char *devname = NULL;
8
+	char devname[UINPUT_MAX_NAME_SIZE];
9
 
10
-	if ((matched = sscanf(line, "N: %m[^\n\r]\n", &devname)) > 0) {
11
+	if ((matched = sscanf(line, "N: %[^\n\r]\n", devname)) > 0) {
12
 		if (strlen(evemu_get_name(dev)) == 0)
13
 			evemu_set_name(dev, devname);
14
 	}
15
 
16
-	if (devname != NULL)
17
-		free(devname);
18
-
19
 	if (matched <= 0)
20
 		error(FATAL, "Expected device name, but got: %s", line);
21
 
(-)devel/evemu/files/patch-tools_evemu-record.c (+12 lines)
Line 0 Link Here
1
--- tools/evemu-record.c.orig	2016-03-01 14:10:40 UTC
2
+++ tools/evemu-record.c
3
@@ -209,6 +209,9 @@ out:
4
 	return rc;
5
 }
6
 
7
+/* Fix broken linux/input.h ioctl define found in multimedia/v4l_compat as of 2017-04-02 */
8
+#undef	EVIOCGRAB
9
+#define	EVIOCGRAB	_IOWINT('E', 0x90)
10
 static inline bool test_grab_device(int fd)
11
 {
12
 	if (ioctl(fd, EVIOCGRAB, (void*)1) < 0) {
(-)devel/evemu/pkg-descr (+8 lines)
Line 0 Link Here
1
Tools and bindings for kernel input event device emulation and data capture
2
and replay.
3
4
Evemu provides a programmatic API to access the kernel input event devices.
5
The original and intended purpose is for supporting multi-touch input,
6
especially with regard to the Ubuntu touch and gesture stack.
7
8
WWW: http://www.freedesktop.org/wiki/Evemu
(-)devel/evemu/pkg-plist (+28 lines)
Line 0 Link Here
1
bin/evemu-describe
2
bin/evemu-device
3
bin/evemu-event
4
bin/evemu-play
5
bin/evemu-record
6
include/evemu.h
7
lib/libevemu.a
8
lib/libevemu.so
9
lib/libevemu.so.3
10
lib/libevemu.so.3.0.3
11
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/__init__.py
12
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/__init__.pyc
13
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/__init__.%%PYTHON_PYOEXTENSION%%
14
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/base.py
15
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/base.pyc
16
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/base.%%PYTHON_PYOEXTENSION%%
17
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/const.py
18
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/const.pyc
19
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/const.%%PYTHON_PYOEXTENSION%%
20
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/exception.py
21
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/exception.pyc
22
%%PYTHON%%%%PYTHON_SITELIBDIR%%/evemu/exception.%%PYTHON_PYOEXTENSION%%
23
libdata/pkgconfig/evemu.pc
24
%%MANPAGES%%man/man1/evemu-describe.1.gz
25
%%MANPAGES%%man/man1/evemu-device.1.gz
26
%%MANPAGES%%man/man1/evemu-event.1.gz
27
%%MANPAGES%%man/man1/evemu-play.1.gz
28
%%MANPAGES%%man/man1/evemu-record.1.gz

Return to bug 218383