summaryrefslogtreecommitdiff
path: root/app-mobilephone
diff options
context:
space:
mode:
Diffstat (limited to 'app-mobilephone')
-rw-r--r--app-mobilephone/anyremote/Manifest5
-rw-r--r--app-mobilephone/anyremote/anyremote-6.5.ebuild44
-rw-r--r--app-mobilephone/anyremote/metadata.xml8
-rw-r--r--app-mobilephone/cobex/Manifest6
-rw-r--r--app-mobilephone/cobex/cobex-0.2.13.ebuild29
-rw-r--r--app-mobilephone/cobex/files/cobex-0.2.13-build.patch108
-rw-r--r--app-mobilephone/cobex/metadata.xml10
-rw-r--r--app-mobilephone/dfu-util/Manifest6
-rw-r--r--app-mobilephone/dfu-util/dfu-util-0.9.ebuild27
-rw-r--r--app-mobilephone/dfu-util/dfu-util-9999.ebuild27
-rw-r--r--app-mobilephone/dfu-util/metadata.xml11
-rw-r--r--app-mobilephone/gammu/Manifest10
-rw-r--r--app-mobilephone/gammu/files/gammu-1.32.0-bashcompdir.patch12
-rw-r--r--app-mobilephone/gammu/files/gammu-1.36.8-bashcompdir.patch12
-rw-r--r--app-mobilephone/gammu/files/gammu-skip-locktest.patch12
-rw-r--r--app-mobilephone/gammu/gammu-1.33.0-r1.ebuild95
-rw-r--r--app-mobilephone/gammu/gammu-1.36.8.ebuild84
-rw-r--r--app-mobilephone/gammu/metadata.xml11
-rw-r--r--app-mobilephone/ganyremote/Manifest7
-rw-r--r--app-mobilephone/ganyremote/ganyremote-6.0.1.ebuild25
-rw-r--r--app-mobilephone/ganyremote/ganyremote-6.3.3.ebuild55
-rw-r--r--app-mobilephone/ganyremote/metadata.xml8
-rw-r--r--app-mobilephone/gnocky/Manifest5
-rw-r--r--app-mobilephone/gnocky/gnocky-0.0.7.ebuild23
-rw-r--r--app-mobilephone/gnocky/metadata.xml5
-rw-r--r--app-mobilephone/gnokii/Manifest10
-rw-r--r--app-mobilephone/gnokii/files/gnokii-0.6.31-fix_xgnokii_inclusion.patch11
-rw-r--r--app-mobilephone/gnokii/files/gnokii-0.6.31-gcc5.patch27
-rw-r--r--app-mobilephone/gnokii/files/gnokii-9999-icon.patch11
-rw-r--r--app-mobilephone/gnokii/files/gnokii-9999-translations.patch10
-rw-r--r--app-mobilephone/gnokii/gnokii-0.6.31-r1.ebuild138
-rw-r--r--app-mobilephone/gnokii/gnokii-9999.ebuild136
-rw-r--r--app-mobilephone/gnokii/metadata.xml17
-rw-r--r--app-mobilephone/gnome-phone-manager/Manifest7
-rw-r--r--app-mobilephone/gnome-phone-manager/files/0001-Adapt-to-Evolution-Data-Server-API-changes.patch541
-rw-r--r--app-mobilephone/gnome-phone-manager/files/gnome-phone-manager-0.69-adwaita-icon-theme.patch12
-rw-r--r--app-mobilephone/gnome-phone-manager/gnome-phone-manager-0.69-r1.ebuild56
-rw-r--r--app-mobilephone/gnome-phone-manager/metadata.xml18
-rw-r--r--app-mobilephone/heimdall/Manifest10
-rw-r--r--app-mobilephone/heimdall/heimdall-1.4.0.ebuild61
-rw-r--r--app-mobilephone/heimdall/heimdall-1.4.1.ebuild60
-rw-r--r--app-mobilephone/heimdall/heimdall-1.4.2.ebuild52
-rw-r--r--app-mobilephone/heimdall/heimdall-9999.ebuild52
-rw-r--r--app-mobilephone/heimdall/metadata.xml11
-rw-r--r--app-mobilephone/kannel-sqlbox/Manifest8
-rw-r--r--app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-configure.patch30
-rw-r--r--app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-sqlinit-hfiles.patch84
-rw-r--r--app-mobilephone/kannel-sqlbox/files/kannel-sqlbox.initd33
-rw-r--r--app-mobilephone/kannel-sqlbox/kannel-sqlbox-1.5.0-r1.ebuild74
-rw-r--r--app-mobilephone/kannel-sqlbox/metadata.xml15
-rw-r--r--app-mobilephone/kannel/Manifest15
-rw-r--r--app-mobilephone/kannel/files/kannel-1.4.3-autotools.patch33
-rw-r--r--app-mobilephone/kannel/files/kannel-1.4.3-custom-wap-ports.patch346
-rw-r--r--app-mobilephone/kannel/files/kannel-1.4.3-external-libuuid.patch849
-rw-r--r--app-mobilephone/kannel/files/kannel-1.5.0-custom-wap-ports.patch346
-rw-r--r--app-mobilephone/kannel/files/kannel-1.5.0-initgroups.patch11
-rw-r--r--app-mobilephone/kannel/files/kannel-bearerbox.initd34
-rw-r--r--app-mobilephone/kannel/files/kannel-smsbox.initd33
-rw-r--r--app-mobilephone/kannel/files/kannel-wapbox.initd33
-rw-r--r--app-mobilephone/kannel/kannel-1.4.3-r2.ebuild119
-rw-r--r--app-mobilephone/kannel/kannel-1.5.0-r3.ebuild128
-rw-r--r--app-mobilephone/kannel/metadata.xml8
-rw-r--r--app-mobilephone/lightblue/Manifest5
-rw-r--r--app-mobilephone/lightblue/lightblue-0.4-r1.ebuild27
-rw-r--r--app-mobilephone/lightblue/metadata.xml11
-rw-r--r--app-mobilephone/metadata.xml33
-rw-r--r--app-mobilephone/obexftp/Manifest12
-rw-r--r--app-mobilephone/obexftp/files/obexftp-0.23-gentoo.patch22
-rw-r--r--app-mobilephone/obexftp/files/obexftp-0.24-config.patch11
-rw-r--r--app-mobilephone/obexftp/files/obexftp-0.24-enable_bluetooth.patch16
-rw-r--r--app-mobilephone/obexftp/files/obexftp-0.24-fuse.patch35
-rw-r--r--app-mobilephone/obexftp/files/obexftp-0.24-norpath.patch11
-rw-r--r--app-mobilephone/obexftp/files/obexftp-0.24-pkgconfig_requires.patch11
-rw-r--r--app-mobilephone/obexftp/files/obexftp-0.24-python_sitedir.patch16
-rw-r--r--app-mobilephone/obexftp/metadata.xml8
-rw-r--r--app-mobilephone/obexftp/obexftp-0.24-r1.ebuild73
-rw-r--r--app-mobilephone/past/Manifest6
-rw-r--r--app-mobilephone/past/files/past-0.0.4-gcc-4.7.patch10
-rw-r--r--app-mobilephone/past/metadata.xml5
-rw-r--r--app-mobilephone/past/past-0.0.4.ebuild26
-rw-r--r--app-mobilephone/pysms/Manifest5
-rw-r--r--app-mobilephone/pysms/metadata.xml9
-rw-r--r--app-mobilephone/pysms/pysms-0.9.4-r1.ebuild28
-rw-r--r--app-mobilephone/qtadb/Manifest5
-rw-r--r--app-mobilephone/qtadb/metadata.xml18
-rw-r--r--app-mobilephone/qtadb/qtadb-0.8.1.ebuild54
-rw-r--r--app-mobilephone/ringtonetools/Manifest6
-rw-r--r--app-mobilephone/ringtonetools/files/ringtonetools-2.26-no-strip.patch11
-rw-r--r--app-mobilephone/ringtonetools/metadata.xml6
-rw-r--r--app-mobilephone/ringtonetools/ringtonetools-2.26.ebuild30
-rw-r--r--app-mobilephone/scmxx/Manifest5
-rw-r--r--app-mobilephone/scmxx/metadata.xml8
-rw-r--r--app-mobilephone/scmxx/scmxx-0.9.0.ebuild27
-rw-r--r--app-mobilephone/smsclient/Manifest7
-rw-r--r--app-mobilephone/smsclient/files/smsclient-2.0.9a-gentoo.patch122
-rw-r--r--app-mobilephone/smsclient/files/smsclient-2.0.9a-sender.patch139
-rw-r--r--app-mobilephone/smsclient/metadata.xml6
-rw-r--r--app-mobilephone/smsclient/smsclient-2.0.9a-r1.ebuild63
-rw-r--r--app-mobilephone/smstools/Manifest13
-rw-r--r--app-mobilephone/smstools/files/3.1.15-makefile-whitespace.patch11
-rw-r--r--app-mobilephone/smstools/files/3.1.21-gawk-location.patch9
-rw-r--r--app-mobilephone/smstools/files/smsd.initd330
-rw-r--r--app-mobilephone/smstools/files/smsd.initd423
-rw-r--r--app-mobilephone/smstools/files/smsd.service11
-rw-r--r--app-mobilephone/smstools/files/smsd.tmpfiles1
-rw-r--r--app-mobilephone/smstools/metadata.xml11
-rw-r--r--app-mobilephone/smstools/smstools-3.1.15-r2.ebuild73
-rw-r--r--app-mobilephone/smstools/smstools-3.1.21-r1.ebuild74
-rw-r--r--app-mobilephone/sobexsrv/Manifest9
-rw-r--r--app-mobilephone/sobexsrv/files/conf.d_sobexsrv35
-rw-r--r--app-mobilephone/sobexsrv/files/init.d_sobexsrv58
-rw-r--r--app-mobilephone/sobexsrv/files/sobexsrv-1.0.1-openobex16.patch49
-rw-r--r--app-mobilephone/sobexsrv/metadata.xml21
-rw-r--r--app-mobilephone/sobexsrv/sobexsrv-1.0.1-r1.ebuild93
-rw-r--r--app-mobilephone/vmoconv/Manifest8
-rw-r--r--app-mobilephone/vmoconv/files/vmoconv-1.0-external-libgsm.patch36
-rw-r--r--app-mobilephone/vmoconv/files/vmoconv-1.0-flags.patch17
-rw-r--r--app-mobilephone/vmoconv/files/vmoconv-1.0-glibc28.patch24
-rw-r--r--app-mobilephone/vmoconv/metadata.xml9
-rw-r--r--app-mobilephone/vmoconv/vmoconv-1.0-r1.ebuild30
-rw-r--r--app-mobilephone/wammu/Manifest7
-rw-r--r--app-mobilephone/wammu/metadata.xml5
-rw-r--r--app-mobilephone/wammu/wammu-0.40.ebuild63
-rw-r--r--app-mobilephone/wammu/wammu-0.43.ebuild65
124 files changed, 5756 insertions, 0 deletions
diff --git a/app-mobilephone/anyremote/Manifest b/app-mobilephone/anyremote/Manifest
new file mode 100644
index 000000000000..462e82636d64
--- /dev/null
+++ b/app-mobilephone/anyremote/Manifest
@@ -0,0 +1,5 @@
+DIST anyremote-6.5.tar.gz 2440051 SHA256 e94cd12bd6c1a04f1f0107266fcfa46d8d8e04d3872c22e76346bea192c31225 SHA512 e6190ec9ea4c66b7b85d77a9e056aeaf83d9730356780e9a54c0d27e31ce89399564b20e4bd62543aa72771049f34d359111d2c015e15fca5891d088391d2b73 WHIRLPOOL bbffc9d3dc662f086d4c4c6fa4a7edc2e86efc60e1c2588e46c3489ff5ecfd5ef93dd54f42c67a3d8f6e17f11565addef6cce75ab2154f229482403dd1aa0c62
+EBUILD anyremote-6.5.ebuild 845 SHA256 42836a85dd3877c5059a78844bbe9b721da6c8aa2bbab97a801fd97db00726a7 SHA512 b1f12fce4e9d47bcaf9a1f97b6aaeda40de1167a70aee610cd239358fed2c212df532eb7b83d677951564d5ce90168d7ff511b20eedf1a2844e259449bd60eb5 WHIRLPOOL dc1c1fae659c0798f2d46259bfc1a6ee7703168a0e42955a8260848b6b58ac2f5717abd7ae604dd473744b1d194b8a4b9f0f259c94d2825674f44c6a36726580
+MISC ChangeLog 3327 SHA256 cb95bbbd5cfdcdaf8a6a12b4cdfa6d310296c829581f3c495ebd790ef242e6fc SHA512 18a07b9f3cf1424e0338210fdeddc2e8fa8222c45786d15e19148328709a09406a4325292e7abed298afb9418d53882b830d955559c0153e37cb02ef9100c23d WHIRLPOOL b257e5bf66305f90eb298aa5b7dd5ab9625ff622389844567a7cfe79b9858dc6653b6b05313951c047320cc0c8790392ca003d1733941a3031edd84713a765fe
+MISC ChangeLog-2015 6764 SHA256 33c4e457d191d4cb3bdb9cd7ef1fc29a299853c3e9dc5d4f6042a56ca726dff2 SHA512 1ee36759f6bd0e7635798f46c6a303b8a6a68ba232dfdd4e4b966ce0ed3eed0f65a153db75995c705ad463067158bdad378ed2f32fbd5c4d46fdf3018420eb96 WHIRLPOOL d9cfab6fdf5f2b6adfc3533906f0616a675774b50b547d8d98fa28c50435dc8e0d62c788af3926487428d09b9f7a1d1fe94612e38f69dd062ae39d35c636614b
+MISC metadata.xml 246 SHA256 7b342fba8138b73e82549db04bba30117c14618eacb3648a791ec18be05a9d4e SHA512 d2929e6457c8072e70cff695c72e7f8e0ee0aa0c10f9850143dc37a05df7af66abdc579ceb750b7e3d8bec5ed246744e42501e66058b4bbd5ebbefcffbb6156a WHIRLPOOL 40a560f34611768a0dc0bce21422950ebeb274634205fb9d3ee6a7a62a5a83bf74c010ca215aefb91daefe436ebafc6e2001ae97a2d4a5ab15120651cc5654b8
diff --git a/app-mobilephone/anyremote/anyremote-6.5.ebuild b/app-mobilephone/anyremote/anyremote-6.5.ebuild
new file mode 100644
index 000000000000..8f44f2a4b9c0
--- /dev/null
+++ b/app-mobilephone/anyremote/anyremote-6.5.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+DESCRIPTION="Bluetooth, infrared or cable remote control service"
+HOMEPAGE="http://anyremote.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="bluetooth dbus zeroconf"
+
+RDEPEND="
+ dev-libs/glib:2
+ x11-libs/libX11
+ x11-libs/libXtst
+ bluetooth? ( net-wireless/bluez )
+ dbus? (
+ dev-libs/dbus-glib
+ sys-apps/dbus
+ )
+ zeroconf? ( net-dns/avahi )
+"
+
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README )
+
+src_configure() {
+ econf \
+ --docdir="/usr/share/doc/${PF}/" \
+ $(use_enable bluetooth) \
+ $(use_enable dbus) \
+ $(use_enable zeroconf avahi)
+}
+
+src_install() {
+ default
+ mv "${ED}"/usr/share/doc/${PF}/{doc-html,html} || die
+}
diff --git a/app-mobilephone/anyremote/metadata.xml b/app-mobilephone/anyremote/metadata.xml
new file mode 100644
index 000000000000..2df201a28b67
--- /dev/null
+++ b/app-mobilephone/anyremote/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="sourceforge">anyremote</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/cobex/Manifest b/app-mobilephone/cobex/Manifest
new file mode 100644
index 000000000000..ae62113814fb
--- /dev/null
+++ b/app-mobilephone/cobex/Manifest
@@ -0,0 +1,6 @@
+AUX cobex-0.2.13-build.patch 2725 SHA256 377754843eb0fe0e9f0139760fd656b628193f36c6c0364004ed557d7d5a368f SHA512 62458ff64467f3a29f298fa0f54d2fc220f9c4b35fa93eacd1ff7f62b38827940fb4cb7b1fee48136518d61ff008f0612913645183e2a2ffbcd3d4c9faff7fa5 WHIRLPOOL 202d1ef786cde581731e68bf32d07eead18efb18be168bba39de8de0c78458c2d2110de2e66a936d2cb376dc70da4065aaa49d6adc943e3e1e400d393e27bd2f
+DIST cobex-0.2.13.tar.gz 27020 SHA256 7f840d59374b398891ed32c4de0eac0a7b71029eb38f658efe1590a685ca59ba SHA512 f05293d9d9f9fdf04809f2a5395bf8be3dd8bfbc592a9ca93b3b2e9b2a78157291b6d38e53b9c7f86e0e32567ee6d4028a9c48062eab4640c9cd85894e7e6a84 WHIRLPOOL 4573bc531a8791bea2856da4bc54b524454a3531a20a12062a5553877dcdcc716f98e0a6c842aa4eeab31f67d2ed9c79097dcfe4a6c52961f44d06e7a0dbdbad
+EBUILD cobex-0.2.13.ebuild 677 SHA256 94df2416c6d7f487cf5ac6cfa6862082c9ddb2f85fbb26ba6490b9dd2eb94bd3 SHA512 e3c408ab2b2dd862de559d65b3f2999cf9ab417e799166d5dd187f60ee2737e7e31d8a9d3149730b73c78f74aa6b4b78c64d8dc25e11f35c4ff9b8c5cf7d3d47 WHIRLPOOL bf5f33751f4ebd74a2b9a8437c2cb8f79f32fd95998b724affb7040f5ac3a6f32a4ce3ab89b43c593066dffdcceb5ad21a0f52ca347281c99a726a711722f7ec
+MISC ChangeLog 2212 SHA256 24df44f81ce6197c4b1d3103b5b707370c06003ea8bffaa41754d013e5736da8 SHA512 216264d48145ad5b5e6a2f141b214e48c6e8626d12954d273f72d7550eccd9ac1441a92e6175cbda1ee46ec7d6314ed7b124d34dac6da56efaad61b55aa6477f WHIRLPOOL 77d587b0ee016b1449bea3b7f5d95960bf5636eae7bc98622c047029a1351b7baa12e19b4f38149382b237d394c3d9963d031421a151b45d263d8ec5e6f5b173
+MISC ChangeLog-2015 938 SHA256 c1a45ca8c3036bd20b60dae0a865d8c8f0585ed36cc60bf9747fbb805721daf9 SHA512 feca1f34c36bd58ea4a5594f857ed63d46eae3d0ce0ad74b98087d26d5ca062bfae76bb86dd7517e81117bbfa271cc5dac856299baef558e7807d988be4d67fe WHIRLPOOL 9979e42fe014e23304e6dfe9a8e2612a880561bdb5a1d8330b34f388fe99e8bcb94ef3cefbcb27bbdb532403f1e09a3e7390a15309c0166796a800c351446b20
+MISC metadata.xml 292 SHA256 ea9e48b12375ce62e0b13ed4e2e768e5331750e7ec1eb9aacbe2a245de862fd8 SHA512 38e434d238b30db7b2934660b092eee86c19d2bf2ced811d5b2de84c5c94815e4f8c82d5a0c1a53e04a44db135c37a4279721ad07ec9a0b8a06df6e5d51a7399 WHIRLPOOL a2b6f31de0a7fe80c49b5c7cd5b58abb1108c5ccad5e46f499b3915869fac39c4d907b20b64c26591139b450aebbc210c3b4895a86135c0c3f4d17ecc2640545
diff --git a/app-mobilephone/cobex/cobex-0.2.13.ebuild b/app-mobilephone/cobex/cobex-0.2.13.ebuild
new file mode 100644
index 000000000000..5e3781bf1ab4
--- /dev/null
+++ b/app-mobilephone/cobex/cobex-0.2.13.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils
+
+DESCRIPTION="small implementation of Obex for phones using the DCU-11 USB-to-serial adapter"
+HOMEPAGE="http://cobex.sourceforge.net/"
+SRC_URI="mirror://sourceforge/cobex/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE=""
+
+DEPEND="dev-libs/libezV24
+ dev-libs/expat"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-build.patch
+ local f
+ for f in get ls mkdir put rm ; do mv ${f}.c cobex_${f}.c || die ; done
+}
+
+src_install() {
+ dobin cobex_{ls,mkdir,put,rm} || die
+ dodoc Changelog README Things_to_know_T310.txt
+}
diff --git a/app-mobilephone/cobex/files/cobex-0.2.13-build.patch b/app-mobilephone/cobex/files/cobex-0.2.13-build.patch
new file mode 100644
index 000000000000..32ac20deb671
--- /dev/null
+++ b/app-mobilephone/cobex/files/cobex-0.2.13-build.patch
@@ -0,0 +1,108 @@
+--- Makefile
++++ Makefile
+@@ -1,75 +1,37 @@
+-CC=gcc
+-CCFLAGS=-O2 -Wall
+-EXTRACCFLAGS=-s -lezV24
+-EXPATCCFLAGS=-lexpat
+-CFILES=put.c get.c cobex_core.c ls.c cobex_tools.c cobex_serial.c rm.c mkdir.c
+-HFILES=cobex_defs.h cobex_core.h capabilities.h cobex_tools.h cobex_serial.h
+-O2FILES=cobex_core.o cobex_tools.o cobex_serial.o
+-PUTO=put.o
+-GETO=get.o
+-LSO=ls.o
+-RMO=rm.o
+-MKDIRO=mkdir.o
+-CAPAO=capability.o
+-COBEXPUT=cobex_put
+-COBEXGET=cobex_get
+-COBEXLS=cobex_ls
+-COBEXRM=cobex_rm
+-COBEXCAPA=cobex_capa
+-COBEXMKDIR=cobex_mkdir
++CC ?= gcc
++CFLAGS ?= -O2
++CFLAGS += -Wall
++LDLIBS += -lezV24
++
++PROGS = cobex_put cobex_get cobex_ls cobex_rm cobex_mkdir
++CFILES = $(wildcard *.c)
++HFILES = $(wildcard *.h)
++O2FILES = cobex_core.o cobex_tools.o cobex_serial.o
++
+ EXTRAFILES = README Changelog COPYING Makefile cobex_put.pl Things_to_know_T310.txt Hacking_pl2303_driver.txt
+ VERSION = 0.2.13
+ PROJNAME = cobex-$(VERSION)
+
+-all: $(COBEXPUT) $(COBEXGET) $(COBEXLS) $(COBEXRM) $(COBEXMKDIR)
++all: $(PROGS)
+
+ model:
+ cd modeldb && make all
+
+-$(COBEXPUT): $(O2FILES) $(PUTO)
+- $(CC) $(CCFLAGS) $(EXTRACCFLAGS) -o $(COBEXPUT) $(PUTO) $(O2FILES)
+-
+-$(COBEXGET): $(O2FILES) $(GETO)
+- $(CC) $(CCFLAGS) $(EXTRACCFLAGS) -o $(COBEXGET) $(GETO) $(O2FILES)
+-
+-$(COBEXRM): $(O2FILES) $(RMO)
+- $(CC) $(CCFLAGS) $(EXTRACCFLAGS) -o $(COBEXRM) $(RMO) $(O2FILES)
+-
+-$(COBEXLS): $(O2FILES) $(LSO)
+- $(CC) $(CCFLAGS) $(EXTRACCFLAGS) $(EXPATCCFLAGS) -o $(COBEXLS) $(LSO) $(O2FILES)
+-
+-$(COBEXCAPA): $(O2FILES) $(CAPAO)
+- $(CC) $(CCFLAGS) $(EXTRACCFLAGS) -o $(COBEXCAPA) $(CAPAO) $(O2FILES)
+-
+-$(COBEXMKDIR): $(O2FILES) $(MKDIRO)
+- $(CC) $(CCFLAGS) $(EXTRACCFLAGS) -o $(COBEXMKDIR) $(MKDIRO) $(O2FILES)
+-
+-
+-test2: $(O2FILES) test2.o
+- $(CC) $(CCFLAGS) $(EXTRACCFLAGS) $(EXPATCCFLAGS) -o test2 test2.o $(O2FILES)
+-
+-.c.o:
+- $(CC) $(CCFLAGS) $(LOCKSERIAL) -c $<
+-
+-$(PUTO): put.c $(O2FILES)
+-
+-$(GETO): get.c $(O2FILES)
+-
+-$(LSO): ls.c $(O2FILES)
+-
+-$(RMO): rm.c $(O2FILES)
+-
+-test2.o: test2.c $(O2FILES)
+-
+-cobex_core.o: cobex_core.c cobex_core.h cobex_defs.h
+-
+-cobex_tools.o: cobex_tools.c cobex_tools.h cobex_defs.h cobex_core.c cobex_core.h
+-
+-cobex_serial.o: cobex_serial.c cobex_serial.h cobex_core.c cobex_core.h
++cobex_put: $(O2FILES)
++cobex_get: $(O2FILES)
++cobex_ls: $(O2FILES)
++cobex_rm: $(O2FILES)
++cobex_mkdir: $(O2FILES)
++cobex_capa: $(O2FILES)
++
++cobex_ls: LDLIBS += -lexpat
++
++-include .depend
++.depend: $(CFILES) $(HFILES)
++ $(CC) -MM $^ > .depend
+
+ clean:
+- rm -f *.o
+- cd modeldb && make clean
++ rm -f *.o $(PROGS)
+
+ printfiles: $(CFILES) $(HFILES)
+ @echo $?
+@@ -88,3 +50,5 @@
+
+ dist-contrib :
+ cd contrib && make dist VERSION=$(VERSION)
++
++.PHONY: all clean dist dist2 dist-modeldb dist-contrib model printfiles
diff --git a/app-mobilephone/cobex/metadata.xml b/app-mobilephone/cobex/metadata.xml
new file mode 100644
index 000000000000..d5cef736f76b
--- /dev/null
+++ b/app-mobilephone/cobex/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>vapier@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">cobex</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/dfu-util/Manifest b/app-mobilephone/dfu-util/Manifest
new file mode 100644
index 000000000000..edf0ada9edd6
--- /dev/null
+++ b/app-mobilephone/dfu-util/Manifest
@@ -0,0 +1,6 @@
+DIST dfu-util-0.9.tar.gz 138397 SHA256 36428c6a6cb3088cad5a3592933385253da5f29f2effa61518ee5991ea38f833 SHA512 caa7148b7a9004e2b1f7bc4f1a26b48abfe311743bc0eeed1ab57459910371affc39b6fe7e74b7cac6ca9de41a9901b7a970253ca92d7d66d5008f8a11d2c952 WHIRLPOOL 5eff75635854bb77ffde458b7c6c3dbe7d366207eaf340a5a6a8db132d34ca86d545c87a38c97c1c9bf109c2218b2499aa4c3dce374da5def952a39c7d893391
+EBUILD dfu-util-0.9.ebuild 611 SHA256 bd9b4d1a70810c8c9366aba3f03c3a7235b5791eb10307f72cccbcfc3a3cf204 SHA512 3df4947a9180bdd44cf3125dfa3d4f8cf4aed05b45397a7365a42de045dc7ed3ce12e2f6c1ae5f0fa5b317fcd0501ee8a40dae514af6baaae48df39cd9eea46f WHIRLPOOL a2b0314f3e62ed10ffe676da4577cabb4fca84f13479ab80bae21e3568c9915771406464c9ba1b50725db30fc2f13067f7c2484d62fb31b40a0b05d6567bfe68
+EBUILD dfu-util-9999.ebuild 613 SHA256 eae66d3962740cc5268ec2ff33741ccac4d28bb5712dce5c552842e96e6efa55 SHA512 6cf5538e2f99326a922767631402887324a7395788bc3435ed410d65b8fa0735ac6fb9414e1ff61f8584f128ce1a992dc3ee1df4c97fb1cc540b7db1edd98727 WHIRLPOOL 618968ebeb55a1ede65547fd589e00f536feb6d2776c8c7ac0ba59c8504e66f7fcbad8acff4b75742cb4d831c119d3b75f7f1ad6fa4e49442b0528af1e672b51
+MISC ChangeLog 3254 SHA256 a40c8c1b36dbf1ba60bdf1f1c0dc26b8b397645505979379353bfcf87e4a998e SHA512 8fdfdaeab4d87235cc4c748f8d1dccc783598b9b3491c717864e75bf3c5bfc5978a6594afa234437a3127c895174cf28cdd67d5392a82dcef406d46e59cda4e3 WHIRLPOOL 1a5d711d9b67022bdee1829c370efe6de492e2740353b80ffb841490e47afed3a7459059bf1faebe805d1bbd7f06ce29075d181da1e6bc44ba1e9247dc19e4a7
+MISC ChangeLog-2015 2348 SHA256 d5338e9755d84e54b70b0cb6ca1d26dd2ccf367f27046cfdecc538f73182b1bf SHA512 d47500808fbeef9d2b7766570de3c03e89aa5695eac97a5e6f2d7cfbbdf57e3da3662f742184e3084b9cd74c7f07b6752ac4452ad6d159b09fa151b659fe1cf4 WHIRLPOOL e9a75a42d925a70da71c40b5144f9fda0784ffbb22d380e37ce985c62e5d9d3cceb0019a7a5b4411f9b14c89569ef9529df5d5c77c009a9a356925dc1131c07e
+MISC metadata.xml 329 SHA256 1b9803c23b40273f8d89f2dafc38e2b81abc1fe62c178edd43294108dce098cd SHA512 95b30bccd833523adaadcee075c48621d3d9e783a4c1c514711aa67697d2c2e5f8d773ac4760c95a9d92ba9b13d3df448202116696c412afd2a844ce7815f678 WHIRLPOOL 4875f214e29cd77f37094f2b87dc3d1a352ec544069d193732d50f3f80e46937f3eaa439b5cf048bc6161b86addb576aeb3bd6686f12a27e82f8a30cc5427ae3
diff --git a/app-mobilephone/dfu-util/dfu-util-0.9.ebuild b/app-mobilephone/dfu-util/dfu-util-0.9.ebuild
new file mode 100644
index 000000000000..e0eaa1553ad5
--- /dev/null
+++ b/app-mobilephone/dfu-util/dfu-util-0.9.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="git://git.code.sf.net/p/dfu-util/dfu-util"
+ inherit autotools git-r3
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+ KEYWORDS="amd64 x86"
+fi
+
+DESCRIPTION="implements the Host (PC) side of the USB DFU (Device Firmware Upgrade) protocol"
+HOMEPAGE="http://dfu-util.sourceforge.net/"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+RDEPEND="virtual/libusb:1"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ default
+ [[ ${PV} == "9999" ]] && eautoreconf
+}
diff --git a/app-mobilephone/dfu-util/dfu-util-9999.ebuild b/app-mobilephone/dfu-util/dfu-util-9999.ebuild
new file mode 100644
index 000000000000..9c3ac27b12b1
--- /dev/null
+++ b/app-mobilephone/dfu-util/dfu-util-9999.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${PV} == "9999" ]] ; then
+ EGIT_REPO_URI="git://git.code.sf.net/p/dfu-util/dfu-util"
+ inherit autotools git-r3
+else
+ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+DESCRIPTION="implements the Host (PC) side of the USB DFU (Device Firmware Upgrade) protocol"
+HOMEPAGE="http://dfu-util.sourceforge.net/"
+
+LICENSE="GPL-2"
+SLOT="0"
+
+RDEPEND="virtual/libusb:1"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ default
+ [[ ${PV} == "9999" ]] && eautoreconf
+}
diff --git a/app-mobilephone/dfu-util/metadata.xml b/app-mobilephone/dfu-util/metadata.xml
new file mode 100644
index 000000000000..e7237c8d32c6
--- /dev/null
+++ b/app-mobilephone/dfu-util/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>embedded@gentoo.org</email>
+ <name>Embedded Gentoo</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">dfu-util</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/gammu/Manifest b/app-mobilephone/gammu/Manifest
new file mode 100644
index 000000000000..23c088f67984
--- /dev/null
+++ b/app-mobilephone/gammu/Manifest
@@ -0,0 +1,10 @@
+AUX gammu-1.32.0-bashcompdir.patch 517 SHA256 06cf9783c57f98a9485f099271ddac8b42ef93a940d1cc8188ca79b70fe88d87 SHA512 938734128c82672cc5c10807e47c213a1d13e2de322694ff40d89ddd786f5cc991a978dfb5f78415480af4797831df7619ae689e94cf56a8391473cdd5a5cea0 WHIRLPOOL 4293080cdb1b791ffba08496946d3a95c53a127993785580a3c1be066f1bc3e8340d3f4093ecd3f40bae81acfe05e10d1d5992b0fa8287533bea9fcab4c8fbde
+AUX gammu-1.36.8-bashcompdir.patch 740 SHA256 fa87ed7a7e1ce233b9cae9a1b6b9c971ff341234c484b693d420ca8b2fbd235b SHA512 74e22ec644c8d221ae12c8fb53d713aee978d5d32a72e7d04f9a31af00242b8083a6999005fcd5e2c50f23a1e33fe7db7a510299941069ce5ecdf9dffa486da4 WHIRLPOOL 8a160bab365e598b83e5499dc69b2e17a2d699eefe0284d253daccabc0f454bc9d879c4be6a8236f4595219f0b6ac264c0010549666b0872a6574b935b55dd48
+AUX gammu-skip-locktest.patch 522 SHA256 fe374362358f1120b1f59a4416c0ee048ba9edaabec02ea7871e812e5404db66 SHA512 a84eac789df444f734de7273b0571353e242cf579c996d57baec44e7f48ad5505d64c236fc015431684ac874b12777bb0279833671e565b94ba00f49bb612e7a WHIRLPOOL 77ad5d7000c0d7232d0559dc34dcccc694b0d295613b0c7ae5a7423f91a0042e38518dfd9b93f02561da53f8e74ff81e104de12e06db14a04041629ea80d1aa9
+DIST gammu-1.33.0.tar.bz2 6535262 SHA256 b326223e36a334dbaed68252a9cf2d90fd898d6de4d1085dcf9c2320881aece3 SHA512 42252a36c7ad5a2945fcf23fcb1b5bb0201d27e8830d3b4a7f4c36bf00f12f5a0f7797e17098bda8d526d4ddc3b1808c0786dfae0feef9424516fa68bf2f3f1e WHIRLPOOL 27c0110da7b686bc7dd19f4f897c59d4e66aa6dbec78dec208fa8c90f70b80c1375c7b8a4b54fe40295d388de61efb11695823a503d1f85a46797c97ddf988fa
+DIST gammu-1.36.8.tar.bz2 2095289 SHA256 0ed9c91b4cc5844cad04531e765bc1194cb02bc3e69e6658cd88bfb1cad74f80 SHA512 4ac86b783570db0105e18ef05fc9408e85d1234ab7de720a232a416ad867d3afbe89db7ed408c06d57f8bb38a2e272f86386f11a89e56f1d750da9e9b579ba09 WHIRLPOOL 36172cbf129647b2de48dbbe14122e71fc4f46e2f6ddb29ce546a1e37ea5c2ee0cad28ee37b29b7ddfb9605e6984c6d80d50108bfe0962417da35a1c5b2688ef
+EBUILD gammu-1.33.0-r1.ebuild 2599 SHA256 6982f789e4f62baf1c91ec41822ec523fe3de0f2522fefc8a4966217d05e2f68 SHA512 d004ecc07995d02a67edc275f24ab87b16ebbf51df1d58bb07ec366e4e3fab77e2ab0e290f1216e6dc981b12331401d788195fa0028cf1429fd31c84f25b797f WHIRLPOOL 26a929aa10a6264691c9f0361be602ce22fce2dee3af46616cc33bfbf434cb5487eb9df2b92d3259cb392f219b63ba2e29eb81cb97142abff14822ffc42b11b5
+EBUILD gammu-1.36.8.ebuild 2239 SHA256 13000d8726e5384f20dec3b9b46bc562ace2018bc883a3801ee1582dee7ac090 SHA512 27603bedd9434456c5be4c353fe21a651b0cb67690136c7c00c53fafc029a0a77651a42b1289da1b34118d162919c9b0917d9772cb9825d4804db1b6b90ac2dc WHIRLPOOL 4d4b6ac40f933559619152616df2f54bd6ae1013f8174a26ec50c40b716ab312d80a53af49f9af2bd992ed8db640d708927295234e6eb42627e6bc29593ab89d
+MISC ChangeLog 3816 SHA256 1e8624e14812e0ab8940f0f8d26ea12941e601e96e693d6a8e920ca395c3717b SHA512 9627cdf909770fedbfc6d4333dfd2ad7bad0a27a0ec470eff39d4cb25fb7f6b837b1134ba6a72faed8f2e057fe31089df7594e1d26eadb2b2d8913a247914609 WHIRLPOOL 0e0b952326cdb0e3a2d8fa57dda823a0e94b07ccc5550e08a388ec236f60d63bdd883753f50f9197f43a839b3ab4f7b406446f5e62a585c9a2e971ea717001aa
+MISC ChangeLog-2015 19224 SHA256 afe4eaaa598e9e590cd49ea5c2b3882347367f0f0341868fc9a79feae0648469 SHA512 706d8db4ea9871b84b33bf720e6c6803bcd5c8e81ff3beb2aec17daf6170f78f4021698b9bce7e16e08cc6b67561064b4a99f5fd1cbb6e3f7ea298674fb2b639 WHIRLPOOL 237c65a38b647be15e7a0ef55b71ad5ec88f86c60517e998e52e470ac92e5d08a4750451fa45dabe01ed0e8d53a1de5ee8276059aeca5d38b3f4973244ded0d3
+MISC metadata.xml 310 SHA256 c04e4b044ad92ec44a61be87cb08ea1c140deb3468c0affafe6a1d632b35b46b SHA512 503a7549a2d87293b79d28bb84206f27b63fc90e34623fc9dd8b60e08eb19667f993a1d3b1c2a6e6db100b71b39f1e86c45b8c2ccfafb558a18e6435512d9f2a WHIRLPOOL b56009c1c06c776bdf3517d8b3e9cd797f01f862834f232103004647764ef70eb855a45b2b0b077f012d1ff79abfb0c7c78dbf0b9bcd0cd4222e84bf8bec04ff
diff --git a/app-mobilephone/gammu/files/gammu-1.32.0-bashcompdir.patch b/app-mobilephone/gammu/files/gammu-1.32.0-bashcompdir.patch
new file mode 100644
index 000000000000..d7ae0a5b8b10
--- /dev/null
+++ b/app-mobilephone/gammu/files/gammu-1.32.0-bashcompdir.patch
@@ -0,0 +1,12 @@
+diff -ruN gammu-1.32.0/contrib/CMakeLists.txt gammu-1.32.0-patched/contrib/CMakeLists.txt
+--- gammu-1.32.0/contrib/CMakeLists.txt 2012-06-27 04:02:27.000000000 -0400
++++ gammu-1.32.0-patched/contrib/CMakeLists.txt 2013-09-17 16:46:22.852164906 -0400
+@@ -85,7 +85,7 @@
+ if (INSTALL_BASH_COMPLETION)
+ install (
+ FILES bash-completion/gammu
+- DESTINATION "/etc/bash_completion.d"
++ DESTINATION "/usr/share/bash-completion/"
+ COMPONENT "bash"
+ )
+ endif (INSTALL_BASH_COMPLETION)
diff --git a/app-mobilephone/gammu/files/gammu-1.36.8-bashcompdir.patch b/app-mobilephone/gammu/files/gammu-1.36.8-bashcompdir.patch
new file mode 100644
index 000000000000..aceef3da9805
--- /dev/null
+++ b/app-mobilephone/gammu/files/gammu-1.36.8-bashcompdir.patch
@@ -0,0 +1,12 @@
+diff -BurpN gammu-1.36.8.orig/contrib/CMakeLists.txt gammu-1.36.8/contrib/CMakeLists.txt
+--- gammu-1.36.8.orig/contrib/CMakeLists.txt 2015-12-08 13:38:11.000000000 +0300
++++ gammu-1.36.8/contrib/CMakeLists.txt 2016-01-16 15:49:45.870431342 +0300
+@@ -85,7 +85,7 @@ endif (INSTALL_PHP_EXAMPLES)
+ if (INSTALL_BASH_COMPLETION)
+ macro_optional_find_package (BashCompletion)
+ if (NOT BASH_COMPLETION_FOUND)
+- set (BASH_COMPLETION_COMPLETIONSDIR "/etc/bash_completion.d" CACHE PATH "Location of bash_completion.d")
++ set (BASH_COMPLETION_COMPLETIONSDIR "/usr/share/bash-completion/completions" CACHE PATH "Location of bash_completion.d")
+ endif (NOT BASH_COMPLETION_FOUND)
+ install (
+ FILES bash-completion/gammu
diff --git a/app-mobilephone/gammu/files/gammu-skip-locktest.patch b/app-mobilephone/gammu/files/gammu-skip-locktest.patch
new file mode 100644
index 000000000000..a509879d5edb
--- /dev/null
+++ b/app-mobilephone/gammu/files/gammu-skip-locktest.patch
@@ -0,0 +1,12 @@
+diff -Nru tests/CMakeLists.txt tests/CMakeLists.txt
+--- tests/CMakeLists.txt 2009-09-04 10:56:25.000000000 +0200
++++ tests/CMakeLists.txt 2009-09-05 07:46:58.000000000 +0200
+@@ -739,7 +739,7 @@
+
+ # Test for locking, only on !WIN32 and if we can write to lock dir
+ if (NOT WIN32)
+- execute_process(COMMAND test -w /var/lock/ RESULT_VARIABLE VAR_LOCK_WRITABLE)
++ set (VAR_LOCK_WRITABLE 1)
+ if (VAR_LOCK_WRITABLE EQUAL 0)
+ add_executable(locking locking.c)
+ target_link_libraries(locking libGammu)
diff --git a/app-mobilephone/gammu/gammu-1.33.0-r1.ebuild b/app-mobilephone/gammu/gammu-1.33.0-r1.ebuild
new file mode 100644
index 000000000000..b6b80f011f95
--- /dev/null
+++ b/app-mobilephone/gammu/gammu-1.33.0-r1.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils cmake-utils python-single-r1
+
+DESCRIPTION="A tool to handle your cellular phone"
+HOMEPAGE="https://www.wammu.eu/"
+SRC_URI="http://dl.cihar.com/${PN}/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="bluetooth curl dbi debug irda mysql nls postgres python usb"
+
+# TODO: figure out a way to disable gudev
+RDEPEND="dev-libs/glib:2=
+ virtual/libgudev:=
+ bluetooth? ( net-wireless/bluez:= )
+ curl? ( net-misc/curl:= )
+ dbi? ( >=dev-db/libdbi-0.8.3:= )
+ mysql? ( virtual/mysql:= )
+ postgres? ( dev-db/postgresql:=[server] )
+ python? ( ${PYTHON_DEPS} )
+ usb? ( virtual/libusb:1= )
+ dev-util/dialog"
+DEPEND="${RDEPEND}
+ irda? ( virtual/os-headers )
+ nls? ( sys-devel/gettext )"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+# sys-devel/gettext is needed for creating .mo files
+# Supported languages and translated documentation
+# Be sure all languages are prefixed with a single space!
+MY_AVAILABLE_LINGUAS=" af ar bg ca cs da de el en_GB es et fi fr gl he hu id it ko nl pl pt_BR ru sk sv sw tr zh_CN zh_TW"
+IUSE="${IUSE} ${MY_AVAILABLE_LINGUAS// / linguas_}"
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-skip-locktest.patch"
+ epatch "${FILESDIR}/${PN}-1.32.0-bashcompdir.patch"
+
+ local lang support_linguas=no
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if use linguas_${lang} ; then
+ support_linguas=yes
+ break
+ fi
+ done
+ # install all languages when all selected LINGUAS aren't supported
+ if [ "${support_linguas}" = "yes" ]; then
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if ! use linguas_${lang} ; then
+ rm -rf locale/${lang} || die
+ fi
+ done
+ fi
+}
+
+src_configure() {
+ # debug flag is used inside cmake-utils.eclass
+ local mycmakeargs=(
+ $(cmake-utils_use_with bluetooth Bluez)
+ $(cmake-utils_use_with irda IRDA)
+ $(cmake-utils_use_with curl CURL)
+ $(cmake-utils_use_with usb USB)
+ $(cmake-utils_use_with python PYTHON)
+ $(cmake-utils_use_with mysql MySQL)
+ $(cmake-utils_use_with postgres Postgres)
+ $(cmake-utils_use_with dbi LibDBI)
+ $(cmake-utils_use_with nls GettextLibs)
+ $(cmake-utils_use_with nls Iconv)
+ -DBUILD_SHARED_LIBS=ON
+ -DINSTALL_DOC_DIR="share/doc/${PF}"
+ )
+ if use python; then
+ mycmakeargs+=( -DBUILD_PYTHON="${PYTHON}" )
+ fi
+ cmake-utils_src_configure
+}
+
+src_test() {
+ LD_LIBRARY_PATH="${WORKDIR}/${PN}_build/common" cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ use python && python_optimize
+}
diff --git a/app-mobilephone/gammu/gammu-1.36.8.ebuild b/app-mobilephone/gammu/gammu-1.36.8.ebuild
new file mode 100644
index 000000000000..dd5cc078d7c7
--- /dev/null
+++ b/app-mobilephone/gammu/gammu-1.36.8.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils cmake-utils
+
+DESCRIPTION="A tool to handle your cellular phone"
+HOMEPAGE="https://wammu.eu/gammu/"
+SRC_URI="http://dl.cihar.com/${PN}/releases/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bluetooth curl dbi debug irda mysql nls postgres usb"
+
+COMMON_DEPEND="
+ dev-libs/glib:2=
+ virtual/libgudev:=
+ bluetooth? ( net-wireless/bluez:= )
+ curl? ( net-misc/curl:= )
+ dbi? ( >=dev-db/libdbi-0.8.3:= )
+ mysql? ( virtual/mysql:= )
+ postgres? ( dev-db/postgresql:= )
+ usb? ( virtual/libusb:1= )
+"
+DEPEND="
+ ${COMMON_DEPEND}
+ irda? ( virtual/os-headers )
+ nls? ( sys-devel/gettext )
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ dev-util/dialog
+"
+
+# sys-devel/gettext is needed for creating .mo files
+# Supported languages and translated documentation
+# Be sure all languages are prefixed with a single space!
+MY_AVAILABLE_LINGUAS=" af ar bg bn ca cs da de el en_GB es et fi fr gl he hu id it ko nl pl pt_BR ro ru sk sv sw tr zh_CN zh_TW"
+IUSE="${IUSE} ${MY_AVAILABLE_LINGUAS// / linguas_}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${PN}-skip-locktest.patch" \
+ "${FILESDIR}/${PN}-1.36.8-bashcompdir.patch"
+
+ local lang support_linguas=no
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if use linguas_${lang} ; then
+ support_linguas=yes
+ break
+ fi
+ done
+ # install all languages when all selected LINGUAS aren't supported
+ if [ "${support_linguas}" = "yes" ]; then
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if ! use linguas_${lang} ; then
+ rm -rf locale/${lang} || die
+ fi
+ done
+ fi
+}
+
+src_configure() {
+ # debug flag is used inside cmake-utils.eclass
+ local mycmakeargs=(
+ $(cmake-utils_use_with bluetooth Bluez)
+ $(cmake-utils_use_with irda IRDA)
+ $(cmake-utils_use_with curl CURL)
+ $(cmake-utils_use_with usb USB)
+ $(cmake-utils_use_with mysql MySQL)
+ $(cmake-utils_use_with postgres Postgres)
+ $(cmake-utils_use_with dbi LibDBI)
+ $(cmake-utils_use_with nls GettextLibs)
+ $(cmake-utils_use_with nls Iconv)
+ -DBUILD_SHARED_LIBS=ON
+ -DINSTALL_DOC_DIR="share/doc/${PF}"
+ )
+ cmake-utils_src_configure
+}
+
+src_test() {
+ LD_LIBRARY_PATH="${WORKDIR}/${PN}_build/common" cmake-utils_src_test
+}
diff --git a/app-mobilephone/gammu/metadata.xml b/app-mobilephone/gammu/metadata.xml
new file mode 100644
index 000000000000..f9cc2e6e7a53
--- /dev/null
+++ b/app-mobilephone/gammu/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <use>
+ <flag name="irda">Enables infrared support</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">gammu/gammu</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/ganyremote/Manifest b/app-mobilephone/ganyremote/Manifest
new file mode 100644
index 000000000000..74792a3241ea
--- /dev/null
+++ b/app-mobilephone/ganyremote/Manifest
@@ -0,0 +1,7 @@
+DIST ganyremote-6.0.1.tar.gz 280585 SHA256 14dda596fab59be899a3bcf815ba0c5938efdf83ba5f1d0d91b2f8bfc5ddb80c SHA512 04719a4c0e15bfe2aa670bd6b83ae300aee0a825733d0fb9f37ee98286520a7354f927fb4be4774acdd2a7251893e62d4ff3328f655567b87961a3f83542e7c0 WHIRLPOOL a8f23815d783a42b79f3a378c8bdeac10c368971a13365b7dc427e539fe558eb7b880f598484456ebd3a854cf715f7059c81b86bedcdfdb474cad86ec4408c7d
+DIST ganyremote-6.3.3.tar.gz 303612 SHA256 5033a261506b4c37ed5deed22428837d1c4b1e5cb0027234b2ec97f6e6d9b40d SHA512 cfb0d5896c3c4ee575f2d77d17b8f8e13624202100994415147f1ddb2b6c04c179ec4a4b31369830705ae1d0068e50fe0c3a5fd4acc2de6e02ec0a530a0a6182 WHIRLPOOL 0e8b8c3c6d9ffd8a77903fbf2a7e220d696eab4e609be5f684f7c2a9dab5a80f32d539d70203fd70d6a2a29e0f9ca9352d91442822830c9ccc4d230d79e56cae
+EBUILD ganyremote-6.0.1.ebuild 603 SHA256 3724cf790285d1e6bc3cbfb1f630ac20e98e85434f0a432f33aacbc42afcaab6 SHA512 076fc1c504a600a35d8ea9fab5a8005fb07cc75eb0cc7ea5323afd53e7a704c1a9783f1288659eb903b87fdf52028af7051fbe8e107a6e7659431504e569d3a8 WHIRLPOOL a2a654d9eae2f2a2c096b7154808e90509808abed80e8f03ab379e8b4f072406fa3bcd0f2bc1ddf5519b9f24987dafe0d5efdd3a775fce22371d7c055d587733
+EBUILD ganyremote-6.3.3.ebuild 1373 SHA256 e0c2b0f5c04dae8c4166eb3df2f3e83754eac5630051564ae2fb3086cb69df13 SHA512 8e38d124dccc7965af88730e33397a413c0b03b6ca8b8a1ffe7aba76abd332d06c01580a4727c07e04c5bcd629c0f009eb159e3ce9d7d4bd35a49b6e327fa8d6 WHIRLPOOL 37e8585a7d9a75d88e26fd6cc71ff41d267d4fc520776184cc1367b825440ba50cc634103acb08eab107542bc1d13c68c1cdb5e925f541dd8d52898d0a0c9cdf
+MISC ChangeLog 2596 SHA256 6d91fcf1c992da8c1593dea170616bf0a6412271eff9cf2904cc8030a8eea508 SHA512 196b4c5c7127236adfdc3cec4fd65b5c3795de028d87df1cff6d34dcaea922bb66263535e207754294fafd82c5a171a4db8a2f668026c5efdb3fa3e13c9bf212 WHIRLPOOL 8ab474364bd6bc13e38b55ea33545ed8e8d71a05e206e5c3b160992260aeeca83eba8b77c7c7f170f110cd541139007025235d574ba1c15938e052506a75f96a
+MISC ChangeLog-2015 4016 SHA256 52216f74102cd0bafa1aad58bc4758c2b72b17332ba16f5385e4a6d1f346a230 SHA512 4cb18cef830027a813b9522647c6608d8a71c6a02bf68a7ba56ffca70b04f2e14e60b5fd7477efc43404d5c0acdd6e24102ab650b732683e9e106e1a5e426b07 WHIRLPOOL 09c9e1487f3bb0e4d36856b87ccfa6eb8c5cb7d55990586b7590f54f18229cf09b343f334955340576b1433d2e00a2200cdec4c5e3d138beaddfea303fb44eed
+MISC metadata.xml 246 SHA256 7b342fba8138b73e82549db04bba30117c14618eacb3648a791ec18be05a9d4e SHA512 d2929e6457c8072e70cff695c72e7f8e0ee0aa0c10f9850143dc37a05df7af66abdc579ceb750b7e3d8bec5ed246744e42501e66058b4bbd5ebbefcffbb6156a WHIRLPOOL 40a560f34611768a0dc0bce21422950ebeb274634205fb9d3ee6a7a62a5a83bf74c010ca215aefb91daefe436ebafc6e2001ae97a2d4a5ab15120651cc5654b8
diff --git a/app-mobilephone/ganyremote/ganyremote-6.0.1.ebuild b/app-mobilephone/ganyremote/ganyremote-6.0.1.ebuild
new file mode 100644
index 000000000000..9e7f7f9f9ca3
--- /dev/null
+++ b/app-mobilephone/ganyremote/ganyremote-6.0.1.ebuild
@@ -0,0 +1,25 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="2"
+
+inherit eutils
+
+DESCRIPTION="Gnome frontend to Anyremote"
+HOMEPAGE="http://anyremote.sourceforge.net/"
+SRC_URI="mirror://sourceforge/anyremote/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="bluetooth"
+
+DEPEND=">=app-mobilephone/anyremote-6.0[bluetooth=]
+ dev-python/pygtk
+ bluetooth? ( dev-python/pybluez )"
+RDEPEND="${DEPEND}"
+
+src_install() {
+ emake install DESTDIR="${D}" || die "emake install failed"
+ dodoc AUTHORS ChangeLog NEWS README || die "dodoc failed"
+}
diff --git a/app-mobilephone/ganyremote/ganyremote-6.3.3.ebuild b/app-mobilephone/ganyremote/ganyremote-6.3.3.ebuild
new file mode 100644
index 000000000000..cd07310e56dd
--- /dev/null
+++ b/app-mobilephone/ganyremote/ganyremote-6.3.3.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+inherit autotools python-r1
+
+DESCRIPTION="Gnome frontend to Anyremote"
+HOMEPAGE="http://anyremote.sourceforge.net/"
+SRC_URI="mirror://sourceforge/anyremote/${P}.tar.gz"
+
+LICENSE="GPL-2+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bluetooth"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND="${PYTHON_DEPS}
+ >=app-mobilephone/anyremote-6.5[bluetooth=]
+ dev-python/pygtk[${PYTHON_USEDEP}]
+ bluetooth? ( dev-python/pybluez[${PYTHON_USEDEP}] )
+"
+DEPEND="${RDEPEND}
+ sys-devel/gettext
+"
+
+DOCS=( AUTHORS ChangeLog NEWS README )
+
+src_prepare() {
+ # using gettextize no-interactive example from dev-util/bless package
+ cp $(type -p gettextize) "${T}"/ || die
+ sed -i -e 's:read dummy < /dev/tty::' "${T}/gettextize" || die
+ "${T}"/gettextize -f --no-changelog > /dev/null || die
+
+ # remove deprecated entry
+ sed -e "/Encoding=UTF-8/d" \
+ -i ganyremote.desktop || die "fixing .desktop file failed"
+
+ # fix documentation directory wrt bug #316087
+ sed -i "s/doc\/${PN}/doc\/${PF}/g" Makefile.am || die
+ eautoreconf
+
+ # disable bluetooth check to avoid errors
+ if ! use bluetooth ; then
+ sed -e "s/usepybluez = True/usepybluez = False/" -i ganyremote || die
+ fi
+}
+
+src_install() {
+ default
+
+ python_replicate_script "${D}"/usr/bin/ganyremote
+}
diff --git a/app-mobilephone/ganyremote/metadata.xml b/app-mobilephone/ganyremote/metadata.xml
new file mode 100644
index 000000000000..2df201a28b67
--- /dev/null
+++ b/app-mobilephone/ganyremote/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="sourceforge">anyremote</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/gnocky/Manifest b/app-mobilephone/gnocky/Manifest
new file mode 100644
index 000000000000..1badafbe73d1
--- /dev/null
+++ b/app-mobilephone/gnocky/Manifest
@@ -0,0 +1,5 @@
+DIST gnocky-0.0.7.tar.bz2 569945 SHA256 90dcf5c2e2e6fcf81802ddda9477ab7b1ddb15fbe476c40f93de739995d2c0a3 SHA512 a4387c68bc7c3e59f122be87b5b68ec7cae9016039fb1f76c8ebfbe421bcf2399ba93419a2d27c61afe937f580dd7e9bff14f4b803bee70aa60c95c7d0f6ad53 WHIRLPOOL a63a476326e644062c829c2e89a6d11113d88e33d3b0c2ea1463278adc65bf74c978b00afe8d59b9204d605e8def86610cb0926ee5d9d4d9c4ce7ea19d767fb6
+EBUILD gnocky-0.0.7.ebuild 424 SHA256 d885ed0d2ec1458aee7692f398a5163d2f8bc733e9f7c3924b998ed128b031d9 SHA512 29b47e1b7f55010b6526bad7f198fd62c95c106021d3bcbea174436a41ce706f31ed5b50d836a5f7dde72b0856640d0baf01b13e375ffd8c8485072f8eec806f WHIRLPOOL 9e0d44025a2e1f8d8c37c5698892018e022590edf4766ed8507bf71fe8b940e21d2ab224bbc839e0d063056699152777e3a9639968abf68bd47b22a678a0b045
+MISC ChangeLog 2526 SHA256 18064ac815b89f6118444174fa50745388b05bfdae759b895ee0063475fc113c SHA512 b3251bc739d1adc853535027e5646d4ef9999ac7e01a4c682be8c062fbc2acd17f3012b3f1dc9cfceea00adf01830968ebfb3888fa4d9ca918ca450fe10d1732 WHIRLPOOL 3819464658494df67e21d625deb7b01f64e325820cd45dc0737cb1f2f156dbb3abbeb5844580cb0777466689a6279a678d823810c5d3143db97224ccedca8e4f
+MISC ChangeLog-2015 1758 SHA256 6a97c6854c22033bb4f94ccc141275bf63381d497c2aec5caacf962aea5cdb37 SHA512 ed9395972fdcc8b39f87e5e9f1354efc27e28bc6e2918fac8c31a7fa855da977a0bc6dc8a12a4c495b4b2c51ffd9060deb92e27f3f44776601df94a30e585e98 WHIRLPOOL a7f643fbc24408dc31ff25837b67c8113656e3688fae374e4e364ad31770b8ef06789746070448c2a3559453865569dd6b9d445c58570d401cc5b37ba2271c3e
+MISC metadata.xml 166 SHA256 2caff447f5bd2701d8456ada5cc633c41ef4373fa4bfeabeb73599d40bcc941b SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 WHIRLPOOL 1ff70497eca6531f0e0614c72a19f4b8e5ff486a58d369f4f0b36308d1d6b01168f9da887740e3b9f536236be251d3fe05f904d27a9233a7cf613416ba882968
diff --git a/app-mobilephone/gnocky/gnocky-0.0.7.ebuild b/app-mobilephone/gnocky/gnocky-0.0.7.ebuild
new file mode 100644
index 000000000000..db68d7f735f3
--- /dev/null
+++ b/app-mobilephone/gnocky/gnocky-0.0.7.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+DESCRIPTION="GTK-2 version of gnokii"
+HOMEPAGE="http://www.gnokii.org/"
+SRC_URI="${HOMEPAGE}download/${PN}/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ app-mobilephone/gnokii
+ dev-libs/glib:2
+ gnome-base/libglade:2.0
+ x11-libs/gtk+:2
+"
+DEPEND="
+ ${RDEPEND}
+ virtual/pkgconfig
+"
diff --git a/app-mobilephone/gnocky/metadata.xml b/app-mobilephone/gnocky/metadata.xml
new file mode 100644
index 000000000000..6f49eba8f496
--- /dev/null
+++ b/app-mobilephone/gnocky/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/app-mobilephone/gnokii/Manifest b/app-mobilephone/gnokii/Manifest
new file mode 100644
index 000000000000..fe2d69657279
--- /dev/null
+++ b/app-mobilephone/gnokii/Manifest
@@ -0,0 +1,10 @@
+AUX gnokii-0.6.31-fix_xgnokii_inclusion.patch 260 SHA256 7e754e204e44f9e6c93658419b111995c595a85bfbb543b783624dbeac8e9a5d SHA512 e23b72af4d51c7691b56beab15b36e275e6ea1fb8599d1cee4be98570caf0c9434b2cd61fd3879c41adb219c7ab9b41bd794df27d9be97bb38b3799427039393 WHIRLPOOL 260fa9798cc8d9d29efc6f1993c07288470e7dc581c36fdd0b1e37fd54f969da1c8a9686fe397f978ac68bd0165a7c153b778a03d7c8d22f72301c54accb232e
+AUX gnokii-0.6.31-gcc5.patch 863 SHA256 eafe67990e383e92636a88de27f003674374db81d986ddbb397ab18d82b6556d SHA512 548a32f93b059e45c8616dedf49a0ce3b0e63463f8ddc3384b473d91bd12c3fab2c6e21de0b09d2b330c189454a2bf3e486aa25122ea58392d9cb11994592086 WHIRLPOOL 9d743e9aa982adb31b56916ce07baa49923ca18e6ad365fcd9311b4b4dcbc5a86d78b55b5900808abd22e5bad3b7754146d5cff5635264b9045fe992bf3d2dca
+AUX gnokii-9999-icon.patch 239 SHA256 cadd0f89fdd23bdb41fb2c0b6faa97611ac113b675aa3668b439a2382d91ab98 SHA512 11ecd345c1bd93a8c0f316b411106bc22c5fecff2a848d075e9feb1bd1581a255dbf5a7eaa7fc525325af9b1c7d90736a7b58104f870f3d7ec329ea0b43c2dc3 WHIRLPOOL 39e05b183e0df7d8304f3fe33814162e464548e0aedee37d8f138be6cf15c65f715f525f60eb956d4c0617ed271d253a537a3b1bf05ddb16257d98d4f9ce419a
+AUX gnokii-9999-translations.patch 196 SHA256 6cd5cd81149cf165f2d2ee2e5dc9ee6125dbdf99d30c7f5259ed0f5e22026e96 SHA512 ac167f1d93abf9ed00cd4761ae3b86fdfda33ec5690bf1c0c62a136fe09d0f57dd0d3abe172a3adafb499cc01655995111bc84343932bc6054d45a8e70097af6 WHIRLPOOL 6134297740a23f8181f3adf5b3b68abc0a8ec225b71b708637df408c2710d4cc55800913bc1fe01f1f490e0e346a49a234126e4d48fcd4b0222a1c9fbb57beb9
+DIST gnokii-0.6.31.tar.bz2 1237865 SHA256 8f5a083b05c1a66a3402ca5cd80084e14c2c0632c991bb53b03c78e9adb02501 SHA512 529f6d0d29873f48ac00cf7151ba35dcbd93405ab27d69848ed17dea73f4fba71721d1811d921441b4214777b9b33f760b372631627cc108eb94c39684da343d WHIRLPOOL a14927d205748647187336f408fc7449808e48ff2b6de0df8cc14562d25a67643d1bb4cb97f50c27a5c2acad2bdb503bcec049a4fdac534ce48c763b9715cae7
+EBUILD gnokii-0.6.31-r1.ebuild 3426 SHA256 af5997baad7ab37c870132b6133a549dbd26017dd1de2cd201689dae346d3052 SHA512 8f48893eba869c49641a78a64546e8ed6b614a90d7dcf7e354208750c332de3d471ef3888425bf60fd78be54039411b80e14c6aced6e1f3c45dfdfccb9f9c155 WHIRLPOOL 6172446ea851f88e69f91171cc05a980df68998ee396ddec38cfad0cf4562d5b3a2990ebc75a898dcbf403d6de0abad504ab6e351de52b0c10ae0972fd1b7f3b
+EBUILD gnokii-9999.ebuild 3381 SHA256 7601e9be306c0a92c60fd0dde1164b8d9bdbcce4c04647effd70c2de2b69d07a SHA512 cc38a495499a49cedcb13704e008bf8730d1ba03190a61d46efdc3983505e041d77c52dbfb698d2f48fdee398f87bbe96f526e522793b70ce606f51959790d0a WHIRLPOOL 4c1300b6341dc53212d629f345a3af45954b127524d6f8dde63407361099303a590063241f7762fd64e23621851510ea1c33a316d64f9cac8fe4ee7a9d55692f
+MISC ChangeLog 4849 SHA256 63680ab07c46b7fbd4213b55c53cfa0bf4d2618bf9d2c2fd11c3e3c7ac285a4e SHA512 426013e6fcca7b48a3a5b6dbf4247cf87a94028c5ff2a178181b3df14c0b86f977a9d2bd24cf2277437f397a280980c418dd255afb0ad98410e7ccb7cf4f85f1 WHIRLPOOL f89bf28ac0d2e60d8cc874fa4f5d1f4f5f1b1a0f1da90622757939afb7681b3cee8cf506e70bac2f0ab2b39cf4edcb58755362b7a0a9855730ab4743aa097279
+MISC ChangeLog-2015 22585 SHA256 b79f4c7da2f21e019e7ea31cc98e55894f12785b6a896c6169cf164e338a7db9 SHA512 eaf839967cad8f47d47d0aa9d4f59d1ba41f1a37f47a66e6ca4c7266dfae15c6d24c092e95e094ef534b29c5571c12925925e54eb2b31a1c62753d75b3221af2 WHIRLPOOL 176b394a8b1527411f5fb7d27fb91b43d296b53fb539bc08130fce4efd35fe2bf23360deabaa7c3a9237898ae9b5851ecc52f7240c39de6316e6075aa37fc617
+MISC metadata.xml 756 SHA256 7aefb1204e231f38653cea94dbdcd68a37d20d9154fcd9eaf2e0cf116e7d367d SHA512 7fbdd7684cd7810fe6114146a3378c346ca8d01df54adbbea292b0727fb039d5ceec29e4a5fd4d3031c17f9f229a4de0d635ae23e57eb507103255ebcb057983 WHIRLPOOL 26286c93586c0becf5e8d403ecf70209e2b16fdd7bbb60f03cd2791273afb25f39ecfb6d3c9fe2cb1944ee04628728899c0392b8b5f669b3af90cf26233d4d6d
diff --git a/app-mobilephone/gnokii/files/gnokii-0.6.31-fix_xgnokii_inclusion.patch b/app-mobilephone/gnokii/files/gnokii-0.6.31-fix_xgnokii_inclusion.patch
new file mode 100644
index 000000000000..243f78174a0f
--- /dev/null
+++ b/app-mobilephone/gnokii/files/gnokii-0.6.31-fix_xgnokii_inclusion.patch
@@ -0,0 +1,11 @@
+--- a/configure.in
++++ b/configure.in
+@@ -689,7 +689,7 @@
+ fi
+ fi
+
+-AM_CONDITIONAL(XGNOKII, test "x$_support" = "xyes")
++AM_CONDITIONAL(XGNOKII, test "x$x_support" = "xyes")
+
+ dnl ======================== Check for libsocket
+ AC_CHECK_LIB(socket, socket)
diff --git a/app-mobilephone/gnokii/files/gnokii-0.6.31-gcc5.patch b/app-mobilephone/gnokii/files/gnokii-0.6.31-gcc5.patch
new file mode 100644
index 000000000000..09b65f5b0f81
--- /dev/null
+++ b/app-mobilephone/gnokii/files/gnokii-0.6.31-gcc5.patch
@@ -0,0 +1,27 @@
+Patch by Robert Scheck <robert@fedoraproject.org> for gnokii <= 0.6.31 to avoid
+build failures with GCC 5.x as "gnokii-0.6.31/xgnokii/xgnokii.c:1209: undefined
+reference to `GUI_HideAbout'" and "xgnokii-xgnokii_logos.o:(.data.rel+0xe0):
+undefined reference to `CloseLogosWindow'".
+
+--- gnokii-0.6.31/xgnokii/xgnokii.c 2011-12-02 15:53:04.000000000 +0100
++++ gnokii-0.6.31/xgnokii/xgnokii.c.gcc5 2015-06-20 15:49:59.000000000 +0200
+@@ -798,7 +798,7 @@
+ }
+
+
+-inline void GUI_HideAbout(void)
++void GUI_HideAbout(void)
+ {
+ gtk_widget_hide(AboutDialog);
+ }
+--- gnokii-0.6.31/xgnokii/xgnokii_logos.c 2011-12-02 15:53:04.000000000 +0100
++++ gnokii-0.6.31/xgnokii/xgnokii_logos.c.gcc5 2015-06-20 15:50:15.000000000 +0200
+@@ -1304,7 +1304,7 @@
+ return 0;
+ }
+
+-inline void CloseLogosWindow(void)
++void CloseLogosWindow(void)
+ {
+ gtk_widget_hide(GUI_LogosWindow);
+ }
diff --git a/app-mobilephone/gnokii/files/gnokii-9999-icon.patch b/app-mobilephone/gnokii/files/gnokii-9999-icon.patch
new file mode 100644
index 000000000000..13ca2cf6e4ce
--- /dev/null
+++ b/app-mobilephone/gnokii/files/gnokii-9999-icon.patch
@@ -0,0 +1,11 @@
+--- a/xgnokii/xgnokii.desktop.in
++++ b/xgnokii/xgnokii.desktop.in
+@@ -2,7 +2,7 @@
+ _Name=Xgnokii
+ _GenericName=Mobile Phone Suite
+ _Comment=Manage your mobile phone
+-Icon=phone
++Icon=xgnokii
+ Exec=xgnokii
+ Terminal=false
+ Type=Application
diff --git a/app-mobilephone/gnokii/files/gnokii-9999-translations.patch b/app-mobilephone/gnokii/files/gnokii-9999-translations.patch
new file mode 100644
index 000000000000..2f61cc222738
--- /dev/null
+++ b/app-mobilephone/gnokii/files/gnokii-9999-translations.patch
@@ -0,0 +1,10 @@
+--- a/po/POTFILES.in
++++ b/po/POTFILES.in
+@@ -57,6 +57,7 @@
+ smsd/pq.c
+ smsd/smsd.c
+ smsd/sqlite.c
++utils/gnokii-configure.glade
+ utils/mgnokiidev.c
+ xgnokii/xgnokii.c
+ xgnokii/xgnokii_calendar.c
diff --git a/app-mobilephone/gnokii/gnokii-0.6.31-r1.ebuild b/app-mobilephone/gnokii/gnokii-0.6.31-r1.ebuild
new file mode 100644
index 000000000000..17779551f5d6
--- /dev/null
+++ b/app-mobilephone/gnokii/gnokii-0.6.31-r1.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils linux-info
+
+HOMEPAGE="http://www.gnokii.org/"
+if [[ $PV == *9999 ]]; then
+ EGIT_REPO_URI="
+ git://git.savannah.nongnu.org/${PN}.git
+ http://git.savannah.gnu.org/r/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="http://www.gnokii.org/download/${PN}/${P}.tar.bz2"
+ KEYWORDS="amd64 hppa ppc ppc64 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos"
+fi
+DESCRIPTION="User space driver and tools for use with mobile phones"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="bluetooth debug ical irda mysql nls +pcsc-lite postgres sms usb X"
+
+RDEPEND="
+ !app-mobilephone/smstools
+ bluetooth? ( kernel_linux? ( net-wireless/bluez ) )
+ ical? ( dev-libs/libical:= )
+ pcsc-lite? ( sys-apps/pcsc-lite )
+ sms? (
+ dev-libs/glib:2
+ postgres? ( dev-db/postgresql:* )
+ mysql? ( virtual/mysql:= )
+ )
+ usb? ( virtual/libusb:0 )
+ X? ( x11-libs/gtk+:2 )"
+DEPEND="${RDEPEND}
+ dev-util/intltool
+ irda? ( virtual/os-headers )
+ nls? ( sys-devel/gettext )"
+
+CONFIG_CHECK="~UNIX98_PTYS"
+
+S="${WORKDIR}/${PN}-${PV%.1}"
+
+# Supported languages and translated documentation
+# Be sure all languages are prefixed with a single space!
+MY_AVAILABLE_LINGUAS=" cs de et fi fr it nl pl pt sk sl sv zh_CN"
+IUSE="${IUSE} ${MY_AVAILABLE_LINGUAS// / linguas_}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix_xgnokii_inclusion.patch
+ "${FILESDIR}"/${P}-gcc5.patch
+)
+
+src_prepare() {
+ [[ $PV == *9999 ]] && \
+ PATCHES=(
+ "${FILESDIR}"/${P}-icon.patch
+ "${FILESDIR}"/${P}-translations.patch
+ )
+
+ sed -i -e "s:/usr/local:${EPREFIX}/usr:" Docs/sample/gnokiirc || die
+
+ default
+ mv configure.{in,ac} || die
+
+ eautoreconf
+}
+
+src_configure() {
+ strip-linguas ${MY_AVAILABLE_LINGUAS}
+
+ local config_xdebug
+ if use X && use debug; then
+ config_xdebug="--enable-xdebug"
+ else
+ config_xdebug="--disable-xdebug"
+ fi
+
+ econf \
+ --disable-static \
+ --enable-security \
+ --disable-unix98test \
+ $(use_enable bluetooth) \
+ ${config_xdebug} \
+ $(use_enable debug fulldebug) \
+ $(use_enable debug rlpdebug) \
+ $(use_enable ical libical) \
+ $(use_enable irda) \
+ $(use_enable mysql) \
+ $(use_enable nls) \
+ $(use_enable pcsc-lite libpcsclite) \
+ $(use_enable postgres) \
+ $(use_enable sms smsd) \
+ $(use_enable usb libusb) \
+ $(use_with X x)
+}
+
+src_test() {
+ echo common/phones/fake.c >> po/POTFILES.in || die
+ default
+}
+
+src_install() {
+ default
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+
+ insinto /etc
+ doins Docs/sample/gnokiirc
+
+ # only one file needs suid root to make a pseudo device
+ fperms 4755 /usr/sbin/mgnokiidev
+
+ use X && newicon Docs/sample/logo/gnokii.xpm xgnokii.xpm
+
+ if use sms; then
+ cd smsd || die
+
+ docinto smsd
+ use mysql && dodoc sms.tables.mysql.sql README.MySQL
+ use postgres && dodoc sms.tables.pq.sql
+ dodoc README ChangeLog README.Tru64 action
+ fi
+}
+
+pkg_postinst() {
+ elog "Make sure the user that runs gnokii has read/write access to the device"
+ elog "which your phone is connected to."
+ elog "The simple way of doing that is to add your user to the uucp group."
+ if [[ $PV == *9999 ]]; then
+ elog "This is the GIT version of ${PN}. It is experimental but may have important bug fixes."
+ elog "You can keep track of the most recent commits at:"
+ elog " http://git.savannah.gnu.org/cgit/gnokii.git/"
+ elog "Whenever there is a change you are interested in, you can re-emerge ${P}."
+ fi
+}
diff --git a/app-mobilephone/gnokii/gnokii-9999.ebuild b/app-mobilephone/gnokii/gnokii-9999.ebuild
new file mode 100644
index 000000000000..3b4263b6ee3f
--- /dev/null
+++ b/app-mobilephone/gnokii/gnokii-9999.ebuild
@@ -0,0 +1,136 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils linux-info
+
+HOMEPAGE="http://www.gnokii.org/"
+if [[ $PV == *9999 ]]; then
+ EGIT_REPO_URI="
+ git://git.savannah.nongnu.org/${PN}.git
+ http://git.savannah.gnu.org/r/${PN}.git"
+ inherit git-r3
+else
+ SRC_URI="http://www.gnokii.org/download/${PN}/${P}.tar.bz2"
+ KEYWORDS="~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
+fi
+DESCRIPTION="User space driver and tools for use with mobile phones"
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="bluetooth debug ical irda mysql nls +pcsc-lite postgres sms usb X"
+
+RDEPEND="
+ !app-mobilephone/smstools
+ bluetooth? ( kernel_linux? ( net-wireless/bluez ) )
+ ical? ( dev-libs/libical:= )
+ pcsc-lite? ( sys-apps/pcsc-lite )
+ sms? (
+ dev-libs/glib:2
+ postgres? ( dev-db/postgresql:* )
+ mysql? ( virtual/mysql:= )
+ )
+ usb? ( virtual/libusb:0 )
+ X? ( x11-libs/gtk+:2 )"
+DEPEND="${RDEPEND}
+ dev-util/intltool
+ irda? ( virtual/os-headers )
+ nls? ( sys-devel/gettext )"
+
+CONFIG_CHECK="~UNIX98_PTYS"
+
+S="${WORKDIR}/${PN}-${PV%.1}"
+
+# Supported languages and translated documentation
+# Be sure all languages are prefixed with a single space!
+MY_AVAILABLE_LINGUAS=" cs de et fi fr it nl pl pt sk sl sv zh_CN"
+IUSE="${IUSE} ${MY_AVAILABLE_LINGUAS// / linguas_}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix_xgnokii_inclusion.patch
+ "${FILESDIR}"/${P}-gcc5.patch
+)
+
+src_prepare() {
+ [[ $PV == *9999 ]] && \
+ PATCHES=(
+ "${FILESDIR}"/${P}-icon.patch
+ "${FILESDIR}"/${P}-translations.patch
+ )
+
+ sed -i -e "s:/usr/local:${EPREFIX}/usr:" Docs/sample/gnokiirc || die
+
+ default
+
+ eautoreconf
+}
+
+src_configure() {
+ strip-linguas ${MY_AVAILABLE_LINGUAS}
+
+ local config_xdebug
+ if use X && use debug; then
+ config_xdebug="--enable-xdebug"
+ else
+ config_xdebug="--disable-xdebug"
+ fi
+
+ econf \
+ --disable-static \
+ --disable-unix98test \
+ $(use_enable bluetooth) \
+ ${config_xdebug} \
+ $(use_enable debug fulldebug) \
+ $(use_enable debug rlpdebug) \
+ $(use_enable ical libical) \
+ $(use_enable irda) \
+ $(use_enable mysql) \
+ $(use_enable nls) \
+ $(use_enable pcsc-lite libpcsclite) \
+ $(use_enable postgres) \
+ $(use_enable sms smsd) \
+ $(use_enable usb libusb) \
+ $(use_with X x)
+}
+
+src_test() {
+ echo common/phones/fake.c >> po/POTFILES.in || die
+ default
+}
+
+src_install() {
+ default
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+
+ insinto /etc
+ doins Docs/sample/gnokiirc
+
+ # only one file needs suid root to make a pseudo device
+ fperms 4755 /usr/sbin/mgnokiidev
+
+ use X && newicon Docs/sample/logo/gnokii.xpm xgnokii.xpm
+
+ if use sms; then
+ cd smsd || die
+
+ docinto smsd
+ use mysql && dodoc sms.tables.mysql.sql README.MySQL
+ use postgres && dodoc sms.tables.pq.sql
+ dodoc README ChangeLog README.Tru64 action
+ fi
+}
+
+pkg_postinst() {
+ elog "Make sure the user that runs gnokii has read/write access to the device"
+ elog "which your phone is connected to."
+ elog "The simple way of doing that is to add your user to the uucp group."
+ if [[ $PV == *9999 ]]; then
+ elog "This is the GIT version of ${PN}. It is experimental but may have important bug fixes."
+ elog "You can keep track of the most recent commits at:"
+ elog " http://git.savannah.gnu.org/cgit/gnokii.git/"
+ elog "Whenever there is a change you are interested in, you can re-emerge ${P}."
+ fi
+}
diff --git a/app-mobilephone/gnokii/metadata.xml b/app-mobilephone/gnokii/metadata.xml
new file mode 100644
index 000000000000..67376429a674
--- /dev/null
+++ b/app-mobilephone/gnokii/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+<longdescription>
+gnokii provides tools and a user space driver for use with mobile phones.
+With gnokii you can do such things as make data calls, update your address book,
+change calendar entires, send and receive SMS messages and load ring tones
+depending on the phone you have.
+</longdescription>
+<use>
+ <flag name="ical">Enable support for <pkg>dev-libs/libical</pkg></flag>
+ <flag name="irda">Enable infrared support</flag>
+ <flag name="sms">Enable SMS support (build smsd)</flag>
+ <flag name="pcsc-lite">Enable smartcard support with <pkg>sys-apps/pcsc-lite</pkg></flag>
+</use>
+</pkgmetadata>
diff --git a/app-mobilephone/gnome-phone-manager/Manifest b/app-mobilephone/gnome-phone-manager/Manifest
new file mode 100644
index 000000000000..836471d1ca6a
--- /dev/null
+++ b/app-mobilephone/gnome-phone-manager/Manifest
@@ -0,0 +1,7 @@
+AUX 0001-Adapt-to-Evolution-Data-Server-API-changes.patch 19486 SHA256 31b6ed0cf43f13d958462ee9eacbcfdce9f86b89cb4b397bef19c3fa604b7d64 SHA512 87f8a33e53a07d18329a89a01b85e780c2d1b34c5921a9f5f5bb129b68946febb22072f8032603e78541f255fc9edbcce6ec980c6c83721ab9b937976ffe2ade WHIRLPOOL d6635cb8413b2df9fb89eb17771308f3045bd474f505dbf8254846334bf46326b569f3333c39c570a24d1924acf4a950e1942d05486589def7b46bb8d6808ea6
+AUX gnome-phone-manager-0.69-adwaita-icon-theme.patch 545 SHA256 9bd0651186949e00dae43dc83866c5ffe6a7db06364ea87395ef10b1e3ce5755 SHA512 d10303176b3eee4ac1eba636abff3a4a1cde5a5d94591a9972550cbe205427f5f8ed2a59e7cf724361dd494cae5e3a688a06bd6fd8c707d0b40012621ecb322f WHIRLPOOL 70109a473adf0a3165aa41304d74ffd35aad39c4e0db0f675a203de08889c25e7e89dfa2a5d4b9fca804e618310fd96e9378654c574fabbc0967813b890413ee
+DIST gnome-phone-manager-0.69.tar.xz 393916 SHA256 35e038ea3afaacdf451046e87af876096cf1520efc04fc3f5b63ea22e0297175 SHA512 fa12ef3bc2d94fd91c6f680a5b47cba16a56c2fdf324da958503a7c4f7eb1fedc7aeaced567f2ed1ad8c25da4f994b709018e95bb7ec4a8a2248521a3453970d WHIRLPOOL 24750a91bc06dff68b8ca6e1cc1b4212fced6347bcc923d59764b540a2dde0cdfe5f14ac4e7f2816bc640912f26824e6b23c4c5df87e87951f75ac81bbb11aab
+EBUILD gnome-phone-manager-0.69-r1.ebuild 1388 SHA256 d6f6d171002c5a716400dcf36d29e2ecdcdaf6161272b64655ce193a4a84ae9d SHA512 bddf27165411a88018bb8201dcb6cda4421e03ca1833ac14239654bdcc220d29772938aee24f28e3e8436f067f5651e15bba39a93c0d8b9a5f0491e38a77b5dd WHIRLPOOL 1401a44f2cb665f9f9ce1ba16896bd1689c012711349af87c878998be16e55e2c6dffecbd0dc565f4ea9384f31d75a9ffbb89fd46cced4193a10cd384617aa46
+MISC ChangeLog 3326 SHA256 36aaa66fbac69ec0c1ea28bccb4b220690ad5bb0ac73e78696f47491adc0c740 SHA512 0e87709d4821907532898f4c9f16c1731e10395fae3167ae4b4d5cfda5d49a2b761db65bc21e3be752f0b5ed1a6dd5f93ca3a6321614edf041c682847b00b072 WHIRLPOOL 4a938a6b1095f05b778d4b567b217e14010d8e368f8c61eb3ee82dac3c076b2e049145a29b667e31deb59042a856a0c093eeb2deaab887b03602efaec9b8fbd6
+MISC ChangeLog-2015 9312 SHA256 7ee47ad5c58101a4fa7363713fbcf88ac22fa79da08da1b350dd686a60aa2250 SHA512 222debf08bb8279db3c016dae3dbba99f47bb21d84c43f7a36deecfe8c92f81472af577eac3ae0482719344f03a805dba3a929a9cea769c77a56d58b418542ad WHIRLPOOL 02b6e64be0bc8fa41ae740a7fc3a9ea56adcf34d2b451ffbb714e6a657c502796a7fc6fedc2b70a004ccf1da38728e3547b0971fcdeddcd4f1112b85af0bb74d
+MISC metadata.xml 788 SHA256 0a721f6c6b33c6b276f9c7da97f1097aab23937fb9a71b870b9a06a7aacafe60 SHA512 10a89b99a6bdc9861e424eb0927e3c1650c29aefe19db70b7ff56677db535fd7833bb3a81b46bd74321721cc82d286c74df5958f0c427284c05419e885dca315 WHIRLPOOL bbe1a295c1cfea665637cbb80ff4b53c724aba2cbcb17cce87dfd9da47168ebd0fe000b1de3e722c597a6a6b994dee065db6b3a2adc334966f36c6db24121e99
diff --git a/app-mobilephone/gnome-phone-manager/files/0001-Adapt-to-Evolution-Data-Server-API-changes.patch b/app-mobilephone/gnome-phone-manager/files/0001-Adapt-to-Evolution-Data-Server-API-changes.patch
new file mode 100644
index 000000000000..b375b8f0f400
--- /dev/null
+++ b/app-mobilephone/gnome-phone-manager/files/0001-Adapt-to-Evolution-Data-Server-API-changes.patch
@@ -0,0 +1,541 @@
+From 091f0e00bae058d384fbc9834a402192bbf192a6 Mon Sep 17 00:00:00 2001
+From: Matthew Barnes <mbarnes@redhat.com>
+Date: Sat, 29 Dec 2012 21:14:51 +0100
+Subject: [PATCH] Adapt to Evolution-Data-Server API changes
+
+ Closes: https://bugzilla.gnome.org/show_bug.cgi?id=680927
+---
+ configure.in | 2 +-
+ cut-n-paste/e-contact-entry/e-contact-entry.c | 168 +++++++++++---------------
+ cut-n-paste/e-contact-entry/e-contact-entry.h | 8 +-
+ libgsm/phonemgr-utils.c | 2 +-
+ src/e-phone-entry.c | 38 +++---
+ 5 files changed, 96 insertions(+), 122 deletions(-)
+
+diff --git a/configure.in b/configure.in
+index be5e729..73e7aec 100644
+--- a/configure.in
++++ b/configure.in
+@@ -47,7 +47,7 @@ PKG_CHECK_MODULES(LIBGSM, glib-2.0 gobject-2.0 $GNOKII_REQS gthread-2.0 bluez $e
+
+ PKG_CHECK_MODULES(PHONEMGR, gtk+-3.0 >= 3.0 glib-2.0 >= 2.31.0
+ libcanberra-gtk3 gconf-2.0
+- $GNOME_BLUETOOTH_REQS $evo_pc_file libedataserverui-3.0
++ $GNOME_BLUETOOTH_REQS $evo_pc_file libedataserver-1.2 >= 3.6
+ gmodule-2.0 dbus-glib-1 gnome-icon-theme >= 2.19.1
+ )
+
+diff --git a/cut-n-paste/e-contact-entry/e-contact-entry.c b/cut-n-paste/e-contact-entry/e-contact-entry.c
+index dc8e2e3..bbd4e6a 100644
+--- a/cut-n-paste/e-contact-entry/e-contact-entry.c
++++ b/cut-n-paste/e-contact-entry/e-contact-entry.c
+@@ -1,4 +1,4 @@
+-/*
++/*
+ * Copyright (C) 2004 Ross Burton <ross@burtonini.com
+ *
+ * e-contact-entry.c
+@@ -38,11 +38,6 @@
+ #include <glib.h>
+ #include <glib/gi18n.h>
+
+-#include <libedataserver/e-source.h>
+-#include <libebook/e-book.h>
+-#include <libebook/e-book-view.h>
+-#include <libebook/e-contact.h>
+-
+ #include "e-contact-entry.h"
+ #include "econtactentry-marshal.h"
+
+@@ -59,7 +54,7 @@ static int signals[LAST_SIGNAL] = { 0 };
+ /* Properties */
+ enum {
+ PROP_0, /* TODO: why? */
+- PROP_SOURCE_LIST,
++ PROP_REGISTRY,
+ PROP_COMPLETE_LENGTH,
+ };
+
+@@ -70,7 +65,7 @@ enum {
+ struct EContactEntryPriv {
+ GtkEntryCompletion *completion;
+ GtkListStore *store;
+- ESourceList *source_list;
++ ESourceRegistry *registry;
+ /* A list of EntryLookup structs we are searching */
+ GList *lookup_entries;
+ /* Number of characters to start searching at */
+@@ -227,7 +222,7 @@ e_contact_entry_display_func (EContact *contact)
+ emails = e_contact_get (contact, E_CONTACT_EMAIL);
+ for (l = emails; l != NULL; l = l->next) {
+ item = g_new0 (EContactEntyItem, 1);
+- item->identifier = item->identifier = g_strdup (l->data);
++ item->identifier = g_strdup (l->data);
+ item->display_string = g_strdup_printf ("%s <%s>", (char*)e_contact_get_const (contact, E_CONTACT_NAME_OR_ORG), item->identifier);
+
+ items = g_list_prepend (items, item);
+@@ -276,22 +271,13 @@ view_contacts_added_cb (EBook *book, GList *contacts, gpointer user_data)
+ return;
+
+ photo = e_contact_get (contact, E_CONTACT_PHOTO);
+-#ifndef HAVE_ECONTACTPHOTOTYPE
+- if (photo) {
+-#else
+ if (photo && photo->type == E_CONTACT_PHOTO_TYPE_INLINED) {
+-#endif
+ GdkPixbufLoader *loader;
+
+ loader = gdk_pixbuf_loader_new ();
+
+-#ifndef HAVE_ECONTACTPHOTOTYPE
+- if (gdk_pixbuf_loader_write (loader, (guchar *)photo->data,
+- photo->length, NULL))
+-#else
+ if (gdk_pixbuf_loader_write (loader, (guchar *)photo->data.inlined.data,
+ photo->data.inlined.length, NULL))
+-#endif
+ pixbuf = gdk_pixbuf_loader_get_pixbuf (loader);
+
+ if (pixbuf) {
+@@ -339,16 +325,15 @@ view_contacts_added_cb (EBook *book, GList *contacts, gpointer user_data)
+ * The query on the EBookView has completed.
+ */
+ static void
+-view_completed_cb (EBookView *book_view, EBookViewStatus status, gpointer user_data)
++view_completed_cb (EBookView *book_view, EBookViewStatus status, const gchar *message, gpointer user_data)
+ {
+ EntryLookup *lookup;
+ g_return_if_fail (user_data != NULL);
+- /* TODO: handle status != OK */
+- g_return_if_fail (status == E_BOOK_ERROR_OK);
+ g_return_if_fail (book_view != NULL);
+
+ lookup = (EntryLookup*)user_data;
+ g_object_unref (lookup->bookview);
++ lookup->bookview = NULL;
+ }
+
+ /**
+@@ -361,9 +346,9 @@ bookview_cb (EBook *book, EBookStatus status, EBookView *book_view, gpointer clo
+ /* TODO: handle status != OK */
+ g_return_if_fail (status == E_BOOK_ERROR_OK);
+ g_return_if_fail (closure != NULL);
+-
++
+ lookup = (EntryLookup*)closure;
+-
++
+ g_object_ref (book_view);
+ /* This shouldn't happen of course */
+ if (lookup->bookview) {
+@@ -372,10 +357,10 @@ bookview_cb (EBook *book, EBookStatus status, EBookView *book_view, gpointer clo
+ }
+ lookup->bookview = book_view;
+ g_object_add_weak_pointer ((GObject*)book_view, (gpointer*)&lookup->bookview);
+-
+- g_signal_connect (book_view, "contacts_added", (GCallback)view_contacts_added_cb, lookup);
+- g_signal_connect (book_view, "sequence_complete", (GCallback)view_completed_cb, lookup);
+-
++
++ g_signal_connect (book_view, "contacts-added", (GCallback)view_contacts_added_cb, lookup);
++ g_signal_connect (book_view, "view_complete", (GCallback)view_completed_cb, lookup);
++
+ e_book_view_start (book_view);
+ }
+
+@@ -396,9 +381,10 @@ entry_changed_cb (GtkEditable *editable, gpointer user_data)
+ if (lookup->bookview) {
+ e_book_view_stop (lookup->bookview);
+ g_object_unref (lookup->bookview);
++ lookup->bookview = NULL;
+ }
+ }
+-
++
+ gtk_list_store_clear (entry->priv->store);
+
+ query = create_query (entry, gtk_editable_get_chars (editable, 0, -1));
+@@ -409,8 +395,8 @@ entry_changed_cb (GtkEditable *editable, gpointer user_data)
+ /* If the book isn't open yet, skip this source */
+ if (!lookup->open)
+ continue;
+-
+- if (e_book_async_get_book_view (lookup->book, query, NULL, 11, (EBookBookViewCallback)bookview_cb, lookup) != 0) {
++
++ if (e_book_async_get_book_view (lookup->book, query, NULL, MAX_ENTRIES, (EBookBookViewCallback)bookview_cb, lookup) == FALSE) {
+ g_signal_emit (entry, signals[ERROR], 0, _("Cannot create searchable view."));
+ }
+ }
+@@ -441,7 +427,7 @@ book_opened_cb (EBook *book, EBookStatus status, gpointer data)
+ return;
+ }
+ }
+-
++
+ g_signal_emit (lookup->entry, signals[STATE_CHANGE], 0, FALSE);
+ g_signal_emit (lookup->entry, signals[ERROR], 0, stringify_ebook_error (status));
+ return;
+@@ -458,11 +444,12 @@ book_opened_cb (EBook *book, EBookStatus status, gpointer data)
+ */
+
+ void
+-e_contact_entry_set_source_list (EContactEntry *entry,
+- ESourceList *source_list)
++e_contact_entry_set_registry (EContactEntry *entry,
++ ESourceRegistry *registry)
+ {
++ GList *list, *link;
++ const gchar *extension_name;
+ GError *error = NULL;
+- GSList *list, *l;
+
+ g_return_if_fail (E_IS_CONTACT_ENTRY (entry));
+
+@@ -471,58 +458,48 @@ e_contact_entry_set_source_list (EContactEntry *entry,
+ g_list_foreach (entry->priv->lookup_entries, (GFunc)lookup_entry_free, NULL);
+ g_list_free (entry->priv->lookup_entries);
+ }
+- if (entry->priv->source_list) {
+- g_object_unref (entry->priv->source_list);
++ if (entry->priv->registry) {
++ g_object_unref (entry->priv->registry);
+ }
+
+ /* If we have no new sources, disable and return here */
+- if (source_list == NULL) {
++ if (registry == NULL) {
+ g_signal_emit (entry, signals[STATE_CHANGE], 0, FALSE);
+- entry->priv->source_list = NULL;
++ entry->priv->registry = NULL;
+ entry->priv->lookup_entries = NULL;
+ return;
+ }
+
+- entry->priv->source_list = source_list;
+- /* So that the list isn't going away underneath us */
+- g_object_ref (entry->priv->source_list);
++ entry->priv->registry = registry;
++ /* So that the registry isn't going away underneath us */
++ g_object_ref (entry->priv->registry);
+
+- /* That gets us a list of ESourceGroup */
+- list = e_source_list_peek_groups (source_list);
+ entry->priv->lookup_entries = NULL;
+
+- for (l = list; l != NULL; l = l->next) {
+- ESourceGroup *group = l->data;
+- GSList *sources = NULL, *m;
+- /* That should give us a list of ESource */
+- sources = e_source_group_peek_sources (group);
+- for (m = sources; m != NULL; m = m->next) {
+- ESource *source = m->data;
+- ESource *s = e_source_copy (source);
+- EntryLookup *lookup;
+- char *uri;
++ extension_name = E_SOURCE_EXTENSION_ADDRESS_BOOK;
++ list = e_source_registry_list_sources (registry, extension_name);
+
+- uri = g_strdup_printf("%s/%s", e_source_group_peek_base_uri (group), e_source_peek_relative_uri (source));
+- e_source_set_absolute_uri (s, uri);
+- g_free (uri);
++ for (link = list; link != NULL; link = g_list_next (link)) {
++ ESource *source = E_SOURCE (link->data);
++ EntryLookup *lookup;
+
+- /* Now add those to the lookup entries list */
+- lookup = g_new0 (EntryLookup, 1);
+- lookup->entry = entry;
+- lookup->status = E_BOOK_ERROR_OK;
+- lookup->open = FALSE;
++ /* Now add those to the lookup entries list */
++ lookup = g_new0 (EntryLookup, 1);
++ lookup->entry = entry;
++ lookup->status = E_BOOK_ERROR_OK;
++ lookup->open = FALSE;
+
+- if ((lookup->book = e_book_new (s, &error)) == NULL) {
+- /* TODO handle this better, fire the error signal I guess */
++ if ((lookup->book = e_book_new (source, &error)) == NULL) {
++ /* TODO handle this better, fire the error signal I guess */
++ if (error) {
+ g_warning ("%s", error->message);
+- g_error_free (error);
+- g_free (lookup);
+- } else {
+- entry->priv->lookup_entries = g_list_append (entry->priv->lookup_entries, lookup);
+- e_book_async_open(lookup->book, TRUE, (EBookCallback)book_opened_cb, lookup);
++ g_error_free (error);
++ error = NULL;
+ }
+-
+- g_object_unref (s);
++ g_free (lookup);
++ } else {
++ entry->priv->lookup_entries = g_list_append (entry->priv->lookup_entries, lookup);
++ e_book_async_open(lookup->book, TRUE, (EBookCallback)book_opened_cb, lookup);
+ }
+ }
+
+@@ -530,12 +507,12 @@ e_contact_entry_set_source_list (EContactEntry *entry,
+ g_signal_emit (entry, signals[STATE_CHANGE], 0, FALSE);
+ }
+
+-ESourceList *
+-e_contact_entry_get_source_list (EContactEntry *entry)
++ESourceRegistry *
++e_contact_entry_get_registry (EContactEntry *entry)
+ {
+ g_return_val_if_fail (E_IS_CONTACT_ENTRY (entry), NULL);
+
+- return entry->priv->source_list;
++ return entry->priv->registry;
+ }
+
+ void
+@@ -552,7 +529,7 @@ int
+ e_contact_entry_get_complete_length (EContactEntry *entry)
+ {
+ g_return_val_if_fail (E_IS_CONTACT_ENTRY (entry), 3); /* TODO: from paramspec? */
+-
++
+ return entry->priv->lookup_length;
+ }
+
+@@ -564,7 +541,7 @@ e_contact_entry_set_display_func (EContactEntry *entry, EContactEntryDisplayFunc
+ if (entry->priv->display_destroy) {
+ entry->priv->display_destroy (entry->priv->display_func);
+ }
+-
++
+ entry->priv->display_func = func;
+ entry->priv->display_data = func_data;
+ entry->priv->display_destroy = destroy;
+@@ -596,13 +573,13 @@ static void
+ e_contact_entry_set_property (GObject *object, guint property_id, const GValue *value, GParamSpec *pspec)
+ {
+ EContactEntry *entry;
+-
++
+ g_return_if_fail (E_IS_CONTACT_ENTRY (object));
+ entry = E_CONTACT_ENTRY (object);
+-
++
+ switch (property_id) {
+- case PROP_SOURCE_LIST:
+- e_contact_entry_set_source_list (entry, g_value_get_object (value));
++ case PROP_REGISTRY:
++ e_contact_entry_set_registry (entry, g_value_get_object (value));
+ break;
+ case PROP_COMPLETE_LENGTH:
+ e_contact_entry_set_complete_length (entry, g_value_get_int (value));
+@@ -618,10 +595,10 @@ e_contact_entry_get_property (GObject *object, guint property_id, GValue *value,
+ EContactEntry *entry;
+ g_return_if_fail (E_IS_CONTACT_ENTRY (object));
+ entry = E_CONTACT_ENTRY (object);
+-
++
+ switch (property_id) {
+- case PROP_SOURCE_LIST:
+- g_value_set_object (value, e_contact_entry_get_source_list (entry));
++ case PROP_REGISTRY:
++ g_value_set_object (value, e_contact_entry_get_registry (entry));
+ break;
+ case PROP_COMPLETE_LENGTH:
+ g_value_set_int (value, e_contact_entry_get_complete_length (entry));
+@@ -644,7 +621,7 @@ e_contact_entry_finalize (GObject *object)
+ g_list_free (entry->priv->lookup_entries);
+ g_object_unref (entry->priv->completion);
+ g_object_unref (entry->priv->store);
+- g_object_unref (entry->priv->source_list);
++ g_object_unref (entry->priv->registry);
+
+ if (entry->priv->display_destroy) {
+ entry->priv->display_destroy (entry->priv->display_func);
+@@ -657,7 +634,7 @@ e_contact_entry_finalize (GObject *object)
+ static void
+ reset_search_fields (EContactEntry *entry)
+ {
+- EContactField fields[] = { E_CONTACT_FULL_NAME, E_CONTACT_EMAIL, E_CONTACT_NICKNAME, E_CONTACT_ORG, 0 };
++ EContactField fields[] = { E_CONTACT_FULL_NAME, E_CONTACT_EMAIL, E_CONTACT_NICKNAME, 0 };
+
+ g_free (entry->priv->search_fields);
+ entry->priv->search_fields = g_new0 (EContactField, G_N_ELEMENTS (fields));
+@@ -707,23 +684,23 @@ static void
+ e_contact_entry_class_init (EContactEntryClass *klass)
+ {
+ GObjectClass *object_class;
+-
++
+ object_class = (GObjectClass *) klass;
+-
++
+ /* GObject */
+ object_class->set_property = e_contact_entry_set_property;
+ object_class->get_property = e_contact_entry_get_property;
+ object_class->finalize = e_contact_entry_finalize;
+
+ /* Properties */
+- g_object_class_install_property (object_class, PROP_SOURCE_LIST,
+- g_param_spec_object ("source-list", "Source List", "The source list to search for contacts.",
+- E_TYPE_SOURCE_LIST, G_PARAM_READWRITE));
+-
++ g_object_class_install_property (object_class, PROP_REGISTRY,
++ g_param_spec_object ("registry", "Registry", "Data source registry.",
++ E_TYPE_SOURCE_REGISTRY, G_PARAM_READWRITE));
++
+ g_object_class_install_property (object_class, PROP_COMPLETE_LENGTH,
+ g_param_spec_int ("complete-length", "Complete length", "Number of characters to start a search on.",
+ 2, 99, 3, G_PARAM_READWRITE));
+-
++
+ /* Signals */
+ signals[CONTACT_SELECTED] = g_signal_new ("contact-selected",
+ G_TYPE_FROM_CLASS (object_class),
+@@ -732,7 +709,7 @@ e_contact_entry_class_init (EContactEntryClass *klass)
+ NULL, NULL,
+ econtactentry_marshal_VOID__OBJECT_STRING,
+ G_TYPE_NONE, 2, E_TYPE_CONTACT, G_TYPE_STRING);
+-
++
+ signals[ERROR] = g_signal_new ("error",
+ G_TYPE_FROM_CLASS (object_class),
+ G_SIGNAL_RUN_LAST,
+@@ -771,6 +748,7 @@ lookup_entry_free (EntryLookup *lookup)
+ if (lookup->bookview) {
+ g_warning("EBookView still around");
+ g_object_unref (lookup->bookview);
++ lookup->bookview = NULL;
+ }
+ if (lookup->book) {
+ g_object_unref (lookup->book);
+@@ -789,11 +767,11 @@ split_query_string (const gchar *str)
+ GArray *parts = g_array_sized_new (FALSE, FALSE, sizeof (char *), 2);
+ PangoLogAttr *attrs;
+ guint str_len = strlen (str), word_start = 0, i;
+-
+- attrs = g_new0 (PangoLogAttr, str_len + 1);
++
++ attrs = g_new0 (PangoLogAttr, str_len + 1);
+ /* TODO: do we need to specify a particular language or is NULL ok? */
+ pango_get_log_attrs (str, -1, -1, NULL, attrs, str_len + 1);
+-
++
+ for (i = 0; i < str_len + 1; i++) {
+ char *start_word, *end_word, *word;
+ if (attrs[i].is_word_end) {
+diff --git a/cut-n-paste/e-contact-entry/e-contact-entry.h b/cut-n-paste/e-contact-entry/e-contact-entry.h
+index bf6b39b..6fedef7 100644
+--- a/cut-n-paste/e-contact-entry/e-contact-entry.h
++++ b/cut-n-paste/e-contact-entry/e-contact-entry.h
+@@ -23,10 +23,8 @@
+ #ifndef CONTACT_ENTRY_H
+ #define CONTACT_ENTRY_H
+
+-#include <libedataserver/e-source-group.h>
+-#include <libedataserver/e-source-list.h>
+-#include <libebook/e-contact.h>
+ #include <gtk/gtk.h>
++#include <libebook/libebook.h>
+
+ G_BEGIN_DECLS
+
+@@ -71,8 +69,8 @@ GType e_contact_entry_get_type (void);
+
+ GtkWidget *e_contact_entry_new (void);
+
+-void e_contact_entry_set_source_list (EContactEntry *entry, ESourceList *list);
+-ESourceList *e_contact_entry_get_source_list (EContactEntry *entry);
++void e_contact_entry_set_registry (EContactEntry *entry, ESourceRegistry *registry);
++ESourceRegistry *e_contact_entry_get_registry (EContactEntry *entry);
+
+ void e_contact_entry_set_complete_length(EContactEntry *entry, int length);
+ int e_contact_entry_get_complete_length(EContactEntry *entry);
+diff --git a/libgsm/phonemgr-utils.c b/libgsm/phonemgr-utils.c
+index 4e62e10..baef34f 100644
+--- a/libgsm/phonemgr-utils.c
++++ b/libgsm/phonemgr-utils.c
+@@ -27,7 +27,7 @@
+ #include <glib.h>
+ #include <glib/gstdio.h>
+ #include <glib-object.h>
+-#include <libebook/e-contact.h>
++#include <libebook/libebook.h>
+ #include <gnokii.h>
+
+ #include <bluetooth/bluetooth.h>
+diff --git a/src/e-phone-entry.c b/src/e-phone-entry.c
+index 5d25622..5c10155 100644
+--- a/src/e-phone-entry.c
++++ b/src/e-phone-entry.c
+@@ -1,5 +1,5 @@
+ /* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
+-/*
++/*
+ * Copyright (C) 2005 Bastien Nocera <hadess@hadess.net>
+ *
+ * e-phone-entry.c
+@@ -31,8 +31,6 @@
+
+ #include <gtk/gtk.h>
+ #include <string.h>
+-#include <libedataserver/e-source-list.h>
+-#include <libedataserverui/e-client-utils.h>
+ #include "e-phone-entry.h"
+
+ #define CONTACT_FORMAT "%s (%s)"
+@@ -181,25 +179,25 @@ e_phone_entry_finalize (GObject *object)
+ }
+
+ static void
+-add_sources (EContactEntry *entry)
+-{
+- ESourceList *source_list;
+-
+- if (e_client_utils_get_sources (&source_list,
+- E_CLIENT_SOURCE_TYPE_CONTACTS,
+- NULL)) {
+- e_contact_entry_set_source_list (E_CONTACT_ENTRY (entry),
+- source_list);
+- g_object_unref (source_list);
+- }
+-}
+-
+-static void
+ e_phone_entry_init (EPhoneEntry *entry)
+ {
+ EContactField fields[] = { E_CONTACT_FULL_NAME, E_CONTACT_NICKNAME, E_CONTACT_ORG, E_CONTACT_PHONE_MOBILE, 0 };
++ ESourceRegistry *registry;
++ GError *error = NULL;
++
++ /* XXX This call blocks while a D-Bus connection is made, possibly
++ * requiring activation. Might be better to create the registry
++ * in main(), pass it to ui_init(), and have e_phone_entry_new()
++ * take it as an argument. Calling this from main() means if it
++ * fails you can abort cleanly with a console error message. */
++ registry = e_source_registry_new_sync (NULL, &error);
++ if (registry == NULL) {
++ g_error ("%s: %s", G_STRFUNC, error->message);
++ g_assert_not_reached ();
++ }
++ e_contact_entry_set_registry (E_CONTACT_ENTRY (entry), registry);
++ g_object_unref (registry);
+
+- add_sources (E_CONTACT_ENTRY (entry));
+ e_contact_entry_set_search_fields (E_CONTACT_ENTRY (entry), (const EContactField *)fields);
+ e_contact_entry_set_display_func (E_CONTACT_ENTRY (entry), test_display_func, NULL, NULL);
+ g_signal_connect (G_OBJECT (entry), "contact_selected",
+@@ -212,9 +210,9 @@ static void
+ e_phone_entry_class_init (EPhoneEntryClass *klass)
+ {
+ GObjectClass *object_class;
+-
++
+ object_class = (GObjectClass *) klass;
+-
++
+ /* GObject */
+ object_class->finalize = e_phone_entry_finalize;
+
+--
+1.8.0.2
+
diff --git a/app-mobilephone/gnome-phone-manager/files/gnome-phone-manager-0.69-adwaita-icon-theme.patch b/app-mobilephone/gnome-phone-manager/files/gnome-phone-manager-0.69-adwaita-icon-theme.patch
new file mode 100644
index 000000000000..238fec315e74
--- /dev/null
+++ b/app-mobilephone/gnome-phone-manager/files/gnome-phone-manager-0.69-adwaita-icon-theme.patch
@@ -0,0 +1,12 @@
+diff -up ./configure.in.orig ./configure.in
+--- a/configure.in.orig 2014-05-04 09:40:07.973480490 +0300
++++ b/configure.in 2014-05-04 09:40:26.264727691 +0300
+@@ -48,7 +48,7 @@ PKG_CHECK_MODULES(LIBGSM, glib-2.0 gobje
+ PKG_CHECK_MODULES(PHONEMGR, gtk+-3.0 >= 3.0 glib-2.0 >= 2.31.0
+ libcanberra-gtk3 gconf-2.0
+ $GNOME_BLUETOOTH_REQS $evo_pc_file libedataserver-1.2 >= 3.6
+- gmodule-2.0 dbus-glib-1 gnome-icon-theme >= 2.19.1
++ gmodule-2.0 dbus-glib-1 adwaita-icon-theme >= 2.19.1
+ )
+
+ DBUSLIBDIR="`$PKG_CONFIG dbus-glib-1 --variable=libdir`"
diff --git a/app-mobilephone/gnome-phone-manager/gnome-phone-manager-0.69-r1.ebuild b/app-mobilephone/gnome-phone-manager/gnome-phone-manager-0.69-r1.ebuild
new file mode 100644
index 000000000000..ee9a85dfccb1
--- /dev/null
+++ b/app-mobilephone/gnome-phone-manager/gnome-phone-manager-0.69-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_LA_PUNT="yes"
+
+inherit autotools gnome2
+
+DESCRIPTION="Allows you to control aspects of your mobile phone from your GNOME desktop"
+HOMEPAGE="https://wiki.gnome.org/PhoneManager"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="debug"
+# telepathy support is considered experimental
+
+RDEPEND="
+ >=dev-libs/glib-2.31.0:2
+ >=x11-libs/gtk+-3:3
+ >=gnome-base/orbit-2
+ >=gnome-base/gconf-2:2
+ >=gnome-extra/evolution-data-server-3.6:=
+ media-libs/libcanberra[gtk3]
+ >=app-mobilephone/gnokii-0.6.28[bluetooth]
+ net-wireless/bluez
+ dev-libs/dbus-glib
+ dev-libs/openobex:0=
+ media-libs/libcanberra[gtk]
+ >=net-wireless/gnome-bluetooth-3.3:2=
+ x11-themes/adwaita-icon-theme
+"
+DEPEND="${RDEPEND}
+ >=dev-util/intltool-0.35.5
+ virtual/pkgconfig
+ gnome-base/gnome-common
+"
+# gnome-common needed for eautoreconf
+
+src_prepare() {
+ # Fix eds-3.6 building, upstream bug #680927
+ eapply "${FILESDIR}"/0001-Adapt-to-Evolution-Data-Server-API-changes.patch
+ eapply "${FILESDIR}"/${P}-adwaita-icon-theme.patch
+ mv configure.in configure.ac || die
+ eautoreconf
+ gnome2_src_prepare
+}
+
+src_configure() {
+ # bluetooth-plugin is no longer buildable, bug #512204
+ gnome2_src_configure \
+ --disable-bluetooth-plugin \
+ --disable-telepathy \
+ --disable-static \
+ $(use_enable debug)
+}
diff --git a/app-mobilephone/gnome-phone-manager/metadata.xml b/app-mobilephone/gnome-phone-manager/metadata.xml
new file mode 100644
index 000000000000..ee14c5d61094
--- /dev/null
+++ b/app-mobilephone/gnome-phone-manager/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+<longdescription>Phone Manager is a program created to allow you to control aspects
+of your mobile phone from your GNOME desktop.
+
+The software is in its early stages right now. Current features include:
+ * Runs in the background; indicates status on the panel notification area.
+ * Display on-screen alert when text message (SMS) arrives
+ * Text message (SMS) sending facility
+
+Phone Manager supports any mobile phone that can connect to your
+computer as a serial port: via Bluetooth, IrDA or a serial cable.</longdescription>
+</pkgmetadata>
diff --git a/app-mobilephone/heimdall/Manifest b/app-mobilephone/heimdall/Manifest
new file mode 100644
index 000000000000..5566d303b76c
--- /dev/null
+++ b/app-mobilephone/heimdall/Manifest
@@ -0,0 +1,10 @@
+DIST heimdall-1.4.0.tar.gz 6565316 SHA256 13f5edff2fc857cf7d82708a2ac9ad1f6d2f5d6a2e5d84587f55f62583d60531 SHA512 ae6c55af97fe95587b89cce90e75fd3b236fd8ac0d506112c9c143fb1d0982aac6d1bef7a6c6635b547148ac4913aeb4215ed9c7c8084fd0912010c5ad9604ee WHIRLPOOL b4c64a755d2f3577f894e22633e11cf60323d028b89e8117fa2c6cbedf7b55d9227cb17017d966d3d48fb56958a11ce87f3334aafedfcae57e6928ef42d8c121
+DIST heimdall-1.4.1.tar.gz 6358720 SHA256 f0a6e4b5bf806fe4ab5413dd869817b600bcd339b642ff46ec0c5fe69adf7230 SHA512 2f1f49b0ad7bd5f4359893359b26024fe0cce84afed3878e42d902eb4dee487a44e351247d57e4af143ad728abd6c664df688246fcf7b96b9f3841cd16594296 WHIRLPOOL 13fa7c40f66c17010e0aca9c96e87ed34196ae2fa4c2944c63afba7df619620e154692b3846cafecf5b8cf6896e7f7a92d47e255c87421a57494f5747c6cedee
+DIST heimdall-1.4.2.tar.gz 5486693 SHA256 589bef88f2597c8a84fe6fafbe928ddc9687438b5b54edd917d7df48c7e3eff8 SHA512 c554662f9ccb763a8e9867a0c563618879d2533af985d44db3c237d3ee51add44c1681d13b1a83b72b30ba6e5b32d7c2f9c02b31114c67c5fbe01cbb010acfe7 WHIRLPOOL ad7bf8b8ff2df4b132a77dc62dba0a3caf551f80cedff80c3715079109255939fc140da493dc6cb40c6dce3c843b3390af2deaefa6bb5b44c5cb8875e8cd2831
+EBUILD heimdall-1.4.0.ebuild 1400 SHA256 c53d7247db31d4729f343ffd047d6af4eb1b22e91a19f30b2ad3a20c072970f7 SHA512 12d975db4830fe5c0ccd44afde36e24d1a127539a0d309e98fa4e74a79e7bc4364d57cb8dc0081ce42ba241f4518d9c137a892234f776a7b7c8e62d49d02ba54 WHIRLPOOL 5dd21830955c93712e50788a1020c5c6a2a00e20799b44ee38afe5ac36c87d079808857c1a35a2b8cf6cc04c15a260c71e2843bd0915b853e1f0dc382dcdad7d
+EBUILD heimdall-1.4.1.ebuild 1349 SHA256 4c6ab51509233b8d75fe62aef93c344a812699a8ff74bb83106bdeb6477f2dce SHA512 a46d54a8a322a43df14ec034c3875ada1277acdd2f705e8c9a675e7160f6cae63f4d437064517366fedb2dd40c3130e756d30ec5be25351735dabdda2c979ae7 WHIRLPOOL baba1216d2f780e0bc5ab5ae875b368ba3df255f675761e52a319f2980f8b58722c74d57283a44bfdf298147b9164b10a525d81f92d1133a253701add7f5eab3
+EBUILD heimdall-1.4.2.ebuild 1086 SHA256 e0f33abd2186451b67e94d3598c000ad5b752bf9d36bca69f6c818560798aff0 SHA512 fd841befd0bcb859da7e59badc8e34a69891a4eebe944eff3fbe7eba3f9cfd50d6edff6d725f3f75a8f547cad13f20923365e9496dc9f5378ca2909d756d422c WHIRLPOOL 1fe24fb7b769fb33f9184111f5d601ad8705b08387d7168502a8c831bea864f2ec2c70799f5109e68b9cfaf0dc00f4822f5261d36192e22971d225dc7784e22e
+EBUILD heimdall-9999.ebuild 1086 SHA256 e0f33abd2186451b67e94d3598c000ad5b752bf9d36bca69f6c818560798aff0 SHA512 fd841befd0bcb859da7e59badc8e34a69891a4eebe944eff3fbe7eba3f9cfd50d6edff6d725f3f75a8f547cad13f20923365e9496dc9f5378ca2909d756d422c WHIRLPOOL 1fe24fb7b769fb33f9184111f5d601ad8705b08387d7168502a8c831bea864f2ec2c70799f5109e68b9cfaf0dc00f4822f5261d36192e22971d225dc7784e22e
+MISC ChangeLog 2533 SHA256 a748b1f0f12d9250c5cf62db9871f365ebf354e1685820bac3d1aa7cff638e10 SHA512 c91ee75643d9bf68eae2541d200525117cb076033bbbacdc5980ecfc55129b32a5377bf422538b77e8e77253d604be2c496be673a91b1c87630676ec03fe8ca3 WHIRLPOOL 218deac8c22a8be182da19d63a5ea0a8b340227dbfec9db821cfbb3d68d934e09019f4cdddcc14ac3a8ef1ac460a42369be6262d228c263c4f09f9ab47984b1a
+MISC ChangeLog-2015 1658 SHA256 4336eddabfa0cca6a20a8e0c84fcc4323d2a6a742b2612abceca1b38d01b1c5d SHA512 079c12ff1e3a954cce860bf547a2d7c2ce08ae62b4667d58f13923487975436cf1068a93612c14aa0c01d7d61c5062835a4a56d3a5b8c6cea49cd7bac83fa196 WHIRLPOOL 7411d01f3c2833950f0664fbd334fcc6c0d013313ec86490a682c49f0c5d766b439956eeb94612af4bdb6d0bca61454b283f947b7b32e298e991ee2c0a058506
+MISC metadata.xml 350 SHA256 ab08bf0dcb0e191f0daa4ffd7379000ebc78be0c1ab17cc50c1b6c82901a77c3 SHA512 bef074ae5251d966c48420c9ed1c61e1cbf36636823e8b237914087b31e300c2436e3c7479da9762d396412e6767ebe3c9453fd85e958e603a0639268c539f77 WHIRLPOOL 76cead4a190153ba837aa574130e1b5419331f465e17921de667f9c60eb41c095a96a5b089ad7cf43b58c9d86f2322165c6cab1f7ff4250299bc8a2fd7962801
diff --git a/app-mobilephone/heimdall/heimdall-1.4.0.ebuild b/app-mobilephone/heimdall/heimdall-1.4.0.ebuild
new file mode 100644
index 000000000000..cac3459aa2c6
--- /dev/null
+++ b/app-mobilephone/heimdall/heimdall-1.4.0.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils qt4-r2 udev
+
+if [[ ${PV} != 9999 ]]; then
+ SRC_URI="https://github.com/Benjamin-Dobell/Heimdall/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/Heimdall-${PV}"
+else
+ inherit git-2
+ EGIT_REPO_URI="https://github.com/Benjamin-Dobell/Heimdall.git"
+fi
+
+DESCRIPTION="Tool suite used to flash firmware onto Samsung Galaxy S devices"
+HOMEPAGE="http://www.glassechidna.com.au/products/heimdall/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="qt4"
+
+# virtual/libusb is not precise enough
+RDEPEND=">=dev-libs/libusb-1.0.18:1=
+ qt4? ( dev-qt/qtcore:4= dev-qt/qtgui:4= )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ rm -r libusbx-1.0 || die
+ cd "${S}/heimdall" || die
+ edos2unix configure.ac Makefile.am || die
+ sed -i -e /sudo/d Makefile.am || die
+ eautoreconf
+}
+
+src_configure() {
+ cd "${S}/libpit" || die
+ econf
+
+ cd "${S}/heimdall" || die
+ econf
+
+ if use qt4; then
+ cd "${S}/heimdall-frontend" || die
+ eqmake4 heimdall-frontend.pro OUTPUTDIR=/usr/bin || die
+ fi
+}
+
+src_compile() {
+ emake -C libpit
+ emake -C heimdall
+ use qt4 && emake -C heimdall-frontend
+}
+
+src_install() {
+ emake -C heimdall DESTDIR="${D}" udevrulesdir="$(get_udevdir)/rules.d" install
+ dodoc Linux/README
+ use qt4 && emake -C heimdall-frontend INSTALL_ROOT="${D}" install
+}
diff --git a/app-mobilephone/heimdall/heimdall-1.4.1.ebuild b/app-mobilephone/heimdall/heimdall-1.4.1.ebuild
new file mode 100644
index 000000000000..58662f1ba5d7
--- /dev/null
+++ b/app-mobilephone/heimdall/heimdall-1.4.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit autotools eutils qt4-r2 udev
+
+if [[ ${PV} != 9999 ]]; then
+ SRC_URI="https://github.com/Benjamin-Dobell/Heimdall/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/Heimdall-${PV}"
+else
+ inherit git-2
+ EGIT_REPO_URI="https://github.com/Benjamin-Dobell/Heimdall.git"
+fi
+
+DESCRIPTION="Tool suite used to flash firmware onto Samsung Galaxy S devices"
+HOMEPAGE="http://www.glassechidna.com.au/products/heimdall/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="qt4"
+
+# virtual/libusb is not precise enough
+RDEPEND=">=dev-libs/libusb-1.0.18:1=
+ qt4? ( dev-qt/qtcore:4= dev-qt/qtgui:4= )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ rm -r libusb-1.0 || die
+ cd "${S}/heimdall" || die
+ edos2unix configure.ac || die
+ eautoreconf
+}
+
+src_configure() {
+ cd "${S}/libpit" || die
+ econf
+
+ cd "${S}/heimdall" || die
+ econf
+
+ if use qt4; then
+ cd "${S}/heimdall-frontend" || die
+ eqmake4 heimdall-frontend.pro OUTPUTDIR=/usr/bin || die
+ fi
+}
+
+src_compile() {
+ emake -C libpit
+ emake -C heimdall
+ use qt4 && emake -C heimdall-frontend
+}
+
+src_install() {
+ emake -C heimdall DESTDIR="${D}" udevrulesdir="$(get_udevdir)/rules.d" install
+ dodoc Linux/README
+ use qt4 && emake -C heimdall-frontend INSTALL_ROOT="${D}" install
+}
diff --git a/app-mobilephone/heimdall/heimdall-1.4.2.ebuild b/app-mobilephone/heimdall/heimdall-1.4.2.ebuild
new file mode 100644
index 000000000000..944650f2addf
--- /dev/null
+++ b/app-mobilephone/heimdall/heimdall-1.4.2.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils udev
+
+if [[ ${PV} != 9999 ]]; then
+ SRC_URI="https://github.com/Benjamin-Dobell/Heimdall/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/Heimdall-${PV}"
+else
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Benjamin-Dobell/Heimdall.git"
+fi
+
+DESCRIPTION="Tool suite used to flash firmware onto Samsung Galaxy S devices"
+HOMEPAGE="http://glassechidna.com.au/heimdall/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="qt5"
+
+# virtual/libusb is not precise enough
+RDEPEND="
+ >=dev-libs/libusb-1.0.18:1=
+ qt5? (
+ dev-qt/qtcore:5=
+ dev-qt/qtgui:5=
+ dev-qt/qtwidgets:5=
+ )
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ local mycmakeargs=(
+ -DDISABLE_FRONTEND="$(usex !qt5)"
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ dobin "${BUILD_DIR}"/bin/heimdall
+ use qt5 && dobin "${BUILD_DIR}"/bin/heimdall-frontend
+
+ insinto "$(get_udevdir)/rules.d"
+ doins heimdall/60-heimdall.rules
+
+ dodoc README.md Linux/README
+}
diff --git a/app-mobilephone/heimdall/heimdall-9999.ebuild b/app-mobilephone/heimdall/heimdall-9999.ebuild
new file mode 100644
index 000000000000..944650f2addf
--- /dev/null
+++ b/app-mobilephone/heimdall/heimdall-9999.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils udev
+
+if [[ ${PV} != 9999 ]]; then
+ SRC_URI="https://github.com/Benjamin-Dobell/Heimdall/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+ S="${WORKDIR}/Heimdall-${PV}"
+else
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/Benjamin-Dobell/Heimdall.git"
+fi
+
+DESCRIPTION="Tool suite used to flash firmware onto Samsung Galaxy S devices"
+HOMEPAGE="http://glassechidna.com.au/heimdall/"
+
+LICENSE="MIT"
+SLOT="0"
+IUSE="qt5"
+
+# virtual/libusb is not precise enough
+RDEPEND="
+ >=dev-libs/libusb-1.0.18:1=
+ qt5? (
+ dev-qt/qtcore:5=
+ dev-qt/qtgui:5=
+ dev-qt/qtwidgets:5=
+ )
+ sys-libs/zlib
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_configure() {
+ local mycmakeargs=(
+ -DDISABLE_FRONTEND="$(usex !qt5)"
+ )
+ cmake-utils_src_configure
+}
+
+src_install() {
+ dobin "${BUILD_DIR}"/bin/heimdall
+ use qt5 && dobin "${BUILD_DIR}"/bin/heimdall-frontend
+
+ insinto "$(get_udevdir)/rules.d"
+ doins heimdall/60-heimdall.rules
+
+ dodoc README.md Linux/README
+}
diff --git a/app-mobilephone/heimdall/metadata.xml b/app-mobilephone/heimdall/metadata.xml
new file mode 100644
index 000000000000..a32d39ae12f7
--- /dev/null
+++ b/app-mobilephone/heimdall/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>polynomial-c@gentoo.org</email>
+ <name>Lars Wendler</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">Benjamin-Dobell/Heimdall</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/kannel-sqlbox/Manifest b/app-mobilephone/kannel-sqlbox/Manifest
new file mode 100644
index 000000000000..9574d95320cf
--- /dev/null
+++ b/app-mobilephone/kannel-sqlbox/Manifest
@@ -0,0 +1,8 @@
+AUX kannel-sqlbox-0.7.2-configure.patch 1242 SHA256 5837c85a6d124f8b16be711b086da66eda8e44fbf638c0eff47b3c0e28193783 SHA512 7b9811f98e908674527a0c92a018b1ab19b520e026ef2f921dc0fdd6a7eb55787ce5885a3d9e3f65b614fe96cda47836af912dc32f84294d92a19ddfd1eb5b49 WHIRLPOOL 36bba2b4d72bdaeafb26a87ebd98a6ec4b329c7036ae1e0e8962c9a965d8751fa1874becd638973f3c7a37b2dd8f3e01264c6c16110e5034711b11072ef3408d
+AUX kannel-sqlbox-0.7.2-sqlinit-hfiles.patch 3405 SHA256 ac316d8289d1fa4bef4158b8df529b7097e8ba208e41707d0b34053c6cb6db09 SHA512 224d92055070ef8f5b819deddae9a37cf1bd33e1e751f93f9853d16ec5990486d70cd9e291a76ffca5e4e89762b87b94c8387d1489f8868edafc619347286979 WHIRLPOOL 09f26b790f6740738f0b45a7f4beb4f278d52a3ce56084956206c77fad705f9f1d5a5d5c522b11eb933adc13a46fff955f9bdff86db6db98f678931d04b7088a
+AUX kannel-sqlbox.initd 818 SHA256 45df0113593781f0e7a2a925cd829687f9ab380777aac2a60c8114bce59298c0 SHA512 80a195dca95e07ae739dd348d0f2bc0d93f283e2897b4a56f249399c9213b8e88c50c43b293ecba8463806ad2682611e3b1addfc1f77b448429d2602572e823e WHIRLPOOL 6cc678a1de8380bd2081be69cc274032047b541c8f488d450056f021f251025ecc1e44a064ee6893920bacd7f1469dc0b692dbfc95d92997c13d8da1f1136cf9
+DIST gateway-1.5.0.tar.gz 3469476 SHA256 9613fbf46ffaca322f3983a9b8a7579b135c54b8dd24cf715777da5ff50c5e53 SHA512 5bd35ff40e0f5882367f717e67104a0dc8703b5d6d95654e1268ded15cf6fac6366968b10adbe2eec22b3ac17fe3ae33b4142cd38f51fd3d75a56c8fe7653652 WHIRLPOOL d813da05f572e69c1619483c68a06f0587f8e191b1d71973fd9b63c22b8749169ae02963b48cfeae980aff1628f0b2c72a0ce9a82f4f7eecb5dc93cec0f2d2d7
+EBUILD kannel-sqlbox-1.5.0-r1.ebuild 1917 SHA256 507b668c0cd68109a96ae02cde9561ea804fb674e1df5600695a1d9252b7fe3a SHA512 e3d5cf9670d90ff3294c3fa0a3a10336897db00394c8a4dde1b16eb88d85ed6041452e76b98328dca9966f50e108803e270d305bd9c398fcca4b107f0dbe9ebc WHIRLPOOL 9d72ff7b93172775a4ff42d76f39b4a3a794923a7f9771beec0bb98e3cbf7803460c80efb82fe88315cfc7f02da8c8bb92f5596c704d6c2c92655be5a3d4a089
+MISC ChangeLog 3639 SHA256 f654b6b3346482c9e536e739222999d9bd8c4a451a6b0f78452172ff4aaf8e38 SHA512 0b9c2a4cabfb36156e272543802681257346f76e4b8fbe5d07b9529bf4e189dae5450f8e9ed6209df9abef81ffe3dd65ba4a6cbaed8ab88bdbf098dad5116891 WHIRLPOOL f8ec6ae221e952537d2bbee1baf792a1c380d61718f91b85d1024feabe17a405be8b83ec5e1cac3616e29ca65c13e30a8eabdd80c93c8ae116de324ce46b69aa
+MISC ChangeLog-2015 1162 SHA256 b39eb41c60a7c5519c062282f97ca526f49396eb3d736ddd8571f8e944986b03 SHA512 a3d3d0f481b8103172f0fcc073bc29570ec7c623cca213cc2fe34ce1d0c14a1385b6b74cae80799371f742df9a31182d7574a793ec7c31c699fda39740da6e1c WHIRLPOOL 277bc535ba7dc43cc5baccf1f53da50d78aa48ed0e1a66f9de2be2d27e3234fff2b27037b1b4c0d31c46ae591930682c699f4fb698ee45e9886a57c3eb25b5e6
+MISC metadata.xml 624 SHA256 16b95a5db2d20c1b19b2ffe68f1b819f9147d95efcbf151bd2b1d46ce2b71662 SHA512 f4f945f4c8ac289c24735fe5a4bb1becb8bac027f6a51d8548745025674010b90009c0e3122be8a4e0a6dfb9742ea94f2b4d0105759cd9cc4ab48a53620e193e WHIRLPOOL 0b1a7e4486ffc02e5493b947f37dfb0cfb379bcd3021114bac2d0b1e5b58ba5fe55852703b7ca771462ac6139f97e9e9bb3167895c71e349a613bec4b22361be
diff --git a/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-configure.patch b/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-configure.patch
new file mode 100644
index 000000000000..2b0b5f9e6218
--- /dev/null
+++ b/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-configure.patch
@@ -0,0 +1,30 @@
+diff -Nru sqlbox-0.7.2.orig/configure.in sqlbox-0.7.2/configure.in
+--- sqlbox-0.7.2.orig/configure.in 2009-05-19 17:08:35.000000000 +0200
++++ sqlbox-0.7.2/configure.in 2009-09-23 00:22:05.000000000 +0200
+@@ -207,7 +207,7 @@
+ then
+ AC_CHECK_PROG(JADE, openjade, openjade, no)
+ else
+- JADE = $OLDJADE
++ JADE=$OLDJADE
+ fi
+ AC_CHECK_PROG(JADETEX, jadetex, jadetex, no)
+ AC_CHECK_PROG(PDFJADETEX, pdfjadetex, pdfjadetex, no)
+@@ -402,7 +402,7 @@
+ AC_MSG_RESULT($loc)
+ AC_CHECK_FILE("$loc/include/kannel/gw-config.h",
+ [CFLAGS="$CFLAGS -I$loc/include/kannel -I$loc/include/kannel";
+- LDFLAGS="$LDFLAGS -L$loc/lib/kannel -lwap -lgwlib";
++ LIBS="$LIBS -L$loc/lib/kannel -lwap -lgwlib";
+ found=1
+ ])
+ fi
+@@ -417,7 +417,7 @@
+ AC_MSG_RESULT([$gw_version])
+ AC_MSG_CHECKING([Kannel libs])
+ if ! $GW_CONFIG --libs &>/dev/null ; then
+- LDFLAGS="$LDFLAGS `$GW_CONFIG --libs`"
++ LIBS="$LIBS `$GW_CONFIG --libs`"
+ gw_libdir=`$GW_CONFIG --libs`
+ AC_MSG_RESULT([$gw_libdir])
+ fi
diff --git a/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-sqlinit-hfiles.patch b/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-sqlinit-hfiles.patch
new file mode 100644
index 000000000000..0a3fb9136709
--- /dev/null
+++ b/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox-0.7.2-sqlinit-hfiles.patch
@@ -0,0 +1,84 @@
+diff -Naur sqlbox-0.7.2/gw/sqlbox_mssql.h sqlbox-0.7.2.new/gw/sqlbox_mssql.h
+--- sqlbox-0.7.2/gw/sqlbox_mssql.h 2009-05-19 11:08:35.000000000 -0400
++++ sqlbox-0.7.2.new/gw/sqlbox_mssql.h 2009-09-16 11:23:03.000000000 -0400
+@@ -46,7 +46,7 @@
+ void sql_save_msg(Msg *msg, Octstr *momt /*, Octstr smsbox_id */);
+ Msg *mssql_fetch_msg();
+ void sql_shutdown();
+-struct server_type *sql_init_mssql(Cfg *cfg);
++struct server_type *sqlbox_init_mssql(Cfg *cfg);
+ #ifndef sqlbox_mssql_c
+ extern
+ #endif
+diff -Naur sqlbox-0.7.2/gw/sqlbox_mysql.h sqlbox-0.7.2.new/gw/sqlbox_mysql.h
+--- sqlbox-0.7.2/gw/sqlbox_mysql.h 2009-05-19 11:08:35.000000000 -0400
++++ sqlbox-0.7.2.new/gw/sqlbox_mysql.h 2009-09-16 11:23:03.000000000 -0400
+@@ -48,7 +48,7 @@
+ void sql_save_msg(Msg *msg, Octstr *momt);
+ Msg *mysql_fetch_msg();
+ void sql_shutdown();
+-struct server_type *sql_init_mysql(Cfg *cfg);
++struct server_type *sqlbox_init_mysql(Cfg *cfg);
+ #ifndef sqlbox_mysql_c
+ extern
+ #endif
+diff -Naur sqlbox-0.7.2/gw/sqlbox_oracle.h sqlbox-0.7.2.new/gw/sqlbox_oracle.h
+--- sqlbox-0.7.2/gw/sqlbox_oracle.h 2009-05-19 11:08:35.000000000 -0400
++++ sqlbox-0.7.2.new/gw/sqlbox_oracle.h 2009-09-16 11:23:03.000000000 -0400
+@@ -52,7 +52,7 @@
+ void sql_save_msg(Msg *msg, Octstr *momt /*, Octstr smsbox_id */);
+ Msg *oracle_fetch_msg();
+ void sql_shutdown();
+-struct server_type *sql_init_oracle(Cfg *cfg);
++struct server_type *sqlbox_init_oracle(Cfg *cfg);
+ #ifndef sqlbox_oracle_c
+ extern
+ #endif
+diff -Naur sqlbox-0.7.2/gw/sqlbox_pgsql.h sqlbox-0.7.2.new/gw/sqlbox_pgsql.h
+--- sqlbox-0.7.2/gw/sqlbox_pgsql.h 2009-05-19 11:08:35.000000000 -0400
++++ sqlbox-0.7.2.new/gw/sqlbox_pgsql.h 2009-09-16 11:23:03.000000000 -0400
+@@ -44,7 +44,7 @@
+ void sql_save_msg(Msg *msg, Octstr *momt /*, Octstr smsbox_id */);
+ Msg *pgsql_fetch_msg();
+ void sql_shutdown();
+-struct server_type *sql_init_pgsql(Cfg *cfg);
++struct server_type *sqlbox_init_pgsql(Cfg *cfg);
+ void sqlbox_configure_pgsql(Cfg* cfg);
+ #ifndef sqlbox_pgsql_c
+ extern
+diff -Naur sqlbox-0.7.2/gw/sqlbox_sdb.h sqlbox-0.7.2.new/gw/sqlbox_sdb.h
+--- sqlbox-0.7.2/gw/sqlbox_sdb.h 2009-05-19 11:08:35.000000000 -0400
++++ sqlbox-0.7.2.new/gw/sqlbox_sdb.h 2009-09-16 11:23:03.000000000 -0400
+@@ -21,7 +21,7 @@
+ void sql_save_msg(Msg *msg, Octstr *momt );
+ Msg *sdb_fetch_msg();
+ void sql_shutdown();
+-struct server_type *sql_init_sdb(Cfg *cfg);
++struct server_type *sqlbox_init_sdb(Cfg *cfg);
+ #ifndef sqlbox_sdb_c
+ extern
+ #endif
+diff -Naur sqlbox-0.7.2/gw/sqlbox_sqlite3.h sqlbox-0.7.2.new/gw/sqlbox_sqlite3.h
+--- sqlbox-0.7.2/gw/sqlbox_sqlite3.h 2009-05-19 11:08:35.000000000 -0400
++++ sqlbox-0.7.2.new/gw/sqlbox_sqlite3.h 2009-09-16 11:23:03.000000000 -0400
+@@ -41,7 +41,7 @@
+ void sql_save_msg(Msg *msg, Octstr *momt );
+ Msg *sqlite3_fetch_msg();
+ void sql_shutdown();
+-struct server_type *sql_init_sqlite3(Cfg *cfg);
++struct server_type *sqlbox_init_sqlite3(Cfg *cfg);
+ #ifndef sqlbox_sqlite3_c
+ extern
+ #endif
+diff -Naur sqlbox-0.7.2/gw/sqlbox_sqlite.h sqlbox-0.7.2.new/gw/sqlbox_sqlite.h
+--- sqlbox-0.7.2/gw/sqlbox_sqlite.h 2009-05-19 11:08:35.000000000 -0400
++++ sqlbox-0.7.2.new/gw/sqlbox_sqlite.h 2009-09-16 11:23:03.000000000 -0400
+@@ -41,7 +41,7 @@
+ void sql_save_msg(Msg *msg, Octstr *momt );
+ Msg *sqlite_fetch_msg();
+ void sql_shutdown();
+-struct server_type *sql_init_sqlite(Cfg *cfg);
++struct server_type *sqlbox_init_sqlite(Cfg *cfg);
+ #ifndef sqlbox_sqlite_c
+ extern
+ #endif \ No newline at end of file
diff --git a/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox.initd b/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox.initd
new file mode 100644
index 000000000000..fd270e65e544
--- /dev/null
+++ b/app-mobilephone/kannel-sqlbox/files/kannel-sqlbox.initd
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+KANNEL_SERVICE=${SVCNAME#*-}
+
+depend() {
+ need kannel-bearerbox
+ before kannel-smsbox
+}
+
+checkconfig() {
+ if [ ! -f /etc/kannel/kannel.conf ] ; then
+ eerror "/etc/kannel/kannel.conf file doesn't exists!"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+
+ ebegin "Starting kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --start --quiet --exec /usr/sbin/${KANNEL_SERVICE} -- \
+ --daemonize --user kannel --logfile /var/log/kannel/${KANNEL_SERVICE}.log \
+ --pid-file /var/run/kannel/${KANNEL_SERVICE}.pid /etc/kannel/sqlbox.conf
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --stop --verbose --pidfile /var/run/kannel/${KANNEL_SERVICE}.pid
+ eend $?
+}
diff --git a/app-mobilephone/kannel-sqlbox/kannel-sqlbox-1.5.0-r1.ebuild b/app-mobilephone/kannel-sqlbox/kannel-sqlbox-1.5.0-r1.ebuild
new file mode 100644
index 000000000000..b50093b9e346
--- /dev/null
+++ b/app-mobilephone/kannel-sqlbox/kannel-sqlbox-1.5.0-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit eutils flag-o-matic readme.gentoo-r1
+
+DESCRIPTION="DB-Based Kannel Box for message queueing"
+HOMEPAGE="http://www.kannel.org/"
+SRC_URI="http://www.kannel.org/download/${PV}/gateway-${PV}.tar.gz"
+
+LICENSE="Apache-1.1 GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ssl doc"
+
+RDEPEND="|| (
+ ~app-mobilephone/kannel-${PV}[mysql]
+ ~app-mobilephone/kannel-${PV}[sqlite]
+ ~app-mobilephone/kannel-${PV}[postgres]
+ )
+ ssl? ( dev-libs/openssl:0 )"
+DEPEND="${RDEPEND}
+ doc? ( media-gfx/transfig
+ app-text/jadetex
+ app-text/docbook-dsssl-stylesheets
+ app-text/docbook-sgml-dtd:3.1 )"
+
+S="${WORKDIR}/gateway-${PV}/addons/sqlbox/"
+
+pkg_setup() {
+ append-ldflags $(no-as-needed)
+ DISABLE_AUTOFORMATTING="yes"
+ DOC_CONTENTS="Please view the following page for config information:
+http://www.kannel.org/pipermail/users/2006-October/000859.html
+
+In essence you need to do 3 things:
+1. Create the database (tables will be automatically created by kannel)
+2. Point sqlbox to the smsbox-port in kannel [core] group
+3. Point smsbox to smsbox-port in sqlbox [sqlbox] group
+
+This literally puts sqlbox in between the bearerbox and smsbox
+for data storage into a database"
+}
+
+src_configure() {
+ econf --docdir=/usr/share/doc/${PF} \
+ --without-ctlib \
+ --without-mssql \
+ $(use_enable ssl) \
+ $(use_enable doc docs) \
+ || die "econf failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "failed emake install"
+
+ if use doc; then
+ emake doc/userguide.html || die "emake docs failed"
+ dohtml doc/userguide.html || die "userguide.html not found"
+ fi
+
+ newinitd "${FILESDIR}"/kannel-sqlbox.initd kannel-sqlbox
+
+ dodoc AUTHORS ChangeLog NEWS README
+ insinto /etc/kannel
+ newins example/sqlbox.conf.example sqlbox.conf.sample
+
+ readme.gentoo_create_doc
+}
+
+pkg_postinst() {
+ readme.gentoo_print_elog
+}
diff --git a/app-mobilephone/kannel-sqlbox/metadata.xml b/app-mobilephone/kannel-sqlbox/metadata.xml
new file mode 100644
index 000000000000..729d3f4b648f
--- /dev/null
+++ b/app-mobilephone/kannel-sqlbox/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Gentoo Proxy Maintainers Project</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>travisghansen@yahoo.com</email>
+ <name>Travis Hansen</name>
+ <description>Proxied maintainer; set to assignee in all bugs</description>
+ </maintainer>
+ <longdescription>Sqlbox is a special Kannel box that sits between bearerbox and
+smsbox and uses a database queue to store and forward messages.</longdescription>
+</pkgmetadata>
diff --git a/app-mobilephone/kannel/Manifest b/app-mobilephone/kannel/Manifest
new file mode 100644
index 000000000000..8292eacf88dc
--- /dev/null
+++ b/app-mobilephone/kannel/Manifest
@@ -0,0 +1,15 @@
+AUX kannel-1.4.3-autotools.patch 952 SHA256 3e04fdf52e6dbc10da2edee7776fc35254aafea3467d168aabf30f9ca65b0443 SHA512 ff449047fa16d6274682e0c1ccb5741187d397345bdc28bdcdf9aea4c4329d572e63066a75433191a1128302cf529d186a1d493bbc0d9e7de4ff271b59413f4b WHIRLPOOL d94fe887c54c917a5c8e36c08f0ff2900176139ad87489e7b3d0724591ada06cfa5f527a801ac7c718016fc1b146b6038107412b8797f03af1c2801cfb099bba
+AUX kannel-1.4.3-custom-wap-ports.patch 13135 SHA256 f2873ee0950ccc9f512cde0262a64aca3aaab02ce7a12b94df7365630afb229b SHA512 5b4830e2c148926cf85e071933e356bc6d82c0e469a6a0887eef65fb95151e7bb864258087783283239cc1dc28fb92637269ea8984a87f1aab3846d00bc4c188 WHIRLPOOL c4cd58e11ed9c88e7cc1c76f11066384023235fa44b55f88faf6a31c67c7cf3cb066b460278fff6e97bd854cee2cb9ea0ada6974a57ed87464d4f43196ae8959
+AUX kannel-1.4.3-external-libuuid.patch 19830 SHA256 5aac0108ed74ff3b50170c25c098521e00ca0d8bb361e9e77418f2c5c1f52d85 SHA512 e810d87f5aba6651a87aa3b959780115ed643253b120c2d4da13a7a7fe0cb9ca264e4303aa402ff1401200b9649a663dd203355c3384b28c4152b72b2a2916a2 WHIRLPOOL 376a1303aeff276172224201acda6deea175f706247eeeb58534b7b870d01ff5d5b7d59194f6dbaddf4a9ee69654fe8aa827a39c10e89be54b6fcc3993933559
+AUX kannel-1.5.0-custom-wap-ports.patch 13161 SHA256 024874118ccb7ff2d0a4a42229b3639910bec6bbc02b6d251097303599392aa3 SHA512 cd71a435feadb43533ed06cf0a1f9e556131f5339951cc1971c9ebf922a5e028b390af978441d7d3fde68022f9c67fe3af69be737d9952614486613f7ba29d23 WHIRLPOOL 42761c282c1ea2016b81b3cc2939c21655a0ab24f5a79401a0fa6c404741bc8cc414d874c1cae2dbf1e00ce30adc41a4413cee029debfa1b16d56ba60bef5f60
+AUX kannel-1.5.0-initgroups.patch 333 SHA256 c2ba9bfe1f9dea2b23d491f4635f7eb13246bd41e58fd209121a5ad256aad2b5 SHA512 06b143b70fd09575adc7bee61c1f48f10ced3da6239fedb9726d56162d53a1f0e6fe6c603e3e56ea4068b26df00196ca6ec4cfb02d321135bbacde6b7f75c217 WHIRLPOOL 5ffc639511149821bc57b97ce9d1dd6c75c755b454ef03969869272b8f3164be8d89ba6766877a623a318b8c1bb181741a02648f935ecfb593ea6ed67dc4a834
+AUX kannel-bearerbox.initd 864 SHA256 069c0617f8744c970aae5c05de7e0d119c595b3968199a88d4ace81b7a139f4d SHA512 626f90e7b66d4fa2db6430682dbfa7201a28d28f8052236683b6ecc27ca7528a1e195bee5fd4bf669a4cd7e70f729fa2072ad6007485c294bf91e912dc4c1830 WHIRLPOOL 82c708bd9323967597799efd318143b3545a72e80e106c3e6598dc1f2432b88f2f876a8cf12dc4ad03714978924c0aef19a5f211494a797bec0643e4f207de6c
+AUX kannel-smsbox.initd 849 SHA256 5f826db1c82b61f46aa4097d2058022a7bfe6bf1e0509fd886a9c2dfd33d3feb SHA512 f0bad4c7b083c7edb96620e4263495872dbc59c2e911cf981f09e8d7a1ee2d3cc7fea63bec0596d60133aa50eea0e8ffeda1c3422395fe6fd7a35dcfa726426e WHIRLPOOL b12f50aed001938ca07836902a06b89a133f3fcdc1e3e36ccf29ad1e866241c4a4f6dbc31a3ed83b30c5021f3f48cd9d375ae9b9b689a0411d911c98f1a7a1c3
+AUX kannel-wapbox.initd 849 SHA256 5f826db1c82b61f46aa4097d2058022a7bfe6bf1e0509fd886a9c2dfd33d3feb SHA512 f0bad4c7b083c7edb96620e4263495872dbc59c2e911cf981f09e8d7a1ee2d3cc7fea63bec0596d60133aa50eea0e8ffeda1c3422395fe6fd7a35dcfa726426e WHIRLPOOL b12f50aed001938ca07836902a06b89a133f3fcdc1e3e36ccf29ad1e866241c4a4f6dbc31a3ed83b30c5021f3f48cd9d375ae9b9b689a0411d911c98f1a7a1c3
+DIST gateway-1.4.3.tar.gz 2654925 SHA256 9e247f4168290973d799d580472494a89a2cf22db035550f6423868b5bf78a07 SHA512 2e727cd3f57ba5af815f1c029dd9125db17b4f980bb555c20cde693e03226f52e1d2969a3d262e0dda1198cbddd3cc1d2f708aaa623f656d91aef686f4925dae WHIRLPOOL 2830599a7184b52b653d77fec03614e3e09e518e4bf0cb7fe87c5a7640341f01a7dfb0904c406fc0628b60a7b63be291c39ec8b0cfd16d56def171761f81d7bb
+DIST gateway-1.5.0.tar.gz 3469476 SHA256 9613fbf46ffaca322f3983a9b8a7579b135c54b8dd24cf715777da5ff50c5e53 SHA512 5bd35ff40e0f5882367f717e67104a0dc8703b5d6d95654e1268ded15cf6fac6366968b10adbe2eec22b3ac17fe3ae33b4142cd38f51fd3d75a56c8fe7653652 WHIRLPOOL d813da05f572e69c1619483c68a06f0587f8e191b1d71973fd9b63c22b8749169ae02963b48cfeae980aff1628f0b2c72a0ce9a82f4f7eecb5dc93cec0f2d2d7
+EBUILD kannel-1.4.3-r2.ebuild 2992 SHA256 754f0a6926373d72effb5d89514f613d01d9ca3f8b7ffb28683ce1157d19c75d SHA512 d391f96df59b02a2c0a834fd9049ffa8eeb769cab1b238a45d303f9f9e14e2d518fda620be0589e8922dad031625545ee3c8b5dc65620d939f13ac9374b3cd0a WHIRLPOOL 5df2245bccf37ae55c90ad93874dcc2122ac11bdf3ab4573e1b1d4bb6ca2322b034051ffcfd748a0e904fb9cf5f64d9a25536b46d28e396d36b91eff9dc6d6ff
+EBUILD kannel-1.5.0-r3.ebuild 3030 SHA256 945a0df8a820b7040c9cac1faef23f54795a94e5b1c78ca2a65f52967951500c SHA512 d53c86aee49d6888cf772aede6e46974ae8f723643ea842459411718dda806136704596fce68ba1e66396908fd8170196dec359685959d84f85652c033a452ee WHIRLPOOL b148d8fc260fa6f941d1fad70ca2d52ed2bbc6796617c0c1e70c20435d50d3624f4bbce4836a25f4110b17f761a3ebffbc99cc0b74f27a582afc81ba721394f4
+MISC ChangeLog 4671 SHA256 7012a9a81e9f7df4e2d87a761c2d878e8526d58d1f38bd4be3578bfbf6d64d2b SHA512 1b8c4d6ad0728988b93d269ee9ae10e7e4ebb7b7805d7133aad4e9dd31b87de78dd0614304175f4e1713bde54f0bfcf2cc99649df68b0ee73c869b2d72edfdce WHIRLPOOL 9faf59ba6652a8ab9bf6f6a66e66628eb17a3c8234c53981d26271433571718f766b6cf8c860569db68a49bb5fdd4367a13e59ec0e89c0b89d814bb5a22e94e4
+MISC ChangeLog-2015 5270 SHA256 179097a3425da3e9050ed241e2317c17ccf43144f0f4c6884395e7bf1c044cca SHA512 8b0574b0fde488e9c2a88d6471ec4ecffadc0938713c2e9c48a72e2c7b75e0a3b9c69198c4972c4e4be31e745525ec26ccbc9eeb5d10da137f28a840daf38600 WHIRLPOOL 505283bb3959374e94acc36ea4f105d8b7b3d0cd8606ed2b30dcc3f2383d9a20d59816d18962fa6b78909c24e1dcf939d00f47ac54b6c23e47169477398fd371
+MISC metadata.xml 390 SHA256 3f560dde18aa521497f577cc7f003a09e4bed265845cb2d55a40b73d2adac37a SHA512 8a41bfb7c62e2d9c247bbab03e7e9d352a2165e668e71f3930592f891d5a2c911064d62f0b1f1f13eefc69c9a6dcaa06d8575499fc9161b661256388cfdcf534 WHIRLPOOL 9b9c0cdef0d7e211332cf2c62275c1744bd9e4ec9a9f72d24c9e535181b765fed1a803a0918a9ab249ff93110676e66a401a58472b944af15e5a8a646c31f32b
diff --git a/app-mobilephone/kannel/files/kannel-1.4.3-autotools.patch b/app-mobilephone/kannel/files/kannel-1.4.3-autotools.patch
new file mode 100644
index 000000000000..e39cad8708c8
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-1.4.3-autotools.patch
@@ -0,0 +1,33 @@
+diff -Nru gateway-1.4.3.orig/configure.in gateway-1.4.3/configure.in
+--- gateway-1.4.3.orig/configure.in 2009-01-12 16:47:01.000000000 +0000
++++ gateway-1.4.3/configure.in 2009-03-01 14:18:51.000000000 +0000
+@@ -95,8 +95,9 @@
+ AC_SUBST(PKGADD_VENDOR)
+
+ dnl Target installation directory for documentation
++PACKAGE=kannel
+ AC_SUBST(docdir)
+-docdir='${prefix}/share/doc/kannel'
++AC_SUBST(PACKAGE)
+
+ dnl Checks system type.
+ AC_CONFIG_SECTION([Running system checks])
+@@ -112,7 +112,6 @@
+ AC_PROG_INSTALL
+ AC_PROG_RANLIB
+ AC_PROG_YACC
+-AC_PROG_LEX
+ AC_CHECK_TOOL(AR, ar)
+ AC_PATH_PROG(CONVERT, convert)
+ AC_PATH_PROG(PERL, perl)
+diff -Nru gateway-1.4.3.orig/Makefile.in gateway-1.4.3/Makefile.in
+--- gateway-1.4.3.orig/Makefile.in 2008-06-24 15:05:24.000000000 +0000
++++ gateway-1.4.3/Makefile.in 2009-03-01 14:18:14.000000000 +0000
+@@ -61,7 +61,6 @@
+ SHELL = @SHELL@
+ VERSION = @VERSION@
+ SUFFIX = @SUFFIX@
+-LEX = @LEX@
+ PERL = @PERL@
+ YACC = @YACC@
+
diff --git a/app-mobilephone/kannel/files/kannel-1.4.3-custom-wap-ports.patch b/app-mobilephone/kannel/files/kannel-1.4.3-custom-wap-ports.patch
new file mode 100644
index 000000000000..e1992b08319a
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-1.4.3-custom-wap-ports.patch
@@ -0,0 +1,346 @@
+diff -Nru gateway-1.4.3.orig/gw/bb_udp.c gateway-1.4.3/gw/bb_udp.c
+--- gateway-1.4.3.orig/gw/bb_udp.c 2009-01-12 16:46:56.000000000 +0000
++++ gateway-1.4.3/gw/bb_udp.c 2009-03-01 14:20:38.000000000 +0000
+@@ -78,7 +78,7 @@
+ #include "gwlib/gwlib.h"
+ #include "msg.h"
+ #include "bearerbox.h"
+-
++#include "custports.h"
+ /* passed from bearerbox core */
+
+ extern volatile sig_atomic_t bb_status;
+@@ -352,13 +352,13 @@
+ while (gwlist_len(ifs) > 0) {
+ iface = gwlist_extract_first(ifs);
+ info(0, "Adding interface %s", octstr_get_cstr(iface));
+- add_service(9200, octstr_get_cstr(iface)); /* wsp */
+- add_service(9201, octstr_get_cstr(iface)); /* wsp/wtp */
++ add_service(port_wsp, octstr_get_cstr(iface)); /* wsp */
++ add_service(port_wtp, octstr_get_cstr(iface)); /* wsp/wtp */
+
+ #ifdef HAVE_WTLS_OPENSSL
+ if (allow_wtls) {
+- add_service(9202, octstr_get_cstr(iface)); /* wsp/wtls */
+- add_service(9203, octstr_get_cstr(iface)); /* wsp/wtp/wtls */
++ add_service(port_wsps, octstr_get_cstr(iface)); /* wsp/wtls */
++ add_service(port_wtps, octstr_get_cstr(iface)); /* wsp/wtp/wtls */
+ }
+ #else
+ if (allow_wtls)
+diff -Nru gateway-1.4.3.orig/gw/bearerbox.c gateway-1.4.3/gw/bearerbox.c
+--- gateway-1.4.3.orig/gw/bearerbox.c 2009-01-12 16:46:56.000000000 +0000
++++ gateway-1.4.3/gw/bearerbox.c 2009-03-01 14:23:05.000000000 +0000
+@@ -78,6 +78,7 @@
+ #include "shared.h"
+ #include "dlr.h"
+ #include "load.h"
++#include "custports.h"
+
+ /* global variables; included to other modules as needed */
+
+@@ -365,6 +366,7 @@
+ int ssl_enabled = 0;
+ #endif /* HAVE_LIBSSL */
+
++ ReadCustomPorts(cfg);
+ /* defaults: use localtime and markers for access-log */
+ lf = m = 1;
+
+diff -Nru gateway-1.4.3.orig/gw/custports.c gateway-1.4.3/gw/custports.c
+--- gateway-1.4.3.orig/gw/custports.c 1970-01-01 00:00:00.000000000 +0000
++++ gateway-1.4.3/gw/custports.c 2009-03-01 14:20:38.000000000 +0000
+@@ -0,0 +1,88 @@
++/* ====================================================================
++ * The Kannel Software License, Version 1.0
++ *
++ * Copyright (c) 2001-2004 Kannel Group
++ * Copyright (c) 1998-2001 WapIT Ltd.
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ *
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the
++ * distribution.
++ *
++ * 3. The end-user documentation included with the redistribution,
++ * if any, must include the following acknowledgment:
++ * "This product includes software developed by the
++ * Kannel Group (http://www.kannel.org/)."
++ * Alternately, this acknowledgment may appear in the software itself,
++ * if and wherever such third-party acknowledgments normally appear.
++ *
++ * 4. The names "Kannel" and "Kannel Group" must not be used to
++ * endorse or promote products derived from this software without
++ * prior written permission. For written permission, please
++ * contact org@kannel.org.
++ *
++ * 5. Products derived from this software may not be called "Kannel",
++ * nor may "Kannel" appear in their name, without prior written
++ * permission of the Kannel Group.
++ *
++ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
++ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
++ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++ * DISCLAIMED. IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS
++ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
++ * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
++ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
++ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
++ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
++ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
++ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++ * ====================================================================
++ *
++ * This software consists of voluntary contributions made by many
++ * individuals on behalf of the Kannel Group. For more information on
++ * the Kannel Group, please see <http://www.kannel.org/>.
++ *
++ * Portions of this software are based upon software originally written at
++ * WapIT Ltd., Helsinki, Finland for the Kannel project.
++ */
++
++/*
++ * gw/custports.c
++ *
++ * Implementation of reading custom UDP ports used by wapbox
++ *
++ * Lubor Kolar <kolar@porcus.cz>, 14.03.2006
++ */
++
++#include <custports.h>
++
++long port_wsp = 9200; // connectionless default
++long port_wtp = 9201; // connection-oriented default
++long port_wsps = 9202; // connectionless secure default
++long port_wtps = 9203; // connection-oriented secure
++
++
++void ReadCustomPorts(Cfg *config)
++{
++ CfgGroup *grp;
++ grp = cfg_get_single_group(config, octstr_imm("wapbox"));
++ if(grp == NULL)
++ return;
++
++ if(cfg_get_integer(&port_wsp, grp, octstr_imm("wsp-port")) != -1)
++ info(0, "Using custom WSP port %ld", port_wsp);
++ if(cfg_get_integer(&port_wtp, grp, octstr_imm("wtp-port")) != -1)
++ info(0, "Using custom WSP/WTP port %ld", port_wtp);
++ if(cfg_get_integer(&port_wsps, grp, octstr_imm("wsps-port")) != -1)
++ info(0, "Using custom WSP/WTLS port %ld", port_wsps);
++ if(cfg_get_integer(&port_wtps, grp, octstr_imm("wtps-port")) != -1)
++ info(0, "Using custom WSP/WTP/WTLS port %ld", port_wtps);
++}
+diff -Nru gateway-1.4.3.orig/gw/custports.h gateway-1.4.3/gw/custports.h
+--- gateway-1.4.3.orig/gw/custports.h 1970-01-01 00:00:00.000000000 +0000
++++ gateway-1.4.3/gw/custports.h 2009-03-01 14:20:38.000000000 +0000
+@@ -0,0 +1,77 @@
++/* ====================================================================
++ * The Kannel Software License, Version 1.0
++ *
++ * Copyright (c) 2001-2004 Kannel Group
++ * Copyright (c) 1998-2001 WapIT Ltd.
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ *
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the
++ * distribution.
++ *
++ * 3. The end-user documentation included with the redistribution,
++ * if any, must include the following acknowledgment:
++ * "This product includes software developed by the
++ * Kannel Group (http://www.kannel.org/)."
++ * Alternately, this acknowledgment may appear in the software itself,
++ * if and wherever such third-party acknowledgments normally appear.
++ *
++ * 4. The names "Kannel" and "Kannel Group" must not be used to
++ * endorse or promote products derived from this software without
++ * prior written permission. For written permission, please
++ * contact org@kannel.org.
++ *
++ * 5. Products derived from this software may not be called "Kannel",
++ * nor may "Kannel" appear in their name, without prior written
++ * permission of the Kannel Group.
++ *
++ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
++ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
++ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++ * DISCLAIMED. IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS
++ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
++ * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
++ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
++ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
++ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
++ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
++ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++ * ====================================================================
++ *
++ * This software consists of voluntary contributions made by many
++ * individuals on behalf of the Kannel Group. For more information on
++ * the Kannel Group, please see <http://www.kannel.org/>.
++ *
++ * Portions of this software are based upon software originally written at
++ * WapIT Ltd., Helsinki, Finland for the Kannel project.
++ */
++
++/*
++ * gw/custports.h
++ *
++ * Implementation of wapbox custom UDP ports)
++ *
++ * Lubor Kolar <kolar@porcus.cz>, 14.03.2006
++ */
++
++#ifndef CUSTPORTS_H
++#define CUSTPORTS_H
++
++#include "gwlib/gwlib.h"
++
++extern long port_wsp; // connectionless
++extern long port_wtp; // connection-oriented
++extern long port_wsps; // connectionless secure
++extern long port_wtps; // connection-oriented secure
++
++void ReadCustomPorts(Cfg *config);
++#endif /* CUSTPORTS_H */
++
+diff -Nru gateway-1.4.3.orig/gw/wapbox.c gateway-1.4.3/gw/wapbox.c
+--- gateway-1.4.3.orig/gw/wapbox.c 2009-01-12 16:46:57.000000000 +0000
++++ gateway-1.4.3/gw/wapbox.c 2009-03-01 14:20:38.000000000 +0000
+@@ -84,17 +84,11 @@
+ #include "gwlib/pki.h"
+ #endif
+ #include "radius/radius_acct.h"
++#include "custports.h"
+
+ static void config_reload(int reload);
+ static long logfilelevel=-1;
+
+-enum {
+- CONNECTIONLESS_PORT = 9200,
+- CONNECTION_ORIENTED_PORT = 9201,
+- WTLS_CONNECTIONLESS_PORT = 9202,
+- WTLS_CONNECTION_ORIENTED_PORT = 9203
+-};
+-
+ enum { DEFAULT_TIMER_FREQ = 1};
+
+ static Octstr *bearerbox_host;
+@@ -131,6 +125,8 @@
+
+ cfg_dump(cfg);
+
++ ReadCustomPorts(cfg);
++
+ /*
+ * Extract info from the core group.
+ */
+@@ -776,9 +772,9 @@
+ * XXXX here should be suspend/resume, add RSN
+ */
+ } else if (msg_type(msg) == wdp_datagram) {
+- switch (msg->wdp_datagram.destination_port) {
+- case CONNECTIONLESS_PORT:
+- case CONNECTION_ORIENTED_PORT:
++ if(msg->wdp_datagram.destination_port == port_wsp
++ || msg->wdp_datagram.destination_port == port_wtp)
++ {
+ dgram = wap_event_create(T_DUnitdata_Ind);
+ dgram->u.T_DUnitdata_Ind.addr_tuple = wap_addr_tuple_create(
+ msg->wdp_datagram.source_address,
+@@ -789,19 +785,22 @@
+ msg->wdp_datagram.user_data = NULL;
+
+ wap_dispatch_datagram(dgram);
+- break;
+- case WTLS_CONNECTIONLESS_PORT:
+- case WTLS_CONNECTION_ORIENTED_PORT:
++ }
++ else
++ if(msg->wdp_datagram.destination_port == port_wsps
++ || msg->wdp_datagram.destination_port == port_wtps)
++ {
+ #if (HAVE_WTLS_OPENSSL)
+ dgram = wtls_unpack_wdp_datagram(msg);
+ if (dgram != NULL)
+ wtls_dispatch_event(dgram);
+ #endif
+- break;
+- default:
++ }
++ else
++ {
+ panic(0,"Bad packet received! This shouldn't happen!");
+ break;
+- }
++ }
+ } else {
+ warning(0, "Received other message than wdp/admin, ignoring!");
+ }
+diff -Nru gateway-1.4.3.orig/gw/wap_push_ppg.c gateway-1.4.3/gw/wap_push_ppg.c
+--- gateway-1.4.3.orig/gw/wap_push_ppg.c 2009-01-12 16:46:56.000000000 +0000
++++ gateway-1.4.3/gw/wap_push_ppg.c 2009-03-01 14:20:38.000000000 +0000
+@@ -88,6 +88,7 @@
+ #include "wap_push_pap_compiler.h"
+ #include "wap_push_pap_mime.h"
+ #include "wap_push_ppg_pushuser.h"
++#include "custports.h"
+
+ enum {
+ TIME_EXPIRED = 0,
+@@ -1779,10 +1780,10 @@
+
+ if (!cless_accepted) {
+ cliport = CONNECTED_CLIPORT;
+- servport = CONNECTED_SERVPORT;
++ servport = port_wtp;
+ } else {
+ cliport = CONNECTIONLESS_PUSH_CLIPORT;
+- servport = CONNECTIONLESS_SERVPORT;
++ servport = port_wsp;
+ }
+
+ address_type = (**e).u.Push_Message.address_type;
+diff -Nru gateway-1.4.3.orig/gw/wap_push_ppg.h gateway-1.4.3/gw/wap_push_ppg.h
+--- gateway-1.4.3.orig/gw/wap_push_ppg.h 2009-01-12 16:46:57.000000000 +0000
++++ gateway-1.4.3/gw/wap_push_ppg.h 2009-03-01 14:20:38.000000000 +0000
+@@ -167,9 +167,7 @@
+ */
+ enum {
+ CONNECTIONLESS_PUSH_CLIPORT = 2948,
+- CONNECTIONLESS_SERVPORT = 9200,
+ CONNECTED_CLIPORT = 9209,
+- CONNECTED_SERVPORT = 9201
+ };
+
+ struct PPGSessionMachine {
+diff -Nru gateway-1.4.3.orig/gwlib/cfg.def gateway-1.4.3/gwlib/cfg.def
+--- gateway-1.4.3.orig/gwlib/cfg.def 2009-01-12 16:46:55.000000000 +0000
++++ gateway-1.4.3/gwlib/cfg.def 2009-03-01 14:20:38.000000000 +0000
+@@ -159,6 +159,10 @@
+ OCTSTR(concatenation)
+ OCTSTR(max-messages)
+ OCTSTR(wml-strict)
++ OCTSTR(wsp-port)
++ OCTSTR(wtp-port)
++ OCTSTR(wsps-port)
++ OCTSTR(wtps-port)
+ )
+
+
diff --git a/app-mobilephone/kannel/files/kannel-1.4.3-external-libuuid.patch b/app-mobilephone/kannel/files/kannel-1.4.3-external-libuuid.patch
new file mode 100644
index 000000000000..a29f2c3a8333
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-1.4.3-external-libuuid.patch
@@ -0,0 +1,849 @@
+diff -Nru gateway-1.4.3.orig/configure.in gateway-1.4.3/configure.in
+--- gateway-1.4.3.orig/configure.in 2009-03-01 14:42:03.000000000 +0000
++++ gateway-1.4.3/configure.in 2009-03-01 15:06:37.000000000 +0000
+@@ -173,6 +173,9 @@
+ AC_ARG_WITH(libs,
+ [ --with-libs=FLAGS use FLAGS for extra libraries],
+ LIBS="$LIBS $withval")
++CFLAGS="$CFLAGS -I/usr/include/uuid"
++LIBS="$LIBS -luuid"
++
+
+ dnl Check whether compiler supports inline
+ AC_C_INLINE
+@@ -1226,7 +1229,7 @@
+ dnl Final Output
+
+ AC_CONFIG_SECTION([Generating output files])
+-AC_OUTPUT(gwlib/gw_uuid_types.h Makefile)
++AC_OUTPUT(Makefile)
+
+
+ dnl LICENSE notice
+diff -Nru gateway-1.4.3.orig/gwlib/gwlib.c gateway-1.4.3/gwlib/gwlib.c
+--- gateway-1.4.3.orig/gwlib/gwlib.c 2009-01-12 16:46:54.000000000 +0000
++++ gateway-1.4.3/gwlib/gwlib.c 2009-03-01 15:01:36.000000000 +0000
+@@ -79,7 +79,6 @@
+ {
+ gw_assert(!init);
+ gw_init_mem();
+- uuid_init();
+ octstr_init();
+ gwlib_protected_init();
+ gwthread_init();
+@@ -100,7 +99,6 @@
+ gwthread_shutdown();
+ octstr_shutdown();
+ gwlib_protected_shutdown();
+- uuid_shutdown();
+ cfg_shutdown();
+ gw_check_leaks();
+ log_shutdown();
+diff -Nru gateway-1.4.3.orig/gwlib/gwlib.h gateway-1.4.3/gwlib/gwlib.h
+--- gateway-1.4.3.orig/gwlib/gwlib.h 2009-01-12 16:46:55.000000000 +0000
++++ gateway-1.4.3/gwlib/gwlib.h 2009-03-01 15:01:56.000000000 +0000
+@@ -100,10 +100,12 @@
+ #include "semaphore.h"
+ #include "xmlrpc.h"
+ #include "md5.h"
+-#include "gw_uuid.h"
++#include <uuid.h>
+ #include "gw-rwlock.h"
+ #include "gw-prioqueue.h"
+
++#define UUID_STR_LEN 36
++
+ void gwlib_assert_init(void);
+ void gwlib_init(void);
+ void gwlib_shutdown(void);
+diff -Nru gateway-1.4.3.orig/gwlib/gw_uuid.c gateway-1.4.3/gwlib/gw_uuid.c
+--- gateway-1.4.3.orig/gwlib/gw_uuid.c 2004-01-05 16:37:10.000000000 +0000
++++ gateway-1.4.3/gwlib/gw_uuid.c 1970-01-01 00:00:00.000000000 +0000
+@@ -1,632 +0,0 @@
+-/*
+- * clear.c -- Clear a UUID
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-
+-/*
+- * Force inclusion of SVID stuff since we need it if we're compiling in
+- * gcc-wall wall mode
+- */
+-#ifndef _SVID_SOURCE
+-#define _SVID_SOURCE
+-#endif
+-
+-#include "gw-config.h"
+-
+-#ifdef HAVE_UNISTD_H
+-#include <unistd.h>
+-#endif
+-#ifdef HAVE_STDLIB_H
+-#include <stdlib.h>
+-#endif
+-#include <string.h>
+-#include <ctype.h>
+-#include <fcntl.h>
+-#include <errno.h>
+-#include <sys/types.h>
+-#include <sys/time.h>
+-#include <sys/stat.h>
+-#include <sys/file.h>
+-#ifdef HAVE_SYS_IOCTL_H
+-#include <sys/ioctl.h>
+-#endif
+-#ifdef HAVE_SYS_SOCKET_H
+-#include <sys/socket.h>
+-#endif
+-#ifdef HAVE_SYS_SOCKIO_H
+-#include <sys/sockio.h>
+-#endif
+-#ifdef HAVE_NET_IF_H
+-#include <net/if.h>
+-#endif
+-#ifdef HAVE_NETINET_IN_H
+-#include <netinet/in.h>
+-#endif
+-#include <stdio.h>
+-
+-#include "gwlib/gw_uuid_types.h"
+-#include "gwlib/gw_uuid.h"
+-
+-/*
+- * Offset between 15-Oct-1582 and 1-Jan-70
+- */
+-#define TIME_OFFSET_HIGH 0x01B21DD2
+-#define TIME_OFFSET_LOW 0x13814000
+-
+-struct uuid {
+- __u32 time_low;
+- __u16 time_mid;
+- __u16 time_hi_and_version;
+- __u16 clock_seq;
+- __u8 node[6];
+-};
+-
+-
+-/*
+- * prototypes
+- */
+-static void uuid_pack(const struct uuid *uu, uuid_t ptr);
+-static void uuid_unpack(const uuid_t in, struct uuid *uu);
+-static int get_random_fd(void);
+-
+-
+-#ifdef HAVE_SRANDOM
+-#define srand(x) srandom(x)
+-#define rand() random()
+-#endif
+-
+-
+-
+-void uuid_init(void)
+-{
+- /*
+- * open random device if any.
+- * We should do it here because otherwise it's
+- * possible that we open device twice.
+- */
+- get_random_fd();
+-}
+-
+-
+-void uuid_shutdown(void)
+-{
+- int fd = get_random_fd();
+-
+- if (fd > 0)
+- close(fd);
+-}
+-
+-void uuid_clear(uuid_t uu)
+-{
+- memset(uu, 0, 16);
+-}
+-
+-/*
+- * compare.c --- compare whether or not two UUID's are the same
+- *
+- * Returns an integer less than, equal to, or greater than zero if
+- * uu1 respectively, to be less than, to match, or be greater than
+- * uu2.
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-#define UUCMP(u1,u2) if (u1 != u2) return((u1 < u2) ? -1 : 1);
+-
+-int uuid_compare(const uuid_t uu1, const uuid_t uu2)
+-{
+- struct uuid uuid1, uuid2;
+-
+- uuid_unpack(uu1, &uuid1);
+- uuid_unpack(uu2, &uuid2);
+-
+- UUCMP(uuid1.time_low, uuid2.time_low);
+- UUCMP(uuid1.time_mid, uuid2.time_mid);
+- UUCMP(uuid1.time_hi_and_version, uuid2.time_hi_and_version);
+- UUCMP(uuid1.clock_seq, uuid2.clock_seq);
+- return memcmp(uuid1.node, uuid2.node, 6);
+-}
+-
+-/*
+- * copy.c --- copy UUIDs
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-void uuid_copy(uuid_t dst, const uuid_t src)
+-{
+- unsigned char *cp1;
+- const unsigned char *cp2;
+- int i;
+-
+- for (i=0, cp1 = dst, cp2 = src; i < 16; i++)
+- *cp1++ = *cp2++;
+-}
+-
+-
+-/*
+- * gen_uuid.c --- generate a DCE-compatible uuid
+- *
+- * Copyright (C) 1996, 1997, 1998, 1999 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-static int get_random_fd(void)
+-{
+- struct timeval tv;
+- static int fd = -2;
+- int i;
+-
+- if (fd == -2) {
+- gettimeofday(&tv, 0);
+- fd = open("/dev/urandom", O_RDONLY);
+- if (fd == -1)
+- fd = open("/dev/random", O_RDONLY | O_NONBLOCK);
+- srand((getpid() << 16) ^ getuid() ^ tv.tv_sec ^ tv.tv_usec);
+- }
+- /* Crank the random number generator a few times */
+- gettimeofday(&tv, 0);
+- for (i = (tv.tv_sec ^ tv.tv_usec) & 0x1F; i > 0; i--)
+- rand();
+-
+- return fd;
+-}
+-
+-
+-/*
+- * Generate a series of random bytes. Use /dev/urandom if possible,
+- * and if not, use srandom/random.
+- */
+-static void get_random_bytes(void *buf, int nbytes)
+-{
+- int i, n = nbytes, fd = get_random_fd();
+- int lose_counter = 0;
+- unsigned char *cp = (unsigned char *) buf;
+-
+- if (fd >= 0) {
+- while (n > 0) {
+- i = read(fd, cp, n);
+- if (i <= 0) {
+- if (lose_counter++ > 16)
+- break;
+- continue;
+- }
+- n -= i;
+- cp += i;
+- lose_counter = 0;
+- }
+- }
+-
+- /*
+- * We do this all the time, but this is the only source of
+- * randomness if /dev/random/urandom is out to lunch.
+- */
+- for (cp = buf, i = 0; i < nbytes; i++)
+- *cp++ ^= (rand() >> 7) & 0xFF;
+- return;
+-}
+-
+-/*
+- * Get the ethernet hardware address, if we can find it...
+- */
+-static int get_node_id(unsigned char *node_id)
+-{
+-#ifdef HAVE_NET_IF_H
+- int sd;
+- struct ifreq ifr, *ifrp;
+- struct ifconf ifc;
+- char buf[1024];
+- int n, i;
+- unsigned char *a;
+-
+-/*
+- * BSD 4.4 defines the size of an ifreq to be
+- * max(sizeof(ifreq), sizeof(ifreq.ifr_name)+ifreq.ifr_addr.sa_len
+- * However, under earlier systems, sa_len isn't present, so the size is
+- * just sizeof(struct ifreq)
+- */
+-#ifdef HAVE_SA_LEN
+-#ifndef max
+-#define max(a,b) ((a) > (b) ? (a) : (b))
+-#endif
+-#define ifreq_size(i) max(sizeof(struct ifreq),\
+- sizeof((i).ifr_name)+(i).ifr_addr.sa_len)
+-#else
+-#define ifreq_size(i) sizeof(struct ifreq)
+-#endif /* HAVE_SA_LEN*/
+-
+- sd = socket(AF_INET, SOCK_DGRAM, IPPROTO_IP);
+- if (sd < 0) {
+- return -1;
+- }
+- memset(buf, 0, sizeof(buf));
+- ifc.ifc_len = sizeof(buf);
+- ifc.ifc_buf = buf;
+- if (ioctl (sd, SIOCGIFCONF, (char *)&ifc) < 0) {
+- close(sd);
+- return -1;
+- }
+- n = ifc.ifc_len;
+- for (i = 0; i < n; i+= ifreq_size(*ifr) ) {
+- ifrp = (struct ifreq *)((char *) ifc.ifc_buf+i);
+- strncpy(ifr.ifr_name, ifrp->ifr_name, IFNAMSIZ);
+-#ifdef SIOCGIFHWADDR
+- if (ioctl(sd, SIOCGIFHWADDR, &ifr) < 0)
+- continue;
+- a = (unsigned char *) &ifr.ifr_hwaddr.sa_data;
+-#else
+-#ifdef SIOCGENADDR
+- if (ioctl(sd, SIOCGENADDR, &ifr) < 0)
+- continue;
+- a = (unsigned char *) ifr.ifr_enaddr;
+-#else
+- /*
+- * XXX we don't have a way of getting the hardware
+- * address
+- */
+- close(sd);
+- return 0;
+-#endif /* SIOCGENADDR */
+-#endif /* SIOCGIFHWADDR */
+- if (!a[0] && !a[1] && !a[2] && !a[3] && !a[4] && !a[5])
+- continue;
+- if (node_id) {
+- memcpy(node_id, a, 6);
+- close(sd);
+- return 1;
+- }
+- }
+- close(sd);
+-#endif
+- return 0;
+-}
+-
+-/* Assume that the gettimeofday() has microsecond granularity */
+-#define MAX_ADJUSTMENT 10
+-
+-static int get_clock(__u32 *clock_high, __u32 *clock_low, __u16 *ret_clock_seq)
+-{
+- static int adjustment = 0;
+- static struct timeval last = {0, 0};
+- static __u16 clock_seq;
+- struct timeval tv;
+- unsigned long long clock_reg;
+-
+-try_again:
+- gettimeofday(&tv, 0);
+- if ((last.tv_sec == 0) && (last.tv_usec == 0)) {
+- get_random_bytes(&clock_seq, sizeof(clock_seq));
+- clock_seq &= 0x1FFF;
+- last = tv;
+- last.tv_sec--;
+- }
+- if ((tv.tv_sec < last.tv_sec) ||
+- ((tv.tv_sec == last.tv_sec) &&
+- (tv.tv_usec < last.tv_usec))) {
+- clock_seq = (clock_seq+1) & 0x1FFF;
+- adjustment = 0;
+- last = tv;
+- } else if ((tv.tv_sec == last.tv_sec) &&
+- (tv.tv_usec == last.tv_usec)) {
+- if (adjustment >= MAX_ADJUSTMENT)
+- goto try_again;
+- adjustment++;
+- } else {
+- adjustment = 0;
+- last = tv;
+- }
+-
+- clock_reg = tv.tv_usec*10 + adjustment;
+- clock_reg += ((unsigned long long) tv.tv_sec)*10000000;
+- clock_reg += (((unsigned long long) 0x01B21DD2) << 32) + 0x13814000;
+-
+- *clock_high = clock_reg >> 32;
+- *clock_low = clock_reg;
+- *ret_clock_seq = clock_seq;
+- return 0;
+-}
+-
+-void uuid_generate_time(uuid_t out)
+-{
+- static unsigned char node_id[6];
+- static int has_init = 0;
+- struct uuid uu;
+- __u32 clock_mid;
+-
+- if (!has_init) {
+- if (get_node_id(node_id) <= 0) {
+- get_random_bytes(node_id, 6);
+- /*
+- * Set multicast bit, to prevent conflicts
+- * with IEEE 802 addresses obtained from
+- * network cards
+- */
+- node_id[0] |= 0x80;
+- }
+- has_init = 1;
+- }
+- get_clock(&clock_mid, &uu.time_low, &uu.clock_seq);
+- uu.clock_seq |= 0x8000;
+- uu.time_mid = (__u16) clock_mid;
+- uu.time_hi_and_version = (clock_mid >> 16) | 0x1000;
+- memcpy(uu.node, node_id, 6);
+- uuid_pack(&uu, out);
+-}
+-
+-void uuid_generate_random(uuid_t out)
+-{
+- uuid_t buf;
+- struct uuid uu;
+-
+- get_random_bytes(buf, sizeof(buf));
+- uuid_unpack(buf, &uu);
+-
+- uu.clock_seq = (uu.clock_seq & 0x3FFF) | 0x8000;
+- uu.time_hi_and_version = (uu.time_hi_and_version & 0x0FFF) | 0x4000;
+- uuid_pack(&uu, out);
+-}
+-
+-/*
+- * This is the generic front-end to uuid_generate_random and
+- * uuid_generate_time. It uses uuid_generate_random only if
+- * /dev/urandom is available, since otherwise we won't have
+- * high-quality randomness.
+- */
+-void uuid_generate(uuid_t out)
+-{
+- if (get_random_fd() >= 0) {
+- uuid_generate_random(out);
+- }
+- else
+- uuid_generate_time(out);
+-}
+-
+-/*
+- * isnull.c --- Check whether or not the UUID is null
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-/* Returns 1 if the uuid is the NULL uuid */
+-int uuid_is_null(const uuid_t uu)
+-{
+- const unsigned char *cp;
+- int i;
+-
+- for (i=0, cp = uu; i < 16; i++)
+- if (*cp++)
+- return 0;
+- return 1;
+-}
+-
+-/*
+- * Internal routine for packing UUID's
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-void uuid_pack(const struct uuid *uu, uuid_t ptr)
+-{
+- __u32 tmp;
+- unsigned char *out = ptr;
+-
+- tmp = uu->time_low;
+- out[3] = (unsigned char) tmp;
+- tmp >>= 8;
+- out[2] = (unsigned char) tmp;
+- tmp >>= 8;
+- out[1] = (unsigned char) tmp;
+- tmp >>= 8;
+- out[0] = (unsigned char) tmp;
+-
+- tmp = uu->time_mid;
+- out[5] = (unsigned char) tmp;
+- tmp >>= 8;
+- out[4] = (unsigned char) tmp;
+-
+- tmp = uu->time_hi_and_version;
+- out[7] = (unsigned char) tmp;
+- tmp >>= 8;
+- out[6] = (unsigned char) tmp;
+-
+- tmp = uu->clock_seq;
+- out[9] = (unsigned char) tmp;
+- tmp >>= 8;
+- out[8] = (unsigned char) tmp;
+-
+- memcpy(out+10, uu->node, 6);
+-}
+-
+-/*
+- * parse.c --- UUID parsing
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-int uuid_parse(const char *in, uuid_t uu)
+-{
+- struct uuid uuid;
+- int i;
+- const char *cp;
+- char buf[3];
+-
+- if (strlen(in) != 36)
+- return -1;
+- for (i=0, cp = in; i <= 36; i++,cp++) {
+- if ((i == 8) || (i == 13) || (i == 18) ||
+- (i == 23)) {
+- if (*cp == '-')
+- continue;
+- else
+- return -1;
+- }
+- if (i== 36)
+- if (*cp == 0)
+- continue;
+- if (!isxdigit(*cp))
+- return -1;
+- }
+- uuid.time_low = strtoul(in, NULL, 16);
+- uuid.time_mid = strtoul(in+9, NULL, 16);
+- uuid.time_hi_and_version = strtoul(in+14, NULL, 16);
+- uuid.clock_seq = strtoul(in+19, NULL, 16);
+- cp = in+24;
+- buf[2] = 0;
+- for (i=0; i < 6; i++) {
+- buf[0] = *cp++;
+- buf[1] = *cp++;
+- uuid.node[i] = strtoul(buf, NULL, 16);
+- }
+-
+- uuid_pack(&uuid, uu);
+- return 0;
+-}
+-
+-
+-/*
+- * Internal routine for unpacking UUID
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-void uuid_unpack(const uuid_t in, struct uuid *uu)
+-{
+- const __u8 *ptr = in;
+- __u32 tmp;
+-
+- tmp = *ptr++;
+- tmp = (tmp << 8) | *ptr++;
+- tmp = (tmp << 8) | *ptr++;
+- tmp = (tmp << 8) | *ptr++;
+- uu->time_low = tmp;
+-
+- tmp = *ptr++;
+- tmp = (tmp << 8) | *ptr++;
+- uu->time_mid = tmp;
+-
+- tmp = *ptr++;
+- tmp = (tmp << 8) | *ptr++;
+- uu->time_hi_and_version = tmp;
+-
+- tmp = *ptr++;
+- tmp = (tmp << 8) | *ptr++;
+- uu->clock_seq = tmp;
+-
+- memcpy(uu->node, ptr, 6);
+-}
+-
+-/*
+- * unparse.c -- convert a UUID to string
+- *
+- * Copyright (C) 1996, 1997 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-void uuid_unparse(const uuid_t uu, char *out)
+-{
+- struct uuid uuid;
+-
+- uuid_unpack(uu, &uuid);
+- sprintf(out,
+- "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x",
+- uuid.time_low, uuid.time_mid, uuid.time_hi_and_version,
+- uuid.clock_seq >> 8, uuid.clock_seq & 0xFF,
+- uuid.node[0], uuid.node[1], uuid.node[2],
+- uuid.node[3], uuid.node[4], uuid.node[5]);
+-}
+-
+-/*
+- * uuid_time.c --- Interpret the time field from a uuid. This program
+- * violates the UUID abstraction barrier by reaching into the guts
+- * of a UUID and interpreting it.
+- *
+- * Copyright (C) 1998, 1999 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-time_t uuid_time(const uuid_t uu, struct timeval *ret_tv)
+-{
+- struct uuid uuid;
+- __u32 high;
+- struct timeval tv;
+- unsigned long long clock_reg;
+-
+- uuid_unpack(uu, &uuid);
+-
+- high = uuid.time_mid | ((uuid.time_hi_and_version & 0xFFF) << 16);
+- clock_reg = uuid.time_low | ((unsigned long long) high << 32);
+-
+- clock_reg -= (((unsigned long long) 0x01B21DD2) << 32) + 0x13814000;
+- tv.tv_sec = clock_reg / 10000000;
+- tv.tv_usec = (clock_reg % 10000000) / 10;
+-
+- if (ret_tv)
+- *ret_tv = tv;
+-
+- return tv.tv_sec;
+-}
+-
+-int uuid_type(const uuid_t uu)
+-{
+- struct uuid uuid;
+-
+- uuid_unpack(uu, &uuid);
+- return ((uuid.time_hi_and_version >> 12) & 0xF);
+-}
+-
+-int uuid_variant(const uuid_t uu)
+-{
+- struct uuid uuid;
+- int var;
+-
+- uuid_unpack(uu, &uuid);
+- var = uuid.clock_seq;
+-
+- if ((var & 0x8000) == 0)
+- return UUID_VARIANT_NCS;
+- if ((var & 0x4000) == 0)
+- return UUID_VARIANT_DCE;
+- if ((var & 0x2000) == 0)
+- return UUID_VARIANT_MICROSOFT;
+- return UUID_VARIANT_OTHER;
+-}
+-
+diff -Nru gateway-1.4.3.orig/gwlib/gw_uuid.h gateway-1.4.3/gwlib/gw_uuid.h
+--- gateway-1.4.3.orig/gwlib/gw_uuid.h 2005-06-14 09:31:34.000000000 +0000
++++ gateway-1.4.3/gwlib/gw_uuid.h 1970-01-01 00:00:00.000000000 +0000
+@@ -1,84 +0,0 @@
+-/*
+- * Public include file for the UUID library
+- *
+- * Copyright (C) 1996, 1997, 1998 Theodore Ts'o.
+- *
+- * %Begin-Header%
+- * This file may be redistributed under the terms of the GNU
+- * Library General Public License.
+- * %End-Header%
+- */
+-
+-#ifndef _UUID_UUID_H
+-#define _UUID_UUID_H
+-
+-#include <sys/types.h>
+-#include <sys/time.h>
+-#include <time.h>
+-
+-#define UUID_STR_LEN 36
+-
+-#ifdef DARWIN
+-
+-#ifndef _POSIX_C_SOURCE
+-#ifndef _UUID_T
+-#define _UUID_T
+-typedef __darwin_uuid_t uuid_t;
+-#endif /* _UUID_T */
+-#endif /* _POSIX_C_SOURCE */
+-
+-#else
+-
+-typedef unsigned char uuid_t[16];
+-
+-#endif
+-
+-/* UUID Variant definitions */
+-#define UUID_VARIANT_NCS 0
+-#define UUID_VARIANT_DCE 1
+-#define UUID_VARIANT_MICROSOFT 2
+-#define UUID_VARIANT_OTHER 3
+-
+-#ifdef __cplusplus
+-extern "C" {
+-#endif
+-
+-/* initialize uuid library */
+-void uuid_init(void);
+-
+-/* shutdown uuid library */
+-void uuid_shutdown(void);
+-
+-/* clear.c */
+-void uuid_clear(uuid_t uu);
+-
+-/* compare.c */
+-int uuid_compare(const uuid_t uu1, const uuid_t uu2);
+-
+-/* copy.c */
+-void uuid_copy(uuid_t dst, const uuid_t src);
+-
+-/* gen_uuid.c */
+-void uuid_generate(uuid_t out);
+-void uuid_generate_random(uuid_t out);
+-void uuid_generate_time(uuid_t out);
+-
+-/* isnull.c */
+-int uuid_is_null(const uuid_t uu);
+-
+-/* parse.c */
+-int uuid_parse(const char *in, uuid_t uu);
+-
+-/* unparse.c */
+-void uuid_unparse(const uuid_t uu, char *out);
+-
+-/* uuid_time.c */
+-time_t uuid_time(const uuid_t uu, struct timeval *ret_tv);
+-int uuid_type(const uuid_t uu);
+-int uuid_variant(const uuid_t uu);
+-
+-#ifdef __cplusplus
+-}
+-#endif
+-
+-#endif /* _UUID_UUID_H */
+diff -Nru gateway-1.4.3.orig/gwlib/gw_uuid_types.h.in gateway-1.4.3/gwlib/gw_uuid_types.h.in
+--- gateway-1.4.3.orig/gwlib/gw_uuid_types.h.in 2003-12-08 11:25:44.000000000 +0000
++++ gateway-1.4.3/gwlib/gw_uuid_types.h.in 1970-01-01 00:00:00.000000000 +0000
+@@ -1,51 +0,0 @@
+-/*
+- * If linux/types.h is already been included, assume it has defined
+- * everything we need. (cross fingers) Other header files may have
+- * also defined the types that we need.
+- */
+-#if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \
+- !defined(_UUID_TYPES) && !defined(_EXT2_TYPES_H))
+-#define _UUID_TYPES_H
+-
+-typedef unsigned char __u8;
+-typedef signed char __s8;
+-
+-#if (@SIZEOF_INT@ == 8)
+-typedef int __s64;
+-typedef unsigned int __u64;
+-#elif (@SIZEOF_LONG@ == 8)
+-typedef long __s64;
+-typedef unsigned long __u64;
+-#elif (@SIZEOF_LONG_LONG@ == 8)
+-#if defined(__GNUC__)
+-typedef __signed__ long long __s64;
+-#else
+-typedef signed long long __s64;
+-#endif
+-typedef unsigned long long __u64;
+-#endif
+-
+-#if (@SIZEOF_INT@ == 2)
+-typedef int __s16;
+-typedef unsigned int __u16;
+-#elif (@SIZEOF_SHORT@ == 2)
+-typedef short __s16;
+-typedef unsigned short __u16;
+-#else
+- ?==error: undefined 16 bit type
+-#endif
+-
+-#if (@SIZEOF_INT@ == 4)
+-typedef int __s32;
+-typedef unsigned int __u32;
+-#elif (@SIZEOF_LONG@ == 4)
+-typedef long __s32;
+-typedef unsigned long __u32;
+-#elif (@SIZEOF_SHORT@ == 4)
+-typedef short __s32;
+-typedef unsigned short __u32;
+-#else
+- ?== error: undefined 32 bit type
+-#endif
+-
+-#endif /* _*_TYPES_H */
+diff -Nru gateway-1.4.3.orig/Makefile.in gateway-1.4.3/Makefile.in
+--- gateway-1.4.3.orig/Makefile.in 2009-03-01 14:42:03.000000000 +0000
++++ gateway-1.4.3/Makefile.in 2009-03-01 15:03:45.000000000 +0000
+@@ -322,7 +322,7 @@
+ rm -f $(benchoutputs)
+
+ distclean: clean
+- rm -f Makefile gw-config.h config.cache config.log config.status config.nice .depend gwlib/gw_uuid_types.h
++ rm -f Makefile gw-config.h config.cache config.log config.status config.nice .depend
+
+ nag:
+ utils/find-long-lines
diff --git a/app-mobilephone/kannel/files/kannel-1.5.0-custom-wap-ports.patch b/app-mobilephone/kannel/files/kannel-1.5.0-custom-wap-ports.patch
new file mode 100644
index 000000000000..63981f985989
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-1.5.0-custom-wap-ports.patch
@@ -0,0 +1,346 @@
+diff -Nru gateway-1.4.3.orig/gw/bb_udp.c gateway-1.4.3/gw/bb_udp.c
+--- gateway-1.4.3.orig/gw/bb_udp.c 2009-01-12 16:46:56.000000000 +0000
++++ gateway-1.4.3/gw/bb_udp.c 2009-03-01 14:20:38.000000000 +0000
+@@ -78,7 +78,7 @@
+ #include "gwlib/gwlib.h"
+ #include "msg.h"
+ #include "bearerbox.h"
+-
++#include "custports.h"
+ /* passed from bearerbox core */
+
+ extern volatile sig_atomic_t bb_status;
+@@ -352,13 +352,13 @@
+ while (gwlist_len(ifs) > 0) {
+ iface = gwlist_extract_first(ifs);
+ info(0, "Adding interface %s", octstr_get_cstr(iface));
+- add_service(9200, octstr_get_cstr(iface)); /* wsp */
+- add_service(9201, octstr_get_cstr(iface)); /* wsp/wtp */
++ add_service(port_wsp, octstr_get_cstr(iface)); /* wsp */
++ add_service(port_wtp, octstr_get_cstr(iface)); /* wsp/wtp */
+
+ #ifdef HAVE_WTLS_OPENSSL
+ if (allow_wtls) {
+- add_service(9202, octstr_get_cstr(iface)); /* wsp/wtls */
+- add_service(9203, octstr_get_cstr(iface)); /* wsp/wtp/wtls */
++ add_service(port_wsps, octstr_get_cstr(iface)); /* wsp/wtls */
++ add_service(port_wtps, octstr_get_cstr(iface)); /* wsp/wtp/wtls */
+ }
+ #else
+ if (allow_wtls)
+diff -Nru gateway-1.4.3.orig/gw/bearerbox.c gateway-1.4.3/gw/bearerbox.c
+--- gateway-1.4.3.orig/gw/bearerbox.c 2009-01-12 16:46:56.000000000 +0000
++++ gateway-1.4.3/gw/bearerbox.c 2009-03-01 14:23:05.000000000 +0000
+@@ -78,6 +78,7 @@
+ #include "shared.h"
+ #include "dlr.h"
+ #include "load.h"
++#include "custports.h"
+
+ /* global variables; included to other modules as needed */
+
+@@ -365,6 +366,7 @@
+ int ssl_enabled = 0;
+ #endif /* HAVE_LIBSSL */
+
++ ReadCustomPorts(cfg);
+ /* defaults: use localtime and markers for access-log */
+ lf = m = 1;
+
+diff -Nru gateway-1.4.3.orig/gw/custports.c gateway-1.4.3/gw/custports.c
+--- gateway-1.4.3.orig/gw/custports.c 1970-01-01 00:00:00.000000000 +0000
++++ gateway-1.4.3/gw/custports.c 2009-03-01 14:20:38.000000000 +0000
+@@ -0,0 +1,88 @@
++/* ====================================================================
++ * The Kannel Software License, Version 1.0
++ *
++ * Copyright (c) 2001-2004 Kannel Group
++ * Copyright (c) 1998-2001 WapIT Ltd.
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ *
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the
++ * distribution.
++ *
++ * 3. The end-user documentation included with the redistribution,
++ * if any, must include the following acknowledgment:
++ * "This product includes software developed by the
++ * Kannel Group (http://www.kannel.org/)."
++ * Alternately, this acknowledgment may appear in the software itself,
++ * if and wherever such third-party acknowledgments normally appear.
++ *
++ * 4. The names "Kannel" and "Kannel Group" must not be used to
++ * endorse or promote products derived from this software without
++ * prior written permission. For written permission, please
++ * contact org@kannel.org.
++ *
++ * 5. Products derived from this software may not be called "Kannel",
++ * nor may "Kannel" appear in their name, without prior written
++ * permission of the Kannel Group.
++ *
++ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
++ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
++ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++ * DISCLAIMED. IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS
++ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
++ * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
++ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
++ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
++ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
++ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
++ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++ * ====================================================================
++ *
++ * This software consists of voluntary contributions made by many
++ * individuals on behalf of the Kannel Group. For more information on
++ * the Kannel Group, please see <http://www.kannel.org/>.
++ *
++ * Portions of this software are based upon software originally written at
++ * WapIT Ltd., Helsinki, Finland for the Kannel project.
++ */
++
++/*
++ * gw/custports.c
++ *
++ * Implementation of reading custom UDP ports used by wapbox
++ *
++ * Lubor Kolar <kolar@porcus.cz>, 14.03.2006
++ */
++
++#include <custports.h>
++
++long port_wsp = 9200; // connectionless default
++long port_wtp = 9201; // connection-oriented default
++long port_wsps = 9202; // connectionless secure default
++long port_wtps = 9203; // connection-oriented secure
++
++
++void ReadCustomPorts(Cfg *config)
++{
++ CfgGroup *grp;
++ grp = cfg_get_single_group(config, octstr_imm("wapbox"));
++ if(grp == NULL)
++ return;
++
++ if(cfg_get_integer(&port_wsp, grp, octstr_imm("wsp-port")) != -1)
++ info(0, "Using custom WSP port %ld", port_wsp);
++ if(cfg_get_integer(&port_wtp, grp, octstr_imm("wtp-port")) != -1)
++ info(0, "Using custom WSP/WTP port %ld", port_wtp);
++ if(cfg_get_integer(&port_wsps, grp, octstr_imm("wsps-port")) != -1)
++ info(0, "Using custom WSP/WTLS port %ld", port_wsps);
++ if(cfg_get_integer(&port_wtps, grp, octstr_imm("wtps-port")) != -1)
++ info(0, "Using custom WSP/WTP/WTLS port %ld", port_wtps);
++}
+diff -Nru gateway-1.4.3.orig/gw/custports.h gateway-1.4.3/gw/custports.h
+--- gateway-1.4.3.orig/gw/custports.h 1970-01-01 00:00:00.000000000 +0000
++++ gateway-1.4.3/gw/custports.h 2009-03-01 14:20:38.000000000 +0000
+@@ -0,0 +1,77 @@
++/* ====================================================================
++ * The Kannel Software License, Version 1.0
++ *
++ * Copyright (c) 2001-2004 Kannel Group
++ * Copyright (c) 1998-2001 WapIT Ltd.
++ * All rights reserved.
++ *
++ * Redistribution and use in source and binary forms, with or without
++ * modification, are permitted provided that the following conditions
++ * are met:
++ *
++ * 1. Redistributions of source code must retain the above copyright
++ * notice, this list of conditions and the following disclaimer.
++ *
++ * 2. Redistributions in binary form must reproduce the above copyright
++ * notice, this list of conditions and the following disclaimer in
++ * the documentation and/or other materials provided with the
++ * distribution.
++ *
++ * 3. The end-user documentation included with the redistribution,
++ * if any, must include the following acknowledgment:
++ * "This product includes software developed by the
++ * Kannel Group (http://www.kannel.org/)."
++ * Alternately, this acknowledgment may appear in the software itself,
++ * if and wherever such third-party acknowledgments normally appear.
++ *
++ * 4. The names "Kannel" and "Kannel Group" must not be used to
++ * endorse or promote products derived from this software without
++ * prior written permission. For written permission, please
++ * contact org@kannel.org.
++ *
++ * 5. Products derived from this software may not be called "Kannel",
++ * nor may "Kannel" appear in their name, without prior written
++ * permission of the Kannel Group.
++ *
++ * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
++ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
++ * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++ * DISCLAIMED. IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS
++ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
++ * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
++ * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
++ * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
++ * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
++ * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
++ * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
++ * ====================================================================
++ *
++ * This software consists of voluntary contributions made by many
++ * individuals on behalf of the Kannel Group. For more information on
++ * the Kannel Group, please see <http://www.kannel.org/>.
++ *
++ * Portions of this software are based upon software originally written at
++ * WapIT Ltd., Helsinki, Finland for the Kannel project.
++ */
++
++/*
++ * gw/custports.h
++ *
++ * Implementation of wapbox custom UDP ports)
++ *
++ * Lubor Kolar <kolar@porcus.cz>, 14.03.2006
++ */
++
++#ifndef CUSTPORTS_H
++#define CUSTPORTS_H
++
++#include "gwlib/gwlib.h"
++
++extern long port_wsp; // connectionless
++extern long port_wtp; // connection-oriented
++extern long port_wsps; // connectionless secure
++extern long port_wtps; // connection-oriented secure
++
++void ReadCustomPorts(Cfg *config);
++#endif /* CUSTPORTS_H */
++
+diff -Nru gateway-1.4.3.orig/gw/wapbox.c gateway-1.4.3/gw/wapbox.c
+--- gateway-1.4.3.orig/gw/wapbox.c 2009-01-12 16:46:57.000000000 +0000
++++ gateway-1.4.3/gw/wapbox.c 2009-03-01 14:20:38.000000000 +0000
+@@ -84,17 +84,11 @@
+ #include "gwlib/pki.h"
+ #endif
+ #include "radius/radius_acct.h"
++#include "custports.h"
+
+ static void config_reload(int reload);
+ static long logfilelevel=-1;
+
+-enum {
+- CONNECTIONLESS_PORT = 9200,
+- CONNECTION_ORIENTED_PORT = 9201,
+- WTLS_CONNECTIONLESS_PORT = 9202,
+- WTLS_CONNECTION_ORIENTED_PORT = 9203
+-};
+-
+ enum { DEFAULT_TIMER_FREQ = 1};
+
+ static Octstr *bearerbox_host;
+@@ -131,6 +125,8 @@
+
+ cfg_dump(cfg);
+
++ ReadCustomPorts(cfg);
++
+ /*
+ * Extract info from the core group.
+ */
+@@ -776,9 +772,9 @@
+ * XXXX here should be suspend/resume, add RSN
+ */
+ } else if (msg_type(msg) == wdp_datagram) {
+- switch (msg->wdp_datagram.destination_port) {
+- case CONNECTIONLESS_PORT:
+- case CONNECTION_ORIENTED_PORT:
++ if(msg->wdp_datagram.destination_port == port_wsp
++ || msg->wdp_datagram.destination_port == port_wtp)
++ {
+ dgram = wap_event_create(T_DUnitdata_Ind);
+ dgram->u.T_DUnitdata_Ind.addr_tuple = wap_addr_tuple_create(
+ msg->wdp_datagram.source_address,
+@@ -789,19 +785,22 @@
+ msg->wdp_datagram.user_data = NULL;
+
+ wap_dispatch_datagram(dgram);
+- break;
+- case WTLS_CONNECTIONLESS_PORT:
+- case WTLS_CONNECTION_ORIENTED_PORT:
++ }
++ else
++ if(msg->wdp_datagram.destination_port == port_wsps
++ || msg->wdp_datagram.destination_port == port_wtps)
++ {
+ #if (HAVE_WTLS_OPENSSL)
+ dgram = wtls_unpack_wdp_datagram(msg);
+ if (dgram != NULL)
+ wtls_dispatch_event(dgram);
+ #endif
+- break;
+- default:
++ }
++ else
++ {
+ panic(0,"Bad packet received! This shouldn't happen!");
+ break;
+- }
++ }
+ } else {
+ warning(0, "Received other message than wdp/admin, ignoring!");
+ }
+diff -Nru gateway-1.4.3.orig/gw/wap_push_ppg.c gateway-1.4.3/gw/wap_push_ppg.c
+--- gateway-1.4.3.orig/gw/wap_push_ppg.c 2009-01-12 16:46:56.000000000 +0000
++++ gateway-1.4.3/gw/wap_push_ppg.c 2009-03-01 14:20:38.000000000 +0000
+@@ -88,6 +88,7 @@
+ #include "wap_push_pap_compiler.h"
+ #include "wap_push_pap_mime.h"
+ #include "wap_push_ppg_pushuser.h"
++#include "custports.h"
+
+ enum {
+ TIME_EXPIRED = 0,
+@@ -1779,10 +1780,10 @@
+
+ if (!cless_accepted) {
+ cliport = CONNECTED_CLIPORT;
+- servport = CONNECTED_SERVPORT;
++ servport = port_wtp;
+ } else {
+ cliport = CONNECTIONLESS_PUSH_CLIPORT;
+- servport = CONNECTIONLESS_SERVPORT;
++ servport = port_wsp;
+ }
+
+ address_type = (**e).u.Push_Message.address_type;
+diff -Nru gateway-1.4.3.orig/gw/wap_push_ppg.h gateway-1.4.3/gw/wap_push_ppg.h
+--- gateway-1.4.3.orig/gw/wap_push_ppg.h 2009-01-12 16:46:57.000000000 +0000
++++ gateway-1.4.3/gw/wap_push_ppg.h 2009-03-01 14:20:38.000000000 +0000
+@@ -167,9 +167,7 @@
+ */
+ enum {
+ CONNECTIONLESS_PUSH_CLIPORT = 2948,
+- CONNECTIONLESS_SERVPORT = 9200,
+ CONNECTED_CLIPORT = 9209,
+- CONNECTED_SERVPORT = 9201
+ };
+
+ struct PPGSessionMachine {
+diff -ruN gateway-1.5.0/gwlib/cfg.def gateway-1.5.0-patched/gwlib/cfg.def
+--- gateway-1.5.0.orig/gwlib/cfg.def 2010-10-07 10:03:35.000000000 -0400
++++ gateway-1.5.0/gwlib/cfg.def 2013-08-25 15:07:47.544662379 -0400
+@@ -160,6 +160,10 @@
+ OCTSTR(concatenation)
+ OCTSTR(max-messages)
+ OCTSTR(wml-strict)
++ OCTSTR(wsp-port)
++ OCTSTR(wtp-port)
++ OCTSTR(wsps-port)
++ OCTSTR(wtps-port)
+ OCTSTR(http-timeout)
+ )
+
diff --git a/app-mobilephone/kannel/files/kannel-1.5.0-initgroups.patch b/app-mobilephone/kannel/files/kannel-1.5.0-initgroups.patch
new file mode 100644
index 000000000000..665ca6dc5953
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-1.5.0-initgroups.patch
@@ -0,0 +1,11 @@
+--- a/gwlib/utils.c.old 2016-08-25 18:52:59.944949612 +0200
++++ b/gwlib/utils.c 2016-08-25 18:53:30.352659566 +0200
+@@ -387,7 +387,7 @@
+ }
+
+ #ifndef __INTERIX
+- if (initgroups(user, -1) == -1) {
++ if (initgroups(user, pass->pw_gid) == -1) {
+ error(errno, "Could not set supplementary group ID's.");
+ }
+ #endif
diff --git a/app-mobilephone/kannel/files/kannel-bearerbox.initd b/app-mobilephone/kannel/files/kannel-bearerbox.initd
new file mode 100644
index 000000000000..717d12d1a174
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-bearerbox.initd
@@ -0,0 +1,34 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+KANNEL_SERVICE=${SVCNAME#*-}
+
+depend() {
+ need net
+ after dns mysql postgresql
+}
+
+checkconfig() {
+ if [ ! -f /etc/kannel/kannel.conf ] ; then
+ eerror "/etc/kannel/kannel.conf file doesn't exists!"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+ checkpath -o root:kannel -m 0770 -d /var/run/kannel
+
+ ebegin "Starting kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --start --quiet --exec /usr/sbin/${KANNEL_SERVICE} -- \
+ --daemonize --user kannel --logfile /var/log/kannel/${KANNEL_SERVICE}.log \
+ --pid-file /var/run/kannel/${KANNEL_SERVICE}.pid /etc/kannel/kannel.conf
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --stop --verbose --pidfile /var/run/kannel/${KANNEL_SERVICE}.pid
+ eend $?
+}
diff --git a/app-mobilephone/kannel/files/kannel-smsbox.initd b/app-mobilephone/kannel/files/kannel-smsbox.initd
new file mode 100644
index 000000000000..76cb49ac5252
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-smsbox.initd
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+KANNEL_SERVICE=${SVCNAME#*-}
+
+depend() {
+ need kannel-bearerbox
+}
+
+checkconfig() {
+ if [ ! -f /etc/kannel/kannel.conf ] ; then
+ eerror "/etc/kannel/kannel.conf file doesn't exists!"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+ checkpath -o root:kannel -m 0770 -d /var/run/kannel
+
+ ebegin "Starting kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --start --quiet --exec /usr/sbin/${KANNEL_SERVICE} -- \
+ --daemonize --user kannel --logfile /var/log/kannel/${KANNEL_SERVICE}.log \
+ --pid-file /var/run/kannel/${KANNEL_SERVICE}.pid /etc/kannel/kannel.conf
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --stop --verbose --pidfile /var/run/kannel/${KANNEL_SERVICE}.pid
+ eend $?
+}
diff --git a/app-mobilephone/kannel/files/kannel-wapbox.initd b/app-mobilephone/kannel/files/kannel-wapbox.initd
new file mode 100644
index 000000000000..76cb49ac5252
--- /dev/null
+++ b/app-mobilephone/kannel/files/kannel-wapbox.initd
@@ -0,0 +1,33 @@
+#!/sbin/openrc-run
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+KANNEL_SERVICE=${SVCNAME#*-}
+
+depend() {
+ need kannel-bearerbox
+}
+
+checkconfig() {
+ if [ ! -f /etc/kannel/kannel.conf ] ; then
+ eerror "/etc/kannel/kannel.conf file doesn't exists!"
+ return 1
+ fi
+}
+
+start() {
+ checkconfig || return 1
+ checkpath -o root:kannel -m 0770 -d /var/run/kannel
+
+ ebegin "Starting kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --start --quiet --exec /usr/sbin/${KANNEL_SERVICE} -- \
+ --daemonize --user kannel --logfile /var/log/kannel/${KANNEL_SERVICE}.log \
+ --pid-file /var/run/kannel/${KANNEL_SERVICE}.pid /etc/kannel/kannel.conf
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping kannel ${KANNEL_SERVICE}"
+ start-stop-daemon --stop --verbose --pidfile /var/run/kannel/${KANNEL_SERVICE}.pid
+ eend $?
+}
diff --git a/app-mobilephone/kannel/kannel-1.4.3-r2.ebuild b/app-mobilephone/kannel/kannel-1.4.3-r2.ebuild
new file mode 100644
index 000000000000..a61e50f8cc18
--- /dev/null
+++ b/app-mobilephone/kannel/kannel-1.4.3-r2.ebuild
@@ -0,0 +1,119 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="2"
+WANT_AUTOMAKE=none
+
+inherit eutils autotools flag-o-matic ssl-cert user
+
+DESCRIPTION="Powerful SMS and WAP gateway"
+HOMEPAGE="http://www.kannel.org/"
+SRC_URI="http://www.kannel.org/download/${PV}/gateway-${PV}.tar.gz"
+
+LICENSE="Apache-1.1"
+SLOT="0"
+KEYWORDS="~amd64 x86"
+IUSE="ssl mysql sqlite postgres pcre doc debug pam"
+
+RESTRICT="test" # some tests fail with "address already in use"
+
+RDEPEND="sys-libs/e2fsprogs-libs
+ dev-libs/libxml2
+ dev-lang/perl
+ sys-libs/zlib
+ ssl? ( dev-libs/openssl )
+ mysql? ( virtual/mysql )
+ sqlite? ( dev-db/sqlite:3 )
+ postgres? ( dev-db/postgresql[server] )
+ pcre? ( dev-libs/libpcre )
+ pam? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ >=sys-devel/bison-2.2
+ doc? ( media-gfx/transfig
+ app-text/jadetex
+ app-text/docbook-dsssl-stylesheets
+ app-text/docbook-sgml-dtd:3.1 )"
+
+S="${WORKDIR}/gateway-${PV}"
+
+pkg_setup() {
+ enewgroup kannel
+ enewuser kannel -1 -1 /var/log/kannel kannel
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-custom-wap-ports.patch"
+ epatch "${FILESDIR}/${P}-autotools.patch"
+ epatch "${FILESDIR}/${P}-external-libuuid.patch"
+
+ #by default, use current directory for logging
+ sed -i -e 's:/tmp/::' doc/examples/kannel.conf
+
+ eautoconf
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing # some code breaks strict aliasing
+ econf --docdir=/usr/share/doc/${PF} \
+ --enable-localtime \
+ --disable-start-stop-daemon \
+ --without-sqlite2 \
+ $(use_enable pam) \
+ $(use_enable debug debug) \
+ $(use_enable pcre) \
+ $(use_enable doc docs) \
+ $(use_enable ssl) \
+ $(use_with mysql) \
+ $(use_with sqlite sqlite3) \
+ $(use_with postgres pgsql) \
+ || die "econf failed"
+}
+
+# phase disabled by RESTRICT
+# src_test() {
+# emake check || die "emake check failed"
+# }
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ if use doc; then
+ emake DESTDIR="${D}" install-docs || die "emake install-docs failed"
+ fi
+ dodoc README
+
+ diropts -g kannel -m0750
+ dodir /etc/kannel
+ insinto /etc/kannel
+ newins doc/examples/kannel.conf kannel.conf.sample
+
+ local f
+ for f in bearerbox smsbox wapbox; do
+ newinitd "${FILESDIR}/kannel-$f.initd" kannel-$f
+ done
+
+ diropts -g kannel -m0770
+ keepdir /var/log/kannel /var/run/kannel
+}
+
+pkg_postinst() {
+ if use ssl; then
+ elog "SSL certificate can be created by running"
+ elog " emerge --config =${CATEGORY}/${PF}"
+ fi
+}
+
+pkg_config() {
+ if use ssl; then
+ if install_cert /etc/ssl/kannel; then
+ chown kannel "${ROOT}"etc/ssl/kannel.{pem,key}
+ einfo "For using this certificate, you have to add following line to your kannel.conf:"
+ einfo ' ssl-client-certkey-file = "/etc/ssl/kannel.pem"'
+ einfo ' ssl-server-cert-file = "/etc/ssl/kannel.crt"'
+ einfo ' ssl-server-key-file = "/etc/ssl/kannel.key"'
+ fi
+ else
+ eerror "This phase exists only for creating kannel SSL certificate"
+ eerror "and ssl USE flag is disabled for this package!"
+ fi
+}
diff --git a/app-mobilephone/kannel/kannel-1.5.0-r3.ebuild b/app-mobilephone/kannel/kannel-1.5.0-r3.ebuild
new file mode 100644
index 000000000000..da9badd3016d
--- /dev/null
+++ b/app-mobilephone/kannel/kannel-1.5.0-r3.ebuild
@@ -0,0 +1,128 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+WANT_AUTOMAKE=none
+
+inherit autotools flag-o-matic ssl-cert user
+
+DESCRIPTION="Powerful SMS and WAP gateway"
+HOMEPAGE="http://www.kannel.org/"
+SRC_URI="http://www.kannel.org/download/${PV}/gateway-${PV}.tar.gz"
+
+LICENSE="Apache-1.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug doc mysql libressl pam pcre postgres sqlite ssl"
+
+RESTRICT="test" # some tests fail with "address already in use"
+
+RDEPEND="
+ sys-libs/e2fsprogs-libs
+ dev-libs/libxml2:2
+ dev-lang/perl
+ sys-libs/zlib
+ ssl? (
+ libressl? ( dev-libs/libressl:0= )
+ !libressl? ( dev-libs/openssl:0= ) )
+ mysql? ( virtual/mysql )
+ sqlite? ( dev-db/sqlite:3 )
+ postgres? ( dev-db/postgresql:=[server] )
+ pcre? ( dev-libs/libpcre:3 )
+ pam? ( virtual/pam )
+"
+DEPEND="${RDEPEND}
+ >=sys-devel/bison-2.2
+ doc? ( media-gfx/transfig
+ app-text/jadetex
+ app-text/docbook-dsssl-stylesheets
+ app-text/docbook-sgml-dtd:3.1 )
+"
+
+S="${WORKDIR}/gateway-${PV}"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.5.0-custom-wap-ports.patch"
+ "${FILESDIR}/${PN}-1.4.3-autotools.patch"
+ "${FILESDIR}/${PN}-1.4.3-external-libuuid.patch"
+ "${FILESDIR}/${PN}-1.5.0-initgroups.patch"
+)
+
+pkg_setup() {
+ enewgroup kannel
+ enewuser kannel -1 -1 /var/log/kannel kannel
+}
+
+src_prepare() {
+ default
+
+ #by default, use current directory for logging
+ sed -i -e 's:/tmp/::' doc/examples/kannel.conf
+
+ mv configure.in configure.ac || die
+ eautoconf
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing # some code breaks strict aliasing
+ econf \
+ --enable-localtime \
+ --disable-start-stop-daemon \
+ --without-sqlite2 \
+ $(use_enable pam) \
+ $(use_enable debug debug) \
+ $(use_enable pcre) \
+ $(use_enable doc docs) \
+ $(use_enable ssl) \
+ $(use_with mysql) \
+ $(use_with sqlite sqlite3) \
+ $(use_with postgres pgsql)
+}
+
+# phase disabled by RESTRICT
+# src_test() {
+# emake check || die "emake check failed"
+# }
+
+src_install() {
+ default
+
+ if use doc; then
+ emake -j1 DESTDIR="${D}" install-docs || die "emake install-docs failed"
+ fi
+
+ diropts -g kannel -m0750
+ dodir /etc/kannel
+ insinto /etc/kannel
+ newins doc/examples/kannel.conf kannel.conf.sample
+
+ local f
+ for f in bearerbox smsbox wapbox; do
+ newinitd "${FILESDIR}/kannel-$f.initd" kannel-$f
+ done
+
+ diropts -g kannel -m0770
+ keepdir /var/log/kannel
+}
+
+pkg_postinst() {
+ if use ssl; then
+ elog "SSL certificate can be created by running"
+ elog " emerge --config =${CATEGORY}/${PF}"
+ fi
+}
+
+pkg_config() {
+ if use ssl; then
+ if install_cert /etc/ssl/kannel; then
+ chown kannel "${ROOT}"etc/ssl/kannel.{pem,key}
+ einfo "For using this certificate, you have to add following line to your kannel.conf:"
+ einfo ' ssl-client-certkey-file = "/etc/ssl/kannel.pem"'
+ einfo ' ssl-server-cert-file = "/etc/ssl/kannel.crt"'
+ einfo ' ssl-server-key-file = "/etc/ssl/kannel.key"'
+ fi
+ else
+ eerror "This phase exists only for creating kannel SSL certificate"
+ eerror "and ssl USE flag is disabled for this package!"
+ fi
+}
diff --git a/app-mobilephone/kannel/metadata.xml b/app-mobilephone/kannel/metadata.xml
new file mode 100644
index 000000000000..4eb9c367c77d
--- /dev/null
+++ b/app-mobilephone/kannel/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+<longdescription>Kannel is a compact and very powerful open source WAP and SMS gateway,
+used widely across the globe both for serving millions of short messages (SMS)
+and pushing WAP service indications.</longdescription>
+</pkgmetadata>
diff --git a/app-mobilephone/lightblue/Manifest b/app-mobilephone/lightblue/Manifest
new file mode 100644
index 000000000000..5eab5d707231
--- /dev/null
+++ b/app-mobilephone/lightblue/Manifest
@@ -0,0 +1,5 @@
+DIST lightblue-0.4.tar.gz 204072 SHA256 8d84586e66ce3b1132ccc735b3757511cd141876846e468b90b2e30b690dd004 SHA512 aa1446bacc1a75492e9bd604a41f89b72144642e029066f1d5ab85410f701a3c7e45bad9f4a33be1b3c65ac5525e0c9ab0f0fcaa0481795bc412d9e8bd97dac0 WHIRLPOOL ce359d0090dd25f96b256c2b4fcb3dbc76c3663ade8c98594bb4a43b3c6b0b57d8f543e9cc137310dc890e1336f8841f88c95adc5fb5ca20fe76da691aa67a4c
+EBUILD lightblue-0.4-r1.ebuild 617 SHA256 13e691bf18b0037e695e40589b29afff09832681529f8f5689d98c0466d7f23e SHA512 66ed59445edaf5cc1c1dc4d897e1906e64fbc46f5eb5b0ffc49dbd1260b9df5dfb3fa08062bdda8ce1f1c2c7b501aace7fc0ce11ee7642cb1350472243b57929 WHIRLPOOL 98660f422de6d7935e77aeb2a4f18b4dfaf98b60cce07d32df5615ecd4550ac11787a8c094b7a68f38c5a5c1e8bb499bd05ac3ac23be0a8efdbb91311d0790f5
+MISC ChangeLog 2442 SHA256 087a357a27dcd510726459f7ba3a050e0d075aa968ec88a223700bca7209f712 SHA512 1277a81601b2d2a17945d129e5472958ef19d98b9946229273bbba2f5addb2927308709e0973aac730b7ec0db55774f8a71ada5b752fe7d2ff32f443d92e67cc WHIRLPOOL 53651efb136d2983933d5a43c288dff6b7901b093636f9ae480f5d0f56754b6f99f5e36685e2b117cfd0e6e6c34cb749b0b168a8e9b0c68f266fc88bf782ace0
+MISC ChangeLog-2015 1374 SHA256 3c156789cf8984fbfa2e7671c8e8d626f1b9c25dd3410a5fb920ea821c8db989 SHA512 750bb4d6b4bbd620e54d7a307d0581affdae50cc992ad7e2939eec85f9add7f182c3ce41b7a268b481cd1ffe2b3598f1981ac9eeaeda3c33d3fd3385988743d2 WHIRLPOOL d66c772212efaa69116f2d2ad439b234d3fab0a7c785d03458acd6010f91cfce7399ea5bd6d0d806ee05c6cb62cfde568c4636920c02f3a3105ea2d37cbbd41e
+MISC metadata.xml 319 SHA256 e6eda5b9dcdfe2392aabe7d15df7536fdb4c61090c36f7ba9a85fa83b7ebd93d SHA512 1c34ee3368d5af5b7e361dda14dbd46207b3d0ef3b787530f2e5c5b6dd39414dfe9094945dea7ed57cedea5c7df803a3a37264099bb90b64a39fe375c8a73153 WHIRLPOOL c55164ae01ebc44476f00748c5e679ac007ab7ecd3f48680092508061eee55f3efbb40a4a0df598219bc2418fc6955e706dff7e3ea8b5790b7da5907631e08b3
diff --git a/app-mobilephone/lightblue/lightblue-0.4-r1.ebuild b/app-mobilephone/lightblue/lightblue-0.4-r1.ebuild
new file mode 100644
index 000000000000..1ddc89fd0cb2
--- /dev/null
+++ b/app-mobilephone/lightblue/lightblue-0.4-r1.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 pypy )
+inherit distutils-r1
+
+DESCRIPTION="API for Python which provides simple access to Bluetooth operations"
+HOMEPAGE="http://lightblue.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="examples"
+
+DEPEND="
+ >=dev-libs/openobex-1.3
+ >=dev-python/pybluez-0.9[${PYTHON_USEDEP}]
+"
+RDEPEND="${DEPEND}"
+
+python_install_all() {
+ use examples && local EXAMPLES=( examples/. )
+ distutils-r1_python_install_all
+}
diff --git a/app-mobilephone/lightblue/metadata.xml b/app-mobilephone/lightblue/metadata.xml
new file mode 100644
index 000000000000..075af935775b
--- /dev/null
+++ b/app-mobilephone/lightblue/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">lightblue</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/metadata.xml b/app-mobilephone/metadata.xml
new file mode 100644
index 000000000000..f1c904e355a5
--- /dev/null
+++ b/app-mobilephone/metadata.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The app-mobilephone category contains software for working with mobile phones.
+ </longdescription>
+ <longdescription lang="ja">
+ app-mobilephoneカテゴリにはケタイと使うソフトウェアが含まれます。
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm app-mobilephone chứa các phần mềm hoạt động với
+ điện thoại di động.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie app-mobilephone enthält Software für das Arbeiten mit Mobiltelefonen.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria app-mobilephone contiene software per la telefonia mobile.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria app-mobilephone contém programas para trabalhar com
+ telefones celulares.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria app-mobilephone zawiera oprogramowanie do współpracy z
+ telefonami komórkowymi.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría app-mobilephone contiene software para trabajar con
+ teléfonos móviles.
+ </longdescription>
+</catmetadata>
+
diff --git a/app-mobilephone/obexftp/Manifest b/app-mobilephone/obexftp/Manifest
new file mode 100644
index 000000000000..e97f25eceefa
--- /dev/null
+++ b/app-mobilephone/obexftp/Manifest
@@ -0,0 +1,12 @@
+AUX obexftp-0.23-gentoo.patch 388 SHA256 0e2b62cdfad95d6994e87f6152006212564f408363f984efad5b8000de2adaca SHA512 73dba3d616e92f198d1ef7a1e3da720c83f5ce02869f9a677630e78451e360728db01fc98ab0a67b9e49ac04fbf801a27d5402dc2c210a82ac13fa57e94972cc WHIRLPOOL 9ea8e059d3bda9901b4224827d73aab4b00e447a4bc541b8980fa937fb0fe81453720e044d9a0c4d88772279ff326bd5ffef40773f85731b0856681667dacbcb
+AUX obexftp-0.24-config.patch 165 SHA256 09f6ef542b3fef5c6859c386e6e9c891700c2f53b2adb93eea49ba79f7ae135c SHA512 8ac60a20d98c020d90d232d0c823052a6d183cca39405d72295136271a388e562586622ea5432edd94cdc0c52745381e03c7e162aba10fa9c07d6763570e66f4 WHIRLPOOL 768413fd44412c8a8b15d199dfdd0d36ff8117b3445127994e6eeaa149bc829d24cda9ad41cd194e6071eb44da000e09d98dd794447d3038e31e605d276dc485
+AUX obexftp-0.24-enable_bluetooth.patch 421 SHA256 586119e89ef7f0d644411ae11609f61dfb424c363a570021dbee684406ab02e3 SHA512 1ebd5ab061dc733f7d8b7650bd4c27bcd2eff8b816cb283afcc2c984332903ac6f9d4cd08e49e3b64e0bcf976d8781d561b6666e43d5567fa8ee2ec91a232902 WHIRLPOOL b07aa2ef06f0e62f66953b936c40fea699718dcf76dec22e5b8bf92146c4a02e1a5778e44d1f7c7d5f80973528d9bebefc7a576bcd4f98d28fb783f5f5ef6716
+AUX obexftp-0.24-fuse.patch 786 SHA256 3a5d64f8942e3714c206200ca70845e2842caff2fa65b6e03d8f39d127c897a0 SHA512 0c5fed0db46021056e21decb70d4c93a2e691e4f919447fb9ec3818376564ea742936104a07c77448456b5320030e0ce66678ba1f210d4a4c9c0942964db9838 WHIRLPOOL 6ffd7e6d4972c76bccf587c75a1bf369609ea16902805443b3c774b8100bb2589354dde100df19b5e547aa21c62899c327deba2d278fedc708a30dceff68a3f6
+AUX obexftp-0.24-norpath.patch 641 SHA256 dcb429c52f448c7c47eac1ffb9448abe15f938bd6979abd247dd9237326ceefb SHA512 876502ac2325e0969e9e8bcdb59325e6dce07468fc106b7fb44befcf6e45d766e7e333d58a5392e376d70baa1532fe5f93cfc7d6a8125735df54a09849e68203 WHIRLPOOL 78063744ada26351e02eaf71d956a130f8443a23ae0f1b461436abf5422fb27fd2058258d65bf2cb8f50b8919ade370bc53330fe9c222893bc5534c339ffb795
+AUX obexftp-0.24-pkgconfig_requires.patch 399 SHA256 46d5061156c6eb81f677e062b75ed0ebe6085a049419e5bf153df13941cdf4ba SHA512 ade75cf148d50223d30bd0a075303c8ca686dbf7f1e099c317e7a5d9d2b929743f5fd613b29a4c6af46b48e8a3dd74cd0db8d08df9823699dce6da9e84222749 WHIRLPOOL 51df49a712691e66c80ea9c8b5da6b3fe79249f0df66e48b8d700fbbfb68fc357d457dd229200eed60b938cb4f44a1e0c6a39943dbb8dbf3593883ddcc7e91a2
+AUX obexftp-0.24-python_sitedir.patch 544 SHA256 e5a0d4d6e68c699a80ca1f43ced72a4428234a989d3dba43cd8b217b3b94d8e8 SHA512 519e77d8a3ff4b7a9779e350191b8389c27f7bf42abd44704508341d9fdabb0bf9b456fc4cccd93779fc4b54ddcf3cabb38e55f2ea3389b90a85e27de18e0b6a WHIRLPOOL fd9f44eeb483652018a68c9550edd1196d0a72efa9649e38bbfcba1bd9e9989a41d6f4168e24679d9623df65718191ccb6220e660f95e94ce775ea7a2ce5bd0e
+DIST obexftp-0.24-Source.tar.gz 88154 SHA256 b907965608bf0e60c69bc45f074ce1a2ffeb809b4502a7082c6d95e3c73dfe6b SHA512 785449665f5e9269d7bfd15f379bd8fbad321780292e56341e2089d6894255b7301fc23bb27a80e4e6f6317a130b658dedd307b7ece0fd31ef8f1a109c6f21b9 WHIRLPOOL 9f6fd5df3fbc8fa161ecff091b02932ac73e60d6a6eb1e15a32d9b871e6668fd86d0c4d6027f13c724cc1e7a8b40e1e02f8c0c32f0ac43076193e2048ba751df
+EBUILD obexftp-0.24-r1.ebuild 1807 SHA256 eda4c11e5e902ca24ca09b3b4e1efce09f751d6479ffe06ea3fd2f248a7a344f SHA512 6705c41199da103ade14f53e9266ef5a1b02fdfa433a99a967ef505db99471fec40cd1aa5a530c44abeace53bb5a5ac9ee5dc4c158b22deab2c0b59ba1a185f7 WHIRLPOOL 219102a888d4d90b2890501830c7b0f7c0fe5003be7ec8d262c9e2f6ee219410ec7cfab4da658b629d3a47f1e88d2417999d7b1595466fee39db154080b7e1e5
+MISC ChangeLog 3959 SHA256 af143454e7312f42e943cb5fe8c25fe0c70950cc2c7039b384c7cac1b5309090 SHA512 fa6e020a785554ea71b3a13ae1d11480d18a0abd961d5dcccf3569a1f884e9c48d84b7fac9fee7e4b4b0188636be4ec389dd24fcd053732d3fe0244863e153c1 WHIRLPOOL 67cbb8135a09c227906126ef8a3b3fd7e7f319dfc92832f4210d266480f4c5fca8ff23e25edeb5e42ef8692a2b98c23afdd8257437714b267982c20e01c4f946
+MISC ChangeLog-2015 16328 SHA256 ce167861471401317ff04ab7e8ea8e7d1d9428bc6ac5900bf2f668865d046d4f SHA512 985fbf4f50712fde55db017a71f46318256c8883efdc90681ed1953f388b993416faa5776e9326fe8aa214a289899ac10f3823d8cf8889716fd6ae388cbdef5b WHIRLPOOL 26b286483efe371b1392b43628370cd7bdb45020130b85a6b167d04da4976d17b66923ea36390b6354d8d260d6382a2ab12aaf523288bb8ee83391b0aab72a44
+MISC metadata.xml 245 SHA256 43e733f76537cc36ae7e851f608283a4273eaca40ff1afc83cd5645431f09f20 SHA512 f2f864248cda1ce42c75a7d993ea9d80592f4b5bf957ba7d10e3a26d55429720530c96974403e9d732e2ca67724645f7dfb8b880617a3cc6a3b9d36dd201f433 WHIRLPOOL a6a920218ea57d05f193af842047e1a3691fef3242519519b797d3ae965acec3f85fd5372dab22a3df49d080ff0a9e9e9d266ae93ec1bb99981b7af96165421c
diff --git a/app-mobilephone/obexftp/files/obexftp-0.23-gentoo.patch b/app-mobilephone/obexftp/files/obexftp-0.23-gentoo.patch
new file mode 100644
index 000000000000..caf0611ff071
--- /dev/null
+++ b/app-mobilephone/obexftp/files/obexftp-0.23-gentoo.patch
@@ -0,0 +1,22 @@
+--- a/obexftp/client.c
++++ b/obexftp/client.c
+@@ -51,8 +51,6 @@
+
+ #ifdef HAVE_BLUETOOTH
+ #include "bt_kit.h"
+-#else
+-#define ESOCKTNOSUPPORT WSAESOCKTNOSUPPORT
+ #endif /* HAVE_BLUETOOTH */
+
+ #include <openobex/obex.h>
+--- a/apps/obexftp.c
++++ b/apps/obexftp.c
+@@ -29,6 +29,8 @@
+
+ #include <sys/types.h>
+
++#include <config.h>
++
+ #ifdef HAVE_SYS_TIMES_H
+ #include <sys/times.h>
+ #endif
diff --git a/app-mobilephone/obexftp/files/obexftp-0.24-config.patch b/app-mobilephone/obexftp/files/obexftp-0.24-config.patch
new file mode 100644
index 000000000000..f923a4b0ed2c
--- /dev/null
+++ b/app-mobilephone/obexftp/files/obexftp-0.24-config.patch
@@ -0,0 +1,11 @@
+--- a/apps/obexftp.c
++++ b/apps/obexftp.c
+@@ -43,8 +43,6 @@
+
+ #include <common.h>
+
+-#include <config.h>
+-
+ #ifdef HAVE_SYS_TIMES_H
+ #include <sys/times.h>
+ #endif
diff --git a/app-mobilephone/obexftp/files/obexftp-0.24-enable_bluetooth.patch b/app-mobilephone/obexftp/files/obexftp-0.24-enable_bluetooth.patch
new file mode 100644
index 000000000000..ff72fff17e7c
--- /dev/null
+++ b/app-mobilephone/obexftp/files/obexftp-0.24-enable_bluetooth.patch
@@ -0,0 +1,16 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -52,11 +52,13 @@
+ #
+ # some code is only included if bluetooth is available
+ #
++if ( ENABLE_BLUETOOTH )
+ find_package ( Bluetooth )
+ if ( Bluetooth_FOUND )
+ include_directories ( ${Bluetooth_INCLUDE_DIRS} )
+ add_definitions ( -DHAVE_BLUETOOTH -DHAVE_SDP )
+ endif ( Bluetooth_FOUND )
++endif ( ENABLE_BLUETOOTH )
+
+ add_subdirectory ( bfb )
+ add_subdirectory ( multicobex )
diff --git a/app-mobilephone/obexftp/files/obexftp-0.24-fuse.patch b/app-mobilephone/obexftp/files/obexftp-0.24-fuse.patch
new file mode 100644
index 000000000000..260cfc2d9a56
--- /dev/null
+++ b/app-mobilephone/obexftp/files/obexftp-0.24-fuse.patch
@@ -0,0 +1,35 @@
+From 2cc82e0ab5a30eaab5461dcc4eed41b095edba3f Mon Sep 17 00:00:00 2001
+From: Hendrik Sattler <post@hendrik-sattler.de>
+Date: Sun, 11 Aug 2013 20:27:29 +0200
+Subject: [PATCH] Install fuse apps
+
+---
+ fuse/CMakeLists.txt | 7 ++++++-
+ 1 files changed, 6 insertions(+), 1 deletions(-)
+
+diff --git a/fuse/CMakeLists.txt b/fuse/CMakeLists.txt
+index c31a5fc..7d5f7ea 100644
+--- a/fuse/CMakeLists.txt
++++ b/fuse/CMakeLists.txt
+@@ -14,7 +14,6 @@ if ( Fuse_FOUND )
+ ${Fuse_LIBRARIES}
+ )
+
+-
+ add_executable ( obexautofs
+ obexautofs.c
+ )
+@@ -23,4 +22,10 @@ if ( Fuse_FOUND )
+ obexftp
+ ${Fuse_LIBRARIES}
+ )
++
++ install ( TARGETS obexfs obexautofs
++ RUNTIME
++ DESTINATION ${CMAKE_INSTALL_BINDIR}
++ COMPONENT applications
++ )
+ endif ( Fuse_FOUND )
+--
+1.7.1
+
diff --git a/app-mobilephone/obexftp/files/obexftp-0.24-norpath.patch b/app-mobilephone/obexftp/files/obexftp-0.24-norpath.patch
new file mode 100644
index 000000000000..75a240177182
--- /dev/null
+++ b/app-mobilephone/obexftp/files/obexftp-0.24-norpath.patch
@@ -0,0 +1,11 @@
+--- obexftp-0.22/swig/perl/Makefile.PL.in.norpath 2007-07-11 21:22:30.000000000 +0200
++++ obexftp-0.22/swig/perl/Makefile.PL.in 2007-08-06 20:17:39.000000000 +0200
+@@ -11,7 +11,7 @@ WriteMakefile(
+ 'INC' => q[-I@top_srcdir@ @CPPFLAGS@],
+ # Default value for LDDLFLAGS is $Config{lddlflags}="-shared -L/usr/local/lib"
+ # but we want rpath to be @libdir@ or @exec_prefix@/lib
+- 'LDDLFLAGS' => q[-shared -Wl,-rpath=@prefix@/lib],
++ 'LDDLFLAGS' => q[-shared],
+ 'LIBS' => q[-L@top_builddir@/obexftp/.libs -lobexftp
+ -L@top_builddir@/multicobex/.libs -lmulticobex
+ -L@top_builddir@/bfb/.libs -lbfb
diff --git a/app-mobilephone/obexftp/files/obexftp-0.24-pkgconfig_requires.patch b/app-mobilephone/obexftp/files/obexftp-0.24-pkgconfig_requires.patch
new file mode 100644
index 000000000000..ded4a583330f
--- /dev/null
+++ b/app-mobilephone/obexftp/files/obexftp-0.24-pkgconfig_requires.patch
@@ -0,0 +1,11 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -71,7 +71,7 @@
+ set ( exec_prefix "\${prefix}" )
+ set ( libdir "\${prefix}/${CMAKE_INSTALL_LIBDIR}" )
+ set ( includedir "\${prefix}/${CMAKE_INSTALL_INCLUDEDIR}" )
+-set ( REQUIRES "bluetooth openobex" )
++set ( REQUIRES "bluez openobex" )
+ configure_file (
+ ${CMAKE_CURRENT_SOURCE_DIR}/obexftp.pc.in
+ ${CMAKE_CURRENT_BINARY_DIR}/obexftp.pc
diff --git a/app-mobilephone/obexftp/files/obexftp-0.24-python_sitedir.patch b/app-mobilephone/obexftp/files/obexftp-0.24-python_sitedir.patch
new file mode 100644
index 000000000000..24cc46050ab4
--- /dev/null
+++ b/app-mobilephone/obexftp/files/obexftp-0.24-python_sitedir.patch
@@ -0,0 +1,16 @@
+--- a/swig/python/CMakeLists.txt
++++ b/swig/python/CMakeLists.txt
+@@ -40,11 +40,13 @@
+ OUTPUT_VARIABLE PYTHON_PREFIX
+ )
+ file ( TO_CMAKE_PATH "${PYTHON_PREFIX}" PYTHON_PREFIX )
++if ( NOT PYTHON_SITE_DIR )
+ execute_process (
+ COMMAND ${PYTHON_EXECUTABLE} -c
+ "import site, sys; sys.stdout.write(site.getsitepackages()[-1])"
+ OUTPUT_VARIABLE PYTHON_SITE_DIR
+ )
++endif ( PYTHON_SITE_DIR )
+ file ( TO_CMAKE_PATH "${PYTHON_SITE_DIR}" PYTHON_SITE_DIR )
+ string ( REGEX REPLACE "^${PYTHON_PREFIX}/" ""
+ PYTHON_SITE_DIR "${PYTHON_SITE_DIR}"
diff --git a/app-mobilephone/obexftp/metadata.xml b/app-mobilephone/obexftp/metadata.xml
new file mode 100644
index 000000000000..1b474448ed2d
--- /dev/null
+++ b/app-mobilephone/obexftp/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="sourceforge">openobex</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/obexftp/obexftp-0.24-r1.ebuild b/app-mobilephone/obexftp/obexftp-0.24-r1.ebuild
new file mode 100644
index 000000000000..75435dde82e0
--- /dev/null
+++ b/app-mobilephone/obexftp/obexftp-0.24-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5} )
+USE_RUBY="ruby21 ruby22"
+
+inherit cmake-utils python-single-r1 python-utils-r1 ruby-single eutils multilib
+
+DESCRIPTION="File transfer over OBEX for mobile phones"
+HOMEPAGE="http://dev.zuckschwerdt.org/openobex/wiki/ObexFtp"
+SRC_URI="mirror://sourceforge/openobex/${P}-Source.tar.gz"
+SLOT="0"
+
+LICENSE="GPL-2"
+KEYWORDS="amd64 hppa ppc x86"
+
+# bluetooth support is not really optional, bug #529068
+IUSE="perl python ruby tcl" #bluetooth
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ >=dev-libs/openobex-1.7
+ net-wireless/bluez
+ perl? ( dev-lang/perl:= )
+ python? ( ${PYTHON_DEPS} )
+ ruby? ( ${RUBY_DEPS} )
+ tcl? ( dev-lang/tcl:0= )
+"
+DEPEND="
+ ${RDEPEND}
+ perl? ( dev-lang/swig )
+ python? ( dev-lang/swig )
+ ruby? ( dev-lang/swig )
+ tcl? ( dev-lang/swig )
+ virtual/pkgconfig
+"
+
+S=${WORKDIR}/${P}-Source
+
+DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.23-gentoo.patch
+ "${FILESDIR}"/${PN}-0.24-config.patch
+ "${FILESDIR}"/${PN}-0.24-enable_bluetooth.patch
+ "${FILESDIR}"/${PN}-0.24-python_sitedir.patch
+ "${FILESDIR}"/${PN}-0.24-norpath.patch
+ "${FILESDIR}"/${PN}-0.24-fuse.patch
+ "${FILESDIR}"/${PN}-0.24-pkgconfig_requires.patch
+)
+
+src_configure() {
+# -DENABLE_BLUETOOTH=$(usex bluetooth)
+ local mycmakeargs=(
+ -DCMAKE_BUILD_TYPE=Release
+ -DCMAKE_SKIP_RPATH=ON
+ -DENABLE_PERL=$(usex perl)
+ -DENABLE_BLUETOOTH=yes
+ -DENABLE_PYTHON=$(usex python)
+ $(usex python -DPYTHON_SITE_DIR=$(python_get_sitedir) '')
+ -DENABLE_RUBY=$(usex ruby)
+ -DENABLE_TCL=$(usex tcl)
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ cmake-utils_src_install
+ rm -rf "${ED}"/usr/share/doc/${PN}/html || die #524866
+}
diff --git a/app-mobilephone/past/Manifest b/app-mobilephone/past/Manifest
new file mode 100644
index 000000000000..b2572a8eb658
--- /dev/null
+++ b/app-mobilephone/past/Manifest
@@ -0,0 +1,6 @@
+AUX past-0.0.4-gcc-4.7.patch 144 SHA256 8fced3a91a80cbdc9341e51db0aefa269c725f746a7fcb0bf1c0eca8f3986215 SHA512 c677fd97119f0fc8f43b89232ffd266653c4b2a6857ce311e949b4c5584a2521e8e730fa5ea34224b34f4e92a6fef58dd98a3dbf3c634a8d99fa138c40332414 WHIRLPOOL 096bae69d89bdab64e693abac21957fb844d47b9ecee4396c44a8e25ae61197167a843b6e68f0a875f5753255b9ef986b649c634dd73332d6f0541c2a8d9e42d
+DIST 74036-past-0.0.4.tar.bz2 166745 SHA256 2b1b0eda11249360b9df70bbd7d4b8f3fe993ca30524138463df6ac587247cb1 SHA512 5ebce95f501e057cbfceb4019041e1dd844a464e656396c107ac9750e280dd544d0175d43bad53c94e10b587229cc5cc16e9d6f57401cdba6c539557daf3b0b0 WHIRLPOOL d0ca8e917f475fce0d0b7f1a0fd821178d8960286b967d8fb632e94c567de834e34bfa61144843ac608ff2633ef5f3a7466cac0ff73ba450f450fcf29e5dfaea
+EBUILD past-0.0.4.ebuild 584 SHA256 b2fa8526f2f1a2fff701f5262e340458bbbc398cadb257b50bf6045ac1d77fc5 SHA512 4df5e9f91408d5fc05e69618d918f2cbaab00ce778c03aad7049e67d637ce6585a5c77b9a26f137dde2d3b52a12dd1dbef0c7816bc394e277514c7e8f34562a6 WHIRLPOOL ec88ae1b3dbf7faab4954593d7f76207250cd1378225ac551bf028105a8c217a8590bccac758b5a22e26fe7e04dc97cb949d63baa86a19d3e43d4035c8675968
+MISC ChangeLog 2553 SHA256 1bbbfda2fbb5645c4eb165738edb2a9c16bb6ce7aa645eacd0ded6e8d35d0cee SHA512 8c6d54a80b088aa2df34ed99be6f36cad7bf4a3bce13e1d2e81c79f0e399f15c4d92ab65d34da0f7d395f300f521844f53f00163b61975eeb11644a5f0913d18 WHIRLPOOL 4090e65ae86e350e3148851a20033369fe4376e616eba071094a7a4ef18df03a5f4cc02d2f60554e3c36d62b1cc042772e7a48ed5387f8fd20f59c439d31e086
+MISC ChangeLog-2015 943 SHA256 4f9dda2691930894e7b54302b381ebf91eac63558a0fe4a3bca130003b7fa314 SHA512 c842a07b91f7bb1f46291c3f18f665662e0a1de190490a6b0302a895b3ad1d35e8f1bbff24a777fd8f051d9ceac1e61eadd0d39a1fcf772dc07b325ed9ab2d69 WHIRLPOOL 8e0d70c30a4c51859eb1f5467deb5f812ee0522a1c0d9b0c61b837e7ad9908cf5570b0aa1ad9513c860aae193845e4d32a87a3d7eab86ddad93db482eaec2bc3
+MISC metadata.xml 166 SHA256 2caff447f5bd2701d8456ada5cc633c41ef4373fa4bfeabeb73599d40bcc941b SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 WHIRLPOOL 1ff70497eca6531f0e0614c72a19f4b8e5ff486a58d369f4f0b36308d1d6b01168f9da887740e3b9f536236be251d3fe05f904d27a9233a7cf613416ba882968
diff --git a/app-mobilephone/past/files/past-0.0.4-gcc-4.7.patch b/app-mobilephone/past/files/past-0.0.4-gcc-4.7.patch
new file mode 100644
index 000000000000..e04de42b7ef8
--- /dev/null
+++ b/app-mobilephone/past/files/past-0.0.4-gcc-4.7.patch
@@ -0,0 +1,10 @@
+--- A/src/device.cpp
++++ B/src/device.cpp
+@@ -22,6 +22,7 @@
+
+ extern "C" {
+ #include <gnokii.h>
++#include <unistd.h>
+ }
+
+ #include "device.h"
diff --git a/app-mobilephone/past/metadata.xml b/app-mobilephone/past/metadata.xml
new file mode 100644
index 000000000000..6f49eba8f496
--- /dev/null
+++ b/app-mobilephone/past/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/app-mobilephone/past/past-0.0.4.ebuild b/app-mobilephone/past/past-0.0.4.ebuild
new file mode 100644
index 000000000000..13223531e4d0
--- /dev/null
+++ b/app-mobilephone/past/past-0.0.4.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="Simple SMS tool"
+HOMEPAGE="https://www.linux-apps.com/content/show.php/past+-+SMS+Tool?content=74036"
+SRC_URI="https://dl.opendesktop.org/api/files/download/id/1466626318/74036-${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug"
+
+DEPEND="
+ app-mobilephone/gnokii[sms]
+ dev-qt/qtcore:4
+ dev-qt/qtdbus:4
+ dev-qt/qtgui:4
+"
+RDEPEND="${DEPEND}"
+
+DOCS=( ChangeLog TODO )
+PATCHES=( "${FILESDIR}/${P}-gcc-4.7.patch" )
diff --git a/app-mobilephone/pysms/Manifest b/app-mobilephone/pysms/Manifest
new file mode 100644
index 000000000000..f9dc699c1eb5
--- /dev/null
+++ b/app-mobilephone/pysms/Manifest
@@ -0,0 +1,5 @@
+DIST pysms-0.9.4.tar.gz 57843 SHA256 a32742f8fb58656f45f6b65b6c3d4191df8b5c47ba454c648fafd45a86040a34 SHA512 7f2a1279368b68ef17e16f346079aa5f3daf50c7ab43570425e9be8c5144e6c291390e4178fded52f7fcd16aeb2960993897036d09ee265f2717fe60d583e8d9 WHIRLPOOL 8d55a58031c659b720be791236ddc1e83f94111259b966e6be53fd7a501e09c802c220c9914d7f67303a76ce53611505a536ef9022b2f14cf7d0eaeff76dc552
+EBUILD pysms-0.9.4-r1.ebuild 612 SHA256 ba4fd32f3f9aabed13ada09e27a963b2175154bdb208899bab9e4c97e0d0bb79 SHA512 7f51e465ec57a4af5c216ca8dc69d5912331b760b6d98d88b000fbce653afe0ede8cbc18010dc28645da6296c49704568291a93356cf2ffff720f90b234570d4 WHIRLPOOL 0d30fcf4cd795bed996aad40d7328035311f3c0bf62de8449b2551358de93c748176c5b1fec742afab06ed2f1849ca8f6fe83bad514cf78bb0a69fd50c3af1c0
+MISC ChangeLog 2642 SHA256 46b8eb4e72cd41c004e0bcc22e650684370f03bf5adae246ff895bdd9c5c7ac6 SHA512 c6710e45d0d408dd4da9b7d4bb89a30c3ea17d1ba15293b40843cf7068de6d7a098b3504047d2f7b422244532b2dc594a0a4afeea24edbf5e73e38d7b6df8ce3 WHIRLPOOL 734b68729a915f66fc7cae0d72d918c3b9803f7fd9e2ebc09d8ab15ab10b4aa747edcef75a1baaa6dbfc5d829c793b0d305c00a9442765c106cd363d8ef0ea5f
+MISC ChangeLog-2015 1364 SHA256 df9081a6626115870e251dc0bb421c2ecb2d2726cab912b03a4292df0599d657 SHA512 5d0f6b0f68ef1b3437c662fb5b9412926b03a2ce0c051bd33d78e069bf1e3e8fffaa38bbc92dcc312c080ca440710896baa383d8ed9849d15740b7bb79c6424e WHIRLPOOL 822f98b1e5491da196a5de09079fbf1dd0cab6164ce6834b16f48f6269f3f7a1dbfc4b3722317611be7da270d0510c09272fc6f471bfb3e33c8c328d56698a51
+MISC metadata.xml 337 SHA256 e723ea48b16fa274b0522d9f2b647533528fe7b669669133bcbad3bbbeb3b335 SHA512 0aabed409e114ac8ce489ddd5caae70fcd10f02b9d62baab5749a7612275b2abfd555e584734d30cf1b9b60d205bf3769e8445b1e048ec8e7251e8e759a4fd2d WHIRLPOOL 61ee257a52e54b76e02b90a85bcadebf7800efbeb80f4f39bf2f842b40574e8ea06dae2f4f1a89dd3ab019178cb67dc9f257a2c4ce768998095667e000a063a3
diff --git a/app-mobilephone/pysms/metadata.xml b/app-mobilephone/pysms/metadata.xml
new file mode 100644
index 000000000000..012e58409b5f
--- /dev/null
+++ b/app-mobilephone/pysms/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <longdescription>Tool for sending text messages for various Swiss providers</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">pysms</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/pysms/pysms-0.9.4-r1.ebuild b/app-mobilephone/pysms/pysms-0.9.4-r1.ebuild
new file mode 100644
index 000000000000..492f6b098e02
--- /dev/null
+++ b/app-mobilephone/pysms/pysms-0.9.4-r1.ebuild
@@ -0,0 +1,28 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="Tool for sending text messages for various Swiss providers"
+HOMEPAGE="https://sourceforge.net/projects/pysms/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-python/pygtk[${PYTHON_USEDEP}]"
+
+python_prepare() {
+ sed -e "s:0.9.1:0.9.4:" \
+ -e "s/Application;Network/Network/" \
+ -i data/pysms.desktop || die
+ rm -f MANIFEST.in
+
+ distutils-r1_python_prepare
+}
diff --git a/app-mobilephone/qtadb/Manifest b/app-mobilephone/qtadb/Manifest
new file mode 100644
index 000000000000..d562cd01ccf2
--- /dev/null
+++ b/app-mobilephone/qtadb/Manifest
@@ -0,0 +1,5 @@
+DIST QtADB_0.8.1_src.zip 1084159 SHA256 732eb8736c2fadddc80c37b47a91589c02e474cf5b0b68393411ffd4611cdb5f SHA512 4bcf28a9442873c3d94c33f5b629c1528efb10a34a6825eb8e596ea6fbb23144a56b64bccc258eaf579ca7d86bd7520f6274d611243290ae6f3bee72021346fa WHIRLPOOL 0970c41c5578ba4a3cb221317de07e8ab22643adeccc7bd104795881a26d69dae07b022e76f6b5e3e4e40136ff0203ef3b24f9c041d51078f2f77f521598d162
+EBUILD qtadb-0.8.1.ebuild 1604 SHA256 c9ad6e10f51c6e0a173cf12bbacb37234cafad2f734d0d413d0a18ef88c90357 SHA512 bc98ecf26ab92204cadfdf25cc67341f5d11e908456f58b70cb75c8a6afbf5c9aa924193c3a811f971f273e0d99a10e7d34e0c2893f604dbc08c32d6bbb2dad5 WHIRLPOOL 9b2f1465459a77d70e428a66b51857210fa201720a04b826eef89892da0c0344a1f3ac40e92c65455bfaa701be49759fc4ddebf06d6c014b38c8f3378d83bec6
+MISC ChangeLog 2428 SHA256 36b12d6f80e5c67ed868f1fb152d55c514e5526e6751f09b53a00a093f41ee78 SHA512 4ac7f96f568826793b16f506140275f328df27080cb0c33fffbf9335289fac54adafcf56adf535ee531b72b38096a9e5542de7ae52c223657f938b965d4ea38a WHIRLPOOL c596b6783388b5035a086ff0a54d64655559cbcba40956f31637266e24df555159b9f29f2d0ba0254d90080f14ece261fcce2705579f28248302bddb732b46bf
+MISC ChangeLog-2015 1146 SHA256 d15861f7936c6f120c9f28f18fc8138794c09787ab4e4940a4aaa31eaa981073 SHA512 e9fb102e1014f752d699420ef848216d993235026707d1eab28cb2a3bb9c87dfd8faeb60fb5a13fa7c63bc224a9abf2c032e4ba5f908797864307fa2a2809d43 WHIRLPOOL 2ff0575723e0d5702ca2a1cbf06e4508afa4d4e34ed670a9fbc871680845df5c16a1a2eab910583c17de15a37dea2d6e8c320668976dcbf57779e30c09e85203
+MISC metadata.xml 587 SHA256 82b2da4f5ed96d4f2e076e1c87792d93bfc2c16a07a3c705a2198afef39d61a8 SHA512 c0a4a87370ea9e3a927d2ae4512ccd8bd7c8e9790145452967648f57501c61b861e90a8c8f296ac837b904613330505cac263475a4a82e0e3f9b6d9b6feedb82 WHIRLPOOL 4c473f2e8fdffd0a69bc7d15634f0a2b6a10fdc0481e99148f1763e5fecf0ef25fbee7160072e12c1af3a034af2b54283e9f5e4954144757bfa9ce292a29795e
diff --git a/app-mobilephone/qtadb/metadata.xml b/app-mobilephone/qtadb/metadata.xml
new file mode 100644
index 000000000000..2d01fe9fa442
--- /dev/null
+++ b/app-mobilephone/qtadb/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>opensource@andmarios.com</email>
+<name>Marios Andreopoulos</name>
+<description>Maintainer. Assign bugs to him</description>
+</maintainer>
+<maintainer type="person">
+<email>hwoarang@gentoo.org</email>
+<name>Markos Chandras</name>
+<description>Proxy maintainer. CC him on bugs</description>
+</maintainer>
+<maintainer type="project">
+<email>proxy-maint@gentoo.org</email>
+<name>Proxy Maintainers</name>
+</maintainer>
+</pkgmetadata>
diff --git a/app-mobilephone/qtadb/qtadb-0.8.1.ebuild b/app-mobilephone/qtadb/qtadb-0.8.1.ebuild
new file mode 100644
index 000000000000..498f747f663a
--- /dev/null
+++ b/app-mobilephone/qtadb/qtadb-0.8.1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit eutils readme.gentoo qt4-r2
+
+MY_PN="QtADB"
+MY_P="${MY_PN}_${PV}_src"
+
+DESCRIPTION="Android phone manager via ADB"
+HOMEPAGE="http://qtadb.wordpress.com"
+SRC_URI="http://${PN}.com/${PN}/${MY_P}.zip"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-qt/qtgui:4
+ dev-qt/qtdeclarative:4"
+DEPEND="${RDEPEND}
+ app-arch/unzip"
+
+S="${WORKDIR}/trunk"
+
+pkg_setup() {
+ DISABLE_AUTOFORMATTING="yes"
+ DOC_CONTENTS="
+You will need a working Android SDK installation (adb and aapt executables)
+You can install Android SDK a) through portage (emerge android-sdk-update-manager
+and run android to download the actual sdk), b) manually from
+http://developer.android.com/sdk/index.html or c) just grab the adb, aapt linux
+binaries from http://qtadb.wordpress.com/download/
+adb and aapt executables are in the platform-tools subdir of Android SDK
+
+Also you will need to have ROOT access to your phone along with busybox
+The latter can be found in the Android market
+
+Last, if you want to use the SMS manager of QtADB, you have to install
+QtADB.apk to your device, available here: http://qtadb.wordpress.com/download/
+
+If you have trouble getting your phone connected through usb (driver problem),
+try adbWireless from Android market to get connected through WiFi
+"
+}
+
+src_install() {
+ newicon images/android.png ${PN}.png
+ make_desktop_entry ${MY_PN} "${MY_PN}" ${PN} \
+ "Qt;PDA;Utility;" || die "Desktop entry creation failed"
+ dobin ${MY_PN}
+ readme.gentoo_create_doc
+}
diff --git a/app-mobilephone/ringtonetools/Manifest b/app-mobilephone/ringtonetools/Manifest
new file mode 100644
index 000000000000..990825b606e6
--- /dev/null
+++ b/app-mobilephone/ringtonetools/Manifest
@@ -0,0 +1,6 @@
+AUX ringtonetools-2.26-no-strip.patch 434 SHA256 9262907be54421a389364450dabe494c2f40b453a4fefe1f943dc43974411148 SHA512 282c7314072b3766aea7e0269c398664521c84ca6146ffd5ef213489f713556daf35b9cebb89c00155acd6602c5a59331341bdf13c2b179e416cab9fd68cd848 WHIRLPOOL f99f11b6be61b05e64b53ea703d8c2139014c4f50fc83851a7ffe7b4e47e3656581d648fcfd36786d2d4b6a1dce14790ee1c162b564fedc252ddb732827fc737
+DIST ringtonetools-2.26.tar.gz 40172 SHA256 609081b7ef41addd0250af38ef0391ec0b696e8a1821a3817113acd80b6b88a1 SHA512 aa352a8a9e6d84bb649d559e1026239fb7129636bfe6369d90b1e47ceedc530703144a549e0ec0aed1c89d39727c6d604aca31c2255bf3a5c0fb88502f8b31a4 WHIRLPOOL e773c454438267af4bf671d96b574c9e62ea7de83804fe3fc7987f9fed4ced7993a8c7edd4bd1026345c367152b2bd33dbcac8eb59bce843a73030a92a035f6f
+EBUILD ringtonetools-2.26.ebuild 686 SHA256 092440d40ca02fd7e3c9061c01a285fe198d4eba22f6769d80362728d3418aef SHA512 a7217de80309ee231b451341963f56c5884132c106d04ccc907e422e55b43c6bc98d0826fbff2586d56298e9afe51dd4acd674610885ba6b8adc6235a95b27c1 WHIRLPOOL fac71c729b3a988566ef1553e145933946ccbf1b688498f4611b52d93fe13fcc9391833d24551362dadc6873094e152f758b36cc538683c0823d08aca7b85ed1
+MISC ChangeLog 2982 SHA256 576986591dc00fad495e42b23ca23cff4d837f6c3447dcad32cac90ffdd86089 SHA512 deaefaf44bfbbf5732a88dbaf391487f8c5d5696b3ffed457282bd17ebcefe832cc3c67af28249211e51ce8d8bcd112af51e8eeb1810dfdaca909bfaf31a30f1 WHIRLPOOL 6232d985cd056c5c94e8dc861eb2d371c0bc5999a9b1735f419cf6eeab4c5624713c4cfee2945f95d8b859e585773f8ec2d703125247d0fbb9768189fb8e0690
+MISC ChangeLog-2015 2881 SHA256 c4c837b43b07e641fd9668df23de8540db24f621af3a7b7365a2ef514207870d SHA512 d6ba02374b79443acb02378c4d0e5177262d6cb0be325937bd2a5637c7643619dd89e913d3bc57945ce4868085a4f76d1e10e042370c5290a40d1413c823bc98 WHIRLPOOL 2c07f2b92bf97c29e3e2c42251fb5b9fb95a9347eb6e182a637a2649e21ddab3ea46e0b7dd113c2d4b9a066e774fb9a9b2bc51c7f5a8c3b20059a42203829268
+MISC metadata.xml 302 SHA256 6252a2ceb3c5051cac2b3b0909bc398f7e8d0146ff6c64aaa4cf2ff9302e6e03 SHA512 be870078a348b18e98ac5b1a889ea100726436be22d5a83e6120225a15f29c2b86b9ba80ecd54e8d83d6ece9356ff23ba11e0afbd45b8d3ac1e02e6b98fad3ab WHIRLPOOL 2794cf4945c25dcb9890360dcd1ce9e09a0d41ee16e220a1fc507b83143b39763ba793f0d9d0d2ee443297c2c09e21681348c99159dc7761ee30f3c79a6c9d1d
diff --git a/app-mobilephone/ringtonetools/files/ringtonetools-2.26-no-strip.patch b/app-mobilephone/ringtonetools/files/ringtonetools-2.26-no-strip.patch
new file mode 100644
index 000000000000..5438f4442483
--- /dev/null
+++ b/app-mobilephone/ringtonetools/files/ringtonetools-2.26-no-strip.patch
@@ -0,0 +1,11 @@
+diff -Nru ringtonetools-2.26.orig/Makefile ringtonetools-2.26/Makefile
+--- ringtonetools-2.26.orig/Makefile 2005-08-01 20:42:00.000000000 +0300
++++ ringtonetools-2.26/Makefile 2006-09-24 13:01:32.252022000 +0300
+@@ -3,7 +3,6 @@
+ @cd src && make
+ @if [ -e src/ringtonetools.exe ]; then mv src/ringtonetools.exe ringtonetools.exe; fi
+ @if [ -e src/ringtonetools ]; then mv src/ringtonetools .; fi
+- @strip ringtonetools*
+
+
+ clean:
diff --git a/app-mobilephone/ringtonetools/metadata.xml b/app-mobilephone/ringtonetools/metadata.xml
new file mode 100644
index 000000000000..69a65829a9e7
--- /dev/null
+++ b/app-mobilephone/ringtonetools/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <longdescription>Ringtone Tools is a program for creating custom ringtones and graphical logos for mobile phones.</longdescription>
+</pkgmetadata>
diff --git a/app-mobilephone/ringtonetools/ringtonetools-2.26.ebuild b/app-mobilephone/ringtonetools/ringtonetools-2.26.ebuild
new file mode 100644
index 000000000000..dd0e2453a5e7
--- /dev/null
+++ b/app-mobilephone/ringtonetools/ringtonetools-2.26.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2008 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="program for creating ringtones and logos for mobile phones"
+HOMEPAGE="http://ringtonetools.mikekohn.net/"
+SRC_URI="http://downloads.mikekohn.net/ringtonetools/${P}.tar.gz"
+
+LICENSE="ringtonetools"
+SLOT="0"
+KEYWORDS="~amd64 ppc x86"
+IUSE=""
+
+src_unpack() {
+ unpack ${A}
+
+ epatch "${FILESDIR}/${P}-no-strip.patch"
+}
+
+src_compile() {
+ emake -j1 FLAGS="${CFLAGS}" LIBS="${LDFLAGS}" CC="$(tc-getCC)" || die "make failed"
+}
+
+src_install() {
+ dobin ringtonetools || die "program not found"
+ dodoc docs/*
+ docinto samples
+ dodoc samples/*
+}
diff --git a/app-mobilephone/scmxx/Manifest b/app-mobilephone/scmxx/Manifest
new file mode 100644
index 000000000000..3bb3de45ca10
--- /dev/null
+++ b/app-mobilephone/scmxx/Manifest
@@ -0,0 +1,5 @@
+DIST scmxx-0.9.0.tar.bz2 250681 SHA256 60bd84bd4b9c6b0d87be59e080b4776320d60aa025ed57560a5790b511d5d6da SHA512 755877badfc846fa33ea29a38c9f8408f62d5343e0927438640ac923e8fccfcc1a0ffeae82f707d5ac1632022a15eaa2d9816602420212f171e29505c109f20f WHIRLPOOL 63cdfcd404801bd590e9659ee52944d00ccfc3ad94e4a1a46d1b9caa38148d3dbb35b661dd99b205fe2dbfb7f72bb5dfe209bad09dd42f7b2149e7c1703fbdcd
+EBUILD scmxx-0.9.0.ebuild 632 SHA256 96d9c42ab2efee62db8759f7cac0d8a088e1b3310fad699143f2434798bd4da9 SHA512 4e7e7f1998ee34793203c2c122cfe0e51dbc97b6119269a9756198d03d203a3fbff19ec95f7242da10cd5d0bcc8d74f43862df1e5cefe297a85b5e3d05a389f1 WHIRLPOOL 7119b735d0e4b4d6cd577c37036c3da9fe9acf7fa41c4837124bef822c6aa07943e488324b011fc8e04cf10a4e06bb576e066f6723809f68bc905f8dcf14ca61
+MISC ChangeLog 2523 SHA256 57e86f91632015d402c2665d14dc1c0d87f33aaf593bdf83ff9c2c5ef5088e71 SHA512 9e708ff7914cd3914c2b31633de38c564d07b3360e79cc0b83a09623b8bb31e2c9331700e147d1785fea384a14b9f76edfb6e27c3ddd31644298efe0b536dc3f WHIRLPOOL 21445bda65f90d2b59f088c50cac912952261c01888bebd93f13b586e57a4c6b14e351931e7ed95c0de8299772ea52958ecd4482801dad6f390353756e6b3763
+MISC ChangeLog-2015 2962 SHA256 369408c3d1d8530ea9cbb442be28097ac8a5393f43792461c0cf522237d60326 SHA512 875eb55f0d4658d3b875b28b33ec2106104bd615f6e0c145a6695e7cebbe6eacc9e63959b3c416d5ca013d63dc7aa41863bfcfd58e109fdd3da8ee886ad53066 WHIRLPOOL eaa3c3ec5611e9931fc15a5b2208d54e13f23c6dff58603537c5a988fdd9c3df57497c96da805877d2421a5b0e4229ffbc77f5e24859055005307871fba2a94c
+MISC metadata.xml 242 SHA256 f3dba39b9e69b8b665d168d2c0862a19e819b4dea6130ee7c80e154fa04e25d9 SHA512 d0c351265118151d9fba7777f52e66caf64edd684b9b7262536a19e227acd994c7ca7188579ff7aac7a64bf3aed1faa476494c2873359db2be3031284899d7ef WHIRLPOOL 2148be5d43098fea9a14faf4e7b7c0b04c9ea4aa2e9fbce87d80258f5700a22c2cf6d1e397cc62cad9c6a67a445886d30952a62f96e02031a7f2d14a35505ca0
diff --git a/app-mobilephone/scmxx/metadata.xml b/app-mobilephone/scmxx/metadata.xml
new file mode 100644
index 000000000000..126b557691c7
--- /dev/null
+++ b/app-mobilephone/scmxx/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="sourceforge">scmxx</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/app-mobilephone/scmxx/scmxx-0.9.0.ebuild b/app-mobilephone/scmxx/scmxx-0.9.0.ebuild
new file mode 100644
index 000000000000..944c7aaac61c
--- /dev/null
+++ b/app-mobilephone/scmxx/scmxx-0.9.0.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+DESCRIPTION="Exchange data with Siemens phones"
+HOMEPAGE="http://www.hendrik-sattler.de/scmxx/"
+SRC_URI="mirror://sourceforge/scmxx/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 x86"
+IUSE="bluetooth nls"
+
+RDEPEND="bluetooth? ( net-wireless/bluez )"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )"
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ exeinto /usr/lib/scmxx
+ doexe contrib/*
+
+ doman docs/*.1
+
+ rm docs/README_WIN32.txt
+ dodoc AUTHORS BUGS CHANGELOG README TODO docs/*.txt
+}
diff --git a/app-mobilephone/smsclient/Manifest b/app-mobilephone/smsclient/Manifest
new file mode 100644
index 000000000000..a503a998976e
--- /dev/null
+++ b/app-mobilephone/smsclient/Manifest
@@ -0,0 +1,7 @@
+AUX smsclient-2.0.9a-gentoo.patch 6145 SHA256 873c3d236860e800d74b45fb267268b79393a7479668eefcec03afecee481a56 SHA512 6a1e0f82d430e12050c1b5525d84d3b916790c6b413b15c1cffe61cab815f7c08576edfa06ee66717a475f6c843040bdfc0d12767a22b90c79a800db47417406 WHIRLPOOL a71976293055f1f8085781a084ddd51c58751e18b681821d2f7b133ad5d1007fe53b27b42d3ccca2f658c12081374817f5ad226f276710e38a57aa3a73d6d002
+AUX smsclient-2.0.9a-sender.patch 6223 SHA256 bd46ee446ce6055b340a405a8f64d38a35944c3136d0da14cb1b4a194cb02a42 SHA512 13f588aaae9379c44285a7a6a72de196dddd7d31be2fc98b09a0d721492f6ff2a81d4314fee544932876b1996724274a22de78b800f90050c7be4b3bba41a3d6 WHIRLPOOL 4976cc6416983e55e3cc863d71474b971c5e5941ce1ef703e14b5176ade4d8ad3f5ce40b96bc7e1c214e92076d441dae836c9dea6c24fe9c5a07503638da829f
+DIST smsclient-2.0.9a.tar.gz 151600 SHA256 8d209716a99d670714aabe92f36f587f230efe25c746e00bcc823b1e78bf926c SHA512 85ab34b34cb1b3e1cfeeefed6618ca5cf7c66f26a1f5fe211b079a65694259fc2272abc6fe2e74d008e680d67f057288a704a87558e65e015554517fb99ba89d WHIRLPOOL 1cbfd9d03b9092961bcad639c1e2fdbb86d2eb561fdf7ab56fe379578b817fb0bcafbd755773937d37bed78642dff12194b2b2a54ed8bd9f43cd7e031299549e
+EBUILD smsclient-2.0.9a-r1.ebuild 1340 SHA256 9fc31eb5a8e4f86b5a171d2c9d942ae000825e24385d896c9b2030a46558d706 SHA512 38b810b4650bff84218d0bc219ea1934c7c4a02160b6fe2d228a19a3c3c27c61b35b0eee1f44420cc1197d97f82ea7b97c841c847d64041ffd2306c780cd9c95 WHIRLPOOL d9acc84746d56293f1a09cdacf6920b406066ba905f2765c46b917662079f99372a27563228a0bf76b1d8e490b10d79c68c25d25cba37a77b37fcc06382e0890
+MISC ChangeLog 2621 SHA256 662ddfd641388664f75e5dd7543955ce0cd04220ce1a77d99cb04cb64f31dd97 SHA512 d01e30a045dbf5881303e9ae72dfb4afa17b643eb3eae0fef7f9c79d36963592b4b7c8e5d15e22afdfb178b18abd0122c6720923783605960153961d98a88594 WHIRLPOOL 7a396f6bd175744abaf6ceff10ac18b7592b3107c62b2abd8f1e8955c959fbc03b1f765a4579b1d2634bc74d64465639b06596ba674e7d65fb9e34f5dea58c66
+MISC ChangeLog-2015 2244 SHA256 fef1c4d77cc39388cb013c860d636f285d748e25b5c4774f42e7e024d75f419a SHA512 9fc1bdb0a18d92ada8be1389a95adcf68557e6825759e55305eede6eabc0f03f8f8c63b16d137cec062a8d2256aa8f8bce33c2f91fc7c1277197a32fcd8e2369 WHIRLPOOL 91cdd3efed6f8e29db0ff74b3b9d61dbbaa21ef445dfc46b0cc57da77d939680c941f2208085a43ac32ddd3559852818ce412d6b7456c702d3c2c7b195c98c42
+MISC metadata.xml 318 SHA256 865f5541edee0fff7c83f029f5ca9a81051d6f21d5e1de390947ecb1e511bf8b SHA512 bad4778937d1a9e0b1b6e4d2dc75f34a15c91ab6a5a865fa823335349127e81a93f874e55f5961bc0e77ac4744105293326128aaafe0360ed11279f5ed856348 WHIRLPOOL a49fd55a4ec80d86766da3f59eb48e3830b9b915d6808da9ddfe9e107452d50d65e3812674849b7735060e011adb7db997331db6134f06dd79c8463e12d33929
diff --git a/app-mobilephone/smsclient/files/smsclient-2.0.9a-gentoo.patch b/app-mobilephone/smsclient/files/smsclient-2.0.9a-gentoo.patch
new file mode 100644
index 000000000000..b38b1309c339
--- /dev/null
+++ b/app-mobilephone/smsclient/files/smsclient-2.0.9a-gentoo.patch
@@ -0,0 +1,122 @@
+diff -Nur smsclient-2.0.9a.orig/config/Makefile.config.linux smsclient-2.0.9a/config/Makefile.config.linux
+--- smsclient-2.0.9a.orig/config/Makefile.config.linux 2006-02-25 12:52:12.203797250 +0200
++++ smsclient-2.0.9a/config/Makefile.config.linux 2006-02-25 12:52:38.837461750 +0200
+@@ -39,7 +39,7 @@
+ PLATFORM = -DLINUX
+ CC = gcc
+ MAKE = make
+-CFLAGS = -O2 -g -I. -Wall -pedantic -fsigned-char $(PLATFORM)
++CFLAGS += -I. -Wall -pedantic -fsigned-char $(PLATFORM)
+ XTRALIBS =
+
+ # --------------------------------------------------------------------
+@@ -59,7 +59,7 @@
+ MLOCALSMSRC = .sms_addressbook
+ MGLOBALSMSRC = $(ETCPREFIX)/etc/smsclient/sms_addressbook
+ MSERVICEDIR = $(ETCPREFIX)/etc/smsclient
+-MLIBDIR = $(PREFIX)/usr/lib/smsclient
++MLIBDIR = $(PREFIX)/usr/share/smsclient
+ MLOGFILE = $(LOGDIR)/smsclient.log
+ MSNPPDLOGFILE = $(LOGDIR)/smsclient.snppdlog
+ MSMSDLOGFILE = $(LOGDIR)/smsclient.smsdlog
+@@ -80,10 +80,10 @@
+
+ # --------------------------------------------------------------------
+
+-BINDIR = $(DESTDIR)/usr/bin
+-ETCDIR = $(DESTDIR)/etc
+-LIBDIR = $(DESTDIR)/usr/lib
+-MANDIR = $(DESTDIR)/usr/share/man
++BINDIR = /usr/bin
++ETCDIR = /etc
++LIBDIR = /usr/lib
++MANDIR = /usr/share/man
+ MANEXT = 1
+ INSTALL = /usr/bin/install
+ RM = /bin/rm -f
+diff -Nur smsclient-2.0.9a.orig/sms/Makefile smsclient-2.0.9a/sms/Makefile
+--- smsclient-2.0.9a.orig/sms/Makefile 2006-02-25 12:52:12.203797250 +0200
++++ smsclient-2.0.9a/sms/Makefile 2006-02-25 12:49:49.166858000 +0200
+@@ -34,28 +34,26 @@
+ all:
+
+ install:
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(MLIBDIR)/services
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/errors
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/locks
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/incoming
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/named_pipes
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/services
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(MSERVICEDIR)/scripts
++ $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -m 755 -d $(DESTDIR)$(MLIBDIR)/services
++# $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient
++# $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/errors
++# $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/locks
++# $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/incoming
++# $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/named_pipes
++# $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/services
++ $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -m 755 -d $(DESTDIR)$(MSERVICEDIR)/scripts
+
+ ( cd services ;\
+ for service in * ; do \
+ $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 644 $$service $(DESTDIR)$(MLIBDIR)/services; \
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/services/$$service ; \
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)$(SPOOLDIR)/smsclient/errors/$$service ; \
+ done )
+
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 644 scripts/email $(DESTDIR)$(MSERVICEDIR)/scripts
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 644 sms_config $(DESTDIR)$(MSERVICEDIR)
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 644 sms_addressbook $(DESTDIR)$(MSERVICEDIR)
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 644 sms_modem $(DESTDIR)$(MSERVICEDIR)
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 644 sms_services $(DESTDIR)$(MSERVICEDIR)
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 644 sms_daemons $(DESTDIR)$(MSERVICEDIR)
++ $(INSTALL) -m 644 scripts/email $(DESTDIR)$(MSERVICEDIR)/scripts
++ $(INSTALL) -m 644 sms_config $(DESTDIR)$(MSERVICEDIR)
++ $(INSTALL) -m 644 sms_addressbook $(DESTDIR)$(MSERVICEDIR)
++ $(INSTALL) -m 644 sms_modem $(DESTDIR)$(MSERVICEDIR)
++ $(INSTALL) -m 644 sms_services $(DESTDIR)$(MSERVICEDIR)
++ $(INSTALL) -m 644 sms_daemons $(DESTDIR)$(MSERVICEDIR)
+
+ uninstall:
+ $(RM) $(DESTDIR)$(MLIBDIR)/services/*
+diff -Nur smsclient-2.0.9a.orig/sms/sms_config smsclient-2.0.9a/sms/sms_config
+--- smsclient-2.0.9a.orig/sms/sms_config 2006-02-25 12:52:12.203797250 +0200
++++ smsclient-2.0.9a/sms/sms_config 2006-02-25 12:49:49.166858000 +0200
+@@ -9,7 +9,7 @@
+
+ SMS_lock_action = "BLOCK"
+ SMS_lock_retry_delay = 5000000
+- SMS_lockfile = "/var/lock/smslock"
++ SMS_lockfile = "/var/lock/sms/client.lock"
+
+ # SMS_lockfile = "/var/opt/sms/smslock" # UNIXWARE
+ }
+diff -Nur smsclient-2.0.9a.orig/src/client/Makefile smsclient-2.0.9a/src/client/Makefile
+--- smsclient-2.0.9a.orig/src/client/Makefile 2006-02-25 12:52:12.203797250 +0200
++++ smsclient-2.0.9a/src/client/Makefile 2006-02-25 12:49:49.166858000 +0200
+@@ -35,9 +35,9 @@
+ all: ../../bin/sms_client ../../bin/sms_address
+
+ install: ../../bin/sms_client ../../bin/sms_address
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(BINDIR)
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -s ../../bin/sms_client $(BINDIR)
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -s ../../bin/sms_address $(BINDIR)
++ $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(DESTDIR)/$(BINDIR)
++ $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 ../../bin/sms_client $(DESTDIR)/$(BINDIR)
++ $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 ../../bin/sms_address $(DESTDIR)/$(BINDIR)
+
+ uninstall:
+ $(RM) $(BINDIR)/sms_client
+diff -Nur smsclient-2.0.9a.orig/src/logfile/Makefile smsclient-2.0.9a/src/logfile/Makefile
+--- smsclient-2.0.9a.orig/src/logfile/Makefile 2006-02-25 12:52:12.203797250 +0200
++++ smsclient-2.0.9a/src/logfile/Makefile 2006-02-25 12:49:49.166858000 +0200
+@@ -34,7 +34,7 @@
+ all: logfile.o
+
+ install:
+- $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(LOGDIR)
++# $(INSTALL) -o $(SMSUSER) -g $(SMSGROUP) -m 755 -d $(LOGDIR)
+
+ clean:
+ $(RM) *.o
diff --git a/app-mobilephone/smsclient/files/smsclient-2.0.9a-sender.patch b/app-mobilephone/smsclient/files/smsclient-2.0.9a-sender.patch
new file mode 100644
index 000000000000..f7339d71cbc5
--- /dev/null
+++ b/app-mobilephone/smsclient/files/smsclient-2.0.9a-sender.patch
@@ -0,0 +1,139 @@
+diff -Nru smsclient-2.0.9a.orig/Changelog smsclient-2.0.9a/Changelog
+--- smsclient-2.0.9a.orig/Changelog 2007-02-03 08:43:40.000000000 +0200
++++ smsclient-2.0.9a/Changelog 2007-02-03 08:43:12.000000000 +0200
+@@ -1,3 +1,7 @@
++2007-02-02 12:00 Andreas Bollhalder <bolle@geodb.org>
++
++ * Added SMS_sender_number to UCP driver
++
+ 2002-03-26 14:00 Koenraad Heijlen <vipie@ulyssis.org>
+
+ RELEASED as 2.0.9a
+diff -Nru smsclient-2.0.9a.orig/sms/services/d2 smsclient-2.0.9a/sms/services/d2
+--- smsclient-2.0.9a.orig/sms/services/d2 2002-03-07 00:04:51.000000000 +0200
++++ smsclient-2.0.9a/sms/services/d2 2007-02-03 08:44:55.000000000 +0200
+@@ -14,6 +14,12 @@
+ SMS_centre_number = "01722278020" # D2 SMSC Number
+
+ # +49 must be added for dialing from outside germany
++
++ # ------------------------------------------------------------
++ # Your sender number.
++ # ------------------------------------------------------------
++
++ # SMS_sender_number = "1234567890"
+ }
+
+ # --------------------------------------------------------------------
+diff -Nru smsclient-2.0.9a.orig/sms/services/kpntext smsclient-2.0.9a/sms/services/kpntext
+--- smsclient-2.0.9a.orig/sms/services/kpntext 2007-02-03 08:43:40.000000000 +0200
++++ smsclient-2.0.9a/sms/services/kpntext 2007-02-03 08:43:12.000000000 +0200
+@@ -16,6 +16,12 @@
+
+ SMS_centre_number = "0665181802" # PTT/KPN Telcom service
+ # centre number
++
++ # ------------------------------------------------------------
++ # Your sender number.
++ # ------------------------------------------------------------
++
++ # SMS_sender_number = "1234567890"
+ }
+
+ # --------------------------------------------------------------------
+diff -Nru smsclient-2.0.9a.orig/sms/services/kpnucp smsclient-2.0.9a/sms/services/kpnucp
+--- smsclient-2.0.9a.orig/sms/services/kpnucp 2007-02-03 08:43:40.000000000 +0200
++++ smsclient-2.0.9a/sms/services/kpnucp 2007-02-03 08:43:12.000000000 +0200
+@@ -16,6 +16,12 @@
+
+ SMS_centre_number = "0653141414" # PTT/KPN Telcom service
+ # centre number
++
++ # ------------------------------------------------------------
++ # Your sender number.
++ # ------------------------------------------------------------
++
++ # SMS_sender_number = "1234567890"
+ }
+
+ # --------------------------------------------------------------------
+diff -Nru smsclient-2.0.9a.orig/sms/services/swisscom smsclient-2.0.9a/sms/services/swisscom
+--- smsclient-2.0.9a.orig/sms/services/swisscom 2007-02-03 08:43:40.000000000 +0200
++++ smsclient-2.0.9a/sms/services/swisscom 2007-02-03 08:43:12.000000000 +0200
+@@ -13,6 +13,12 @@
+
+ SMS_centre_number = "0794998990" # SWISSCOM SMSC Number (Analog V.34)
+ # SMS_centre_number = "0900900941" # SWISSCOM SMSC Number (ISDN V.120)
++
++ # ------------------------------------------------------------
++ # Your sender number.
++ # ------------------------------------------------------------
++
++ # SMS_sender_number = "1234567890"
+ }
+
+ # --------------------------------------------------------------------
+diff -Nru smsclient-2.0.9a.orig/sms/services/telenor smsclient-2.0.9a/sms/services/telenor
+--- smsclient-2.0.9a.orig/sms/services/telenor 2007-02-03 08:43:40.000000000 +0200
++++ smsclient-2.0.9a/sms/services/telenor 2007-02-03 08:43:12.000000000 +0200
+@@ -13,6 +13,12 @@
+
+ SMS_centre_number = "90002198" # TELENOR SMSC Number
+ # From Inside Norway
++
++ # ------------------------------------------------------------
++ # Your sender number.
++ # ------------------------------------------------------------
++
++ # SMS_sender_number = "1234567890"
+ }
+
+ # --------------------------------------------------------------------
+diff -Nru smsclient-2.0.9a.orig/sms/services/telia smsclient-2.0.9a/sms/services/telia
+--- smsclient-2.0.9a.orig/sms/services/telia 2007-02-03 08:43:40.000000000 +0200
++++ smsclient-2.0.9a/sms/services/telia 2007-02-03 08:43:12.000000000 +0200
+@@ -16,6 +16,12 @@
+ # ------------------------------------------------------------
+ # +46 must be added for dialing from outside Sweden
+ # ------------------------------------------------------------
++
++ # ------------------------------------------------------------
++ # Your sender number.
++ # ------------------------------------------------------------
++
++ # SMS_sender_number = "1234567890"
+ }
+
+ # --------------------------------------------------------------------
+diff -Nru smsclient-2.0.9a.orig/src/driver/ucp.c smsclient-2.0.9a/src/driver/ucp.c
+--- smsclient-2.0.9a.orig/src/driver/ucp.c 2007-02-03 08:43:40.000000000 +0200
++++ smsclient-2.0.9a/src/driver/ucp.c 2007-02-03 08:43:12.000000000 +0200
+@@ -184,6 +184,8 @@
+ /* Place any extended driver */
+ /* variables here */
+
++ char *szSenderNumber;
++
+ } driver_env;
+
+ /* -------------------------------------------------------------------- */
+@@ -197,6 +199,7 @@
+ { RESOURCE_NUMERIC, "SMS_timeout", 0, 0, NULL, 0, NULL, 10, &(driver_env.def.timeout) },
+ { RESOURCE_NUMERIC, "SMS_write_timeout", 0, 0, NULL, 0, NULL, 10, &(driver_env.def.write_timeout) },
+ { RESOURCE_NUMERIC, "SMS_max_deliver", 0, 0, NULL, 0, NULL, 1, &(driver_env.def.max_deliver) },
++ { RESOURCE_STRING, "SMS_sender_number", 0, 1, NULL, 0, "", 0, &(driver_env.szSenderNumber) },
+ { RESOURCE_NULL, NULL, 0, 1, NULL, 0, NULL, 0, NULL }
+ };
+
+@@ -248,9 +251,9 @@
+
+
+ /* data: AdC/OAdc/OAC/MT/.. */
+- /* -> recipient///3/... */
++ /* -> recipient/sender//3/... */
+
+- nc = sprintf(msgData, "%s///%1.1d/", msisdn, msgType);
++ nc = sprintf(msgData, "%s/%s//%1.1d/", msisdn, driver_env.szSenderNumber, msgType);
+
+ /* ... additional parameters depending on MT */
+ /* For MT=3 (alphanumeric) this is hex coded */
diff --git a/app-mobilephone/smsclient/metadata.xml b/app-mobilephone/smsclient/metadata.xml
new file mode 100644
index 000000000000..4ac469947f7d
--- /dev/null
+++ b/app-mobilephone/smsclient/metadata.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <longdescription>SMS Client is a UNIX command line based utility which allows you to send SMS messages to mobile phones and pagers.</longdescription>
+</pkgmetadata>
diff --git a/app-mobilephone/smsclient/smsclient-2.0.9a-r1.ebuild b/app-mobilephone/smsclient/smsclient-2.0.9a-r1.ebuild
new file mode 100644
index 000000000000..0bfc36b2e36b
--- /dev/null
+++ b/app-mobilephone/smsclient/smsclient-2.0.9a-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit eutils user
+
+DESCRIPTION="Utility to send SMS messages to mobile phones and pagers"
+HOMEPAGE="http://www.smsclient.org"
+SRC_URI="http://www.smsclient.org/download/${PN}-${PV%?}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+pkg_setup() {
+ enewgroup dialout
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-gentoo.patch"
+ epatch "${FILESDIR}/${P}-sender.patch"
+ sed -i -e \
+ "s:\$(CFLAGS) -o:\$(CFLAGS) \$(LDFLAGS) -o:g" \
+ src/client/Makefile
+}
+
+src_configure() {
+ rm .configured && ./configure
+}
+
+src_compile() {
+ emake \
+ CC="$(tc-getCC)" \
+ AR="$(tc-getAR) rc" \
+ RANLIB="$(tc-getRANLIB)" \
+ LDFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dosym sms_client /usr/bin/smsclient
+ dosym sms_address /usr/bin/smsaddress
+
+ diropts -g dialout -m 0770
+ keepdir /var/lock/sms
+ diropts
+
+ doman docs/sms_client.1
+ dodoc AUTHORS Changelog* FAQ README* TODO docs/sms_protocol
+}
+
+pkg_config() {
+ local MY_LOGFILE="${ROOT}/var/log/smsclient.log"
+ [ -f "${MY_LOGFILE}" ] || touch "${MY_LOGFILE}"
+ fowners :dialout "${MY_LOGFILE}"
+ fperms g+rwx,o-rwx "${MY_LOGFILE}"
+}
+
+pkg_postinst() {
+ einfo "If you run sms_client as normal user, make sure you are member of dialout group."
+}
diff --git a/app-mobilephone/smstools/Manifest b/app-mobilephone/smstools/Manifest
new file mode 100644
index 000000000000..e99436c8686d
--- /dev/null
+++ b/app-mobilephone/smstools/Manifest
@@ -0,0 +1,13 @@
+AUX 3.1.15-makefile-whitespace.patch 332 SHA256 a05717b44d0dd162b02bb97d5e6ca0823a35ebff4aaabef12029379eb1c17346 SHA512 d8a018b0af45a067fe49a2afe00fa9906d9e9424eec20d75701b903618b6c02929ca4dda17064bf157bd319fc3d2be8803ff71f6a2b6ab8aa2663e528b0f9378 WHIRLPOOL 38111956a2ec68780acb84995ed1dbcb2be7690be52fee21f336c65615c3cbca34064420be7e4fe80e3d55319c0508313c845c8ac112dfb8565c485bf38816c4
+AUX 3.1.21-gawk-location.patch 395 SHA256 98e99669f7fbc236774ba6e72bcd6f050664b385dfe0b599905cd7685bdbd603 SHA512 ec7ebfe9198743c34297b88d082811a597732d3a74b0609a558dac7c4d00d8de02154052e30ffd266600ddc20b6f056e768aa7de4f670ccd0ebc87c061ece321 WHIRLPOOL 2ff4154ea6273573a9c965c1cd6adfbf253e42ae61af3fe844752f430847b14aab95a0bab3f50e1759e02b2dfae54db64f122ae30a7d25a6d2baa7e36c2a5ad6
+AUX smsd.initd3 656 SHA256 c284353c9eba8633a464153eec0dc537edd8345567138fa707cfd63170147750 SHA512 36ae79a4d8661a66be5e74fdac4a3055f45ee64049167892fbe4301e8dfe01a3c3365eb7939eda5de6b5d512923078019a1a427f98c33e034f76d253df91ef1d WHIRLPOOL 43804bc75918a00b760a4287bd3206667fcc6a09849ab554212b6c84f22d797747ca4cb4ccc16aafad40094868582515443df41663968c7196839a75f5f0fb9a
+AUX smsd.initd4 544 SHA256 7cd47c00da073258794e62070f3f5117c6763a9eeb15913df8d4eed5488a5345 SHA512 4060e8ca95ccd7b237f2d32be35e30de532dd03a1b2e88e9c516e7f94383a790bdbac9ed20b482103f425f3b84097bc02308588b313a3651c5d251d92d5f61e2 WHIRLPOOL a289abf06a549a570ed7fae0e32ea9ba0c21de1e3e2614a34a7804ce6a0cfe2e8b56e195729dcd3e65572df36c7218f4070572615709b0239dbb940547ec69d4
+AUX smsd.service 232 SHA256 30437b9ba94521ec1223ea9740726b5453bb3aa440c2aced1743edc0408cdb51 SHA512 60b2d56b4fb5f174c9a9111891633a1eca6e831a0abad7d348c04d63776af832256a1bf0ed300196c429056106226e98178e60215c867e6ec9f998a7029295d1 WHIRLPOOL eba9c9b55a83d9872aebe2a3c7a9d3658d67ac8a9d3aa375f7f6fbfa93737b730dc1ccc236e39de52b4a99e2df51241273b6687455f9338f70e2296f84b07b71
+AUX smsd.tmpfiles 28 SHA256 77b5249182329cc349e6711117f6ea22b319e8bde2d85057e15e85b413c88987 SHA512 e8169ac96bff820996b13971f47e40550cbfa87a46f74304c4a42afe5a0fb779e65244dda5c7b3fae40d3eb0a669f2b4d5f5bfeeb576e88e04ddda812da9234a WHIRLPOOL 1ae73c50e7e8c48bfa3d84c62fa5c7e9495aedeaff79cb589fd8acbfb6b7b375bb5696883236a8fcbe207c6f204d5d1e2ef9815d07c9bd19cdf1877fb00a1fcb
+DIST smstools3-3.1.15.tar.gz 300088 SHA256 ed00ffaeaa312a5b4f969f4e97a64603a866bbe16e393ea02f5bf05234814d59 SHA512 6a4cc852327fac27b00fc58def4bbc8caa395552586fe1b84f0f4a9f7f6b00008943b85c86de0821036629c58cf04840a189d711b4ac96f7ddaafd6b340b11fa WHIRLPOOL b394c4c620622dcfdf1d0b098a51f589ee59869fbd58c0b778e51f76335a396c3d4972423374f2ee191263cf7c350cf2432e0b120f594f77f17cdbbcc4b4e974
+DIST smstools3-3.1.21.tar.gz 356548 SHA256 a26ba4c02b16f6cf13177bffca6c9230dc5fefaeba8e3030cd4e4905f6a92084 SHA512 0587e5020a0318351ca99b68baa1c19411824279055857a5b5aa4e346cae373fe94a811eaca6767bcf991cf849eaaa66ec120f046420531a6088cdde9373db31 WHIRLPOOL 44bba9f7c0e3c9eb73c27ae47d9ad57320eddd931393e4675e7160c66c1c17d587273ad090357842a88152ea3ca1009a9f0c4547d433cd796f46d15b0c8fb467
+EBUILD smstools-3.1.15-r2.ebuild 1708 SHA256 f2ae63fd8980d394da17e8c9dcaab5fb6c27513fe5b5885b085c28d24cc88834 SHA512 a9a50637b3c91ec6d2359d2337c568fb64aa742a18ca6301f3bad37463011dce385640ff58fdd71aea2ad976a696e0b133caf5654990b562ceee1080055dea62 WHIRLPOOL 40a313bbb218fa5c2a249f6b7fc8e0bf326ef914bb7f9ab2ccf601c290106a62dd89ae7cfb430e31e8a58c7dea0e101ff50eeaa9fc999685872995af358259a9
+EBUILD smstools-3.1.21-r1.ebuild 1711 SHA256 e33d69ef312a794d184919e3b891f5fe7b2b6a6ff1a1139c6e75a9e1fe882ef3 SHA512 7ac449c3e40a3fde4144f909b9a368dd1d38fd964333d2c7fe16eebab7865864b395bac86d9a34773306f3cce1ae7c5fd452d3ca4f72b36000d6efeab0b5a35b WHIRLPOOL 4a6e0e897936a8fda2c017135ac1c8265373373fe0e432f3184cab284ffe99f97329261f524abdee9612c657add364c25c05cdb9737ddc909532cb8e92ad1d5c
+MISC ChangeLog 3461 SHA256 72be3f3b4135cac0c7b25adff3236f8c0bdf52ce33174a63125d03607c6ebc53 SHA512 c919e1b4213d243b63abb4280f8ab9ced7963abe876cc73d3ec00db42592bedfe60c418ef4ea33e4f79ec51ef7c4fae0999a1dd133f02f3aba3429de32268457 WHIRLPOOL d858538010cda3cafd13ec0fcf7f1024e9f36793c0855bf170479094f7806a0af1f216b2795c312518e2749e88cc0a59a34f45d9bb186c5e01269cb9b9fd5b16
+MISC ChangeLog-2015 5517 SHA256 2e8bef8c1070464cbfa8f58d20d1c90c75435e848c02b42f6e97a485dd6df21b SHA512 5e77475e05aaf5c274c1c7474f71d69d97816b50b1625659d4513f861fd5f07b543a19a744afe15251b06d08d6f805594d04d740e3247a0ad307a274a8e1ccbc WHIRLPOOL 047abe743ac23bdca40e5f642a68aa9ce6379d6e81fe24d13d27199bf1fad2bb766995282e21feb42fc975e90eedb5e257aacc1403350c6dcf053ec636a0845f
+MISC metadata.xml 311 SHA256 fd291d1144b304cee4ab3d48b77272e9b2924aa04eabc1c04721f74839242620 SHA512 0ff7191917f66832a0c60952bc0e187f5c82656f6e422d81d4bf4d4d38c9edef5519d696976a3668682c40feb932b510fd96591ea698d7f08d9e4d84d12f641d WHIRLPOOL 72cdb983144fddf1ffe75306c6ce9e4dfc25e2e634228160afd17e7899f84aca7188a8a0f19ac09224e858dceb2122e56a3ee05ae5d6504813318ea2c32e6b5b
diff --git a/app-mobilephone/smstools/files/3.1.15-makefile-whitespace.patch b/app-mobilephone/smstools/files/3.1.15-makefile-whitespace.patch
new file mode 100644
index 000000000000..70455bef6c56
--- /dev/null
+++ b/app-mobilephone/smstools/files/3.1.15-makefile-whitespace.patch
@@ -0,0 +1,11 @@
+--- smstools3/src/Makefile.old 2014-04-25 23:28:46.324045112 +1000
++++ smstools3/src/Makefile 2014-04-25 23:33:26.453061496 +1000
+@@ -43,7 +43,7 @@
+
+ ifneq (,$(findstring SOLARIS,$(CFLAGS)))
+ ifeq (,$(findstring DISABLE_INET_SOCKET,$(CFLAGS)))
+-override LFLAGS += -lsocket -lnsl
++ override LFLAGS += -lsocket -lnsl
+ endif
+ endif
+
diff --git a/app-mobilephone/smstools/files/3.1.21-gawk-location.patch b/app-mobilephone/smstools/files/3.1.21-gawk-location.patch
new file mode 100644
index 000000000000..e8070a329b99
--- /dev/null
+++ b/app-mobilephone/smstools/files/3.1.21-gawk-location.patch
@@ -0,0 +1,9 @@
+diff -uNr smstools3.ORIG/scripts/hex2bin smstools3/scripts/hex2bin
+--- smstools3.ORIG/scripts/hex2bin 2017-09-11 14:11:48.040928533 +0100
++++ smstools3/scripts/hex2bin 2017-09-11 14:12:00.925927820 +0100
+@@ -1,4 +1,4 @@
+-#!/bin/gawk -f
++#!/usr/bin/gawk -f
+
+ # This script reads a hex-dump and converts it to a binary file.
+ # The hex-dump must contain one or more hexadecimal numbers separated
diff --git a/app-mobilephone/smstools/files/smsd.initd3 b/app-mobilephone/smstools/files/smsd.initd3
new file mode 100644
index 000000000000..ae53a7fc0e08
--- /dev/null
+++ b/app-mobilephone/smstools/files/smsd.initd3
@@ -0,0 +1,30 @@
+#!/sbin/openrc-run
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need localmount
+}
+
+start() {
+ if ! [ -d /var/run/smsd ]; then
+ ebegin "Creating /var/run/smsd for ${SVCNAME}"
+ mkdir /var/run/smsd \
+ && chown smsd:sms /var/run/smsd \
+ && chmod 770 /var/run/smsd
+ eend $?
+ fi
+
+ chown smsd:sms /var/log/smsd.log
+ ebegin "Starting smsd"
+ start-stop-daemon -b -u smsd:sms --start --exec /usr/bin/smsd -- \
+ -c /etc/smsd.conf -p /var/run/smsd/smsd.pid \
+ -i /var/run/smsd/smsd.working
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping smsd"
+ start-stop-daemon --stop -n smsd
+ eend ${?}
+}
diff --git a/app-mobilephone/smstools/files/smsd.initd4 b/app-mobilephone/smstools/files/smsd.initd4
new file mode 100644
index 000000000000..ff40d472896e
--- /dev/null
+++ b/app-mobilephone/smstools/files/smsd.initd4
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need localmount
+}
+
+start() {
+ checkpath -q -d -m 0770 -o smsd:sms /run/smsd || return 1
+ checkpath -q -f -o smsd:sms /var/log/smsd.log || return 1
+ ebegin "Starting smsd"
+ start-stop-daemon -b -u smsd:sms --start --exec /usr/bin/smsd -- \
+ -c /etc/smsd.conf -p /run/smsd/smsd.pid \
+ -i /run/smsd/smsd.working
+ eend ${?}
+}
+
+stop() {
+ ebegin "Stopping smsd"
+ start-stop-daemon --stop -n smsd
+ eend ${?}
+}
diff --git a/app-mobilephone/smstools/files/smsd.service b/app-mobilephone/smstools/files/smsd.service
new file mode 100644
index 000000000000..1fb436681b4b
--- /dev/null
+++ b/app-mobilephone/smstools/files/smsd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=SMS Server Tools 3
+
+[Service]
+User=smsd
+PIDFile=/run/smsd/smsd.pid
+ExecStart=/usr/bin/smsd -n MAINPROCESS -l/var/log/smsd.log \
+ -p/run/smsd/smsd.pid -i/run/smsd/smsd.working
+
+[Install]
+WantedBy=multi-user.target
diff --git a/app-mobilephone/smstools/files/smsd.tmpfiles b/app-mobilephone/smstools/files/smsd.tmpfiles
new file mode 100644
index 000000000000..8978d18f54ad
--- /dev/null
+++ b/app-mobilephone/smstools/files/smsd.tmpfiles
@@ -0,0 +1 @@
+d /run/smsd 0755 smsd sms -
diff --git a/app-mobilephone/smstools/metadata.xml b/app-mobilephone/smstools/metadata.xml
new file mode 100644
index 000000000000..4fedfbd15bb2
--- /dev/null
+++ b/app-mobilephone/smstools/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>chainsaw@gentoo.org</email>
+ <name>Tony Vroon</name>
+</maintainer>
+<use>
+ <flag name="stats">Enable statistic reporting</flag>
+</use>
+</pkgmetadata>
diff --git a/app-mobilephone/smstools/smstools-3.1.15-r2.ebuild b/app-mobilephone/smstools/smstools-3.1.15-r2.ebuild
new file mode 100644
index 000000000000..91694836c4f5
--- /dev/null
+++ b/app-mobilephone/smstools/smstools-3.1.15-r2.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit systemd toolchain-funcs user eutils
+
+DESCRIPTION="Send and receive short messages through GSM modems"
+HOMEPAGE="http://smstools3.kekekasvi.com/"
+SRC_URI="http://smstools3.kekekasvi.com/packages/smstools3-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64 ~ppc"
+IUSE="stats"
+
+DEPEND=""
+RDEPEND="sys-process/procps
+ stats? ( >=dev-libs/mm-1.4.0 )"
+
+S="${WORKDIR}/${PN}3"
+
+pkg_setup() {
+ enewgroup sms
+ enewuser smsd -1 -1 /var/spool/sms sms
+}
+
+src_prepare() {
+ epatch "${FILESDIR}/${PV}-makefile-whitespace.patch"
+ if use stats; then
+ sed -i -e "s:CFLAGS += -D NOSTATS:#CFLAGS += -D NOSTATS:" \
+ "${S}/src/Makefile" || die
+ fi
+ echo "CFLAGS += ${CFLAGS}" >> src/Makefile || die
+}
+
+src_compile() {
+ cd src || die
+ emake \
+ CC="$(tc-getCC)" \
+ LFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin src/smsd
+ cd scripts || die
+ dobin sendsms sms2html sms2unicode unicode2sms
+ dobin hex2bin hex2dec email2sms
+ dodoc mysmsd smsevent smsresend sms2xml sql_demo \
+ smstest.php checkhandler-utf-8 eventhandler-utf-8 \
+ forwardsms regular_run
+ cd .. || die
+
+ keepdir /var/spool/sms/incoming
+ keepdir /var/spool/sms/outgoing
+ keepdir /var/spool/sms/checked
+ fowners -R smsd:sms /var/spool/sms
+ fperms g+s /var/spool/sms/incoming
+
+ newinitd "${FILESDIR}"/smsd.initd3 smsd
+ insopts -o smsd -g sms -m0644
+ insinto /etc
+ newins examples/smsd.conf.easy smsd.conf
+ dohtml -r doc
+
+ systemd_dounit "${FILESDIR}"/smsd.service
+ systemd_newtmpfilesd "${FILESDIR}"/smsd.tmpfiles smsd.conf
+}
+
+pkg_postinst() {
+ touch "${ROOT}"/var/log/smsd.log || die
+ chown -f smsd:sms "${ROOT}"/var/log/smsd.log
+}
diff --git a/app-mobilephone/smstools/smstools-3.1.21-r1.ebuild b/app-mobilephone/smstools/smstools-3.1.21-r1.ebuild
new file mode 100644
index 000000000000..96dfea8f1069
--- /dev/null
+++ b/app-mobilephone/smstools/smstools-3.1.21-r1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit systemd toolchain-funcs user eutils
+
+DESCRIPTION="Send and receive short messages through GSM modems"
+HOMEPAGE="http://smstools3.kekekasvi.com/"
+SRC_URI="http://smstools3.kekekasvi.com/packages/smstools3-${PV}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~amd64 ~ppc"
+IUSE="stats"
+
+DEPEND=""
+RDEPEND="sys-process/procps
+ stats? ( >=dev-libs/mm-1.4.0 )"
+
+PATCHES="${FILESDIR}/${PV}-gawk-location.patch"
+S="${WORKDIR}/${PN}3"
+
+pkg_setup() {
+ enewgroup sms
+ enewuser smsd -1 -1 /var/spool/sms sms
+}
+
+src_prepare() {
+ default
+ if use stats; then
+ sed -i -e "s:CFLAGS += -D NOSTATS:#CFLAGS += -D NOSTATS:" \
+ "${S}/src/Makefile" || die
+ fi
+ echo "CFLAGS += ${CFLAGS}" >> src/Makefile || die
+}
+
+src_compile() {
+ cd src || die
+ emake \
+ CC="$(tc-getCC)" \
+ LFLAGS="${LDFLAGS}"
+}
+
+src_install() {
+ dobin src/smsd
+ cd scripts || die
+ dobin sendsms sms2html sms2unicode unicode2sms
+ dobin hex2bin hex2dec email2sms
+ dodoc mysmsd smsevent smsresend sms2xml sql_demo \
+ smstest.php checkhandler-utf-8 eventhandler-utf-8 \
+ forwardsms regular_run
+ cd .. || die
+
+ keepdir /var/spool/sms/incoming
+ keepdir /var/spool/sms/outgoing
+ keepdir /var/spool/sms/checked
+ fowners -R smsd:sms /var/spool/sms
+ fperms g+s /var/spool/sms/incoming
+
+ newinitd "${FILESDIR}"/smsd.initd4 smsd
+ insopts -o smsd -g sms -m0644
+ insinto /etc
+ newins examples/smsd.conf.easy smsd.conf
+ dohtml -r doc
+
+ systemd_dounit "${FILESDIR}"/smsd.service
+ systemd_newtmpfilesd "${FILESDIR}"/smsd.tmpfiles smsd.conf
+}
+
+pkg_postinst() {
+ touch "${ROOT}"/var/log/smsd.log || die
+ chown -f smsd:sms "${ROOT}"/var/log/smsd.log
+}
diff --git a/app-mobilephone/sobexsrv/Manifest b/app-mobilephone/sobexsrv/Manifest
new file mode 100644
index 000000000000..8ee84de6e30e
--- /dev/null
+++ b/app-mobilephone/sobexsrv/Manifest
@@ -0,0 +1,9 @@
+AUX conf.d_sobexsrv 1095 SHA256 7c7bf16790f4c813a5460566de28161c9357fc6d814f5e05228c6a7e0fab5494 SHA512 c38b6105826208c72392b7e781831ec28e93c60ba63f95e6042c3de9a3097af1e370ccdb832f1993b6e85a0224180b36a92ba97cf9af8a606044a61d9ddf7a05 WHIRLPOOL 14016caca75ed1d98352ac32e3f2a834223948a063f0bef2858aeddc08369df784d053995b2688a057f9da172935801a3a1dc959e69746602e993ff4915ad0a5
+AUX init.d_sobexsrv 1473 SHA256 35a00aeace7ed411472ed2d87b692381c65cc7f7abff45458885a2a835b6cd1c SHA512 0ab5c6020af3c8de1e7f302f1f9b1fb6c8d9f6ef8518f878c48ee396032aa96f2da148e197655a1235a072abf30767e3db8047d0c9c6d7d3606bf9ad30398ec4 WHIRLPOOL a31c0803ee167a07eb776aafb760bf24fe030c218d53036977bb9e595495b1f58d76b051e6e8a35828fdb62e12fa66be277c651426605eda27afa36d8eaffc40
+AUX sobexsrv-1.0.1-openobex16.patch 1346 SHA256 260c36989eb9a5bb877ab2d41af913ade1ddfdf70200c8f9369d3d64bfe98e2e SHA512 a1db1a916c0c2f6f237a4434bf1f11b0b6f540ad62fa9687d886e4ff97f6bb916be7763a24bdc56bf8fd3334ead426e0ed2003c0208c3c743f49b13b2bf8ab2a WHIRLPOOL d0f002f1cf9421f5a09445e8c7230c04da93e559ae778d259ac4eb6768776670263221b5a7ed324f959fe135fa4f8b162017a9a5334ece5895e9a7887550393f
+DIST sobexsrv-1.0.1-fix64.patch 25040 SHA256 83e052e7a63fb53b74b81d51cd5d614a5df29626243700b632c0d14832497cf8 SHA512 9d555bee8d03c13061bbe132df6442daa4d8817ef713e92e5150b1994af110c5b01b34f8bcc1c3ae734529e36bb70f56976ab261f860e95e3de3ffe440a7b393 WHIRLPOOL 4b177c4b4afb921f6580b761ed74845ed27a800b7a0b89ea57e8ed6a28670d2499f44a92688d4c852fbd8562488cda355d5f96ae795dc4bad05a459883499f87
+DIST sobexsrv-1.0.1.tar.gz 27683 SHA256 d3b6db12eb8d0c06d0b7845ca64213e5beb042dd0f1a2e7a753cb7b4b0596069 SHA512 52fe5eff812596caa1f4b8579740ce8b2591db17950d68c093cfdb33ca5b899bfc5c142594843948a29ae0b1bdbe4499a1e24c270c92e61d02fd07a02d9d40cd WHIRLPOOL 984a9413b9e73d570918d115665220bb9beac1dd6a8afb5418eb199be7c369bf6ab81411d746ff51f6b427b2fa77045a3e9d19b2acd7b4de5d330a1c6ab33ba4
+EBUILD sobexsrv-1.0.1-r1.ebuild 1997 SHA256 4c6cb7c3022e82171d1f2eb45fed6beffd7a0f3fc34235951f614acfa2907dd2 SHA512 c6df47e37562c499f5fcdc362d463ab008af8743f0dce91ab77f1260a51041f22c5010f45d895fd19b523cef3e27af101e05e46e3ff3a6df7bc0a65b3b4add28 WHIRLPOOL 81d8d95d45a47be7cb837f0ed9b9e7a9f01f679db0f721a7bb6d94c3bf2bdc10be75dbca41fc976970b67f24c36a666ff288657df8b253cee8abd43d5eb531c4
+MISC ChangeLog 3514 SHA256 358bceb03fa7c739cba6dcfa6e3dcc903b7dd0ae4b43527c880dfa5a349f60e8 SHA512 f02198b89237ff72e7a0a9481a30ed7d3632c30c6b4eaa3b97cb6372240e33a145f1e0c829e12a7dfdb31f3f627b007c75539b401774968db190b1c10a234743 WHIRLPOOL c3b97325856c19b7f0b88ca651d396c5c7a5e24e9abb8a292ad92ec4b03869eb295a13a48e53077fbf1a2d572a46e07448fb939d47c762053b69e99fe059a11f
+MISC ChangeLog-2015 3182 SHA256 561718f9ea7955eb0bcd90b8823708a1b3c11d6163435f9c84b8eea23319e34c SHA512 2b8caa4486022fe57947b918ba2f67ebe88ef33fd8738e6e60509d5d9777ecaadc67f5cba094864a10df6667d9387285a6864dddc986043a42b707491b04cb55 WHIRLPOOL 0dfec961cf4677c83f66c64a9fa684d8c28f5888fed4402fcb0ee08f6b3858ea6f4b5e118dcc26844a7ff68751c9d1cfa09cf0774758fc679c0bce8f33b73ef8
+MISC metadata.xml 917 SHA256 1188b71239d439e0047d0c9f4a2b5cbdc2770d2f8fec78cf3ec4fe62e6138bef SHA512 17a575409b2dc56ebde2b46b20db1cf65e803aa2d22f5e5044e4bfbe38b9f34d4a367be571879acf1fb8a8b3390908e1c7747481ddfc2b65c1dd7c596429cf11 WHIRLPOOL 3316774f7b84900cfca57749aa22f04da9cb4b5bb7bcbe75f0439f9e1a9be2e603f4e337eb74699ff6f082dcb2b8d2bdc00f2ced29dc6c824060c5c60159d886
diff --git a/app-mobilephone/sobexsrv/files/conf.d_sobexsrv b/app-mobilephone/sobexsrv/files/conf.d_sobexsrv
new file mode 100644
index 000000000000..1afdc0c772e3
--- /dev/null
+++ b/app-mobilephone/sobexsrv/files/conf.d_sobexsrv
@@ -0,0 +1,35 @@
+# /etc/conf.d/sobexsrv
+# Config file for sobexsrv daemon
+
+# owner of sobexsrv process (don't change, must be existing)
+USER="sobexsrv"
+GROUP="sobexsrv"
+
+# Incomming of pushed files
+INBOX="/var/spool/sobexsrv"
+
+# chroot to INBOX.
+# *NEEDS* the binary to be suid root (not installed by default).
+#CHROOT="yes"
+
+# Listen on the specified RFCOMM channel. If this option is not specified the
+# first available channel will be used. Legal range for channel is 1-31 and 0
+# to force auto selection of first available channel.
+CHANNEL="10"
+
+# Set Bluetooth security mode-2 level. Legal values are: 1 (insecure) every-
+# body can connect, 2 authentication required and 3 authentication and encryp-
+# tion required.
+SECURITY_LEVEL="2"
+
+# Don't register OPUSH service at local ServiceDiscoveryProtocol Server.
+#DISABLE_OPUSH="yes"
+# Don't register OBEX-FTP service at local ServiceDiscoveryProtocol Server.
+DISABLE_OBEXFTP="yes"
+DISABLE_OBEXFTP_LISTING="yes"
+
+# Enable transfer log via syslog(8).
+USE_SYSLOG="yes"
+
+# Additional options. See sobexsrv(8)
+#SOBEXSRV_OPT="-l NPTD -m /etc/sobexsrv-mime"
diff --git a/app-mobilephone/sobexsrv/files/init.d_sobexsrv b/app-mobilephone/sobexsrv/files/init.d_sobexsrv
new file mode 100644
index 000000000000..e02530314ca8
--- /dev/null
+++ b/app-mobilephone/sobexsrv/files/init.d_sobexsrv
@@ -0,0 +1,58 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+depend() {
+ need bluetooth
+ use logger
+}
+
+check_config() {
+ if [ -z "${USER}" ] ; then
+ eerror "Please set \$USER in /etc/conf.d/sobexsrv!"
+ return 1
+ fi
+ if [ -z "${GROUP}" ] ; then
+ eerror "Please set \$GROUP in /etc/conf.d/sobexsrv!"
+ return 1
+ fi
+
+ if [ ${CHROOT} = "yes" ] ; then
+ if [ ! -u /usr/bin/sobexsrv ] ; then
+ eerror "The \$CHROOT option requires /usr/bin/sobexsrv to be suid root!"
+ return 1
+ fi
+ fi
+
+ if [ -z "${INBOX}" ] || [ ! -e "${INBOX}" ] ; then
+ eerror "Please configure \$INBOX correctly in /etc/conf.d/sobexsrv!"
+ return 1
+ fi
+}
+
+
+start() {
+ check_config || return 1
+
+ ebegin "Starting sobexsrv"
+
+ OPTIONS=""
+ [ -n "${CHANNEL}" ] && OPTIONS="${OPTIONS} -c ${CHANNEL}"
+ [ -n "${SECURITY_LEVEL}" ] && OPTIONS="${OPTIONS} -s ${SECURITY_LEVEL}"
+ [ "${CHROOT}" = "yes" ] && OPTIONS="${OPTIONS} -R"
+ [ "${DISABLE_OPUSH}" = "yes" ] && OPTIONS="${OPTIONS} -o"
+ [ "${DISABLE_OBEXFTP}" = "yes" ] && OPTIONS="${OPTIONS} -f"
+ [ "${DISABLE_OBEXFTP_LISTING}" = "yes" ] && OPTIONS="${OPTIONS} -F"
+ [ "${USE_SYSLOG}" = "yes" ] && OPTIONS="${OPTIONS} -S"
+
+ OPTIONS="-I -r ${INBOX} ${OPTIONS} ${SOBEXSRV_OPT}"
+
+ start-stop-daemon --chuid ${USER}:${GROUP} --start --quiet --exec /usr/bin/sobexsrv -- $OPTIONS
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping sobexsrv"
+ start-stop-daemon --stop --quiet --exec /usr/bin/sobexsrv
+ eend $?
+}
diff --git a/app-mobilephone/sobexsrv/files/sobexsrv-1.0.1-openobex16.patch b/app-mobilephone/sobexsrv/files/sobexsrv-1.0.1-openobex16.patch
new file mode 100644
index 000000000000..57fff87e4d2b
--- /dev/null
+++ b/app-mobilephone/sobexsrv/files/sobexsrv-1.0.1-openobex16.patch
@@ -0,0 +1,49 @@
+--- sobexsrv-1.0.1/src/obexsrv.c.orig 2016-06-13 01:59:28.000000000 +0300
++++ sobexsrv-1.0.1/src/obexsrv.c 2016-06-13 12:20:15.501101147 +0300
+@@ -32,6 +32,10 @@
+ #include <langinfo.h>
+ #include <assert.h>
+
++#if ((OPENOBEX_VERSION_MAJOR==1) && (OPENOBEX_VERSION_MINOR>=6))
++#include <string.h>
++#endif
++
+ #include "obexsrv.h"
+ #include "util.h"
+ #include "sdp.h"
+@@ -46,7 +50,8 @@
+
+ void UnicodeToChar(uint8_t *c, const uint8_t *uc, int size)
+ {
+- iconv_t dsc = iconv_open(nl_langinfo(CODESET),"UTF16BE");
++ char *lang = nl_langinfo(CODESET);
++ iconv_t dsc = iconv_open(lang,"UTF16BE");
+ size_t isiz,osiz;
+ char *ip = (char*)uc;
+ char *op = (char*)c;
+@@ -54,7 +59,25 @@
+
+ if (iconv(dsc,&ip,&isiz,&op,&osiz) == -1) {
+ debug_printf("iconv: error %s\n", strerror(errno));
++#if ((OPENOBEX_VERSION_MAJOR==1) && (OPENOBEX_VERSION_MINOR>=6))
++ // try to convert ignoring errors
++ iconv_close(dsc);
++ debug_printf("iconv: characters that cannot be converted will be discarded\n");
++
++ // append "//IGNORE"
++ const char *const suf = "//IGNORE";
++ size_t len = strlen(lang);
++ char *cd = malloc(len + 9);
++ memcpy(cd, lang, len);
++ memcpy(cd+len, suf, 8);
++ cd[len+8] = '\0';
++
++ dsc = iconv_open(cd,"UTF16BE");
++ iconv(dsc,&ip,&isiz,&op,&osiz);
++ free(cd);
++#else
+ OBEX_UnicodeToChar(c,uc,size);
++#endif
+ }
+ iconv_close(dsc);
+ }
diff --git a/app-mobilephone/sobexsrv/metadata.xml b/app-mobilephone/sobexsrv/metadata.xml
new file mode 100644
index 000000000000..2988986f18be
--- /dev/null
+++ b/app-mobilephone/sobexsrv/metadata.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>bircoph@gentoo.org</email>
+ <name>Andrew Savchenko</name>
+ </maintainer>
+ <longdescription>
+ sobexsrv is a Bluetooth OBEX server with Bluetooth Security
+ Mode-2 (application triggered security) support. It implements
+ OPUSH (put), OPULL (get) and OBEX-FTP (setpath + directory
+ listing) and therefore is a full OBEX server. Further it
+ supports pulling generic mime-types and provides a capability
+ object. sobexsrv was designed with flexibility and security in
+ mind and supports chroot (if suid root drop to calling uid
+ immediately). For flexibility a scripting interface provides
+ access to all functionalities of the server and therefore
+ allows implementation of further OBEX services on top of
+ sobexsrv.
+ </longdescription>
+</pkgmetadata>
diff --git a/app-mobilephone/sobexsrv/sobexsrv-1.0.1-r1.ebuild b/app-mobilephone/sobexsrv/sobexsrv-1.0.1-r1.ebuild
new file mode 100644
index 000000000000..14cde193148e
--- /dev/null
+++ b/app-mobilephone/sobexsrv/sobexsrv-1.0.1-r1.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+inherit python-single-r1 toolchain-funcs user
+
+MY_P="${P/_pre/pre}"
+
+DESCRIPTION="Scripting/Secure OBEX Server (for BlueZ Linux)"
+SRC_URI="http://www.mulliner.org/bluetooth/${MY_P}.tar.gz
+ https://dev.gentoo.org/~joker/${P}-fix64.patch"
+HOMEPAGE="http://www.mulliner.org/bluetooth/sobexsrv.php"
+
+SLOT="0"
+LICENSE="GPL-2"
+KEYWORDS="amd64 ppc x86"
+IUSE="gtk"
+
+DEPEND="
+ dev-libs/openobex
+ net-wireless/bluez
+ gtk? ( ${PYTHON_DEPS} )"
+RDEPEND="${DEPEND}
+ gtk? (
+ ${PYTHON_DEPS}
+ >=dev-python/pygtk-2.2
+ )"
+REQUIRED_USE="
+ gtk? ( ${PYTHON_REQUIRED_USE} )"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${DISTDIR}/${P}"-fix64.patch
+ "${FILESDIR}/${P}"-openobex16.patch
+)
+
+pkg_setup() {
+ use gtk && python-single-r1_pkg_setup
+
+ enewgroup sobexsrv
+ enewuser sobexsrv -1 -1 /var/spool/sobexsrv sobexsrv
+}
+
+src_prepare() {
+ default
+
+ sed -e 's:/usr/man/man8:/usr/share/man/man8:' \
+ -e 's/install: all/install:/' \
+ -i Makefile || die
+
+ sed -e 's/^CFLAGS =/CFLAGS +=/' \
+ -e 's/^CC =/CC ?=/' \
+ -e 's/$(CC) $(CFLAGS)/$(CC) $(LDFLAGS) $(CFLAGS)/' \
+ -i src/Makefile || die
+}
+
+src_compile() {
+ tc-export CC
+ emake -C src
+}
+
+src_install() {
+ default
+ dodoc AUTHOR CONFIG SECURITY THANKS
+
+ if use gtk; then
+ python_doscript "${D}/usr/bin/sobexsrv_handler"
+ newdoc "${S}/scripts/test" sobexsrv_handler.sample_script
+ else
+ rm "${D}/usr/bin/sobexsrv_handler" || die
+ fi
+
+ newinitd "${FILESDIR}/init.d_sobexsrv" sobexsrv
+ newconfd "${FILESDIR}/conf.d_sobexsrv" sobexsrv
+
+ keepdir /var/spool/sobexsrv
+ fowners sobexsrv:sobexsrv /var/spool/sobexsrv
+}
+
+pkg_postinst() {
+ elog
+ elog "/usr/bin/sobexsrv is *NOT* installed set-uid root by"
+ elog "default. suid is required for the chroot option (-R)."
+ elog
+ elog "Execute the following commands to enable suid:"
+ elog
+ elog "chown root:sobexsrv /usr/bin/sobexsrv"
+ elog "chmod 4710 /usr/bin/sobexsrv"
+ elog
+}
diff --git a/app-mobilephone/vmoconv/Manifest b/app-mobilephone/vmoconv/Manifest
new file mode 100644
index 000000000000..03570cec863c
--- /dev/null
+++ b/app-mobilephone/vmoconv/Manifest
@@ -0,0 +1,8 @@
+AUX vmoconv-1.0-external-libgsm.patch 863 SHA256 9e815f6b1da3956ba9e42c13d8336dbb827c50eb8cdcac731ea74cc0b447c210 SHA512 d02dc343c59ef15d21b08478d3e9f6393f95c59ecf340afb09945d4897481e9c859f83752b6d79e1ae03563b9d9deb129a0a1db5e0acd69ed1a815b5be408058 WHIRLPOOL 0aab2340b189d22651bd1c515900ee1ae88421fa17108bd638f69fdea38a73b65d4b978b0b0500f47ddc0eba52c54f5caf2ceba906bcc4862e9cd4db10420948
+AUX vmoconv-1.0-flags.patch 683 SHA256 7e9cc3832f4d81c2f55cd1faf69670c000d25caa37a572cc06ff8ace06011fe5 SHA512 431e10787bed24cc775a43f44c60a64610f03c25956efb8892d7117476e01261ae06c644a1ac9ada6f9dc94ad5a38745beb8fb2dbe3dfe8546ecfa51902f0770 WHIRLPOOL e0cd70c4558f2b4016b3355b2aa63296375135269c80cf295ab82ec0c8a4f1660c151864f380f6e566fb3bd66ad9c57bbbb80776fbe434fc11690bab44741411
+AUX vmoconv-1.0-glibc28.patch 876 SHA256 432bd2b4796d12c9a100029a70729e7b4c3defe7d2d69a7c0072ba3c1ce95e8e SHA512 14477a9c13fabae162dfe8fc4b701019fb52e387198c70542275b1e9562a683532f8b88a96a9b8c7d9aea8e5f27224baa27046a04ce164adcd2d260f0a22e011 WHIRLPOOL df0fe2c8dfa385eb56600055f1459506f0642144cf0039552de7f81a7c974ff50fdb0a4b9513536116ee9f718ef5ef18bcebcaca2b3d09bcac5ba4b50c8872d1
+DIST vmoconv-1.0.tar.gz 315028 SHA256 1a20cab89f4f7f30bf5d14243b944921420b482e1f7c0d5dd1c4ad9df9e37528 SHA512 c4bd65f2c034317e43736198eaea6a3cfbbc6be015dc1ac5efa51633c2779bf5af87ea037084173b377a7521538e4a235f264b5f09fedcdaf7f4a815289a7ec2 WHIRLPOOL 1afe830d72e150741e5a9cce954a0618a86a192329bf6ead5eae44579397e48caea9542239ca874c27c7d022f6b99385e5e3ea0a88d8b7f14945d0f405beaff2
+EBUILD vmoconv-1.0-r1.ebuild 751 SHA256 8263e72960039eda77ed0e9042341a69e2cafa959ac85f35a3ae49113a44c5a6 SHA512 ed7b048011083c1e0869993a269c7b60644aea0fb046bf5cf15bd959c8c2e641d1a5e7b2933d4afc1b621a0644a21064ba1c078750ad4587b854560797f0e90f WHIRLPOOL 6658b2149b798df8c8737b3fba22d38be62746ad5493801505df336ebdf5e1b7b0a51c3a93b7560eaf01bf3edaf405f0fbde5cbe9e3bfa3e2575103de85a6788
+MISC ChangeLog 2641 SHA256 c600bc6f280c7683845edf72e80d4049b72d93b09155528a407b92942bccf799 SHA512 3379c67753c4609bcd88433a9c33f6419123759180596eff74c7f3a2c2bb8f8081322f76c5d82e1bc2ba43db6b25121a24bee0dc9640a4156e2a3eaf43135e6a WHIRLPOOL beea145dd315c2a15856db31c0ebc7ab20f5facf96524d5e43a0e20731d4e15b9d5b3162d3ff7502c983ae5cdcb057c71ee47f58e647aa85afe5fcd8752ec142
+MISC ChangeLog-2015 2270 SHA256 111d76de9cd5e36b7e5177fab8f22624cfac1b8421cf99911c88644f7fa730da SHA512 d3d1a6a08a54e3c97cc9f1b3bc5065df5b36f21aa03adcf5959e439a7ccecd480093a8973a9ce7c7d70b4705e8c69ea768ca0d33cc90e65b221ed0361b2c99f7 WHIRLPOOL 98f6033b12a772f36f67e1eae73c9ca03b55638cadcec6b4cd5f344076ab8e365f861166feda21bb582efb445d32a16d27670ab52f79e923264fcb974bd5034e
+MISC metadata.xml 296 SHA256 4f48a1812b99742f2e9961665627087d044b6eb743cb8a8a9702b8e5162a2818 SHA512 725dd98a8cdf1814e9a91472eb7f51131193c3825fdce5507a397b1a833040de9fb067b9fc8b3fac3459b3e14f61257032164ed63c1fadaaa5107a508f5a069e WHIRLPOOL 80956d3af5c40b34c784b4b6889c5aa69bf7237d530e32f7934365b09243eca90fe33f4d1761bf4fbf7df2321096c1e9452df436630c5a910b59c900dcf0a4cb
diff --git a/app-mobilephone/vmoconv/files/vmoconv-1.0-external-libgsm.patch b/app-mobilephone/vmoconv/files/vmoconv-1.0-external-libgsm.patch
new file mode 100644
index 000000000000..8ab3670aa098
--- /dev/null
+++ b/app-mobilephone/vmoconv/files/vmoconv-1.0-external-libgsm.patch
@@ -0,0 +1,36 @@
+diff -Nru vmoconv-1.0.orig/src/Makefile.am vmoconv-1.0/src/Makefile.am
+--- vmoconv-1.0.orig/src/Makefile.am 2003-02-17 21:39:18.000000000 +0000
++++ vmoconv-1.0/src/Makefile.am 2009-03-03 21:24:12.000000000 +0000
+@@ -1,32 +1,6 @@
+
+-noinst_LTLIBRARIES = libgsm.la
+-
+ INCLUDES = -I.
+
+-libgsm_la_SOURCES = add.c \
+- code.c \
+- debug.c \
+- decode.c \
+- long_term.c \
+- lpc.c \
+- preprocess.c \
+- rpe.c \
+- gsm_destroy.c \
+- gsm_decode.c \
+- gsm_encode.c \
+- gsm_explode.c \
+- gsm_implode.c \
+- gsm_create.c \
+- gsm_print.c \
+- gsm_option.c \
+- short_term.c \
+- table.c \
+- proto.h \
+- unproto.h \
+- config.h \
+- private.h \
+- gsm.h
+-
+ vmo2wav_LDADD = -lgsm
+
+ vmo2wav_SOURCES = vmo2wav.c
diff --git a/app-mobilephone/vmoconv/files/vmoconv-1.0-flags.patch b/app-mobilephone/vmoconv/files/vmoconv-1.0-flags.patch
new file mode 100644
index 000000000000..031b6eefaaca
--- /dev/null
+++ b/app-mobilephone/vmoconv/files/vmoconv-1.0-flags.patch
@@ -0,0 +1,17 @@
+diff -Nru vmoconv-1.0.orig/configure.in vmoconv-1.0/configure.in
+--- vmoconv-1.0.orig/configure.in 2004-09-26 15:17:48.000000000 +0000
++++ vmoconv-1.0/configure.in 2009-03-03 21:32:40.000000000 +0000
+@@ -26,10 +26,10 @@
+ [printf(__func__)],,
+ [AC_DEFINE(__func__, "", [non-C99 fake support for __func__])])
+
+-dnl Turn on debugging and all warnings when using gcc
++dnl Turn on all warnings when using gcc
+ if test "$ac_cv_prog_gcc" = "yes"; then
+- CFLAGS="$CFLAGS -g -Wall -Wmissing-declarations -Wmissing-prototypes"
+- LDFLAGS="$LDFLAGS -g -Wall"
++ CFLAGS="$CFLAGS -Wall -Wmissing-declarations -Wmissing-prototypes"
++ LDFLAGS="$LDFLAGS -Wall"
+ fi
+
+ AC_SUBST(CFLAGS)
diff --git a/app-mobilephone/vmoconv/files/vmoconv-1.0-glibc28.patch b/app-mobilephone/vmoconv/files/vmoconv-1.0-glibc28.patch
new file mode 100644
index 000000000000..ec957b40c5cd
--- /dev/null
+++ b/app-mobilephone/vmoconv/files/vmoconv-1.0-glibc28.patch
@@ -0,0 +1,24 @@
+diff -Naur vmoconv-1.0.orig/src/gsm2vmo.c vmoconv-1.0/src/gsm2vmo.c
+--- vmoconv-1.0.orig/src/gsm2vmo.c 2008-06-15 12:57:07.000000000 -0400
++++ vmoconv-1.0/src/gsm2vmo.c 2008-06-15 12:57:36.000000000 -0400
+@@ -27,7 +27,7 @@
+ * 12 bit header and 260 bits standard GSM frame, as described
+ * in GSM 06.10 and GSM 06.12. The header is 0x2010 always.
+ */
+-
++#include <limits.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
+diff -Naur vmoconv-1.0.orig/src/vmo2gsm.c vmoconv-1.0/src/vmo2gsm.c
+--- vmoconv-1.0.orig/src/vmo2gsm.c 2008-06-15 12:57:07.000000000 -0400
++++ vmoconv-1.0/src/vmo2gsm.c 2008-06-15 12:57:36.000000000 -0400
+@@ -27,7 +27,7 @@
+ * 12 bit header and 260 bits standard GSM frame, as described
+ * in GSM 06.10 and GSM 06.12. The header is 0x2010 always.
+ */
+-
++#include <limits.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
diff --git a/app-mobilephone/vmoconv/metadata.xml b/app-mobilephone/vmoconv/metadata.xml
new file mode 100644
index 000000000000..fd8646d07b57
--- /dev/null
+++ b/app-mobilephone/vmoconv/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <longdescription lang="en">
+ A tool that converts Siemens phones VMO and VMI audio files to gsm and
+ wav.
+ </longdescription>
+</pkgmetadata>
diff --git a/app-mobilephone/vmoconv/vmoconv-1.0-r1.ebuild b/app-mobilephone/vmoconv/vmoconv-1.0-r1.ebuild
new file mode 100644
index 000000000000..d74ae6fce9e1
--- /dev/null
+++ b/app-mobilephone/vmoconv/vmoconv-1.0-r1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+EAPI=5
+
+inherit eutils autotools
+
+DESCRIPTION="A tool that converts Siemens phones VMO and VMI audio files to gsm and wav"
+HOMEPAGE="http://triq.net/obex/"
+SRC_URI="http://triq.net/obexftp/${P}.tar.gz"
+LICENSE="GPL-2"
+
+SLOT="0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE=""
+
+DEPEND="media-sound/gsm"
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ epatch "${FILESDIR}/${P}-glibc28.patch"
+ epatch "${FILESDIR}/${P}-flags.patch"
+ epatch "${FILESDIR}/${P}-external-libgsm.patch"
+ sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADERS/g' configure.in || die
+ eautoreconf
+}
+
+src_install() {
+ dobin src/vmo2gsm src/gsm2vmo src/vmo2wav
+ dodoc AUTHORS ChangeLog NEWS README THANKS
+}
diff --git a/app-mobilephone/wammu/Manifest b/app-mobilephone/wammu/Manifest
new file mode 100644
index 000000000000..95bc09f2d47a
--- /dev/null
+++ b/app-mobilephone/wammu/Manifest
@@ -0,0 +1,7 @@
+DIST wammu-0.40.tar.bz2 687062 SHA256 cffd4fc6cc7b9433b3f589d51671a5ac5e188abbf676ebe0ce94011933fdb2ff SHA512 2ed5d5cdd63b3731808c5fa8cc36caf394c4ccf714eb4ef39a25f1e7967d8ccf8b69db5aeff37ff0d1bbf7cefec51fe070a5f0b90d0cb8271f1a3d243eaf06fd WHIRLPOOL b05dac88593c5ae3c01f63984824690991a347e4efff2bf3595b1088d9903843e018690845391ab48f62ab7d17f11d0b3a801103a1c408822b1c9afdd88f7150
+DIST wammu-0.43.tar.xz 563832 SHA256 1595d120c7e18674538663d6471ce8fd5b975baf9682ab594f6303b1cf520796 SHA512 c8f0aad8d8fc2c852638a77b45d48ba3c512a1e1cf8f8dc54b99a614f7338f366494ef88d786143defd77e55ab9597d9c705569c4e0fceb856f29a05b9c6a843 WHIRLPOOL 63f1c3f7c347ffab592d2ef4a386dbf1ae42e4d1d92c945ad21a14be25b449a73380021c896205eda5288f41bec492e292e464ec82c4a81a5419060b4340874d
+EBUILD wammu-0.40.ebuild 1685 SHA256 3c8123cfaa1d9b107b574a6952aab5baef04247425de4cbd5c7c8d22df2e96d3 SHA512 5f7352d94a441a8c15473b2991645571f61e9f3b636ed6b47ea321012f28c3ab60cd4a50e9a4662a7e0f416d8c356d726ba70b83071138103a6ce51d92e6a96d WHIRLPOOL c9f4f573e312b73b29b9f2baa125e135ada8f7d275b759226f783a68bf071ae2d0effd9a38e4e06aa8c657a8a45038783ee5ac1f6acb3ade3e7f6ac66b0b95d3
+EBUILD wammu-0.43.ebuild 1639 SHA256 7e4b3bc0a281aff031ee9729c628dea215bc7bc5d409d805ee73b6b4324a85e4 SHA512 2dbd3107670c4ad36215582b689c9b055a860bbdffb387337a1d96a0369291b2d440412971f4570108fdc29d8bf4d314eeb90eecf6118398c0f3b54c5a60dbf8 WHIRLPOOL da9742bf25779f38e6eec7f1228eacdf899600c23aaa4b86f7205908afd536d8669b606a75a3d87d9b170c96c94067100439f881bb5ad8a06e8967b269a64f14
+MISC ChangeLog 3623 SHA256 1ef1a0bfdd8f8657bf80563290bf287ff5705cbaf909bf519433991ff04ec06f SHA512 1ff43bf85f35e71d632f6f4069d9e9bb85a67f5c16648c23607979b6a42e88529f47a8510ac804b0eea9f22a2c829a044d0e32780c180fc41759b3560808619d WHIRLPOOL 7020a36a6ef326e35ad4c22dc386ba468e65832c95aebdc6b59c33b4f20bd1a1a2f9020b9d52abdea49787fbed760cabe3214069983b55a23a278d54d05565e0
+MISC ChangeLog-2015 8069 SHA256 c36e58f29c2140118148e532a59515f763981d7fe7e23e5ad7060eb21eefa09c SHA512 33d86038d87ba1401f113d365690a078c2fc48dbd75683ca10b6ef98fab96c86bc69c4a8a1c1e2742f4ec9ef2694a596a90dc8eeb2a7cb01e5d052865b7291fa WHIRLPOOL 1c144c3392dd6aa6c47da9d15b2cac1ba6a6e59cee4ae662567bcf99e730fd45a3d0272cd3a00691e11f43b8ce3b99f010330d6749f530ad5c5fe901830b7fe1
+MISC metadata.xml 166 SHA256 2caff447f5bd2701d8456ada5cc633c41ef4373fa4bfeabeb73599d40bcc941b SHA512 a56648c974a1d14dd4c18237532773c72057a13ab90c58b5da04f185e3c12a8bd8d5c21fb06053507f31766291a82dc7d87b34cd65fd94cfe2af7295c813ef84 WHIRLPOOL 1ff70497eca6531f0e0614c72a19f4b8e5ff486a58d369f4f0b36308d1d6b01168f9da887740e3b9f536236be251d3fe05f904d27a9233a7cf613416ba882968
diff --git a/app-mobilephone/wammu/metadata.xml b/app-mobilephone/wammu/metadata.xml
new file mode 100644
index 000000000000..6f49eba8f496
--- /dev/null
+++ b/app-mobilephone/wammu/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+</pkgmetadata>
diff --git a/app-mobilephone/wammu/wammu-0.40.ebuild b/app-mobilephone/wammu/wammu-0.40.ebuild
new file mode 100644
index 000000000000..9b7861ba00af
--- /dev/null
+++ b/app-mobilephone/wammu/wammu-0.40.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="Front-end for gammu to access mobile phones easily"
+HOMEPAGE="http://www.wammu.eu/"
+SRC_URI="http://dl.cihar.com/wammu/v0/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="bluetooth gnome"
+
+RDEPEND="|| ( ( >=app-mobilephone/gammu-1.36 dev-python/python-gammu )
+ >=app-mobilephone/gammu-1.25.0[python] )
+ >=dev-python/wxpython-2.8:*[${PYTHON_USEDEP}]
+ bluetooth? ( dev-python/pybluez[${PYTHON_USEDEP}]
+ gnome? ( net-wireless/gnome-bluetooth )
+ )"
+DEPEND="${RDEPEND}"
+
+# Supported languages and translated documentation
+# Be sure all languages are prefixed with a single space!
+MY_AVAILABLE_LINGUAS=" af ar bg bn ca cs da de el en_GB es et fi fr gl he hu id it ko nl pl pt_BR ro ru sk sv sw tr uk zh_CN zh_TW"
+IUSE="${IUSE} ${MY_AVAILABLE_LINGUAS// / linguas_}"
+
+# Required to source locale content out of the box
+DISTUTILS_IN_SOURCE_BUILD=1
+
+src_prepare() {
+ local lang support_linguas=no
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if use linguas_${lang} ; then
+ support_linguas=yes
+ break
+ fi
+ done
+ # install all languages when all selected LINGUAS aren't supported
+ if [ "${support_linguas}" = "yes" ]; then
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if ! use linguas_${lang} ; then
+ rm -r locale/${lang} || die
+ fi
+ done
+ fi
+
+ distutils-r1_src_prepare
+}
+
+src_compile() {
+ # SKIPWXCHECK: else 'import wx' results in
+ # Xlib: connection to ":0.0" refused by server
+ SKIPWXCHECK=yes distutils-r1_src_compile
+}
+
+src_install() {
+ SKIPWXCHECK=yes distutils-r1_src_install
+}
diff --git a/app-mobilephone/wammu/wammu-0.43.ebuild b/app-mobilephone/wammu/wammu-0.43.ebuild
new file mode 100644
index 000000000000..d13beae0c763
--- /dev/null
+++ b/app-mobilephone/wammu/wammu-0.43.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+DESCRIPTION="Front-end for gammu to access mobile phones easily"
+HOMEPAGE="http://www.wammu.eu/"
+SRC_URI="http://dl.cihar.com/wammu/v0/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="bluetooth gnome"
+
+RDEPEND="
+ >=app-mobilephone/gammu-1.36
+ dev-python/python-gammu
+ >=dev-python/wxpython-2.8:*[${PYTHON_USEDEP}]
+ bluetooth? (
+ dev-python/pybluez[${PYTHON_USEDEP}]
+ gnome? ( net-wireless/gnome-bluetooth )
+ )
+"
+DEPEND="${RDEPEND}"
+
+# Supported languages and translated documentation
+# Be sure all languages are prefixed with a single space!
+MY_AVAILABLE_LINGUAS=" af ar bg bn ca cs da de el en_GB es et fi fr gl he hu id it ko nl pl pt_BR ro ru sk sv sw tr uk zh_CN zh_TW"
+IUSE="${IUSE} ${MY_AVAILABLE_LINGUAS// / linguas_}"
+
+# Required to source locale content out of the box
+DISTUTILS_IN_SOURCE_BUILD=1
+
+src_prepare() {
+ local lang support_linguas=no
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if use linguas_${lang} ; then
+ support_linguas=yes
+ break
+ fi
+ done
+ # install all languages when all selected LINGUAS aren't supported
+ if [ "${support_linguas}" = "yes" ]; then
+ for lang in ${MY_AVAILABLE_LINGUAS} ; do
+ if ! use linguas_${lang} ; then
+ rm -r locale/${lang} || die
+ fi
+ done
+ fi
+
+ distutils-r1_src_prepare
+}
+
+src_compile() {
+ # SKIPWXCHECK: else 'import wx' results in
+ # Xlib: connection to ":0.0" refused by server
+ SKIPWXCHECK=yes distutils-r1_src_compile
+}
+
+src_install() {
+ SKIPWXCHECK=yes distutils-r1_src_install
+}