blob: 0106a7fdf2f4d5439dd3e700bda329a734273154 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-mobilephone/gnokii/gnokii-0.6.14-r2.ebuild,v 1.11 2007/08/18 07:45:58 mrness Exp $
inherit eutils flag-o-matic linux-info
DESCRIPTION="user space driver and tools for use with mobile phones"
HOMEPAGE="http://www.gnokii.org/"
SRC_URI="http://www.gnokii.org/download/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 hppa ppc ppc64 sparc x86"
IUSE="nls bluetooth ical irda sms postgres mysql usb X"
RESTRICT="test" #test fails; maybe it will work in the future, but till then...
RDEPEND="X? ( >=x11-libs/gtk+-2.8.19 )
bluetooth? ( >=net-wireless/bluez-libs-2.25 )
sms? ( >=dev-libs/glib-2.10.3
postgres? ( >=dev-db/postgresql-8.0.8 )
mysql? ( >=virtual/mysql-4.1 )
)
ical? ( >=dev-libs/libical-0.26.6 )
usb? ( >=dev-libs/libusb-0.1.11 )"
DEPEND="${RDEPEND}
irda? ( virtual/os-headers )
nls? ( >=sys-devel/gettext-0.14.5 )
>=sys-devel/autoconf-2.59-r7
>=app-text/recode-3.6-r2"
CONFIG_CHECK="UNIX98_PTYS"
src_unpack() {
unpack ${A}
cd "${S}"
# Add proper conditional support for ical and usb USE flags
epatch "${FILESDIR}"/${P}-configure.in.patch
if use sms ; then
local MY_SMSD_DB_OBJS="file.lo"
local MY_SMSD_DB_LIBS="libfile.la"
if use postgres; then
MY_SMSD_DB_OBJS="${MY_SMSD_DB_OBJS} pq.lo"
MY_SMSD_DB_LIBS="${MY_SMSD_DB_LIBS} libpq.la"
fi
if use mysql; then
MY_SMSD_DB_OBJS="${MY_SMSD_DB_OBJS} mysql.lo"
MY_SMSD_DB_LIBS="${MY_SMSD_DB_LIBS} libmysql.la"
fi
sed -i \
-e "s/^DB_OBJS.*=.*file[.]lo/DB_OBJS = ${MY_SMSD_DB_OBJS}/" \
-e "s/^DB_LIBS.*=.*libfile[.]la/DB_LIBS = ${MY_SMSD_DB_LIBS}/" \
-e 's/\(^.*LIBTOOL.*--mode=finish.*$\)/#\1/' \
smsd/Makefile
#Change default database module if pq not supported
if ! use postgres ; then
local MY_DEFAULT_DB_MODULE="file"
if use mysql ; then
MY_DEFAULT_DB_MODULE="mysql"
fi
sed -i -e "s/\"pq\"/\"${MY_DEFAULT_DB_MODULE}\"/" smsd/smsd.c
fi
fi
}
src_compile() {
find po/ -name '*.po' -exec recode latin1..u8 {} \;
append-flags -fno-strict-aliasing
append-ldflags $(bindnow-flags) #avoid QA notices
autoconf && econf \
$(use_enable nls) \
$(use_enable usb) \
$(use_enable ical) \
$(use_with X x) \
--disable-debug \
--disable-xdebug \
--disable-rlpdebug \
--enable-security \
--disable-unix98test \
|| die "configure failed"
emake -j1 || die "make failed"
if use sms; then
cd "${S}/smsd"
emake || die "smsd make install failed"
cd "${S}"
fi
}
src_install() {
einstall || die "make install failed"
if use X; then
insinto /usr/share/pixmaps
newins Docs/sample/logo/gnokii.xpm xgnokii.xpm
fi
insinto /etc
doins Docs/sample/gnokiirc
sed -i -e 's:/usr/local:/usr:' "${D}/etc/gnokiirc"
doman Docs/man/*
dodir "/usr/share/doc/${PF}"
cp -r Docs/sample "${D}/usr/share/doc/${PF}/sample"
cp -r Docs/protocol "${D}/usr/share/doc/${PF}/protocol"
rm -rf Docs/man Docs/sample Docs/protocol
dodoc Docs/*
# only one file needs suid root to make a pseudo device
fperms 4755 /usr/sbin/mgnokiidev
if use sms; then
cd "${S}/smsd"
einstall || die "smsd make install failed"
cd "${S}"
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."
echo
ewarn "We've received at least one report of gnokii with USB connection"
ewarn "breaking the phone, which needed to be serviced afterwards."
ewarn "Be careful if you decide to try that..."
}
|