summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sys-libs/gpm
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sys-libs/gpm')
-rw-r--r--sys-libs/gpm/Manifest2
-rw-r--r--sys-libs/gpm/files/0001-daemon-use-sys-ioctl.h-for-ioctl.patch31
-rw-r--r--sys-libs/gpm/files/0001-fixup-make-warnings.patch35
-rw-r--r--sys-libs/gpm/files/gpm-1.20.5-abi.patch13
-rw-r--r--sys-libs/gpm/files/gpm-1.20.6-disablestatic.patch66
-rw-r--r--sys-libs/gpm/files/gpm.conf.d23
-rw-r--r--sys-libs/gpm/files/gpm.rc638
-rw-r--r--sys-libs/gpm/files/gpm.rc6-229
-rw-r--r--sys-libs/gpm/files/gpm.service12
-rw-r--r--sys-libs/gpm/gpm-1.20.6-r1.ebuild71
-rw-r--r--sys-libs/gpm/gpm-1.20.6.ebuild60
-rw-r--r--sys-libs/gpm/gpm-1.20.7-r1.ebuild65
-rw-r--r--sys-libs/gpm/gpm-1.20.7-r2.ebuild77
-rw-r--r--sys-libs/gpm/gpm-1.20.7.ebuild64
-rw-r--r--sys-libs/gpm/metadata.xml5
15 files changed, 591 insertions, 0 deletions
diff --git a/sys-libs/gpm/Manifest b/sys-libs/gpm/Manifest
new file mode 100644
index 000000000000..5a1f85499afa
--- /dev/null
+++ b/sys-libs/gpm/Manifest
@@ -0,0 +1,2 @@
+DIST gpm-1.20.6.tar.lzma 1280871 SHA256 27abb8a9142d3f7c31aeade2f2f1ed4b76bc760e181f552c504a7a9be00a868f SHA512 6f12d49cb690506ed116251376f0a2c946d86d323e93e11b9c71e7c40212fcc25b9ed364cd4dca3e5f0666fc7d9c38f1c3cdf6e80924cc68aef8623b39c0e623 WHIRLPOOL 05bee4c9156bbde78ea6ee06d7c4afba39899d2877a90a72e60bdab8c921fca9041cbebe5fa0afcc055a1cec2b0674392bcb9b3f1712103f236172e54e15b3b9
+DIST gpm-1.20.7.tar.lzma 789691 SHA256 a955053b36556ffa7c628ce18fd6de7d625966573fa412fb08869533d8f7385c SHA512 a502741e2f457b47e41c6d155b1f7ef7c95384fd394503f82ddacf80cde9cdc286c906c77be12b6af8565ef1c3ab24d226379c1dcebcfcd15d64bcf3e94b63b9 WHIRLPOOL d3d142c3aa385e2ef4b16c96e0f94c04b3666376d893c516d439737c2f3016a12fff7884a8f18b5e6b58e4ba21d82379204b18621a2f338d8ab6d478e4e1ec1a
diff --git a/sys-libs/gpm/files/0001-daemon-use-sys-ioctl.h-for-ioctl.patch b/sys-libs/gpm/files/0001-daemon-use-sys-ioctl.h-for-ioctl.patch
new file mode 100644
index 000000000000..b6c7809c0eb5
--- /dev/null
+++ b/sys-libs/gpm/files/0001-daemon-use-sys-ioctl.h-for-ioctl.patch
@@ -0,0 +1,31 @@
+From b184152761d8a4dbf73adcffaddac85709949c2f Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Sun, 15 Feb 2009 16:16:51 -0500
+Subject: [PATCH] daemon: use sys/ioctl.h for ioctl()
+
+Including stropts.h for the ioctl() prototype is weird and breaks some
+systems that do not implement stropts.h. Use sys/ioctl.h like normal.
+
+URL: http://bugs.gentoo.org/222099
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+Reported-by: Sergey Dryabzhinsky <sergey.dryabzhinsky@gmail.com>
+---
+ src/daemon/open_console.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/src/daemon/open_console.c b/src/daemon/open_console.c
+index 27b62e2..98297c9 100644
+--- a/src/daemon/open_console.c
++++ b/src/daemon/open_console.c
+@@ -21,7 +21,7 @@
+
+ #include <fcntl.h> /* open and co. */
+ #include <sys/stat.h> /* stat() */
+-#include <stropts.h> /* ioctl */
++#include <sys/ioctl.h> /* ioctl */
+
+ /* Linux specific (to be outsourced in gpm2 */
+ #include <linux/serial.h> /* for serial console check */
+--
+1.6.1.3
+
diff --git a/sys-libs/gpm/files/0001-fixup-make-warnings.patch b/sys-libs/gpm/files/0001-fixup-make-warnings.patch
new file mode 100644
index 000000000000..c55d2f826d01
--- /dev/null
+++ b/sys-libs/gpm/files/0001-fixup-make-warnings.patch
@@ -0,0 +1,35 @@
+From 1bee81778e7355e6b902986b6e0fc5750546444a Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Mon, 16 Feb 2009 15:43:40 -0500
+Subject: [PATCH] fixup make warnings
+
+Split the toplevel dep target to use normal make dependencies and use the
+$(MAKE) var rather than hardcoding `make`.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ Makefile.in | 8 +++++---
+ 1 files changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 90b92d0..89cbb5e 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -26,9 +26,11 @@ SUBDIRS = src doc contrib
+
+ all: do-all
+
+-dep:
+- touch src/$(DEPFILE) # to prevent unecessary warnings
+- make -C src dep
++src/$(DEPFILE):
++ touch $@ # to prevent unecessary warnings
++
++dep: src/$(DEPFILE)
++ $(MAKE) -C src dep
+
+ check: all
+
+--
+1.7.3.1
+
diff --git a/sys-libs/gpm/files/gpm-1.20.5-abi.patch b/sys-libs/gpm/files/gpm-1.20.5-abi.patch
new file mode 100644
index 000000000000..28980151e7a3
--- /dev/null
+++ b/sys-libs/gpm/files/gpm-1.20.5-abi.patch
@@ -0,0 +1,13 @@
+the SONAME upstream was bumped to try and sort out the 1.19.x/1.20.x mess, but
+since we've always had 1.20.x in our tree, we dont care about that breakage.
+
+http://lists.linux.it/pipermail/gpm/2008-June/001026.html
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=473496
+
+--- gpm/configure
++++ gpm/configure
+@@ -1736,2 +1736,2 @@
+-abi_lev="2"
+-abi_age="1"
++abi_lev="1"
++abi_age="20"
diff --git a/sys-libs/gpm/files/gpm-1.20.6-disablestatic.patch b/sys-libs/gpm/files/gpm-1.20.6-disablestatic.patch
new file mode 100644
index 000000000000..cb51a71e6e91
--- /dev/null
+++ b/sys-libs/gpm/files/gpm-1.20.6-disablestatic.patch
@@ -0,0 +1,66 @@
+From b28e69f92f0b0a690e01a7a9b9bc08ffa9e9bc5e Mon Sep 17 00:00:00 2001
+From: Sean McGovern <gseanmcg@gmail.com>
+Date: Mon, 27 Aug 2012 01:00:44 -0400
+Subject: [PATCH] configure: don't build static libgpm by default
+
+---
+ configure.ac | 11 +++++++++++
+ src/Makefile.in | 6 ++++--
+ 2 files changed, 15 insertions(+), 2 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 7245826..899b92d 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -79,6 +79,16 @@ AC_CHECK_HEADERS(sys/sysmacros.h linux/major.h linux/tty.h)
+ # Required headers
+ AC_CHECK_HEADERS(sys/socket.h,,[AC_MSG_ERROR([Required header file missing])])
+
++AC_ARG_ENABLE([static],
++[ --enable-static build static libraries @<:@default=no@:>@])
++
++LIBGPM_A=
++
++AS_IF([test "x$enable_static" = "xyes"], [
++ LIBGPM_A=lib/libgpm.a
++])
++
++
+ AC_ARG_WITH(curses,
+ [ --without-curses disable curses support even if curses found])
+
+@@ -138,6 +148,7 @@ AC_SUBST(ELISP)
+ AC_SUBST(SHLIB)
+ AC_SUBST(PICFLAGS)
+ AC_SUBST(SOLDFLAGS)
++AC_SUBST(LIBGPM_A)
+ AC_SUBST(CURSES_OBJS)
+ AC_SUBST(SHARED_LIBS)
+ AC_SUBST(lispdir)
+diff --git a/src/Makefile.in b/src/Makefile.in
+index da35a5d..d3b1dcd 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -79,7 +79,7 @@ prog/%: prog/%.o
+ # | $(SED) '\''s/\($*\)\.o\([ :]*\)/\1.o \1.lo\2/g'\'' > $(DEPDIR)/$@'
+
+ # Do it all!
+-all: gpm lib/libgpm.so.@abi_lev@ lib/libgpm.a $(PROG)
++all: gpm lib/libgpm.so.@abi_lev@ @LIBGPM_A@ $(PROG)
+
+ gpm: $(GOBJ)
+ $(CC) @LDFLAGS@ $(LDFLAGS) -o $@ $(GOBJ) @LIBS@ $(LIBS) -lm
+@@ -105,7 +105,9 @@ installdirs:
+
+ install: check
+ $(INSTALL_PROGRAM) gpm $(sbindir)/gpm
+- $(INSTALL_DATA) -m 644 lib/libgpm.a $(libdir)/libgpm.a
++ if [ -f lib/libgpm.a ] ; then \
++ $(INSTALL_DATA) -m 644 lib/libgpm.a $(libdir)/libgpm.a ; \
++ fi
+ $(INSTALL_DATA) -m 644 $(srcdir)/headers/gpm.h $(includedir)/gpm.h
+ # POSIX requires the range of a for loop be nonempty and Bash
+ # 2.x goes along; unfortunately that means an additional
+--
+1.7.8.6
+
diff --git a/sys-libs/gpm/files/gpm.conf.d b/sys-libs/gpm/files/gpm.conf.d
new file mode 100644
index 000000000000..f21c25755b4a
--- /dev/null
+++ b/sys-libs/gpm/files/gpm.conf.d
@@ -0,0 +1,23 @@
+# /etc/init.d/gpm
+
+# Please uncomment the type of mouse you have and the appropriate MOUSEDEV entry
+
+MOUSE=ps2
+#MOUSE=imps2
+#MOUSEDEV=/dev/psaux
+MOUSEDEV=/dev/input/mice
+
+# Extra settings
+
+#RESPONSIVENESS=
+#REPEAT_TYPE=raw
+
+# Please uncomment this line if you want gpm to understand charsets used
+# in URLs and names with ~ or : in them, etc. This is a good idea to turn on!
+
+#APPEND="-l \"a-zA-Z0-9_.:~/\300-\326\330-\366\370-\377\""
+
+# Various other options, see gpm(8) manpage for more.
+
+#APPEND="-g 1 -A60"
+#APPEND="-l \"a-zA-Z0-9_.:~/\300-\326\330-\366\370-\377\" -g 1 -A60"
diff --git a/sys-libs/gpm/files/gpm.rc6 b/sys-libs/gpm/files/gpm.rc6
new file mode 100644
index 000000000000..7a3328cb62ce
--- /dev/null
+++ b/sys-libs/gpm/files/gpm.rc6
@@ -0,0 +1,38 @@
+#!/sbin/runscript
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+#NB: Config is in /etc/conf.d/gpm
+
+depend() {
+ need localmount
+ use hotplug logger
+}
+
+checkconfig() {
+ if [ -z "$MOUSEDEV" ] || [ -z "$MOUSE" ] ; then
+ eerror "You need to setup MOUSEDEV and MOUSE in /etc/conf.d/gpm first"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+
+ local params=""
+ [ -n "$RESPONSIVENESS" ] && params="$params -r $RESPONSIVENESS"
+ [ -n "$REPEAT_TYPE" ] && params="$params -R$REPEAT_TYPE"
+ [ -n "$APPEND" ] && params="$params $APPEND "
+
+ ebegin "Starting gpm"
+ start-stop-daemon --start --quiet --exec /usr/sbin/gpm \
+ -- -m ${MOUSEDEV} -t ${MOUSE} ${params}
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping gpm"
+ start-stop-daemon --stop --quiet --pidfile /var/run/gpm.pid
+ eend ${?}
+}
diff --git a/sys-libs/gpm/files/gpm.rc6-2 b/sys-libs/gpm/files/gpm.rc6-2
new file mode 100644
index 000000000000..7f7352784c36
--- /dev/null
+++ b/sys-libs/gpm/files/gpm.rc6-2
@@ -0,0 +1,29 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+#NB: Config is in /etc/conf.d/gpm
+
+command=/usr/sbin/gpm
+command_args="
+ -m ${MOUSEDEV}
+ -t ${MOUSE}
+ ${RESPONSIVENESS:+ -r ${RESPONSIVENESS}}
+ ${REPEAT_TYPE:+ -R${REPEAT_TYPE}}
+ ${APPEND}
+"
+
+pidfile=/var/run/gpm.pid
+
+depend() {
+ need localmount
+ use hotplug logger
+}
+
+start_pre() {
+ if [ -z "${MOUSEDEV}" ] || [ -z "${MOUSE}" ] ; then
+ eerror "You need to setup MOUSEDEV and MOUSE in /etc/conf.d/gpm first"
+ return 1
+ fi
+}
diff --git a/sys-libs/gpm/files/gpm.service b/sys-libs/gpm/files/gpm.service
new file mode 100644
index 000000000000..966ad80060fe
--- /dev/null
+++ b/sys-libs/gpm/files/gpm.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Console Mouse manager
+After=syslog.target
+
+[Service]
+ExecStart=/usr/sbin/gpm -m /dev/input/mice -t exps2
+StandardOutput=syslog
+Type=forking
+PIDFile=/var/run/gpm.pid
+
+[Install]
+WantedBy=multi-user.target
diff --git a/sys-libs/gpm/gpm-1.20.6-r1.ebuild b/sys-libs/gpm/gpm-1.20.6-r1.ebuild
new file mode 100644
index 000000000000..ddebd1dc338f
--- /dev/null
+++ b/sys-libs/gpm/gpm-1.20.6-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# emacs support disabled due to #99533 #335900
+
+EAPI=4
+
+inherit eutils toolchain-funcs autotools
+
+DESCRIPTION="Console-based mouse driver"
+HOMEPAGE="http://www.nico.schottelius.org/software/gpm/"
+SRC_URI="http://www.nico.schottelius.org/software/${PN}/archives/${P}.tar.lzma"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="selinux static-libs"
+
+CDPEND="sys-libs/ncurses"
+DEPEND="${CDEPEND}
+ app-arch/xz-utils
+ virtual/yacc"
+RDEPEND="${CDEPEND}
+ selinux? ( sec-policy/selinux-gpm )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/0001-daemon-use-sys-ioctl.h-for-ioctl.patch #222099
+ epatch "${FILESDIR}"/0001-fixup-make-warnings.patch #206291
+ epatch "${FILESDIR}"/${P}-disablestatic.patch #378283
+
+ # fix ABI values
+ sed -i \
+ -e 's/^abi_lev=.*$/abi_lev="1"/' \
+ -e 's/^abi_age=.*$/abi_age="20"/' \
+ configure.ac || die
+
+ # workaround broken release
+ find -name '*.o' -delete
+
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --sysconfdir=/etc/gpm \
+ $(use_enable static-libs static) \
+ emacs=/bin/false
+}
+
+src_compile() {
+ # make sure nothing compiled is left
+ emake clean
+ emake EMACS=:
+}
+
+src_install() {
+ emake install DESTDIR="${D}" EMACS=: ELISP=""
+
+ dosym libgpm.so.1 /usr/$(get_libdir)/libgpm.so
+ gen_usr_ldscript -a gpm
+
+ insinto /etc/gpm
+ doins conf/gpm-*.conf
+
+ dodoc BUGS Changes README TODO
+ dodoc doc/Announce doc/FAQ doc/README*
+
+ newinitd "${FILESDIR}"/gpm.rc6-2 gpm
+ newconfd "${FILESDIR}"/gpm.conf.d gpm
+}
diff --git a/sys-libs/gpm/gpm-1.20.6.ebuild b/sys-libs/gpm/gpm-1.20.6.ebuild
new file mode 100644
index 000000000000..3a923a97dd5d
--- /dev/null
+++ b/sys-libs/gpm/gpm-1.20.6.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# emacs support disabled due to #99533 #335900
+
+EAPI="2"
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="Console-based mouse driver"
+HOMEPAGE="http://www.nico.schottelius.org/software/gpm/"
+SRC_URI="http://www.nico.schottelius.org/software/${PN}/archives/${P}.tar.lzma"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
+IUSE="selinux"
+
+DEPEND="sys-libs/ncurses
+ app-arch/xz-utils
+ virtual/yacc"
+RDEPEND="selinux? ( sec-policy/selinux-gpm )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.20.5-abi.patch
+ epatch "${FILESDIR}"/0001-daemon-use-sys-ioctl.h-for-ioctl.patch #222099
+ epatch "${FILESDIR}"/0001-fixup-make-warnings.patch #206291
+
+ # workaround broken release
+ find -name '*.o' -delete
+}
+
+src_configure() {
+ econf \
+ --sysconfdir=/etc/gpm \
+ emacs=/bin/false
+}
+
+src_compile() {
+ # make sure nothing compiled is left
+ emake clean || die
+ emake EMACS=: || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" EMACS=: ELISP="" || die
+
+ dosym libgpm.so.1 /usr/$(get_libdir)/libgpm.so
+ gen_usr_ldscript -a gpm
+
+ insinto /etc/gpm
+ doins conf/gpm-*.conf
+
+ dodoc BUGS Changes README TODO
+ dodoc doc/Announce doc/FAQ doc/README*
+
+ newinitd "${FILESDIR}"/gpm.rc6 gpm
+ newconfd "${FILESDIR}"/gpm.conf.d gpm
+}
diff --git a/sys-libs/gpm/gpm-1.20.7-r1.ebuild b/sys-libs/gpm/gpm-1.20.7-r1.ebuild
new file mode 100644
index 000000000000..c2024fd74700
--- /dev/null
+++ b/sys-libs/gpm/gpm-1.20.7-r1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# emacs support disabled due to #99533 #335900
+
+EAPI="4"
+
+inherit eutils systemd toolchain-funcs autotools
+
+DESCRIPTION="Console-based mouse driver"
+HOMEPAGE="http://www.nico.schottelius.org/software/gpm/"
+SRC_URI="http://www.nico.schottelius.org/software/${PN}/archives/${P}.tar.lzma"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
+IUSE="selinux static-libs"
+
+RDEPEND="sys-libs/ncurses
+ selinux? ( sec-policy/selinux-gpm )"
+DEPEND="sys-libs/ncurses
+ app-arch/xz-utils
+ virtual/yacc"
+
+src_prepare() {
+ # fix ABI values
+ sed -i \
+ -e '/^abi_lev=/s:=.*:=1:' \
+ -e '/^abi_age=/s:=.*:=20:' \
+ configure.ac.footer || die
+ sed -i -e '/ACLOCAL/,$d' autogen.sh || die
+ ./autogen.sh
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --sysconfdir=/etc/gpm \
+ $(use_enable static-libs static) \
+ emacs=/bin/false
+}
+
+src_compile() {
+ # make sure nothing compiled is left
+ emake clean
+ emake EMACS=:
+}
+
+src_install() {
+ emake install DESTDIR="${D}" EMACS=: ELISP=""
+
+ dosym libgpm.so.1 /usr/$(get_libdir)/libgpm.so
+ gen_usr_ldscript -a gpm
+
+ insinto /etc/gpm
+ doins conf/gpm-*.conf
+
+ dodoc README TODO
+ dodoc doc/Announce doc/FAQ doc/README*
+
+ newinitd "${FILESDIR}"/gpm.rc6-2 gpm
+ newconfd "${FILESDIR}"/gpm.conf.d gpm
+ systemd_dounit "${FILESDIR}"/gpm.service
+}
diff --git a/sys-libs/gpm/gpm-1.20.7-r2.ebuild b/sys-libs/gpm/gpm-1.20.7-r2.ebuild
new file mode 100644
index 000000000000..a041ff271b92
--- /dev/null
+++ b/sys-libs/gpm/gpm-1.20.7-r2.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# emacs support disabled due to #99533 #335900
+
+EAPI="4"
+
+inherit eutils systemd toolchain-funcs autotools multilib-minimal
+
+DESCRIPTION="Console-based mouse driver"
+HOMEPAGE="http://www.nico.schottelius.org/software/gpm/"
+SRC_URI="http://www.nico.schottelius.org/software/${PN}/archives/${P}.tar.lzma"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 s390 ~sh sparc x86"
+IUSE="selinux static-libs"
+
+RDEPEND=">=sys-libs/ncurses-5.9-r3[${MULTILIB_USEDEP}]
+ selinux? ( sec-policy/selinux-gpm )
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-baselibs-20130224-r12
+ !app-emulation/emul-linux-x86-baselibs[-abi_x86_32(-)]
+ )"
+DEPEND=">=sys-libs/ncurses-5.9-r3[${MULTILIB_USEDEP}]
+ app-arch/xz-utils
+ sys-apps/texinfo
+ virtual/yacc"
+
+src_prepare() {
+ # fix ABI values
+ sed -i \
+ -e '/^abi_lev=/s:=.*:=1:' \
+ -e '/^abi_age=/s:=.*:=20:' \
+ configure.ac.footer || die
+ sed -i -e '/ACLOCAL/,$d' autogen.sh || die
+ ./autogen.sh
+ eautoreconf
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ econf \
+ --sysconfdir=/etc/gpm \
+ $(use_enable static-libs static) \
+ emacs=/bin/false
+}
+
+multilib_src_compile() {
+ # make sure nothing compiled is left
+ emake clean
+ emake EMACS=: $(multilib_is_native_abi || echo "PROG= ")
+}
+
+multilib_src_install() {
+ emake \
+ DESTDIR="${D}" \
+ EMACS=: ELISP="" \
+ $(multilib_is_native_abi || echo "PROG= ") \
+ install
+
+ dosym libgpm.so.1 /usr/$(get_libdir)/libgpm.so
+ multilib_is_native_abi && gen_usr_ldscript -a gpm
+}
+
+multilib_src_install_all() {
+ insinto /etc/gpm
+ doins conf/gpm-*.conf
+
+ dodoc README TODO
+ dodoc doc/Announce doc/FAQ doc/README*
+
+ newinitd "${FILESDIR}"/gpm.rc6-2 gpm
+ newconfd "${FILESDIR}"/gpm.conf.d gpm
+ systemd_dounit "${FILESDIR}"/gpm.service
+}
diff --git a/sys-libs/gpm/gpm-1.20.7.ebuild b/sys-libs/gpm/gpm-1.20.7.ebuild
new file mode 100644
index 000000000000..6cc573ca7c92
--- /dev/null
+++ b/sys-libs/gpm/gpm-1.20.7.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# emacs support disabled due to #99533 #335900
+
+EAPI="4"
+
+inherit eutils toolchain-funcs autotools
+
+DESCRIPTION="Console-based mouse driver"
+HOMEPAGE="http://www.nico.schottelius.org/software/gpm/"
+SRC_URI="http://www.nico.schottelius.org/software/${PN}/archives/${P}.tar.lzma"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE="selinux static-libs"
+
+RDEPEND="sys-libs/ncurses
+ selinux? ( sec-policy/selinux-gpm )"
+DEPEND="sys-libs/ncurses
+ app-arch/xz-utils
+ virtual/yacc"
+
+src_prepare() {
+ # fix ABI values
+ sed -i \
+ -e '/^abi_lev=/s:=.*:=1:' \
+ -e '/^abi_age=/s:=.*:=20:' \
+ configure.ac.footer || die
+ sed -i -e '/ACLOCAL/,$d' autogen.sh || die
+ ./autogen.sh
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --sysconfdir=/etc/gpm \
+ $(use_enable static-libs static) \
+ emacs=/bin/false
+}
+
+src_compile() {
+ # make sure nothing compiled is left
+ emake clean
+ emake EMACS=:
+}
+
+src_install() {
+ emake install DESTDIR="${D}" EMACS=: ELISP=""
+
+ dosym libgpm.so.1 /usr/$(get_libdir)/libgpm.so
+ gen_usr_ldscript -a gpm
+
+ insinto /etc/gpm
+ doins conf/gpm-*.conf
+
+ dodoc README TODO
+ dodoc doc/Announce doc/FAQ doc/README*
+
+ newinitd "${FILESDIR}"/gpm.rc6-2 gpm
+ newconfd "${FILESDIR}"/gpm.conf.d gpm
+}
diff --git a/sys-libs/gpm/metadata.xml b/sys-libs/gpm/metadata.xml
new file mode 100644
index 000000000000..96a2d586367d
--- /dev/null
+++ b/sys-libs/gpm/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>base-system</herd>
+</pkgmetadata>