summaryrefslogtreecommitdiff
path: root/keymouse
diff options
context:
space:
mode:
Diffstat (limited to 'keymouse')
-rw-r--r--keymouse/Makefile43
-rw-r--r--keymouse/files/keymouse.cfg37
-rwxr-xr-xkeymouse/files/keymouse.init7
-rw-r--r--keymouse/patches/001_including_missing_headers.patch80
4 files changed, 167 insertions, 0 deletions
diff --git a/keymouse/Makefile b/keymouse/Makefile
new file mode 100644
index 0000000..5020cf1
--- /dev/null
+++ b/keymouse/Makefile
@@ -0,0 +1,43 @@
+# Copyright (C) 2010 tuxbrain.com
+#
+# This is free software, licensed under the GNU General Public License v2.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=keymouse
+PKG_VERSION:=1.0
+PKG_RELEASE:=2
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
+PKG_SOURCE_URL:=http://download2.berlios.de/keymouse
+PKG_CAT:=bzcat
+PKG_BUILD_DEPENDS:=libX11
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/keymouse
+ TITLE:=Just a simple mouse emulator
+ SECTION:=utils
+ CATEGORY:=Utilities
+ URL:=http://keymouse.berlios.de
+endef
+PKG_BUILD_DIR:=$(BUILD_DIR)/keymouse-$(PKG_VERSION)
+
+define Package/keymouse/description
+ Just a simple mouse emulator (for Linux) that can be controlled with keyboard. Useful on laptop with broken touch pad or in absence of external mouse device.Requires uinput kernel module
+endef
+
+define Build/Configure
+ (cd "$(PKG_BUILD_DIR)"; ./autogen.sh );
+ $(call Build/Configure/Default)
+
+endef
+define Package/keymouse/install
+ $(INSTALL_DIR) $(1)/usr/bin $(1)/etc $(1)/etc/init.d
+ $(INSTALL_BIN) $(PKG_BUILD_DIR)/src/keymouse $(1)/usr/bin/
+ $(INSTALL_DATA) $(FILES_DIR)/keymouse.cfg $(1)/etc/
+ $(INSTALL_BIN) $(FILES_DIR)/keymouse.init $(1)/etc/init.d/keymouse
+endef
+
+$(eval $(call BuildPackage,keymouse))
diff --git a/keymouse/files/keymouse.cfg b/keymouse/files/keymouse.cfg
new file mode 100644
index 0000000..50c2d8d
--- /dev/null
+++ b/keymouse/files/keymouse.cfg
@@ -0,0 +1,37 @@
+# Keymouse (C) 2008 Francesco Piccinno <stack.box@gmail.com> - BSD License
+# Example configuration
+
+# Global options
+device=/dev/input/event1
+udevice=/dev/uinput
+debug=0
+#dump=1
+dump=0
+touchscreen=0
+
+max accel=200
+max modes=6
+
+# 0 no notify 1 blocknum notify 2 exec notify
+notify=0
+notify exec=
+
+# Mapping (see /usr/include/linux/input.h for keycode or use dump option)
+modes=100,29,56
+bkeys=103,108,106,105,88,87,25
+
+# Actions
+# <action>=mod1:mod2
+
+up=103:0:
+down=108:0:
+right=106:0:
+left=105:0:
+rup=87:0:
+rdown=88:0:
+#lup=42:2:
+#ldown=56:1:
+click=88:1:
+rclick=87:1:
+3click=25:2:
+lock=25:1:
diff --git a/keymouse/files/keymouse.init b/keymouse/files/keymouse.init
new file mode 100755
index 0000000..ce93d17
--- /dev/null
+++ b/keymouse/files/keymouse.init
@@ -0,0 +1,7 @@
+#!/bin/sh /etc/rc.common
+# Copyright (C) 2008 OpenWrt.org
+START=43
+
+start() {
+ start-stop-daemon -b -S -x /usr/bin/keymouse -- /etc/keymouse.cfg 0
+}
diff --git a/keymouse/patches/001_including_missing_headers.patch b/keymouse/patches/001_including_missing_headers.patch
new file mode 100644
index 0000000..bcc6a1f
--- /dev/null
+++ b/keymouse/patches/001_including_missing_headers.patch
@@ -0,0 +1,80 @@
+diff -crB keymouse-1.0/src/app.cpp keymouse-1.0.mod/src/app.cpp
+*** keymouse-1.0/src/app.cpp 2008-03-30 15:41:44.000000000 +0200
+--- keymouse-1.0.mod/src/app.cpp 2010-06-14 13:34:31.565636052 +0200
+***************
+*** 8,14 ****
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include "app.h"
+!
+ using namespace std;
+
+ App::App(const char *file) : m_config(file), m_dev(NULL), m_ordModes(), m_exiting(false)
+--- 8,15 ----
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include "app.h"
+! #include <cstdlib>
+! #include <cstring>
+ using namespace std;
+
+ App::App(const char *file) : m_config(file), m_dev(NULL), m_ordModes(), m_exiting(false)
+diff -crB keymouse-1.0/src/configfile.cpp keymouse-1.0.mod/src/configfile.cpp
+*** keymouse-1.0/src/configfile.cpp 2008-03-08 21:09:36.000000000 +0100
+--- keymouse-1.0.mod/src/configfile.cpp 2010-06-14 13:36:22.096885603 +0200
+***************
+*** 7,12 ****
+--- 7,14 ----
+ #include <fstream>
+ #include <iostream>
+ #include "configfile.h"
++ #include <cstdlib>
++ #include <cstring>
+
+ ConfigFile::ConfigFile(const char *file) : m_values(), m_file(file)
+ {
+Sólo en keymouse-1.0.mod/src: .deps
+diff -crB keymouse-1.0/src/keymouse.cpp keymouse-1.0.mod/src/keymouse.cpp
+*** keymouse-1.0/src/keymouse.cpp 2008-03-10 20:18:37.000000000 +0100
+--- keymouse-1.0.mod/src/keymouse.cpp 2010-06-14 13:36:55.096884176 +0200
+***************
+*** 10,15 ****
+--- 10,17 ----
+
+ #include <signal.h>
+ #include "app.h"
++ #include <cstdlib>
++ #include <cstring>
+
+ using namespace std;
+
+diff -crB keymouse-1.0/src/logger.cpp keymouse-1.0.mod/src/logger.cpp
+*** keymouse-1.0/src/logger.cpp 2008-03-08 21:09:36.000000000 +0100
+--- keymouse-1.0.mod/src/logger.cpp 2010-06-14 13:52:26.245635574 +0200
+***************
+*** 6,11 ****
+--- 6,15 ----
+
+ #include "logger.h"
+ #include <iostream>
++ #include <cstdlib>
++ #include <cstring>
++ #include <cstdarg>
++ #include <cstdio>
+
+ using namespace std;
+
+diff -crB keymouse-1.0/src/shortcut.cpp keymouse-1.0.mod/src/shortcut.cpp
+*** keymouse-1.0/src/shortcut.cpp 2008-03-08 21:09:36.000000000 +0100
+--- keymouse-1.0.mod/src/shortcut.cpp 2010-06-14 13:53:28.896884710 +0200
+***************
+*** 6,11 ****
+--- 6,13 ----
+
+ #include "shortcut.h"
+ #include <linux/input.h>
++ #include <cstdlib>
++ #include <cstring>
+
+ bool Shortcut::locked = false;
+